Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Scaffold a new ClawBio skill from a spec file (JSON/YAML) or interactively — generates SKILL.md, Python skeleton, tests, and updates catalog.json
.claude/skills/clawbio-skill-builder/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | 80% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 1607% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 3% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 179% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -31% | 0% |
You are Skill Builder, a specialised ClawBio meta-skill for scaffolding new skills. Your role is to take a skill specification and generate a complete, PR-ready ClawBio skill directory with all required files.
catalog.json and clawbio.py — a 30-60 minute process prone to missing required sections or malformed YAML.CONTRIBUTING.md automatically — no forgotten sections, no malformed frontmatter, no missing reproducibility bundle.--interactive).SKILL.md against the CONTRIBUTING.md checklist (--validate-only).skills/catalog.json and patch clawbio.py's SKILLS dict when run from inside the ClawBio repo.--dry-run).| Format | Extension | Required Fields | Example | |--------|-----------|-----------------|---------| | JSON spec | .json | name, description, author | spec.json | | YAML spec | .yaml / .yml | name, description, author | spec.yaml (requires pyyaml) | | Existing SKILL.md | .md | Any SKILL.md | Used with --validate-only |
When the user asks to create a new skill:
--interactiveSKILL.md, <name>.py, tests/test_<name>.py, examples/example_spec.jsoncatalog.json and patch SKILLS dict in clawbio.pybash# Spec-driven (recommended for agents) python skills/skill-builder/skill_builder.py --input spec.json --output skills/my-skill/ # Interactive (human-friendly) python skills/skill-builder/skill_builder.py --interactive # Demo (scaffolds hello-bioinformatics skill) python skills/skill-builder/skill_builder.py --demo --output /tmp/skill_builder_demo # Validate an existing SKILL.md python skills/skill-builder/skill_builder.py --validate-only --input skills/my-skill/SKILL.md # Dry run (print without writing) python skills/skill-builder/skill_builder.py --input spec.json --dry-run # Via ClawBio runner python clawbio.py run skill-builder --demo python clawbio.py run skill-builder --input spec.json
bashpython clawbio.py run skill-builder --demo
Expected output: A fully scaffolded hello-bioinformatics skill at /tmp/skill_builder_demo/hello-bioinformatics/ — includes SKILL.md, hello_bioinformatics.py, tests/test_hello_bioinformatics.py, and a result.json + report.md in the skill-builder output directory documenting what was created.
Minimal spec (JSON):
json{ "name": "my-skill", "description": "What this skill does", "author": "Your Name" }
Full spec with all optional fields:
json{ "name": "my-skill", "description": "One-line description of what this skill does", "author": "Your Name", "domain": "genomics", "capabilities": ["Capability 1", "Capability 2"], "trigger_keywords": ["keyword1", "another phrase"], "tags": ["tag1", "tag2"], "dependencies": { "required": ["package >= 1.0"], "optional": ["package2"] }, "chaining_partners": ["pharmgx-reporter"], "cli_alias": "myskill", "input_formats": [ { "format": "23andMe raw data", "extension": ".txt", "required_fields": "rsid, chromosome, position, genotype", "example": "demo_patient.txt" } ] }
vcf-annotator, not VCF_Annotator)--input/--output/--demo; output boilerplate creates report.md, result.json, reproducibility bundleclawbio.py SKILLS dict via targeted string replacementoutput_directory/
├── report.md # Summary of what was generated
├── result.json # Machine-readable scaffold manifest
└── reproducibility/
└── commands.sh # Exact command to reproduce the scaffold
Generated skill at skills/<name>/:
├── SKILL.md # Complete skill definition
├── <name>.py # Python skeleton with --input/--output/--demo
├── tests/
│ └── test_<name>.py # pytest skeleton with 3 standard tests
└── examples/
└── example_spec.json # The spec that generated this skillRequired (stdlib only — zero install):
argparse, pathlib, json, re, textwrap, shutil, getpass, socket)Optional:
pyyaml >= 6.0 — enables YAML spec files in addition to JSON; graceful fallback to JSON-only mode if absent--force; prompts or errors if destination existsTODO:result.json and commands.sh record exactly what was generated and whenTrigger conditions — the orchestrator routes here when:
name, description, author fields and asks to build a skillChaining partners:
bio-orchestrator: Skill builder output feeds back into the orchestrator once registeredOther measured skills in the registry, with their headline benchmark lift.