Skip to content
Back to skills

skill-creator

ASecurity

Use when the user wants a new reusable skill, automation or tool integration for Claude Code, or wants to turn a manual workflow into a repeatable skill. Designs it, writes SKILL.md (+ helpers), runs quality gates.

  • 2 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added October 10, 2026
ai-agentspythonbashnodeapidocumentation

Works with

  • claude code
  • cli
  • api

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned October 10, 2026

npx -y skills add acrid-auto/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: A — Skills Directory](https://www.skillsdirectory.com/api/skills/acrid-auto-skill-creator/badge)](https://www.skillsdirectory.com/skills/acrid-auto-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 the user wants a new reusable skill, automation or tool integration for Claude Code, or wants to turn a manual workflow into a repeatable skill. Designs it, writes SKILL.md (+ helpers), runs quality gates."
---

# SKILL: skill-creator

## Description

Writes new skills to `.claude/skills/<name>/` in the current project (or `~/.claude/skills/<name>/` when the user wants it everywhere). Every generated SKILL.md starts with YAML frontmatter (`name:` + a `description:` that says WHEN to use it) because that description is how Claude Code decides to fire the skill.

The foundational meta-skill that architects and generates production-grade agent skills from natural language. This is the factory floor — every skill in the Acrid ecosystem is born here. It doesn't just scaffold files; it thinks through design, enforces quality gates, generates battle-tested logic, and outputs skills that work on first run.

## Usage

Invoke this skill when:
- You need to create a new capability, tool integration, or automation
- You're converting a manual workflow into a repeatable skill
- You want to prototype a skill idea rapidly with full documentation
- You need to refactor or rebuild an existing skill from scratch

**Trigger phrases:** "Create a skill...", "Build me a skill...", "I need a skill that...", "Scaffold a new skill for..."

## Inputs

| Parameter | Required | Format | Description |
|-----------|----------|--------|-------------|
| `name` | Yes | kebab-case | Skill identifier (e.g., `stock-checker`, `deploy-monitor`) |
| `description` | Yes | Natural language | What the skill does, in detail |
| `requirements` | No | Natural language | Tools, APIs, constraints, languages, auth needs |
| `outputs` | No | Natural language | What the skill should return (defaults to structured text) |
| `complexity` | No | `simple` \| `standard` \| `advanced` | Determines scaffold depth (default: `standard`) |

## Steps

### Phase 1: Intelligence Gathering

1. **Parse the request** — Extract:
   - Core purpose (single sentence, verb-first: "Fetches...", "Monitors...", "Generates...")
   - Required external APIs or services
   - Required tools (Bash, WebFetch, WebSearch, Read, Write, Grep, Glob, etc.)
   - Input parameters with types and validation rules
   - Expected output format (JSON, markdown, plain text, file)
   - Error scenarios (API down, bad input, rate limits, auth failure, empty results)
   - Edge cases specific to the domain

2. **Determine complexity tier**:
   - **Simple**: Single tool, no external APIs, <20 lines of logic (e.g., file formatter)
   - **Standard**: 1-2 tools, may call external APIs, needs error handling (e.g., stock checker)
   - **Advanced**: Multiple tools, chained API calls, stateful logic, helper scripts required (e.g., deploy pipeline)

3. **Identify the execution model**:
   - **Direct**: Skill logic runs entirely within SKILL.md steps (preferred for simple/standard)
   - **Scripted**: Complex logic lives in `src/` scripts, SKILL.md orchestrates (required for advanced)
   - **Hybrid**: SKILL.md handles orchestration, delegates specific computations to scripts

### Phase 2: Architecture

4. **Design the skill contract**:
   - Define exact input schema with types, defaults, and validation
   - Define exact output schema — what does success look like?
   - Define error responses — what does each failure mode return?
   - Map the dependency chain (what calls what, in what order)

5. **Scaffold the directory**:

   For **simple** skills:
   ```
   .claude/skills/<name>/
     SKILL.md
     README.md
   ```

   For **standard** skills:
   ```
   .claude/skills/<name>/
     SKILL.md
     README.md
     src/           # Only if computation is complex
   ```

   For **advanced** skills:
   ```
   .claude/skills/<name>/
     SKILL.md
     README.md
     src/
       main.py|js   # Core logic
       utils.py|js  # Shared helpers (only if genuinely needed)
     config/
       defaults.json
   ```

### Phase 3: Generation

6. **Generate SKILL.md** — The skill definition must include ALL of these sections:

   ```markdown
   # SKILL: <name>

   ## Description
   <Single paragraph. First sentence is the hook — what it does in <15 words.
   Second sentence adds context. Third sentence covers key differentiator.>

   ## Usage
   <When to invoke. Include 2-3 specific trigger phrases.>

   ## Inputs
   <Table format with: Parameter | Required | Type | Default | Description>
   <Include validation rules inline>

   ## Outputs
   <What the skill returns on success. Include format specification.>

   ## Steps
   <Numbered, imperative steps. Each step must be:
   - Actionable (starts with a verb)
   - Atomic (does one thing)
   - Error-aware (includes failure handling where relevant)
   - Tool-specific (names the exact tool to use when applicable)>

   ## Error Handling
   <Explicit failure modes and recovery actions:
   - What to do when an API is unreachable
   - What to do with malformed input
   - What to do when results are empty
   - Retry logic if applicable>
   ```

   **SKILL.md generation rules:**
   - Steps MUST be deterministic — no ambiguity in what the agent does
   - Every external call MUST have a failure path
   - Steps should reference specific tools by name (WebFetch, Bash, Grep, etc.)
   - Include concrete examples of expected input/output in the steps where helpful
   - Never use vague instructions like "process the data" — specify HOW
   - If a step involves parsing, specify the exact format and extraction method
   - Rate limiting: if the skill calls external APIs, include a note about respecting rate limits

7. **Generate README.md**:

   ```markdown
   # <Skill Name (Title Case)>

   <One-line description>

   ## Quick Start
   <Minimal trigger example>

   ## Parameters
   <Full parameter docs with examples>

   ## Example Usage
   <2-3 real-world invocation examples with expected outputs>

   ## Setup
   <Environment variables, API keys, dependencies — only if needed>

   ## How It Works
   <Brief technical explanation of the skill's approach>

   ## Limitations
   <Honest about what it can't do>
   ```

8. **Generate helper scripts** (if complexity requires):

   **Python scripts must:**
   - Use `argparse` for CLI arguments
   - Output JSON to stdout (parseable by the agent)
   - Include a `if __name__ == "__main__"` guard
   - Handle exceptions with meaningful error messages in JSON format: `{"error": "...", "code": "..."}`
   - Use type hints
   - Include a docstring

   **Node.js scripts must:**
   - Parse args from `process.argv` or use a minimal arg parser
   - Output JSON to stdout
   - Handle errors with try/catch, output: `{"error": "...", "code": "..."}`
   - Use strict mode

### Phase 4: Quality Gates

9. **Run the Acrid Quality Checklist** — Every generated skill must pass ALL gates:

   | Gate | Check | Fail Action |
   |------|-------|-------------|
   | **Atomic** | Does it do exactly ONE thing? | Split into multiple skills |
   | **Named** | Is the name self-documenting? Does `<name>` tell you what it does? | Rename |
   | **Inputs Valid** | Are all inputs typed with clear validation rules? | Add missing validation |
   | **Outputs Defined** | Is the output format explicitly documented? | Add output spec |
   | **Error-Proof** | Does every external call have a failure path? | Add error handling |
   | **Documented** | Does README.md have Quick Start + Examples? | Flesh out docs |
   | **Deterministic** | Given the same input, does it always produce the same flow? | Remove ambiguity |
   | **No Dead Code** | Are all generated files actually used? | Remove unused files |
   | **Dependency-Light** | Does it minimize external dependencies? | Simplify |
   | **First-Run Ready** | Can someone use this skill with zero setup beyond what's documented? | Fix setup docs |

10. **Final review** — Read through the complete generated skill one more time. Ask:
    - Would this work if I ran it right now?
    - Is there anything I'd need to guess or assume?
    - Are the steps clear enough that a different agent could execute them?
    - If any answer is "no", fix it before delivering.

### Phase 5: Delivery

11. **Write all files** to the target directory using the Write tool.

12. **Report to user** with:
    - Skill name and location
    - Quick summary of what was generated
    - Any setup steps required (API keys, env vars)
    - A ready-to-use invocation example

## Error Handling

| Scenario | Action |
|----------|--------|
| Name is not kebab-case | Auto-convert and warn user |
| Description is vague (<10 words) | Ask for clarification before proceeding |
| Requested API has no free tier | Warn user, suggest alternatives, proceed if confirmed |
| Complexity mismatch (user says simple but needs advanced) | Override to correct tier, explain why |
| Generated skill fails quality gate | Fix automatically, do not deliver broken skills |

## Anti-Patterns — Do NOT Generate Skills That:

- Have steps like "analyze the data" without specifying HOW
- Depend on tools not available to the agent
- Require manual intervention mid-execution (unless explicitly designed as interactive)
- Have undocumented environment variables or secrets
- Contain placeholder logic ("TODO: implement this")
- Over-engineer with abstractions for single-use operations
- Include unnecessary comments or boilerplate

## Examples

**Input:**
```
name: stock-checker
description: Fetches the current price of a stock by ticker symbol using a free API
requirements: Must use a free API, return price in USD
```

**Output:** See `examples/stock-checker/` for the complete generated skill.

Files in this skill

  • SKILL.md9.5 KB
  • package.json662 B
  • templates/README_TEMPLATE.md442 B
  • templates/SKILL_TEMPLATE.md349 B

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.