polish-claw-project
Acerca de
Esta habilidad proporciona un flujo de trabajo estructurado de 9 pasos para que los desarrolladores contribuyan con mejoras de seguridad y código a los proyectos del ecosistema OpenClaw. Enfatiza la auditoría paralela, la prevención de falsos positivos y la verificación cruzada de hallazgos con problemas existentes para garantizar solicitudes de extracción de alto impacto. Úsela para contribuciones sistemáticas y conscientes de las convenciones en los repositorios de OpenClaw, NemoClaw o NanoClaw.
Instalación rápida
Claude Code
Recomendadonpx 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-projectCopia y pega este comando en Claude Code para instalar esta habilidad
Documentación
Polish Claw Project
Structured workflow for contributing to OpenClaw ecosystem projects. Novel value in Steps 5-7: parallel audit, false positive prevention, cross-referencing findings against open issues to select high-impact contributions. Mechanical steps (fork, PR creation) delegate to existing skills.
When Use
- Contributing to NVIDIA/OpenClaw, NVIDIA/NemoClaw, NVIDIA/NanoClaw, or similar Claw ecosystem repos
- First-time contributions to unfamiliar open-source project with security-sensitive architecture
- Want repeatable, auditable contribution workflow rather than ad-hoc fixes
- After identifying Claw project that accepts external contributions (check CONTRIBUTING.md)
Inputs
- Required:
repo_url— GitHub URL of target Claw project (e.g.https://github.com/NVIDIA/NemoClaw) - Optional:
contribution_count— Number of contributions to aim for (default: 1-3)focus— Preferred contribution type:security,tests,docs,bugs,any(default:any)fork_org— GitHub org/user to fork into (default: authenticated user)
Steps
Step 1: Identify and Verify Target
Confirm project accepts external contributions and is actively maintained.
- Open repository URL. Read
CONTRIBUTING.md,CODE_OF_CONDUCT.md,LICENSE - Check recent commit activity (last 30 days) and open PR merge rate
- Verify project uses permissive or contribution-friendly license
- Read
SECURITY.mdor security policy if present — note responsible disclosure rules - Identify primary language, test framework, CI system
Got: CONTRIBUTING.md exists. Commits within last 30 days. Clear contribution guidelines.
If fail: No CONTRIBUTING.md or no recent activity? Document why and stop. Stale projects rarely merge external PRs.
Step 2: Fork and Clone
Build working copy of repository.
- Fork:
gh repo fork <repo_url> --clone - Set upstream remote:
git remote add upstream <repo_url> - Verify:
git remote -vshows bothorigin(fork) andupstream - Sync:
git fetch upstream && git checkout main && git merge upstream/main
Got: Local clone with both remotes configured and up to date.
If fail: Fork fails? Check GitHub authentication (gh auth status). Clone slow? Try --depth=1 for initial exploration.
Step 3: Explore Codebase
Build mental model of project architecture.
- Read
README.mdfor architecture overview and project goals - Identify entry points, core modules, public API surface
- Map test structure: where tests live, what framework, coverage level
- Note code style conventions: linter config, naming patterns, import style
- Check for Docker/container setup, CI configuration, deployment patterns
Got: Clear understanding of project structure, conventions, where contributions would fit.
If fail: Architecture unclear? Focus on specific subsystem rather than whole project.
Step 4: Read Open Issues
Survey existing issues to understand project needs and avoid duplicate work.
- List open issues:
gh issue list --state open --limit 50 - Categorize by type: bugs, features, docs, security, good-first-issue
- Note issues labeled
help wanted,good first issue,hacktoberfest - Check for stale issues (>90 days open, no recent comments) — may be abandoned
- Read any linked PRs to understand attempted solutions
Got: Categorized list of unclaimed issues with type labels.
If fail: No open issues exist? Proceed to Step 5 — audit may uncover unlisted improvements.
Step 5: Parallel Audit
Run security and code quality audits in parallel. This is where novel findings emerge.
- Run
security-audit-codebaseskill against project root - Simultaneously run
review-codebaseskill with scopequality - Critical: verify each finding against project's threat model and architecture
- "Hardcoded secret" in sandbox bootstrap script is not a vulnerability
- Missing input validation on internal-only function is low severity
- Dependency flagged as vulnerable may already be mitigated by project's architecture
- Rate verified findings: CRITICAL, HIGH, MEDIUM, LOW
- Document false positives with reasoning — informs Pitfalls for future runs
Got: List of verified findings with severity ratings and false positive annotations.
If fail: No findings emerge? Shift focus to test coverage gaps, documentation improvements, developer experience enhancements.
Step 6: Cross-Reference Findings
Map verified audit findings to open issues — core judgment step.
- For each verified finding, search open issues for related discussions
- Categorize each finding as:
- Matches open issue — link finding to issue
- New finding — no existing issue covers this
- Already fixed in PR — check open PRs for in-progress fixes
- Prioritize findings matching existing issues (highest merge probability)
- For new findings, assess if maintainers would welcome fix based on project priorities
Got: Prioritized list with finding-to-issue mapping and merge probability assessment.
If fail: All findings already addressed? Return to Step 4. Look for documentation, test, or developer experience contributions.
Step 7: Select Contributions
Pick 1-3 contributions based on impact, effort, expertise.
- Score each candidate on:
- Impact: How much does this improve project? (security > bugs > tests > docs)
- Effort: Can this be done well in focused session? (prefer small, complete PRs)
- Expertise: Does contributor have domain knowledge for this fix?
- Merge probability: Does this match stated project priorities?
- Select top candidates (default: 1-3)
- For each, define: branch name, scope boundary, acceptance criteria, test plan
Got: 1-3 selected contributions with clear scope and acceptance criteria.
If fail: No contributions score well? Consider filing well-written issues instead of PRs.
Step 8: Implement
Create branch per contribution. Implement fix.
- For each contribution:
git checkout -b fix/<description> - Follow project conventions exactly (linter, naming, import style)
- Add or update tests covering change
- Run project's test suite. Verify all tests pass
- Run project's linter. Verify no new warnings
- Keep each PR focused — one logical change per branch
Got: Clean implementation with passing tests and no linter warnings.
If fail: Tests fail on pre-existing issues? Document them. Ensure PR doesn't introduce new failures.
Step 9: Create Pull Requests
Submit contributions following project's CONTRIBUTING.md.
- Push branch:
git push origin fix/<description> - Create PR using
create-pull-requestskill - Reference related issue in PR body (e.g. "Fixes #123")
- Follow project's PR template if one exists
- Be responsive to reviewer feedback — iterate quickly
Got: PRs created, linked to issues, following project conventions.
If fail: PR creation fails? Check branch protection rules and contributor license agreements.
Checks
- All selected contributions implemented and submitted as PRs
- Each PR references related issue (if one exists)
- All project tests pass on each PR branch
- No false positive findings submitted as real issues
- PR descriptions follow project's CONTRIBUTING.md template
Pitfalls
- False positive overclaim: Claw projects use sandbox architectures — "vulnerability" inside sandboxed environment may be by design. Always verify against project's threat model before reporting.
- Digest/signature chain disruption: Claw projects often use verification chains for model integrity. Changes must preserve these chains or PR will be rejected.
- Convention mismatch: Claw projects enforce strict style. Run project's own linter, not generic one. Match import ordering, docstring format, test patterns exactly.
- Scope creep: 3 focused PRs merge faster than 1 sprawling PR. Keep each contribution atomic.
- Stale fork: Always sync with upstream before starting work (
git fetch upstream && git merge upstream/main).
See Also
- security-audit-codebase — used in Step 5 for security findings
- review-codebase — used in Step 5 for code quality review
- create-pull-request — used in Step 9 for PR creation
- create-github-issues — for filing issues from findings not addressed as PRs
- manage-git-branches — branch management during implementation
- commit-changes — commit workflow
Repositorio GitHub
Habilidades relacionadas
content-collections
MetaEsta habilidad proporciona una configuración probada en producción para Content Collections, una herramienta centrada en TypeScript que transforma archivos Markdown/MDX en colecciones de datos con tipado seguro mediante validación Zod. Úsala al construir blogs, sitios de documentación o aplicaciones Vite + React con mucho contenido para garantizar seguridad de tipos y validación automática de contenido. Abarca todo, desde la configuración del plugin de Vite y compilación MDX hasta la optimización de despliegue y validación de esquemas.
polymarket
MetaEsta habilidad permite a los desarrolladores crear aplicaciones con la plataforma de mercados de predicción Polymarket, incluyendo la integración de API para operaciones y datos de mercado. También proporciona transmisión de datos en tiempo real a través de WebSocket para monitorear operaciones en vivo y actividad del mercado. Úsela para implementar estrategias de trading o crear herramientas que procesen actualizaciones de mercado en tiempo real.
creating-opencode-plugins
MetaEsta habilidad ayuda a los desarrolladores a crear complementos de OpenCode que se conectan a más de 25 tipos de eventos, como comandos, archivos y operaciones LSP. Proporciona la estructura del complemento, las especificaciones de la API de eventos y los patrones de implementación para módulos en JavaScript/TypeScript. Úsala cuando necesites interceptar, monitorear o extender el ciclo de vida del asistente de IA de OpenCode con lógica personalizada basada en eventos.
sglang
MetaSGLang es un framework de alto rendimiento para el servicio de LLM que se especializa en generación rápida y estructurada para JSON, expresiones regulares y flujos de trabajo de agentes utilizando su caché de prefijos RadixAttention. Ofrece una inferencia significativamente más rápida, especialmente para tareas con prefijos repetidos, lo que lo hace ideal para salidas complejas y estructuradas, y conversaciones multiturno. Elige SGLang sobre alternativas como vLLM cuando necesites decodificación restringida o estés construyendo aplicaciones con uso extensivo de prefijos compartidos.
