Claude CodeやCodexのようなAIコーディングツールを使用する開発者は、数十の並行スレッドを扱い、それぞれのコンテキストをメンタルRAM内に保持しようとすることで引き起こされる「AI脳の疲労(AI brain fry)」という認知的な消耗状態に直面することがよくあります。Sergey Kuhneは、一時的なチャットウィンドウを、すべてのタスクをコミットされたスナップショットとして扱う永続的なGitベースの優先度付きキューに置き換えることでこの問題に対処しています。

コンテキストのジャグリングという問題

AIエージェントと作業している際、単一のタスクはすぐに複数のフォローアップの確認やサイドタスクへと分岐し、それぞれが独自のワークスペースを必要とします。これにより、開発者は多数のスレッド間を移動しながら、各アクティブな会話の特定の要件や進捗を同時に頭の中に保持しようと強いられることになります。

Kuhneはこれを、脳が消耗してしまい、タスクがどこから始まりどこで終わるべきだったのかを記憶することが困難になる「焦点の喪失」として説明しています。一般的なアドバイスでは休憩を取ることや範囲を制限することが提案されますが、Kuhneのアプローチは、作業自体のシーケンスとコンテキストを再構築することに焦点を当てています。

「チケットが、覚えておくべきこととして記憶の中に残り続けることはありません。コンテキストはそれと一緒に閉じます。そのため、キューから次の項目を取り出すとき、実際に集中することができます。一度に一つのことだけです。」

— How I'm fighting the AI Brain Fry — Sergey Kuhne

Gitベースの優先度付きキュー

提案されたワークフローは、仕事の「真実のソース」をチャットインターフェースではなくGitリポジトリに置く、優先度付きキューのように仕事を整理します。すべてのチケットは関連するコードの隣にあるMarkdownファイルであり、プロジェクトボードの状態はコミットされたスナップショットとして維持されます。

エージェントはこのボードをサイクルごとに処理し、新しいチケットをリサーチし、人間によって「安全」とタグ付けされたものを構築します。機密性の高いコードについては、エージェントは別のブランチで構築を行い、続行する前に許可を求めます。重要な点として、エージェントは決して本番環境にデプロイすることはありません。それは人間の責任のままです。

オーナー・インボックスとコンテキストのクローズ

AIが複雑なトレードオフについて自律的な決定を下すのを防ぐために、システムは人間の判断を必要とする項目を「オーナー・インボックス」にルーティングします。スクリプトはボード全体を読み取り、特定の変更のレビューや技術的な質問への回答など、判定を待っている項目の優先順位付きリストを提示します。

開発者はこれらの項目をシングルページビューアを通じて確認します。これはサイクルごとにGitから再構築されるClaudeのアーティファクトです。これにより、開発者はターミナルの履歴をスクロールすることなく、ボード全体と各チケットのレビューページを見ることができます。一度判定が下されると、それはGitに再度コミットされ、開発者はそのコンテキストを「クローズ」します。

一つの項目のコンテキストを閉じ、それをキューに戻すことで、開発者はメンタルRAMをクリアすることができます。これにより、キューから次の項目を取り出し、未完了のタスクが記憶に残って邪魔をすることなく、その特定の要件に完全に集中できるようになります。

技術的な制約とトレードオフ

このシステムは完璧な解決策ではなく、継続的な技術的課題に直面しています。Kuhneは、主な困難はチケットのロードを1分未満にするために十分な速さでコンテキストを提供すること、および人間による決定によってブロックされているチケットが無限ループに入るのを防ぐことにあると指摘しています。

このシステムは注意散漫を減らすことで生産性を大幅に向上させますが、依然として消耗の激しいプロセスです。目標は、複数のスレッドの中で「迷子」になっている状態から、開発者が一度に一つのコンテキストだけを保持すればよい構造化されたフローへと移行することです。

Hacker Newsの読者の反応

  • 体験談: 同様のセットアップを使用しているあるコメント主は、Markdownファイルをリポジトリに保持することは役立つものの、複数の同時エージェントのためにコンテキストを繰り返しロードしてダンプする作業による燃え尽き症候群を依然として経験していると述べています。 コメント ↗
  • 代替案: 別のユーザーは、GitHub Issuesを管理システムとして使用することを提案し、それがエージェントに割り当てられたタスクのキューを追跡するためのより優れたUIとツールを提供すると主張しました。 コメント ↗
  • 懐疑的: 数人のコメント主は、問題の原因は一度に多すぎる並行作業を試みようとしていることにある可能性を指摘し、ツールに関わらずマルチタスクに対する人間の認知能力には限界があることに言及しました。 コメント ↗
  • 代替案: あるコメント主は、LLMを主要なコード生成に頼るのではなく、エラーのチェックやより良いパターンの提案を行うためのツールとして使用することを推奨しました。 コメント ↗

Hacker Newsのスレッドで出た意見の要約です。事実として検証されたものではありません。 議論の全文を読む ↗