Skip to content

v2.9.0

@queelius queelius tagged this 24 Apr 09:44
Highlights:
- feat: Textual multi-pane TUI `ctk tui` (browse + optional chat)
- refactor: flatten ctk/integrations/ — importers/, exporters/, taggers/, llm/, chat/, embeddings/ now live under ctk/
- refactor: simplify plugin discovery for built-in importers/exporters
- fix: multiple XSS sites in HTML exporter (innerHTML + user content)
- fix: duplicate_conversation crash (wrong ORM columns; duplicate definition)
- fix: Anthropic/JSONL importer substring matching without length-sort
- fix: tree multi-root silent corruption
- fix: LIKE wildcard escaping in search
- fix: DOT_PRODUCT similarity normalization
- fix: TUI /fork now truncates tree to ancestor path (matching help text)
- security: REST input bounds, filename sanitization, error-message sanitization,
  default bind to 127.0.0.1, 16 MiB payload cap, YAML size limit
- pkg: ship styles.tcss in wheel so TUI renders after pip install

Tests: 2343 unit tests passing, 0 regressions, 1 pre-existing skip.
Assets 2
Loading