@engramx/client 0.1.0-rc.2 → 0.2.0

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 +1 @@
1
- {"version":3,"file":"openclaw-setup.js","sourceRoot":"","sources":["../src/openclaw-setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openclaw-setup.js","sourceRoot":"","sources":["../src/openclaw-setup.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,13 @@
1
+ import * as fs from 'fs';
2
+ /**
3
+ * Write a file atomically: serialize to a temp file in the SAME directory, then
4
+ * rename it over the target. `rename(2)` within one filesystem is atomic, so a
5
+ * crash / ENOSPC / Ctrl-C mid-write leaves either the old file or the temp file
6
+ * (which is cleaned up) intact — never a truncated destination. Use this for
7
+ * irreplaceable user config (~/.claude.json, openclaw.json) where a half-written
8
+ * file would corrupt state the user can't otherwise recover.
9
+ */
10
+ export declare function atomicWriteFileSync(targetPath: string, data: string | NodeJS.ArrayBufferView, options?: fs.WriteFileOptions): void;
1
11
  /**
2
12
  * Resolve a relative path against a base directory and verify
3
13
  * the result does not escape the base via traversal (e.g. `../`).
@@ -1,4 +1,32 @@
1
+ import * as fs from 'fs';
1
2
  import * as path from 'path';
3
+ /**
4
+ * Write a file atomically: serialize to a temp file in the SAME directory, then
5
+ * rename it over the target. `rename(2)` within one filesystem is atomic, so a
6
+ * crash / ENOSPC / Ctrl-C mid-write leaves either the old file or the temp file
7
+ * (which is cleaned up) intact — never a truncated destination. Use this for
8
+ * irreplaceable user config (~/.claude.json, openclaw.json) where a half-written
9
+ * file would corrupt state the user can't otherwise recover.
10
+ */
11
+ export function atomicWriteFileSync(targetPath, data, options) {
12
+ const dir = path.dirname(targetPath);
13
+ const tmpPath = path.join(dir, `.${path.basename(targetPath)}.${process.pid}.tmp`);
14
+ try {
15
+ fs.writeFileSync(tmpPath, data, options);
16
+ fs.renameSync(tmpPath, targetPath);
17
+ }
18
+ catch (err) {
19
+ // Best-effort cleanup so a failed write doesn't leave a stray temp file.
20
+ try {
21
+ if (fs.existsSync(tmpPath))
22
+ fs.unlinkSync(tmpPath);
23
+ }
24
+ catch {
25
+ /* ignore cleanup errors */
26
+ }
27
+ throw err;
28
+ }
29
+ }
2
30
  /**
3
31
  * Resolve a relative path against a base directory and verify
4
32
  * the result does not escape the base via traversal (e.g. `../`).
@@ -1 +1 @@
1
- {"version":3,"file":"path-utils.js","sourceRoot":"","sources":["../src/path-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,YAAoB;IACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,4BAA4B,YAAY,YAAY,OAAO,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAU;IAC1C,OAAO,4CAA4C,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"path-utils.js","sourceRoot":"","sources":["../src/path-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CACjC,UAAkB,EAClB,IAAqC,EACrC,OAA6B;IAE7B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;IACnF,IAAI,CAAC;QACH,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACzC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,yEAAyE;QACzE,IAAI,CAAC;YACH,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC;YACP,2BAA2B;QAC7B,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,EAAE,YAAoB;IACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;IACvE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,4BAA4B,YAAY,YAAY,OAAO,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAU;IAC1C,OAAO,4CAA4C,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
package/dist/types.d.ts CHANGED
@@ -20,6 +20,11 @@ export interface OperatorPermissions {
20
20
  callsPerMinute: bigint;
21
21
  /** Bulk backup export (pull/list/metadata). Candid opt: [] = none. */
22
22
  canReadBackup: [] | [boolean];
23
+ /**
24
+ * The Bools above are FROZEN — every FUTURE permission is a scope string here
25
+ * (converges with OAuth scope names). Candid opt: [] = no extended scopes.
26
+ */
27
+ scopes: [] | [string[]];
23
28
  }
24
29
  export interface OperatorRecord {
25
30
  principal: Principal;
@@ -53,6 +58,18 @@ export interface MemoryFileInfo {
53
58
  version: bigint;
54
59
  lastModifiedAt: bigint;
55
60
  }
61
+ /**
62
+ * Result of `startSession()` — the engram's memory assembled for injection at the start of an agent
63
+ * session. `files` are newest-modified first and decrypted; `truncated` is true when the byte cap was
64
+ * hit and older files were left out (page them with `readMemoryBatch`).
65
+ */
66
+ export interface SessionContext {
67
+ files: MemoryFile[];
68
+ includedFiles: number;
69
+ totalFiles: number;
70
+ totalBytes: number;
71
+ truncated: boolean;
72
+ }
56
73
  /** Internal wire type — raw snapshot bytes from canister (plaintext; see encryption.ts) */
57
74
  export interface RawMemoryVersion {
58
75
  version: bigint;
@@ -122,7 +139,6 @@ export interface EngramRecord {
122
139
  owner: Principal;
123
140
  canisterId: Principal;
124
141
  createdAt: bigint;
125
- lastTopUp: bigint;
126
142
  status: EngramRecordStatus;
127
143
  }
128
144
  /** @deprecated Use EngramRecord instead */
@@ -137,6 +153,11 @@ export interface GuardianPermissions {
137
153
  canRevokeOperators: boolean;
138
154
  canFreezePayments: boolean;
139
155
  canPauseWrites: boolean;
156
+ /**
157
+ * The Bools above are FROZEN — every FUTURE permission is a scope string here
158
+ * (converges with OAuth scope names). Candid opt: [] = no extended scopes.
159
+ */
160
+ scopes: [] | [string[]];
140
161
  }
141
162
  export interface GuardianRecord {
142
163
  principal: Principal;
@@ -152,6 +173,10 @@ export type SessionStatus = {
152
173
  closed: null;
153
174
  } | {
154
175
  expired: null;
176
+ }
177
+ /** Reserved catch-all: a future ic402 status arrives as `other`, never as a new tag. */
178
+ | {
179
+ other: string;
155
180
  };
156
181
  export interface Eip3009Authorization {
157
182
  from: string;
@@ -261,6 +286,8 @@ export type AccessGrantResult = {
261
286
  };
262
287
  export interface ContentDelivery {
263
288
  grant: AccessGrant;
289
+ /** EVM settle tx hash when the purchase settled on-chain (null-opt otherwise). */
290
+ settlementTxHash: [string] | [];
264
291
  delivery: {
265
292
  inline: Uint8Array;
266
293
  } | {
@@ -293,10 +320,16 @@ export type PaymentResult = {
293
320
  networkNotSupported: string;
294
321
  } | {
295
322
  settlementFailed: string;
323
+ } | {
324
+ settlementPending: string;
296
325
  } | {
297
326
  reputationTooLow: bigint;
298
327
  } | {
299
328
  depositBelowMinimum: bigint;
329
+ }
330
+ /** Reserved catch-all: a future ic402 result arrives as `other`, never as a new tag. */
331
+ | {
332
+ other: string;
300
333
  };
301
334
  export interface PaymentReceipt {
302
335
  id: string;
@@ -367,6 +400,7 @@ export interface ApprovalRequest {
367
400
  caller: Principal;
368
401
  operation: string;
369
402
  amount: bigint;
403
+ binding: string;
370
404
  policyLimit: bigint;
371
405
  policyField: string;
372
406
  rationale: string;
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@engramx/client",
3
- "version": "0.1.0-rc.2",
3
+ "version": "0.2.0",
4
4
  "description": "Client SDK for EngramX — persistent, decentralized memory for AI agents on ICP",
5
- "license": "MIT",
5
+ "license": "Apache-2.0",
6
6
  "author": "EngramX <developer@engramx.ai>",
7
7
  "repository": {
8
8
  "type": "git",
@@ -50,7 +50,7 @@
50
50
  "@icp-sdk/core": "^5.4.0"
51
51
  },
52
52
  "dependencies": {
53
- "@ic402/client": "^2.7.0",
53
+ "@ic402/client": "^2.9.0",
54
54
  "@icp-sdk/core": "^5.4.0",
55
55
  "@icp-sdk/vetkeys": "0.5.0-beta.0",
56
56
  "cborg": "^5.1.1"
@@ -1,150 +0,0 @@
1
- /**
2
- * Agent Skill: engramx
3
- *
4
- * Provides AI agents with tools to read/write persistent memory from an ICP
5
- * engram canister. Works with any agent framework that supports tool/skill
6
- * registration (OpenClaw, LangChain, etc.).
7
- *
8
- * Setup:
9
- * 1. Install: pnpm add @engramx/client
10
- * 2. Set environment variables:
11
- * ENGRAM_CANISTER_ID=xxxxx-xxxxx-xxxxx-xxxxx-xxx (also checks VAULT_CANISTER_ID for migration)
12
- * ENGRAM_SESSION_KEY_PATH=~/.engramx/session.key
13
- * (also checks ENGRAMX_SESSION_KEY_PATH, VAULT_SESSION_KEY_PATH, and ~/.openclaw/vault-session.key for migration)
14
- * 3. Add this skill to your agent's skill list
15
- */
16
- export declare const name = "engramx";
17
- export declare const description = "Persistent, decentralized memory storage for your agent";
18
- export declare const tools: {
19
- engram_read_memory: {
20
- description: string;
21
- parameters: {
22
- path: {
23
- type: string;
24
- description: string;
25
- };
26
- };
27
- execute: ({ path }: {
28
- path: string;
29
- }) => Promise<string>;
30
- };
31
- engram_append_memory: {
32
- description: string;
33
- parameters: {
34
- path: {
35
- type: string;
36
- description: string;
37
- };
38
- content: {
39
- type: string;
40
- description: string;
41
- };
42
- };
43
- execute: ({ path, content }: {
44
- path: string;
45
- content: string;
46
- }) => Promise<string>;
47
- };
48
- engram_list_memory: {
49
- description: string;
50
- parameters: {};
51
- execute: () => Promise<string>;
52
- };
53
- engram_wallet_balance: {
54
- description: string;
55
- parameters: {};
56
- execute: () => Promise<string>;
57
- };
58
- engram_payment_info: {
59
- description: string;
60
- parameters: {
61
- amount: {
62
- type: string;
63
- description: string;
64
- };
65
- };
66
- execute: ({ amount }: {
67
- amount: number;
68
- }) => Promise<string>;
69
- };
70
- engram_get_profile: {
71
- description: string;
72
- parameters: {};
73
- execute: () => Promise<string>;
74
- };
75
- engram_save_preference: {
76
- description: string;
77
- parameters: {
78
- preference: {
79
- type: string;
80
- description: string;
81
- };
82
- };
83
- execute: ({ preference }: {
84
- preference: string;
85
- }) => Promise<string>;
86
- };
87
- engram_save_insight: {
88
- description: string;
89
- parameters: {
90
- content: {
91
- type: string;
92
- description: string;
93
- };
94
- topic: {
95
- type: string;
96
- description: string;
97
- };
98
- };
99
- execute: ({ content, topic }: {
100
- content: string;
101
- topic?: string;
102
- }) => Promise<string>;
103
- };
104
- engram_save_decision: {
105
- description: string;
106
- parameters: {
107
- decision: {
108
- type: string;
109
- description: string;
110
- };
111
- rationale: {
112
- type: string;
113
- description: string;
114
- };
115
- };
116
- execute: ({ decision, rationale }: {
117
- decision: string;
118
- rationale: string;
119
- }) => Promise<string>;
120
- };
121
- engram_session_summary: {
122
- description: string;
123
- parameters: {
124
- platform: {
125
- type: string;
126
- description: string;
127
- };
128
- summary: {
129
- type: string;
130
- description: string;
131
- };
132
- };
133
- execute: ({ platform, summary }: {
134
- platform: string;
135
- summary: string;
136
- }) => Promise<string>;
137
- };
138
- engram_read_sessions: {
139
- description: string;
140
- parameters: {
141
- limit: {
142
- type: string;
143
- description: string;
144
- };
145
- };
146
- execute: ({ limit }: {
147
- limit?: number;
148
- }) => Promise<string>;
149
- };
150
- };
@@ -1,152 +0,0 @@
1
- /**
2
- * Agent Skill: engramx
3
- *
4
- * Provides AI agents with tools to read/write persistent memory from an ICP
5
- * engram canister. Works with any agent framework that supports tool/skill
6
- * registration (OpenClaw, LangChain, etc.).
7
- *
8
- * Setup:
9
- * 1. Install: pnpm add @engramx/client
10
- * 2. Set environment variables:
11
- * ENGRAM_CANISTER_ID=xxxxx-xxxxx-xxxxx-xxxxx-xxx (also checks VAULT_CANISTER_ID for migration)
12
- * ENGRAM_SESSION_KEY_PATH=~/.engramx/session.key
13
- * (also checks ENGRAMX_SESSION_KEY_PATH, VAULT_SESSION_KEY_PATH, and ~/.openclaw/vault-session.key for migration)
14
- * 3. Add this skill to your agent's skill list
15
- */
16
- import { EngramClient } from './EngramClient';
17
- import { ProfileManager } from './ProfileManager';
18
- import { SessionManager } from './SessionManager';
19
- const canisterId = process.env['ENGRAM_CANISTER_ID'] || process.env['VAULT_CANISTER_ID'];
20
- if (!canisterId) {
21
- throw new Error('ENGRAM_CANISTER_ID environment variable is required');
22
- }
23
- const sessionKeyPath = process.env['ENGRAM_SESSION_KEY_PATH'] ||
24
- process.env['ENGRAMX_SESSION_KEY_PATH'] ||
25
- process.env['VAULT_SESSION_KEY_PATH'];
26
- if (!sessionKeyPath) {
27
- throw new Error('ENGRAM_SESSION_KEY_PATH environment variable is required');
28
- }
29
- const engram = new EngramClient({
30
- canisterId,
31
- sessionKeyPath,
32
- cacheMaxAge: 60000,
33
- offlineQueuePath: process.env['ENGRAM_OFFLINE_QUEUE_PATH'] ||
34
- process.env['VAULT_OFFLINE_QUEUE_PATH'] ||
35
- undefined,
36
- });
37
- const profile = new ProfileManager(engram);
38
- const sessions = new SessionManager(engram);
39
- export const name = 'engramx';
40
- export const description = 'Persistent, decentralized memory storage for your agent';
41
- export const tools = {
42
- engram_read_memory: {
43
- description: 'Read a memory file from the engram (e.g., "MEMORY.md", "memory/2026-02-11.md")',
44
- parameters: { path: { type: 'string', description: 'File path' } },
45
- execute: async ({ path }) => {
46
- const file = await engram.readMemory(path);
47
- return file.content;
48
- },
49
- },
50
- engram_append_memory: {
51
- description: 'Append content to a memory file in the engram. Creates the file if it does not exist. Cannot modify owner-protected paths.',
52
- parameters: {
53
- path: { type: 'string', description: 'File path' },
54
- content: { type: 'string', description: 'Content to append' },
55
- },
56
- execute: async ({ path, content }) => {
57
- const version = await engram.appendMemory(path, content);
58
- return `Appended to ${path} (version ${version})`;
59
- },
60
- },
61
- engram_list_memory: {
62
- description: 'List all memory files stored in the engram',
63
- parameters: {},
64
- execute: async () => {
65
- const files = await engram.listMemoryFiles();
66
- return files
67
- .map((f) => `${f.path} (v${f.version}, modified ${new Date(Number(f.lastModifiedAt) / 1000000).toISOString()})`)
68
- .join('\n');
69
- },
70
- },
71
- engram_wallet_balance: {
72
- description: 'Check the engram wallet balance',
73
- parameters: {},
74
- execute: async () => {
75
- const balance = await engram.walletBalance();
76
- return `Balance: ${Number(balance) / 100000000} ICP`;
77
- },
78
- },
79
- engram_payment_info: {
80
- description: 'Get x402 payment requirements for accessing engram memory. Returns pricing and accepted payment methods.',
81
- parameters: {
82
- amount: { type: 'number', description: 'Amount in USDC e6s (1000 = $0.001)' },
83
- },
84
- execute: async ({ amount }) => {
85
- const requirements = await engram.getPaymentRequirements(BigInt(amount));
86
- return `Payment requirements (${requirements.length} options):\n${JSON.stringify(requirements, (_, v) => (typeof v === 'bigint' ? v.toString() : v), 2)}`;
87
- },
88
- },
89
- // ── Schema-aware tools (ProfileManager / SessionManager) ────
90
- engram_get_profile: {
91
- description: 'Load user identity (soul, user, preferences) and accumulated lessons in one call. Use at session start.',
92
- parameters: {},
93
- execute: async () => {
94
- const p = await profile.getProfile();
95
- return JSON.stringify(p, null, 2);
96
- },
97
- },
98
- engram_save_preference: {
99
- description: 'Save a user preference (e.g. "prefers terse responses"). Persists across platforms.',
100
- parameters: {
101
- preference: { type: 'string', description: 'The preference to save' },
102
- },
103
- execute: async ({ preference }) => {
104
- const version = await profile.savePreference(preference);
105
- return `Preference saved (version ${version})`;
106
- },
107
- },
108
- engram_save_insight: {
109
- description: 'Save a lesson or insight. Optionally provide a topic for domain-specific knowledge.',
110
- parameters: {
111
- content: { type: 'string', description: 'The insight to save' },
112
- topic: { type: 'string', description: 'Optional domain topic (lowercase, alphanumeric)' },
113
- },
114
- execute: async ({ content, topic }) => {
115
- const version = await profile.saveInsight({ content, topic });
116
- return `Insight saved${topic ? ` (topic: ${topic})` : ''} (version ${version})`;
117
- },
118
- },
119
- engram_save_decision: {
120
- description: 'Record a decision and its rationale for future cross-platform reference.',
121
- parameters: {
122
- decision: { type: 'string', description: 'What was decided' },
123
- rationale: { type: 'string', description: 'Why this decision was made' },
124
- },
125
- execute: async ({ decision, rationale }) => {
126
- const version = await profile.saveDecision(decision, rationale);
127
- return `Decision recorded (version ${version})`;
128
- },
129
- },
130
- engram_session_summary: {
131
- description: 'Write a session summary for today. Other platforms can read this for continuity.',
132
- parameters: {
133
- platform: { type: 'string', description: 'Platform name (e.g. "openclaw")' },
134
- summary: { type: 'string', description: 'Summary of what was accomplished' },
135
- },
136
- execute: async ({ platform, summary }) => {
137
- const version = await sessions.writeSummary(platform, summary);
138
- return `Session summary saved for ${platform} (version ${version})`;
139
- },
140
- },
141
- engram_read_sessions: {
142
- description: 'Read recent session summaries across platforms for continuity.',
143
- parameters: {
144
- limit: { type: 'number', description: 'Max sessions to return (default: 5)' },
145
- },
146
- execute: async ({ limit }) => {
147
- const result = await sessions.readRecent(limit ?? 5);
148
- return JSON.stringify(result, null, 2);
149
- },
150
- },
151
- };
152
- //# sourceMappingURL=agent-skill.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-skill.js","sourceRoot":"","sources":["../src/agent-skill.ts"],"names":[],"mappings":"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"}