@joshuaswarren/openclaw-engram 9.1.37 → 9.1.39

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.
Files changed (2) hide show
  1. package/README.md +86 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -55,6 +55,29 @@ cd ~/.openclaw/extensions/openclaw-engram
55
55
  npm ci && npm run build
56
56
  ```
57
57
 
58
+ ### Option 4: Standalone (no OpenClaw)
59
+
60
+ Build from source and use the standalone CLI. Requires [Node.js](https://nodejs.org/) 22.12+ and [tsx](https://github.com/privatenumber/tsx) (`npm install -g tsx`).
61
+
62
+ ```bash
63
+ npm install -g tsx # Required — CLI entry point is TypeScript
64
+ git clone https://github.com/joshuaswarren/openclaw-engram.git
65
+ cd openclaw-engram
66
+ npm ci && npm run build
67
+ cd packages/cli && npm link # Makes `engram` available on PATH
68
+ cd ../..
69
+ engram init # Create engram.config.json
70
+ export OPENAI_API_KEY=sk-...
71
+ export ENGRAM_AUTH_TOKEN=$(openssl rand -hex 32)
72
+ engram daemon start # Start background server
73
+ engram status # Verify it's running
74
+ engram query "hello" --explain # Test query with tier breakdown
75
+ ```
76
+
77
+ > **Note:** The `engram` binary (`packages/cli/bin/engram.cjs`) is a CJS wrapper that auto-locates `tsx` from `node_modules` (falling back to a global `tsx`). Running `npm link` from `packages/cli/` (not the repo root) makes the CLI globally available — the root package only exposes `engram-access`. Alternatively, invoke directly: `npx tsx packages/cli/src/index.ts <command>`.
78
+
79
+ The standalone CLI provides 15+ commands for memory management, project onboarding, curation, diff-aware sync, dedup, connectors, spaces, and benchmarks -- all without requiring OpenClaw. See the [Platform Migration Guide](docs/guides/platform-migration.md) for the full command reference.
80
+
58
81
  ### Configure
59
82
 
60
83
  After installation, add Engram to your `openclaw.json`:
@@ -160,6 +183,33 @@ Point your MCP client's command at `openclaw engram access mcp-serve`. Works wit
160
183
 
161
184
  See the [Standalone Server Guide](docs/guides/standalone-server.md) for multi-tenant setups and connecting multiple agent harnesses.
162
185
 
186
+ ## Standalone Usage
187
+
188
+ Engram also works as a standalone tool without OpenClaw. Install and run the CLI directly:
189
+
190
+ ```bash
191
+ npm install -g @joshuaswarren/openclaw-engram
192
+ engram init # create engram.config.json
193
+ export OPENAI_API_KEY=sk-...
194
+ export ENGRAM_AUTH_TOKEN=$(openssl rand -hex 32)
195
+ engram daemon start # start background server
196
+ engram query "hello" # verify
197
+ ```
198
+
199
+ The CLI provides 15+ commands for querying, onboarding projects, curating files, managing spaces, running benchmarks, and more. See the [full CLI reference](docs/api.md#standalone-cli-commands) for all commands.
200
+
201
+ OpenClaw remains the recommended path for most users. The standalone CLI is useful for CI/CD pipelines, scripted memory operations, and environments without OpenClaw.
202
+
203
+ ### Package Architecture
204
+
205
+ ```
206
+ @engram/core — Framework-agnostic engine (re-exports orchestrator, config, storage, search, extraction, graph, trust zones)
207
+ @engram/cli — Standalone CLI binary (15+ commands)
208
+ @engram/server — Standalone HTTP/MCP server
209
+ @engram/bench — Benchmarks + CI regression gates
210
+ @engram/hermes-provider — HTTP client for remote Engram instances
211
+ ```
212
+
163
213
  ## How It Works
164
214
 
165
215
  Engram operates in three phases:
@@ -185,6 +235,39 @@ so alternative engines can replace QMD without changing core logic.
185
235
 
186
236
  Memory categories include: `fact`, `decision`, `preference`, `correction`, `relationship`, `principle`, `commitment`, `moment`, `skill`, `rule`, and more.
187
237
 
238
+ ## Architecture
239
+
240
+ Starting with v9.1.36, Engram is organized as a monorepo with five packages:
241
+
242
+ ```
243
+ ┌─────────────────┐
244
+ │ @engram/core │
245
+ │ (engine) │
246
+ └────────┬────────┘
247
+
248
+ ┌─────────────┼─────────────┐
249
+ │ │ │
250
+ ┌──────┴──────┐ ┌───┴────┐ ┌──────┴──────────┐
251
+ │ @engram/cli │ │@engram/│ │ @engram/ │
252
+ │ (CLI binary)│ │server │ │ hermes-provider │
253
+ └─────────────┘ └────────┘ └─────────────────┘
254
+
255
+ ┌──────┴──────┐
256
+ │ @engram/ │
257
+ │ bench │
258
+ └─────────────┘
259
+ ```
260
+
261
+ | Package | Description |
262
+ |---------|-------------|
263
+ | `@engram/core` | Framework-agnostic engine with zero OpenClaw imports. Re-exports orchestrator, config, storage, search, extraction, graph, and trust zones. |
264
+ | `@engram/cli` | Standalone CLI binary with 15+ commands for memory management, project onboarding, curation, sync, dedup, connectors, spaces, and benchmarks. |
265
+ | `@engram/server` | Standalone HTTP/MCP server wrapping the existing access layer. Run independently or as a daemon. |
266
+ | `@engram/bench` | Latency ladder benchmarks with tier breakdowns, saved baselines, and CI regression gates. |
267
+ | `@engram/hermes-provider` | Lightweight HTTP client for connecting to remote Engram instances. Works with any TypeScript project. |
268
+
269
+ The npm package `@joshuaswarren/openclaw-engram` continues to work as the primary distribution channel for OpenClaw users. The `@engram/*` packages are for standalone use or custom integrations.
270
+
188
271
  ## Why Engram?
189
272
 
190
273
  ### Your data stays yours
@@ -544,6 +627,9 @@ All settings live in `openclaw.json` under `plugins.entries.openclaw-engram.conf
544
627
  - [Lossless Context Management](docs/guides/lossless-context-management.md) — Never lose context to compaction
545
628
  - [Enable All Features](docs/enable-all-v8.md) — Full-feature config profile
546
629
  - [Migration Guide](docs/guides/migrations.md) — Upgrading from older versions
630
+ - [Platform Migration Guide](docs/guides/platform-migration.md) — Migrating to the monorepo architecture (v9.1.36+)
631
+ - [Hermes Setup](docs/integration/hermes-setup.md) — HTTP client for remote Engram instances
632
+ - [Deployment Topologies](docs/integration/deployment-topologies.md) — Localhost, LAN, remote, containerized, standalone
547
633
 
548
634
  ## Contributing
549
635
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@joshuaswarren/openclaw-engram",
3
- "version": "9.1.37",
3
+ "version": "9.1.39",
4
4
  "type": "module",
5
5
  "description": "Local-first memory plugin for OpenClaw. LLM-powered extraction, markdown storage, hybrid search via QMD.",
6
6
  "keywords": [