-
feat: v0.7.0 — lessons, tool visibility, auto-consolidation, obsidian export, npx bootstrap (#82)
发布于
2026-04-04 16:57:01 +00:00 - feat: v0.7.0 — lessons, tool visibility, auto-consolidation, obsidian export, npx bootstrap
Five DX improvements based on competitive research against Mem0, Engram, CodeMem:
-
npx agentmemoryzero-config startup- New CLI bootstrap (src/cli.ts) auto-detects and starts iii-engine
- Tries
iiibinary first, falls back todocker compose up -d - Bundles iii-config.yaml and docker-compose.yml in dist/
-
Simplified MCP tool surface (7 core tools by default)
- AGENTMEMORY_TOOLS=all unlocks all 49 tools
- Default: save, recall, consolidate, forget, sessions, diagnose, lesson_save
- Call handler remains unfiltered — any tool callable by name
-
Auto-consolidation on session end
- CONSOLIDATION_ENABLED defaults to true (was false)
- Session-end hook: session/end → crystallize → consolidate → bridge sync
- Consolidation pipeline always registered (timer gated by config)
-
First-class lesson memory type with confidence decay
- Lesson interface: confidence (0-1), reinforcements, decayRate, source
- 5 functions: lesson-save, lesson-recall, lesson-list, lesson-strengthen, lesson-decay-sweep
- Dedup via SHA-256 fingerprint — duplicate saves strengthen existing
- Crystal lessons auto-flow into lesson system at confidence 0.6
- Daily decay sweep with parallel KV writes
-
Obsidian-compatible Markdown export
- Export to ~/.agentmemory/vault/ with YAML frontmatter + wikilinks
- MOC.md (Map of Content) index file
- Parallel KV reads, auto-export via OBSIDIAN_AUTO_EXPORT=true
Stats: 49 MCP tools, 99 REST endpoints, 573 tests passing
- docs: add AGENTS.md, fix tool/endpoint counts across README, plugin, cli
- Create AGENTS.md with strict consistency rules for MCP tools, REST
endpoints, versions, KV scopes, and audit operations - Fix MCP tool count: 38 → 41 across README.md (4 occurrences)
- Fix REST endpoint count: 93/95 → 99 across README.md and index.ts
- Fix plugin.json: version 0.6.1 → 0.7.0, tool count 5 → 41
- Fix cli.ts help text: 48+ → 41 MCP tools
- Fix README api.ts path reference → triggers/api.ts
- fix: address code review findings — consolidation guard, decay bug, async fs, export-import lessons
Inline fixes:
- Revert CONSOLIDATION_ENABLED to opt-in (=== "true"), matching original behavior
- Add early-exit guard in consolidation-pipeline handler when disabled
- Gate session-end crystallize+consolidation calls on CONSOLIDATION_ENABLED
- Fix lesson decay over-decay bug: add lastDecayedAt to Lesson, compute
incremental delta instead of reapplying full age every sweep run - Add LESSON_DECAY_ENABLED flag (default true) to gate the sweep timer
Outside diff fixes:
- Add lessons to export-import (export + import + replace cleanup)
- Log warning instead of swallowing obsidian auto-export errors
Nitpick fixes:
- Switch obsidian-export to async fs/promises (mkdir, writeFile)
- Add per-item try/catch in obsidian-export, return errors array
- Replace governance_delete with smart_search in ESSENTIAL_TOOLS (non-destructive default)
- Fix CLI whichBinary for Windows (uses "where" on win32)
- Use dynamic port in CLI error message instead of hardcoded 3111
- Return 201 for newly created lessons, 200 for strengthened
- Wrap lesson audit calls in try/catch so audit failure doesn't surface
- Fix build script to not swallow tsdown failure
- Remove exact tool count from test, use >=41 + uniqueness + required names
- Add test/consistency.test.ts: validates version, tool count, README consistency
- Add isConsolidationEnabled mock to consolidation-pipeline test
579 tests passing (573 original + 6 new consistency checks)
- fix: guard remaining audit calls, correct endpoint count, add CI + npm publish
Review fixes:
- Wrap lesson_recall and lesson_strengthen audit calls in try/catch
- Fix REST endpoint count: 99 → 100 (verified via grep) across index.ts,
README.md, and AGENTS.md - Use regex in consistency test for README assertions (flexible phrasing)
- Add consolidation gate tests: disabled returns early, force=true bypasses
CI/CD:
- Add .github/workflows/ci.yml — test on Node 18/20/22
- Add .github/workflows/publish.yml — auto-publish to npm on GitHub release
(uses NPM_TOKEN secret + provenance)
Nitpick:
- Single-char term filter (t.length > 1) kept intentionally — prevents noise
from single-letter matches; documented in AGENTS.md if needed
581 tests passing
- fix(ci): add --legacy-peer-deps for zod v3/v4 peer conflict
@anthropic-ai/claude-agent-sdk@0.2.56 requires zod@^4.0.0 as a peer
dependency but the project uses zod@^3.23.0. The lock file resolves
this locally but npm ci is strict about peer deps in CI.- fix(ci): drop Node 18 from matrix — tsdown requires Node 20+
tsdown/rolldown uses node:util.styleText which is only available in
Node 20.12+. Updated engines field to >=20.0.0 to match.- fix(ci): add inlineOnly: false to tsdown config, target node20
tsdown errors on CI with "Consider adding inlineOnly option" when
dependencies are bundled. Setting inlineOnly: false suppresses this.
Also updated target from node18 to node20 to match engines field.下载附件