muse exec は、対話画面を出さずにプロンプトを1回だけ実行するコマンドです。CI やスクリプトから呼ぶための入口になります。
muse exec "このリポジトリのテストを実行して結果を要約して"
機械可読な出力
--json を付けると、標準出力に JSONL 形式でイベントが流れます。人間向けの整形出力ではなく、そのままパースできる形です。
muse exec --json "hello"
出力される1行1件のイベントは、セッション・実行・タスクという3つのストリームに属し、それぞれ連番を持ちます。構造の詳細はイベントログの記事に整理しました。
プロンプトの渡し方
引数で渡すほかに、ファイルから読ませることもできます。長いプロンプトや、シェルのエスケープを避けたい場合に使えます。
muse exec --prompt-file ./task.md
APIキーを標準入力から渡す
--api-key-stdin があります。環境変数に置きたくない場合の選択肢です。
cat ~/.secrets/meta-key | muse exec --api-key-stdin "..."
認証まわりでは muse auth set も同じ方針で、こちらは「APIキーは標準入力からのみ読む。コマンドライン引数では受け取らないので、シェル履歴に残らない」と明記されています。秘密情報を引数で受け取らない設計が一貫しています。
exec で使える主なオプション
| オプション | 内容 |
|---|---|
| --json | JSONLでイベントを出力 |
| --prompt-file | プロンプトをファイルから読む |
| --api-key-stdin | APIキーを標準入力から読む |
| --provider | meta か echo(既定 meta) |
| --model | モデルID |
| --reasoning-effort | 推論の深さ7段階(既定 high) |
| --image | ローカル画像を添付(繰り返し指定可) |
| --workspace | ポリシー管理下のツールを、指定パスを起点に登録 |
| -w, --worktree | セッション用の git worktree(off / create / existing) |
| --parallel-tool-calls | 並列ツール呼び出しの有効・無効 |
| --base-url | プロバイダのベースURLを差し替え |
--base-url があるので、社内のプロキシや検証用のエンドポイントを挟む使い方も想定されています。