Skip to main content
ClaudeWave
Skill1.3k repo starsupdated today

skill-creator

skill-creator provides guidance for designing and implementing AgentSkills, which are modular packages that extend agent capabilities through specialized workflows, tool integrations, domain expertise, and bundled resources. Use this skill when a user wants the agent to learn and retain a reusable capability such as a multi-step procedure, API integration, team process, or domain rule for application across future tasks rather than completing a one-time request.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/trpc-group/trpc-agent-go /tmp/skill-creator && cp -r /tmp/skill-creator/openclaw/skills/skill-creator ~/.claude/skills/skill-creator
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Skill Creator

This skill provides guidance for creating effective skills.

## About Skills

Skills are modular, self-contained packages that extend Codex's capabilities by providing
specialized knowledge, workflows, and tools. Think of them as "onboarding guides" for specific
domains or tasks—they transform Codex from a general-purpose agent into a specialized agent
equipped with procedural knowledge that no model can fully possess.

### What Skills Provide

1. Specialized workflows - Multi-step procedures for specific domains
2. Tool integrations - Instructions for working with specific file formats or APIs
3. Domain expertise - Company-specific knowledge, schemas, business logic
4. Bundled resources - Scripts, references, and assets for complex and repetitive tasks

## Skill-First Capability Design

Prefer a skill when the user wants the agent to keep a reusable capability
instead of only completing the current turn. A skill is the durable form for
user-taught behavior: it stores when the capability should trigger, how to use
it, what constraints matter, how to recover from common failures, and which
resources make execution reliable.

Create or update a skill when the user asks to:

- add, remember, teach, configure, preserve, or reuse a capability
- connect to a tool, API, CLI, MCP endpoint, internal service, or workflow
- encode a team process, domain rule, document convention, or review checklist
- make future tasks follow a pattern instead of repeating instructions manually
- restrict use by natural-language conditions such as requester, team, chat,
  project, environment, or business context

Do not create a skill for one-off work that is unlikely to repeat. Finish the
task directly when the user only needs a single answer, file, edit, or command
result and there is no durable workflow to preserve.

Use memory instead of a skill for lightweight facts, preferences, and simple
standing rules that do not need an executable workflow, tools, references,
examples, or recovery paths. Use a skill when the remembered item is an
operational capability that future tasks should be able to run.

Keep the boundary clear:

- Put stable platform invariants in application code or runtime config:
  permissions, secret storage, file access, execution safety, validation, and
  lifecycle management.
- Put evolving behavior in the skill: triggers, operating steps, domain
  knowledge, examples, recovery paths, and policy-like usage constraints.
- Put deterministic, fragile, or frequently repeated operations in scripts.
- Put long schemas, API docs, and detailed procedures in references.
- Put reusable templates or media in assets.

Natural-language constraints in a skill guide model behavior; they are not a
hard security boundary. Do not rely on a skill description alone to protect
secrets, permissions, or private data.

## Core Principles

### Concise is Key

The context window is a public good. Skills share the context window with everything else Codex needs: system prompt, conversation history, other Skills' metadata, and the actual user request.

**Default assumption: Codex is already very smart.** Only add context Codex doesn't already have. Challenge each piece of information: "Does Codex really need this explanation?" and "Does this paragraph justify its token cost?"

Prefer concise examples over verbose explanations.

### Set Appropriate Degrees of Freedom

Match the level of specificity to the task's fragility and variability:

**High freedom (text-based instructions)**: Use when multiple approaches are valid, decisions depend on context, or heuristics guide the approach.

**Medium freedom (pseudocode or scripts with parameters)**: Use when a preferred pattern exists, some variation is acceptable, or configuration affects behavior.

**Low freedom (specific scripts, few parameters)**: Use when operations are fragile and error-prone, consistency is critical, or a specific sequence must be followed.

Think of Codex as exploring a path: a narrow bridge with cliffs needs specific guardrails (low freedom), while an open field allows many routes (high freedom).

### Anatomy of a Skill

Every skill consists of a required SKILL.md file and optional bundled resources:

```
skill-name/
├── SKILL.md (required)
│   ├── YAML frontmatter metadata (required)
│   │   ├── name: (required)
│   │   └── description: (required)
│   └── Markdown instructions (required)
└── Bundled Resources (optional)
    ├── scripts/          - Executable code (Python/Bash/etc.)
    ├── references/       - Documentation intended to be loaded into context as needed
    └── assets/           - Files used in output (templates, icons, fonts, etc.)
```

#### SKILL.md (required)

Every SKILL.md consists of:

- **Frontmatter** (YAML): Contains `name` and `description` fields. These are the only fields that Codex reads to determine when the skill gets used, thus it is very important to be clear and comprehensive in describing what the skill is, and when it should be used.
- **Body** (Markdown): Instructions and guidance for using the skill. Only loaded AFTER the skill triggers (if at all).

#### Bundled Resources (optional)

##### Scripts (`scripts/`)

Executable code (Python/Bash/etc.) for tasks that require deterministic reliability or are repeatedly rewritten.

- **When to include**: When the same code is being rewritten repeatedly or deterministic reliability is needed
- **Example**: `scripts/rotate_pdf.py` for PDF rotation tasks
- **Benefits**: Token efficient, deterministic, may be executed without loading into context
- **Note**: Scripts may still need to be read by Codex for patching or environment-specific adjustments

##### References (`references/`)

Documentation and reference material intended to be loaded as needed into context to inform Codex's process and thinking.

- **When to include**: For documentation that Codex should reference while working
- **Examples**: `references/finance.md` for financial schemas, `reference