Skip to content
Development
Skill

/skill-template

Generate custom skill/command from template. Use when creating a new skill or slash command from scratch, or scaffolding a skill file with correct frontmatter.

From plugin
director-mode-lite
8036 skills14 agents6 hooks

Claude Code

$ npx -y skills add claude-world/director-mode-lite --skill skill-template --agent claude-code

SKILL.md

skill-template.SKILL.md
name: skill-template
description: Generate custom skill/command from template. Use when creating a new skill or slash command from scratch, or scaffolding a skill file with correct frontmatter.
user-invocable: true

Skill Template Generator

Generate a custom skill (slash command) based on requirements.

**Usage**: `/skill-template [skill-name] [purpose]`

---

Templates

| Purpose | Template | Features | |---------|----------|----------| | Workflow | Multi-step | Sequential steps | | Generator | Creator | File creation | | Checker | Validator | Validation rules | | Automation | Runner | Command execution | | Agent-backed | Delegator | Runs in a forked subagent |

---

Process

1. **Gather Requirements**

  • Skill name (lowercase, hyphenated)
  • Purpose
  • Arguments (if any — space-separated names)
  • Workflow steps
  • Context isolation (`context: fork`)?
  • Agent backing (`agent:`, only with `context: fork`)?
  • Tool restrictions?

2. **Select Template** based on purpose

3. **Generate File** at `.claude/skills/[name]/SKILL.md`

4. **Validate** with `/skill-check`

---

Frontmatter Reference (official fields)

Only `description` is meaningfully required (`name` defaults to the directory name). All other fields are optional.

---
name: skill-name              # Optional: defaults to directory name; lowercase, hyphenated
description: What it does      # Recommended: shown in / menu and used for triggering
when_to_use: When to reach for it  # Optional: appended to description for triggering
                              #   (description + when_to_use truncated at 1,536 chars in listings)
user-invocable: true          # Optional: default true; false hides from / menu (Skill tool still works)
model: sonnet                 # Optional: any /model value (sonnet, opus, haiku, fable, best,
                              #   default, opusplan, sonnet[1m], opus[1m], a full model ID) or inherit
effort: medium                # Optional: low, medium, high, xhigh, max
allowed-tools:                # Optional: pre-approved tools. Accepts a comma-separated string
  - Read                      #   OR a YAML list — BOTH are official (list shown here as house style)
  - Grep
  - Glob
disallowed-tools:             # Optional: explicitly blocked tools (string or YAML list)
  - WebFetch
context: fork                 # Optional: run the skill in a subagent
agent: agent-name             # Optional: subagent type when context: fork (default: general-purpose)
background: false             # Optional (2.1.218+): with context: fork, false waits for the result;
                              #   forked skills run in the background by default
argument-hint: "[issue-number]"  # Optional: autocomplete hint shown after the skill name
arguments: target flags       # Optional: space-separated argument NAMES for $name substitution
                              #   (arguments "target flags" -> use $target and $flags in the body).
                              #   NOT a structured array of name/description/required objects.
disable-model-invocation: false  # Optional: bool; true also blocks scheduled-task invocation
paths:                        # Optional: glob patterns that limit where the skill activates
  - "src/**/*.ts"
shell: bash                   # Optional: bash or powershell for inline !`command` blocks
hooks:                        # Optional: skill-scoped lifecycle hooks (same schema as settings.json)
  PreToolUse:
    - matcher: Bash
      hooks:
        - type: command
          command: echo "Bash used"
  Stop:
    - hooks:
        - type: command
          command: ./scripts/verify.sh
          once: true
---

`metadata` (a free-form map), `license`, and `compatibility` (up to 500 characters) are accepted but not acted on. `version` is not a skill field, and Claude Code silently ignores unknown fields. `once` is valid only inside a `hooks[]` entry, never at the top level.

Do not emit bare `Bash`, `Edit`, `Write`, `Agent`, `Task`, or `Skill` entries in `allowed-tools`; those rules preapprove broad mutation or delegation. Omit the field when the workflow should use the runtime's normal permission flow.

---

Workflow Template Structure

---
name: [name]
description: [What it does. Include when to use it.]
user-invocable: true
context: fork
argument-hint: "<task-description>"
# when_to_use: Use when the user asks about X or mentions Y.  # Optional trigger hint
# arguments: target mode                                      # Optional: names for $target, $mode
---

# [Skill Name]

## Workflow
### Step 1: [Name]
### Step 2: [Name]
### Step 3: [Name]

## Arguments
Uses `$ARGUMENTS` for raw input (or `$name` per the `arguments` field)

## Output
Summary when complete

---

Example

/skill-template deploy-staging "deploy to staging"

Output: Created .claude/skills/deploy-staging/SKILL.md

Usage: /deploy-staging
Read more
@claude-world
Ships withdirector-mode-lite

Use Claude Code like a Director, not a Programmer. MIT toolkit with Auto-Loop, guided setup, 27 commands, 14 agents, and 32 skills.

8036 skills14 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
80
Star history of claude-world/director-mode-lite on GitHub, a chart by star-history.com

Other skills on director-mode-lite.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about skill-template.

Which coding agents can use skill-template?
skill-template installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.