agent-skill-builder
Skill68 starsChanged 22 days agoMITView on GitHub
Quickly creates new Claude Code skills or translates ChatGPT projects into Claude Code skills. Handles skill scaffolding, frontmatter, directory structure, and ChatGPT-to-Claude migration. Use when the user wants to 'create a skill,' 'make a new slash command,' 'convert a ChatGPT project,' 'translate a GPT to Claude,' or 'migrate prompts to Claude Code.' For full eval/testing/benchmarking workflows, use skill-creator instead.
2 other projects use a version of this.
Adopted by
Most recently taken up by
- dimonier/skillstheir own version, first seen Oct 13, 2026
- conorbronsdon/agent-skill-buildertheir own version, first seen Aug 19, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- dimonier/skills★ 10same name
- conorbronsdon/agent-skill-builder★ 5same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository33 other files it gives its agents.
- ad-creativeSkill
- ai-content-generationSkill
- ai-humanizerSkill
- case-study-builderSkill
- clay-gtm-outboundSkill
- competitive-intelligenceSkill
- copy-anatomySkill
- customer-segmentsSkill
- domain-healthSkill
- experimentationSkill
- icp-personaSkill
- landing-pageSkill
- lifecycle-marketing-campaignsSkill
- marketing-advantagesSkill
- marketing-product-ideasSkill
- n8n-automationSkill
- obsidian-opsSkill
- outbound-engineSkill
- performance-marketingSkill
- portfolio-positioningSkill
- press-releaseSkill
- product-launch-gtmSkill
- product-marketing-metricsSkill
- product-messagingSkill
- product-onboarding-activationSkill
- product-positioningSkill
- prospect-scraperSkill
- remotionSkill
- saas-landing-pagesSkill
- seo-auditSkill
- skill-to-promptSkill
- storytelling-frameworkSkill
- vibe-codingSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 4 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 28
Ask the user (skip what's already clear from context):
- Very specific: line 49
Write SKILL.md following this template:
- Distinctive: line 92
Check that the skill triggers when expected and stays silent when not relevant
- Very specific: line 144
Only name and description are required.
- Very specific: line 179
Progressive disclosure: Keep SKILL.md under 500 lines.
- Very specific: line 183
No extraneous files: No README.md, CHANGELOG.md, INSTALLATION_GUIDE.md.
- Very specific: line 184
Forward slashes only: Use scripts/helper.py, never scripts\helper.py.
- Distinctive: line 188
Every skill prompt and every ChatGPT or Claude project prompt uses the same five blocks, in this order:
- Distinctive: line 201
When a handoff between stages is needed, have each stage write a markdown file the next stage reads.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Agent Skill Builder
Quickly scaffolds new Claude Code skills or translates ChatGPT projects into Claude Code format. This skill focuses on fast creation and correct structure. For iterative testing, benchmarking, and description optimization, use Anthropic's official skill-creator plugin.
Two Modes
Mode 1: Create New Skill (/agent-skill-builder new [name])
Scaffolds a fresh Claude Code skill with proper structure and best practices.
Mode 2: Translate ChatGPT Project (/agent-skill-builder translate [name])
Converts an existing ChatGPT project into a Claude Code skill.
Create New Skill
Step 1: Gather Intent
Ask the user (skip what's already clear from context):
- Skill name: What should the
/slash-commandbe called? - Purpose: What does this skill do?
- Examples: How would this skill be used in practice?
- Triggers: What would a user say that should invoke this skill?
Step 2: Plan Resources
Analyze each example to identify what should be bundled:
- Scripts (
scripts/): Code rewritten repeatedly or needing deterministic reliability. Execute without loading into context. - References (
references/): Documentation Claude should consult while working. Loaded on demand. - Assets (
assets/): Files used in output (templates, images, fonts). Not loaded into context.
Step 3: Create Directory and SKILL.md
mkdir -p ~/.claude/skills/[skill-name]Write SKILL.md following this template:
---
name: skill-name
description: "Describes what the skill does and specific triggers for when to use it. Write in third person. Include keywords users would say. Max 1024 characters. This is the PRIMARY triggering mechanism."
---
# Skill Name
[1-2 sentence description]
## Instructions
[Step-by-step guidance — use imperative form]
## Output Format
[Expected output structure]
## Constraints
[Limitations and rules]Step 4: Add Reference Files (if needed)
For skills with multiple domains or variants, keep SKILL.md lean and split into references:
skill-name/
├── SKILL.md (overview + navigation, under 500 lines)
└── references/
├── variant-a.md
└── variant-b.mdReference from SKILL.md with clear guidance on when to read each file. Keep references one level deep.
Step 5: Test
- Invoke directly:
/skill-name - Let Claude auto-invoke by matching description keywords
- Check that the skill triggers when expected and stays silent when not relevant
Translate ChatGPT Project to Claude Skill
Step 1: Extract ChatGPT Components
Request from user:
- System prompt/instructions
- Knowledge files (PDFs, docs)
- Conversation starters (optional)
- Actions/API configurations (if any)
Step 2: Map Components
| ChatGPT Component | Claude Code Equivalent | Location |
| Name | name in frontmatter | SKILL.md |
| Description | description in frontmatter | SKILL.md |
| Instructions | Main markdown body | SKILL.md |
| Knowledge files | references/ folder (convert to .md) | Subdirectory |
| Conversation starters | Document in Examples section or omit | SKILL.md |
| Actions (APIs) | MCP servers | ~/.claude/mcp.json |
| Code Interpreter | Native tools: Bash, Read, Write, Edit, Glob, Grep | Built-in |
| Memory | No direct equivalent. Use context files or skill background sections | Various |
Step 3: Convert Instructions
| ChatGPT Pattern | Claude Equivalent |
| "You are a [role]..." | Role section or integrate into instructions |
| "Your task is to..." | Instructions section |
| "Always/Never..." | Constraints section |
| "Output format..." | Output Format section |
Input placeholders [text] | Keep as-is or use $ARGUMENTS |
Step 4: Convert Knowledge Files
- Convert PDFs/docs to Markdown and place in
references/ - For large files (>10k words), include grep search patterns in SKILL.md
- For files >100 lines, add a table of contents at the top
- Templates and assets go in
assets/
Step 5: Write Frontmatter
The description field is the primary triggering mechanism. Write in third person and include both what the skill does and when to use it. Be slightly "pushy" with triggers to combat undertriggering.
Frontmatter Reference
Only name and description are required. Additional fields are Claude Code-specific extensions:
| Field | Required | Description |
name | Yes | Max 64 chars, lowercase letters/numbers/hyphens only |
description | Yes | Max 1024 chars. What + When. Third person. Primary trigger mechanism |
argument-hint | No | Hint shown in autocomplete (e.g., "[issue-number]") |
disable-model-invocation | No | true = user-only invocation (no auto-trigger) |
user-invocable | No | false = Claude-only (hidden from slash command menu) |
context | No | fork = run in isolated subagent |
agent | No | Subagent type: Explore, Plan, general-purpose |
allowed-tools | No | Restrict available tools: Read, Grep, Glob |
model | No | Override model for this skill |
String Substitutions
| Variable | Description |
$ARGUMENTS | Everything after /skill-name |
${CLAUDE_SESSION_ID} | Current session ID |
!`command` | Dynamic injection (runs before skill loads) |
Skill Locations
| Location | Path | Scope |
| Personal | ~/.claude/skills/[name]/ | All projects |
| Project | .claude/skills/[name]/ | This project only |
Writing Best Practices
These come from Anthropic's official skill authoring guide:
- Concise is key. Claude is already smart. Only add context Claude doesn't already have. Prefer concise examples over verbose explanations.
- Description is everything. Claude reads descriptions to decide which skill to use from potentially 100+ available skills. Be specific, include trigger keywords, write in third person.
- Progressive disclosure. Keep SKILL.md under 500 lines. Move detailed references to separate files. Claude loads them only when needed.
- Match freedom to fragility. High freedom (text instructions) for flexible tasks, low freedom (specific scripts) for fragile operations.
- Explain the why. Explain reasoning behind instructions rather than using heavy-handed MUSTs. Claude responds better to understanding motivation than rigid rules.
- Consistent terminology. Pick one term and use it throughout. Don't mix "API endpoint" / "URL" / "API route" / "path".
- No extraneous files. No README.md, CHANGELOG.md, INSTALLATION_GUIDE.md. Skills contain only what an AI agent needs to do the job.
- Forward slashes only. Use
scripts/helper.py, neverscripts\helper.py.
Prompt Skeleton (every skill and project prompt)
Every skill prompt and every ChatGPT or Claude project prompt uses the same five blocks, in this order:
- Goal. One or two sentences on what the prompt produces and for whom.
- Persona. Who the agent acts as, and how that person thinks about the work.
- Chat protocol. How the conversation runs: one question per message, the stage name at the top of every message, a short explanation before each stage, and how to check the result after it.
- Stages. Numbered stages. Each one ends with a stop point where the agent waits for the user's approval ("go") before the next stage starts.
- Hard rules. The things the agent never does, written as plain rules.
Two more rules sit inside the skeleton:
- Capped revision rounds. Each stage allows one or two rounds of changes, then moves on. State the cap in the stage.
- No invention. The agent never invents facts, data, names or numbers. When something is missing, it marks the gap (for example
[MISSING: price]) and asks, instead of filling it in.
When a handoff between stages is needed, have each stage write a markdown file the next stage reads.
After Creation Checklist
- SKILL.md created with
nameanddescriptionin frontmatter - Description includes what AND when (triggers), written in third person
- SKILL.md under 500 lines
- Knowledge files converted to Markdown in
references/ - References are one level deep from SKILL.md
- Large reference files (>100 lines) have table of contents
- Prompt follows the five-block skeleton, with stop points, capped revision rounds and the no-invention rule
- Skill tested with
/skill-nameand auto-invocation - No extraneous documentation files
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

