summer.mdが既に開いていた。そうだった今日から夏か。weztermの操作方法を習得するというか習得させるというか。wezterm/weztermを走査させてRAG用のナレッジベースを構築。gh-maestroプロジェクトでエージェントが参照できるようにした。wmuxに関するリソースはすべて削除。Ctrl+Alt+%でペインを左右に分割。Ctrl+Alt+"で上下に分割。%が左右に分割する記号に見えない。逆に上下に分割するような感じがするな。分数なんだから。ダブルクォーテーションなんかまさに、上下と言うより左右の分割を連想させる。tmux由来らしいがなんでこうなった。Ctrl+Alt+"で上下分割、Ctrl+Alt+%で左右分割。ペインを閉じるのをCtrl+Space後c、ペイン入れ替えをCtrl+Space後rとし、luaスクリプト(~/.wezterm.lua)をClaudeに書かせた。とりあえずこの4つがあれば、GUIのように直感的ではないものの、一通りのペイン操作ができると思う。Ctrl+SpaceをLEADERに設定したので、今後なにか追加するときはこれを使うことにする。setup.jsで決まった役職を決まったペインに登場させるっていう方法だと、LLMの汎用性を活かしきれない。様々な問題に柔軟に対応できないもん。gh-maestro試作品完成。Claude Codeと仕上げた。必要なことしか喋らないから捗る捗る。早速明日使ってみよう。gh-maestroで開発開始〜toLowerCase使えっていうんだよ。Claudeに「いちゃもんだから無視しようぜ」っていったら同意してた。なにこれ。gh-maestroが抱えている課題の90%はGemini由来のものです。gh-maestro-baseスキルを手直しついでに、gh-maestro-orchestratorスキルも修正。アホの子Geminiへの指示をコンパクト化する際に気づいたが、オーケストレーターもワーカーも、Weztermについて何も知る必要はない。全部アセットスクリプト内に抽象化してやった。これで必要コンテクストはよりコンパクトになり、Weztermを別のターミナルに変更しやすくもなる(今のところほとんど不満はない)。gh-maestroはAntigravityのドキュメント嘘をついていたのでスキルの登録をやり直す羽目になった。agyで/skillsを叩いてやっと正しいskillのディレクトリが判明した。どうやら二転三転した経緯があるみたい。IDEはもう使わないからどうでもいいが、IDE版とCLI版ではまた違ったりするっぽい。send_pane.js(ペイン間の送信用スクリプト)、spawn_worker.js(ペインを初期化してワーカーを召喚するスクリプト)で自動的にメッセージに付加しまうことでSKILL.mdが簡略化できる。今度こそうまく行くと思うがどうだ!?というか、これでまだわからなかったら相当がっかりすると思う。Gemini 3.5 Flashには失望するだろう。shiftmaeker リファクタリングのオーケストレーターおよび、gh-maestro開発全般を担当させたが、Quotaに関しては全く問題ない。5時間枠は69%消費で23分後にリセット。週枠は26%4日後にリセットだ。週枠の方は、噂によるとAnthropicによるリセットがあったかもしれんのでまだ油断はできないけど、5時間枠は恐らく問題なしだ。gh-maestroに組み込まなければならない。得意分野を見極めたら、オーケストレーターの定義を更新して、Jitro or Antigravity を自律的に選択させたい。これでQuota経済がさらに改善されるはず。.claude/rules として移植しようと考えた。Claude Codeは当然.claude/rulesについての知識を持っていないようで、なにか調べ始めたのでキャンセルしたら、おいおい、claude-code-guideなるスキルを使って公式ドキュメントを調査してるじゃん。そのスキルがあるなら早く教えてくれw ナレッジベースをローカルに用意しちゃったよ。.agents/rules/* に準拠しているかどうかをレビュワーに調査させようとアドバイスした。gh-maestroの最優先課題だな。gh-maestroは日曜大工的なプロジェクトにするつもりだったけど、きちんとした開発フローを組んでやらんとこの先面倒かもしれん。gh-maestroでbat(sharkdp/bat)を活用しよう。VSCodeみたいな重たい超高機能エディタでファイルを読むのをやめ、TUIでさっと読めるようにする。Weztermと組み合わせればチャットが流れてしまうこともなくなるだろう。まさにClaude Code IDEがやっているようなことをスマートにやれる。gh-maestro-orchestrator スキルのアセットスクリプトにWeztermのpane関連の操作をカプセル化してしまう。オーケストレーターはただ、ユーザーに読ませたいファイルのパスをこのスクリプトに渡すということだけを知っていればいい。choco install bat が推奨されるインストール方法。依存関係を解決してくれた。gh-maestroのオーケストレーター、ワーカーの使い方がこなれてきたので、並列でバンバン使うようになってきた。gh-maestroはエージェント起動時のトークンのオーバーヘッドが大きいかもしれない。gh-maestro-reviewerスキルは、ちょっとぬるい。googleのレビュー基準のぶん書を読ませたりしてるんだけど、ぬるい。Gemini Code Assistの自動レビューはいつも危険度の高いバグやセキュリティホールを発見してくれるので、7月にこいつが使えなくなったら不安で仕方がない。gh-maestroのあり方をこいつに寄せていくのもあり。send-pane.jsを使うのはワーカーがオーケストレーターに質問するときと、オーケストレーターがそれに答えるときだけになりそう。つまりイレギュラーが生じたときだけ。できるだけ発生させないようにする方向にシフトする。まあやり取りを見ていると面白いんだけどね。Alt+Gで一応チャットの小窓は開くけれども、タブの内容を取得するらしく、タブのないPWAは対象外。EdgeとCopilotも同様の問題を抱えている。chrome://appsでPWAを右クリックし「ウィンドウで開く」のチェックを外せばPWAをタブで表示できるとのこと。/forkコマンドの活用だ。これはかなり効果が期待できる!/fork(分岐1)し、そこからCorrectness系、Resilience系、Maintainability系のレビュワー用のそれぞれのプロンプトをコンテクストに取り込み、さらに/fork(分岐2)。ここでそれぞれのセッションに/renameで名前をつけてやる。review-correctness, review-resilience, review-maintainability とかね。/resume セッション名 で起動し、さらに/forkしてからレビューの具体的なコンテクストを追加し、開始させる。agy --conversation {セッションID} でそこから再開できるんだけど、名前は指定できなかった。セッションIDは端末依存なのでNGかな。/resume {セッション名} を送信したのち、プロンプトを投げる形だな。/resume に引数はなく、手動で選択していく方式だった。最悪や。SecretManagementとSecretStoreを使い、Set-Secret -Name "DeepSeekAPIKey"でAPIキーを保存してみた。試しに使うため10ドルちょいをプリペイド。deepseek API keysdeepseek-v4-proを動かしてみた。どれくらいこき使うと10ドルが溶けるのか見もの。claude-dsで起動するスクリプトの設置完了。環境変数に毎回APIキーを指定する感じで起動すればいい。毎回パスワードを求められるけど、APIキーに意識が向くので当面このままでいい。`
$env:ANTHROPIC-BASE_URL = "https://api.deepseek.com/anthropic"
$env:ANTHROPIC_AUTH_TOKEN = $apiKey
$env:ANTHROPIC_MODEL = "deepseek-v4-pro[1m]"
$env:ANTHROPIC_DEFAULT_OPUS_MODEL = "deepseek-v4-pro[1m]"
$env:ANTHROPIC_DEFAULT_SONNET_MODEL = "deepseek-v4-pro[1m]"
$env:ANTHROPIC_DEFAULT_HAIKU_MODEL = "deepseek-v4-flash"
$env:CLAUDE_CODE_SUBAGENT_MODEL = "deepseek-v4-flash"
$env:CLAUDE_CODE_EFFORT_LEVEL = "max"
claude @args
`deepseek-v4-proは4月に出たばかりの最新モデル。噂通り、速くて賢そうに見える。gh-maestroのアーキテクチャを喋らせ、CLAUDE.mdに設計思想を追記させたら、コミット、プッシュしますか?と聞いてきてくれた。作業後は、その効果を完結に説明してきた。寄り添い能力ありかなこれ。少なくともGeminiよりは数段上です。ここまでやらせて、0.04USD。6円。deepseek-v4-flashなら3分の1なので、2円。いうほど安いかこれ?gh-maestroの軽めの変更を実装させてみた。レビュワーを消去してPRをポーリングで待機、PRコメントをマージ完了まで待機し続け、コメントが来たらトリアージしてコーダーに改善を指示する。それだけだが、33分かかった。0.12USD消費。deepseek-v4-flashで試す。claude-dsを起動。正確性、堅牢性、拡張性をそれぞれ担当させるためのスキルを発動させた時点でそれぞれに名前を付け、それぞれ/forkし、issue番号を伝える。これでPRをポーリングで待機してレビューを勝手にコメントする。/resumeすれば、必要最小限のコンテクストで別PRのレビューを開始できる。/forkは手動でやるしかないけど、プロジェクトごとに1回きりだとは思う。いや/forkは毎回か。/forkじゃなくて/branchを使ったほうがいいみたい。deepseek-v4-pro[1m]しか試せてない。起動スクリプトで環境変数の設定を変えたつもりだったんだけど、ターミナルの再起動を忘れてた。gh-aw)のRAGを構築し、Claude Codeと一緒に活用方法を検討した。gh-maestroのワークフローに組み込むことは不可能。だが先日構築した外部レビューを完全にまるっと任せることができることが判明した。/reviewer-*系のスキルを手動発動させるとスキルのアセットスクリプトを使うことでPRのポーリングが開始され、レビュー後、同様にレビューコメントが投稿される。gh-awを活用することで、レビュー用エージェントをローカルプロセスに常駐させる必要がなくなる。もちろんポーリング、手動実行も消える。gh-maestroを中央リポジトリとして、reusable workflowsという手法を使うことにした。各リポジトリには.github/workflows/*.ymlのjobs.ci.usesに中央リポジトリのYAMLを指定するだけ。submit_pull_request_reviewという論理的な手段が使える。gh-maestroのコーダー用スキルがAntigravityとClaude Code向けに最適化されている部分がある。とりあえずClaude Code + deepseek-v4-flashにコーダーとレビュワーをやってもらおう。これが月20ドルを超えてくるようなら再考だ。gemini-3-pro-previewという神モデルが使えた時期を除く)のハーネスを一生懸命考える日々は、決して無駄ではなかったぞ。もうマジで相当に鍛えられたよ。deepseek-v4-flashのレビュー、かなり優秀だわこれ。まあプロンプトを熟考したのもあるけど。Gemini 3.5 Flashモデルのコードを見事にブロックしてくれる。今手戻り4回目。きっつ。jintrick/blogがこの日記のSSOTなので、webfetchツールやブラウザ操作なんかをするまでもなく、ghであらゆる情報を取れる。JINTRICK.mdに圧縮してやればいい。Claude Routineみたいなサービスがあったなそういえば。それを参考にして自宅のサーバーでエージェントアプリを動かしてやる?jintrick/blogプロジェクトの日記更新フローに直接組み込むか。JINTRICK.mdが更新される。on.commitみたいなイベントだろうけど、コミットメッセージに何かひと工夫仕込んでおけば、それで1日の始まりかどうかは判定できるだろ。deepseek-v4-flashしかないんだけど−−を走らせて、情報を圧縮させると。JINTRICK.mdを、では、どうやって活用してどういう情報を構築させるかってところを議論してみるとしよう。この日記を読ませながらな。gh-maestroに反省会フローを追加した。反省会って言ってもコーダーの手戻りをなくすために何ができるかをPRマージ処理後に話し合うだけ。lint/rulesで防げるならそれを即席で実装させてしまう。deepseek-v4-flashにコーダーをやってもらったら、Claude Code CLIのボトムに表示させているSonnetの1/100以下のコストで済んでしまった。なんぞこれ!deepseek-v4-proにオーケストレーターになってもらった。auto modeでツールの実行が阻害される問題発生。gh-maestro-orchestratorスキルに知識として詰め込んでやってもいいと思う。最後の「反省会」モードではrulesを書いてもらうことになるんだからね。これ重要だな。kagisearch/kagi-docsgh-awにはインラインサブエージェントという機能があるらしい。v4-proがRAG使って結論してる。sonnet 4.6の代わりにdeepseek-v4-proを使っている。こっちのほうが上だわ。明らかに知性が違うwgit rmは破壊的な操作がデフォルト。git resetも--softではなく、安全とはいえない--mixedがデフォルト。gitは人間の「熟練ユーザー」向けに設計されたツールであり、AIエージェントが安全に操作するための語彙を持っていません。
gitをAIエージェントに直接使わせることは構造的なアンチパターンです。deepseek-v4-flashで問題なし。コーディングエージェントのハーネスがちゃんと効いていればこれくらいのモデルのほうが却って速くて効率は良い。あまりにひどい手戻りが多ければ考えるけど、たいてい計画がずさんなだけ。agyに委譲する。これを任せる。Claude Codeは仕事用なので、ここは噂のHermesを試してみたい。パーソナライズに特化したエージェントらしい。deepseek-v4-proを頭脳にしてしまえばよさそう。gh-maestroからWeztermを操作するスキルだけ抽出して与えてやれば十分かな。……と思ったんだけど、調べてみるとrules/の仕組みがなさそうなのでやめた。それなら使い慣れたClaude Codeをカスタマイズしたほうが良さそうだ。/goalモードがあるらしい。サブエージェントを確実に使いこなしてくれるなら悪くはないけど、あいにくマルチエージェント体制がうまく回っているから全く使う意味がない。gh-maestroでエージェント用のプラグインを定義して、その層で吸収してやるしかない。それさえできれば、Reasonix + deepseek-v4-*をコーダーとしてガンガン使うことができるようになる。agyでいいが、バグの原因調査はむしろ、deepseek-v4-pro, Opus 4.8などの上のモデルにやらせたほうが速いし安上がりになる可能性がある。deepseek-v4-proにはバグ調査員をやってもらおうかな。こちらはむしろ、rulesなんて自動で読み込まないほうが却って都合が良い。gh-maestroに新しいワーカー、bug-investigatorを定義し、Reasonixを専属エージェントとして登録しよう。coder, bug-investigator, investigatorの担当エージェントはハードコードに近い形でいいや。それぞれClaude Code、Reasonix、Antigravityが適任だ。色々試したいので都度選択肢を出させていたけど、設定ファイルにしてしまおう。もちろんorchestratorに俺が直接指示して変えさせることもできる今の状態は維持する。xedを使って書いていたので順序型リストの定義は自分で1.を打っていたけど、zedに変えたら勝手に補完されるようになった。順序型リストの数字を任意に指定できるようにスクリプトを書き換える。claude-ds, claude-ds-flash を ~/.bashrcに登録。これで指揮者とコーダーは完成。@AGENTS.mdとか、余計なことは一切やらない。Claude Code以外の後発エージェントは、たいていの場合AGENTS.mdを設定で変更できるし。bug-investigatorとして使うのが良さげ。npm i -g reasonix@nextで最新版を指定しないと古いTypescript版がインストールされてしまうらしい。色々使えないコマンドがあっておかしいと思ったんだ。pageup/pagedownで問題なくスクロールできた。.claude/rules, .agents/rulesには対応していない。issueは上がっているけど反応なし。deepseek-v4-proなのに、Claude Codeで使っていたflashと同じくらいのコスト感。これはおいしい。gh-maestroの設計見直しも一緒にやっているが、中々筋がいい。というか、実装報告の書き方が最高。過去一わかりやすい報告だ。簡潔でわかりやすい。investigatorはexplorerに、bug-investigatorはinvestigatorに名称を変更した。DS案。pane_idとcwdの2つを使うことで確実性を高めることができた。ワーカーは必ずgit worktreeを使うという点に目をつけた。gh-maestroはレビューをGitHub Actionsに頼るのをやめた。GitHub Agentic Workflowsの利点を活かせないし、オーバーヘッドが巨大すぎてまるで冗談みたいだ。一応新しめの技術なので経験を兼ねてやってみたというところで。claude実行時に初期プロンプトを投げてやるだけで十分。通信なんて要らないもん。非常にシンプルに書けた。起動後はプレビューコメントをポーリングすればいいだけ。orchestratorに任せた。今、2つのコーダーを起動して並列でやらせているようだ。orchestratorのOpus 4.8が、GeminiやDeepSeekのレビューについて批評。愚痴ったり文句言ったりしてるのをみてるの楽しい。gh-maestroをアップデートしたら、もうインストールスクリプトを実行するだけで、現在稼働中のすべてのエージェントに即座に反映されるようになった。この並走感が開発体験を更に向上させる。orchestratorの作業の振り方が鬼。かたや12件、かたや600件。当然後者はコンテクスト100%振り切って仕事が全然終わらないのでフォローするように伝えたら、ちゃんとマネジメントしてくれたけど。なんかこういうところに知性を感じないんだよなあ。Opus 4.8なのに。explorer、バグ調査にinvestigatorを積極的に活用して欲しい。明日の朝の課題だな。gh-maestroを起動するとセッションの大反省会が最後に行われる。これが本当によく機能している。gh-maestroでやれているとも言える。でも改めて考えさせられたね。deepseek-v4-proで仕事を進めてみた。gh-maestroの反省会に担当コーダーを参加させることにした。これは成功だと思う。実際にコードを触った過程で生じた違和感を語ってくれたりする。deepseek-v4-flash)、レビュワー(Reasonix + deepseek-v4-pro)と連携しながら実装が進んでいく。.claude/rulesの在り方だ。コーダーのミスを防ぐためにここにどんどんルールを追加すべきじゃない。ルールを増やせば増やすほど、コーダーの注意力や想像力は削られていく。根源的にミスを減らしたいならモデルを変えるしかない。でも安価で高速モデルを選択したのであれば、その利点を活かすことを考えなければならない。.claude/rulesにはできるだけプロジェクト固有の守ってもらいたい規則を書く。やむを得ずミスの予防として使う場合は、ある程度繰り返し侵されるものに限定する。ある程度の手戻りはもう、前提として受け入れる。gh-maestroファミリーに加えることにしよう。何をやらせるかというと……ちょっと考えたがもうこれしかない。まずはレビュワーだ。現在Reasonixを使っているのでこれと併用する。実力を見せてもらいたい。Gemini Code Assistも来週まで無料で使えるので、3つのレビュワーがそれぞれレビューしてくれることになる。gh-maestroにcodexを組み込みつつ、レビュワーをレビュワー管理者+3サブエージェント体制に変更したのだが、この計画から実装まですべてGPT-5.5に完走させてみたところ、週次Quotaを10%使ってしまった。お目付け役として常駐させるにはちょっと高価すぎるかもしれない。gh-maestro-architectをGPT-5.5と一緒に検討中。ていうか、このモデル最近出たばかりのフラッグシップに近いやつなのか。モデルを落としたあとCodexを再起動したら細心モデルとして推奨された。よほど自身があるのだろう。grill-me スキルは不要だった。なぜならわからないことがあったら質問して、と最後に書いただけだったのに、完璧にAskQuestionを使いこなしていたからだ。全く無駄のない質問。こちらの想定漏れなども埋める質問。Opus以前では「なんでそんなことを聞く?」という質問が多かった。deepseek-v4-flashの推論能力は低い。コーダーとしてやっていくのに最低限の品質ではあるかと思っていたのだが、オーケストレーターの指示を理解できない場面があったのは問題。deepseek-v4-proにコーダーを任せたところ、思わぬ収穫を得た。実装後の反省会でコーダーしか知り得ない情報を提供してくれて、プロジェクト内の全コードの洗剤バグが見つかった。gh-maestroを改良しよう。前々から構想はあったけど、今回の体験で確信に変わった。gh-maestroの強みはGitHubを通信や知識の基盤にすることにある。それを忘れてしまい、Fable 5に言われるがままファイルシステムキューを採用してしまった。.agents/rulesが使えないということなのでコーディング用のハーネスとしては使わない。膨大なルール資産をCodexのためだけにAGENTS.mdに再編するなんてことは出来ないからだ。これならまだAntigravity + Gemini 3.1 Proのほうがマシかもしれない。deepseek-v4-proにやらせていても、Codexは結構な頻度でblockerレベルのレビューコメントをよこす。そういうことなんだよなあ。レビュワーが最後の砦だ。--helpで自己学習可能なほうがいいってのもある。gh-maestroのエージェント可搬性について議論を開始した。案のたたき台をagyで作ってからね。config.jsonという形で切り出す土台はもう出来上がっていたので、あとは変更シナリオに応じて何パターンか作っておき、それをコマンド一発で切り替えればいいってさ。まさにそのとおり。簡単な話だった。agyにはFableと効率的に対話するための橋渡し役になってもらった。こういう小間使いとしては本当に頼りになる。gh-maestroは実験目的でpublicにしてたから、Issueにスパムコメントが来た。変なzipファイルのリンクを置いていったのでコメントごと削除したが、よく考えてみるとプロンプトインジェクションのリスクがあるなこれ。今やprivateで全く問題ないので変更するか、それとも脆弱性の対応を取るか。gh-maestro-review-manager用のエージェントがなぜかCodexでハードコードされていたので修正した。簡単なお仕事だったのでagyにやらせたら、GCAとCodexからそれぞれかなりのダメ出しが来たけど最終的に高品質のコードに仕上がったと思う。typescript-eslint は陳腐化したのでoxlintに移行。Sonnet君はtypescript-eslintが対応してませんの一点張りで代替手段について検討しないアホっぷりを発揮。まあアホっつーか、だいたいどのLLMも前提手段を疑わないのは同じなんだけども。oxlintは要件を満たさないことがわかった。TypeScript 7.0への移行は保留としておいた。review-manager)にheavy/diretedの2種類の指示を与え、heavyならこれまで通り重厚に、directedなら指示通りのカスタムレビューを行うように変更した。rules/を自動で読まないので、数々の規則資産を全く活かせない。いちいち説明しないといかん。skillの遵守度も低い。スキル内にissueのテンプレートが書いてあるにも関わらず、勝手に前例からテンプレートを仕立て上げた。他にも色々だめな点はあるが、まともにテストもできない推論能力の低さも最悪だ。GPT-5.4だけど。自分で勝手に書いたスクリプトでインストーラーを壊し、テストを書かせたら当然失敗するわけだがそれをまともに修正できない。検証方法も頓珍漢。.agents/rulesを読む(ことになっている)し、高速だし、Googleサービスとの連携も強いし。review-manager(Codex + GPT-5.4)のほうが圧倒的に優れていたものの、一部GCAでしかできない指摘があり、その系統が明らかになった。review-managerの方は、「このコードが壊す普遍条件・失敗シナリオを考えよ」という演繹型の指示だが、これはAPI固有の仕様知識を照合しないと見つからない類の欠陥を見抜くことができない。いくらコードの論理を追っても導出できなかったのだ。.agents/rulesの資産をあらゆるエージェントで利用可能にしてやった。スキルにアセットスクリプトを追加して、関連するルールをコーディング前に読み込めるようにした。gh-maestroの実装不備が見つかってゼロからやり直させている。自前のポーリングおよびresume起動を利用した堅牢な通信を実装したつもりだったのに、weztermペインのメッセージ送信にデグレードしてた。issueの受け入れ要件にはちゃんと書かれていたので任せきりにしていたのが間違いだった。レビュワーにもcorrectnessの観点をもたせているのだが、受け入れ要件をみていなかったのだろうか、それとも一時レビュワーの起動がうまく行かなかった瞬間があって、そこに運悪く引っかかったのか。まあよくわからんが、ともかく今日は残業して完全になおしてからでないと帰宅する気にならん。gh-maestroの更新を任せられる。gh-maestro自身の不具合を、gh-maestroを使って行うことは出来ないことがあるから助かる。~/.codex/config.tomlのsandbox="unelavated"という記述が問題だったらしい。知らねえよ。gpt-5.6-terra、アホなのかな。shellスクリプトの引数の使い方を間違えてて、テストも抜けだらけ。自分自身に判定させたら、Haikuレベルだって言ってた。わらい。architect用のSKILL.mdを設計させたけど、ゴミクズだった。あんなスキルじゃまともに動かない。orchestratorへの通信方法すら未定義で、ワーカーとしての基本機能を継承できてないという散々な内容だった。gpt-5.6-solも大丈夫なんだろうか。不安だ。gh-maestroは完全に依存していたのでGraphQLにフォールバックする体制を整えおえたところで、タイミングよく復旧しやがった。gh-maestroの組み込みワーカーとして定義できていないということだ。つまりおれはいま原始的なコピペ通信を手動で行っているのだ。agyが参加できるようになる。役割は「assistant」だな。issue毎にこいつを起動しておくだけ。つまり、issue起票用のスクリプトに、assistantのspawnを仕込んでおけばいい。こいつとorchestratorのみ、対話モードで起動するというわけだ。npm run devを実行したいときとか、色々面倒くさかったことも任せられるだろう。多分スキルを定義しておけばコマンド一発でやれる。しかも素早く。fs.writeSyncで書き出すようにすれば、自分(agy)でもClaude Codeのモニターと同じことができると主張しやがった。何を言っているのだろうか。そもそもモニター出来ていないのに、出力先を変えたからなんだというのか。orchestratorはClaude Code + Sonnet 5が最適だな。gh-maestro-assistantを今日から使い始めている。開発体験がまた向上した。investigatorの詳細なバグ調査結果を抽象的に要約させることで、概要と本質を掴むことが非常に楽になる。するとorchestratorが示してくる方針にたいして、即座に的確な(と思える)判断を下せる。agyの週次Quotaの減り方が緩やかになった気がする。実際3.6 Flashは出力トークンが安くなったとは聞いていたけど。gh-maestro-assistantってわけ。まさにGemini 3.6 Flashにうってつけ、ドンピシャな役割だよ。めちゃくちゃに速くて丁寧。gh-maestro自身の開発はClaude Codeだけにやらせてるのがちと負担なのかな。gh-maestroの開発が一段落すれば、恐らく1日じゅう使って10%ってところだと思う。Codexにはもっとcoderをやらせても良いかもしれないし、Codex Workでなにか業務サポートをさせても良いかもしれない。実行速度を考えると、Antigravityも簡単なコーディングに参加させて良いはずだ。gh-maestroはコストを抑えつつも生成物の質を上げるために作った。問題は速度だろう。手間をかけまくるので時間がかかることが多い。ちょっと手動計測でもしてみるか。暇だから。review-managerのバグ修正。ただしこれはgh-maestroを使えないため、Sonnet 5単独でさっさとやらせた。senor-coderに任せるべき案件だった。DB周りはV4 Flashには荷が重いようだ。assistantがいなかったら面倒くさくて気づけなかったかもしれない。案の定、本来不要な設定ファイルの保存があり、それをサイレント化しようとしていただけで、設定ファイルの保存を中止すればいいだけということに気づけていなかった。バグ調査員が馬鹿だからなのかな。更に途中、review-managerが報告の完了を待たずにクラッシュ。codexでもagyでも。ところが、検証しても再現せず。そんなこんなで1時間近くかかったが幸いBLOCKERレベルの指摘がなかったのでマージはスムーズだった。gh-maestro-review-managerスキルを改定して、Quota経済を最適化できるよう、7つのレビュー観点を自律的に引き算できるようにしたんだけど、適切に引き算されているかどうかを評価する機構を入れたらクラッシュするようになったのでrevert中。.claude/rules、Shift+Tabでのモード切替、任意APIキー。gh-maestroのorchestratorをClaude Codeに特化させることにした。その代わりWezterm依存を排除する方向。assistantワーカーに中身を読ませて要約させてしまえばいい。自分で読むより捗る。なのでassistantだけは対話モードで起動する。assistantに読ませて作業がスムーズに行われているか分析させたところ、ツール実行の失敗だのなんだのが次々と明らかになった。deepseek-v4-flashモデルがClaude CodeのEditツールの実行を何度も失敗していたり、(実害のない)フォールバック用のメッセージ送信スクリプトがエラーでクラッシュしていたりした。assistantにはIssueの進行状況を把握しておいてもらいたい。もうエージェントはAntigravity決め打ちでいいや。実際に動かして検討してみたところ、こいつのsub-agent機能を使うことで安定かつ拡張性高く実装できそうだ。assistantにまとめてもらえば、その時の優劣なんてすぐわかる。orchestratorが基盤となるGitHub Discussionを作り(かつ自動でassistantがspawn)、3名くらい召喚して初期案を出させる。全員分揃ったら、3名それぞれに通知を飛ばし、それぞれの案を評価させ、かつ改善案を再投稿させる。assistantの力を借りて外観を掴む。こんな感じかな。gh-maestroの本来の目的。これが大事なんだ。Quota経済と質の両立、まあ簡単に言ってしまえば、安いコーダーで如何に質の高いプロダクトを作り上げるか、である。gemini-3-pro-preview がマークダウンしてpushし、それをJulesに読ませ、かつ、Julesが実装計画を書いて、それをGemini CLI側が確認して、GOサインを出していたんだ。gh-maestroは自分自身の開発にgh-maestroを使わなかったので、バイブコーディング気味だった。gh-maestro、かなり良い体験になってきた!開発サイクルに自分が参加している感覚が強い。やっぱりassistantのホスピタリティに注力したのが効いてきたのだろう。assistantが「orchestratorが調査エージェントを使って何かを調べ始めたが、解説しますか?」と聞いてきてくれた。頼む、と返事をしたら、どうやらこれからコーダーに指示する際にプロジェクトに既存のコーディングスタイルなどを調査させていたとのこと。orchestratorがsenior-coderを起動したことをassitantは知らなかった。こいつが(サブエージェントを使って)監視しているのは、あくまでも対象となるissueの動きだ。ここにコメントが投稿されたときにそれを検知する。まあそれはそれで良いんだけど、よく考えてみたらorchestratorの動きを知っていてもらいたいんだよな。orchestratorが仮にログファイルを吐けるとして、その更新を検知してなにかアクションを起こすのは無理筋。トークンの浪費が半端じゃない。assistantはorchestratorの現在の発言を取得し解説を始める。gh-maestroの弱点はGitHub APIサービスがコケると共倒れってところだな。一応ログファイルを使って通信はできるから「共倒れ」とまではいかないが、正直やる気がなくなる。gh-maestroの新しい体制でいくつかサイクルを回してみたけど、このassistantはマストだね。断言する。人間の理解がボトルネックになるAIエージェントによる開発においては、仲介に専念するだけの高速なモデルがマストだよ。さもなくば人間が置いてけぼりになる。senior-coder役をLunaに任せることにしてみた。gh-maestro側で変更予定のファイルを把握して関連ruleのリストは渡してやる設計なんだけどね。gh-maestroがかなり安定してきた。今は日々、各ワーカーがより質の高い仕事をするためにプロンプト(SKILL.md)の細かな調整を行っている。多少不格好なところを直したら、mainブランチに統合してタグつけとこう。gh-maestroを拡張するので、GitHub Discussionsを利用する。.gh-maestro/config.jsonに議論参加者の定義を書いておく。あとはorchestratorが(自分は議論には参加せず)仕切る形を取らせればいい。orchestratorが事前に用意し、念の為共有のGit WorkTreeで作業させるのが安全だ。orchestratorのスキルとして定義するのではなく、独自のスキルとして定義しておいて、必要に応じてorchestratorがそれを使う形にすればいい。gh-maestroのようなオーケストレーションアプリが必要なのだ。review-managerが動作不良起こしてんじゃないかと何回も確認した。gh-maestro-councilワーカー定義完了。GitHub Discussion上で議論させる主体となる。gh-maestroで追跡が可能だった。まれにスキルの命令違反を起こしたときなども、その理由を知ることができた。git/ghコマンドを使わせていたが、全廃。すべてスクリプトの責務にする。PRのタイトルや本文は自動生成して責務から外す。コーダーにはとにかくコーディングに集中してもらう。ca-certificates(CA証明書)のインストールが必要なレベルでLinuxの構成が謎。