Agent skill · duc01226

custom-prompt

[Utilities] Use when the user invokes, lists, saves, updates, or deletes a PROJECT-SPECIFIC saved prompt — a named, reusable procedure stored with the project rather than in the portable framework. `/custom-prompt list` prints every defined prompt with its description; `/custom-prompt <free-text request>` matches the request to the closest saved prompt and executes it only after a confirmation gate; `/custom-prompt save|update|delete ...` maintains the registry — save never stores raw wording, it drafts the best version of the prompt and confirms the name, description, inferred goal, and steps with the user first. Triggers: custom prompt, custom prompts, list custom prompts, save this prompt, save this prompt task, update this prompt, my saved prompt, project prompt, playbook, recipe, runbook.

What it needs

About 12k tokens when loaded.

What this skill does

Quick Summary Goal: Give a project a registry of named, reusable prompts — each with a name, a one-line description, and a prompt body that reads like a mini-skill — and route a free-text user request to the right one, always confirming the match with the user before executing it. Summary: read-this-if-nothing-else digest — Two files, two jobs. The INDEX (docs/project-reference/custom-prompts-reference.md) holds only name + description + triggers and is what you read to MATCH. The BODY (docs/project-prompts/<slug>.md) holds the actual protocol and is read only AFTER the user confirms. Never read all bodies to answer a match. Matching NEVER auto-executes. Score candidates from the index, then AskUserQuestion with the top matches plus an explicit escape option. A confident match is still a guess about intent — only the user can confirm it. Project payload, not framework. These prompts live under docs/, never under .claude/. .claude/ is the portable harness; custom prompts are this project's content. A prompt that stabilizes and generalizes gets PROMOTED to a real skill via /skill-creator — it is not born as one. Save = author the best version, then get it confirmed. The user's raw wording is raw material, never the artifact. Infer the goal, generalize it, rewrite it into a crisp name + one-line description + imperative steps + falsifiable success criteria — then show the draft, say what you changed and why, and let the user accept, correct, or keep their own wording verbatim. Also run the match pass first to catch a near-duplicate and offer update-instead-of-create. Never auto-commit. Report what changed and stop. Workflow: 1. Resolve mode — parse the invocation into list match save update delete (Phase 0) 2. Load index — read the index doc; if missing or empty, branch to the empty-registry path 3. Execute mode — LIST (Phase 1) · MATCH + confirm (Phase 2) · RUN (Phase 3) · SAVE/UPDATE (Phase 4) · DELETE (Phase 5) 4. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills duc01226/custom-prompt--8beef1

View the source on GitHub

Browse the @skills marketplace