Build Claude skills from extracted documentation. Use after doc-scraper/pdf-extractor to generate uploadable skill packages.
Scanned 9/3/2026
Install to Claude Code
npx -y skills add jmagly/aiwg --skill skill-builder --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Skill Builder?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jmagly-skill-builder-aiwg)More formats (shields.io, HTML) on the badges page.
---
namespace: aiwg
name: skill-builder
description: Build Claude skills from extracted documentation. Use after doc-scraper/pdf-extractor to generate uploadable skill packages.
tools: Read, Write, Bash, Glob
platforms: [all]
---
# Skill Builder Skill
## Purpose
Single responsibility: Transform extracted documentation into properly structured Claude skill packages ready for upload. (BP-4)
## Grounding Checkpoint (Archetype 1 Mitigation)
Before executing, VERIFY:
- [ ] Input data directory exists and contains extracted content
- [ ] Content format is recognized (JSON pages, markdown, etc.)
- [ ] Output directory is writable
- [ ] Skill name follows Claude conventions (lowercase, alphanumeric, hyphens)
**DO NOT build without verifying input data quality.**
## Uncertainty Escalation (Archetype 2 Mitigation)
ASK USER instead of guessing when:
- Multiple input formats detected - which to prioritize?
- Category structure unclear from content
- Skill description ambiguous
- Target audience undefined
**NEVER generate placeholder content without user guidance.**
## Context Scope (Archetype 3 Mitigation)
| Context Type | Included | Excluded |
|--------------|----------|----------|
| RELEVANT | Input data, skill config, output path | Other skills |
| PERIPHERAL | Similar skill examples | Unrelated documentation |
| DISTRACTOR | Previous build attempts | Source scraping details |
## Workflow Steps
### Step 1: Validate Input (Grounding)
```bash
# Check input data exists
ls -la output/<skill-name>_data/
# Verify page count
find output/<skill-name>_data/pages -name "*.json" | wc -l
# Check summary
cat output/<skill-name>_data/summary.json
```
### Step 2: Generate Skill Structure
Standard Claude skill structure:
```
output/<skill-name>/
├── SKILL.md # Main skill file (required)
├── references/ # Reference documentation
│ ├── index.md # Category index
│ ├── getting_started.md
│ ├── api_reference.md
│ └── guides.md
├── scripts/ # Optional automation scripts
└── assets/ # Optional images, diagrams
```
### Step 3: Create SKILL.md
Template for SKILL.md:
```markdown
# <Skill Name>
## Description
<When to use this skill - clear, specific>
## Key Features
- Feature 1
- Feature 2
- Feature 3
## Quick Reference
### Common Patterns
<Most frequently used patterns with code examples>
### API Overview
<Key API methods/functions>
## Navigation
| Topic | File | Description |
|-------|------|-------------|
| Getting Started | references/getting_started.md | Installation and setup |
| API Reference | references/api_reference.md | Complete API documentation |
| Guides | references/guides.md | How-to guides and tutorials |
## Code Examples
<3-5 practical code examples from documentation>
## Common Questions
<FAQ section based on documentation>
## Version Information
- Documentation version: <version>
- Last updated: <date>
- Source: <url>
```
### Step 4: Generate Reference Files
Categorize extracted content:
```python
# Categories and their keywords
categories = {
"getting_started": ["intro", "install", "setup", "quickstart"],
"api_reference": ["api", "reference", "method", "function", "class"],
"guides": ["guide", "tutorial", "how-to", "example"],
"concepts": ["concept", "overview", "architecture"],
"advanced": ["advanced", "internals", "extend", "customize"]
}
```
### Step 5: Validate Output
```bash
# Check required files exist
test -f output/<skill-name>/SKILL.md || echo "Missing SKILL.md"
test -d output/<skill-name>/references || echo "Missing references/"
# Verify SKILL.md structure
grep "^# " output/<skill-name>/SKILL.md
grep "^## " output/<skill-name>/SKILL.md
# Check reference files
ls -la output/<skill-name>/references/
```
## Recovery Protocol (Archetype 4 Mitigation)
On error:
1. **PAUSE** - Preserve partial build
2. **DIAGNOSE** - Check error type:
- `Missing input data` → Re-run extraction
- `Invalid content format` → Check parser compatibility
- `Categorization failed` → Manual category mapping
- `Template error` → Check SKILL.md syntax
3. **ADAPT** - Adjust build configuration
4. **RETRY** - Rebuild affected sections (max 3 attempts)
5. **ESCALATE** - Present partial build, ask for guidance
## Checkpoint Support
State saved to: `.aiwg/working/checkpoints/skill-builder/`
```
checkpoints/skill-builder/
├── build_config.json # Build configuration
├── categorization.json # Category assignments
├── skill_md_draft.md # SKILL.md draft
└── progress.json # Build progress
```
## Quality Criteria
| Criterion | Requirement | Validation |
|-----------|-------------|------------|
| SKILL.md present | Required | File exists check |
| Description clear | Required | Non-empty, specific |
| References organized | Required | At least 2 categories |
| Code examples | Recommended | 3+ examples in SKILL.md |
| Navigation table | Recommended | Links to all references |
## Output Validation
Run quality check after build:
```bash
# Use quality-checker skill
# Or manual validation:
# 1. SKILL.md structure
grep -E "^#{1,2} " output/<skill-name>/SKILL.md
# 2. Code examples present
grep -c '```' output/<skill-name>/SKILL.md
# 3. References populated
for f in output/<skill-name>/references/*.md; do
echo "$f: $(wc -l < $f) lines"
done
# 4. No broken links
grep -oE '\[.*\]\(.*\)' output/<skill-name>/SKILL.md | head -10
```
## Configuration Options
```json
{
"name": "myskill",
"description": "When to use this skill",
"input_dir": "output/myskill_data/",
"output_dir": "output/myskill/",
"template": "standard",
"options": {
"extract_examples": true,
"max_examples": 10,
"generate_faq": true,
"include_navigation": true,
"min_category_pages": 5
}
}
```
## Templates
### Standard Template
Full-featured skill with all sections.
### Minimal Template
Just SKILL.md and one reference file.
### API Reference Template
Optimized for API documentation.
### Tutorial Template
Optimized for learning content.
## Troubleshooting
| Issue | Diagnosis | Solution |
|-------|-----------|----------|
| Missing input data | Data directory not found | Run doc-scraper or pdf-extractor first |
| Empty SKILL.md | Template failed | Check input format, verify JSON structure |
| No categories | Keywords not matched | Provide custom category mapping |
| Build hangs | Large dataset | Use doc-splitter first for 10K+ pages |
| Invalid structure | Wrong template | Verify template compatibility with content |
## References
- Claude Skills Format: https://docs.anthropic.com/skills
- Skill Seekers Builder: https://github.com/jmagly/Skill_Seekers
- REF-001: Production-Grade Agentic Workflows (BP-4, BP-5)
- REF-002: LLM Failure Modes (Archetype 1-4 mitigations)
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!