Release v0.8.0
What's New in v0.8.0
Added
- PUT /memory β partial memory updates (#676) β Update any combination of content, tags, metadata, importance, pinned state, or memory_type on an existing memory. Content changes trigger embedding regeneration. Replaces the old pattern of forget+remember.
- POST /memory/pin and POST /memory/importance endpoints (#660) β Dedicated endpoints for pin/unpin toggle (accepts
pinnedboolean) and importance score setting (0.0β1.0). Both return the updated memory on success. - Room β Document junction table β schema v15 (#689, #692) β New
room_documentstable links rooms to documents bidirectionally. Endpoints:POST /room/document/list,PUT /room/document/add,DELETE /room/document/remove,POST /doc/room/list. - memoryβdocument cross-entity linking via [[doc-slug]] wikilinks (#691) β Memories containing
[[doc-slug]]patterns are auto-wired to document references. Query endpoints:POST /memory/doc-refs(doc slugs for a memory) andPOST /doc/mem-refs(memory IDs referencing a doc). - Schema v14: memory_type added to FTS5 index (#662, #664) β FTS5 full-text search now indexes
memory_type, enabling keyword search by type. Migration rebuilds the FTS5 index from existing memories. - Trust scoring with feedback API (#718, #725) β
uteke feedback helpful <id>(+0.05 importance) anduteke feedback unhelpful <id>(-0.10 importance). HTTP endpoint:POST /memory/feedbackwith{ id, feedback: 'helpful'|'unhelpful' }. Importance clamped to [0.0, 1.0]. - Jaccard token similarity as post-RRF reranking signal (#719, #723) β Token-level Jaccard similarity applied after RRF score normalization in
recall_rrf. Configurable viajaccard_weightin config (default 0.0, opt-in). Module:jaccard.rs. - Auto-contradiction scan as Dream pipeline phase (#720, #726) β New Phase 4 (Contradict) in Dream maintenance pipeline. Scans top-200 recently updated memories for pairs with high tag overlap (Jaccard β₯ 0.3) + low embedding cosine similarity (β€ 0.6). Creates
contradictsgraph edges (older β newer). Pipeline order: lint β backlinks β dedup β contradict β orphans β compact β verify. - Cross-entity enrichment in recall (#703, #704, #705) β
--enrichflag andenrichparameter on recall endpoints add cross-entity links to results. Room summaries includereferenced_documents.POST /memory/doc-refsandPOST /doc/mem-refsfor cross-entity queries. - Codecora theme adoption (#702) β VitePress docs now use
@codecora/theme(Catppuccin Mocha, new base/uteke/docs/). - Room operations test suite (#701) β Comprehensive tests for room CRUD and room-document junction operations.
- Cross-entity integration tests (#706) β Integration tests covering memoryβdocument linking, room-document junction, and wikilink resolution.
Changed
- Entity/category filter pushed into core recall (#667) β Entity and category metadata filters now run inside the core recall candidate loop instead of post-fetch amplification. Eliminates the 10x fetch overhead for filtered queries.
- Full memory detail fields in UnifiedSearchResult (#688) β Unified search results now include complete memory metadata (tags, importance, pinned, namespace, memory_type, source info) directly in the response, eliminating secondary lookups.
- Salience/recency boosts enabled by default (#721, #722) β Default weights changed from 0.0 to 0.1 for both salience and recency. CLI flags now tri-state:
--salience/--recency(explicit),--no-salience/--no-recency(disable), omit (default 0.1). No longer opt-in. - Dream pipeline expanded to 7 phases β Added Contradict phase between Dedup and Orphans.
all_in_order()returns 7 phases. CLI--phasesfilter acceptscontradict. - Docs restructured (#716) β Split getting-started into separate install/comparison/feature pages. Improved navigation and content organization.
Deprecated
- hermes-memory-provider extension (#724) β The Hermes memory provider plugin is deprecated in favor of direct HTTP transport. Use
uteke serve+ HTTP API instead of the plugin wrapper.
Fixed
- Search access count tracking (#687) β Search operations now correctly increment the access count on recalled memories, improving tier scoring accuracy.
- Windows usearch buffer overflow (#684, #685) β usearch save/load now serializes via in-memory buffer first, avoiding C++
fopenfailures on Windows due to MAX_PATH limits and file lock conflicts. - Metadata fields propagation (#682, #683) β Metadata fields set via
POST /rememberare now consistently propagated through all downstream operations (recall, search, export, contradiction detection). - Cross-entity linking bugs (#690) β Fixed edge cases in
[[doc-slug]]resolution where slugs with special characters or missing documents produced incorrect edges. Fixed O(n) reverse scan inget_related(). - Room-document validation (#698, #700) β Room-document junction endpoints now validate that both room_id and doc_slug exist before linking/unlinking.
- Importance endpoint error dispatch (#697, #699) β Fixed
POST /memory/importanceto matchError::Validationinstead of string matching.
Dependencies
- Bumped
usearch2.25.3 β 2.26.0 (#679) - Bumped
uuid1.23.4 β 1.23.5 (#680) - Bumped
actions/setup-node6 β 7 (#678)
π¦ Binaries
Each archive contains three binaries:
utekeβ CLI tooluteke-serveβ HTTP server daemonuteke-mcpβ MCP server (stdio + HTTP)
| Platform | File |
|---|---|
| Linux (x86_64) | uteke-x86_64-unknown-linux-gnu-v0.8.0.tar.gz |
| Linux (ARM64) | uteke-aarch64-unknown-linux-gnu-v0.8.0.tar.gz |
| macOS (Apple Silicon) | uteke-aarch64-apple-darwin-v0.8.0.tar.gz |
| Windows (x86_64) | uteke-x86_64-pc-windows-msvc-v0.8.0.zip |
π Quick Start
# Quick install (Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/codecoradev/uteke/main/install.sh | sh
# Pin a specific version
UTEKE_VERSION= curl -fsSL https://raw.githubusercontent.com/codecoradev/uteke/main/install.sh | sh
# Store a memory
uteke remember "Important context" --tags project
# Recall by meaning
uteke recall "what was that context?"
# Start server for fast AI agent access
uteke-serve --port 8767Full changelog: https://github.com/codecoradev/uteke/blob/main/CHANGELOG.md