원클릭으로
curation-skill-builder
Design and implement TypeDB-backed curation skills using the Skillful Alhazen methodology
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Design and implement TypeDB-backed curation skills using the Skillful Alhazen methodology
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
TypeDB-backed ontological memory with schema-driven retrieval. Introspects the live knowledge graph schema, composes TypeQL queries dynamically, and combines graph traversal with embedding-based semantic search for three-stage retrieval (plan, execute, organize with provenance).
Store and retrieve knowledge in the Alhazen TypeDB knowledge graph - remember, recall, organize papers and notes
REQUIRED FIRST — starts TypeDB + dashboard via Docker, loads the Alhazen base schema. Must install before any other Alhazen skill.
Brief description of what this skill does
Search the web using SearXNG (self-hosted metasearch - no API key needed)
| name | curation-skill-builder |
| description | Design and implement TypeDB-backed curation skills using the Skillful Alhazen methodology |
Use this skill when designing and building a new TypeDB-backed curation skill for the Alhazen notebook system. This is a meta-skill that applies domain modeling to create domain-specific skills following the Skillful Alhazen curation pattern.
When to use: "build a curation notebook skill", "create a new Alhazen skill", "design a TypeDB-backed skill", "model a new domain for the notebook", "add a new skill for tracking X in the knowledge graph", "design a skill using the Skillful Alhazen methodology"
Use the official skill-creator plugin instead for all other skill development — when you want to build, evaluate, or improve a Claude Code skill that does NOT use TypeDB or the Alhazen curation notebook methodology.
All domain skills follow: TASK DEFINITION → FORAGING → INGESTION → SENSEMAKING → ANALYSIS → REPORTING
task entity)# Copy the template to get started
cp -r skills/_template skills/<your-domain>
# Then implement SKILL.md, skill.yaml, <name>.py, schema.tql
# Add to skills-registry.yaml and run make build-skills
# Create a tracking project for a domain
uv run python .claude/skills/curation-skill-builder/skill_builder.py \
init-domain --name "My Domain" --skill my-skill
# Set the natural-language task the skill performs (Phase 0)
uv run python .claude/skills/curation-skill-builder/skill_builder.py \
set-task --domain-id dm-domain-XXXX \
--task "Ingest FDA 510k clearances and query clearance history"
# Snapshot the full skill directory (schema + scripts + prompts + tests)
uv run python .claude/skills/curation-skill-builder/skill_builder.py \
snapshot-skill --domain-id dm-domain-XXXX \
--skill-dir local_skills/my-skill/ --repo-dir .
# Record a design decision and its rationale
uv run python .claude/skills/curation-skill-builder/skill_builder.py \
add-decision --domain-id dm-domain-XXXX --type entity \
--summary "Use collection as base for domain grouping"
# Export annotated Markdown design changelog
uv run python .claude/skills/curation-skill-builder/skill_builder.py \
export-design --domain-id dm-domain-XXXX
Use the structured phase workflow to build a TypeDB record of the full design process for a skill. Each phase captures what the system is for, what data it models, where data comes from, what skills ingest it, and what skills analyze it.
| Phase | What it captures | Key command |
|---|---|---|
| 1 -- Goal | System purpose + evaluation criteria | define-goal, add-evaluation |
| 2 -- Entity Schema | TypeDB types the domain defines | add-entity-schema |
| 3 -- Source Schema | External data sources + artifact types | add-source-schema |
| 4 -- Derivation Skills | Ingestion functions (artifact -> entity) | add-derivation-skill |
| 5 -- Analysis Skills | Query functions (entity -> insight) | add-analysis-skill |
Spec notes attach to phase entities via add-phase-spec. Design gaps discovered during implementation are filed as GitHub Issues with gh issue create (see USAGE.md "Improvement Loop").
Export the full structured report with export-design-phases.
Read USAGE.md section "5-Phase System Design Workflow" before using these commands.
Every skill with a schema.tql must follow these namespace conventions:
skill.yaml under schema.namespace (e.g., jobhunt, tech-recon, scilit)jobhunt-position, jobhunt-company, etc. Exception: skills that only extend core types use namespace: nulldepends_on — if your schema adds a plays clause to a type from another skill, declare that skill in schema.depends_ondomain-thing, collection, note, artifact, fragment, person, etc. need no depends_onValidate a skill's namespace compliance:
uv run python .claude/skills/curation-skill-builder/skill_builder.py validate-namespace \
--skill-dir local_skills/<skill-name> 2>/dev/null
Audit all namespaces in the running database:
make db-audit
uv run emits a VIRTUAL_ENV warning to stderr. Always use 2>/dev/null when piping output to a JSON parser — never 2>&1, which merges the warning into stdout and breaks JSON parsing.
Before executing commands, read USAGE.md in this directory for the complete phase breakdown, design tracking workflow, schema templates, and documentation checklist.