grahama1970/agent-inbox

Messagerie inter-agents basée sur fichiers avec répartition en mode headless. Consultez la boîte de réception, envoyez des bugs/demandes à d’autres projets, déclenchez automatiquement des agents headless pour corriger les bugs et suivez l’avancement via task-monitor.

Qu'est-ce que agent-inbox ?

Agent Inbox est une compétence de messagerie inter-agents, conçue pour les assistants comme Claude Code et Cursor. Elle permet à un agent d’envoyer des messages (bugs, demandes, informations, questions) à un autre projet enregistré, avec classification automatique par l’IA (sévérité, priorité, modèle) et routage vers le projet cible. Un agent headless peut être automatiquement créé avec le modèle spécifié pour résoudre le problème, tandis que task-monitor affiche la progression en temps réel (0 % → 25 % → 50 % → 75 % → 100 %). La compétence prend en charge les vérifications de tests avant accusé de réception automatique, le thread de conversations multi-messages et un pré-hook mémoire qui interroge le répertoire `/memory` pour trouver des bugs similaires et des solutions antérieures avant de lancer un nouvel agent. Elle s’intègre de manière transparente dans les hooks Claude Code, par exemple en vérifiant la boîte de réception au démarrage de la session. Grâce à sa nature basée sur fichiers, elle ne nécessite aucun serveur central, garantissant ainsi simplicité et portabilité.

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

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

ARRÊTEZ. LISEZ CE SKILL.MD EN ENTIER AVANT D’APPELER UN POINT DE TERMINAISON.

Agent Inbox

Messagerie inter-agents basée sur fichiers avec répartition en mode headless et intégration task-monitor.

Flux de travail principal

  1. Envoi : L’agent A envoie un bug/demande au projet B avec un modèle et une commande de vérification
  2. Triage : L’IA classifie la sévérité, ajuste la priorité/le modèle, achemine vers le projet
  3. Répartition : Un agent headless est créé avec le modèle spécifié pour corriger le problème
  4. Suivi : task-monitor affiche la progression en temps réel (0 % → 25 % → 50 % → 75 % → 100 %)
  5. Vérification : La commande de test s’exécute avant l’accusé de réception automatique – les échecs renvoient à l’agent
  6. File de discussion : Réponses/échanges en fil pour les conversations multi-messages

Configuration

# Enregistrer des projets (une seule fois)
.pi/skills/agent-inbox/agent-inbox register memory /home/user/workspace/memory
.pi/skills/agent-inbox/agent-inbox register scillm /home/user/workspace/litellm

# Lister / vérifier
.pi/skills/agent-inbox/agent-inbox projects
.pi/skills/agent-inbox/agent-inbox whoami

Commandes

CommandeDescription
register <nom> <chemin>Enregistrer un projet
unregister <nom>Supprimer un projet
projects [--json]Lister les projets enregistrés
whoamiAfficher le projet détecté pour le répertoire courant
send --to PROJET --type TYPE "msg"Envoyer un message (types : bug, request, info, question)
check [--project P] [--all] [--quiet]Vérifier la boîte de réception
list [--project P] [--status S] [--json]Lister les messages
read MSG_ID [--json]Lire un message
ack MSG_ID [--note "..."]Accuser réception / terminer
reply MSG_ID "msg"Répondre (auto-fil)
thread THREAD_IDVoir l’intégralité de l’échange en fil
update-status MSG_ID STATUS [--note]Mettre à jour le statut manuellement
triage classify --message "..." [--no-llm]Classification manuelle du triage
triage route --message "..."Routage automatique par chemins de fichiers
triage log --msg-id IDVoir le journal de décision du triage
triage webhook-add --url URL --events EEnregistrer un webhook

Options d’envoi

OptionDescriptionDéfaut
--model MODELModèle AI : sonnet, opus-4.5, codex-5.2, codex-5.2-highsonnet
--timeout MINUTESTemps de travail max de l’agent30
--test COMMANDCommande de vérification avant accusé de réception auto.Aucune
--no-dispatchDésactiver la création automatique d’agentFalse
--context-file FILEJoindre un fichier comme contexte (répétable)Aucun
--priority PRIORITYlow, normal, high, criticalnormal
--no-triageIgnorer le triage AIFalse
--dry-runAfficher le JSON du message sans l’envoyerFalse

Sélection du modèle

ModèleCas d’utilisation
sonnetCorrections simples, fautes de frappe
opus-4.5Analyse complexe, architecture
codex-5.2Corrections de bugs standard
codex-5.2-highRaisonnement approfondi, conditions de course

Triage AI

Les messages sont automatiquement classifiés par sévérité :

  • critical : crash, perte de données, sécurité, production en panne → opus-4.5
  • high : erreur, exception, échec, cassé, régression → opus-4.5
  • medium : bug, problème, incorrect, inattendu → sonnet
  • low : faute de frappe, cosmétique, amélioration, mineur → sonnet

Le routage automatique extrait les chemins de fichiers des messages et les fait correspondre aux projets enregistrés.

Progression des statuts

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

Pré-hook mémoire

Le répartiteur interroge /memory avant de créer un agent pour trouver des bugs similaires et des solutions antérieures.

Vérification proactive

Les agents doivent vérifier la boîte de réception au démarrage de la session, lors d’un changement de projet, avant un travail majeur, et lorsque les utilisateurs mentionnent un autre agent ou projet.

Stockage

~/.agent-inbox/
├── pending/          # Messages non traités
├── done/             # Messages acquis
├── logs/             # Journaux de répartition
├── task_states/      # Fichiers d’état task-monitor
├── triage_logs/      # Journaux de décision du triage AI
├── webhooks.json     # Webhooks enregistrés
└── projects.json     # Registre des projets

Exemples

# Envoyer un bug avec vérification (crée un agent headless Opus, accusé auto. si le test réussit)
python inbox.py send --to scillm --type bug --model opus-4.5 \
  --test "pytest tests/test_providers.py -x" \
  "Condition de course dans l’initialisation du fournisseur"

# Joindre des fichiers de contexte
python inbox.py send --to scillm --type bug --model opus-4.5 \
  --context-file src/server.py --context-file /tmp/traceback.txt \
  "Plantage du serveur au démarrage"

# Vérifier et traiter la boîte de réception
python inbox.py check --all
python inbox.py read scillm_abc123
python inbox.py ack scillm_abc123 --note "Corrigé dans le commit abc123"

# Échange en fil
python inbox.py reply scillm_abc123 "Pouvez-vous fournir la trace de la pile ?"
python inbox.py thread scillm_abc123

Démon répartiteur

python dispatcher.py start              # Arrière-plan
python dispatcher.py start --foreground  # Débogage
python dispatcher.py status
python dispatcher.py stop

Variables d’environnement

VariableDescriptionDéfaut
AGENT_INBOX_DIRRépertoire de la boîte de réception~/.agent-inbox
TASK_MONITOR_API_URLURL de task-monitorhttp://localhost:8765
CLAUDE_PROJECTNom du projet courantdétecté automatiquement

Intégration avec les hooks 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.

Skills associés