CLIスクリプティングと自動化
ant applyでAPIリソースをファイルとしてバージョン管理し、スクリプト内でant CLIコマンドを連結し、Claude Codeからリソースを操作し、CLIの認証情報でcurl呼び出しを認証します。
このページでは、ant CLI上に構築されたタスク指向のワークフローについて説明します。基盤となるフラグや出力オプションについては、CLIの使用を参照してください。
APIリソースのバージョン管理
エージェント、環境、その他のClaude Managed Agentsリソースをリポジトリ内のファイルとして管理するには、ant applyでリソースをコードとして管理するを参照してください。
適用したエージェントをシェルから実行する
エージェントと環境が作成されたら、シェルからセッションを操作できます。
セッションを開始する
エージェントIDと環境IDをセッション作成コマンドに渡します。
ant applyの実行後、これらはclaude-lock.jsonから読み取れます。resources配下の各エントリにはidがあり、ant applyでリソースをコードとして管理するのプロジェクトでは、エントリは./agents/summarizer.mdと./environments/cloud.yamlです。ant beta:sessions create \ --agent agent_011CYm1BLqPXpQRk5khsSXrs \ --environment-id env_01595EKxaaTTGwwY3kyXdtbs \ --title "Summarization task"Output{ "id": "session_01JZCh78XvmxJjiXVy3oSi7K", "status": "running" /* ... */ }ユーザーメッセージを送信する
前の出力からセッションの
idを--session-idにコピーします。ant beta:sessions:events send \ --session-id session_01JZCh78XvmxJjiXVy3oSi7K \ --event '{type: user.message, content: [{type: text, text: "Summarize the benefits of type safety in one sentence."}]}'会話を読む
エージェントが返信したら、イベントを一覧表示します。
--transformは一覧表示された各イベントに対して実行されるため、これによりすべてのメッセージのテキストが順番に出力されます。--format autoは、ターミナルでlistコマンドがデフォルトで開くインタラクティブエクスプローラーを上書きします。ant beta:sessions:events list \ --session-id session_01JZCh78XvmxJjiXVy3oSi7K \ --transform 'content.0.text' \ --raw-output \ --format autoOutputSummarize the benefits of type safety in one sentence. Type safety catches errors at compile time rather than runtime, reducing bugs, improving code clarity, enabling better tooling support, and making codebases easier to maintain and refactor with confidence.
スクリプティングパターン
CLIは、標準的なシェルツールと組み合わせて使えるように設計されています。
list出力を2番目のコマンドに連結する
listエンドポイントで --transform id --raw-output を指定すると、1行につき1つの生のIDが出力されるため、head や xargs などの標準ツールをそのまま適用できます。最初の結果を取得し、それを後続のコマンドに渡します。
FIRST_AGENT=$(ant beta:agents list --transform id --raw-output | head -1)
ant beta:agents:versions list \
--agent-id "$FIRST_AGENT" \
--transform "{version,created_at}" --format jsonlエラーを調べる
--transform-error フラグと --format-error フラグは、エラーレスポンスに対して同じフィルタリングを適用します。--raw-output はエラーには適用されないため、引用符なしのスカラー値を得るには --format-error yaml を使用します。エラーメッセージのみを抽出するには次のようにします。
ant beta:agents retrieve --agent-id bogus \
--transform-error error.message --format-error yaml 2>&1GET "https://api.anthropic.com/v1/agents/bogus?beta=true": 404 Not Found
Agent not found.Claude CodeからCLIを使用する
Claude Codeは、ant CLIをそのまま使用できます。CLIがインストールされ認証済みであれば、Claude CodeにAPIリソースを直接操作するよう依頼できます。例:
- 「最近のエージェントセッションを一覧表示して、どれがエラーになったか要約して。」
- 「
./reports内のすべてのPDFをFiles APIにアップロードして、結果のIDを出力して。」 - 「セッション
session_01...のイベントを取得して、エージェントがどこで行き詰まったか教えて。」
Claude Codeは ant をシェル経由で呼び出し、構造化された出力を解析し、その結果について推論します(カスタムの統合コードは不要です)。
CLIの認証情報でcurlリクエストを認証する
curl やその他のHTTPクライアントでAPIを呼び出すスクリプトは、静的なAPIキーの代わりに、ant auth login によって保存された認証情報を使用できます。OAuthアクセストークンはベアラートークンとして Authorization ヘッダーに指定します。x-api-key ヘッダーは静的なAPIキー専用です。
ant auth print-credentials --access-token は、アクティブなプロファイルのアクセストークンを出力します。トークンが期限切れまたは期限切れ間近の場合は、先に更新してから出力します。
curl https://api.anthropic.com/v1/messages \
-H "Authorization: Bearer $(ant auth print-credentials --access-token)" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-opus-5-5",
"max_tokens": 256,
"messages": [{"role": "user", "content": "hi"}]
}'ant auth status を実行して、どの組織とワークスペースにログインしているかを確認してください。環境変数がログインを上書きしている場合は警告が表示されます。
Was this page helpful?