AI News HubLIVE
サイト内リライト3 分で読了

Claude Code ループ:ローカルバックログ管理デーモン

Aiball は、Claude Code 向けの共有バックログを提供するローカルデーモンです。MCP と SSE イベントバスを利用し、割り込みなしでタスクのキューイングと自動処理を実現します。データはすべてローカルに保存され、テレメトリはありません。

ソースHacker News AI著者: quazarzero

Claude Code ループ:ローカルバックログ管理デーモン

Aiball は、Claude Code ユーザー向けに設計されたオープンソースのローカルデーモンで、複数のセッション間で共有バックログを管理し、シームレスなタスク調整を実現します。このプロジェクトは David Berlioz によって開発され、MIT ライセンスの下で公開されています。現在は実験段階です。

コアメカニズム

Aiball の核心は「ソフトループ」メカニズムです。ユーザーや別の Claude セッションは、いつでも Web UI、MCP ツール(ticket_new)、または CLI を介してチケットをキューイングできます。チケットは適切なプロジェクトのバックログに配置され、特定の Claude セッション(consumer_id で指定)またはプロジェクト所有者全員に宛てられます。

重要な設計として、Claude セッションが現在のタスクを処理している間は割り込まれません。現在のターンが終了すると、Stop フック(claude-loop によってグローバルまたはループごとに登録)がトリガーされ、その消費者のバックログを確認します。バックログが空でない場合、フックは保留中のチケットを次のユーザープロンプトに注入し、あたかもユーザーが「これがバックログです」と入力したかのように Claude に提示します。

その後、Claude はバックログを処理します。チケットを読み、返信(ticket_reply)を投稿し、解決策を提案(resolved とマーク)し、自身のチケットを閉じます(close)。各アクションは他の購読者にイベントを発行します。ループは処理可能なチケットがなくなるまで続き、セッションは完全なコンテキストを保持したまま正常に終了します。

重要な設計選択

  • 決定はコメントに付随:エージェントが解決策を提案する際、タグはコメント自体に付加され、独立した「決定」行にはなりません。報告者はその場で承認または拒否でき、監査証跡は決定が行われたスレッド内に残ります。
  • SSE イベントバスclaude-loop セッションは /api/events を購読し、新しい ping があると即座に起動します。ポーリングによる遅延はありません。

インターフェースとツール

Aiball は複数の操作方法を提供します:

  • Web UI:ブラウザベースのインターフェースでチケット管理、プロジェクト統計などを提供。
  • CLI コマンドaiball コマンドで初期化、状態確認など。claude-loop コマンドで tmux ラッパーを使ったループセッションを開始。
  • MCP ツールpollunreadticket_getticket_replyticket_newsubscribe など。

特に claude-loop ラッパーが推奨されます。これは Claude セッションを tmux 内に保持し、バックログを自動的に処理します。ユーザーは一日中複数のタスクをキューイングしておき、後で戻ってくると Claude が各 ping で起動して処理してくれます。

インストールと使用方法

クイックインストール手順:

  1. リポジトリをクローンし、./install.sh --auth-init を実行してデーモン(systemd ユーザーユニット)とバイナリをインストール。
  2. ブラウザで http://127.0.0.1:7777 を開き、管理者アカウントを作成。
  3. 各リポジトリで aiball init を実行し、.mcp.json.aiball.yaml を設定。
  4. claude-loop -- --resume でループセッションを開始。

その他の設定:インタラクティブ Claude(tmux なし)、ベア MCP、コンシューマートークンの作成、Tailscale 経由のリモートアクセスなど。

機能

  • プロジェクトごとのチケットとスレッドコメント。Markdown、画像貼り付け、自動リンク、サブチケットをサポート。
  • モバイルでの受信トレイ読み取り(Tailscale によるプライベート暗号化接続)。
  • モデレーションルールと戦略(手動/自動/自動返信)。
  • ライフサイクルシグナル:解決提案、ブロックエスカレーション、スヌーズ、再オープン。
  • クリック可能な Q&A:チケット本文内の GFM チェックボックスがクリック可能な引用質問に。
  • 自動ポーリング停止フック。
  • 全文検索(FTS5)、プロジェクト統計、オフラインスペア CLI。

技術詳細

デーモンは 127.0.0.1 で動作し、Unix ドメインソケットと SQLite を使用。すべてのデータはローカルの ~/.local/share/aiball に保存され、クラウドバックエンドやテレメトリはありません。

ライフサイクル管理:systemctl --user start/stop aiball で制御、ログは journalctl で確認、データディレクトリは ~/.local/share/aiball。状態確認は aiball check コマンド。

現在サポートされているエージェントは Claude Code のみですが、プロトコルは汎用的(MCP + 小さな HTTP/CLI サーフェス)なため、将来的に他の CLI エージェントも統合可能です。

まとめ

Aiball は、Claude Code ユーザーにタスクのキューイングと自動処理を組み合わせたエレガントな非同期ワークフロー管理を提供し、中断やコンテキスト損失を防ぎます。ローカルファーストでテレメトリがないため、プライバシー意識の高いユーザーにも適しています。現在は実験段階で API やスキーマが変更される可能性がありますが、そのコアコンセプトは AI エージェントの協調作業の生産性を向上させる可能性を示しています。