Contributions are welcome. This guide covers how to add skills, commands, and improvements.
- Fork and clone the repository
- Create a branch:
git checkout -b feat/my-skill - Make changes
- Test with Claude Code (see below)
- Submit a pull request
Add the plugin to ~/.claude/settings.json:
{
"plugins": ["/path/to/your/beagle"]
}Restart Claude Code after changes to reload.
Skills are technology knowledge bases in skills/skill-name/SKILL.md. See Agent Skills best practices for authoring guidance.
- Description: Include trigger keywords (e.g., "React hooks", "FastAPI endpoints")
- Content: Under 500 lines; use
references/subfolder for additional detail - Focus: Only include what Claude wouldn't know from training
- Code review skills: Use format
[FILE:LINE] ISSUE_TITLEfor issues
skills/my-skill/
├── SKILL.md # Required
└── references/ # Optional
└── advanced.md
Commands are workflow files in commands/command-name.md. See Slash commands for format details.
- Start with context gathering (git status, file detection)
- Load relevant skills based on detected technologies
- Include output format templates
- End with verification steps
No automated tests. Validate manually:
- Check YAML frontmatter is valid
- For skills: Start a conversation using trigger keywords
- For commands: Run
/beagle:<command-name>
Use Conventional Commits:
feat(skills): add redis-code-review skill
fix(commands): correct review-python tech detection
docs: update README with new skills
Types: feat, fix, docs, refactor, chore
- Create a feature branch from
main - Make focused changes (one skill or command per PR)
- Update README.md skill/command tables if adding new ones
- Submit PR with clear description
- Fills a knowledge gap (recent library versions, non-obvious patterns)
- Includes working code examples
- Follows the technology's official conventions
- Avoids duplicating Claude's existing knowledge
Maintainers use internal commands to create releases:
/release- Creates a release PR with updated CHANGELOG and version bump/release-tag <version>- After PR is merged, tags and creates GitHub release