@pleri/olam-cli 0.1.207 → 0.1.209

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.
@@ -1,4 +1,4 @@
1
1
  {
2
- "bundledAt": "2026-06-02T16:46:23.219Z",
2
+ "bundledAt": "2026-06-03T05:18:35.489Z",
3
3
  "kgFirstSha": "29a9ccce1b115d049e375c4a90eb5cf7c123e610e2d0590270a4db2cdbc64a28"
4
4
  }
@@ -118,7 +118,7 @@ spec:
118
118
  # k3d), started by `olam upgrade` Step 0.7 — not inside this Pod.
119
119
  containers:
120
120
  - name: olam-host-cp
121
- image: ghcr.io/pleri/olam-host-cp@sha256:0d1869ed3c823e6ea1b5d885d2f73d7418134c1b82c9dd70719044fd04d74027
121
+ image: ghcr.io/pleri/olam-host-cp@sha256:90d17380f48eb37c26d9050105d0ebc037e71a610ffd02998aa2f05a8a31caba
122
122
  imagePullPolicy: IfNotPresent
123
123
  securityContext:
124
124
  runAsNonRoot: true
@@ -70,7 +70,7 @@ spec:
70
70
  mountPath: /data
71
71
  containers:
72
72
  - name: olam-auth-service
73
- image: ghcr.io/pleri/olam-auth@sha256:9f8195a20727ec844d7393696c298b42e3e83e841fe684787ee9c6d1e301b5e8
73
+ image: ghcr.io/pleri/olam-auth@sha256:95167696ea6e6146df66a325193283d4418b07c77540c17e1b33a5aa15b12092
74
74
  imagePullPolicy: IfNotPresent
75
75
  securityContext:
76
76
  runAsNonRoot: true
@@ -61,7 +61,7 @@ spec:
61
61
  mountPath: /data
62
62
  containers:
63
63
  - name: olam-kg-service
64
- image: ghcr.io/pleri/olam-kg-service@sha256:0b1f78a566675509f371e4e0636a76859f800c1bec787f06742e3a4f116d7c90
64
+ image: ghcr.io/pleri/olam-kg-service@sha256:8d2b10b56dc5db06470d86f8097fc14c2e0f4b03a5a9a15817673f858ed3a0db
65
65
  imagePullPolicy: IfNotPresent
66
66
  securityContext:
67
67
  runAsNonRoot: true
@@ -68,7 +68,7 @@ spec:
68
68
  mountPath: /data
69
69
  containers:
70
70
  - name: olam-mcp-auth-service
71
- image: ghcr.io/pleri/olam-mcp-auth@sha256:63ecc6bdd5c3def600a78046f0e7ab36938e88bc6fc7d31a446d7cec84a27a3a
71
+ image: ghcr.io/pleri/olam-mcp-auth@sha256:1b0aa93ed9e3bf517715b02542fca075265f01cc1d73320bfe60a8cad700d1df
72
72
  imagePullPolicy: IfNotPresent
73
73
  securityContext:
74
74
  runAsNonRoot: true
@@ -70,7 +70,7 @@ spec:
70
70
  # bootstrap-placeholder comment + run `npm run refresh:manifest-digests`
71
71
  # once ghcr.io/pleri/olam-memory-service has a real published digest.
72
72
  # bootstrap-placeholder: pre-publish; refresh after first release
73
- image: ghcr.io/pleri/olam-memory-service@sha256:673156cc638fc9af096e73fc7cd7c666373f92e63e566a57f51271b691aa9d74
73
+ image: ghcr.io/pleri/olam-memory-service@sha256:b3f650cd4ad766d7d221896db03ac4110f80dd106cbb16bad4ca9c3a66642520
74
74
  imagePullPolicy: IfNotPresent
75
75
  securityContext:
76
76
  runAsNonRoot: true
@@ -60,6 +60,7 @@ import { homedir } from 'node:os';
60
60
  import { join } from 'node:path';
61
61
  import { randomBytes } from 'node:crypto';
62
62
  import { fileURLToPath } from 'node:url';
63
+ import { isAgentMemoryEnabled } from './agent-memory-gate.mjs';
63
64
 
64
65
  /** Max bytes of captured text persisted per candidate. Keeps queue files small. */
65
66
  export const MAX_CAPTURED_CHARS = 4000;
@@ -315,6 +316,9 @@ function readContentField(obj) {
315
316
  }
316
317
 
317
318
  async function main() {
319
+ // Gate: memory is off by default — exit silently when not enabled.
320
+ if (!isAgentMemoryEnabled()) return;
321
+
318
322
  let event = {};
319
323
  try {
320
324
  event = JSON.parse(readFileSync(0, 'utf-8'));
@@ -33,6 +33,7 @@ import { existsSync, readFileSync, realpathSync } from 'node:fs';
33
33
  import { homedir } from 'node:os';
34
34
  import { join } from 'node:path';
35
35
  import { fileURLToPath } from 'node:url';
36
+ import { isAgentMemoryEnabled } from './agent-memory-gate.mjs';
36
37
 
37
38
  // Built-in tool-event filter: only fire on tool calls where recall has
38
39
  // signal. Bash + Edit + MultiEdit + Read on substantive paths qualify;
@@ -190,6 +191,9 @@ export function formatAdditionalContext(response, prompt) {
190
191
  }
191
192
 
192
193
  async function main() {
194
+ // Gate: memory is off by default — exit silently when not enabled.
195
+ if (!isAgentMemoryEnabled()) return;
196
+
193
197
  let event = {};
194
198
  try {
195
199
  event = JSON.parse(readFileSync(0, 'utf-8'));
@@ -40,6 +40,30 @@ const fs = require('fs');
40
40
  const os = require('os');
41
41
  const path = require('path');
42
42
 
43
+ // ---------------------------------------------------------------------------
44
+ // Opt-in gate — inline re-implementation of agent-memory-gate.mjs contract
45
+ // (CJS cannot import ESM at the top level; inline ensures same fail-closed
46
+ // semantics without a dynamic import or a build step).
47
+ // ---------------------------------------------------------------------------
48
+ const _GATE_TRUTHY_ENV = new Set(['1', 'true', 'on']);
49
+ const _GATE_TRUTHY_FILE = new Set(['true', '1']);
50
+ function _isAgentMemoryEnabled() {
51
+ const envVal = process.env['OLAM_AGENT_MEMORY'];
52
+ if (envVal !== undefined && envVal.length > 0) {
53
+ return _GATE_TRUTHY_ENV.has(envVal.trim().toLowerCase());
54
+ }
55
+ try {
56
+ const fromEnv = process.env['OLAM_HOME'];
57
+ const olamHome = (fromEnv && fromEnv.length > 0) ? fromEnv : path.join(os.homedir(), '.olam');
58
+ const flagPath = path.join(olamHome, 'agent-memory-enabled');
59
+ const raw = fs.readFileSync(flagPath, 'utf8').trim().toLowerCase();
60
+ return _GATE_TRUTHY_FILE.has(raw);
61
+ } catch {
62
+ return false;
63
+ }
64
+ }
65
+ // ---------------------------------------------------------------------------
66
+
43
67
  // Resolve the bridge URL: operator env wins, then the `olam memory connect`
44
68
  // artifact (~/.olam/memory-connection.json), then the LIVE memory-service
45
69
  // Worker. The prior default (olam-agent-memory.ernestcodes.workers.dev) is a
@@ -276,6 +300,9 @@ async function recall(query, limit = 5) {
276
300
  }
277
301
 
278
302
  async function main() {
303
+ // Gate: memory is off by default — exit silently when not enabled.
304
+ if (!_isAgentMemoryEnabled()) return;
305
+
279
306
  const raw = require('fs').readFileSync(0, 'utf8');
280
307
  let event = {};
281
308
  try { event = JSON.parse(raw); } catch (_) {}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pleri/olam-cli",
3
- "version": "0.1.207",
3
+ "version": "0.1.209",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "olam": "./bin/olam.cjs"