Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Glossary

Terms used throughout this book that are not part of ddl’s own CLI surface.

TermMeaning
Managed toolA tool ddl can install, configure, and upgrade — listed by ddl catalog and in Ecosystem Development.
Install-only toolA managed tool whose state lives outside .ddl/ (nothing to migrate): bd, openspec, incitaciones, turu.
.ddl/ directoryThe single backing store for tool configs and ddl’s manifest (manifest.json, config.toml) at a repository root.
Symlink farmPhase-1 migration layout: a tool’s legacy config path (.wai/, .dont/, …) becomes a symlink pointing into .ddl/<tool>/, which holds the real files.
Root pollutionScattering per-tool config directories across a repository root instead of consolidating them under .ddl/.
Init cascadeThe ordered run of each tool’s own init command during ddl init (e.g. openspec before ah), with resume-until-green semantics.
Gatesddl init --gates wiring: lefthook pre-commit/pre-push checks, .gitignore entries for tool data dirs, and beads no-db stamping.
Hard gatesLefthook hooks that fail the commit/push (not merely warn) when a check fails.
Smoke gateCI end-to-end verification that release binaries install and run on all three platforms (macOS, Linux, Windows).
Dogfoodingddl (and the charly-vibes fleet) running its own conventions and tools on itself; enforced by conformance tests.
GenesisShared infrastructure crate (genesis-vibes/genesis) used by ecosystem tools for CLI scaffolding, completions, and version management.
Binary name / crate nameThe executable you run vs. the package you install (ah vs. espectacular, turu vs. whisper-vibes). See the alias table in Commands.