@getmarrow/sdk 2.5.6 → 2.7.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.
package/README.md CHANGED
@@ -8,7 +8,7 @@ Most agents still work like this:
8
8
  - they forget what happened
9
9
  - then they repeat the same mistake next session
10
10
 
11
- Thats fine for a toy. Its a problem for anything real.
11
+ That's fine for a toy. It's a problem for anything real.
12
12
 
13
13
  `@getmarrow/sdk` gives your agent a memory that compounds. It lets you log intent before meaningful work, pull back useful decision intelligence, and commit the outcome afterward so the next run starts smarter instead of blank.
14
14
 
@@ -16,16 +16,26 @@ That’s fine for a toy. It’s a problem for anything real.
16
16
 
17
17
  ---
18
18
 
19
+ ## What's New in v2.7.0
20
+
21
+ - **`marrow.run()`** — single-call wrapper. Auto-orients, thinks, runs your function, commits outcome. Zero ceremony.
22
+ - **`marrowFromEnv()`** — create client from env vars, defaults to `mode: 'auto'`
23
+ - **`createMarrowClient()`** — clean factory export
24
+ - **Session identity** — pass `sessionId` to tag all requests with `X-Marrow-Session-Id`
25
+ - **Auto mode** — set `mode: 'auto'` and Marrow handles orient + think + commit around your actions
26
+
27
+ ---
28
+
19
29
  ## The Problem
20
30
 
21
31
  Without durable decision memory:
22
32
  - agents repeat bad calls
23
33
  - successful patterns get lost
24
- - work gets marked done without outcome context
34
+ - work gets marked "done" without outcome context
25
35
  - external actions happen with no structured trail
26
36
  - every new session wastes time rediscovering what already failed
27
37
 
28
- A bigger context window doesnt solve this.
38
+ A bigger context window doesn't solve this.
29
39
  You need a system that remembers:
30
40
  - what the agent was trying to do
31
41
  - what it actually did
@@ -51,11 +61,53 @@ That gives you a usable operating loop:
51
61
  orient -> think -> act -> check -> commit
52
62
  ```
53
63
 
54
- Not just memory for memorys sake —
64
+ Not just memory for memory's sake —
55
65
  memory that improves execution.
56
66
 
57
67
  ---
58
68
 
69
+ ## Install
70
+
71
+ ```bash
72
+ npm install @getmarrow/sdk
73
+ ```
74
+
75
+ Get your API key at [getmarrow.ai](https://getmarrow.ai)
76
+
77
+ ---
78
+
79
+ ## Quick Start
80
+
81
+ ```typescript
82
+ import { createMarrowClient } from '@getmarrow/sdk';
83
+
84
+ const marrow = createMarrowClient(process.env.MARROW_API_KEY!);
85
+
86
+ await marrow.orient();
87
+ await marrow.think({ action: 'deploy to production', type: 'deployment' });
88
+ await deployToProduction();
89
+ await marrow.commit({ success: true, outcome: 'Deployed v2.7.0 — 0 errors' });
90
+ ```
91
+
92
+ ---
93
+
94
+ ## Zero-Ceremony Mode
95
+
96
+ The simplest integration — one call handles everything:
97
+
98
+ ```typescript
99
+ import { marrowFromEnv } from '@getmarrow/sdk';
100
+
101
+ const marrow = marrowFromEnv(); // reads MARROW_API_KEY, defaults to auto mode
102
+
103
+ await marrow.run('deploy to production', async () => {
104
+ await deployToProduction();
105
+ });
106
+ // orient + think + commit fire automatically
107
+ ```
108
+
109
+ ---
110
+
59
111
  ## How It Works
60
112
 
61
113
  ### 1. Orient
@@ -104,7 +156,7 @@ const state = marrow.check();
104
156
  console.log(state.recommendedNext);
105
157
  ```
106
158
 
107
- This is what tells the agent whether its actually ready to move on.
159
+ This is what tells the agent whether it's actually ready to move on.
108
160
 
109
161
  ### 5. Commit
110
162
  Close the loop with outcome memory.
@@ -117,7 +169,40 @@ await marrow.commit({
117
169
  });
118
170
  ```
119
171
 
120
- Now the next session doesnt start from scratch.
172
+ Now the next session doesn't start from scratch.
173
+
174
+ ---
175
+
176
+ ## Creating a Client
177
+
178
+ ### Factory (recommended)
179
+
180
+ ```typescript
181
+ import { createMarrowClient } from '@getmarrow/sdk';
182
+
183
+ const marrow = createMarrowClient('mrw_...', {
184
+ sessionId: 'my-agent-run-42', // optional — sent as X-Marrow-Session-Id header
185
+ mode: 'warn', // optional — off | warn | require | auto
186
+ });
187
+ ```
188
+
189
+ ### From environment variables
190
+
191
+ ```typescript
192
+ import { marrowFromEnv } from '@getmarrow/sdk';
193
+
194
+ // Reads MARROW_API_KEY (required) and MARROW_BASE_URL (optional)
195
+ // Defaults to mode: 'auto'
196
+ const marrow = marrowFromEnv({ sessionId: 'my-agent-run-42' });
197
+ ```
198
+
199
+ ### Direct constructor
200
+
201
+ ```typescript
202
+ import MarrowClient from '@getmarrow/sdk';
203
+
204
+ const marrow = new MarrowClient('mrw_...', { baseUrl: '...', sessionId: '...', mode: 'warn' });
205
+ ```
121
206
 
122
207
  ---
123
208
 
@@ -131,8 +216,8 @@ Marrow stores **decision history**:
131
216
  - what patterns are emerging
132
217
  - what the agent should do better next time
133
218
 
134
- Thats the difference between:
135
- - an agent that has memory
219
+ That's the difference between:
220
+ - an agent that "has memory"
136
221
  - and an agent that actually **improves**
137
222
 
138
223
  ---
@@ -154,16 +239,6 @@ In plain English:
154
239
 
155
240
  ---
156
241
 
157
- ## Install
158
-
159
- ```bash
160
- npm install @getmarrow/sdk
161
- ```
162
-
163
- Get your API key at [getmarrow.ai](https://getmarrow.ai)
164
-
165
- ---
166
-
167
242
  ## What's New in v2.5.4
168
243
 
169
244
  ### Loop enforcement is live in the SDK
@@ -261,3 +336,36 @@ console.log(marrow.check().state.recommendedNext);
261
336
  ### Session start copy
262
337
  - `Tip: log plans, decisions, and outcomes to Marrow so your agent improves over time.`
263
338
  - `You have not logged any decisions yet this session. Before acting, call marrow_think.`
339
+
340
+ ---
341
+
342
+ ## API Reference
343
+
344
+ ### Exports
345
+
346
+ | Export | Description |
347
+ |--------|-------------|
348
+ | `MarrowClient` | Main client class |
349
+ | `createMarrowClient(apiKey, options?)` | Factory — creates a MarrowClient |
350
+ | `marrowFromEnv(options?)` | Creates client from `MARROW_API_KEY` / `MARROW_BASE_URL` env vars (auto mode default) |
351
+ | `MarrowLoopRequiredError` | Thrown in `require` mode when loop is violated |
352
+
353
+ ### MarrowClient Methods
354
+
355
+ | Method | Description |
356
+ |--------|-------------|
357
+ | `run(description, fn, options?)` | Zero-ceremony wrapper: orient + think + fn + commit |
358
+ | `orient(params?)` | Start session with context from prior decisions |
359
+ | `think(params)` | Log intent, get intelligence |
360
+ | `commit(params)` | Close the loop with outcome |
361
+ | `check()` | Inspect current loop state |
362
+ | `enforce(options?)` | Set enforcement mode |
363
+ | `wrap(meta, fn)` | Wrap an action with intent/outcome tracking |
364
+ | `beforeAction(meta)` | Pre-action enforcement check |
365
+ | `afterAction(meta)` | Post-action state update |
366
+ | `wrapPublish(action, fn)` | Wrap a publish action |
367
+ | `wrapDeploy(action, fn)` | Wrap a deploy action |
368
+ | `wrapExternalWrite(action, fn)` | Wrap an external write |
369
+ | `wrapHandoff(action, fn)` | Wrap a handoff |
370
+ | `agentPatterns(params?)` | Get failure patterns and behavioral drift |
371
+ | `analytics()` | Get health score and performance breakdown |
package/dist/index.d.ts CHANGED
@@ -8,6 +8,9 @@ export interface ActionableInsight {
8
8
  export type MarrowDecisionType = 'implementation' | 'security' | 'architecture' | 'process' | 'general';
9
9
  export type MarrowEnforcementMode = 'off' | 'warn' | 'require' | 'auto';
10
10
  export type MarrowLoopRecommendation = 'orient' | 'think' | 'act' | 'commit' | 'done';
11
+ export type MarrowBlockReasonCode = 'missing_intent_for_external_action' | 'missing_outcome_for_completion' | 'loop_closed' | 'no_meaningful_action';
12
+ export type MarrowActionClass = 'read_only' | 'low_risk_internal' | 'state_changing_internal' | 'external_irreversible';
13
+ export type MarrowChokePoint = 'publish' | 'deploy' | 'outbound_message' | 'external_write' | 'handoff' | 'other';
11
14
  export interface MarrowLoopState {
12
15
  mode: MarrowEnforcementMode;
13
16
  orientedAt: string | null;
@@ -15,6 +18,7 @@ export interface MarrowLoopState {
15
18
  lastOutcomeAt: string | null;
16
19
  hasIntentLog: boolean;
17
20
  hasOutcomeLog: boolean;
21
+ meaningfulActionTaken: boolean;
18
22
  actionCountSinceLastThink: number;
19
23
  externalActionCountSinceLastThink: number;
20
24
  lastDecisionId: string | null;
@@ -22,6 +26,8 @@ export interface MarrowLoopState {
22
26
  pendingAction: string | null;
23
27
  inFlightAction: string | null;
24
28
  lastActionAt: string | null;
29
+ lastActionClass: MarrowActionClass | null;
30
+ lastChokePoint: MarrowChokePoint | null;
25
31
  recommendedNext: MarrowLoopRecommendation;
26
32
  loopState: 'idle' | 'oriented' | 'intent_logged' | 'acting' | 'outcome_logged';
27
33
  message: string | null;
@@ -34,6 +40,9 @@ export interface MarrowCheckResult {
34
40
  warnings: string[];
35
41
  recommendedNext: MarrowLoopRecommendation;
36
42
  shouldBlock: boolean;
43
+ shouldBlockCompletion: boolean;
44
+ shouldBlockExternalAction: boolean;
45
+ blockReasonCodes: MarrowBlockReasonCode[];
37
46
  }
38
47
  export interface MarrowEnforceOptions {
39
48
  mode?: MarrowEnforcementMode;
@@ -45,6 +54,9 @@ export interface MarrowActionMeta {
45
54
  action: string;
46
55
  type?: MarrowDecisionType;
47
56
  external?: boolean;
57
+ meaningful?: boolean;
58
+ actionClass?: MarrowActionClass;
59
+ chokePoint?: MarrowChokePoint;
48
60
  name?: string;
49
61
  context?: Record<string, unknown>;
50
62
  result?: string;
@@ -125,20 +137,33 @@ export declare class MarrowLoopRequiredError extends Error {
125
137
  readonly state: MarrowLoopState;
126
138
  constructor(message: string, state: MarrowLoopState);
127
139
  }
140
+ export interface MarrowClientOptions {
141
+ baseUrl?: string;
142
+ sessionId?: string;
143
+ mode?: MarrowEnforcementMode;
144
+ }
128
145
  export declare class MarrowClient {
129
146
  private apiKey;
130
- private baseUrl;
131
147
  private decisionId;
132
148
  private orientWarnings;
133
149
  private enforcement;
134
150
  private loopState;
151
+ private sessionId;
135
152
  private reminderBudget;
136
- constructor(apiKey: string, baseUrl?: string);
153
+ constructor(apiKey: string, options?: MarrowClientOptions | string);
137
154
  enforce(options?: MarrowEnforceOptions): MarrowCheckResult;
138
155
  check(): MarrowCheckResult;
156
+ run<T>(description: string, fn: () => Promise<T> | T, options?: {
157
+ type?: MarrowDecisionType;
158
+ context?: Record<string, unknown>;
159
+ }): Promise<T>;
139
160
  beforeAction(meta: MarrowActionMeta): Promise<MarrowCheckResult>;
140
161
  afterAction(meta: MarrowActionMeta): Promise<MarrowCheckResult>;
141
162
  wrap<T>(meta: MarrowActionMeta, fn: () => Promise<T> | T): Promise<T>;
163
+ wrapPublish<T>(action: string, fn: () => Promise<T> | T, meta?: Omit<MarrowActionMeta, 'action' | 'chokePoint' | 'actionClass' | 'external' | 'meaningful'>): Promise<T>;
164
+ wrapDeploy<T>(action: string, fn: () => Promise<T> | T, meta?: Omit<MarrowActionMeta, 'action' | 'chokePoint' | 'actionClass' | 'external' | 'meaningful'>): Promise<T>;
165
+ wrapExternalWrite<T>(action: string, fn: () => Promise<T> | T, meta?: Omit<MarrowActionMeta, 'action' | 'chokePoint' | 'actionClass' | 'external' | 'meaningful'>): Promise<T>;
166
+ wrapHandoff<T>(action: string, fn: () => Promise<T> | T, meta?: Omit<MarrowActionMeta, 'action' | 'chokePoint' | 'actionClass' | 'external' | 'meaningful'>): Promise<T>;
142
167
  think(params: {
143
168
  action: string;
144
169
  type?: MarrowDecisionType;
@@ -195,7 +220,20 @@ export declare class MarrowClient {
195
220
  };
196
221
  [key: string]: unknown;
197
222
  }>;
223
+ private baseUrl;
198
224
  private request;
199
225
  }
226
+ /**
227
+ * Create a MarrowClient with explicit API key and options.
228
+ */
229
+ export declare function createMarrowClient(apiKey: string, options?: MarrowClientOptions): MarrowClient;
230
+ /**
231
+ * Create a MarrowClient from environment variables.
232
+ * Reads MARROW_API_KEY (required) and MARROW_BASE_URL (optional).
233
+ */
234
+ export declare function marrowFromEnv(options?: {
235
+ sessionId?: string;
236
+ mode?: MarrowEnforcementMode;
237
+ }): MarrowClient;
200
238
  export default MarrowClient;
201
239
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MarrowClient = exports.MarrowLoopRequiredError = void 0;
3
+ exports.marrowFromEnv = exports.createMarrowClient = exports.MarrowClient = exports.MarrowLoopRequiredError = void 0;
4
4
  class MarrowLoopRequiredError extends Error {
5
5
  constructor(message, state) {
6
6
  super(message);
@@ -27,10 +27,18 @@ function cloneState(state) {
27
27
  function safeErrorMessage(error) {
28
28
  return error instanceof Error ? error.message : String(error);
29
29
  }
30
+ function isMeaningfulAction(meta, isExternal) {
31
+ if (meta.meaningful !== undefined)
32
+ return meta.meaningful;
33
+ if (meta.chokePoint && meta.chokePoint !== 'other')
34
+ return true;
35
+ if (meta.actionClass === 'state_changing_internal' || meta.actionClass === 'external_irreversible')
36
+ return true;
37
+ return isExternal;
38
+ }
30
39
  class MarrowClient {
31
- constructor(apiKey, baseUrl = 'https://api.getmarrow.ai') {
40
+ constructor(apiKey, options) {
32
41
  this.apiKey = apiKey;
33
- this.baseUrl = baseUrl;
34
42
  this.decisionId = null;
35
43
  this.orientWarnings = [];
36
44
  this.reminderBudget = {
@@ -38,6 +46,16 @@ class MarrowClient {
38
46
  outcomeReminderShown: false,
39
47
  lastWarnedActionCount: -1,
40
48
  };
49
+ // Support legacy positional baseUrl: new MarrowClient(key, 'https://...')
50
+ if (typeof options === 'string') {
51
+ this.baseUrl = options;
52
+ this.sessionId = null;
53
+ }
54
+ else {
55
+ this.baseUrl = options?.baseUrl ?? 'https://api.getmarrow.ai';
56
+ this.sessionId = options?.sessionId ?? null;
57
+ }
58
+ const initialMode = (typeof options === 'object' ? options?.mode : undefined) ?? 'warn';
41
59
  if (typeof process !== 'undefined' && apiKey && apiKey.startsWith('mrw_')) {
42
60
  const fromEnv = Object.values(process.env || {}).includes(apiKey);
43
61
  if (!fromEnv) {
@@ -45,7 +63,7 @@ class MarrowClient {
45
63
  }
46
64
  }
47
65
  this.enforcement = {
48
- mode: 'warn',
66
+ mode: initialMode,
49
67
  remindEveryActions: 3,
50
68
  externalActions: ['http', 'fetch', 'api', 'deploy', 'publish', 'send', 'email', 'message', 'payment', 'write', 'delete', 'update', 'create'],
51
69
  classifyExternal: (meta) => {
@@ -62,6 +80,7 @@ class MarrowClient {
62
80
  lastOutcomeAt: null,
63
81
  hasIntentLog: false,
64
82
  hasOutcomeLog: false,
83
+ meaningfulActionTaken: false,
65
84
  actionCountSinceLastThink: 0,
66
85
  externalActionCountSinceLastThink: 0,
67
86
  lastDecisionId: null,
@@ -69,6 +88,8 @@ class MarrowClient {
69
88
  pendingAction: null,
70
89
  inFlightAction: null,
71
90
  lastActionAt: null,
91
+ lastActionClass: null,
92
+ lastChokePoint: null,
72
93
  recommendedNext: 'orient',
73
94
  loopState: 'idle',
74
95
  message: DEFAULT_HINT,
@@ -90,7 +111,10 @@ class MarrowClient {
90
111
  check() {
91
112
  const state = cloneState(this.loopState);
92
113
  const warnings = [];
114
+ const blockReasonCodes = [];
93
115
  let shouldBlock = false;
116
+ let shouldBlockCompletion = false;
117
+ let shouldBlockExternalAction = false;
94
118
  if (state.mode === 'off') {
95
119
  state.message = null;
96
120
  state.hints = [];
@@ -101,6 +125,9 @@ class MarrowClient {
101
125
  warnings: [],
102
126
  recommendedNext: state.recommendedNext,
103
127
  shouldBlock: false,
128
+ shouldBlockCompletion: false,
129
+ shouldBlockExternalAction: false,
130
+ blockReasonCodes: [],
104
131
  };
105
132
  }
106
133
  if (!state.orientedAt) {
@@ -113,19 +140,27 @@ class MarrowClient {
113
140
  state.recommendedNext = 'done';
114
141
  state.loopState = 'outcome_logged';
115
142
  state.message = 'Loop closed. Ready for the next task.';
143
+ blockReasonCodes.push('loop_closed');
116
144
  }
117
145
  else if (!state.hasIntentLog) {
118
146
  warnings.push(POST_ORIENT_NUDGE);
119
147
  state.recommendedNext = 'think';
120
148
  state.loopState = 'oriented';
121
149
  state.message = POST_ORIENT_NUDGE;
150
+ if (state.meaningfulActionTaken) {
151
+ shouldBlockExternalAction = true;
152
+ blockReasonCodes.push('missing_intent_for_external_action');
153
+ }
122
154
  }
123
155
  else if (state.hasIntentLog && !state.hasOutcomeLog && state.actionCountSinceLastThink > 0) {
124
156
  state.recommendedNext = 'commit';
125
157
  state.loopState = 'acting';
126
158
  state.message = PRE_EXIT_REMINDER;
127
- if (state.externalActionCountSinceLastThink > 0)
159
+ if (state.externalActionCountSinceLastThink > 0 || state.meaningfulActionTaken) {
128
160
  warnings.push(PRE_EXIT_REMINDER);
161
+ shouldBlockCompletion = true;
162
+ blockReasonCodes.push('missing_outcome_for_completion');
163
+ }
129
164
  }
130
165
  else if (state.hasIntentLog && !state.hasOutcomeLog) {
131
166
  state.recommendedNext = 'act';
@@ -137,10 +172,17 @@ class MarrowClient {
137
172
  state.loopState = state.hasOutcomeLog ? 'outcome_logged' : 'intent_logged';
138
173
  state.message = state.hasOutcomeLog ? 'Loop closed. Ready for the next task.' : state.message;
139
174
  }
175
+ if (!state.meaningfulActionTaken && !state.hasOutcomeLog) {
176
+ blockReasonCodes.push('no_meaningful_action');
177
+ }
140
178
  if (state.mode === 'require' && state.hasIntentLog && !state.hasOutcomeLog && state.externalActionCountSinceLastThink > 0) {
141
179
  warnings.push(REQUIRE_COMPLETION_ERROR);
142
180
  shouldBlock = true;
181
+ shouldBlockCompletion = true;
182
+ if (!blockReasonCodes.includes('missing_outcome_for_completion'))
183
+ blockReasonCodes.push('missing_outcome_for_completion');
143
184
  }
185
+ shouldBlock = shouldBlock || shouldBlockCompletion || shouldBlockExternalAction;
144
186
  return {
145
187
  ok: !shouldBlock,
146
188
  mode: state.mode,
@@ -148,11 +190,42 @@ class MarrowClient {
148
190
  warnings,
149
191
  recommendedNext: state.recommendedNext,
150
192
  shouldBlock,
193
+ shouldBlockCompletion,
194
+ shouldBlockExternalAction,
195
+ blockReasonCodes,
151
196
  };
152
197
  }
198
+ async run(description, fn, options) {
199
+ if (!this.loopState.orientedAt) {
200
+ await this.orient();
201
+ }
202
+ await this.think({
203
+ action: description,
204
+ type: options?.type ?? 'general',
205
+ context: options?.context,
206
+ });
207
+ try {
208
+ const result = await fn();
209
+ await this.commit({ success: true, outcome: 'Task completed: ' + description });
210
+ return result;
211
+ }
212
+ catch (error) {
213
+ try {
214
+ await this.commit({ success: false, outcome: safeErrorMessage(error) });
215
+ }
216
+ catch {
217
+ // commit failed — don't swallow the original error
218
+ }
219
+ throw error;
220
+ }
221
+ }
153
222
  async beforeAction(meta) {
154
223
  const isExternal = this.enforcement.classifyExternal(meta);
224
+ const meaningful = isMeaningfulAction(meta, isExternal);
155
225
  const actionTime = nowIso();
226
+ if (this.enforcement.mode === 'auto' && !this.loopState.orientedAt) {
227
+ await this.orient();
228
+ }
156
229
  if (this.enforcement.mode === 'auto' && !this.loopState.hasIntentLog) {
157
230
  await this.think({
158
231
  action: meta.action,
@@ -166,6 +239,10 @@ class MarrowClient {
166
239
  this.loopState.lastActionAt = actionTime;
167
240
  this.loopState.inFlightAction = meta.action;
168
241
  this.loopState.actionCountSinceLastThink += 1;
242
+ this.loopState.lastActionClass = meta.actionClass || (isExternal ? 'external_irreversible' : 'low_risk_internal');
243
+ this.loopState.lastChokePoint = meta.chokePoint || 'other';
244
+ if (meaningful)
245
+ this.loopState.meaningfulActionTaken = true;
169
246
  if (isExternal)
170
247
  this.loopState.externalActionCountSinceLastThink += 1;
171
248
  if (this.enforcement.mode === 'off') {
@@ -213,6 +290,18 @@ class MarrowClient {
213
290
  throw error;
214
291
  }
215
292
  }
293
+ async wrapPublish(action, fn, meta = {}) {
294
+ return this.wrap({ ...meta, action, chokePoint: 'publish', actionClass: 'external_irreversible', external: true, meaningful: true }, fn);
295
+ }
296
+ async wrapDeploy(action, fn, meta = {}) {
297
+ return this.wrap({ ...meta, action, chokePoint: 'deploy', actionClass: 'external_irreversible', external: true, meaningful: true }, fn);
298
+ }
299
+ async wrapExternalWrite(action, fn, meta = {}) {
300
+ return this.wrap({ ...meta, action, chokePoint: 'external_write', actionClass: 'external_irreversible', external: true, meaningful: true }, fn);
301
+ }
302
+ async wrapHandoff(action, fn, meta = {}) {
303
+ return this.wrap({ ...meta, action, chokePoint: 'handoff', actionClass: 'state_changing_internal', external: false, meaningful: true }, fn);
304
+ }
216
305
  async think(params) {
217
306
  const body = {
218
307
  action: params.action,
@@ -408,12 +497,19 @@ class MarrowClient {
408
497
  };
409
498
  }
410
499
  async request(method, path, body) {
500
+ const headers = {
501
+ 'Authorization': `Bearer ${this.apiKey}`,
502
+ };
503
+ if (body)
504
+ headers['Content-Type'] = 'application/json';
505
+ if (this.sessionId) {
506
+ const safe = this.sessionId.replace(/[^\x20-\x7E]/g, '').slice(0, 256);
507
+ if (safe)
508
+ headers['X-Marrow-Session-Id'] = safe;
509
+ }
411
510
  const res = await fetch(`${this.baseUrl}${path}`, {
412
511
  method,
413
- headers: {
414
- 'Authorization': `Bearer ${this.apiKey}`,
415
- ...(body ? { 'Content-Type': 'application/json' } : {}),
416
- },
512
+ headers,
417
513
  body: body ? JSON.stringify(body) : undefined,
418
514
  });
419
515
  const json = await res.json();
@@ -423,5 +519,28 @@ class MarrowClient {
423
519
  }
424
520
  }
425
521
  exports.MarrowClient = MarrowClient;
522
+ /**
523
+ * Create a MarrowClient with explicit API key and options.
524
+ */
525
+ function createMarrowClient(apiKey, options) {
526
+ return new MarrowClient(apiKey, options);
527
+ }
528
+ exports.createMarrowClient = createMarrowClient;
529
+ /**
530
+ * Create a MarrowClient from environment variables.
531
+ * Reads MARROW_API_KEY (required) and MARROW_BASE_URL (optional).
532
+ */
533
+ function marrowFromEnv(options) {
534
+ const apiKey = process.env.MARROW_API_KEY;
535
+ if (!apiKey) {
536
+ throw new Error('MARROW_API_KEY environment variable is required. Get your key at https://getmarrow.ai');
537
+ }
538
+ return new MarrowClient(apiKey, {
539
+ baseUrl: process.env.MARROW_BASE_URL,
540
+ sessionId: options?.sessionId,
541
+ mode: options?.mode ?? 'auto',
542
+ });
543
+ }
544
+ exports.marrowFromEnv = marrowFromEnv;
426
545
  exports.default = MarrowClient;
427
546
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AA2GA,MAAa,uBAAwB,SAAQ,KAAK;IAIhD,YAAY,OAAe,EAAE,KAAsB;QACjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAJR,SAAI,GAAG,sBAAsB,CAAC;QAKrC,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AATD,0DASC;AAED,MAAM,YAAY,GAAG,qFAAqF,CAAC;AAC3G,MAAM,iBAAiB,GAAG,uFAAuF,CAAC;AAClH,MAAM,iBAAiB,GAAG,kFAAkF,CAAC;AAC7G,MAAM,sBAAsB,GAAG,8EAA8E,CAAC;AAC9G,MAAM,wBAAwB,GAAG,0FAA0F,CAAC;AAE5H,SAAS,MAAM;IACb,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,UAAU,CAAC,KAAsB;IACxC,OAAO;QACL,GAAG,KAAK;QACR,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,MAAa,YAAY;IAWvB,YAAoB,MAAc,EAAU,UAAU,0BAA0B;QAA5D,WAAM,GAAN,MAAM,CAAQ;QAAU,YAAO,GAAP,OAAO,CAA6B;QAVxE,eAAU,GAAkB,IAAI,CAAC;QACjC,mBAAc,GAAkE,EAAE,CAAC;QAGnF,mBAAc,GAAG;YACvB,iBAAiB,EAAE,KAAK;YACxB,oBAAoB,EAAE,KAAK;YAC3B,qBAAqB,EAAE,CAAC,CAAC;SAC1B,CAAC;QAGA,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAClE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,yHAAyH,CAAC,CAAC;YAC1I,CAAC;QACH,CAAC;QAED,IAAI,CAAC,WAAW,GAAG;YACjB,IAAI,EAAE,MAAM;YACZ,kBAAkB,EAAE,CAAC;YACrB,eAAe,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;YAC5I,gBAAgB,EAAE,CAAC,IAAsB,EAAE,EAAE;gBAC3C,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;oBAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;gBACtD,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;gBACnE,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YACtF,CAAC;SACF,CAAC;QAEF,IAAI,CAAC,SAAS,GAAG;YACf,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;YAC3B,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,IAAI;YACjB,aAAa,EAAE,IAAI;YACnB,YAAY,EAAE,KAAK;YACnB,aAAa,EAAE,KAAK;YACpB,yBAAyB,EAAE,CAAC;YAC5B,iCAAiC,EAAE,CAAC;YACpC,cAAc,EAAE,IAAI;YACpB,iBAAiB,EAAE,IAAI;YACvB,aAAa,EAAE,IAAI;YACnB,cAAc,EAAE,IAAI;YACpB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,QAAQ;YACzB,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,CAAC,YAAY,CAAC;SACtB,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,UAAgC,EAAE;QACxC,IAAI,CAAC,WAAW,GAAG;YACjB,GAAG,IAAI,CAAC,WAAW;YACnB,GAAG,OAAO;YACV,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI;YAC3C,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB;YACrF,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe;YAC5E,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC,WAAW,CAAC,gBAAgB;SAChF,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAC5C,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,KAAK;QACH,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACzB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;YACjB,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK;gBACL,QAAQ,EAAE,EAAE;gBACZ,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,WAAW,EAAE,KAAK;aACnB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YACtB,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5B,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC;YACjC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC;YACzB,KAAK,CAAC,OAAO,GAAG,YAAY,CAAC;QAC/B,CAAC;aAAM,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YAC/B,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC;YAC/B,KAAK,CAAC,SAAS,GAAG,gBAAgB,CAAC;YACnC,KAAK,CAAC,OAAO,GAAG,uCAAuC,CAAC;QAC1D,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YAC/B,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACjC,KAAK,CAAC,eAAe,GAAG,OAAO,CAAC;YAChC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC;YAC7B,KAAK,CAAC,OAAO,GAAG,iBAAiB,CAAC;QACpC,CAAC;aAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,yBAAyB,GAAG,CAAC,EAAE,CAAC;YAC7F,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC;YACjC,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC3B,KAAK,CAAC,OAAO,GAAG,iBAAiB,CAAC;YAClC,IAAI,KAAK,CAAC,iCAAiC,GAAG,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpF,CAAC;aAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YACtD,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;YAC9B,KAAK,CAAC,SAAS,GAAG,eAAe,CAAC;YAClC,KAAK,CAAC,OAAO,GAAG,2CAA2C,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7D,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAC;YAC3E,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QAChG,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,iCAAiC,GAAG,CAAC,EAAE,CAAC;YAC1H,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACxC,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;QAED,OAAO;YACL,EAAE,EAAE,CAAC,WAAW;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK;YACL,QAAQ;YACR,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAsB;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;QAE5B,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;YACrE,MAAM,IAAI,CAAC,KAAK,CAAC;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,SAAS;gBAC5B,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;YACtF,MAAM,IAAI,uBAAuB,CAAC,sBAAsB,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,YAAY,GAAG,UAAU,CAAC;QACzC,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,yBAAyB,IAAI,CAAC,CAAC;QAC9C,IAAI,UAAU;YAAE,IAAI,CAAC,SAAS,CAAC,iCAAiC,IAAI,CAAC,CAAC;QAEtE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM;eAC9C,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY;eAC5B,IAAI,CAAC,SAAS,CAAC,yBAAyB,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB;eAC/E,IAAI,CAAC,cAAc,CAAC,qBAAqB,KAAK,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC;QAE5F,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,cAAc,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC;YACrF,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAsB;QACtC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAClG,MAAM,IAAI,CAAC,MAAM,CAAC;gBAChB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;gBAC7B,OAAO,EAAE,IAAI,CAAC,MAAM,IAAI,kBAAkB;gBAC1C,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC;QACrC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,IAAI,CAAI,IAAsB,EAAE,EAAwB;QAC5D,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,WAAW,CAAC;gBACrB,GAAG,IAAI;gBACP,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;gBAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,+BAA+B;aACvD,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,WAAW,CAAC;gBACrB,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,gBAAgB,CAAC,KAAK,CAAC;aAC/C,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAOX;QACC,MAAM,IAAI,GAA4B;YACpC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,SAAS;YAC9B,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;QACF,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC;YAC5C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,eAAe,IAAI,IAAI,CAAC;YACvD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;YACrD,IAAI,MAAM,CAAC,gBAAgB;gBAAE,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACjF,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;QAChE,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,WAAqB,CAAC;QAC5C,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAA4B,CAAC;QAClE,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,gBAAgB,GAAI,KAAK,CAAC,QAAgC,IAAI,EAAE,CAAC;YACvE,KAAK,CAAC,QAAQ,GAAG;gBACf,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC/B,IAAI,EAAE,iBAA0B;oBAChC,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,MAAM,EAAE,eAAe,CAAC,CAAC,IAAI,6BAA6B;oBAC1D,QAAQ,EAAE,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,UAAmB,CAAC,CAAC,CAAC,SAAkB;oBACxE,KAAK,EAAE,CAAC;iBACT,CAAC,CAAC;gBACH,GAAG,gBAAgB;aACpB,CAAC;YACF,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,IAAI,MAAM,EAAE,CAAC;QAClE,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,MAAM,EAAE,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,KAAK,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,yBAAyB,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,iCAAiC,GAAG,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC;QACnD,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC;QAChD,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,eAAe,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,eAAe,CAAC;QAC3C,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,2CAA2C,CAAC;QACrE,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,cAAc,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC7C,IAAI,CAAC,cAAc,CAAC,oBAAoB,GAAG,KAAK,CAAC;QACjD,IAAI,CAAC,cAAc,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC;QAE/C,MAAM,YAAY,GAAG;YACnB,OAAO,EAAG,KAAK,CAAC,OAA0D,IAAI,EAAE;YAChF,YAAY,EAAG,KAAK,CAAC,aAAwB,IAAI,CAAC;YAClD,QAAQ,EAAE,CAAE,KAAK,CAAC,QAA2C,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC7E,SAAS,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAW;gBACjD,YAAY,EAAE,CAAC,CAAC,CAAC,aAAa,IAAI,EAAE,CAAW;gBAC/C,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAW;gBACvC,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAW;aAC1C,CAAC,CAAC;YACH,aAAa,EAAG,KAAK,CAAC,cAAyB,IAAI,CAAC;YACpD,SAAS,EAAG,KAAK,CAAC,SAA+D,IAAI,EAAE;YACvF,MAAM,EAAG,KAAK,CAAC,MAAqC,IAAI,EAAE;YAC1D,WAAW,EAAE,KAAK,CAAC,YAAY,IAAI,IAAI;YACvC,WAAW,EAAG,KAAK,CAAC,YAAuB,IAAI,CAAC;YAChD,aAAa,EAAG,KAAK,CAAC,cAAyB,IAAI,CAAC;YACpD,OAAO,EAAG,KAAK,CAAC,OAAkB,IAAI,IAAI;YAC1C,QAAQ,EAAG,KAAK,CAAC,QAAgC,IAAI,EAAE;YACvD,SAAS,EAAG,KAAK,CAAC,UAAqB,IAAI,IAAI;SAChD,CAAC;QAEF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG;YACd,0BAA0B;YAC1B,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,iBAAiB,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI;YAC/J,0BAA0B,IAAI,CAAC,eAAe,GAAG;SAClD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5B,OAAO;YACL,UAAU,EAAE,GAAG,CAAC,WAAqB;YACrC,YAAY;YACZ,SAAS,EAAE,GAAG,CAAC,UAAoB;YACnC,iBAAiB,EAAE,GAAG,CAAC,kBAAyC;YAChE,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;YACjC,WAAW,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAE,GAAG,CAAC,YAA+D,CAAC,CAAC,CAAC,SAAS;YAChH,UAAU,EAAE,QAAQ;YACpB,QAAQ;YACR,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,IAAI;YACJ,OAAO;SACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAIZ;QACC,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACjF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,EAAE;YACzD,WAAW,EAAE,IAAI,CAAC,UAAU;YAC5B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS,EAAE,MAAM,CAAC,QAAQ;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,MAAM,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,YAAY,GAAG,KAAK,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,eAAe,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,gBAAgB,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,uCAAuC,CAAC;QACjE,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,cAAc,CAAC,oBAAoB,GAAG,IAAI,CAAC;QAEhD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG;YACd,2BAA2B;YAC3B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;YAC3D,cAAc;SACf,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5B,OAAO;YACL,SAAS,EAAE,GAAG,CAAC,SAAoB;YACnC,WAAW,EAAE,GAAG,CAAC,YAAsB;YACvC,OAAO,EAAE,GAAG,CAAC,OAAwB;YACrC,UAAU,EAAE,SAAS;YACrB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,IAAI;YACJ,OAAO;SACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAA8B;QACzC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACpG,MAAM,QAAQ,GAAG,QAAQ,CAAC,eAAe;aACtC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;aACjC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACT,IAAI,EAAE,CAAC,CAAC,YAAY;YACpB,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,OAAO,EAAE,GAAG,CAAC,CAAC,YAAY,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,8CAA8C;SAC9I,CAAC,CAAC,CAAC;QACN,IAAI,OAAO,GAAiD,EAAE,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,6CAA6C,CAAC,CAAC;YACrF,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,CAAmC,CAAC;YACnF,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACxB,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;gBAC5C,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;aACnD,CAAC,CAAC,CAAC;QACN,CAAC;QAAC,MAAM,CAAC,CAAC,+BAA+B,CAAC,CAAC;QAE3C,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,MAAM,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;QAC/E,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;QACtF,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,8DAA8D,CAAC,CAAC,CAAC,iBAAiB,CAAC;QAC1I,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE9D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC;QACrE,MAAM,IAAI,GAAG;YACX,YAAY;YACZ,KAAK;YACL,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI;YAC/D,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,kBAAkB,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI;YACnE,0BAA0B,IAAI,CAAC,eAAe,GAAG;SAClD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5B,OAAO;YACL,QAAQ;YACR,OAAO;YACP,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC;YACpD,IAAI;YACJ,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,KAAK;YACL,IAAI;SACL,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAA0C;QAO5D,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;QACjC,IAAI,MAAM,EAAE,IAAI;YAAE,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,MAAM,EAAE,KAAK;YAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvG,OAAO;YACL,eAAe,EAAE,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAA0F;YACtI,kBAAkB,EAAE,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAA6F;YAC/I,eAAe,EAAE,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAwF;YACpI,eAAe,EAAE,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAa;YAC1D,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;SAC5C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS;QAIb,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;QACvD,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAA4B,CAAC;QAC/D,OAAO;YACL,GAAG,GAAG;YACN,WAAW,EAAE;gBACX,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC;gBAC5B,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC7B,SAAS,EAAE,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAA0G;gBACxI,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC7B,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC;aAC1C;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,IAAY,EAAE,IAAc;QAChE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;YAChD,MAAM;YACN,OAAO,EAAE;gBACP,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;gBACxC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxD;YACD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9C,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAuD,CAAC;QACnF,IAAI,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;CACF;AAlbD,oCAkbC;AAED,kBAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getmarrow/sdk",
3
- "version": "2.5.6",
3
+ "version": "2.7.0",
4
4
  "description": "Your go-to memory provider for all agents, for any AI model.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",