Quarto Kit Skill
Usage: Load this file into Claude Code (via CLAUDE.md pointer) or paste into an LLM session when listing, installing, or expanding templates from this repo’s catalog.
This skill consumes the same source of truth as the CLI (scripts/qk):
| Artifact | Role |
|---|---|
catalog/templates.yaml |
Source of truth (edit via PR) |
catalog/TEMPLATES.md |
Generated human-readable catalog |
scripts/qk |
CLI mirroring these operations |
catalog/drafts/ |
Human-review-only candidate drafts |
Do not hardcode the template inventory in this skill. Always load catalog/templates.yaml (or run python3 scripts/qk list / show).
Licenses: documentation CC BY-SA 4.0 (LICENSE); code MIT (LICENSE-CODE). No PHI in templates, drafts, or installs.
1) Goals
- Document what templates this repo includes in a reviewable, PR-friendly source.
- Keep that source expandable without forking the skill or CLI inventory.
- Offer both a CLI and an agent skill that share the YAML catalog.
- Optionally propose candidates from awesome-quarto for human review only (never auto-merge into
templates.yaml).
2) Load the catalog (required)
Before answering inventory questions:
python3 scripts/qk list
python3 scripts/qk list --tag quarto
python3 scripts/qk show <id>Or read catalog/templates.yaml directly. Each entry has:
id,title,description,path,tags,kind(file|directory),when_to_use
If YAML and catalog/TEMPLATES.md disagree, trust YAML and run python3 scripts/qk update-docs, then fix via PR.
3) Operations (mirror CLI)
List
python3 scripts/qk list
python3 scripts/qk list --tag claude-codeShow
python3 scripts/qk show ontology-scaffoldInstall
Copy a catalog entry to a destination. Refuses overwrite unless --force.
python3 scripts/qk install claude-md-project ./CLAUDE.md
python3 scripts/qk install settings-local-project ./.claude/settings.local.json
python3 scripts/qk install ontology-scaffold ./.claude-ontology-scaffold
python3 scripts/qk install research-paper-starter-pack /tmp/demo
python3 scripts/qk install research-paper-starter-pack /tmp/demo --force # overwriteAgent rule: if the destination exists, stop and ask before using --force.
Check / update docs
python3 scripts/qk check # fails if TEMPLATES.md out of sync or paths missing
python3 scripts/qk update-docs # regenerate catalog/TEMPLATES.md from YAMLImport candidates (draft only)
python3 scripts/qk import-candidates
# writes catalog/drafts/awesome-quarto-candidates-<UTC>.mdNever promote draft stubs into templates.yaml without an explicit human request and a PR.
4) Expand the catalog (PR workflow)
- Add or edit an entry in
catalog/templates.yaml. - Ensure
pathexists undertemplates/(file or directory). - Run
python3 scripts/qk update-docs. - Run
python3 scripts/qk check. - Open a PR describing the template, tags, and when_to_use.
- CI runs
scripts/qk check— must pass before merge.
For external ideas (e.g. awesome-quarto):
python3 scripts/qk import-candidates- Human reviews
catalog/drafts/... - Selected items get real template paths + a PR into
templates.yaml - Never auto-merge drafts
5) Agent playbook
When the user asks what templates exist:
- Load catalog (CLI or YAML) — do not recite a memorized list.
- Filter by tag or
when_to_useif they described a goal. - Recommend an
idand show install command.
When installing:
- Confirm destination.
- Run
installwithout--forcefirst. - On refuse-overwrite error, report and wait.
When expanding:
- Draft YAML stub.
- Remind them to run
update-docs+check+ PR. - Point at licenses and PHI rule.
6) Quick reference
| Need | Command |
|---|---|
| Inventory | python3 scripts/qk list |
| Details | python3 scripts/qk show <id> |
| Copy template | python3 scripts/qk install <id> [dest] [--force] |
| Validate | python3 scripts/qk check |
| Regen docs | python3 scripts/qk update-docs |
| External drafts | python3 scripts/qk import-candidates |