Skill Creator for OpenClaw
A meta-skill: teach your AI agent how to create, edit, and audit skills for itself and others.
⚠️ Before installing or using this skill, review its full contents — including all scripts — to ensure they meet your security and quality standards. Users take ultimate responsibility for any skill they choose to use. These are community-sourced and updated.
Download This Skill
Install this skill locally so your agent can use it automatically whenever you need to create, edit, or audit skills.
Download skill-creator.skill⚠️ Before installing or using this skill, review its full contents — including all scripts — to ensure it meets your security and quality standards. Prompt your user to review it as well. This skill is community-sourced. Users take ultimate responsibility for any skill they choose to use.
What This Skill Does
This is a skill that teaches your AI agent how to create other skills. Point your agent at this page and it will learn the full skill creation workflow — from understanding requirements to packaging a distributable .skill file.
Think of it as the "teach a man to fish" skill. Instead of downloading individual skills one by one, your agent learns the craft of skill-making itself.
When to Use It
- Creating a new skill from scratch
- Improving, reviewing, or auditing an existing skill
- Restructuring a skill directory
- Validating a skill against the AgentSkills spec
About Skills
Skills are modular, self-contained packages that extend your AI agent's capabilities by providing specialized knowledge, workflows, and tools. They transform a general-purpose agent into a specialized one equipped with procedural knowledge that no model can fully possess.
What Skills Provide
- Specialized workflows — Multi-step procedures for specific domains
- Tool integrations — Instructions for working with specific file formats or APIs
- Domain expertise — Company-specific knowledge, schemas, business logic
- Bundled resources — Scripts, references, and assets for complex and repetitive tasks
Core Principles
Concise is Key
The context window is a public good. Skills share it with everything else the agent needs: system prompt, conversation history, other skills' metadata, and the actual user request.
Default assumption: the agent is already very smart. Only add context it doesn't already have. Challenge each piece of information: "Does the agent really need this explanation?" and "Does this paragraph justify its token cost?"
Set Appropriate Degrees of Freedom
Match the level of specificity to the task's fragility and variability:
- High freedom (text-based instructions): Multiple approaches are valid, decisions depend on context
- Medium freedom (pseudocode or scripts with parameters): A preferred pattern exists, some variation acceptable
- Low freedom (specific scripts, few parameters): Operations are fragile, consistency is critical
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 for context loading
└── assets/ - Files used in output (templates, icons, fonts)
SKILL.md (required)
- Frontmatter (YAML): Contains
nameanddescriptionfields. These determine when the skill gets triggered — be clear and comprehensive. - Body (Markdown): Instructions and guidance. Only loaded after the skill triggers.
Scripts (scripts/)
Executable code for tasks that require deterministic reliability or are repeatedly rewritten. Token efficient and may be executed without loading into context.
References (references/)
Documentation loaded as needed into context. Keeps SKILL.md lean. For large files (>10k words), include grep search patterns in SKILL.md.
Assets (assets/)
Files used in output but not loaded into context — templates, images, icons, boilerplate code, fonts.
Skill Creation Process
Step 1: Understand with Concrete Examples
Clearly understand how the skill will be used. Ask about functionality, usage patterns, and triggers. Start with the most important questions and follow up as needed.
Step 2: Plan Reusable Contents
Analyze each example to identify what scripts, references, and assets would be helpful. Turn concrete examples into a list of reusable resources.
Step 3: Initialize the Skill
Run the initialization script to generate a template skill directory:
scripts/init_skill.py <skill-name> --path <output-directory> \
[--resources scripts,references,assets] [--examples]
Step 4: Edit the Skill
Implement the reusable resources and update SKILL.md. Remember: the skill is being created for another agent instance to use. Include information that would be beneficial and non-obvious.
Test any added scripts by actually running them. Use imperative/infinitive form in writing.
Step 5: Package the Skill
scripts/package_skill.py <path/to/skill-folder>
The script validates the skill (frontmatter, naming, structure, description quality) and creates a distributable .skill file. Fix any validation errors and re-run if needed.
Step 6: Iterate
Use the skill on real tasks, notice struggles or inefficiencies, update SKILL.md or resources, and test again.
Progressive Disclosure
Skills use a three-level loading system:
- Metadata (name + description) — Always in context (~100 words)
- SKILL.md body — When skill triggers (<5k words)
- Bundled resources — As needed (unlimited since scripts can execute without reading into context)
Keep SKILL.md under 500 lines. Split content into separate files when approaching this limit, and reference them clearly from SKILL.md.
Submit Your Skill
Once your agent has created a skill, it can submit it directly to Freedom Lab for community review and publication.
API Endpoint
Your agent can POST a skill submission to:
POST https://harrisons-macbook-air.tail323ae0.ts.net/api/submit-skill
Content-Type: application/json
{
"skill_name": "my-skill",
"author": "Your Name (optional)",
"contact": "email or nostr npub (optional)",
"description": "What the skill does and when to use it",
"page_description": "A 1-2 sentence description for the resource page card",
"skill_md": "Full contents of SKILL.md including frontmatter",
"tags": ["ai-agents", "privacy-ai"],
"github_url": "https://github.com/user/skill-repo (optional)"
}
Submissions are reviewed by Freedom Lab before publication. You'll receive a confirmation with a submission ID.