feat: エージェント切替でヘッダのプラン / モデル / 使用状況も切り替わるようにする - #130
Merged
Conversation
`/agent` で新規セッションの既定エージェントを切り替えても、ヘッダ(バナー)は Claude のプラン名・起動時の設定モデル・claude.ai の使用状況ゲージを出し続けていた。 ヘッダは「次に動くエージェント」の説明なので、エージェント名だけが変わって残りが 前の provider のままだと、項目ごとに読み方が食い違う。 - `showsAccountUsage` を `showsAccountInfo` に置き換え、判定を**既定エージェントだけ**に 狭めた(稼働中セッションは見ない)。プラン名と使用状況は同じ 1 回の probe が運ぶので 判定も 1 本にまとめ、プラン行とゲージを揃って出し分ける - ヘッダのモデル欄と既定エージェントを manager の購読で読む(`useDefaultModel` / `useDefaultAgent`)。`setModel` / `setDefaultAgent` が `store.notify()` するので、 切替でモデルが CLI 既定へ戻ったことも即座に反映される - 起動時の設定値を配っていた `App` / `SessionList` の `model` prop を削除(唯一の出所を manager にする) - 表示と取得は同じ純関数を通したままなので、出さないゲージのために 5 分ごとの `claude` probe は立たない(既定を Claude へ戻せば再開する)
3 tasks
takecchi
added a commit
that referenced
this pull request
Aug 21, 2026
## 概要 README などの説明が「Claude Code 専用アプリ」に読める状態だったので、**Claude Code 以外(Codex / Grok)でも使える**ことを明示しました。実装は既に 3 エージェント対応済み(#128 / #130)で、本 PR はドキュメント・パッケージメタのみの変更です。 ## 変更内容 ### README.md - **タグライン / 紹介文** — 「Claude Code セッションを並列実行」→「コーディングエージェント(Claude Code / Codex / Grok)のセッションを並列実行」。 - **冒頭に対応エージェントの表を追加** — 「Claude Code 専用ではありません」と明言し、それぞれが起動する CLI(`claude` / `codex` / `grok`)を並べた。 - **特徴の 2 番目に「エージェントを選べる」を繰り上げ**(従来は下の方に埋もれていた)。Claude 固有の項目(プラン / 使用状況・学習データ利用の警告)には「Claude のとき」と注記。 - **機能差の比較表を追加** — 許可ダイアログ・コスト表示・使用状況ゲージ・ログ復元の 4 点だけが違い、worktree 分離 / 並列実行 / 中断 / マージ / PR 自動化 / 通知 / `/model` はどのエージェントでも同じ、と先に書いた(表の値は `CLAUDE_CAPABILITIES` / `CODEX_CAPABILITIES` / `GROK_CAPABILITIES` と一致)。 - **見出しを改題** — 「Codex / Grok で動かす」→「エージェントを選ぶ・切り替える」(Claude も含めた選択の話なので)。参照している 2 箇所のリンク / 文言も追従。 - ログイン手順に `claude auth login` を追記、Claude 前提の言い回し(`gh` レート制限・トランスクリプトの説明)を中立化。 ### その他 - `package.json` — `description` を "parallel coding-agent sessions (Claude Code / Codex / Grok)" に変更(npm ページの 1 行説明)。`keywords` に `codex` / `grok` / `coding-agent` を追加。 - `CLAUDE.md` / `docs/PRD.md` — 概要 1 行を同じ方針に更新。 ## テスト計画 - [x] 変更はドキュメントと `package.json` のメタ情報のみ(コード・テストへの影響なし) - [ ] CI(lint / typecheck / test / build)がグリーン - [ ] README を GitHub でプレビューし、追加した 2 つの表と見出しアンカー(`#エージェントを選ぶ切り替えるagent`)が正しく解決されることを確認
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
背景
/agentで新規セッションの既定エージェントを切り替えても、一覧画面のヘッダ(バナー)はプラン: Claude Team)を出しっぱなしconfig.modelを prop で配っていたため、切替でモデル指定が CLI 既定へ戻っても前の値が居座るusageを報告する」判定だったため、Claude セッションが残っている間はゲージも残るという状態で、エージェント名だけが変わって残りが前の provider のままでした。ヘッダは「次に動くエージェント」の説明なので、項目ごとに読み方が食い違います。
変更
showsAccountUsage→showsAccountInfo(core/agent-capabilities.ts)。判定を既定エージェントだけに狭め、稼働中セッションは見ない。プラン名と使用状況は同じ 1 回の probe(utils/usage-probe.ts)が運ぶので、判定も 1 本にまとめてプラン行とゲージを揃って出し分けるui/hooks.tsのuseDefaultModel/useDefaultAgent)。SessionManager.setModel/setDefaultAgentがstore.notify()するので、切替でモデルが CLI 既定へ戻ったことも即座に出るApp/SessionListのmodelprop を削除(既定モデルの出所を manager 1 つにする)bootstrap/usage-poller.tsのenabled)も同じ純関数を通したままなので、出さないゲージのために 5 分ごとのclaudeprobe は立たない(既定を Claude へ戻せば次の poll から再開)結果、
/agentで Codex / Grok を選ぶとエージェント: Codex/モデル: CLI 既定になり、プラン行と使用状況セクションは消えます。トレードオフ
Claude のセッションが走っている最中に既定を切り替えると、その消費(ゲージ)は見えなくなります。「ヘッダは既定エージェントの説明」という一貫性を、消費を覗ける便利さより優先しました(既定を戻せばまた出ます)。
テスト
npm run lint/npm run typecheck/npm test(2982 passed・カバレッジ閾値クリア)/npm run buildtests/app.test.tsx…/agentで既定を切り替えるとヘッダのプラン / モデル / 使用状況も入れ替わる(実 CLI を起こさないフェイクアダプタで配線を検証)src/core/session-manager.spec.ts…setModel/setDefaultAgentが購読者へ通知する(同じ値なら通知しない)src/core/agent-capabilities.spec.ts…showsAccountInfoのテーブルドキュメント
docs/ARCHITECTURE.md(縮退の表 + 判定を狭めた理由)/docs/TASKS.md/CLAUDE.md/.claude/rules/sdk-integration.md/README.md(ユーザー可視の挙動)を更新しました。手動確認のお願い
非対話セッションのため TUI の体感確認ができていません。
/agentでの切替時にヘッダの 4 項目(エージェント / プラン / モデル / 使用状況)が揃って入れ替わるか、実端末で見ていただけると助かります。