skillpack-creator
Create a reusable SkillPack from a successful completed task. Use when the user wants to convert a one-off research, coding, analysis, or content workflow into a distributable local SkillPack with `skillpack.json`, local skills under `skills/`, starter prompts, start scripts, and
What it does
Skillpack Creator
Overview
Turn a successful task into a reusable SkillPack. Extract the stable workflow, decide what belongs in a local skill versus pack-level prompts, generate the pack structure, and package it only after the workflow is explicit and repeatable.
Workflow
1. Normalize the source task
Reduce the finished task into a clean execution spec:
- Capture the user goal, concrete deliverable, and the final successful workflow (not the full exploratory transcript).
- List required skills, tools, files, secrets, and environment assumptions.
- Separate deterministic steps from heuristic steps; remove dead ends and debugging noise.
- If the task is still too broad, narrow the scope instead of writing a vague mega-skill. If key success conditions depend on hidden human judgment, mark the pack as a best-effort assistant workflow.
Ask for missing stable facts or infer only the low-risk pieces.
2. Decide what the pack should contain
- Local skill (
skills/): reusable procedural knowledge. Keep scripts minimal unless reproducibility depends on exact file generation or repetitive shell steps. - Scripts (
scripts/): repeated shell or file-generation logic where reliability matters. - References (
references/): detailed schemas, API notes, or conventions that should not bloatSKILL.md. - Prompts (
skillpack.json): 1–3 pack-level starter inputs for the UI — not a DAG or state machine. Seereferences/skillpack-format.mdfor exact pack semantics.
3. Create the pack specification
Before writing files, define the pack spec. Prefer one local orchestrator skill plus a small number of external skills. Example minimal manifest:
{
"name": "company-research",
"description": "Research a company and produce a summary report",
"version": "1.0.0",
"prompts": ["Research {company} and create a report with financials and competitors"],
"skills": [
{ "name": "research-orchestrator", "source": "./skills/research-orchestrator", "description": "Orchestrate company research across multiple sources" }
]
}
4. Create the local orchestrator skill
Create skills/<skill-name>/SKILL.md with frontmatter and imperative workflow instructions:
---
name: research-orchestrator
description: "Orchestrate multi-source company research. Use when the user wants a structured company report covering financials, competitors, and market position."
---
- Write the stable workflow as imperative steps in the body.
- Add
scripts/only for fragile or repeated operations; addreferences/only for detailed information.
5. Materialize the pack
Use scripts/scaffold_skillpack.py when you have the pack spec:
# Basic
python3 skills/skillpack-creator/scripts/scaffold_skillpack.py \
--manifest /tmp/skillpack.json \
--output /absolute/path/to/output-pack
# With zip
python3 skills/skillpack-creator/scripts/scaffold_skillpack.py \
--manifest /tmp/skillpack.json \
--output /absolute/path/to/output-pack \
--zip
The script validates the manifest, writes skillpack.json, creates skills/, copies start.sh/start.bat from templates/, and optionally runs npx -y @cremini/skillpack zip.
6. Validate the result
Before handing the pack back, confirm:
- The manifest matches the intended pack scope
- Every declared skill has a valid
name,source, anddescription - Local skills are present under the target pack's
skills/ - Starter prompts are concrete enough to reproduce the workflow
- Zip only after the pack runs as a directory
Output Standard
Produce:
- A short summary of the stabilized workflow.
- The target pack structure and skill inventory.
- The created or updated local skill files.
- The generated
skillpack.json. - Whether the pack was zipped and where the zip lives.
Capabilities
Install
Quality
deterministic score 0.58 from registry signals: · indexed on github topic:agent-skills · 271 github stars · SKILL.md body (3,842 chars)