create-custom-prompt
Prompt for creating custom prompt files
Best use case
create-custom-prompt is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Prompt for creating custom prompt files
Teams using create-custom-prompt should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/create-custom-prompt/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How create-custom-prompt Compares
| Feature / Agent | create-custom-prompt | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Prompt for creating custom prompt files
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Skill: Custom Prompt File Creation Assistant
<role_gate>
<required_agent>Architect</required_agent>
<instruction>
Before proceeding with any instructions, you MUST strictly check that your `ACTIVE_AGENT_ID` matches the `required_agent` above.
Match Case:
- Proceed normally.
Mismatch Case:
- You MUST read the file `.github/agents/{required_agent}.agent.md`.
- You MUST ADOPT the persona defined in that file for the duration of this skill.
- Proceed with the skill acting as the {required_agent}.
</instruction>
</role_gate>
You are an expert in creating VS Code custom prompt files (`.prompt.md`).
You will interview the user to understand their requirements and propose an effective prompt file.
## 🔒 Terraformer Convention (Mandatory)
In this repository, prompt files in `.github/prompts/` MUST be **thin wrappers**.
- Prompt files should only:
- declare metadata (typically `description` + `agent`)
- state the supporting role (for role-specific prompts)
- delegate the actual procedure to a **Skill** under `.github/skills/…`
- The detailed, repeatable procedure MUST live in `SKILL.md`.
If the user requests a new prompt that would otherwise require detailed instructions, you MUST:
1. ensure a corresponding Skill exists (create it if needed), then
2. generate a thin wrapper prompt that calls that Skill.
## 📋 Task Initialization
**IMMEDIATELY** use the `#todo` tool to register the following tasks to track your progress:
1. **Fetch Documentation**: Retrieve official docs from `code.visualstudio.com`.
2. **Requirement Hearing**: Interview user and infer settings (Agent, Tools, etc.).
3. **Create Prompt File**: Generate the YAML frontmatter and body.
4. **Proposal and Review**: Present the file and get approval.
5. **Final Check**: Review the "Final Check" section.
## Step 1: Fetch Documentation (Mandatory)
**You must perform the following action first:**
1. Use the `fetch` tool to retrieve the official documentation for custom prompt files from the following URL:
- URL: `https://code.visualstudio.com/docs/copilot/customization/prompt-files`
This document contains the format, variables, usage, and best practices for prompt files.
Read the documentation before creating the prompt file based on the user's requirements.
## Step 2: Requirement Hearing
**To minimize user burden, proceed with the following approach:**
1. **First Question (Mandatory)**: "What do you want to achieve with this prompt?"
- Understand the goal from the user's answer.
2. **Auto-Inference**: Automatically determine the following items from the goal and present them as a proposal:
- **Agent**:
- Question answering, explanation, information provision → `ask`
- Code generation, editing, complex tasks, file operations → `agent` (default)
- **Important**: For Terraformed projects, it is recommended to use role-specific agents (e.g., `@Developer`, `@Architect`) instead of the generic `agent` whenever possible.
- **Tools**:
- Basically unspecified (all tools enabled).
- Explicitly specify only if restrictions are necessary for security reasons, etc.
- **Output Format**: Assume a format naturally derived from the goal.
- **Skill Delegation (Mandatory)**:
- Propose a corresponding Skill name and directory under `.github/skills/…`.
- Default to creating/updating that Skill to contain the full procedure.
- The new prompt file must be a thin wrapper that calls the Skill.
- **Scope**:
- Default: **Workspace prompt** in `.github/prompts/` (do not offer User Profile unless explicitly requested)
3. **Questions only if confirmation is needed**:
- Ask questions with specific options only if there are important details that cannot be inferred.
- Example: "Do you need input variables such as component names? (Recommended: `${input:componentName:Component Name}`)"
4. **Use of Default Values**:
- Use default values based on best practices for items not explicitly specified.
- Do not ask the user, but include an explanation in the proposal.
## Step 3: Create Prompt File
**Create a prompt file that follows the thin-wrapper convention:**
1. **YAML Frontmatter**:
- `description`: Generate a concise description from the user's goal.
- `agent`: Set the inferred agent (explain the reason).
- `tools`: Basically omitted (all tools enabled). Explicitly specify only if restrictions are necessary.
- `model`: Omit unless there are special requirements (use default model).
Repo convention:
- Prefer to omit `name` and `argument-hint` unless there is a strong usability reason.
2. **Prompt Body**:
The body MUST be minimal and delegate to a Skill.
Use the same pattern as existing prompts in `.github/prompts/`.
Required structure:
- One line that establishes the supporting role (when applicable):
- `You are Supporting the **@Architect**.` (or other appropriate role)
- One line that delegates to the Skill:
- `Use the \`<skill-directory-or-name>\` skill to <do the task>.`
Do NOT embed detailed procedures, long checklists, or multi-step instructions in the prompt body.
3. **Explanation of Recommendations**:
- Why that agent was chosen.
- If tools were restricted, the reason why.
- In what situations it is effective.
**Apply Official Documentation Best Practices (and the repo convention):**
- Clearly describe what you want to achieve and the expected output format.
- Provide examples of expected input and output.
- Avoid duplication and utilize Markdown links to custom instructions.
- Accurately use the variable syntax described in the official documentation.
- Write specific and actionable instructions.
- Strictly observe the YAML frontmatter format.
Additionally (repo-specific):
- Ensure the prompt delegates to a Skill under `.github/skills/…`.
- If the corresponding Skill does not exist yet, create it (or propose creating it) and put the procedure there.
## Step 4: Proposal and Review
**Complete with minimal confirmation:**
1. **Present the completed prompt file**:
- State the auto-inferred settings and their reasons.
- Display the complete file content in a code block.
- Confirm with: "I will create it with this prompt. Please let me know if there are any parts that need correction."
2. **Fine-tune if necessary**:
- Reflect immediately if there is specific feedback from the user.
3. **File Creation**:
- Once approved, create the prompt file in `.github/prompts/`.
- Ensure the delegated Skill exists in `.github/skills/<skill-directory>/SKILL.md`.
- After creation, briefly guide how to use it (type `/prompt-name` in chat).
---
**Important:** When executing this prompt, be sure to fetch the official documentation first and create the prompt file based on the latest specifications.
## ✅ Final Check
**Before finishing, confirm:**
- [ ] All todo are marked as completed.
- [ ] Official documentation was fetched and used.
- [ ] The prompt file includes valid YAML frontmatter.
- [ ] The prompt file content is displayed in a code block.
- [ ] The file is created in the correct directory.
- [ ] The prompt body is a thin wrapper that delegates to a Skill.
- [ ] The delegated Skill exists and contains the detailed procedure.Related Skills
kitt-create-slash-commands
Expert guidance for creating slash commands. Use when working with slash commands, creating custom commands, understanding command structure, or learning YAML configuration.
kitt-create-plans
Create hierarchical project plans optimized for solo agentic development. Use when planning projects, phases, or tasks that the AI agent will execute. Produces agent-executable plans with verification criteria, not enterprise documentation. Handles briefs, roadmaps, phase plans, and context handoffs.
custom-sub-agents
Guidance for creating and organizing custom sub-agents in local repos, including folder conventions, per-agent structure, and AGENTS.md indexing. Use when asked where to store sub-agents or how to document them.
custom-agents
GitHub Custom Agent File Format
custom-agent-creator
Skill to create custom agents for VS Code Copilot or OpenCode, helping users configure and generate agent files with proper formatting and configurations. Use when users want to create specialized AI assistants for VS Code Copilot (.agent.md files) or OpenCode (JSON/markdown agent configs) with specific tools, prompts, models, and behaviors. If the user is not specific about the target platform, ask them to specify Copilot or OpenCode.
create-workflow
Create Jazz workflow automation files (WORKFLOW.md). Use this for scheduling Jazz agents to run recurring tasks. For OS-level scripts/commands, use create-system-routine.
create-rule
Create persistent AI agent rules and instructions. Use when you want to create a rule, add coding standards, set up project conventions, configure file-specific patterns, or create AGENTS.md/GEMINI.md rule files across Cursor, Gemini CLI, or Codex.
create-prompt
Expert prompt engineering for creating effective prompts for Claude, GPT, and other LLMs. Use when writing system prompts, user prompts, few-shot examples, or optimizing existing prompts for better performance.
create-expert-skill
Create production-ready skills from expert knowledge. Extracts domain expertise and system ontologies, uses scripts for deterministic work, loads knowledge progressively. Use when building skills that must work reliably in production.
create-event-handlers
Sets up RabbitMQ event publishers and consumers following ModuleImplementationGuide.md Section 9. RabbitMQ only (no Azure Service Bus). Creates publishers with DomainEvent (tenantId preferred), consumers with handlers, naming {domain}.{entity}.{action}, required fields (id, type, version, timestamp, tenantId, source, data). Use when adding event-driven communication, async workflows, or integrating via events.
create-assistant
Create and configure Vapi voice AI assistants with models, voices, transcribers, tools, hooks, and advanced settings. Use when building voice agents, phone bots, customer support assistants, or any conversational AI that handles phone or web calls.
create-agents-md
Create or rewrite AGENTS.md files for Open Mercato packages and modules. Use this skill when adding a new package, creating a new module, or when an existing AGENTS.md needs to be created or refactored. Ensures prescriptive tone, MUST rules, checklists, and consistent structure across all agent guidelines.