Kits and packs
No. 011A knowledge base starts from a kit: the generic starter kit, or a team’s own. A kit can add layer packs: the architecture pack is the first.
The kit
Section titled “The kit”A kit is the contract between The Cube and a knowledge base. Its kit.yml, at
the root of the knowledge base, says what the knowledge base holds and how to
check it:
- the kinds of files (module specs, sub-specs, decision records and more), where each kind lives, and its id;
- the lifecycles: the states a spec can be in, and what each move between states needs;
- the edges: which fields reference other files or nodes;
- the checks: the severity of each of the engine’s own checks, and the kit’s own checks, such as the starter kit’s Python validator;
- the version range of
cubethat understands the kit, and the versions of the tool programs it needs.
cube check runs the engine’s checks with the kit’s settings, then the kit’s
own checks. The finding codes page shows the
severity the starter kit gives each engine check.
The starter kit
Section titled “The starter kit”The starter kit 0.1.0 (kit-starter-0.1.0.tar.gz in every release) is a
generic knowledge base to start from:
- zero findings;
- Claude Code skills that fill its skeletons: SaaS features, a design system, conventions and architecture decision records;
- its checks, which need Python 3.10 or later with PyYAML 6.
The quick start starts a knowledge base from it.
Layer packs
Section titled “Layer packs”A pack adds a layer to a kit. A pack only adds: it never changes the kit’s
classification, export rules, paths or checks. Adding a pack changes no
existing file of the kit except the packs: line of kit.yml and the
rendered cube skill.
Download a pack’s archive from the release, extract it, and add it from the extracted folder:
tar -xzf pack-architecture-0.1.0.tar.gzcube pack add ./pack-architecture-0.1.0cube pack listcube pack add copies the pack’s files, declares the pack in kit.yml and
renders the cube skill again. It does not commit: review the change and commit
it yourself. It refuses links, a hooks/ folder, unsafe paths and name
clashes, and then writes nothing.
cube pack remove architecture takes the pack out again. That is a rule
change: commit it with a rule-change act (the cube skill describes it), or the
hooks refuse the commit. Hooks and the ratchet
says why.
Agent guidance in kits and packs
Section titled “Agent guidance in kits and packs”The cube command and its git hooks work with any agent that runs shell
commands. The guidance in the kits and packs (skills, helper agents and slash
commands) uses Claude Code’s .claude/ layout for now. Other agents get the
checks and the hooks, but they may not load that guidance on their own.
Archives in the alpha
Section titled “Archives in the alpha”The kit and pack archives are plain archives, not yet signed bundles. Check a
download against its .sha256 file, or against sha256.sum, on the
releases page.