pagent
概要
paseo エージェントを検索し、その会話を読み取ります。paseo がデータをどこに保存しているかを毎回探し直す必要はありません。 pagent は読み取りのみを行います。エージェントの開始、停止、操作、復元は決して行わず、クローズされたエージェントをデーモンにリロードさせることもありません。
呼び出し方
SKILL=<このスキルのベースディレクトリ>/pagent.py # ハーネスがベースディレクトリを上記のように出力します
python3 $SKILL 11111111-1111-4111-8111-111111111111 # ヘッダー: ステータス、カレントディレクトリ、モデル、トランスクリプトパス
python3 $SKILL 11111111 --task # + ユーザーが与えたすべての指示
python3 $SKILL 11111111 -t -n 20 # + 最後の20ターン
python3 $SKILL 11111111 -t --full # ターンを切り詰めずに表示
python3 $SKILL "invoice export" # タイトルで検索
python3 $SKILL # すべてのエージェントを新しい順に表示
クエリは、ID、ID プレフィックス、またはタイトルの大文字小文字を区別しない部分文字列です。複数マッチした場合はリストが表示され、1つだけマッチした場合は詳細ビューが表示されます。python3 $SKILL --help で使用法が表示されます。
手順
- エージェントを特定する。 フラグなしでクエリを実行します: ヘッダーにはステータス、作業ディレクトリ、モデル、トランスクリプトパスが表示されます。リストが表示された場合はクエリがあいまいです。ID またはより長いタイトルの断片で絞り込みます。
- 何を依頼されたかを読む。
--taskは最初の指示だけでなく、ユーザーが与えたすべての指示を表示します。最初の行は件名を示し、2メッセージ後の修正には決定事項(「オプション B を使用するが、リトライ制限は3のままにする」など)が含まれます。両方が表示されます。ハーネスのプリアンブルや注入されたスキル本文は表示されません。これは、エージェントの作業を引き継ぐ場合に最も重要です。ptakeoverスキルを参照してください。 - どこまで進んだかを読む。
-t -n <ターン数>は会話の終わりを表示します。ターンが途中で切れている場合は--fullを追加します。トランスクリプトは追記専用であるため、エージェント実行中の読み取りは安全です。 - 隣接エージェントを確認する。
cwdがあなたのものと一致するエージェントは、同じファイルを編集している可能性があります。予期しない差分が自分のものだと決めつける前に、git statusを実行してください。
-t または --task を指定した場合、トランスクリプトが見つからないと非ゼロの終了コードで終了します。静かな 0 は「エージェントは何も言わなかった」と解釈されてしまい、それは割り当てを再構築しようとする人にとって誤った結論になります。
データの所在
- エージェントメタデータ:
~/.paseo/agents/<workspace>/<id>.json— タイトル、lastStatus(running/idle/ …)、cwd、モデル、requiresAttention、タイムスタンプ。 - 会話: そのファイルには ありません。書き込んだハーネスに存在し、
persistence.sessionIdをキーとします:- Claude Code —
<config>/projects/<escaped-cwd>/<sessionId>.jsonl。claude-rotate はアカウントごとに1つの設定ディレクトリを保持するため、~/.claudeまたは任意の~/.config/claude-rotate/configs/*/の下に存在する可能性があります。スクリプトはエスケープされたパスを推測せず、全てをグロブします。 - Codex —
~/.codex/sessions/<y>/<m>/<d>/rollout-<stamp>-<sessionId>.jsonl。レコード形状(payload.type)が異なり、パーサーは Claude のものとともにこれを処理します。エージェントをアーカイブすると、ロールアウトはフラットな~/.codex/archived_sessions/に移動します。 - Antigravity —
sessionIdはplugin:{…"conversationId":…}ラッパーです。履歴は~/.gemini/antigravity-cli/brain/<conversationId>/.system_generated/logs/transcript_full.jsonl(step_indexをキーとするレコード)にあります。conversations/<id>.dbではありません。これは protobuf です。古いantigravity-acpプロバイダーのエージェントはそのログを書き込んだことがないため、読み取り可能な履歴はありません。
- Claude Code —
エージェントとの会話、待機
このスキルは読み取りのみを行います。それ以外については:
- 会話:
paseo send <id> "<テキスト>" --behavior steer --no-wait。エージェントスコープの CLI およびsend_agent_prompt呼び出しは、デフォルトで steer(操縦)になります。明示的な behavior はエージェントの外部でも機能します。Steer は、プロバイダーがそれを受け入れられない場合(例: コンパクション中)、割り込みにフォールバックする可能性があります。--no-waitはディスパッチ後に復帰します。ターンの後ろにメッセージをキューイングすることはありません。 - 不注意による復元を避ける:
paseo sendはアーカイブされたエージェントを復元するため、最初にpaseo inspect <id> --jsonでArchivedAtを確認してください。レポートを届けるためだけにアーカイブされたエージェントを決して復元しないでください。情報はその作業(TODO、プロトコル、コミット)に残すか、ユーザーに伝えてください。 - 待機:
paseo-notify <id>を実行し、あなたのターンを終了します。エージェントが停止すると1つのメッセージが届きます。paseo の外部では:paseo wait <id> --jsonをバックグラウンドで実行します。JSON からstatus(idle、permission、error、timeout)を読み取ります。終了コードはすべてのステータスで0です。sleep、Monitor、/loop、またはpaseo ls/logs/inspectのポーリングで待機しないでください。
よくある間違い
| 間違い | 修正方法 |
|---|---|
| 最初のリクエストだけで引き継ぐ | --task は後続の修正もすべて表示します。それらには決定事項が含まれています |
クローズまたはアーカイブされたエージェントを読むために paseo logs を使用する | デーモンがエージェントのセッションを読み取りのためにリロードします。このスキルを使用してください。ファイルのみを読み取ります |
| サイレント終了を「エージェントは何も言わなかった」と解釈する | トランスクリプトがない場合は非ゼロで終了します。終了コードとヘッダーのトランスクリプトパスを確認してください |
| アーカイブされたエージェントにレポートを送信する | paseo send はそれを復元します。最初に ArchivedAt を確認し、代わりにレポートを作業に残してください |
sleep、Monitor、/loop、または繰り返しの paseo ls/logs/inspect でエージェントを待機する | paseo-notify <id> を実行し、あなたのターンを終了します |
あなたの cwd を共有するエージェントがいる場合に、予期しない差分を自分のものと決めつける | git status を確認してください。エージェントが同じファイルを編集している可能性があります |