Map Modules
Use when bootstrapping a contract tree — either extracting module contracts from an existing codebase or designing a module tree greenfield before writing code. Produces per-module `CONTRACT.md` files and the `.contract-tree/tree.md` index.
Contract Tree
Use when working in a codebase that has (or should have) a contract tree — a `.contract-tree/tree.md` index and per-module `CONTRACT.md` files. Explains the module-tree + boundary-contract model and routes to map-modules, change-with-contracts, or check-drift.
Check Drift
Use when auditing whether a contract tree still matches the code — e.g. after a large merge or when a `CONTRACT.md` is suspected stale. Checks that entrypoints still exist, signatures match declared I/O, and declared upstreams match real imports; reports suspected-stale contracts and code modules missing a contract. Report-only, never auto-fixes.
Change With Contracts
Use when about to change code in a repo that has a contract tree. Locates the affected module via `.contract-tree/tree.md`, classifies whether the change touches the module boundary, computes the downstream blast radius, and requires an explicit preserve-vs-cascade decision from the user before touching boundary-affecting code.