github vectorize-io/hindsight v0.8.3

8 hours ago

What's Changed

  • docs: changelog and blog post for v0.8.2 by @nicoloboschi in #2172
  • docs: add Memory Defense to the 0.8.2 blog post by @nicoloboschi in #2173
  • blog: Cursor persistent memory (editor + CLI in one post) by @benfrank241 in #2171
  • docs(models): register the nous provider so the Models page lists it by @r266-tech in #2128
  • docs(litellm): replace removed opinion fact-type with observation by @r266-tech in #2198
  • fix(search): use effective-time fallback (mentioned_at, occurred_end) for recency scoring by @r266-tech in #2197
  • Chore (opencode): drop utility re-exports from plugin entry by @mdbenito in #2193
  • fix(metrics): don't count a client-disconnect cancellation as a failed recall/reflect operation by @r266-tech in #2185
  • docs(reflect): align reflect_async docstring with read-only tool set by @kubaodias in #2200
  • feat(consolidation): add "shared" observation_scopes keyword by @nicoloboschi in #2202
  • fix(db): widen remaining live bank_id columns to TEXT on PostgreSQL (#2106 follow-up) by @r266-tech in #2175
  • fix(api): mental model delta refresh (prompt size, JSON, consolidation) by @oldschoola in #2170
  • feat(api): omit null fields from JSON responses where wire-safe by @nicoloboschi in #2204
  • feat(migrations): parallelize tenant schema migrations by @nicoloboschi in #2203
  • feat(retain): make structured-unit chunk limit configurable by @Sanderhoff-alt in #2139
  • feat(api): dry-run fact extraction endpoint (preview, no persistence) by @nicoloboschi in #2205
  • fix(ts-client): accept shared observation scope by @koriyoshi2041 in #2207
  • blog(gemini-spark): Gemini Spark persistent memory via MCP by @benfrank241 in #2208
  • feat(zapier): add Hindsight Zapier app (actions + REST Hook triggers) by @benfrank241 in #2119
  • feat(continue): add Continue.dev integration via HTTP context provider by @DK09876 in #2213
  • fix(skill-docs): convert all admonition keywords in the docs→skill generator by @r266-tech in #2218
  • fix(curation): drop the embedding column from invalidated_memory_units (#2209) by @nicoloboschi in #2210
  • feat(api): improve Chinese temporal query parsing by @Sanderhoff-alt in #2220
  • perf(api): index memory_links.bank_id on PostgreSQL by @zommiommy in #2223
  • fix(api): gate dry-run extraction behind the operation precheck by @r266-tech in #2211
  • fix(docs): deflake memories.py doc example (async-consolidation race) by @benfrank241 in #2152
  • test: fix flaky test-api shard (migration pg0 provisioning race) by @nicoloboschi in #2225
  • fix(mcp): give update_memory/invalidate_memory non-empty descriptions by @bluecrayon52 in #2215
  • test(control-plane): validate t() keys resolve against the i18n catalog by @nicoloboschi in #2232
  • feat(tags): officially surface tags_match=exact in UI, docs, and clients by @nicoloboschi in #2230
  • fix(migrations): merge two divergent alembic heads by @nicoloboschi in #2234
  • test: fix flaky test_llm_trace via leaked global recorder (#2229) by @nicoloboschi in #2231
  • revert(worker): trust schemas_with_pending_work() result, drop per-poll re-scan by @nicoloboschi in #2236
  • docs: update CLAUDE guidance by @Sanderhoff-alt in #2228
  • docs: fix stale documentation links by @Sanderhoff-alt in #2221
  • fix(control-plane): expose "shared" observation scope in the Add Document UI by @r266-tech in #2212
  • blog(obsidian): Chat With Your Obsidian Vault, grounded in your notes by @benfrank241 in #2237
  • feat(composio): add Composio integration (Hindsight memory as custom tools) by @benfrank241 in #2180
  • chore(control-plane): format bank-selector.tsx (lint drift from #2212) by @DK09876 in #2250
  • Add TypeScript client getVersion helper by @koriyoshi2041 in #2252
  • Strip reasoning tags on non-structured LLM output (and unclosed blocks) by @grimmjoww in #2195
  • fix(api): reject empty/whitespace content in dry-run extraction before the LLM call by @r266-tech in #2246
  • docs(embed): document control center commands by @r266-tech in #2151
  • docs(paperclip): document dynamicBankId / bankId / user granularity (#1761) by @r266-tech in #1803
  • Add Python client get_version helper by @nicoloboschi in #2256
  • fix(api): defer provider quota reset retries by @oldschoola in #2194
  • chore(ci): disable Dependabot version updates by @nicoloboschi in #2257
  • Honor CODEX_HOME for Codex auth.json location by @mdenil in #1874
  • fix(openclaw): always session-scope retained documents by @nicoloboschi in #2259
  • fix(claude-code-mcp): resolve venv interpreter in the Windows Scripts/ layout (#1758, 3a) by @eldar702 in #2066
  • claude-code: case-insensitive directoryBankMap matching on Windows by @eskild-boop in #2183
  • fix: template bank-id path segment in HTTP metric endpoint label (follow-up to #850) by @sireika in #2191
  • feat(api): add optional MarkItDown OCR support by @Sanderhoff-alt in #2145
  • fix(litellm): hard-cap completions with asyncio.wait_for so a hung call can't block forever by @kubaodias in #2224
  • log(consolidation): show call count + avg for each timing phase by @cdbartholomew in #2238
  • feat(mcp): add ToolAnnotations (read-only/destructive hints) to MCP tools by @yunanwg in #2243
  • fix(consolidation): handle single-value source_fact_ids from LLM by @haodonp in #2240
  • feat(extensions): expose Content-Length on PrecheckContext by @cdbartholomew in #2247
  • feat(metrics): expose async-operation queue + consolidation backlog as gauges by @MattJackson in #1987
  • fix(api): apply bank-config disposition + mission overlay in list_banks by @PathKnower in #2101
  • fix(openclaw): strip runtime metadata from memory content by @de1tydev in #1968
  • fix(mcp): omit reflect tool_trace/llm_trace from responses by default by @yunanwg in #2242
  • Add Gemini service tier config by @r266-tech in #2251
  • feat(embeddings): detect Intel XPU for local embedding acceleration by @nicoloboschi in #2260
  • docs: document MCP trace and precheck content length by @r266-tech in #2264
  • test(openclaw): fix agent_end hook tests after #1968 context change by @nicoloboschi in #2266
  • test(retain): fix broken quota-defer test config mock by @nicoloboschi in #2265
  • fix(retain): stop dropping chunks when an oversized doc splits into multi-chunk sub-batches by @nicoloboschi in #2269
  • Hide Windows netstat port probes by @koriyoshi2041 in #2263
  • Update integrations.json by @yugandhar-maram in #2268
  • docs(observations): stop claiming a per-observation freshness trend by @benfrank241 in #2271
  • feat(zed): add Zed editor integration (MCP context server + recall/retain rule) by @DK09876 in #2153
  • blog(freshness): Freshness-Aware Memory — knowing when a belief has gone stale by @benfrank241 in #2267
  • feat(openhands): add OpenHands integration (native MCP config + recall/retain rule) by @DK09876 in #2276
  • chore(deps): fix critical/high Dependabot alerts by @dcbouius in #2278
  • fix(tests) backsweep migration test pg0 isolation by @Sanderhoff-alt in #2282
  • fix(tests) S3 testcontainers port mapping race by @Sanderhoff-alt in #2283
  • fix(mcp): restore custom tool instructions by @Sanderhoff-alt in #2288
  • feat(metrics): instrument async worker completion path with operation metrics by @kubaodias in #2253

New Contributors

Full Changelog: v0.8.2...v0.8.3

Don't miss a new hindsight release

NewReleases is sending notifications on new releases.