polish-claw-project
About
This skill provides a structured 9-step workflow for contributing to OpenClaw ecosystem projects. It focuses on code auditing, false positive prevention, and cross-referencing findings before creating pull requests. Use it when you need to systematically review and contribute to OpenClaw, NemoClaw, or NanoClaw repositories.
Quick Install
Claude Code
Recommendednpx 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/polish-claw-projectCopy and paste this command in Claude Code to install this skill
Documentation
Claw-Projekt polieren
Strukturierter Workflow zum Beitragen zu OpenClaw-Oekosystem-Projekten. Der neuartige Wert liegt in den Schritten 5-7: parallele Pruefung, Vermeidung von False Positives und Querverweisen von Befunden gegen offene Issues um hoch-impactvolle Beitraege auszuwaehlen. Mechanische Schritte (Fork, PR-Erstellung) delegieren an existierende Skills.
Wann verwenden
- Beitragen zu NVIDIA/OpenClaw, NVIDIA/NemoClaw, NVIDIA/NanoClaw oder aehnlichen Claw-Oekosystem-Repos
- Erstmalige Beitraege zu einem unvertrauten Open-Source-Projekt mit sicherheits-sensibler Architektur
- Wenn ein wiederholbarer, auditierbarer Beitrags-Workflow statt Ad-hoc-Fixes gewuenscht ist
- Nach Identifikation eines Claw-Projekts das externe Beitraege akzeptiert (CONTRIBUTING.md pruefen)
Eingaben
- Erforderlich:
repo_url— GitHub-URL des Ziel-Claw-Projekts (z.B.https://github.com/NVIDIA/NemoClaw) - Optional:
contribution_count— Anzahl Beitraege zu anvisieren (Standard: 1-3)focus— Bevorzugter Beitrags-Typ:security,tests,docs,bugs,any(Standard:any)fork_org— GitHub-Org/-Benutzer in den geforkt werden soll (Standard: authentifizierter Benutzer)
Vorgehensweise
Schritt 1: Ziel identifizieren und verifizieren
Bestaetigen dass das Projekt externe Beitraege akzeptiert und aktiv gepflegt wird.
- Die Repository-URL oeffnen und
CONTRIBUTING.md,CODE_OF_CONDUCT.mdundLICENSElesen - Aktuelle Commit-Aktivitaet pruefen (letzte 30 Tage) und offene PR-Merge-Rate
- Verifizieren dass das Projekt eine permissive oder beitragsfreundliche Lizenz nutzt
SECURITY.mdoder Sicherheits-Politik falls vorhanden lesen — Responsible-Disclosure-Regeln vermerken- Die primaere Sprache, Test-Framework und CI-System identifizieren
Erwartet: CONTRIBUTING.md existiert, Commits innerhalb der letzten 30 Tage, klare Beitrags-Guidelines.
Bei Fehler: Wenn keine CONTRIBUTING.md oder keine aktuelle Aktivitaet, dokumentieren warum und stoppen — veraltete Projekte mergen externe PRs selten.
Schritt 2: Forken und klonen
Eine Arbeitskopie des Repositories erstellen.
- Forken:
gh repo fork <repo_url> --clone - Upstream-Remote setzen:
git remote add upstream <repo_url> - Verifizieren:
git remote -vzeigt sowohlorigin(Fork) als auchupstream - Synchronisieren:
git fetch upstream && git checkout main && git merge upstream/main
Erwartet: Lokaler Klon mit beiden Remotes konfiguriert und aktuell.
Bei Fehler: Wenn Forken scheitert, GitHub-Authentifizierung pruefen (gh auth status). Wenn Klonen langsam ist, --depth=1 fuer initiale Erkundung versuchen.
Schritt 3: Codebasis erkunden
Ein mentales Modell der Projekt-Architektur aufbauen.
README.mdfuer Architektur-Ueberblick und Projektziele lesen- Eintrittspunkte, Kernmodule und oeffentliche API-Oberflaeche identifizieren
- Die Test-Struktur kartieren: wo Tests leben, welches Framework, Coverage-Level
- Code-Stil-Konventionen vermerken: Linter-Konfig, Namens-Muster, Import-Stil
- Auf Docker/Container-Setup, CI-Konfiguration und Deployment-Muster pruefen
Erwartet: Klares Verstaendnis der Projektstruktur, Konventionen und wo Beitraege passen wuerden.
Bei Fehler: Wenn Architektur unklar ist, auf ein spezifisches Subsystem statt das ganze Projekt fokussieren.
Schritt 4: Offene Issues lesen
Existierende Issues durchgehen um Projektbeduerfnisse zu verstehen und doppelte Arbeit zu vermeiden.
- Offene Issues auflisten:
gh issue list --state open --limit 50 - Nach Typ kategorisieren: Bugs, Features, Docs, Security, good-first-issue
- Issues mit Labels
help wanted,good first issueoderhacktoberfestvermerken - Auf veraltete Issues (>90 Tage offen, keine aktuellen Kommentare) pruefen — diese koennen verlassen sein
- Verlinkte PRs lesen um versuchte Loesungen zu verstehen
Erwartet: Kategorisierte Liste nicht beanspruchter Issues mit Typ-Labels.
Bei Fehler: Wenn keine offenen Issues existieren, zu Schritt 5 fortfahren — die Pruefung kann nicht gelistete Verbesserungen aufdecken.
Schritt 5: Parallele Pruefung
Sicherheits- und Code-Qualitaets-Pruefungen parallel ausfuehren. Hier tauchen neuartige Befunde auf.
security-audit-codebase-Skill gegen das Projekt-Root ausfuehren- Gleichzeitig
review-codebase-Skill mit Scopequalityausfuehren - Kritisch: jeden Befund gegen das Bedrohungsmodell und die Architektur des Projekts verifizieren
- Ein "hartcodiertes Geheimnis" in einem Sandbox-Bootstrap-Skript ist keine Schwachstelle
- Eine fehlende Eingabe-Validierung an einer nur-internen Funktion ist niedrige Schwere
- Eine als verwundbar markierte Abhaengigkeit kann bereits durch die Architektur des Projekts gemildert sein
- Verifizierte Befunde bewerten: CRITICAL, HIGH, MEDIUM, LOW
- False Positives mit Begruendung dokumentieren — sie informieren Common Pitfalls fuer zukuenftige Laeufe
Erwartet: Liste verifizierter Befunde mit Schwere-Bewertungen und False-Positive-Annotationen.
Bei Fehler: Wenn keine Befunde auftauchen, Fokus auf Test-Coverage-Luecken, Dokumentations-Verbesserungen oder Developer-Experience-Verbesserungen verschieben.
Schritt 6: Befunde querverweisen
Verifizierte Audit-Befunde auf offene Issues abbilden — der Kern-Urteilsschritt.
- Fuer jeden verifizierten Befund offene Issues nach verwandten Diskussionen durchsuchen
- Jeden Befund kategorisieren als:
- Passt zu offenem Issue — den Befund mit dem Issue verlinken
- Neuer Befund — kein existierendes Issue deckt dies ab
- Bereits in PR gefixt — offene PRs auf laufende Fixes pruefen
- Befunde priorisieren die existierenden Issues entsprechen (hoechste Merge-Wahrscheinlichkeit)
- Fuer neue Befunde einschaetzen ob die Maintainer den Fix basierend auf Projekt-Prioritaeten begruessen wuerden
Erwartet: Priorisierte Liste mit Befund-zu-Issue-Mapping und Merge-Wahrscheinlichkeits-Bewertung.
Bei Fehler: Wenn alle Befunde bereits adressiert sind, zu Schritt 4 zurueckkehren und nach Dokumentations-, Test- oder Developer-Experience-Beitraegen suchen.
Schritt 7: Beitraege auswaehlen
1-3 Beitraege basierend auf Impact, Aufwand und Expertise auswaehlen.
- Jeden Kandidaten bewerten auf:
- Impact: Wie sehr verbessert dies das Projekt? (Sicherheit > Bugs > Tests > Docs)
- Aufwand: Kann dies in einer fokussierten Sitzung gut erledigt werden? (kleine, vollstaendige PRs bevorzugen)
- Expertise: Hat der Contributor Domaenen-Wissen fuer diesen Fix?
- Merge-Wahrscheinlichkeit: Passt dies zu erklaerten Projekt-Prioritaeten?
- Die Top-Kandidaten auswaehlen (Standard: 1-3)
- Fuer jeden definieren: Branch-Name, Scope-Grenze, Akzeptanzkriterien, Test-Plan
Erwartet: 1-3 ausgewaehlte Beitraege mit klarem Scope und Akzeptanzkriterien.
Bei Fehler: Wenn keine Beitraege gut bewertet werden, in Erwaegung ziehen gut geschriebene Issues statt PRs einzureichen.
Schritt 8: Implementieren
Einen Branch pro Beitrag erstellen und den Fix implementieren.
- Fuer jeden Beitrag:
git checkout -b fix/<description> - Projekt-Konventionen exakt folgen (Linter, Naming, Import-Stil)
- Tests die die Aenderung abdecken hinzufuegen oder aktualisieren
- Die Test-Suite des Projekts ausfuehren: verifizieren dass alle Tests bestehen
- Den Linter des Projekts ausfuehren: verifizieren dass keine neuen Warnings
- Jeden PR fokussiert halten — eine logische Aenderung pro Branch
Erwartet: Saubere Implementation mit bestehenden Tests und keinen Linter-Warnings.
Bei Fehler: Wenn Tests an vorbestehenden Problemen scheitern, sie dokumentieren und sicherstellen dass der PR keine neuen Versagen einfuehrt.
Schritt 9: Pull Requests erstellen
Beitraege gemaess CONTRIBUTING.md des Projekts einreichen.
- Branch pushen:
git push origin fix/<description> - PR mit
create-pull-request-Skill erstellen - Das verwandte Issue im PR-Body referenzieren (z.B. "Fixes #123")
- Dem PR-Template des Projekts folgen falls eines existiert
- Auf Reviewer-Feedback reagieren — schnell iterieren
Erwartet: PRs erstellt, mit Issues verlinkt, Projekt-Konventionen folgend.
Bei Fehler: Wenn PR-Erstellung scheitert, Branch-Schutz-Regeln und Contributor-License-Agreements pruefen.
Validierung
- Alle ausgewaehlten Beitraege wurden implementiert und als PRs eingereicht
- Jeder PR referenziert das verwandte Issue (falls eines existiert)
- Alle Projekt-Tests bestehen auf jedem PR-Branch
- Keine False-Positive-Befunde wurden als echte Issues eingereicht
- PR-Beschreibungen folgen dem CONTRIBUTING.md-Template des Projekts
Haeufige Stolperfallen
- False-Positive-Ueberanspruch: Claw-Projekte nutzen Sandbox-Architekturen — eine "Schwachstelle" innerhalb einer gesandboxten Umgebung kann beabsichtigt sein. Immer gegen das Bedrohungsmodell des Projekts verifizieren bevor berichtet wird.
- Digest-/Signatur-Ketten-Stoerung: Claw-Projekte nutzen oft Verifikations-Ketten fuer Modell-Integritaet. Aenderungen muessen diese Ketten erhalten oder der PR wird abgelehnt.
- Konventions-Mismatch: Claw-Projekte erzwingen strikten Stil. Den eigenen Linter des Projekts ausfuehren, keinen generischen. Import-Reihenfolge, Docstring-Format und Test-Muster exakt entsprechen.
- Scope-Creep: 3 fokussierte PRs mergen schneller als 1 ausufernder PR. Jeden Beitrag atomar halten.
- Veralteter Fork: Vor Arbeitsbeginn immer mit Upstream synchronisieren (
git fetch upstream && git merge upstream/main).
Verwandte Skills
- security-audit-codebase — in Schritt 5 fuer Sicherheits-Befunde verwendet
- review-codebase — in Schritt 5 fuer Code-Qualitaets-Review verwendet
- create-pull-request — in Schritt 9 fuer PR-Erstellung verwendet
- create-github-issues — zum Einreichen von Issues aus Befunden die nicht als PRs adressiert werden
- manage-git-branches — Branch-Verwaltung waehrend Implementation
- commit-changes — Commit-Workflow
GitHub Repository
Related Skills
content-collections
MetaThis skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.
polymarket
MetaThis skill enables developers to build applications with the Polymarket prediction markets platform, including API integration for trading and market data. It also provides real-time data streaming via WebSocket to monitor live trades and market activity. Use it for implementing trading strategies or creating tools that process live market updates.
creating-opencode-plugins
MetaThis skill helps developers create OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It provides the plugin structure, event API specifications, and implementation patterns for JavaScript/TypeScript modules. Use it when you need to intercept, monitor, or extend the OpenCode AI assistant's lifecycle with custom event-driven logic.
sglang
MetaSGLang is a high-performance LLM serving framework that specializes in fast, structured generation for JSON, regex, and agentic workflows using its RadixAttention prefix caching. It delivers significantly faster inference, especially for tasks with repeated prefixes, making it ideal for complex, structured outputs and multi-turn conversations. Choose SGLang over alternatives like vLLM when you need constrained decoding or are building applications with extensive prefix sharing.
