Paul O'Reilly 5ff98763cd Initial project setup with reflect skill
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>
2026-03-11 15:33:46 +13:00

1.6 KiB

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