v0.13.0 — the LLM concept layer is the default
Tesserae is an LLM wiki, so tesserae compile now builds the concept/claim layer by default.
--extractor llm is the default. Compile reads each doc through your configured provider — codex / claude / Anthropic API, per llm_provider — via the same client session extraction uses (no more Claude-only path). --extractor deterministic is the explicit byte-stable opt-out (CI / reproducible). No default timeout — a big design doc runs to completion instead of being silently truncated. Provider-neutral flags --llm-provider/--llm-model/--llm-include/--llm-limit (the claude-cli/--claude-* names still work as deprecated aliases). Graceful: no backend → deterministic + warn; a per-doc backend error falls back to deterministic for that doc instead of aborting the compile; content-keyed caching reuses unchanged docs.
tesserae compile # LLM concept layer, your provider
tesserae compile --extractor deterministic # structural / byte-stable / key-free
tesserae compile --extractor selective-llm --llm-include 'docs/**/*.md' --llm-limit 20Faster federated ask — the assembled cross-project graph is memoized in-process, keyed on each member's graph-file signature so it self-invalidates the moment any member recompiles. Skips ~0.6s of re-assembly per repeat query on a real 6-project / 22.6k-node federation.
Upgrading: the one behavior change is that compile does LLM extraction by default; pass --extractor deterministic for the old structural-only behavior (and a machine with no provider already falls back to it automatically).
Full notes: https://github.com/ca1773130n/Tesserae/blob/main/docs/release-notes/v0.13.0.md