@agentmemory/agentmemory 0.7.2 → 0.7.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +4 -4
- package/README.md +46 -73
- package/dist/cli.mjs +3 -3
- package/dist/index.mjs +484 -6
- package/dist/index.mjs.map +1 -1
- package/dist/{src-1fTKFEtN.mjs → src-DP8JSXkx.mjs} +485 -7
- package/dist/src-DP8JSXkx.mjs.map +1 -0
- package/dist/standalone.mjs +42 -3
- package/dist/standalone.mjs.map +1 -1
- package/package.json +10 -1
- package/plugin/.claude-plugin/plugin.json +2 -2
- package/plugin/scripts/notification.d.mts +1 -0
- package/plugin/scripts/notification.mjs.map +1 -0
- package/plugin/scripts/post-tool-failure.d.mts +1 -0
- package/plugin/scripts/post-tool-failure.mjs.map +1 -0
- package/plugin/scripts/post-tool-use.d.mts +1 -0
- package/plugin/scripts/post-tool-use.mjs.map +1 -0
- package/plugin/scripts/pre-compact.d.mts +1 -0
- package/plugin/scripts/pre-compact.mjs.map +1 -0
- package/plugin/scripts/pre-tool-use.d.mts +1 -0
- package/plugin/scripts/pre-tool-use.mjs.map +1 -0
- package/plugin/scripts/prompt-submit.d.mts +1 -0
- package/plugin/scripts/prompt-submit.mjs.map +1 -0
- package/plugin/scripts/session-end.d.mts +1 -0
- package/plugin/scripts/session-end.mjs.map +1 -0
- package/plugin/scripts/session-start.d.mts +1 -0
- package/plugin/scripts/session-start.mjs.map +1 -0
- package/plugin/scripts/stop.d.mts +1 -0
- package/plugin/scripts/stop.mjs.map +1 -0
- package/plugin/scripts/subagent-start.d.mts +1 -0
- package/plugin/scripts/subagent-start.mjs.map +1 -0
- package/plugin/scripts/subagent-stop.d.mts +1 -0
- package/plugin/scripts/subagent-stop.mjs.map +1 -0
- package/plugin/scripts/task-completed.d.mts +1 -0
- package/plugin/scripts/task-completed.mjs.map +1 -0
- package/.claude-plugin/marketplace.json +0 -14
- package/.github/workflows/ci.yml +0 -22
- package/.github/workflows/publish.yml +0 -28
- package/assets/banner.png +0 -0
- package/assets/demo.gif +0 -0
- package/assets/demo.mp4 +0 -0
- package/benchmark/QUALITY.md +0 -73
- package/benchmark/REAL-EMBEDDINGS.md +0 -67
- package/benchmark/SCALE.md +0 -110
- package/benchmark/dataset.ts +0 -293
- package/benchmark/quality-eval.ts +0 -643
- package/benchmark/real-embeddings-eval.ts +0 -405
- package/benchmark/scale-eval.ts +0 -398
- package/dist/src-1fTKFEtN.mjs.map +0 -1
- package/src/auth.ts +0 -12
- package/src/cli.ts +0 -251
- package/src/config.ts +0 -221
- package/src/eval/metrics-store.ts +0 -65
- package/src/eval/quality.ts +0 -51
- package/src/eval/schemas.ts +0 -124
- package/src/eval/self-correct.ts +0 -28
- package/src/eval/validator.ts +0 -31
- package/src/functions/actions.ts +0 -288
- package/src/functions/audit.ts +0 -61
- package/src/functions/auto-forget.ts +0 -169
- package/src/functions/branch-aware.ts +0 -169
- package/src/functions/cascade.ts +0 -80
- package/src/functions/checkpoints.ts +0 -209
- package/src/functions/claude-bridge.ts +0 -161
- package/src/functions/compress.ts +0 -194
- package/src/functions/consolidate.ts +0 -212
- package/src/functions/consolidation-pipeline.ts +0 -258
- package/src/functions/context.ts +0 -169
- package/src/functions/crystallize.ts +0 -293
- package/src/functions/dedup.ts +0 -57
- package/src/functions/diagnostics.ts +0 -785
- package/src/functions/enrich.ts +0 -132
- package/src/functions/evict.ts +0 -163
- package/src/functions/export-import.ts +0 -508
- package/src/functions/facets.ts +0 -248
- package/src/functions/file-index.ts +0 -106
- package/src/functions/flow-compress.ts +0 -214
- package/src/functions/frontier.ts +0 -196
- package/src/functions/governance.ts +0 -131
- package/src/functions/graph-retrieval.ts +0 -277
- package/src/functions/graph.ts +0 -275
- package/src/functions/leases.ts +0 -216
- package/src/functions/lessons.ts +0 -253
- package/src/functions/mesh.ts +0 -434
- package/src/functions/migrate.ts +0 -165
- package/src/functions/observe.ts +0 -144
- package/src/functions/obsidian-export.ts +0 -310
- package/src/functions/patterns.ts +0 -138
- package/src/functions/privacy.ts +0 -39
- package/src/functions/profile.ts +0 -155
- package/src/functions/query-expansion.ts +0 -186
- package/src/functions/relations.ts +0 -237
- package/src/functions/remember.ts +0 -162
- package/src/functions/retention.ts +0 -235
- package/src/functions/routines.ts +0 -289
- package/src/functions/search.ts +0 -80
- package/src/functions/sentinels.ts +0 -417
- package/src/functions/signals.ts +0 -186
- package/src/functions/sketches.ts +0 -274
- package/src/functions/sliding-window.ts +0 -257
- package/src/functions/smart-search.ts +0 -115
- package/src/functions/snapshot.ts +0 -219
- package/src/functions/summarize.ts +0 -155
- package/src/functions/team.ts +0 -147
- package/src/functions/temporal-graph.ts +0 -476
- package/src/functions/timeline.ts +0 -138
- package/src/functions/verify.ts +0 -117
- package/src/health/monitor.ts +0 -110
- package/src/health/thresholds.ts +0 -73
- package/src/hooks/notification.ts +0 -52
- package/src/hooks/post-tool-failure.ts +0 -58
- package/src/hooks/post-tool-use.ts +0 -62
- package/src/hooks/pre-compact.ts +0 -60
- package/src/hooks/pre-tool-use.ts +0 -72
- package/src/hooks/prompt-submit.ts +0 -46
- package/src/hooks/session-end.ts +0 -71
- package/src/hooks/session-start.ts +0 -48
- package/src/hooks/stop.ts +0 -39
- package/src/hooks/subagent-start.ts +0 -49
- package/src/hooks/subagent-stop.ts +0 -54
- package/src/hooks/task-completed.ts +0 -54
- package/src/index.ts +0 -342
- package/src/mcp/in-memory-kv.ts +0 -61
- package/src/mcp/server.ts +0 -1455
- package/src/mcp/standalone.ts +0 -177
- package/src/mcp/tools-registry.ts +0 -769
- package/src/mcp/transport.ts +0 -91
- package/src/prompts/compression.ts +0 -67
- package/src/prompts/consolidation.ts +0 -48
- package/src/prompts/graph-extraction.ts +0 -35
- package/src/prompts/summary.ts +0 -38
- package/src/prompts/xml.ts +0 -26
- package/src/providers/agent-sdk.ts +0 -34
- package/src/providers/anthropic.ts +0 -35
- package/src/providers/circuit-breaker.ts +0 -82
- package/src/providers/embedding/cohere.ts +0 -46
- package/src/providers/embedding/gemini.ts +0 -54
- package/src/providers/embedding/index.ts +0 -39
- package/src/providers/embedding/local.ts +0 -52
- package/src/providers/embedding/openai.ts +0 -45
- package/src/providers/embedding/openrouter.ts +0 -51
- package/src/providers/embedding/voyage.ts +0 -46
- package/src/providers/fallback-chain.ts +0 -31
- package/src/providers/index.ts +0 -84
- package/src/providers/openrouter.ts +0 -71
- package/src/providers/resilient.ts +0 -37
- package/src/state/hybrid-search.ts +0 -295
- package/src/state/index-persistence.ts +0 -63
- package/src/state/keyed-mutex.ts +0 -18
- package/src/state/kv.ts +0 -33
- package/src/state/schema.ts +0 -71
- package/src/state/search-index.ts +0 -245
- package/src/state/stemmer.ts +0 -104
- package/src/state/synonyms.ts +0 -63
- package/src/state/vector-index.ts +0 -130
- package/src/telemetry/setup.ts +0 -116
- package/src/triggers/api.ts +0 -1904
- package/src/triggers/events.ts +0 -71
- package/src/types.ts +0 -769
- package/src/version.ts +0 -1
- package/src/viewer/index.html +0 -2556
- package/src/viewer/server.ts +0 -207
- package/src/xenova.d.ts +0 -3
- package/test/actions.test.ts +0 -490
- package/test/audit.test.ts +0 -108
- package/test/auto-forget.test.ts +0 -188
- package/test/cascade.test.ts +0 -277
- package/test/checkpoints.test.ts +0 -493
- package/test/circuit-breaker.test.ts +0 -107
- package/test/claude-bridge.test.ts +0 -178
- package/test/confidence.test.ts +0 -247
- package/test/consistency.test.ts +0 -61
- package/test/consolidation-pipeline.test.ts +0 -251
- package/test/crystallize.test.ts +0 -521
- package/test/diagnostics.test.ts +0 -638
- package/test/embedding-provider.test.ts +0 -49
- package/test/enrich.test.ts +0 -209
- package/test/eval.test.ts +0 -300
- package/test/export-import.test.ts +0 -251
- package/test/facets.test.ts +0 -448
- package/test/fallback-chain.test.ts +0 -93
- package/test/frontier.test.ts +0 -485
- package/test/governance.test.ts +0 -147
- package/test/graph-retrieval.test.ts +0 -186
- package/test/graph.test.ts +0 -160
- package/test/helpers/mocks.ts +0 -40
- package/test/hybrid-search.test.ts +0 -145
- package/test/index-persistence.test.ts +0 -124
- package/test/integration.test.ts +0 -265
- package/test/leases.test.ts +0 -399
- package/test/mcp-prompts.test.ts +0 -218
- package/test/mcp-resources.test.ts +0 -286
- package/test/mcp-standalone.test.ts +0 -113
- package/test/mesh.test.ts +0 -700
- package/test/privacy.test.ts +0 -87
- package/test/profile.test.ts +0 -161
- package/test/query-expansion.test.ts +0 -154
- package/test/relations.test.ts +0 -198
- package/test/retention.test.ts +0 -245
- package/test/routines.test.ts +0 -497
- package/test/schema-fingerprint.test.ts +0 -81
- package/test/schema.test.ts +0 -42
- package/test/search-index.test.ts +0 -128
- package/test/sentinels.test.ts +0 -626
- package/test/signals.test.ts +0 -410
- package/test/sketches.test.ts +0 -549
- package/test/sliding-window.test.ts +0 -199
- package/test/smart-search.test.ts +0 -169
- package/test/snapshot.test.ts +0 -165
- package/test/team.test.ts +0 -156
- package/test/temporal-graph.test.ts +0 -378
- package/test/timeline.test.ts +0 -148
- package/test/vector-index.test.ts +0 -79
- package/test/verify.test.ts +0 -209
- package/test/xml.test.ts +0 -65
- package/tsconfig.json +0 -22
- package/tsdown.config.ts +0 -62
package/AGENTS.md
CHANGED
|
@@ -98,16 +98,16 @@ Hook scripts in `src/hooks/` are standalone Node.js scripts (no iii-sdk import).
|
|
|
98
98
|
|
|
99
99
|
## Testing
|
|
100
100
|
|
|
101
|
-
- All tests must pass before PR: `npm test` (
|
|
101
|
+
- All tests must pass before PR: `npm test` (613+ tests)
|
|
102
102
|
- Mock pattern: `vi.mock("iii-sdk")` with mock `sdk.trigger`, `kv.get/set/list`
|
|
103
103
|
- Test files go in `test/` with `.test.ts` extension
|
|
104
104
|
- Follow existing patterns in `test/crystallize.test.ts` for function tests
|
|
105
105
|
|
|
106
106
|
## Current Stats (v0.7.0)
|
|
107
107
|
|
|
108
|
-
-
|
|
109
|
-
-
|
|
108
|
+
- 43 MCP tools (8 visible by default, `AGENTMEMORY_TOOLS=all` for all)
|
|
109
|
+
- 103 REST endpoints
|
|
110
110
|
- 6 MCP resources, 3 MCP prompts
|
|
111
111
|
- 12 hooks, 4 skills
|
|
112
112
|
- 50+ iii functions
|
|
113
|
-
-
|
|
113
|
+
- 627 tests
|
package/README.md
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
|
|
27
27
|
---
|
|
28
28
|
|
|
29
|
-
Every AI coding agent has the same blind spot. Session ends, memory vanishes. You re-explain architecture. You re-discover bugs. You re-teach preferences. Built-in memory files like CLAUDE.md and .cursorrules are 200-line sticky notes that overflow and go stale. agentmemory replaces that with a searchable, versioned, cross-agent database —
|
|
29
|
+
Every AI coding agent has the same blind spot. Session ends, memory vanishes. You re-explain architecture. You re-discover bugs. You re-teach preferences. Built-in memory files like CLAUDE.md and .cursorrules are 200-line sticky notes that overflow and go stale. agentmemory replaces that with a searchable, versioned, cross-agent database — 43 MCP tools, triple-stream retrieval (BM25 + vector + knowledge graph), 4-tier memory consolidation, provenance-tracked citations, and cascading staleness so retired facts never pollute your context again. One instance serves Claude Code, Cursor, Codex, Windsurf, and any MCP client simultaneously. 627 tests. Zero external DB dependencies.
|
|
30
30
|
|
|
31
31
|
The result is measurable. On 240 real observations across 30 sessions, agentmemory hits 64% Recall@10 and perfect MRR while using 92% fewer tokens than dumping everything into context. When an agent searches "database performance optimization," it finds the N+1 fix you made three weeks ago — something keyword grep literally cannot do. Memories version automatically, supersede each other, propagate staleness to related graph nodes, and sync across agent instances via P2P mesh. Your agents stop repeating mistakes. Your context stays clean. Your sessions start fast.
|
|
32
32
|
|
|
@@ -131,7 +131,7 @@ These agents support hooks natively. agentmemory captures tool usage automatical
|
|
|
131
131
|
|
|
132
132
|
### MCP support (any MCP-compatible agent)
|
|
133
133
|
|
|
134
|
-
Any agent that connects to MCP servers can use agentmemory's
|
|
134
|
+
Any agent that connects to MCP servers can use agentmemory's 43 tools, 6 resources, and 3 prompts. The agent actively queries and saves memory through MCP calls.
|
|
135
135
|
|
|
136
136
|
| Agent | How to connect |
|
|
137
137
|
|---|---|
|
|
@@ -143,7 +143,7 @@ Any agent that connects to MCP servers can use agentmemory's 41 tools, 6 resourc
|
|
|
143
143
|
|
|
144
144
|
### REST API (any agent, any language)
|
|
145
145
|
|
|
146
|
-
Agents without hooks or MCP can integrate via
|
|
146
|
+
Agents without hooks or MCP can integrate via 103 REST endpoints directly. This works with any agent, language, or framework.
|
|
147
147
|
|
|
148
148
|
```bash
|
|
149
149
|
POST /agentmemory/observe # Capture what the agent did
|
|
@@ -161,7 +161,7 @@ GET /agentmemory/profile # Get project intelligence
|
|
|
161
161
|
| Claude Code user | Plugin install (hooks + MCP + skills) |
|
|
162
162
|
| Building a custom agent with Claude SDK | AgentSDKProvider (zero config) |
|
|
163
163
|
| Using Cursor, Windsurf, or any MCP client | MCP server (41 tools + 6 resources + 3 prompts) |
|
|
164
|
-
| Building your own agent framework | REST API (
|
|
164
|
+
| Building your own agent framework | REST API (103 endpoints) |
|
|
165
165
|
| Sharing memory across multiple agents | All agents point to the same iii-engine instance |
|
|
166
166
|
|
|
167
167
|
## Quick Start
|
|
@@ -632,7 +632,7 @@ ANTHROPIC_API_KEY=sk-ant-...
|
|
|
632
632
|
|
|
633
633
|
## API
|
|
634
634
|
|
|
635
|
-
|
|
635
|
+
109 endpoints on port `3111` (103 core + 6 MCP protocol). Protected endpoints require `Authorization: Bearer <secret>` when `AGENTMEMORY_SECRET` is set. The table below shows a representative subset; see `src/triggers/api.ts` for the full endpoint list.
|
|
636
636
|
|
|
637
637
|
| Method | Path | Description |
|
|
638
638
|
|--------|------|-------------|
|
|
@@ -700,7 +700,7 @@ ANTHROPIC_API_KEY=sk-ant-...
|
|
|
700
700
|
/plugin install agentmemory
|
|
701
701
|
```
|
|
702
702
|
|
|
703
|
-
Restart Claude Code. All 12 hooks, 4 skills, and
|
|
703
|
+
Restart Claude Code. All 12 hooks, 4 skills, and 43 MCP tools are registered automatically.
|
|
704
704
|
|
|
705
705
|
### Plugin Commands
|
|
706
706
|
|
|
@@ -724,72 +724,45 @@ agentmemory is built on iii-engine's three primitives:
|
|
|
724
724
|
| Prometheus / Grafana | iii OTEL + built-in health monitor |
|
|
725
725
|
| Redis (circuit breaker) | In-process circuit breaker + fallback chain |
|
|
726
726
|
|
|
727
|
-
**113 source files. ~20,000 LOC.
|
|
728
|
-
|
|
729
|
-
### Functions (
|
|
730
|
-
|
|
731
|
-
|
|
|
732
|
-
|
|
733
|
-
| `
|
|
734
|
-
| `
|
|
735
|
-
| `
|
|
736
|
-
| `
|
|
737
|
-
| `
|
|
738
|
-
| `
|
|
739
|
-
| `
|
|
740
|
-
| `
|
|
741
|
-
| `
|
|
742
|
-
| `
|
|
743
|
-
| `
|
|
744
|
-
| `
|
|
745
|
-
| `
|
|
746
|
-
| `
|
|
747
|
-
| `
|
|
748
|
-
| `
|
|
749
|
-
| `
|
|
750
|
-
| `
|
|
751
|
-
| `
|
|
752
|
-
| `
|
|
753
|
-
| `
|
|
754
|
-
|
|
|
755
|
-
| `
|
|
756
|
-
| `
|
|
757
|
-
| `
|
|
758
|
-
| `
|
|
759
|
-
| `
|
|
760
|
-
| `
|
|
761
|
-
| `
|
|
762
|
-
| `
|
|
763
|
-
| `
|
|
764
|
-
| `
|
|
765
|
-
| `
|
|
766
|
-
| `mem::snapshot-create` | Git commit memory state |
|
|
767
|
-
| `mem::snapshot-list` | List all snapshots |
|
|
768
|
-
| `mem::snapshot-restore` | Restore memory from snapshot commit |
|
|
769
|
-
| `mem::action-create` / `action-update` | Dependency-aware work items with typed edges |
|
|
770
|
-
| `mem::frontier` / `mem::next` | Priority-ranked unblocked action queue |
|
|
771
|
-
| `mem::lease-acquire` / `release` / `renew` | TTL-based atomic agent claims |
|
|
772
|
-
| `mem::routine-create` / `run` / `status` | Frozen workflow templates instantiated into action chains |
|
|
773
|
-
| `mem::signal-send` / `read` / `threads` | Threaded inter-agent messaging with read receipts |
|
|
774
|
-
| `mem::checkpoint-create` / `resolve` | External condition gates (CI, approval, deploy) |
|
|
775
|
-
| `mem::flow-compress` | LLM-powered summarization of completed action chains |
|
|
776
|
-
| `mem::mesh-register` / `sync` / `receive` | P2P sync between agentmemory instances |
|
|
777
|
-
| `mem::detect-worktree` / `branch-sessions` | Git worktree detection for shared memory |
|
|
778
|
-
| `mem::sentinel-create` / `trigger` / `check` | Event-driven condition watchers (webhook, timer, threshold, pattern, approval) |
|
|
779
|
-
| `mem::sketch-create` / `add` / `promote` / `discard` | Ephemeral action graphs for exploratory work with auto-expiry |
|
|
780
|
-
| `mem::crystallize` / `auto-crystallize` | LLM-powered compaction of completed action chains into crystal digests |
|
|
781
|
-
| `mem::diagnose` / `heal` | Self-diagnosis across 8 categories with auto-fix for stuck/orphaned/stale state |
|
|
782
|
-
| `mem::facet-tag` / `query` / `stats` | Multi-dimensional tagging with AND/OR queries on actions, memories, observations |
|
|
783
|
-
| `mem::expand-query` | LLM-generated query reformulations for improved recall |
|
|
784
|
-
| `mem::sliding-window` | Context-window enrichment at ingestion (resolve pronouns, abbreviations) |
|
|
785
|
-
| `mem::temporal-graph` | Append-only versioned edges with point-in-time queries |
|
|
786
|
-
| `mem::retention-score` / `evict` | Ebbinghaus-inspired decay with tiered storage (hot/warm/cold/evictable) |
|
|
787
|
-
| `mem::graph-retrieval` | Entity search + chunk expansion + temporal queries via knowledge graph |
|
|
788
|
-
| `mem::verify` | JIT verification — trace memory provenance back to source observations |
|
|
789
|
-
| `mem::cascade-update` | Propagate staleness to graph nodes, edges, and sibling memories |
|
|
790
|
-
| `mem::lesson-save` / `recall` / `list` | Confidence-scored lessons with dedup, reinforcement, and decay |
|
|
791
|
-
| `mem::lesson-strengthen` / `decay-sweep` | Reinforce lessons on reuse, sweep for time-based decay |
|
|
792
|
-
| `mem::obsidian-export` | Export vault as Obsidian-compatible Markdown with YAML frontmatter + wikilinks |
|
|
727
|
+
**113 source files. ~20,000 LOC. 627 tests. Zero external DB dependencies.**
|
|
728
|
+
|
|
729
|
+
### Functions (89 mem:: functions)
|
|
730
|
+
|
|
731
|
+
| Category | Functions | Purpose |
|
|
732
|
+
|----------|-----------|---------|
|
|
733
|
+
| **Core Memory** | `observe`, `compress`, `search`, `smart-search` | Capture, compress, and search observations |
|
|
734
|
+
| | `context`, `summarize`, `remember`, `forget` | Build context, generate summaries, save/delete memories |
|
|
735
|
+
| | `file-context`, `enrich`, `patterns`, `generate-rules` | File history, enrichment, pattern detection, rule generation |
|
|
736
|
+
| | `migrate`, `export`, `import` | SQLite migration, JSON round-trip (v0.3.0–v0.7.2) |
|
|
737
|
+
| **Search** | `expand-query`, `sliding-window`, `graph-retrieval` | Query reformulations, context enrichment, entity-based retrieval |
|
|
738
|
+
| | `retention-score`, `retention-evict` | Ebbinghaus decay with tiered storage (hot/warm/cold) |
|
|
739
|
+
| **Memory Evolution** | `evolve`, `auto-forget`, `evict` | Version memories, TTL expiry, importance-based eviction |
|
|
740
|
+
| | `consolidate`, `consolidate-pipeline` | Merge duplicates, 4-tier consolidation (working→episodic→semantic→procedural) |
|
|
741
|
+
| | `verify`, `cascade-update` | Citation chain provenance, staleness propagation |
|
|
742
|
+
| **Knowledge Graph** | `graph-extract`, `graph-query`, `graph-stats` | LLM entity extraction, BFS traversal, statistics |
|
|
743
|
+
| | `temporal-graph-extract`, `temporal-query` | Temporal knowledge extraction + point-in-time queries |
|
|
744
|
+
| **Relationships** | `relate`, `get-related`, `timeline`, `profile` | Memory relations, chronological view, project profiles |
|
|
745
|
+
| **Claude Bridge** | `claude-bridge-read`, `claude-bridge-sync` | Bi-directional sync with MEMORY.md |
|
|
746
|
+
| **Actions** | `action-create`, `action-update`, `action-get`, `action-list` | Dependency-aware work items with typed edges |
|
|
747
|
+
| | `action-edge-create` | Create typed edges between actions (requires, unlocks, gated_by) |
|
|
748
|
+
| | `frontier`, `next` | Priority-ranked unblocked action queue |
|
|
749
|
+
| **Leases** | `lease-acquire`, `lease-release`, `lease-renew`, `lease-cleanup` | TTL-based atomic agent claims with auto-cleanup |
|
|
750
|
+
| **Routines** | `routine-create`, `routine-freeze`, `routine-list`, `routine-run`, `routine-status` | Frozen workflow templates instantiated into action chains |
|
|
751
|
+
| **Signals** | `signal-send`, `signal-read`, `signal-threads`, `signal-cleanup` | Threaded inter-agent messaging with read receipts |
|
|
752
|
+
| **Checkpoints** | `checkpoint-create`, `checkpoint-resolve`, `checkpoint-list`, `checkpoint-expire` | External condition gates (CI, approval, deploy) |
|
|
753
|
+
| **Mesh** | `mesh-register`, `mesh-sync`, `mesh-receive`, `mesh-list`, `mesh-remove` | P2P sync between agentmemory instances |
|
|
754
|
+
| **Sentinels** | `sentinel-create`, `sentinel-trigger`, `sentinel-check`, `sentinel-cancel`, `sentinel-list`, `sentinel-expire` | Event-driven condition watchers |
|
|
755
|
+
| **Sketches** | `sketch-create`, `sketch-add`, `sketch-promote`, `sketch-discard`, `sketch-list`, `sketch-gc` | Ephemeral action graphs with auto-expiry |
|
|
756
|
+
| **Crystals** | `crystallize`, `auto-crystallize`, `crystal-list`, `crystal-get` | LLM-powered compaction of action chains into digests |
|
|
757
|
+
| **Lessons** | `lesson-save`, `lesson-recall`, `lesson-list`, `lesson-strengthen`, `lesson-decay-sweep` | Confidence-scored lessons with dedup, reinforcement, and decay |
|
|
758
|
+
| **Facets** | `facet-tag`, `facet-untag`, `facet-query`, `facet-get`, `facet-stats`, `facet-dimensions` | Multi-dimensional tagging with AND/OR queries |
|
|
759
|
+
| **Diagnostics** | `diagnose`, `heal` | Self-diagnosis across 8 categories with auto-fix |
|
|
760
|
+
| **Flow** | `flow-compress` | LLM summarization of completed action chains |
|
|
761
|
+
| **Branch** | `detect-worktree`, `list-worktrees`, `branch-sessions` | Git worktree detection for shared memory |
|
|
762
|
+
| **Team** | `team-share`, `team-feed`, `team-profile` | Namespaced shared + private team memory |
|
|
763
|
+
| **Governance** | `governance-delete`, `governance-bulk`, `audit-query` | Delete with audit trail, bulk operations |
|
|
764
|
+
| **Snapshots** | `snapshot-create`, `snapshot-list`, `snapshot-restore` | Git-versioned memory state |
|
|
765
|
+
| **Export** | `obsidian-export` | Obsidian-compatible Markdown with YAML frontmatter + wikilinks |
|
|
793
766
|
|
|
794
767
|
### Data Model (34 KV scopes)
|
|
795
768
|
|
|
@@ -835,7 +808,7 @@ agentmemory is built on iii-engine's three primitives:
|
|
|
835
808
|
```bash
|
|
836
809
|
npm run dev # Hot reload
|
|
837
810
|
npm run build # Production build (~425KB)
|
|
838
|
-
npm test # Unit tests (
|
|
811
|
+
npm test # Unit tests (627 tests, ~1.5s)
|
|
839
812
|
npm run test:integration # API tests (requires running services)
|
|
840
813
|
```
|
|
841
814
|
|
package/dist/cli.mjs
CHANGED
|
@@ -159,12 +159,12 @@ async function main() {
|
|
|
159
159
|
p.intro("agentmemory");
|
|
160
160
|
if (skipEngine) {
|
|
161
161
|
p.log.info("Skipping engine check (--no-engine)");
|
|
162
|
-
await import("./src-
|
|
162
|
+
await import("./src-DP8JSXkx.mjs");
|
|
163
163
|
return;
|
|
164
164
|
}
|
|
165
165
|
if (await isEngineRunning()) {
|
|
166
166
|
p.log.success("iii-engine is running");
|
|
167
|
-
await import("./src-
|
|
167
|
+
await import("./src-DP8JSXkx.mjs");
|
|
168
168
|
return;
|
|
169
169
|
}
|
|
170
170
|
if (!await startEngine()) {
|
|
@@ -192,7 +192,7 @@ async function main() {
|
|
|
192
192
|
process.exit(1);
|
|
193
193
|
}
|
|
194
194
|
s.stop("iii-engine is ready");
|
|
195
|
-
await import("./src-
|
|
195
|
+
await import("./src-DP8JSXkx.mjs");
|
|
196
196
|
}
|
|
197
197
|
main().catch((err) => {
|
|
198
198
|
p.log.error(err instanceof Error ? err.message : String(err));
|