v0.2.0
Install: uv tool install hypermnesic · PyPI 0.2.0 · Full changelog
Added
- Repository social-preview asset for the public GitHub presentation.
- Directory-submission prep for the official MCP Registry, awesome-mcp-servers, and
Obsidian community plugin directory. - PyPI publication decision memo for the one-command install gate.
- PyPI Trusted-Publishing release workflow (
.github/workflows/release.yml): OIDC,
no stored API token, triggered onv*.*.*tags or manual dispatch — enables
uv tool install hypermnesiconce the project's trusted publisher is configured
and0.1.0is published. - Launch-week first-contact response SLO checklist and baseline.
- Launch narrative and channel-specific post drafts tied to readiness evidence.
- Launch sequencing plan and public-launch retro template.
- GitHub Discussions welcome and public roadmap prep for the contribution funnel.
- Live GitHub Discussions links in README/docs for the welcome thread and public roadmap.
- Launch demo assets (
media/): a receipts-first promotion set. The README now leads
(above the fold) with the hero "receipt loop" GIF — an agent writes a memory through the
real MCPcommit_notetool,git logshows the real commit, and a fresh session recalls
and cites it — and the## Benchmarkssection embeds a committed LongMemEval chart
(judge-axis labeled, numbers fromharness/BENCHMARKS.md). Engine.tapesources + a
loopback MCP-client helper, a benchmark SVG, a connector montage, per-community carousels,
and a companion PKM fixture vault + recording setup live undermedia/, run against
disposable fixture vaults with a fixed committer identity, and pass a two-gate leak check:
the automatic text scan (scripts/preflight_public_scan.py, now also catching macOS
/Users/and/var/folders/paths) plus a manual frame-review checklist
(docs/guides/demo-asset-frame-review-checklist.md) with a sign-off log (media/.review-log.md). - Flagged binary captures (LS-1778): the demo set's deliberately-flagged binary renders,
now captured, frame-reviewed, and signed offpassinmedia/.review-log.md— the Claude Code
client GIF (live TUI → MCP → a realcommit_note), the companion read-only-proof composite, the
live-graph companion-hero GIF, the Obsidian marketplace stills +demo.gif(in the separate
companion repo), and the r/ObsidianMDobsidianmd-still.png; plus
media/companion/capture-obsidian-stills.sh(reproducible Obsidian-CLI capture, TCC-free via
dev:screenshot). Re-rendered the hero + index-recovery GIFs to fix a hidden-setup leak
(clearis a no-op in VHS's headless terminal). - MCP
read_note(path)read tool — fetches a located note's full markdown content by
repo-relative path, bounded to indexed notes (a../traversal, an absolute path, or a
non-note file returnsfound: falsewithcontent: null, never an out-of-vault read). glama.jsonserver-metadata file (maintainers) for the Glama MCP directory.
Changed
- GitHub repository description and topics were applied for the public release presentation pass.
- Directory-submission prep now reflects the current MCP Registry schema constraint,
the open awesome-mcp-servers PR, and the Obsidian PR permission handoff. - README and getting-started quickstart now install from PyPI (
uv tool install hypermnesic)
instead of a clone / git URL, now that0.1.0is published to PyPI. - README header shows a PyPI version badge (replacing the git-tag version badge); added PyPI
Trove classifiers topyproject.toml(Intended Audience, Python 3.11–3.13, AI / indexing
topics) for richer project metadata and a Python-versions badge from the next release. searchandhypermnesic_searchMCP tool descriptions are now full, self-describing
definitions (retrieval model, return shape, and when to use each) rather than one-line stubs,
raising the Glama Tool Definition Quality Score;hypermnesic_searchnow states it is the
prefixed alias ofsearch. A connector-quality test guards against regressing to terse
descriptions.- Every MCP tool parameter now carries a schema description (previously 0% coverage), so clients
and directory scorers see documented inputs — addressing the Glama TDQS "Parameters" dimension
across all read tools and the gatedcommit_notewrite tool. - README rewritten to lead with the use case and an unequivocal USP. A scenario-led hero
("One brain. Every AI. Yours.") opens above the receipt GIF; a new "Why it compounds" section
pairs the Capture → Curate → Recall → Compound flywheel illustration (media/engine/flywheel.jpg)
with the shared-brain argument; a "One endpoint, every client" section reuses the connector
montage; and an honest "How it's different" comparison (mem0/Zep, Hindsight, Honcho, a
database-backed brain) linksdocs/why-hypermnesic.md. The quick-start, how-it-works, and
benchmark reference depth is preserved below the narrative. docs/why-hypermnesic.mdgainsvs. Hindsight(own vector store; higher LongMemEval on a more
lenient judge axis) andvs. Honcho(complementary behavioural layer) entries.
Fixed
- A reindex no longer strands long-lived readers (LS-2539).
reindex_isolated
installs the rebuilt index withos.replace; a process that had already opened the
database kept its connection on the unlinked inode, so reads silently served a frozen
snapshot while writes failed withattempt to write a readonly database. On a
long-running MCP server that meant recall answering confidently from a stale index with
nothing to signal the drift.Indexnow records the file's(st_dev, st_ino)and
reopens when the path resolves to a different file — a missing file (an in-flight
rebuild) and an open transaction are deliberately not treated as swaps. commit_noteandrename_noteno longer report a landed commit as a failure. The
index projection runs after the git commit and push, where raising told the caller
nothing had been written — so an agent would write the same note again elsewhere, and
the audit entry for a real git write was skipped. An index failure past that point is
now a degraded success: the SHA reaches the caller, the audit entry is still appended,
and the newindex_degraded/degraded_reasonfields on thecommit_noteMCP output
say what happened. Guard refusals are unchanged and still returncommitted: false—
a refusal wrote nothing, which is a different outcome.- README: removed a duplicated hero "receipt loop" GIF (embedded twice after the launch-assets
merge) and activated the previously bare Docs-section links
(docs/unified-oauth-mcp-deploy-runbook.md,plugin/README.md,docs/plans/,
docs/threat-model-commit-note.md, the write-anywhere security review, and
implementation-notes.md).
Full diff: v0.1.0...v0.2.0