Dev-only scripts. Nothing here is imported by the crates, and nothing here imports them.
Each script is self-contained: it declares its own dependencies inline, so uv run needs no
environment set up. Every one is fronted by a just recipe — nobody should have to remember a
path or a flag.
| Script | Recipes | Does |
|---|---|---|
docs.py |
just docs-lint, docs-index, docs-check, docs-drift, docs-touched, docs-graph |
Maintains _docs/: the mechanical checks, the generated catalogue and code map, the drift queue, and the map from a diff to the documents it obliges you to update |
excalidraw.py |
just diagram |
Converts, validates and renders the compact diagram format the wireframes are authored in |
icons.py |
just icons-check, icons-sheet, icons-variants, icons-adopt, icons-audit, icons-dupes |
Keeps the icon set in assets/icons/ coherent: the registry against the files, the SVG spec, and the review sheets an agent looks at while drawing one — written to the ignored assets/icons/preview/ |
webassets.py |
just web-assets, web-assets-verify, web-assets-drawio, web-assets-verify-drawio |
Snapshots a web-panel tenant's offline mirror and writes the expected SHA-256 of every file as generated Rust the host verifies downloads against — Excalidraw's own dist/prod plus its transitive +esm closure from jsDelivr's npm CDN (--tenant excalidraw, the default), or draw.io's src/main/webapp/ from jsDelivr's GitHub CDN (--tenant drawio) |
teamsim/teamsim.py |
just teamsim |
Renders the teams graph's block-positioning algorithms as PNGs — a port of crates/kubiq/src/state/layout.rs plus the incremental adaptive arrangement, the readability metrics, and the scenarios in _tools/teamsim/scenarios/ that are also the sink's presets |
icns.py |
just icns, just bundle |
Builds the macOS application icon from the logo in assets/ — the ten representations an .iconset needs — through iconutil |
tape-subagents.py |
just tape-subagents, just tape-subagents-json |
Reads a Kubiq tape of a Claude Code conversation and says when each subagent spawned, when it stopped working, when it was marked ended — the background-delegate lag between those last two — alongside the fan-out, the timeline and the per-subagent token spend |
What the check ids mean and what to do about each is in _docs/_meta/librarian.md. The diagram
format is specified in _docs/tech/diagram-format.md. The icon rules and the drawing loop are in
the kubiq-icons skill.
Give it inline uv script metadata (PEP 723), add a just recipe with a one-line comment above it — that
comment is what just --list prints — and add its row to the table above.