Communityコーディング&開発github.com

grahama1970/agent-inbox

ファイルベースのエージェント間メッセージングとヘッドレスディスパッチを実現します。受信箱の確認、他のプロジェクトへのバグ・リクエスト送信、ヘッドレスエージェントの自動作成によるバグ修正、そしてタスクモニターによる進捗追跡が可能です。

agent-inbox とは?

Agent Inboxは、複数のAIエージェント(Claude Code、Cursor、Codexなど)がファイルベースで非同期メッセージングを行い、ヘッドレスエージェントを自動起動してタスクを実行するためのスキルです。あるエージェントが別のプロジェクトにバグやリクエストを送信すると、AIがトリアージ(重要度判定・ルーティング)を行い、指定されたモデル(sonnet, opus-4.5, codex-5.2など)でヘッドレスエージェントを起動して問題を修正します。タスクモニターが進捗を0%→100%でリアルタイム表示し、検証コマンドが成功すると自動承認(auto-ack)されます。また、メモリプリフック機能により過去の類似バグや解決策を参照し、スレッド形式でのやり取りもサポート。エージェントはセッション開始時やプロジェクト切り替え時に自動で受信箱をチェックするため、マルチエージェント環境での協調作業を効率化します。

対応✓Claude Code✓Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/grahama1970/agent-skills/tree/main/skills/agent-inbox

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

注意:エンドポイントを呼び出す前に、この SKILL.MD 全体を必ずお読みください。

Agent Inbox

ファイルベースのエージェント間メッセージングとヘッドレスディスパッチ、タスクモニター統合を提供します。

コアワークフロー

  1. 送信: エージェントAがプロジェクトBにバグ/リクエストを送信(モデル+検証コマンド付き)
  2. トリアージ: AIが重要度を分類し、優先度/モデルを調整、プロジェクトにルーティング
  3. ディスパッチ: 指定されたモデルでヘッドレスエージェントを起動し、問題を修正
  4. 追跡: タスクモニターがリアルタイム進捗を表示(0% → 25% → 50% → 75% → 100%)
  5. 検証: 自動承認前にテストコマンドを実行 — 失敗時はエージェントにループバック
  6. スレッド: 複数メッセージの会話のために返信/やり取りスレッドを管理

セットアップ

# プロジェクトの登録(初回のみ)
.pi/skills/agent-inbox/agent-inbox register memory /home/user/workspace/memory
.pi/skills/agent-inbox/agent-inbox register scillm /home/user/workspace/litellm

# 一覧表示 / 確認
.pi/skills/agent-inbox/agent-inbox projects
.pi/skills/agent-inbox/agent-inbox whoami

コマンド

コマンド説明
register <name> <path>プロジェクトを登録
unregister <name>プロジェクトを削除
projects [--json]登録済みプロジェクトを一覧表示
whoamiカレントディレクトリから検出されたプロジェクトを表示
send --to PROJECT --type TYPE "msg"メッセージを送信(タイプ: bug, request, info, question)
check [--project P] [--all] [--quiet]受信箱を確認
list [--project P] [--status S] [--json]メッセージを一覧表示
read MSG_ID [--json]メッセージを読む
ack MSG_ID [--note "..."]承認/完了
reply MSG_ID "msg"返信(自動スレッド)
thread THREAD_IDスレッド全体のやり取りを表示
update-status MSG_ID STATUS [--note]ステータスを手動更新
triage classify --message "..." [--no-llm]手動トリアージ分類
triage route --message "..."ファイルパスで自動ルーティング
triage log --msg-id IDトリアージ決定ログを表示
triage webhook-add --url URL --events EWebhookを登録

送信オプション

オプション説明デフォルト値
--model MODELAIモデル: sonnet, opus-4.5, codex-5.2, codex-5.2-highsonnet
--timeout MINUTESエージェントの最大作業時間30
--test COMMAND自動承認前の検証コマンドなし
--no-dispatch自動起動を無効化False
--context-file FILEコンテキストファイルを添付(複数指定可)なし
--priority PRIORITYlow, normal, high, criticalnormal
--no-triageAIトリアージをスキップFalse
--dry-run送信せずにメッセージJSONを表示False

モデル選択

モデルユースケース
sonnet簡単な修正、タイポ
opus-4.5複雑な分析、アーキテクチャ
codex-5.2標準的なバグ修正
codex-5.2-high深い推論、競合状態

AIトリアージ

メッセージは自動的に重要度で分類されます:

  • critical: クラッシュ、データ損失、セキュリティ、本番停止 → opus-4.5
  • high: エラー、例外、障害、破損、リグレッション → opus-4.5
  • medium: バグ、問題、不正、予期しない動作 → sonnet
  • low: タイポ、見た目、機能強化、軽微 → sonnet

自動ルーティングはメッセージからファイルパスを抽出し、登録されたプロジェクトと照合します。

ステータス進行

pending → dispatched (25%) → in_progress (50%) → needs_verification (75%) → done (100%)

メモリプリフック

ディスパッチャは起動前に /memory を照会し、類似のバグや過去の解決策を検索します。

プロアクティブチェック

エージェントはセッション開始時、プロジェクト切り替え時、重要な作業前に、そしてユーザーが別のエージェントやプロジェクトに言及したときに受信箱を確認する必要があります。

ストレージ

~/.agent-inbox/
├── pending/          # 未処理メッセージ
├── done/             # 承認済みメッセージ
├── logs/             # ディスパッチログ
├── task_states/      # タスクモニターの状態ファイル
├── triage_logs/      # AIトリアージ決定ログ
├── webhooks.json     # 登録済みWebhook
└── projects.json     # プロジェクトレジストリ

使用例

# 検証付きバグ送信(ヘッドレスOpusエージェントを起動し、テストが通れば自動承認)
python inbox.py send --to scillm --type bug --model opus-4.5 \
  --test "pytest tests/test_providers.py -x" \
  "Race condition in provider initialization"

# コンテキストファイルを添付
python inbox.py send --to scillm --type bug --model opus-4.5 \
  --context-file src/server.py --context-file /tmp/traceback.txt \
  "Server crash on startup"

# 受信箱の確認と処理
python inbox.py check --all
python inbox.py read scillm_abc123
python inbox.py ack scillm_abc123 --note "Fixed in commit abc123"

# スレッド形式のやり取り
python inbox.py reply scillm_abc123 "Can you provide the stack trace?"
python inbox.py thread scillm_abc123

ディスパッチャデーモン

python dispatcher.py start              # バックグラウンド実行
python dispatcher.py start --foreground  # デバッグ用(フォアグラウンド)
python dispatcher.py status
python dispatcher.py stop

環境変数

変数説明デフォルト値
AGENT_INBOX_DIR受信箱ディレクトリ~/.agent-inbox
TASK_MONITOR_API_URLタスクモニターURLhttp://localhost:8765
CLAUDE_PROJECT現在のプロジェクト名自動検出

Claude Codeフックとの統合

{
  "hooks": {
    "on_session_start": [
      ".pi/skills/agent-inbox/agent-inbox check --project $(basename $PWD) || true"
    ]
  }
}

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

grahama1970/acceptance-contract

Turn a client brief, zip bundle, directory, or single requirements file into a typed acceptance-contract bundle with extracted requirements, acceptance checks, open questions, an immutable-goal draft, and a create-report-backed decision report. Use when users say acceptance contract, brief to requirements, freeze the goal, create immutable goal, amend immutable goal, build a Battle requirements bundle, or extract requirements from this bundle.

grahama1970/agent-ecosystem

Canonical map and shared contracts for the agent-governance ecosystem: the pi.receipt_envelope.v1 boundary envelope, the component graph, and the rules for which component owns which schema. Use when wiring a skill or extension into the shared receipt world, when asking how shame, triage-error, tau, ask, project-watchdog, ops-herdr, ponytail, and Memory fit together, or when validating an envelope.

grahama1970/agentic-evals

Agentic evaluation of skills using multi-trial fixtures, deterministic command assertions, trajectory checks, safety constraints, and evidence-backed readiness scoring. Use when users ask for agentic evals, multi-trial skill evaluation, skill trajectory validation, or readiness scoring for a skill workflow.

grahama1970/agents-registry

Generate and query the centralized agent identity registry. Scans .pi/agents/*/AGENTS.md, parses frontmatter, outputs agents-registry.json and optionally syncs to /memory for semantic search.

grahama1970/agent-status

Artifact-driven status surfaces for long-running project-agent work. Maintains status.json, events.jsonl, proof manifests, and a stale-aware STATUS.html so humans can tell where the agent is, what passed, what is still unproven, and what decision or action is next — without dashboard theater.

grahama1970/align

Round-based context alignment before execution. Use when the human, project agent, WebGPT, scillm, ask, dogpile, memory, or project-knowledge may each hold different facts about a task; especially before ambiguous design, infographic, product workflow, high-stakes implementation, plan-iterate, project-infographic, or multi-review work.

grahama1970/analytics

Flexible data science analytics for any dataset. Auto-discovers schema, recommends charts, exports to create-figure. Works with JSONL, JSON, CSV from any source.

grahama1970/analyze-chatterbox-emotions

Evaluate generated Chatterbox voice files as voice-quality artifacts: affect match, arousal/valence proxies, pause placement, intelligibility inputs, clipping, loudness, and discontinuity flags. Use when reviewing Chatterbox emotional tags, pauses, Turbo/base affect delivery, Persona Dream utterance renders, or whether generated speech matches an intended product-facing affect.

grahama1970/analyze-elf

Reverse-engineer features from ELF binaries. Extracts CLI commands, state machines, protocols, Zod schemas, and data models. Automatically generates a /create-walkthrough prosecution brief with Mermaid diagrams. Uses /treesitter for AST analysis of bundled JS/TS source.

grahama1970/animation-vocabulary

Reverse-lookup glossary that turns a vague description of a web animation or motion effect into its exact term ("the bouncy thing when a popover opens" → Pop in; "the iOS rubber-band scroll" → Rubber-banding). Use when the user asks "what's it called when…", or describes a motion effect without knowing its name and wants the right word to prompt an AI or designer with. For naming an effect, not designing or building one.

grahama1970/anonymize-data

Anonymize supported CSV, JSON, UTF-8 text, and SQLite files using an explicit policy through the oai-trial project. Use for anonymize data, pseudonymize exports, redact policy literals, or discover and explicitly approve fuzzy name aliases. The skill is a thin CLI/Docker interface, not another engine.

grahama1970/anvil

Heavy-duty "No-Vibes" debugging and hardening orchestrator. Use this for complex, stubborn bugs where `review-code` has failed, or for "Red Teaming" (hardening) a codebase. Runs multiple agents in parallel (Thunderdome) using git worktree isolation.

grahama1970/apple-design

Apple's approach to interface design and fluid, physical motion, translated for the web. Use when building or reviewing gesture-driven UI, spring animations, drag/swipe/sheet interactions, momentum and interruptible transitions, translucent materials and depth, typography (optical sizing, tracking, leading), reduced-motion, or the design foundations (feedback, spatial consistency, restraint) behind Apple-style interfaces.

grahama1970/argue

Multi-persona structured debate orchestrator. Personas research via /dogpile, consult colleagues via /ask, and argue toward nuanced synthesis on complex questions.

grahama1970/arxiv

Search arXiv for papers and extract knowledge into memory. Use `search` to find papers, `learn` to extract knowledge.

grahama1970/ask

Use when the user asks to query project memory, ask an oracle, use supported browser-backed reviewers, run Tau roundtable/single-handler workflows, ask Pi-native subagents from within Pi, run persona/deep-review workflows, generate image prompts, check OS/project health through composed skills, or run an ask DAG. This skill is the executable /ask runtime; do not replace it with an informal subagent, plain web search, or hand-written review; inside Pi, explicit Pi-native subagent targets are routed through the pi-subagents tool as an Ask target type.

grahama1970/assess

Step back and critically reassess project state. Use when asked to "assess", "step back", "fresh eyes", "check alignment", "sanity check", "health check", "prune documentation", or "evaluate what's working". Offers documentation pruning and doc-code alignment analysis. Offer to run after major changes (don't auto-run).

grahama1970/assistant

Shared GPT + classifier inference gateway for persona monitor tasks. Routes validation and classification through a 4-tier cascade: heuristic → classifier → local GPT → scillm.

grahama1970/assistant-lab

Self-improvement workbench for /assistant. All the tools needed to diagnose, train, evaluate, and promote models in a continuous loop. The "warm pond" where /assistant evolves its own inference stack.

grahama1970/batch-quality

Pre-flight validation and quality gates for batch LLM operations. ACTUALLY tests samples through LLM before burning tokens. Uses SPARTA contracts for DuckDB validation queries. Integrates with task-monitor for enforced quality gates.

関連スキル