> ## Documentation Index
> Fetch the complete documentation index at: https://phaseo.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 概要

> TypeScript Agent SDKの用途と使う場面を説明します。

アプリで1回限りの生成以上の機能が必要な場合は、TypeScript Agent SDKを使います。

* 複数ステップのローカルツールループ
* 再開可能な実行状態
* ゲートウェイ経由のモデルターン
* 検証済みの構造化出力、ストリーミングされる進捗、プラグイン対応ルーティング

`@phaseo/sdk`を基盤とし、他言語版のAgent SDKと共通の基準ランタイム契約を定義します。

## ランタイム機能マトリクス

| 機能 | SDKの対応状況 |
| - | - |
| 実行可能な並行ツール | 組み込み。結果の順序は一定で、ツールごとにタイムアウトを設定できます |
| ランタイム検証 | `parse`、`safeParse`、またはバリデーター関数で入力、出力、イベント、エージェント最終結果のスキーマを検証 |
| 人による承認 | ツール単位または呼び出し単位で承認し、再開時には正確な呼び出しIDで承認または拒否 |
| 人が介在するツール | `onToolCalled`で一時停止し、`onResponseReceived`で変換 |
| 手動ツール | `execute: false`を指定し、`toolOutputs`を外部から渡す |
| 進捗を通知するツール | 非同期ジェネレーターツールと`tool.preliminary_result`イベント |
| ツールエラーからの復旧 | 実行を失敗させるか、構造化されたツールエラーをモデルに返す |
| ストリーミング | モデル差分に加え、テキスト、推論、アイテム、ツール、全イベントを再生できるコンシューマー |
| 停止制御 | ステップ数、時間、トークン数、コスト、ツール呼び出し、終了理由、カスタム述語 |
| 動的ターン | モデル、指示、サンプリング値、ツールセット、コンテキストの変更、`nextTurnParams`を動的に指定 |
| 永続的な継続 | シリアライズ可能な実行結果、またはアプリ側で状態を読み書きする`state`アクセサー |
| 可観測性 | 正規化された使用量とコスト、警告、終了理由、ステップ結果、ライフサイクルイベント、ローカル開発ツール |

## 提供される機能

* `createAgent()`
* `defineTool()`
* `createGatewayAgentClient()`
* `run()`、`stream()`、`continueRun()`、`continueStream()`
* 実行型、手動、承認ゲート付き、人が介在するツール
* ランタイムの入出力スキーマ、ジェネレーターの進捗、組み合わせ可能な停止条件、使用量とコストの概要
* アプリ側で管理する任意の状態アクセサーと、開発ツール向けのライフサイクルイベント

## 次のステップ

* [インストール](./agent-sdk-installation.mdx)
* [使い方](./agent-sdk.mdx)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.