Skip to content

Skills — Reusable Workflows for Claude Code

Skills are on-demand prompts that Claude loads when invoked. They live in .claude/skills/<name>/SKILL.md and follow a progressive disclosure pattern: a tiny YAML frontmatter (always loaded), a medium SKILL.md body (loaded on invocation), and optional reference files (loaded on demand).

Skills Overview

Skill Command Description
handover /handover Generate a session handover document for continuity between sessions
code-review /code-review Multi-pass code review with P0-P3 severity levels
skill-creator /skill-creator Meta-skill for creating new skills with proper structure
update-report /update-report Regenerate summary report files after project changes

handover

---
name: handover
description: Generate a session handover document summarizing work done, decisions made, and next steps for the next Claude session. Use when user says "handover", "session summary", "end session", or "context transfer".
---

Handover -- Session Continuity

Generate a handover document so the next Claude Code session can pick up where this one left off.

Usage

/handover           # Full handover with all sections
/handover quick     # Brief summary (goal, done, next steps, files)

Output

Writes to .claude/handover/HANDOVER.md (preserves previous as HANDOVER.previous.md).

Process

  1. Analyze conversation history
  2. Identify completed work, decisions, blockers
  3. List changed files and their purpose
  4. Write structured handover document

Full Handover Format

# Session Handover

**Date:** YYYY-MM-DD
**Branch:** branch-name

## Goal
What the user wanted to accomplish this session.

## What Was Done
- [x] Completed task 1
- [x] Completed task 2
- [ ] Partial task 3

## What's In Progress
- Task currently being worked on
- State of implementation

## Blockers & Issues
- Any blockers encountered
- Unresolved issues

## Failed Approaches
- What was tried and didn't work (and why)

## Key Decisions
- Decision 1: chose X over Y because Z
- Decision 2: ...

## Next Steps
1. First thing to do next session
2. Second priority
3. Third priority

## Files Changed
| File | Change |
|------|--------|
| `path/to/file.py` | Added feature X |
| `path/to/other.py` | Fixed bug in Y |

## Environment Notes
- Any environment setup needed
- Running services, database state, etc.

Quick Handover Format

# Session Handover (Quick)

**Date:** YYYY-MM-DD | **Branch:** branch-name

## Goal
[One sentence]

## Done
- [x] Task 1
- [x] Task 2

## Next Steps
1. First priority
2. Second priority

## Files Changed
- `path/to/file.py` — what changed

Next Session

Start the next session with:

Read .claude/handover/HANDOVER.md and resume from where we left off

code-review

---
name: code-review
description: Multi-pass code review with P0-P3 severity levels. Checks security, error handling, performance, code quality, and SOLID principles. Use when user says "code review", "review my code", "check before commit", or "pre-commit review".
---

Code Review

Multi-pass code review against engineering best practices. Reviews in 6 phases, outputs findings grouped by severity (P0-P3), and asks how to proceed before making any changes.

Usage

/code-review [path]
/code-review                    # Review git diff changes
/code-review src/services/      # Review specific directory

Severity Levels

P0 = Critical    → Security vulnerability, data corruption risk (MUST FIX)
P1 = High        → Logic error, missing access control (FIX BEFORE MERGE)
P2 = Medium      → Code smell, missing validation, performance issue (FIX OR FOLLOW-UP)
P3 = Low         → Style, naming, minor improvement (OPTIONAL)

Process

Pass Focus Severities
1. Preflight Scope and context --
2. Security SQL injection, XSS, hardcoded secrets, auth P0/P1
3. Error Handling Swallowed exceptions, boundary conditions P1/P2
4. Performance N+1 queries, missing indexes, memory leaks P2
5. Code Quality SOLID principles, code smells, duplication P2/P3
6. Testing Test gaps, edge cases, flaky patterns P2/P3

Output Format

# Code Review: [scope]

**Date:** YYYY-MM-DD
**Branch:** branch-name
**Files reviewed:** N files, M lines changed
**Assessment:** APPROVE | REQUEST_CHANGES | COMMENT

---

## Summary

| Severity | Count |
|----------|-------|
| P0 Critical | N |
| P1 High | N |
| P2 Medium | N |
| P3 Low | N |

---

## P0 — Critical (must fix)

### 1. [Category] Brief title
**File:** `path/to/file.py:42`
**Issue:** Description of the problem
**Fix:** Corrected code
**Why:** Brief explanation

---

## Next Steps

**How would you like to proceed?**
1. **Fix all** — address every finding
2. **Fix P0/P1 only** — critical and high priority
3. **Fix specific items** — tell me which ones
4. **No changes** — review only, I'll fix manually

CRITICAL: Does NOT implement any fixes until the user explicitly chooses an option.

Reference Files

Detailed checklists in references/ -- loaded automatically when needed:

  • references/security-checklist.md -- Injection, XSS, secrets, auth, race conditions
  • references/quality-checklist.md -- Error handling, boundaries, performance
  • references/solid-checklist.md -- SOLID principles, code smells, refactoring heuristics

skill-creator

---
name: skill-creator
description: Meta-skill for creating new Claude Code skills with proper structure, YAML frontmatter, and progressive disclosure. Use when user says "create skill", "new skill", "make a skill", or "skill template".
---

Skill Creator -- Build New Skills

Guide for creating well-structured Claude Code skills that follow best practices.

Usage

/skill-creator <skill-name>         # Interactive skill creation
/skill-creator <skill-name> quick   # Minimal skill template

Process

  1. Ask what the skill should do and when it triggers
  2. Create directory and SKILL.md with proper structure
  3. Add reference files if needed (progressive disclosure)
  4. Verify YAML frontmatter and trigger phrases
  5. Sync docs -- update SKILLS_QUICK_REFERENCE.md and CLAUDE.md if they exist

Skill Structure

.claude/skills/
└── my-skill/
    ├── SKILL.md              # Required — skill definition
    ├── references/           # Optional — detailed checklists, rules
    │   ├── checklist-a.md
    │   └── checklist-b.md
    └── scripts/              # Optional — helper scripts
        └── helper.py

Progressive Disclosure (3 Levels)

Level Where Size When Loaded
1 YAML frontmatter ~100 tokens Every conversation
2 SKILL.md body <5,000 tokens When skill invoked
3 references/ files Unlimited On demand during execution

Naming Conventions

Convention Example Notes
Directory code-review kebab-case
Skill file SKILL.md Exact case, always SKILL.md
References security-checklist.md kebab-case
Scripts validate.py snake_case or kebab-case

Template

---
name: {{skill-name}}
description: {{One sentence}}. Use when user says "{{trigger1}}", "{{trigger2}}", or "{{trigger3}}".
---

# {{Skill Title}}

{{Brief description}}.

## Usage

```
/{{skill-name}} [args]
```

## Process

1. {{Step 1}}
2. {{Step 2}}
3. {{Step 3}}

## Output Format

{{Describe output}}

update-report

---
name: update-report
description: Regenerate summary report files in report/ directory after project changes. Use when user says "update report", "regenerate summary", "refresh report", or "sync report".
---

Update Report -- Regenerate Summary Reports

Scan the entire project and regenerate both report/SUMMARY-EN.md (English) and report/SUMMARY-TH.md (Thai) to reflect the current state of the repository.

Usage

/update-report         # Regenerate both EN and TH reports

Process

  1. Scan the full project tree -- all directories, files, skills, hooks, guides, templates, agents
  2. Read every file to understand current contents (descriptions, sections, purposes)
  3. Regenerate report/SUMMARY-EN.md with all content in English
  4. Regenerate report/SUMMARY-TH.md with all content in Thai
  5. Update the date in both files to today's date
  6. Report what changed compared to the previous version

Output

Overwrites both files in report/:

File Language
report/SUMMARY-EN.md English
report/SUMMARY-TH.md Thai

Report Structure

Both files follow this structure (translated per language):

  1. Title & metadata -- project name, date, location
  2. What Is This? -- one-paragraph project description
  3. Sources -- table of sources and what was taken from each
  4. Project Structure -- full directory tree with annotations
  5. What's Inside -- detailed breakdown of each category (guides, templates, skills, hooks, agents)
  6. How to Use -- setup commands and priority table
  7. What's NOT Included -- intentional exclusions
  8. Key Design Decisions -- decision/reason table

Rules

  • Scan the actual project -- do NOT rely on cached or outdated information
  • Keep the same structure and table formats in both files
  • Thai version must be fully translated (headings, descriptions, table contents) -- not bilingual
  • English version must be clean English -- no Thai mixed in
  • Update file/directory counts to match the actual project
  • Preserve source attribution links exactly as they are