willoscar/taxonomy-builder
| Build a 2+ level taxonomy (`outline/taxonomy.yml`) from a core paper set and scope constraints, with short descriptions per node.
npx skills add https://github.com/WILLOSCAR/research-units-pipeline-skills --skill taxonomy-builder
Build outline/taxonomy.yml from papers/core_set.csv.
P0 compatibility note:
outline/taxonomy.yml, YAML list, >=2 levels, concrete descriptions).assets/domain_packs/*.yaml instead of Python prose.scripts/run.py stays a deterministic scaffold/helper: detect domain pack -> load pack when available -> otherwise fall back to the generic builder.references/overview.mdreferences/taxonomy_principles.mdreferences/domain_pack_<domain>.md and assets/domain_packs/<domain>.yamlreferences/archetypes_generic.mdreferences/examples_good.md and references/examples_bad.mdCurrent compatibility packs:
llm_agentsgen_imageembodied_airag_evaluationCreate outline/taxonomy.refined.ok only after reviewing a manually refined taxonomy. The marker is honored only while it is newer than the taxonomy, its upstream evidence, and the generator; stale markers are removed and the prior taxonomy is backed up before regeneration.
papers/core_set.csv (required)papers/papers_dedup.jsonlDECISIONS.md, GOAL.md, queries.mdoutline/taxonomy.ymlassets/taxonomy_schema.json: machine-readable shape for domain packs / output expectationsassets/domain_packs/*.yaml: compatibility domain packs for supported domainsUse scripts/run.py only for deterministic help:
GOAL.md / queries.md explicitly match its detection contractRefine the generated taxonomy before marking the unit DONE if:
Overview, Benchmarks, Open Problems, Misc)uv run python .codex/skills/taxonomy-builder/scripts/run.py --helpuv run python .codex/skills/taxonomy-builder/scripts/run.py --workspace <workspace>When running in compatibility mode, scripts/run.py currently reads:
papers/core_set.csv as the required corpus inputpapers/papers_dedup.jsonl when present for generic corpus signalsGOAL.md and queries.md as the authoritative domain-pack selection intent; corpus term co-occurrence cannot override themuv run python .codex/skills/taxonomy-builder/scripts/run.py --workspace <workspace>--workspace <dir>--top-k <int>--min-freq <int>--unit-id <id>--inputs <a;b;...>--outputs <a;b;...>--checkpoint <C*>uv run python .codex/skills/taxonomy-builder/scripts/run.py --workspace <workspace>GOAL.md, queries.md, and the pack detect rules before changing Python.outline/taxonomy.yml already contains a real non-placeholder taxonomy, the script intentionally returns without overwriting it.Take willoscar/taxonomy-builder from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.