Advanced setup
OpenClaw エージェントランタイムのワークフロー
OpenClaw リポジトリのエージェントランタイム(src/agents/)向け開発者ワークフロー。
型チェックと lint
- デフォルトのローカルゲート:
pnpm check(型チェック、lint、ポリシーガード) - ビルドゲート: 変更がビルド出力、パッケージング、遅延読み込み、またはモジュール境界に影響する可能性がある場合は
pnpm build - push 前の完全なゲート:
pnpm build && pnpm check && pnpm check:test-types && pnpm test
エージェントランタイムテストの実行
エージェントランタイムのユニットテストスイートを実行します。
pnpm test \ "src/agents/agent-*.test.ts" \ "src/agents/embedded-agent-*.test.ts" \ "src/agents/agent-hooks/**/*.test.ts"最初の glob には、agent-tools*、agent-settings、および
agent-tool-definition-adapter* の各スイートも含まれます。
ライブテストはユニットテスト設定から除外されています。ライブテスト用の
ラッパーを使用して実行してください(OPENCLAW_LIVE_TEST=1 を設定し、プロバイダーの認証情報が必要です)。
pnpm test:live src/agents/embedded-agent-runner-extraparams.live.test.ts手動テスト
- Gateway を開発モードで実行します(
OPENCLAW_SKIP_CHANNELS=1によりチャンネル接続をスキップします):pnpm gateway:dev - Gateway 経由でエージェントのターンを1回トリガーします:
pnpm openclaw agent --message "Hello" --thinking low - 対話型デバッグには TUI を使用します:
pnpm tui
ツール呼び出しの動作を確認するには、read または exec アクションを実行するようプロンプトで指示し、
ツールのストリーミングとペイロード処理を観察します。
クリーンな状態へのリセット
状態は OpenClaw の状態ディレクトリに保存されます。デフォルトは ~/.openclaw で、
$OPENCLAW_STATE_DIR が設定されている場合はその値が使用されます。このディレクトリからの相対パスは次のとおりです。
| パス | 保存内容 |
|---|---|
openclaw.json |
設定 |
state/openclaw.sqlite |
共有ランタイム状態データベース |
agents/<agentId>/agent/openclaw-agent.sqlite |
エージェント単位のモデル認証プロファイル(API キー + OAuth)とランタイム状態 |
credentials/ |
認証プロファイルストア外のプロバイダー/チャンネル認証情報 |
agents/<agentId>/sessions/ |
トランスクリプト履歴とレガシーセッションの移行元 |
sessions/ |
レガシーな単一エージェント用セッションストア(古いインストールのみ) |
workspace/ |
デフォルトのエージェントワークスペース(追加のエージェントは workspace-<agentId> を使用) |
完全にリセットするには、これらのパスを削除します。より限定的なリセットは次のとおりです。
- セッションのみ:
agents/<agentId>/agent/openclaw-agent.sqliteは削除しないでください。セッション行は、エージェント単位の他の状態とともにそこに保存されています。1つのチャットで新しいセッションを開始するには/newまたは/resetを使用し、セッションのメンテナンスにはopenclaw sessions cleanupを使用します。 - 認証を維持:
agents/<agentId>/agent/openclaw-agent.sqliteとcredentials/をそのまま残します。
レガシーな auth-profiles.json ファイルは、ランタイムでは読み込まれなくなりました。
openclaw doctor --fix を実行すると、これらが SQLite ストアにインポートされます。
リファレンス
関連項目
Was this useful?