Reusable Claude Code skills shared across projects via symlinks into ~/.claude/skills/. Includes the /reflect skill for structured milestone reflections. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
35 lines
1.6 KiB
Markdown
35 lines
1.6 KiB
Markdown
# Custom Claude Skills
|
|
|
|
Reusable Claude Code skills shared across all projects via symlinks into `~/.claude/skills/`.
|
|
|
|
## Repository Structure
|
|
|
|
```
|
|
custom-claude-skills/
|
|
├── CLAUDE.md # This file
|
|
├── MEMORY.md # Learnings about skill development
|
|
├── FUTURE.md # Future skill ideas
|
|
├── README.md # Setup instructions and skill catalogue
|
|
├── scripts/
|
|
│ └── install.sh # Symlinks all skills into ~/.claude/skills/
|
|
└── skills/
|
|
└── reflect/
|
|
└── SKILL.md # Milestone reflection skill
|
|
```
|
|
|
|
## Conventions
|
|
|
|
- Each skill lives in `skills/<skill-name>/SKILL.md`
|
|
- Skills should be project-agnostic where possible — use dynamic context injection (`!`command``) to adapt to the current project
|
|
- The `scripts/install.sh` script creates symlinks from `~/.claude/skills/<name>` → this repo's `skills/<name>/`
|
|
- After adding a new skill, run `./scripts/install.sh` to register it
|
|
- Skills that are only useful for one project should live in that project's `.claude/skills/` instead
|
|
|
|
## Skill Development Guidelines
|
|
|
|
- **Inline by default** — only use `context: fork` if the skill genuinely doesn't need conversation history
|
|
- **Pre-fetch context** with `!`command`` injection to reduce tool calls during execution
|
|
- **Restrict tools** with `allowed-tools` to the minimum needed — this reduces permission prompts
|
|
- **Use $ARGUMENTS** for user input, `$0`, `$1` etc. for positional args
|
|
- Dynamic commands in `!`command`` run at skill load time, not during Claude's execution
|