Skip to main content
ClaudeWave
Skill538 estrellas del repoactualizado 1mo ago

skill-creator

# skill-creator This Claude Code skill helps users create new skills from scratch, modify existing ones, and measure their performance through testing and evaluation. Use it whenever a user wants to build a reusable workflow or set of instructions for an agent, design a custom skill, write skill documentation, optimize existing skills, run performance tests, or asks questions like "how do I make a skill" or "create a skill for X," even if they don't explicitly use the word "skill."

Instalar en Claude Code
Copiar
git clone --depth 1 https://github.com/AgentTeam-TaichuAI/ScienceClaw /tmp/skill-creator && cp -r /tmp/skill-creator/ScienceClaw/backend/builtin_skills/skill-creator ~/.claude/skills/skill-creator
Después abre una sesión nueva de Claude Code; el skill carga automáticamente.

SKILL.md

# Skill Creator

A skill for creating new skills and iteratively improving them.

> **ENVIRONMENT: ScienceClaw** — You are running in ScienceClaw. There are NO subagents, NO `task` tool, NO `claude` CLI. Do NOT attempt to spawn subagents or call `task`. For eval/testing, saving, and improving skills, follow the **ScienceClaw-Specific Instructions** section at the bottom of this file. The "Creating a skill" section below is universal and can be followed as-is. All other sections (Running and evaluating test cases, Improving the skill, Blind comparison, Description Optimization) are Claude Code-specific — **SKIP them entirely** and use the ScienceClaw equivalents instead.

Your job is to figure out where the user is in the skill creation process and help them progress. The high-level flow is: **draft → test → review → improve → repeat**.

- If the user wants to create a new skill, help narrow down what they mean, write a draft, then offer to test it
- If they already have a draft, go straight to the eval/iterate part
- If they just want a quick change, skip the full eval cycle
- Always be flexible — if the user says "just vibe with me", do that instead

## Communicating with the user

The skill creator is liable to be used by people across a wide range of familiarity with coding jargon. If you haven't heard (and how could you, it's only very recently that it started), there's a trend now where the power of Claude is inspiring plumbers to open up their terminals, parents and grandparents to google "how to install npm". On the other hand, the bulk of users are probably fairly computer-literate.

So please pay attention to context cues to understand how to phrase your communication! In the default case, just to give you some idea:

- "evaluation" and "benchmark" are borderline, but OK
- for "JSON" and "assertion" you want to see serious cues from the user that they know what those things are before using them without explaining them

It's OK to briefly explain terms if you're in doubt, and feel free to clarify terms with a short definition if you're unsure if the user will get it.

---

## Creating a skill

### Capture Intent

Start by understanding the user's intent. The current conversation might already contain a workflow the user wants to capture (e.g., they say "turn this into a skill"). If so, extract answers from the conversation history first — the tools used, the sequence of steps, corrections the user made, input/output formats observed. The user may need to fill the gaps, and should confirm before proceeding to the next step.

1. What should this skill enable Claude to do?
2. When should this skill trigger? (what user phrases/contexts)
3. What's the expected output format?
4. Should we set up test cases to verify the skill works? Skills with objectively verifiable outputs (file transforms, data extraction, code generation, fixed workflow steps) benefit from test cases. Skills with subjective outputs (writing style, art) often don't need them. Suggest the appropriate default based on the skill type, but let the user decide.

### Interview and Research

Proactively ask questions about edge cases, input/output formats, example files, success criteria, and dependencies. Wait to write test prompts until you've got this part ironed out.

**Use `web_search` and `web_crawl` to research.** When the skill involves external APIs, services, data sources, or technical workflows you're not 100% sure about, use `seekr_sdk` (`from seekr_sdk import web_search, web_crawl`) to verify current information before writing instructions. This includes:
- Confirming API endpoints, parameters, and response formats are still valid
- Looking up best practices, official documentation, or community patterns
- Finding similar skills or workflows for inspiration
- Verifying that libraries, tools, or services mentioned in the skill actually exist and work as described

Come prepared with context to reduce burden on the user.

### Write the SKILL.md

**YAML Frontmatter is MANDATORY.** Every SKILL.md MUST start with YAML frontmatter wrapped in `---` fences containing `name` and `description`. Without frontmatter, the skill will have an empty description in the "Available Skills" list, and the agent will **never know what the skill does — it simply won't be triggered**. This is the #1 cause of skills not working after creation.

The SKILL.md must follow this exact structure:

```
---
name: my-skill-name
description: "What this skill does and when to trigger it. Be specific and pushy."
---

# my-skill-name

(rest of the skill body — instructions, examples, etc.)
```

Frontmatter fields:

- **name** (required): Skill identifier, should match the directory name.
- **description** (required): This is the **primary triggering mechanism** — the agent reads this to decide whether to use the skill. Include both what the skill does AND specific contexts/phrases for when to use it. All "when to use" info goes here, not in the body. Make the description "pushy" — err on the side of triggering too often rather than too rarely. For instance, instead of `"Build a dashboard."`, write `"Build dashboards for data visualization. Use this whenever the user mentions dashboards, charts, metrics display, data overview, reporting, or wants to visualize any kind of data, even if they don't explicitly ask for a 'dashboard.'"` Include both Chinese and English trigger phrases if the skill may be used in bilingual contexts.
- **compatibility** (optional): Required tools, dependencies (rarely needed).

Then write the rest of the skill body (instructions, examples, output format, etc.).

### Skill Writing Guide

#### Anatomy of a Skill

```
skill-name/
├── SKILL.md (required)
│   ├── YAML frontmatter (--- name + description ---, MANDATORY or skill won't trigger)
│   └── Markdown body (instructions, examples, output format)
└── Bundled Resources (optional)
    ├── scripts/    - Executable code for deterministic/repetitive tasks
    ├── references/
docxSkill

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.

feishu-setupSkill

自动配置飞书机器人应用。当用户要求配置飞书、创建飞书机器人、接入 Lark/飞书、设置飞书 app_id/app_secret、或询问如何配置飞书 IM 时触发此 skill。该 skill 通过 sandbox 内置浏览器自动完成飞书开放平台上的应用创建、权限配置、事件订阅和发布,用户仅需扫码登录。

find-skillsSkill

MANDATORY: When a user asks to install, find, search, or add ANY skill (e.g. 'install hello-world skill', 'find a skill for X', 'add a skill'), you MUST first run `skills find <query>` to search the skills ecosystem. NEVER create a skill from scratch without searching first. Even if the name sounds simple, always search — it may already exist as a published skill.

pdfSkill

Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.

pptxSkill

Use this skill any time a .pptx file is involved — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading or extracting text from .pptx files; editing or updating existing presentations; combining or splitting slide files; working with templates, layouts, speaker notes, or comments. Trigger whenever the user mentions 'deck', 'slides', 'presentation', or references a .pptx filename. If a .pptx file needs to be opened, created, or touched, use this skill.

tool-creatorSkill

Create new tools or upgrade existing tools for the agent. MANDATORY: Use this skill whenever the user wants to create a custom tool, convert a script into a reusable tool, write a new tool function, upgrade or modify an existing tool, test and improve a tool in the sandbox, or asks things like 'make a tool for X', 'create a tool that does Y', 'improve the X tool', 'upgrade my tool', 'turn this script into a tool'. Even if the user doesn't use the word 'tool' explicitly, trigger this if they want to add a new callable capability to the agent or modify an existing one.

tooluniverseSkill

Access 1000+ scientific tools through ToolUniverse for drug discovery, protein analysis, genomics, literature search, clinical data, ADMET prediction, molecular docking, and more. Use when the user needs biomedical or scientific research capabilities.

xlsxSkill

Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like \"the xlsx in my downloads\") — and wants something done to it or produced from it. Also trigger for cleaning or restructuring messy tabular data files (malformed rows, misplaced headers, junk data) into proper spreadsheets. The deliverable must be a spreadsheet file. Do NOT trigger when the primary deliverable is a Word document, HTML report, standalone Python script, database pipeline, or Google Sheets API integration, even if tabular data is involved.