Per-profile bots (system plus history, shared vault): create_bot with nicknames, /bots and /bot with resume, @mention one-turn routing filed in both histories. Unified retrieval: one trigger-synced FTS5 index over records, events, and audit with safe tokenized MATCH, porter stemming, BM25 rank, and marked snippets. New search tool with kind filters and graph expansion; recall, record_search, and audit rank through the same index. Sealed search without weakening the seal: each boot decrypts events into a :memory: FTS5 index (newest 10000, incrementally synced, never on disk), so sealed stores rank like plaintext ones. LIKE fallback kept for partial tokens. Documented in README under Sealed search with the researched alternatives (SQLCipher, blind indexes, SSE) and rejections. Also in this batch: sysinfo, create_skill, markdown renderer with colors, scheduler with subagent rule, --yolo/--auto, denial-loop fix, read-before-write guard, WAL plus timeouts, records/graph/spillover, audit time travel, self-backup and releases, lazy skill blueprints, smart tagging, profile isolation, lazy tool payload, install subsystem, and multi-profile rotation fix. 176 + 16 tests green.
238 B
238 B
AGENTS.md
Conventions
- Use plain
importandfromstatements in Python files. - Use the
.pyextension for Python source and test files. - Keep source and test files at the repository top level.
- Name test files
test_*.py.