Technical reference
エージェントランタイムアーキテクチャ
OpenClaw は組み込みエージェントランタイムを所有します。ランタイムコードは src/agents/、モデル/プロバイダートランスポートは src/llm/ にあり、Plugin 向けコントラクトは openclaw/plugin-sdk/* バレルを通じて公開されます。
ランタイムの構成
| パス | 担当範囲 |
|---|---|
src/agents/embedded-agent-runner/ |
組み込みの試行ループ(run.ts、run/)、モデル選択とプロバイダーの正規化(model*.ts)、プロバイダーごとのリクエストパラメーター(extra-params.*)、Compaction、トランスクリプトとセッションの接続。 |
src/agents/sessions/ |
セッションの永続化(session-manager.ts)、リソース検出(package-manager.ts、resource-loader.ts)、セッション内での extensions の読み込み、プロンプトテンプレート、Skills、テーマ、TUI ベースのツールレンダラー(tools/)。 |
packages/agent-core/ |
再利用可能なエージェントコア(@openclaw/agent-core):エージェントループ、ハーネス型、メッセージ、Compaction ヘルパー、プロンプトテンプレート、Skills、セッションストレージのコントラクト。 |
src/agents/runtime/ |
@openclaw/agent-core を Plugin SDK の LLM ランタイムに接続し、それとローカルプロキシユーティリティを再エクスポートする OpenClaw ファサード。 |
src/agents/agent-tools*.ts |
OpenClaw が所有するツール定義、パラメータースキーマ、ツールポリシー、ツール呼び出し前後のアダプター、ホスト/サンドボックス編集ツール。 |
src/agents/agent-hooks/ |
組み込みランタイムフック:Compaction の安全策、Compaction の指示、コンテキストの枝刈り。 |
src/agents/harness/ |
組み込みハーネスと Plugin が登録したハーネスのレジストリ、選択ポリシー、ライフサイクル。 |
src/llm/ |
モデル/プロバイダーレジストリ、トランスポートヘルパー、プロバイダー固有のストリーム実装(src/llm/providers/)。 |
境界
コアは OpenClaw モジュールと SDK バレルを通じて組み込みランタイムを呼び出します。外部のエージェントフレームワークパッケージは残っていません。Plugin は文書化された openclaw/plugin-sdk/* エントリーポイントを使用し、src/** の内部実装をインポートしません。
@earendil-works/pi-tui は引き続きサードパーティ依存関係です。これはローカル TUI とセッションツールレンダラーで使用されるターミナルコンポーネントツールキットです。これを内部化するには、別途ベンダリング作業が必要です。
マニフェスト
リソースパッケージは、package.json メタデータで OpenClaw リソースを宣言します。エントリーには、パッケージルートからの相対ファイルパスまたは glob を指定します。
{ "openclaw": { "extensions": ["extensions/index.ts"], "skills": ["skills/*.md"], "prompts": ["prompts/*.md"], "themes": ["themes/*.json"] }}マニフェストに記載されていないリソースタイプは、従来の extensions/、skills/、prompts/、themes/ ディレクトリの検出にフォールバックします。
ランタイムの選択
- 組み込みランタイム ID は
openclawです。レガシーエイリアスpiはopenclawに正規化され、codex-app-serverはcodexに正規化されます。 - Plugin ハーネスは追加のランタイム ID(例:
codex)を登録します。 - ランタイムポリシーは、モデル/プロバイダー単位の
agentRuntime.id設定です(モデルエントリーがプロバイダーエントリーより優先されます)。未設定またはdefaultの場合はautoに解決されます。 autoは、有効なプロバイダールートをサポートする登録済み Plugin ハーネスを選択し、該当しない場合は組み込みの OpenClaw ランタイムを選択します。プロバイダーまたはモデルのプレフィックスだけでハーネスが選択されることはありません。- OpenAI は、ユーザーが指定したリクエストオーバーライドがない、公式の HTTPS Platform Responses または ChatGPT Responses の完全一致ルートに限り、暗黙的に
codexを選択する場合があります。Completions アダプター、カスタムエンドポイント、およびユーザーが指定したリクエスト動作を持つルートではopenclawが維持されます。公式の平文 HTTP エンドポイントは拒否されます。OpenAI の暗黙的なエージェントランタイムを参照してください。
関連項目
Was this useful?