cross-review-project
关于
This skill enables two Claude Code instances to perform reciprocal code reviews through a structured MCP broker. It enforces review quality using QSG scaling laws with minimum bandwidth requirements and phase-gated progression. Use this for systematic, evidence-based cross-project code analysis between AI agents.
快速安装
Claude Code
推荐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-project在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
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)
GitHub 仓库
相关推荐技能
qmd
开发这是一个本地搜索和索引的CLI工具,支持BM25、向量搜索和重排序功能。开发者可以用它快速索引本地文件(如Markdown文档)并进行混合搜索,特别适合代码库或文档的本地检索。它还提供MCP模式,能轻松集成到Claude开发环境中使用。
subagent-driven-development
开发该Skill用于在当前会话中执行包含独立任务的实施计划,它会为每个任务分派一个全新的子代理并在任务间进行代码审查。这种"全新子代理+任务间审查"的模式既能保障代码质量,又能实现快速迭代。适合需要在当前会话中连续执行独立任务,并希望在每个任务后都有质量把关的开发场景。
mcporter
开发mcporter Skill 让开发者能在Claude中直接管理和调用MCP服务器。它支持列出可用服务器、调用工具、处理OAuth认证以及管理服务器守护进程。开发者可以通过命令行式交互快速执行`mcporter list`查看服务器,或使用`mcporter call`直接调用工具,简化了MCP工作流程。
adk-deployment-specialist
开发这是一个用于部署和编排Google Vertex AI ADK智能体的Claude Skill,专为构建生产级多智能体系统而设计。它支持通过A2A协议进行智能体通信,提供代码执行沙箱和记忆库功能,并能处理智能体发现与任务提交。当开发者需要部署ADK智能体或编排多智能体协作时,可使用此Skill来简化Vertex AI Agent Engine的部署流程。
