Expand description
Skills System for Rusty Commit
Skills are modular extensions that allow users to customize and extend rusty-commit’s functionality. They can be used to:
- Define custom commit message templates
- Add custom analysis modules
- Create custom output formatters
- Hook into the commit generation pipeline
§Skill Structure
Skills are stored in ~/.config/rustycommit/skills/ and are either:
- Built-in: Included with rusty-commit
- Local: User-created skills in the skills directory
- Project: Team-shared skills in
.rco/skills/ - External: Imported from Claude Code, GitHub, etc.
§Skill Manifest
Each skill has a skill.toml manifest:
[skill]
name = "conventional-with-scope"
version = "1.0.0"
description = "Conventional commits with automatic scope detection"
author = "Your Name"
[skill.hooks]
pre_gen = "pre_gen.sh" # Optional: runs before AI generation
post_gen = "post_gen.sh" # Optional: runs after AI generation
format = "format.sh" # Optional: formats the output§External Skills
rusty-commit can import skills from:
- Claude Code:
~/.claude/skills/- Claude Code custom skills - GitHub: Repositories with
.rco/skills/directory - GitHub Gist: Single-file skill definitions
- URL: Direct download from any HTTP(S) URL
Modules§
Structs§
- Skill
- A loaded skill with its manifest and path
- Skill
Config Option - Configuration option schema
- Skill
Hooks - Skill hooks for pipeline integration
- Skill
Manifest - A skill manifest defining the skill’s metadata and capabilities
- Skill
Meta - Skill metadata
- Skills
Manager - Skills manager - handles discovery and loading of skills
Enums§
- Skill
Category - Skill categories
- Skill
Source - Skill source/origin
Constants§
- SKILLS_
DIR - Skills directory name
- SKILL_
MANIFEST - Skill manifest filename