こんにちは、ADHDevを作った開発者です。スタンドアロン版はAGPLで公開しており、クラウド版で運営費を賄うつもりです。
Claude CodeやCodexのようなターミナルエージェントを2〜3台のマシンで回していると、2つのことがずっと足かせになっていました。どのセッションが終わったのか、止まったのか、承認待ちなのかを、ターミナルを行き来しながら確認しなければならないこと。そして、複数が同時に終わったときのマージ地獄です。
そこで、すでに使っているエージェントに接続するデーモンとWebダッシュボードを作りました。ブラウザからタスクをキューに入れると、分離されたgitワークツリーに振り分けられ(マシンが複数ある場合はマシン間にも)、作業が終わるとRefineryと呼んでいるパイプラインがリポジトリの自己検証(ビルド/テスト/リント)を実行し、パッチの同等性を確認したうえでmainへfast-forwardでマージし、ワークツリーまで片付けます。force-pushは絶対に行わず、判断が微妙な場合はマージせずに私のところへ戻します。
いくつか細かい点もあります。承認リクエストはスマホへのプッシュ通知で届き、ワンタップで処理できます。実際、テザリングを有効にしてノートPCはバッグに入れたまま、スマホだけで承認や指示を出しながら歩き回ることが多かったのですが、WebRTC P2PにTURNフォールバックがあるので、ポートフォワーディングやVPN設定は一切不要です。スクリーンショットをチャットに貼り付けると、そのまま別マシンのターミナルエージェントのコンテキストに入ります。MAGIという交差検証モードもあります。同じ読み取り専用の質問を別のマシン・モデルのレプリカに送り、どこで意見が分かれるかを見せるもので、同じマシンから出た一致は2回分として数えずに割り引きます。
チャット・コマンド・スクリーンショットはブラウザとデーモンが直接やり取りし、サーバーは認証・シグナリングと軽量なセッション状態だけを扱います。コードはサーバーを通りません。
このプロジェクト自体も、これを使って開発しています。最近では、7タスクからなるプロトコル移行をMacとWindowsのワーカーで分担して作成し、すべてRefineryでマージされました。
制約も挙げておくと、単一マシン向けのツールよりセットアップは重めです。そして、マージは意図的に純粋なgitのff-onlyです。曖昧な状況で賢そうに振る舞うのではなく、止まって確認を求める方を選びました。
GitHub: https://github.com/vilmire/adhdev / ドキュメント: https://docs.adhf.dev
まだコメントはありません。