What's Changed
- docs: changelog and blog post for v0.8.1 by @nicoloboschi in #2080
- chore(integrations): apply CI ruff formatting to haystack + roo-code tests by @nicoloboschi in #2082
- blog: Cline persistent memory (lifecycle hooks, no MCP) by @benfrank241 in #2085
- docs(icons): use real Cline brand mark in place of placeholder by @benfrank241 in #2086
- feat(cursor-cli): ship as pip-installable hindsight-cursor-cli package by @benfrank241 in #2083
- feat(cline): ship as pip-installable hindsight-cline package by @benfrank241 in #2088
- feat(api): support gemini-embedding-2 family (per-input embedding) by @nicoloboschi in #2087
- feat(cursor): add Hindsight memory plugin for Cursor by @DK09876 in #866
- fix(obsidian): mirror plugin to a dedicated repo instead of releasing in the monorepo by @benfrank241 in #2078
- fix(ci): authenticate the obsidian mirror push with OBSIDIAN_DIST_TOKEN by @benfrank241 in #2091
- fix(ci): override git auth with OBSIDIAN_DIST_TOKEN for obsidian mirror push by @benfrank241 in #2093
- blog: Hindsight is the fastest-growing open-source AI memory project ever by @cdbartholomew in #2092
- chore(cursor): fix ruff-format drift in cursor integration tests by @benfrank241 in #2095
- docs(integrations): add Gemini Spark integration page + grid entry (#1779) by @r266-tech in #1943
- fix(ci): npm provenance 409 guard + add Obsidian MIT LICENSE by @benfrank241 in #2094
- feat(ui): export constellation as a shareable SVG poster by @nicoloboschi in #2099
- feat(api): add Gemini Batch API support for retain fact extraction by @nicoloboschi in #2089
- Support service_tier selection for Amazon Bedrock by @mobilinkd in #2098
- fix(reflect): carry directives + language rule into final synthesis prompt by @nicoloboschi in #2100
- feat(api): per-bank LLM connectivity probe (#2034) by @nicoloboschi in #2084
- docs(models): add Gemini Embedding 2 to Google models by @r266-tech in #2090
- blog: add truncate markers to oh-my-pi and 10k-stars posts by @benfrank241 in #2065
- refactor(memory-defense): per-bank regex defense, webhooks, drop dead surface by @nicoloboschi in #2077
- feat(providers): add native Nous Portal provider (Codex-style OAuth, no hermes_cli dep) by @nicoloboschi in #2102
- feat(api): per-bank provider cost attribution via OpenAI user field by @sireika in #1965
- feat(obsidian): grounded-note citations, collapsed-by-default, persisted layout, inline depth by @benfrank241 in #2104
- feat(embed): seed .env configs from bundled .env.example template by @nicoloboschi in #2105
- fix(obsidian): clear community-store review for 0.1.2 + asset attestations by @benfrank241 in #2107
- feat(memory): reversible curation — edit / invalidate memory units by @nicoloboschi in #1976
- fix(cli): parse get-memory response correctly by @nicoloboschi in #2111
- fix(api): widen history bank_id to TEXT on PostgreSQL (#2106) by @nicoloboschi in #2110
- blog: Flowise persistent memory (three Tool nodes for any chatflow) by @benfrank241 in #2108
- fix(docs): read observation history before curating facts in memories.py by @DK09876 in #2120
- refactor(haystack): rename HindsightToolset -> HindsightMemoryWrapper by @DK09876 in #2118
- fix(migrations): catch CommandError-wrapped ResolutionError in rolling-deployment skip by @bionicbutterfly13 in #2117
- fix(api): cancel abandoned recall & reflect via cooperative cancellation token by @nicoloboschi in #2127
- docs: flag Intel (x86_64) macOS as slim-only in supported-platforms grid (#2115) by @nicoloboschi in #2129
- feat(retain): chunk JSONL at line boundaries by @nicoloboschi in #2126
- chore(embed): drop unused HINDSIGHT_EMBED_BANK_ID + fix HINDSIGHT_EMBED_LLM_* docs by @nicoloboschi in #2130
- fix(api): make recall/reflect disconnect cancellation actually work (behind BaseHTTPMiddleware) by @nicoloboschi in #2131
- fix(docs): credit Cursor CLI integration to its community author (@Korayem) by @benfrank241 in #2109
- docs: remove broken gitcgr code-graph badge from README by @benfrank241 in #2133
- feat(embed): local control center web app by @nicoloboschi in #2132
- chore: remove dead code and stale config by @Sanderhoff-alt in #2135
- feat(consolidation): per-scope observation limits by @nicoloboschi in #2140
- feat(observations): enumerate + filter + visualize observation scopes by @nicoloboschi in #2149
- blog: 763,365 downloads in 30 days: Hindsight crosses 1M by @benfrank241 in #2134
- docs(superagent): add prerequisites to integration quick start by @benfrank241 in #2137
- docs(integrations): use the Gemini logo for Gemini Spark by @benfrank241 in #2146
- feat(agent-framework): Hindsight memory for Microsoft Agent Framework (no MCP) by @benfrank241 in #1989
- blog: Haystack persistent memory (drop-in tools + auto-recall wrapper) by @benfrank241 in #2147
- feat(memory-defense): accept full 7-detector vocabulary in parser by @chrislatimer in #2142
- fix(test): bump hierarchical-config count for observation_scope_limits (unblocks test-api) by @DK09876 in #2156
- fix(webhook) missing fields in payload by @chrislatimer in #2164
- chore(ci): enforce unused imports/vars + advisory dead-code scan by @nicoloboschi in #2144
- fix(api): normalize torch default dtype after concurrent model init (#2162) by @nicoloboschi in #2167
- docs(api): list all three supported webhook event types by @benfrank241 in #2155
- fix(consolidation): honor an observation scope limit of 0 (no new observations) by @r266-tech in #2163
- fix(control-plane): stop double-fetching graph data on bank view by @nicoloboschi in #2168
New Contributors
- @mobilinkd made their first contribution in #2098
- @sireika made their first contribution in #1965
- @bionicbutterfly13 made their first contribution in #2117
Full Changelog: v0.8.1...v0.8.2