Skip to content
Back to skills

Skill Creator

CSecurity

Use when a recurring task pattern emerges that deserves its own skill. Generates a fresh SKILL.md under .claude/memory.proposed/skills/<slug>/ (NOT activated until /dream-review --approve-skill). Triggers — manual (/create-skill), instinct promotion (--as-skill on a mature instinct), or task-signature-detector (3+ Bash sequence repeated ≥5× across ≥2 sessions). Round 9 A.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 9, 2026
ai-agentsgobashgit

Security analysis

C60/100
  • criticalPipes output to a shell interpreter
  • highPerforms destructive filesystem operations

Pro shows the line behind each finding and how to fix it

Scanned October 9, 2026

npx -y skills add qyndex/claude-init --skill skill-creator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Skill Creator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Skill Creator
[![Security: C — Skills Directory](https://www.skillsdirectory.com/api/skills/qyndex-skill-creator/badge)](https://www.skillsdirectory.com/skills/qyndex-skill-creator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: skill-creator
description: Use when a recurring task pattern emerges that deserves its own skill. Generates a fresh SKILL.md under .claude/memory.proposed/skills/<slug>/ (NOT activated until /dream-review --approve-skill). Triggers — manual (/create-skill), instinct promotion (--as-skill on a mature instinct), or task-signature-detector (3+ Bash sequence repeated ≥5× across ≥2 sessions). Round 9 A.
when_to_use: User says "create a skill", "we keep doing X", "make this a skill"; task-signature-detector emits a candidate; /instinct promote <id> --as-skill is invoked; operator notices a recurring multi-step workflow worth codifying.
model: sonnet
disable-model-invocation: false
---

# Skill Creator

You generate new skills from observed patterns. Your output is a **proposal**, never an active skill — a human approves via `/dream-review --approve-skill <slug>` before activation.

## Inputs

- `description` (required) — one-line "what this skill does, when to invoke"
- `slug` (optional) — kebab-case; auto-derived from description if absent
- `examples[]` (optional) — paths or transcript snippets showing the recurring pattern
- `triggers[]` (optional) — phrases that should activate the skill via skill-router.sh
- `model` (optional) — `inherit | sonnet | opus | haiku`; default `inherit`

## Output

Write to `.claude/memory.proposed/skills/<slug>/`:

```
SKILL.md         # frontmatter + body (matches existing skill conventions)
EXAMPLES.md      # 3-5 canonical worked invocations
triggers.yml     # phrase patterns for skill-router.sh (one per line)
provenance.md    # who/what generated this; observation source; reviewer
```

## SKILL.md frontmatter contract

Required:
- `name: <slug>`
- `description: <one-line, lead with "Use when…", ≤ 1536 chars>`
- `when_to_use: <concrete signals that trigger>` (Round 9 F requirement)
- `model: inherit | sonnet | opus | haiku`

Optional:
- `disable-model-invocation: false` (default; set true for operator-only skills)
- `triggers: [<phrase1>, <phrase2>]`
- `allowed-tools: <subset>`
- `permissionMode: default | plan | acceptEdits`

## SKILL.md body sections (in order)

1. **# <Skill Name>** — title (Title Case)
2. **Mandate** — 2-3 sentences: what this skill enforces / produces
3. **Inputs** — what the operator/agent provides
4. **Procedure** — numbered steps; cite tools/commands; ≤ 12 steps; if more, decompose
5. **Hard rules** — invariants the skill enforces; bulleted
6. **Examples** — 1-3 invocations linking to EXAMPLES.md
7. **Done means** — the exit criteria

## Validations (run BEFORE writing the file)

| Check | Action on fail |
|---|---|
| Frontmatter has `name`, `description`, `when_to_use`, `model` | Block; re-prompt |
| Description starts with "Use when…" | Block; re-prompt |
| Description ≤ 1536 chars | Block; truncate or re-prompt |
| Body ≤ 400 LOC (CLAUDE.md §XIV) | Block; decompose into multiple skills |
| `gitleaks detect` on body | Block if secret detected |
| No destructive ops in body: `rm -rf`, `curl|sh`, `eval`, `--no-verify`, `base64|sh` | Block; replace with safer pattern |
| `slug` is kebab-case, lowercase, ≤ 32 chars | Block; auto-fix |
| `.claude/skills/<slug>/` does NOT already exist | Block; suggest different slug |
| Per-day creation count ≤ 3 | Block; rate-limit |

## Procedure

1. **Receive trigger** — manual `/create-skill <slug> "<description>"`, instinct promotion, or task-signature-detector candidate.
2. **Read evidence** — if `examples[]` provided, read each; else look at observations.jsonl + bash.log for the recurring signature.
3. **Draft SKILL.md** — fill the body sections above. Body lines ≤ 400.
4. **Draft EXAMPLES.md** — 3 invocations showing input → process → output.
5. **Draft triggers.yml** — 3-8 phrase patterns for skill-router.sh hint mapping.
6. **Validate** — run every check in the table above. Refuse on any failure.
7. **Write to `.claude/memory.proposed/skills/<slug>/`** — atomic, never overwrite an existing proposal.
8. **Emit NEXUS YAML handoff** — `status: completed | blocked`; `artifacts_created: [...]`; `followup_tasks: [{summary: "/dream-review --approve-skill <slug>"}]`.

## Hard rules

- **NEVER write directly to `.claude/skills/`.** Always `.claude/memory.proposed/skills/`.
- **NEVER auto-activate.** Approval is via `/dream-review --approve-skill <slug>`.
- **Description starts with "Use when…"** — this is what the model uses to auto-trigger.
- **Body ≤ 400 LOC.** Skills that need more should be decomposed.
- **No destructive ops in body.** A skill that says `rm -rf` is a backdoor; refuse.
- **Per-day cap 3 creations.** Prevents instinct/signature noise from flooding the registry.
- **Cite the source.** `provenance.md` records who/what generated the skill (manual / instinct ID / signature hash).

## Examples

### Example 1 — manual invocation
```
/create-skill git-cleanup "Use when local branches whose remotes are gone accumulate; prunes them safely."
```
→ writes `.claude/memory.proposed/skills/git-cleanup/{SKILL.md, EXAMPLES.md, triggers.yml, provenance.md}`

### Example 2 — instinct promotion
```
/instinct promote inst-014 --as-skill
```
→ reads `.claude/memory/instincts/active.yml` entry inst-014; if `reinforced ≥ 10`, invokes skill-creator with description + examples from the instinct's observations.

### Example 3 — auto-detected signature
task-signature-detector finds the same 3-step Bash sequence repeated 6× across 3 sessions → writes a candidate to `_candidates.jsonl` → next Stop hook invokes skill-creator with that candidate.

## Done means

- `.claude/memory.proposed/skills/<slug>/` exists with all 4 files
- NEXUS YAML handoff emitted
- Followup task appended to TASKS.md prompting `/dream-review --approve-skill <slug>`
- Per-day counter incremented
- NO file created under `.claude/skills/` (that's the approval step)

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.