All notable changes to this project will be documented in this file.
anatomize pack --prefix standard|minimalto control pack prefix verbosity (token overhead vs guidance).anatomize pack --explain-selectionto write a deterministic selection report for debugging include/ignore/slice behavior.
- Hybrid mode now supports markdown/plain output (JSONL is optional, and required only for
--fit-to-max-output). - Pack ignore rules now retain rule provenance (default vs standard ignore files vs CLI) for selection reporting.
- Binary sniffing reads only a small prefix for performance (instead of reading entire files).
- Dependency-closure failures now include an import chain for faster debugging.
- CI Pyright job avoids invoking commands that require an LSP transport without
--stdio.
- Multi-source skeleton workflows via
.anatomize.yaml(per-sourcelevel, output subdirectories, and shared defaults). anatomize init --preset standardto scaffold the common pattern “src detailed, tests minimal”.- Config-driven
anatomize generate|validate|estimate(single command operates on all configured outputs).
.anatomize.yamlschema now usessources: [{path, output, level, ...}]and writes into a rootoutputdirectory.
anatomize generate: deterministic skeleton maps (hierarchy/modules/signatures) with YAML/JSON/Markdown outputs and embedded schemas.anatomize validate: strict validation of skeleton outputs with optional--fix.anatomize estimate: token estimation for skeleton outputs.anatomize pack: deterministic review bundles with include/ignore filtering, dependency slicing, compression, and token diagnostics.- Pack output formats: Markdown, plain text, JSON, XML, and JSONL (stream-friendly).
- Pack safety/limits:
--content-encoding,--max-output, and--split-output. - Pack slicing: forward dependency closure (
--entry --deps), reverse import closure (--reverse-deps), and optional Pyright-backed--usesslicing. - Pack hybrid mode: JSONL bundles with per-file
meta|summary|contentrepresentations and deterministic--fit-to-max-outputselection tracing.
- CI for linting, typechecking, tests, builds, and optional Pyright e2e verification.