cross-review-project
À propos
Cette compétence permet à deux instances Claude Code d'effectuer des revues de code réciproques via un courtier MCP structuré. Elle garantit la qualité des revues en appliquant les lois d'échelle QSG avec des exigences minimales de bande passante et une progression par phases conditionnelles. Utilisez-la pour une analyse de code inters projets systématique et fondée sur des preuves entre agents d'IA.
Installation rapide
Claude Code
Recommandénpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/cross-review-projectCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
Projekt-Cross-Review
Zwei Claude-Code-Instanzen pruefen die Projekte des jeweils anderen durch strukturierten Artefakt-Austausch via den cross-review-mcp-Broker. Der Broker erzwingt Quantized-Simplex-Gossip-(QSG)-Skalengesetze — Review-Buendel muessen mindestens 5 Befunde enthalten um im Selektionsregime zu bleiben (Γ_h ≈ 1,67), was verhindert dass oberflaechlicher Konsens als Uebereinstimmung durchgeht.
Wann verwenden
- Zwei Projekte teilen architektonische Anliegen und koennten voneinander lernen
- Unabhaengiges Code-Review erwuenscht das ueber das hinausgeht was ein einzelner Reviewer sieht
- Cross-Pollination ist das Ziel: Muster in einem Projekt finden die im anderen fehlen
- Strukturiertes, evidenzbasiertes Review mit accept/reject/discuss-Verdicts noetig
Eingaben
- Erforderlich: Zwei Projektpfade die zwei Claude-Code-Instanzen zugaenglich sind
- Erforderlich:
cross-review-mcp-Broker laeuft und ist als MCP-Server in beiden Instanzen konfiguriert - Optional: Fokusbereiche — spezifische Verzeichnisse, Muster oder Anliegen zu priorisieren
- Optional: Agent-IDs — Identifikatoren fuer jede Instanz (Standard: Projektverzeichnisname)
Vorgehensweise
Schritt 1: Voraussetzungen verifizieren
Bestaetigen dass der Broker laeuft und beide Instanzen ihn erreichen koennen.
- Pruefen dass der Broker als MCP-Server konfiguriert ist:
claude mcp list | grep cross-review get_statusaufrufen um zu verifizieren dass der Broker antwortet und keine veralteten Agents registriert sind- Die Protokoll-Resource bei
cross-review://protocollesen — dies ist ein Markdown-Dokument das die Review-Dimensionen und QSG-Beschraenkungen beschreibt
Erwartet: Der Broker antwortet auf get_status mit einer leeren Agent-Liste. Die Protokoll-Resource ist als Markdown lesbar.
Bei Fehler: Wenn der Broker nicht konfiguriert ist, hinzufuegen: claude mcp add cross-review-mcp -- npx cross-review-mcp. Wenn veraltete Agents aus einer vorigen Session existieren, fuer jeden deregister aufrufen bevor fortgefahren wird.
Schritt 2: Registrieren
Diesen Agent beim Broker registrieren.
registeraufrufen mit:agentId: ein kurzer, einzigartiger Identifikator (z.B. Projektverzeichnisname)project: der Projektnamecapabilities:["review", "suggest"]
- Registrierung verifizieren mit
get_status— der Agent sollte mit Phase"registered"erscheinen - Auf Registrierung des Peer-Agents warten:
wait_for_phasemit der Agent-ID des Peers und Phase"registered"aufrufen
Erwartet: Beide Agents beim Broker registriert. get_status zeigt 2 Agents in Phase "registered".
Bei Fehler: Wenn register mit "already registered" scheitert, ist die Agent-ID aus einer vorigen Session belegt. Zuerst deregister aufrufen, dann erneut registrieren.
Schritt 3: Briefing-Phase
Eigene Codebasis lesen und ein strukturiertes Briefing an den Peer senden.
- Systematisch lesen:
- Einstiegspunkte (Hauptdateien, Index, CLI-Befehle)
- Abhaengigkeitsgraph (package.json, DESCRIPTION, go.mod)
- Architektonische Muster (Verzeichnisstruktur, Modulgrenzen)
- Bekannte Probleme (TODO-Kommentare, offene Issues, Tech Debt)
- Test-Coverage (Test-Verzeichnisse, CI-Konfiguration)
- Ein
Briefing-Artefakt komponieren — eine strukturierte Zusammenfassung die der Peer nutzen kann um deine Codebasis effizient zu navigieren send_taskaufrufen mit:from: deine Agent-IDto: Peer-Agent-IDtype:"briefing"payload: JSON-kodiertes Briefing
signal_phasemit Phase"briefing"aufrufen
Erwartet: Briefing gesendet und Phase signalisiert. Der Broker erzwingt dass ein Briefing gesendet werden muss bevor zu Review uebergegangen werden kann.
Bei Fehler: Wenn send_task das Briefing ablehnt, pruefen dass das from-Feld mit deiner registrierten Agent-ID uebereinstimmt. Self-Sends werden abgelehnt.
Schritt 4: Review-Phase
Auf das Briefing des Peers warten, dann seinen Code pruefen und Befunde senden.
wait_for_phasemit der Peer-ID und Phase"briefing"aufrufenpoll_tasksaufrufen um das Briefing des Peers abzurufenack_tasksmit den empfangenen Task-IDs aufrufen — dies ist erforderlich (Peek-then-Ack-Muster)- Den tatsaechlichen Quellcode des Peers lesen, informiert durch sein Briefing
- Befunde ueber 6 Kategorien produzieren:
pattern_transfer— ein Muster in deinem Projekt das der Peer uebernehmen koenntemissing_practice— eine Praxis die dem Peer fehlt (Testing, Validierung, Fehlerbehandlung)inconsistency— interner Widerspruch innerhalb der Codebasis des Peerssimplification— unnoetige Komplexitaet die reduziert werden koenntebug_risk— potenzieller Laufzeitfehler oder Grenzfalldocumentation_gap— fehlende oder irrefuehrende Dokumentation
- Jeder Befund muss enthalten:
id: einzigartiger Identifikator (z.B."F-001")category: eine der 6 Kategorien obentargetFile: Pfad im Projekt des Peersdescription: was du gefunden hastevidence: warum dies ein gueltiger Befund ist (Code-Referenzen, Muster)sourceAnalog(empfohlen): das Aequivalent in deinem eigenen Projekt das das Muster demonstriert — dies ist der einzige Mechanismus fuer genuine Cross-Pollination
- Mindestens 5 Befunde buendeln (QSG-Beschraenkung: m ≥ 5 haelt Γ_h ≈ 1,67 im Selektionsregime)
send_taskmit Type"review_bundle"und dem JSON-kodierten Findings-Array aufrufensignal_phasemit Phase"review"aufrufen
Erwartet: Review-Bundle vom Broker akzeptiert. Weniger als 5 Befunde werden abgelehnt.
Bei Fehler: Wenn das Bundle wegen unzureichender Befunde abgelehnt wird, tiefer pruefen. Die Beschraenkung existiert um zu verhindern dass oberflaechliche Reviews dominieren. Wenn genuein keine 5 Probleme gefunden werden koennen, neu pruefen ob Cross-Review das richtige Werkzeug fuer dieses Projektpaar ist.
Schritt 5: Dialog-Phase
Befunde ueber das eigene Projekt empfangen und mit evidenzbasierten Verdicts antworten.
wait_for_phasemit der Peer-ID und Phase"review"aufrufenpoll_tasksaufrufen um Befunde zum eigenen Projekt abzurufenack_tasksmit den empfangenen Task-IDs aufrufen- Fuer jeden Befund eine
FindingResponseproduzieren:findingId: entspricht der Befund-IDverdict:"accept"(gueltig, wird gehandelt),"reject"(ungueltig, mit Gegenevidenz) oder"discuss"(braucht Klaerung)evidence: warum du akzeptierst oder ablehnst — muss nicht-leer seincounterEvidence(optional): spezifische Code-Referenzen die dem Befund widersprechen
- Alle Antworten via
send_taskmit Type"response"senden signal_phasemit Phase"dialogue"aufrufen
Hinweis: das "discuss"-Verdict ist nicht durch das Protokoll gesperrt — als Flag fuer manuelle Nachverfolgung behandeln, nicht als automatisierten Sub-Austausch.
Erwartet: Auf alle Befunde wurde mit Verdicts geantwortet. Leere Antworten werden vom Broker abgelehnt.
Bei Fehler: Wenn keine Meinung zu einem Befund gebildet werden kann, auf "discuss" defaulten mit Evidenz die erklaert welcher zusaetzliche Kontext gebraucht wird.
Schritt 6: Synthese-Phase
Ein Synthese-Artefakt produzieren das akzeptierte Befunde und geplante Aktionen zusammenfasst.
wait_for_phasemit der Peer-ID und Phase"dialogue"aufrufen- Verbleibende Tasks pollen und bestaetigen
- Ein
Synthesis-Artefakt zusammenstellen:- Akzeptierte Befunde mit geplanten Aktionen (was du aendern wirst und warum)
- Abgelehnte Befunde mit Gruenden (bewahrt das Reasoning fuer zukuenftige Reviews)
send_taskmit Type"synthesis"und der JSON-kodierten Synthese aufrufensignal_phasemit Phase"synthesis"aufrufen- Optional GitHub-Issues fuer akzeptierte Befunde erstellen
signal_phasemit Phase"complete"aufrufenderegisteraufrufen zum Aufraeumen
Erwartet: Beide Agents erreichen "complete". Der Broker verlangt mindestens 2 registrierte Agents um zu complete vorzurueacken.
Bei Fehler: Wenn der Peer bereits deregistriert hat, kann lokal trotzdem komplettiert werden. Die Synthese aus den empfangenen Befunden zusammenstellen.
Validierung
- Beide Agents registriert und Phase
"complete"erreicht - Briefings ausgetauscht bevor Reviews begannen (Phasen-Erzwingung)
- Review-Bundles enthielten jeweils mindestens 5 Befunde
- Alle Befunde erhielten ein Verdict (accept/reject/discuss) mit Evidenz
-
ack_tasksnach jedempoll_tasksaufgerufen - Synthese produziert mit akzeptierten Befunden auf Aktionen abgebildet
- Agents nach Komplettierung deregistriert
Haeufige Stolperfallen
- Weniger als 5 Befunde: Der Broker lehnt Bundles mit m < 5 ab. Dies ist nicht willkuerlich — mit N=2 Agents und 6 Kategorien setzt m < 5 Γ_h auf oder unter die kritische Grenze wo Konsens nicht von Rauschen unterscheidbar ist. Tiefer pruefen; wenn 5 Befunde genuein nicht gefunden werden koennen, profitieren die Projekte moeglicherweise nicht vom Cross-Review.
ack_tasksvergessen: Der Broker nutzt Peek-then-Ack-Delivery. Tasks bleiben in der Queue bis sie bestaetigt sind. Vergessenes Ack verursacht doppelte Verarbeitung beim naechsten Poll.- Den
from-Parameter vergessen:send_taskerfordert ein explizitesfrom-Feld das mit der Agent-ID uebereinstimmt. Self-Sends werden abgelehnt. - Selbe-Modell epistemische Korrelation: Zwei Claude-Instanzen teilen Training-Biases. Zeitliche Ordnung stellt sicher dass sie waehrend Review nicht die Ausgabe des anderen lesen, aber ihre Priors sind korreliert. Fuer genuine epistemische Unabhaengigkeit unterschiedliche Modellfamilien ueber Instanzen nutzen.
sourceAnalogueberspringen: DassourceAnalog-Feld ist optional aber der einzige Mechanismus fuer genuine Cross-Pollination — es zeigt deine Implementation des Musters das du empfiehlst. Immer befuellen wenn ein Source-Analog existiert.discussals blockierend behandeln: Nichts im Protokoll sperrtcompletedarauf dass anhaengende Diskussionen geloest werden.discuss-Verdicts als Flags fuer manuelle Nachverfolgung nach der Session behandeln.- Telemetrie nicht reviewen: Der Broker loggt alle Events nach JSONL. Nach einer Session das Log pruefen um QSG-Annahmen zu validieren — α empirisch schaetzen (
α ≈ 1 - reject_rate) und Per-Kategorie-Akzeptanzraten pruefen.
Verwandte Skills
scaffold-mcp-server— fuer Bauen oder Erweitern des Brokers selbstimplement-a2a-server— A2A-Protokoll-Muster aus denen der Broker schoepftreview-codebase— Single-Agent-Review (dieser Skill erweitert es zu Cross-Agent-strukturiertem Austausch)build-consensus— Schwarm-Konsens-Muster (QSG ist die theoretische Grundlage)configure-mcp-server— den Broker als MCP-Server in Claude Code konfigurierenunleash-the-agents— kann genutzt werden um den Broker selbst zu analysieren (battle-tested: 40 Agents, 10 Hypothesen-Familien)
Dépôt GitHub
Compétences associées
qmd
Développementqmd est un outil CLI de recherche et d'indexation locale qui permet aux développeurs d'indexer et de rechercher dans des fichiers locaux en utilisant une recherche hybride combinant BM25, des embeddings vectoriels et du reranking. Il prend en charge à la fois une utilisation en ligne de commande et un mode MCP (Model Context Protocol) pour l'intégration avec Claude. L'outil utilise Ollama pour les embeddings et stocke les index localement, ce qui le rend idéal pour rechercher dans de la documentation ou des bases de code directement depuis le terminal.
subagent-driven-development
DéveloppementCette compétence exécute des plans de mise en œuvre en déployant un nouveau sous-agent pour chaque tâche indépendante, avec une revue de code entre les tâches. Elle permet une itération rapide tout en maintenant des contrôles de qualité grâce à ce processus de revue. Utilisez-la lorsque vous travaillez sur des tâches principalement indépendantes au sein d'une même session pour assurer une progression continue avec des vérifications de qualité intégrées.
mcporter
DéveloppementLa compétence mcporter permet aux développeurs de gérer et d'appeler des serveurs Model Context Protocol (MCP) directement depuis Claude. Elle fournit des commandes pour lister les serveurs disponibles, appeler leurs outils avec des arguments, et gérer l'authentification ainsi que le cycle de vie du démon. Utilisez cette compétence pour intégrer et tester les fonctionnalités des serveurs MCP dans votre flux de travail de développement.
adk-deployment-specialist
DéveloppementCette compétence déploie et orchestre des agents Vertex AI ADK en utilisant le protocole A2A, gérant la découverte d'AgentCard, la soumission de tâches, et prenant en charge des outils tels que le bac à sable d'exécution de code et la banque de mémoire. Elle permet de construire des systèmes multi-agents avec des modèles d'orchestration séquentiels, parallèles ou en boucle en Python, Java ou Go. Utilisez-la lorsqu'on vous demande de déployer des agents ADK ou d'orchestrer des flux de travail d'agents sur Google Cloud.
