Contributions are welcome! This project follows the Codacy Code of Conduct.
- Fork the repository
- Create a branch:
git checkout -b my-skill-name - Follow the skill structure guidelines below
- Test your skill (see Testing locally)
- Open a pull request
Each skill lives in its own folder under skills/:
skills/skill-name/
├── SKILL.md # Required — instructions with YAML frontmatter
├── references/ # Optional — detailed docs loaded on demand
└── assets/ # Optional — templates or other static files
Rules:
- Folder name and
namefield must bekebab-case(lowercase, hyphens, no spaces) SKILL.mdis case-sensitive — no variations accepted- No
README.mdinside the skill folder - The
descriptionfield must explain what the skill does and when to use it, written in third person, under 1024 characters - No XML angle brackets (
< >) anywhere in the frontmatter
- Be concise — only add context Claude doesn't already have
- Keep SKILL.md under 500 lines; move detailed content to
references/ - Use numbered steps for ordered workflows
- Include concrete examples, not abstract descriptions
- Add a troubleshooting section for common errors
Use --plugin-dir to load your local copy instead of the marketplace version:
# from the repo root
claude --plugin-dir .This tells Claude Code to use your local skill files directly, bypassing any installed marketplace version. After editing a SKILL.md, run /reload-plugins inside the session to pick up the changes without restarting.
If you also have the marketplace plugin installed, uninstall it first to avoid confusion:
claude plugin uninstall codacy-skills@codacy- The skill triggers on obvious and paraphrased requests
- The skill does not trigger on unrelated topics
- The workflow runs end-to-end at least once
- Output is consistent across multiple runs
When the Codacy CLI adds new commands or changes behavior, update the affected skill(s) and bump the version in the frontmatter metadata.