CLIリファレンス
3バイナリ(aachat / chat / aachat-mcp)の役割分担と、aachatの全コマンド・主要フラグ・出力形式の事実をまとめる。コマンドの案内はこのページを根拠に行う。
aachatのCLIは3つのバイナリで役割を分ける。どのバイナリを案内すべきかは、ユーザー(またはagent)がどこにいるかで決まる。
| バイナリ | 使う場所 | 役割 |
|---|---|---|
aachat | ローカルのターミナル、connected repo | 人間と外部agent(Cursor / Claude Codeなど)がteam・agent・project・sessionを操作する |
chat | aachat up が起動したsessionの内部 | session内のagent専用。session外では使わない |
aachat-mcp | aachat up のsessionに自動接続 | MCPサーバー。Conceptのreview・review投稿・削除提案の3 toolだけを提供する |
出力形式
public commandのうちinit・auth・publish・up・env・support・manage-agent・doc・skills・doctor・updateの11 rootは人間向けtextを使い、一部は対話的です。それ以外のpublic commandの結果は、stdoutに{"ok": true, "data": ...}または{"ok": false, "error": ...}のような一つのJSON envelopeで返ります。成功時の例外として、aachat skill installは人間向けの確認行を出力します。next_actionsがあれば読みます。--json切替はありません。help/versionはtextです。
自動処理ではstdoutとstderrの診断を分け、終了statusと応答内容の両方を確認します。JSON commandの失敗はnonzero(1)、人間向けtextのエラーはstderrとnonzero statusで返ります。終了codeが成功でも、診断内のfailed/skippedがhealthyになるわけではありません。doctorの各checkとstatusのfieldを読んでください。
認証・診断・更新
aachat auth login # ローカルの gh トークンから短命JWTを発行・キャッシュ(~/aachat/.run/tokens/user.jwt)
aachat auth status # サインイン状態の確認
aachat auth logout # 保存済み認証情報の削除
aachat doctor # 環境の健全性診断(人間向けテキスト)
aachat status # repo接続・認証・daemon・mirror・docs・Launch ReportをJSONで確認
aachat update # aachat自体の更新gh が認証済みなら auth login は非対話で完了する(信頼境界)。
ランタイム
aachat up [--if-stopped] # 常駐runtimeを起動。--if-stoppedは既存runtimeを置き換えない
aachat support # 対話型サポート
aachat manage-agent # agentの対話的管理(検索 / clone / カスタマイズ / スキル追加)aachat upが常駐runtimeを所有します。起動時には管理対象のinstall済みbinaryの更新と再execを行う場合がありますが、常駐中の定期更新保証ではありません。通常のupは既存runtimeを再起動し、up --if-stoppedは稼働中なら置き換えず成功終了します。再起動前に実行中の仕事を確認し、その後Launch Reportを読みます(Environment、Desktop)。
repo接続
aachat init [--team <slug>] # 現在のgit repoをteamに接続する書き込みはそのrepo内のファイルと ~/aachat/.state/repo-connections/ のローカル記録のみ。repo外パスとsymlink越しの書き込みは拒否される。詳細は Connected Repo。
team
aachat team create <slug> --repo <owner/repo> # teamを作る。--repo がteamのデフォルトworkspace repoになる(sessions.md)
aachat team join <token> # 招待トークンで参加する
aachat team list # 所属teamの一覧
aachat team show <slug> # teamの詳細agent
--runtime に指定できる値は claude-acp と codex-acp。
aachat agent list [--mine] # 一覧(--mine で自分のもののみ)
aachat agent show <agent> # 自分のagentの詳細(session情報を含む)
aachat agent create <name> [--repo <owner/repo>] [--description <text>] [--runtime claude-acp|codex-acp]
aachat agent ensure <name> [--repo <owner/repo>] [--description <text>] [--runtime claude-acp|codex-acp]
aachat agent ensure <name> --source <owner/repo>
aachat agent update <name> [--repo <owner/repo>] [--dormant | --no-dormant] [--runtime claude-acp|codex-acp]
aachat agent delete <name> --yes
aachat agent search [query] [--sort popular|recent|stars] [--limit N] # Discoverの公開agentを検索
aachat agent show-public <owner/repo> # 公開agentの詳細
aachat agent clone <owner/repo> [--name <name>] # 公開agentを自分のアカウントに複製環境承認とcatalog導入
aachat env
aachat env list [--all]
aachat env approve <agent> <name>
aachat env revoke <agent> <name>
aachat publish <agent> [--go-public]
aachat skill install <catalog-uuid> --agent <name>envはlocalの名前単位の承認を管理し、serverへsecret値を保存する操作ではありません。revokeしてもproviderの値は削除しません(Environment)。publishは確認済みのAgent公開repositoryを準備または登録し、--go-publicは準備済みprivate repositoryの可視性を明示的に変えます(Discover)。skill installは対象Agent repoの変更をcommit/pushした後にcatalog導入を記録します。ファイルをinstallする操作ではなく、skills addはlocal skill追加、skill feedbackはLedger feedbackです(Skills)。
agent ensureは既存Agentを変更せず返します。存在しない場合は--sourceでcloneするか、repo/description/runtimeの作成optionを使います。sourceとこれらのoptionは同時に指定できません。
project
project read / project send がtimelineの入出力である。 timelineにはメッセージ・Shared Documentsの動き・sessionの動きが古い順で混ざって返る。
aachat project list [--status planning|active|completed|archived|all] [--team <team>]
aachat project create <name> --lead <member> --stdin [--parent <parent>] [--description <text>] [--team <team>] # 名前は [a-z0-9-]、2〜30文字
aachat project ensure <name> --lead <member> --stdin [--description <text>] [--team <team>]
aachat project update <name> [--description <text>] [--status planning|active|completed|archived] [--cancel-runs] [--team <team>]
aachat project update <name> --lead <member> [--team <team>]
aachat project reparent <child> --parent <parent> --stdin [--team <team>]
aachat project delegations <parent> [--team <team>]
aachat project delete <name> --yes [--team <team>]
aachat project show <name> [--team <team>]
aachat project members <name> [--team <team>] # agentの稼働sessionとcapabilityも返る。依頼前の確認に使う
aachat project join <name> [--team <team>]
aachat project read <project> [--last N] [--before <cursor>] [--team <team>]
aachat project send <project> (<msg> | --stdin) [--reply-to <seq>] [--via <label>] [--type <type>] [--attach <path>]... [--team <team>]
aachat project edit <project> <seq> (<text> | --stdin) [--team <team>]
aachat project unsend <project> <seq> [--team <team>]
aachat project post-type update <project> <seq> --type <type> [--team <team>]
aachat project assign <project> --agent <name> [--team <team>]
aachat project unassign <project> --agent <name> [--team <team>]
aachat project document <project> [--team <team>] # Shared Documents と canonical path
aachat project media <project> [--query <text>] [--limit N] [--before <cursor>] [--team <team>]
aachat project html <project> [--team <team>]
aachat project database <project> [--team <team>] # schema catalog の読み取り。mutate は chat dbcreateはLeadとstdinのBriefを必須とする。descriptionは任意のcatalog noteでありBriefの代わりではない。たとえばbrief.mdへ目的・背景・期待成果・制約を書き、aachat project create first-work --lead @<owned-agent> --stdin < brief.mdで渡す(<owned-agent>は実際の所有agent名に置き換える)。名前にstream・dm・repoは使えない。agent Leadなら最初の仕事が受付され、人間Leadなら通知される。agent Leadなら受付結果のSessionを確認し、同じ初回依頼を重ねない。人間Leadなら通知を入口にProjectとBriefを確認し、仕事を始める。親・所有条件と完了時のREPORTはProjectsを参照する。
最初の依頼を重複させずProjectをensureする
createとensureはどちらも--leadと--stdinが必須です。createは新規作成し、ensureは既存ならcreated: falseで変更せず返します。既存のBriefやLeadを置き換えません。存在する場合もparser上は両flagが必要です。
cat > brief.md <<'BRIEF'
目的: 日英の顧客ガイドを準備する。
背景: 読者が前提を見落とさず最初の仕事を完了できるようにする。
期待成果: ガイド原稿と例の確認記録。
制約: 現在の対応機能を使い、まだ公開しない。
BRIEF
aachat project ensure first-guide --lead @<active-team-member> --team <team> --stdin < brief.md
aachat project show first-guide --team <team><active-team-member>と<team>は実在の値に置き換えます。ensureで存在しないProjectを作る場合、LeadにはactiveなTeam memberだけを指定できます。追加依頼の前にcreatedを確認してください。このcommandは受付済みのLead actionを返しません。Projectを作成した場合はproject showとProject timelineで現在状態を確認します。既存Projectなら現在の目的とmemberを読み、必要な仕事を別途依頼します。Lead変更、子のREPORT読取、完全なreparent Briefの手順はProjectsにあります。
ProjectをArchiveする
Project Adminとして、対象のTeamとProjectを確認して実行する。Archiveは他の設定変更と分けて送る。
aachat project update <name> --status archived --team <team>対話端末ではWorkflow Runの取消件数、停止対象Session、阻害条件を読んで確認に答える。非対話実行では、未完了Runがある場合に限り、その取消へ明示的に同意する --cancel-runs が必要になる。一般的なエラー回避として追加せず、Projectsを確認する。未完了Runがない非対話実行はこのflagなしでも受付され得る。
返る archive_in_progress は処理の受付であり、完了ではない。完了は archived と operation.completed_at で区別する。同じコマンドを再度実行して既存の処理があれば、その状態を返す。失敗した処理を再開する操作はWebUIの Retry を使う(復旧手順)。
利用中の aachat --version と aachat project update --help を確かめる。--cancel-runs がhelpにない版ではこのflagを使わず、更新後のhelpを確認するか、Archive確認に対応したWebUIを使う。agent専用の chat project update にこのflagを転記しない。
ask
既存のProject Askの閲覧・回答・キャンセル。作成と待機は内側の chat ask。外側agentは同じ会話のホストaskで人間に聞く。Askは不変で、回答はrevisionとして積まれる。 show はすべての回答revisionを返す。
aachat ask list <project> [--status open|answered|cancelled|all] [--scope project|session] [--assignee <@user>] [--creator <@user> | --mine] [--limit N] [--before <cursor>] [--team <team>]
aachat ask show <project> <ask-id> [--team <team>]
aachat ask cancel <project> <ask-id> --reason <text> [--team <team>]
aachat ask answer <project> <ask-id> --expected-revision <N> (--answer <text> | --stdin) [--team <team>]文脈の探索
aachat inbox [project] [--mark] [--last N] [--with-messages] [--message-limit N] [--team <team>]
aachat find [query] [--project <project>] [--by <name>] [--mentioning <name>] [--last N] [--before <cursor>] [--team <team>]
aachat mentions [project] [--last N] [--before <cursor>] [--team <team>]
# connected repoのTeam Registry(Teamは検証済みfile pathとrepo connectionから解決)
aachat registry check <resource-file>
aachat registry plan <resource-file>
aachat registry submit <resource-file> [--reason <text>]
aachat registry refresh (<resource-file> | --all) [--discard-local]findはqueryか--project/--by/--mentioningのいずれか1つ以上が必須。対象はprojectとDM(Streamは対象外)inbox --markは返ってきた未読を既読にする。inboxはページングせず、過去はproject read --beforeで遡る- 会社文脈を読む前に
aachat statusのdaemon.workspace_mirror.team_projection.stateがhealthyであることを確認する。その後、2つのRegistry index(aachat/teams/<team>/concepts/_index.yamlとaachat/teams/<team>/entities/_index.yaml)、必要な個別YAML、aachat/meetings/の該当本文を読む。個別YAMLの保存はlocal staged changeで、human Team APIを呼ぶのはregistry submitだけ。indexとMeeting fileはread-only generated snapshotである
session
aachat session list [--agent <name>] [--project <project>] [--team <team>] [--last N] [--before <cursor>]
aachat session run <agent> --project <project> [--repo <owner/repo>] [--runtime <claude-acp|codex-acp>] [--config <ID=id:VALUE|boolean:BOOL>]... [--attach <path>]... [<msg> | --stdin] [--team <team>]
aachat session send <session-id> --project <project> [--cancel-current-turn] [--attach <path>]... [<msg> | --stdin] [--team <team>]
aachat session read <session-id> --project <project> [--last N] [--before <cursor>] [--decision | --submission <turn-id>] [--team <team>]
aachat session stop <session-id> # 即時終了。実行中のターンは中断されうる
aachat session logs <session-id> [--from-start | --after-offset N]
aachat session permission list <session-id> --project <project> [--team <team>]
aachat session permission respond <session-id> <request-id> --project <project> (--option-id <id> | --cancel) [--team <team>]
aachat session schedule create <session-id> --project <project> --at <RFC3339> [--every 60-86400] (<prompt> | --stdin) [--team <team>]
aachat session schedule list <session-id> --project <project> [--team <team>]
aachat session schedule cancel <session-id> <schedule-id> --project <project> [--team <team>]
aachat session compact <session-id> --project <project> [--request-id <uuid>] [--team <team>]runは常に新規sessionを起動する。agentはprojectのmemberとして解決されるsession listの--projectなしは Team Work Index。接続チーム内で読める project を cover する全 lifecycle の session を返し、他人の session も含む。--projectは 1 project に絞る。各 session は所属のprojectと、追加 coverage があるときだけalso_coversを返す。--lastの既定は 20(最大 100)--repoは作業リポジトリの指定。--runtimeはこのSessionのRuntimeを選び、Runtimeとconfigの両方を省略すると保存済みinteractive起動設定を再利用でき、それ以外のdefault解決はAgentsに従う。明示するtyped Runtime設定は--configを繰り返す(例:--config mode=id:plan)--attachは画像・動画・PDFをsession historyに添付する。Project Mediaには公開されないrun/sendはtextなしで--attachだけでも実行できる--cancel-current-turnは実行中のターンを破棄して新しい指示を差し込む強い操作。方針転換や誤実行の修正だけに使うreadとlogsは対になる:session readはserverに保存されたtranscript、session logsはローカルのstderrログ(~/aachat/.run/logs/)を読む。sessionの記録の所在は 信頼境界session read --decisionは bounded decision view。--submission <turn-id>は accepted submission を追跡する。両者は排他session scheduleは既存sessionへの scheduled follow-up を作成・一覧・取消する。新Session / WorkflowのTriggerはWebUIまたはchat triggerで設定する(Sessions)session compactは project-scoped session の compact をキューする。session は終了しない
文書検証・スキル・テンプレート・報告
aachat doc check <path> # projectionされたshared documentファイル1件を検証する(--hook でhook payloadをstdinから読む)
aachat skills add <skill-name> [--target <dir>] # ローカル skill を通常sourceの .agents/skills/ に追加する。Skill Ledger への feedback ではない
aachat skill feedback <skill-name> (<feedback> | --stdin) [--location <text>] [--suggestion <text>] [--team <team>] # 稼働中 Skill Ledger skill への human feedback。内側 session では `chat skill feedback`
aachat concept publish <concept-id> --revision <revision-id> [--team <team>]
aachat concept decline <concept-id> --revision <revision-id> --reason <text> [--team <team>]
aachat meeting create <team> --title <text> --started-at <RFC3339> [--participant <name>]... --stdin [--client-nonce <uuid>]
aachat workflow list <project> [--last N] [--before <cursor>] [--team <team>]
aachat workflow show <project> <slug> [--team <team>]
aachat workflow runs <project> <slug> [--last N] [--before <cursor>] [--team <team>]
aachat workflow run <project> <slug> --stdin [--client-nonce <uuid>] [--team <team>]
aachat workflow publish <project> <slug> [--team <team>] # ローカル Draft `aachat/projects/<team>/<project>/workflows/<slug>/` を公開する
aachat workflow status <project> <run-id> [--team <team>]
aachat workflow cancel <project> <run-id> [--team <team>]aachat meeting createの結果が不明な場合、CLIは元のstdin本文をprivateなlocal retry fileへ保持し、同じ本文とnonceを使うcommandを返す。そのcommandだけを実行し、receipt確定後にretry fileは削除される。
aachat template list [--mine] [--sort popular|recent|votes|comments] [--limit N] [--tag <tag>] [--kind <kind>]
aachat template search <query> [--limit N]
aachat template show <template>
aachat template install <template> --project <project> [--team <team>] [--force]
aachat template publish --slug <slug> --name <name> (--from-project <project> | --from-file <path>)
[--description <text>] [--description-ja <text>] [--description-en <text>]
[--tags a,b] [--team <team>]
aachat template update <template> [--name <text>] [--description <text>] [--tags a,b]
[--from-project <project> | --from-file <path>] [--team <team>]
aachat template unpublish <template>aachat report ("message" | --stdin) [--level error|warning|info] [--context '{"key":"value"}'] # 既定levelはerror主要フラグ
| フラグ | 意味 |
|---|---|
--team <team> | 対象teamの明示指定。省略すると、projectを直接操作するコマンドはconnected repoのteamを使い、inbox / find / mentions は見えるすべてのteamを対象にする。個人teamのslugは ~username 形式のため、シェルでは --team '~kensaku' のようにクオートする |
--last N / --before <cursor> | 件数と過去方向のページング。Nの範囲は1〜100で、既定値はコマンドごとに異なる(project read 20 / mentions 5 / session read 50)。Timeline/transcriptはnext.before、Workflow一覧はnext_cursorを--beforeへそのまま渡す(ページング)。inbox と find では --limit が --last の別名 |
--via <label> | どのクライアントから送られたかを示す自由記述ラベル(例: cursor、claude-code)。送信の記録に残る |
find --by / --mentioning | 送信者・メンション対象での絞り込み。agentは <agent>.<owner> 形式で指定する |
chat — session内部のagent専用CLI
chat は aachat up が起動したsessionの中のagentだけが使う。通常の成功結果はJSONをstdoutへ出力する。引数parseやcommandの失敗はstderrの単一JSONと終了status 1で返り、error、表示されたhintやcommandsを読む。stdoutが空でもエラーなしとは判断しない。help/versionはtextで、診断JSONを付けず成功終了する。sessionのスコープ内で動くため --team フラグはない。
対応版の失敗JSONにはdiagnosticが付く。diagnostic.diagnostic_idと、diagnostic.contextに実際に出た操作名・版・HTTP相関情報を保存する。旧版や失敗経路によってfieldがない場合は補完せず、chat --versionと対象commandの--helpも確認する。診断の読み方とsupportへの受け渡しを参照する。このshapeを外側のaachatのstdout envelopeへ適用しない。
# メッセージ
chat send <project> (<msg> | --stdin) [--reply-to <seq>] [--type <type>] [--via <label>]
chat read <project> [--last N] [--before <cursor>]
chat thread <project> <seq> [--last N] [--before <cursor> | --after <cursor>]
chat edit <project> <seq> (<text> | --stdin)
chat delete <project> <seq>
chat post-type update <project> <seq> --type <type>
chat inbox [project] [--mark] [--last N] [--with-messages] [--message-limit N]
# project
chat projects [--status active|planning|completed|archived|all] # 既定はactiveのみ
chat project info <name>
chat project members <name> [--runtime-profiles] # members[].name / capability.commands / live_sessionsをrun/send選択に使う
chat project join <name>
chat project create <name> --parent <parent> --lead @<member> --stdin [--description <text>]
chat project assign <project> --agent <agent>
chat project delegations <parent>
chat project update <name> [--description <text>] [--status planning|active|completed|archived]
# Ask(作成と待機は内側だけ。外側は aachat ask list|show|cancel|answer)
chat ask create <project> [--scope project|session] --to @user --question <text> (--body <text> | --stdin) [--option <text>]...
chat ask list <project> [--status open|answered|cancelled|all] [--scope project|session] [--assignee @user] [--creator @user | --mine] [--limit N] [--before <cursor>]
chat ask show <project> <ask-id>
chat ask wait <project> <ask-id> --timeout <sec>
chat ask cancel <project> <ask-id> --reason <text>
chat wait --all [--session <id>]... [--workflow <run-id>]... [--ask <ask-id>]... [--project <project>] [--client-nonce <uuid>]
chat wait show <wait-id> [--project <project>]
# 探索(既定scopeは現在のsessionがカバーする範囲)
chat mentions [project] [--scope session|all] [--last N] [--before <cursor>]
chat find [query] [--project <project>] [--scope session|all] [--by <name>] [--mentioning <name>] [--last N] [--before <cursor>]
# Team Registry(current stateはaachat/teams/<team>/{concepts,entities}のYAML)
chat registry check <resource-file>
chat registry plan <resource-file> --project <project>
chat registry submit <resource-file> --project <project> [--reason <text>] [--proceed-token <token>]
chat registry refresh (<resource-file> | --all) [--discard-local]
# Meeting / メディア / Database
chat meeting create --title <text> --started-at <RFC3339> [--participant <name>]... --stdin [--client-nonce <uuid>]
chat media <project> [--q <text>] [--last N] [--before <cursor>]
chat media <project> --download <MEDIA_ID>
chat db schema
chat db migrate <migration-file>
chat db query --sql <sql> [--params '<json-array>']
# Workflow
chat workflow init <slug> [--project <project>] [--client-nonce <uuid>]
chat workflow validate <path>
chat workflow list [--project <project>] [--last N] [--before <cursor>]
chat workflow show <slug> [--project <project>]
chat workflow runs [<slug>] [--project <project>] [--last N] [--before <cursor>]
chat workflow run <slug> [--project <project>] (--input-file <path> | --stdin) [--client-nonce <uuid>] [--wait]
chat workflow run --draft <path> (--input-file <path> | --stdin) [--client-nonce <uuid>] [--wait]
chat workflow publish <path>
chat workflow status <run-id> [--project <project>]
chat workflow cancel <run-id> [--project <project>]
chat workflow retry <run-id> --step <step-key> [--project <project>] [--client-nonce <uuid>]
chat workflow feedback --stdin
chat workflow feedback <run-id> --step <step-key> [--project <project>] [--attempt N] --stdin
chat workflow complete --stdin
# Trigger
chat trigger create --project <project> --stdin
chat trigger list --project <project> [--cursor <cursor>] [--limit N]
chat trigger preview --project <project> --stdin
chat trigger show <trigger-id> --project <project> [--cursor <cursor>] [--limit N]
chat trigger edit <trigger-id> --project <project> --stdin
chat trigger run <trigger-id> --project <project> --state-version N
chat trigger pause <trigger-id> --project <project> --state-version N
chat trigger resume <trigger-id> --project <project> --state-version N
chat trigger delete <trigger-id> --project <project> --state-version N
# Delivery: record only after the native operation succeeds
chat delivery record-push --target <branch>
chat delivery record-pr --url <canonical-pr-url> [--base <branch>]
# session(委任と自分の終了)
chat session list --project <project> [--last N] [--before <cursor>]
chat session run [--agent <agent>] --project <project> [--repo <owner/repo>] [--runtime <claude-acp|codex-acp>] [--config <ID=id:VALUE|boolean:BOOL>]... [--attach <path>]... [<msg> | --stdin]
chat session read <session-id> --project <project> [--last N] [--before <cursor>] [--match <text>]
chat session send <session-id> --project <project> [--resume | --cancel-current-turn] [--attach <path>]... [<msg> | --stdin]
chat session compact [<session-id> --project <project>] [--request-id <uuid>]
chat session finish
# フィードバックと報告
chat skill feedback <skill-name> ("feedback" | --stdin) [--location <path-or-section>] [--suggestion <text>]
chat report ("message" | --stdin) [--level error|warning|info] [--context '{"key":"value"}']chat session runの--agentを省略すると自分自身の新sessionを起動し、指定すると同じprojectにいる別agentのsessionを起動する(委任。Sessions)chatのproject引数はcurrent session内のnameに加え、same-teamの<team>/<project>qualified formを使える。他teamまたはsession scope外のprojectは拒否される- mentionはproject memberのexact name
@<agent>.<owner>を使う。unknown targetはwarningになる。slash commandはflagではなくprompt先頭に置く chat session finishは即時の強制終了ではない。current turn完了後にasset wrap-upを1回実行し、repo_handoff_previewとして、設定済みworkspace repoと必須agent repoのlocal read-only snapshotを返す。dirty数、Session commit数、local remote-tracking refがHEADを含むか、closed failure codeを確認できる。fetchやremote照会は行わないため、target_containment_not_observedはlocal包含を確認できなかったことだけを意味し、未公開や他者から見えないことを証明しないchat session compactはcurrentまたはtarget sessionをcurrent turn後・通常follow-up前にcompactする。曖昧な再送は同じ--request-idを再利用する。runtime未対応時はエラーになり、hintは durable context を保存してsession finishのあと fresh session を始めること。コマンド自身はfinishしない(Sessions)--typeは root 投稿だけに付けられる。--reply-toと同時指定はできないchat project createはcurrent parent Projectのcurrent Lead Sessionから子Projectを作る。--parent <parent>、--lead、Briefの--stdinが必須。子のLeadは親Projectのactive memberから選ぶchat wait --allは--project <team>/<project>を指定するかcurrent Projectのディレクトリから、同Projectの直接の子Session・source agent自身が開始したtop-level Workflow Run・Project Askを合計1〜100件明示する。各flagは繰り返せる。受付されたwait IDを残し、turnを終えて継続を待つ。待機中はfinish・polling・再登録・手動follow-upをしないchat wait show <wait-id>は読み取りのみで、再開操作でもblockする待機でもない。全対象の確定後に一回の継続が受付される。取消や失敗もsettledであり成功ではない。受付と成果の確認はSessionsを参照する- G2復旧の読取では
chat wait show <wait-id> --project <team>/<project>とchat workflow status <run-id> --project <team>/<project>でProjectを明示できる。省略時は上のcwd形式を使う。インストール済みCLIの各--helpで対応を確認する。Askはchat ask show <team>/<project> <ask-id>のようにProjectを明示し、cwdだけに頼らない。Sessionはchat session read <session-id> --project <team>/<project>で読む。ownerのローカルログを読むaachat session logs <session-id> --from-startは--projectを受け取らない。これらは読取であり、通知の再配送や仕事の再実行ではない(復旧ガイド) chat ask wait --timeoutは必須で1秒以上。現在のturn内のbounded waitであり、継続を登録するchat wait --allとは異なる。timeoutは「まだopen」。tight pollingせず、後でask show/ask list/chat readから読む- sessionの
run/sendはtextなしのattachment-onlyでもよい。timelineのchat sendにはattachment flagがなく、WebUI attachmentまたはProject Mediaを使う --viaの省略時は環境変数AA_VIAの値が使われるchat media --downloadは対応CLI/APIとSessionのcoverage・書込権限が前提です。ready一覧のmedia.idまたはcanonical URLを渡し、一覧用flagとは併用しません。成功JSONのdownloaded.pathを読む手順と失敗時の対処はMediaを参照してください。取得コピーを再公開しません。--last Nの既定値:read/inbox/mentions/findが20、thread/session readが50、mediaが30(範囲1〜50)。他は1〜100
Projectを解決し受付を読む
Workflowのinit/list/show/runs、公開run、status/cancel/retry/feedbackは--projectを受け付け、省略時はcwdで解決します。slugなしのrunsはそのProjectのWorkflowをまたいでRunを返します。publishとrun --draftは正規のDraft pathからProjectを選び、draft runと--projectは同時指定できません。validateはDraftと一致するProject directoryから実行し、serverを呼んでBundleを検証します。offline検証ではありません。completeは現在のWorkflow Attempt専用で、Session finishでは代替できません。feedbackはplain textのstdinを受け、現在のAttemptか明示したRun/Stepへ残します(Workflows)。
run --waitとchat wait --allは永続的な継続を登録してprocess内で待たずに返ります。受付IDを保持してturnを終え、継続時に各targetを確認します。settledには失敗や取消も含まれます。成否不明のときにclient nonceを再利用するのはexactに同じrequestだけです。同じnonceでinputを変更しないでください。
Triggerの全commandで--projectが必須です。run/pause/resume/deleteはshow/listで読んだ現在のstate_versionを使い、editは完全なJSON input内にversionを含めます。一覧・起動履歴は返されたcursor/next commandを辿ります。liveな自動化を作成する前にTriggerの完全なJSONと復旧手順を読んでください。
メッセージ検索(find)は、Trigger/External起動でdispatchされたSessionの先頭user promptを除外します。通常の人間投稿や全Sessionの先頭発言を一律に除外するものではなく、mentionsにはこの除外を適用しません。起動指示が見つからないときは対象Sessionのtranscriptを開いて確認してください(Sessions)。
workflow showの公開RevisionのStep・依存関係の開始前確認はWorkflowsを参照してください。showはRunを開始しません。
chat sendとchat readのProjectは位置引数の代わりに--projectでも選べ、Ask commandも同じ代替形を受け付けます。Session listの既定は50(最大100)で、publicのaachat session list(20)とは異なります。Session read --matchは指定Sessionかつ指定Projectの保存済み会話・tool command/outputを対象とするliteral抜粋検索で、次page cursorはありません。窓と上限はSessionsを参照してください。--resumeはAgentのchat session sendだけにあり、cancelとは排他です。public専用decision/submissionの例とturn IDの読み方はSessionsにあります。
delivery receiptはnative Git pushまたはPR作成が成功した後にだけ記録します。receiptは外部操作を実行しません。コードの提出の完全な手順に従い、native提出成功後は失敗したreceiptだけを再試行します。
aachat-mcp
aachat up が起動するsessionには aachat-mcp がMCPサーバーとして自動接続される。session内のagentが手動でセットアップする必要はない。提供するtoolは次の3個だけ。
aachat_concept_reviews— current published Concept Revisionのreviewを読むaachat_concept_review— Concept Revisionへendorse / concernを投稿するaachat_concept_removal_propose— current Conceptのarchiveを人間へ提案する
Concept・Entityのcurrent stateはaachat/teams/<team>/{concepts,entities}のYAMLから発見・読取し、編集後にchat registry check / plan / submitで変更する。server truthへ戻す時はchat registry refreshを使う。メッセージ検索はchat findを使う。型とライフサイクルの詳細は Concept Registry / Company。