ZeroClaw erweitern und dazu beitragen
1. Beginne mit der kleinsten Erweiterungsoberfläche​
Die Upstream-Architekturdokumentation und der Contribution-Guide legen stark nahe, dass du nicht damit beginnen solltest, die Runtime-Schleife direkt zu patchen. Beginne mit der schmalsten Oberfläche, die bereits existiert.
In der Praxis fällt die meiste Arbeit in einen dieser Bereiche:
| Ziel | Erste Anlaufstelle |
|---|---|
| Eine neue Modellfamilie oder ein Wire-Protokoll hinzufĂĽgen | crates/zeroclaw-providers/ |
| Eine neue Chat- oder Ingress-Plattform hinzufĂĽgen | crates/zeroclaw-channels/ |
| Eine neue Agent-Aktion hinzufĂĽgen | crates/zeroclaw-tools/ |
| Das Verhalten der Betreiber-Konfiguration verbessern | crates/zeroclaw-config/ |
| Die Terminal-UX verbessern | zerocode/ |
| Prosa-Dokumentation aktualisieren | docs/book/src/ im Upstream-Repo |
Dieses Muster existiert aus einem Grund: Das Projekt will fähigkeitsspezifische Logik am Rand, nicht Sonderfälle vergraben in der Runtime.
2. Lerne den Trait-Vertrag vor der Implementierung​
Die wichtigsten öffentlichen Verträge leben in zeroclaw-api. Selbst wenn du nur eine konkrete Integration änderst, hilft es zu verstehen, ob du es zu tun hast mit:
- einem Provider-Trait-Vertrag,
- einem Channel-Trait-Vertrag,
- einem Tool-Trait-Vertrag.
Wenn du diesen Schritt überspringst, ist es leicht, Code zu schreiben, der lokal funktioniert, aber gegen die Architektur ankämpft.
3. First-Party-Erweiterungsleitfaden​
Die offizielle First-Party-Erweiterungsdokumentation trifft eine nĂĽtzliche Unterscheidung:
- eingebaute Fähigkeiten gehören in Core-Crates, wenn sie Teil des Baseline-Vertrags von ZeroClaw sind oder eine enge Sicherheits-/Runtime-Integration brauchen,
- externe Integrationen sind möglicherweise besser als Plugins, Skills, MCP-Server oder CLI-gestützte Workflows aufgehoben.
Das ist eine wichtige Denkweise für Beitragende. Nicht jede neue Fähigkeit sollte zu einem dauerhaften Built-in werden.
4. Was Beitragende lesen sollen​
Der Upstream-Contribution-Guide weist Beitragende ausdrĂĽcklich an, Folgendes zu lesen:
- die
AGENTS.mdim Repo-Root, - die Architektur-/Contribution-Karte,
- den RFC-Prozess für größere Änderungen.
Das ist ein starkes Signal dafĂĽr, dass ZeroClaw Contribution-Disziplin als Teil der Architektur behandelt, nicht als Projekt-Trivia.
5. Erwartungen an Tests und Codequalität​
Der Contribution-Guide nennt diese Erwartungen:
cargo fmtsaubercargo clippy -D warningssauber- kein
unwrap()oderexpect()in Produktionspfaden, es sei denn, die Invariante ist gerechtfertigt - minimale Abhängigkeiten
- Trait-first-Design
- Security-by-Default
- Inline-Unit-Tests und breitere Integrationsabdeckung, wo angebracht
Der dokumentierte Workspace-Test-Befehl ist:
cargo nextest run --locked --workspace --exclude zeroclaw-desktop
FĂĽr Dokumentation und generierte Referenzen merkt der Upstream-Guide auĂźerdem an, dass einige Referenzseiten generiert werden und nicht von Hand bearbeitet werden sollten.
6. Disziplin bei Dokumentation und generierten Referenzen​
Wenn du zur Upstream-Dokumentation beiträgst, zieht der Guide eine Grenze zwischen:
- Prosa-Dokumentation in
docs/book/src/**/*.md - generierten Referenzseiten fĂĽr CLI und Konfiguration
Das ist wichtig, weil "die Docs fixen" zwei sehr unterschiedliche Workflows bedeuten kann:
- das Bearbeiten einer handgeschriebenen Konzeptseite,
- das Neugenerieren der Referenzausgabe aus der Codebase.
FĂĽr den zweiten Fall verweist der Guide auf:
cargo mdbook refs
7. PR-Workflow und Review-Erwartungen​
Der Upstream-Contribution-Guide dokumentiert einen konventionellen Ablauf:
fork -> branch -> commit -> push -> open PR -> review -> merge
Ein paar Review-Erwartungen stechen hervor:
- PRs zielen auf
master - das PR-Template ist wichtig
- Validierungsnachweise sind erforderlich
- größere Änderungen brauchen möglicherweise zuerst einen RFC
- Reviewer nutzen eine explizite Taxonomie für blockierende Probleme, Warnungen, Vorschläge und gelöste Findings
Das ist hilfreicher Kontext, wenn du an lockerere OSS-Repos gewöhnt bist. ZeroClaw präsentiert sich als Projekt mit einer echten Betriebsdisziplin.
8. Beste erste Beiträge​
Wenn du einen produktiven Weg in die Codebase suchst, schlägt die offizielle Dokumentation Bereiche vor wie:
- neue Channel-Arbeit
- neue Provider-Arbeit
- Dokumentation
- Ăśbersetzungen
- Hardware-UnterstĂĽtzung
In der Praxis sind die einfachsten Einstiege meist:
- Dokumentation,
- eine fokussierte Provider- oder Channel-Verbesserung,
- eine eng abgegrenzte Tool- oder Config-Erweiterung.
Direkt in runtime-weite Refactorings zu springen, ist meist der langsamste Weg zu einem erfolgreichen ersten PR.
9. Ein praktischer Contributor-Workflow​
Für eine erste ernsthafte Upstream-Änderung ist eine gute Sequenz:
- lies den ArchitekturĂĽberblick,
- lies den Contribution-Guide und die RFC-Erwartungen,
- finde den kleinsten zuständigen Crate,
- kopiere das Muster einer benachbarten bestehenden Implementierung,
- halte den PR schmal,
- fĂĽge echte Validierungsnachweise bei.
Das passt dazu, wie das Projekt heute dokumentiert und reviewt wird.