aismemory 0.8.0 → 0.8.2

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 (111) hide show
  1. package/README.md +87 -7
  2. package/dist/__tests__/agent-key-mode.test.js +105 -6
  3. package/dist/__tests__/agent-key-mode.test.js.map +1 -1
  4. package/dist/__tests__/agent-load-persistence.test.js +22 -6
  5. package/dist/__tests__/agent-load-persistence.test.js.map +1 -1
  6. package/dist/__tests__/ais-http.test.js +23 -3
  7. package/dist/__tests__/ais-http.test.js.map +1 -1
  8. package/dist/__tests__/auto-handoff.test.js +56 -0
  9. package/dist/__tests__/auto-handoff.test.js.map +1 -1
  10. package/dist/__tests__/bond-link-survives-exit.test.d.ts +1 -0
  11. package/dist/__tests__/bond-link-survives-exit.test.js +177 -0
  12. package/dist/__tests__/bond-link-survives-exit.test.js.map +1 -0
  13. package/dist/__tests__/credential-resolution.test.js +51 -3
  14. package/dist/__tests__/credential-resolution.test.js.map +1 -1
  15. package/dist/__tests__/credential-whoami.test.d.ts +8 -0
  16. package/dist/__tests__/credential-whoami.test.js +93 -0
  17. package/dist/__tests__/credential-whoami.test.js.map +1 -0
  18. package/dist/__tests__/device-flow-gate-e2e.test.js +6 -4
  19. package/dist/__tests__/device-flow-gate-e2e.test.js.map +1 -1
  20. package/dist/__tests__/doctor.test.js +39 -13
  21. package/dist/__tests__/doctor.test.js.map +1 -1
  22. package/dist/__tests__/full-context-view-forwarding.test.d.ts +1 -0
  23. package/dist/__tests__/full-context-view-forwarding.test.js +80 -0
  24. package/dist/__tests__/full-context-view-forwarding.test.js.map +1 -0
  25. package/dist/__tests__/hydration.test.js +56 -1
  26. package/dist/__tests__/hydration.test.js.map +1 -1
  27. package/dist/__tests__/install.test.d.ts +1 -0
  28. package/dist/__tests__/install.test.js +126 -0
  29. package/dist/__tests__/install.test.js.map +1 -0
  30. package/dist/__tests__/integration.test.js +1 -0
  31. package/dist/__tests__/integration.test.js.map +1 -1
  32. package/dist/__tests__/lost-agent.test.js +51 -0
  33. package/dist/__tests__/lost-agent.test.js.map +1 -1
  34. package/dist/__tests__/mcp-tools.test.js +175 -2
  35. package/dist/__tests__/mcp-tools.test.js.map +1 -1
  36. package/dist/__tests__/pending-device-flow-e2e.test.js +22 -1
  37. package/dist/__tests__/pending-device-flow-e2e.test.js.map +1 -1
  38. package/dist/__tests__/pending-device-flow-resume.test.d.ts +1 -0
  39. package/dist/__tests__/pending-device-flow-resume.test.js +104 -0
  40. package/dist/__tests__/pending-device-flow-resume.test.js.map +1 -0
  41. package/dist/__tests__/prompt-resource.test.js +1 -0
  42. package/dist/__tests__/prompt-resource.test.js.map +1 -1
  43. package/dist/__tests__/refresh.test.js +24 -2
  44. package/dist/__tests__/refresh.test.js.map +1 -1
  45. package/dist/__tests__/request-timeout.test.d.ts +1 -0
  46. package/dist/__tests__/request-timeout.test.js +40 -0
  47. package/dist/__tests__/request-timeout.test.js.map +1 -0
  48. package/dist/__tests__/resolve-agent-preference-e2e.test.js +15 -3
  49. package/dist/__tests__/resolve-agent-preference-e2e.test.js.map +1 -1
  50. package/dist/__tests__/retry-after.test.js +10 -4
  51. package/dist/__tests__/retry-after.test.js.map +1 -1
  52. package/dist/__tests__/run-pass-mode.test.d.ts +1 -0
  53. package/dist/__tests__/run-pass-mode.test.js +130 -0
  54. package/dist/__tests__/run-pass-mode.test.js.map +1 -0
  55. package/dist/__tests__/session-identity.test.d.ts +1 -0
  56. package/dist/__tests__/session-identity.test.js +213 -0
  57. package/dist/__tests__/session-identity.test.js.map +1 -0
  58. package/dist/__tests__/workspace-key-mode.test.js +194 -16
  59. package/dist/__tests__/workspace-key-mode.test.js.map +1 -1
  60. package/dist/agent-key-mode.js +70 -30
  61. package/dist/agent-key-mode.js.map +1 -1
  62. package/dist/ais-http-error.d.ts +3 -0
  63. package/dist/ais-http-error.js +8 -1
  64. package/dist/ais-http-error.js.map +1 -1
  65. package/dist/ais-http.d.ts +2 -0
  66. package/dist/ais-http.js +24 -14
  67. package/dist/ais-http.js.map +1 -1
  68. package/dist/auto-handoff.js +33 -1
  69. package/dist/auto-handoff.js.map +1 -1
  70. package/dist/cli/doctor.d.ts +4 -0
  71. package/dist/cli/doctor.js +60 -18
  72. package/dist/cli/doctor.js.map +1 -1
  73. package/dist/cli/install.d.ts +6 -0
  74. package/dist/cli/install.js +52 -0
  75. package/dist/cli/install.js.map +1 -0
  76. package/dist/cli/orientation.d.ts +2 -0
  77. package/dist/cli/orientation.js +31 -1
  78. package/dist/cli/orientation.js.map +1 -1
  79. package/dist/credential-whoami.d.ts +50 -0
  80. package/dist/credential-whoami.js +91 -0
  81. package/dist/credential-whoami.js.map +1 -0
  82. package/dist/hydration.js +8 -0
  83. package/dist/hydration.js.map +1 -1
  84. package/dist/index.js +180 -29
  85. package/dist/index.js.map +1 -1
  86. package/dist/mcp/tools.d.ts +10 -0
  87. package/dist/mcp/tools.js +81 -6
  88. package/dist/mcp/tools.js.map +1 -1
  89. package/dist/pending-device-flow.d.ts +31 -0
  90. package/dist/pending-device-flow.js +38 -0
  91. package/dist/pending-device-flow.js.map +1 -1
  92. package/dist/refresh.js +5 -1
  93. package/dist/refresh.js.map +1 -1
  94. package/dist/request-timeout.d.ts +26 -0
  95. package/dist/request-timeout.js +49 -0
  96. package/dist/request-timeout.js.map +1 -0
  97. package/dist/run-pass-mode.d.ts +16 -0
  98. package/dist/run-pass-mode.js +274 -0
  99. package/dist/run-pass-mode.js.map +1 -0
  100. package/dist/session-identity.d.ts +15 -1
  101. package/dist/session-identity.js +102 -12
  102. package/dist/session-identity.js.map +1 -1
  103. package/dist/telemetry.d.ts +1 -1
  104. package/dist/telemetry.js.map +1 -1
  105. package/dist/tool-args.d.ts +11 -1
  106. package/dist/tool-args.js +17 -1
  107. package/dist/tool-args.js.map +1 -1
  108. package/dist/types.d.ts +32 -0
  109. package/dist/workspace-key-mode.js +93 -26
  110. package/dist/workspace-key-mode.js.map +1 -1
  111. package/package.json +4 -6
package/dist/index.js CHANGED
@@ -18,7 +18,7 @@ import { aisGet, aisPost, DEFAULT_AIS_URL } from './ais-http.js';
18
18
  import { CallToolRequestSchema, GetPromptRequestSchema, ListPromptsRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
19
19
  import { homedir } from 'node:os';
20
20
  import { loadOAuthCredentials, loadNonStaleDiskBearer, saveOAuthCredentials, } from './oauth-credentials.js';
21
- import { clearPendingDeviceFlow, loadPendingDeviceFlow, savePendingDeviceFlow, } from './pending-device-flow.js';
21
+ import { clearPendingDeviceFlow, isResumableDeviceFlow, loadPendingDeviceFlow, savePendingDeviceFlow, } from './pending-device-flow.js';
22
22
  import { saveAgentPreference, loadAgentPreference, migrateCredentialsFileIfNeeded } from './agent-preference.js';
23
23
  import { createTokenManager, isNoRegisteredKeyFailure } from './token-manager.js';
24
24
  import { hydrateIdentity } from './hydration.js';
@@ -28,16 +28,18 @@ import { ActivityTracker, setupAutoHandoff } from './auto-handoff.js';
28
28
  import { assertEnvAgentInTenant, selectAgentForSession } from './env-agent.js';
29
29
  import { emitTelemetry, hashAgentId } from './telemetry.js';
30
30
  import { INBOX_MAX_BODY_CHARS, INBOX_MAX_TASK_ID_CHARS, INBOX_MIN_TTL_SECONDS, INBOX_MAX_TTL_SECONDS, INBOX_DEFAULT_TTL_SECONDS, INBOX_MAX_PAGE_SIZE, INBOX_DEFAULT_PAGE_SIZE, INBOX_MAX_ACK_IDS, GOAL_MAX_TITLE_CHARS, GOAL_MAX_DESCRIPTION_CHARS, GOAL_MAX_CRITERIA_ITEMS, GOAL_DEFAULT_PAGE_SIZE, GOAL_MAX_PAGE_SIZE, } from './tool-args.js';
31
- import { loadSessionIdentity, verifyPinnedIdentity } from './session-identity.js';
31
+ import { identityCredentialFingerprint, loadSessionIdentity, verifyPinnedIdentity } from './session-identity.js';
32
32
  import { runPollLoop, DeviceFlowRestartedError } from './device-poll.js';
33
33
  import { loadAgentApiKeyConfig, AgentApiKeyConfigError, } from './agent-key-mode.js';
34
34
  import { loadWorkspaceKeyConfig, WorkspaceKeyConfigError, } from './workspace-key-mode.js';
35
- import { createAgentKeyCallToolHandler, createOAuthCallToolHandler, createWorkspaceKeyCallToolHandler, } from './mcp/tools.js';
35
+ import { loadRunPassConfig, RunPassConfigError, } from './run-pass-mode.js';
36
+ import { createAgentKeyCallToolHandler, createOAuthCallToolHandler, createRunPassCallToolHandler, createWorkspaceKeyCallToolHandler, } from './mcp/tools.js';
36
37
  import { readPackageVersion, startVersionCheck } from './version-check.js';
37
38
  import { AGENT_ARCHIVE_DESCRIPTION, AGENT_ARCHIVE_INPUT_SCHEMA, AGENT_DELETE_ALIAS_DESCRIPTION } from './agent-archive.js';
38
39
  // ── Config ──────────────────────────────────────────────
39
40
  const AIS_URL = process.env['AIS_URL']?.trim() || DEFAULT_AIS_URL;
40
41
  const PACKAGE_VERSION = readPackageVersion();
42
+ const RUN_PASS_CONFLICTING_KEY_ENV_NAMES = ['AIS_WORKSPACE_KEY', 'AIS_API_KEY', 'AIS_AGENT_API_KEY'];
41
43
  let sessionIdentity = null;
42
44
  // ── Credential persistence ──────────────────────────────
43
45
  function loadCredentials() {
@@ -62,6 +64,16 @@ function loadCredentials() {
62
64
  function stderr(msg) {
63
65
  process.stderr.write(`[aismemory] ${msg}\n`);
64
66
  }
67
+ function rejectRunPassWithKeyEnv(env) {
68
+ if (env['AIS_RUN_PASS_FILE'] === undefined)
69
+ return;
70
+ const conflictingKeyName = RUN_PASS_CONFLICTING_KEY_ENV_NAMES.find((keyName) => env[keyName] !== undefined);
71
+ if (conflictingKeyName === undefined)
72
+ return;
73
+ stderr(`Refusing to start: AIS_RUN_PASS_FILE and ${conflictingKeyName} are both set. ` +
74
+ 'Run-pass mode must not silently fall back to a long-lived key; unset one variable.');
75
+ process.exit(1);
76
+ }
65
77
  function isSafeClaudeSessionId(sessionId) {
66
78
  return sessionId !== '.' && sessionId !== '..' && /^[A-Za-z0-9._-]+$/.test(sessionId);
67
79
  }
@@ -208,14 +220,79 @@ class BondPendingError extends Error {
208
220
  `${verificationUri}\n\n` +
209
221
  `Send nothing else: not this message, not a code, not a key, not a command, not JSON. ` +
210
222
  `Your human opens the link, signs in, and presses Bond. When they say it is done, retry this tool.\n` +
211
- `The link expires in 30 minutes. An agent nobody bonds is archived after 7 days, with its memories.`);
223
+ `The link expires in 30 minutes and is only redeemed while this tool is running — if it stops, ` +
224
+ `start it again before your human presses Bond and the same link still works. ` +
225
+ `An agent nobody bonds is archived after 7 days, with its memories.`);
212
226
  this.verificationUri = verificationUri;
213
227
  this.userCode = userCode;
214
228
  this.name = 'BondPendingError';
215
229
  }
216
230
  }
231
+ /**
232
+ * Wire the poll loop onto a freshly built flow. Shared by the mint path and
233
+ * the resume path so a change to the poll/dead bookkeeping lands in one place.
234
+ */
235
+ function attachDeviceFlowPoll(flow, interval) {
236
+ // flowRef points into the live flow object so auto-restart can update the
237
+ // surfaced URL without the caller needing to restart the MCP process.
238
+ const flowRef = flow;
239
+ const poll = pollForToken(flow.device_code, interval, flow.agent_id, flow.provisional_tenant_id, flowRef);
240
+ flow.poll = poll;
241
+ // Mark the flow dead as soon as its poll rejects so the next
242
+ // `ensureCredentials` call starts a fresh flow. The `.catch` here is purely
243
+ // for state-tracking — the original rejection is still observed by callers
244
+ // racing `flow.poll`. We swallow on this branch to suppress unhandled
245
+ // rejection warnings between rejection and the next ensureCredentials call.
246
+ poll.catch(() => {
247
+ flow.dead = true;
248
+ });
249
+ return flow;
250
+ }
251
+ /**
252
+ * Pick up the device code a previous process already minted, instead of
253
+ * asking the server for a new one (CORBOT-7F3EC71C).
254
+ *
255
+ * The bond link is redeemable for its full 30 minutes server-side, but
256
+ * `/v1/oauth/device/authorize` expires every unclaimed claim token for the
257
+ * agent before it issues the next one (OAuthDeviceService `tryReuseProvisional`).
258
+ * So the act of restarting — which an IDE does to its stdio MCP server
259
+ * constantly — used to kill the exact link the agent had just relayed to its
260
+ * human, and the human clicked a page that no longer meant anything.
261
+ * Resuming polls the same code and re-surfaces the same URL, so the link that
262
+ * left the building stays the link that works.
263
+ */
264
+ function resumeDeviceFlow(saved) {
265
+ emitTelemetry({ event: 'auth.device_flow.resume' });
266
+ const remainingMin = Math.max(1, Math.round((Date.parse(saved.codeExpiresAt) - Date.now()) / 60_000));
267
+ stderr('');
268
+ stderr('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
269
+ stderr(' aismemory — still waiting on the bond link already sent');
270
+ stderr('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
271
+ stderr(` Bond URL : ${saved.verificationUriComplete}`);
272
+ stderr(` Code : ${saved.userCode}`);
273
+ stderr(` Same link as before — good for about ${remainingMin} more min.`);
274
+ stderr('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
275
+ return attachDeviceFlowPoll({
276
+ device_code: saved.deviceCode,
277
+ user_code: saved.userCode,
278
+ verification_uri_complete: saved.verificationUriComplete,
279
+ agent_id: saved.agentId,
280
+ provisional_tenant_id: saved.provisionalTenantId,
281
+ provisional_token: saved.provisionalToken,
282
+ dead: false,
283
+ }, saved.interval ?? DEFAULT_DEVICE_POLL_INTERVAL_S);
284
+ }
285
+ /** Fallback poll interval when a resumed record predates the stored field. */
286
+ const DEFAULT_DEVICE_POLL_INTERVAL_S = 5;
217
287
  async function startDeviceFlow(priorProvisionalToken) {
218
288
  emitTelemetry({ event: 'auth.device_flow.start' });
289
+ // A caller that passes a prior provisional token has just watched its flow
290
+ // die (expired, denied, timed out), so its code is spent — mint, never
291
+ // resume. Only a process with no flow of its own looks on disk.
292
+ const resumable = priorProvisionalToken ? null : loadPendingDeviceFlow();
293
+ if (isResumableDeviceFlow(resumable)) {
294
+ return resumeDeviceFlow(resumable);
295
+ }
219
296
  stderr('Starting authentication...');
220
297
  // CORBOT-8F96A8EF: when this process has no in-flight flow of its own,
221
298
  // fall back to the provisional token left on disk by an earlier process.
@@ -247,32 +324,23 @@ async function startDeviceFlow(priorProvisionalToken) {
247
324
  agentId: agent_id,
248
325
  provisionalTenantId: provisional_tenant_id,
249
326
  startedAt: new Date().toISOString(),
327
+ deviceCode: device_code,
328
+ userCode: user_code,
329
+ verificationUriComplete: verification_uri_complete,
330
+ interval,
331
+ codeExpiresAt: new Date(Date.now() + authRes.data.expires_in * 1000).toISOString(),
250
332
  });
251
- const flow = {
333
+ return attachDeviceFlowPoll({
252
334
  device_code,
253
335
  user_code,
254
336
  verification_uri_complete,
255
337
  agent_id,
256
338
  provisional_tenant_id,
257
339
  provisional_token,
258
- // poll is assigned below after flowRef is captured so pollForToken holds
259
- // a reference to the live flow object for URL updates on auto-restart.
340
+ // poll is assigned by attachDeviceFlowPoll, which captures the live flow
341
+ // object so pollForToken can update the surfaced URL on auto-restart.
260
342
  dead: false,
261
- };
262
- // flowRef points into the live flow object so auto-restart can update the
263
- // surfaced URL without the caller needing to restart the MCP process.
264
- const flowRef = flow;
265
- const poll = pollForToken(device_code, interval, agent_id, provisional_tenant_id, flowRef);
266
- flow.poll = poll;
267
- // Mark the flow dead as soon as its poll rejects so the next
268
- // `ensureCredentials` call starts a fresh flow. The `.catch` here is purely
269
- // for state-tracking — the original rejection is still observed by callers
270
- // racing `flow.poll`. We swallow on this branch to suppress unhandled
271
- // rejection warnings between rejection and the next ensureCredentials call.
272
- poll.catch(() => {
273
- flow.dead = true;
274
- });
275
- return flow;
343
+ }, interval);
276
344
  }
277
345
  async function pollForToken(device_code, interval, agent_id, provisional_tenant_id,
278
346
  /** Mutable ref so auto-restart can update the surfaced URL and provisional token in ActiveDeviceFlow */
@@ -333,6 +401,11 @@ flowRef) {
333
401
  agentId: authRes.data.agent_id,
334
402
  provisionalTenantId: authRes.data.provisional_tenant_id,
335
403
  startedAt: new Date().toISOString(),
404
+ deviceCode: authRes.data.device_code,
405
+ userCode: authRes.data.user_code,
406
+ verificationUriComplete: authRes.data.verification_uri_complete,
407
+ interval: authRes.data.interval,
408
+ codeExpiresAt: new Date(Date.now() + authRes.data.expires_in * 1000).toISOString(),
336
409
  });
337
410
  stderr('');
338
411
  stderr('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
@@ -437,18 +510,49 @@ const tools = [
437
510
  },
438
511
  {
439
512
  name: 'whoami',
440
- description: 'Get the current agent identity — name, DID, status, description.' + BOND_LINK_NOTE,
513
+ description: 'Get the current agent identity — name, DID, status, description — and, when running on an API key, what that credential can and cannot do: mode, tenant, the sub-resources it may reach, its restrictions and when it expires. `selfDescribed: false` means the server predates that answer and only liveness was confirmed.'
514
+ + BOND_LINK_NOTE,
441
515
  inputSchema: { type: 'object', properties: {} },
442
516
  },
517
+ {
518
+ name: 'orientation_check',
519
+ description: 'Run the same expected-environment orientation check "aismemory doctor --orientation" runs from a local file, ' +
520
+ 'reachable here for a filesystem-free surface. Pass an owner-approved manifest (host, account, required channels, ' +
521
+ 'and the wider tool-server/connector surface this agent expects — names and purposes only, never a secret value) ' +
522
+ 'plus this session\'s self-reported evidence. Returns PASS/FAIL per item; read-only, never self-healing, never grants anything.',
523
+ inputSchema: {
524
+ type: 'object',
525
+ properties: {
526
+ version: { type: 'number', enum: [1], description: 'Manifest format version. Always 1.' },
527
+ identity: { type: 'string', description: 'This agent\'s AIS identity (uuid).' },
528
+ requirements: {
529
+ type: 'object',
530
+ description: 'Owner-approved expectations: { host, account, channels: ["ais","mcp","inbox"], environment?: [{name, kind, purpose, required, permission?, dataEnvironment?}] }.',
531
+ },
532
+ current: { type: 'object', description: 'This session\'s observed { host, account, session } marker.' },
533
+ evidence: { type: 'object', description: 'This session\'s self-reported evidence: { session, host, account, credentials, credentialSource, channels: {ais,mcp,inbox}, environment?: {[name]: "pass"|"missing"|"unknown"} }.' },
534
+ relocation: { type: 'object', description: '{ verified, observedAction? } — whether relocation off the expected host/account is a verified, human-confirmed capability.' },
535
+ activationUrl: { type: 'string', description: 'Optional AIS device-flow activation door URL, echoed back as bondUrl.' },
536
+ },
537
+ required: ['version', 'identity', 'requirements', 'current', 'evidence', 'relocation'],
538
+ },
539
+ },
443
540
  {
444
541
  name: 'full_context',
445
- description: 'Load the full agent context — identity, personality, goals, facts, skills, and last handoff. ' +
446
- "Set principalAgentId to load ANOTHER agent's context under a 'memory:read' grant." + BOND_LINK_NOTE,
542
+ description: 'Load the full agent context — identity, personality, goals, facts, skills, last handoff, and the operating layer: the constitution rules that govern this agent and the index of skills it has, under one sha256 version you can compare between two machines. ' +
543
+ "Set principalAgentId to load ANOTHER agent's context under a 'memory:read' grant. " +
544
+ 'Every view is bounded: the default view budgets to 6000 tokens, and anything the ceiling cut is ' +
545
+ "named in the response's receipt.omitted rather than dropped silently — goal titles are cut to 200 " +
546
+ "characters with the goal's memory id in the payload, so the whole body is one memory-by-id fetch away. " +
547
+ "Pass view='lean' for continuity only (last handoff first, recent memories) or view='bootstrap' " +
548
+ 'for a cross-harness session start (adds goals and inbox). maxTokens sets the ceiling on any view.' + BOND_LINK_NOTE,
447
549
  inputSchema: {
448
550
  type: 'object',
449
551
  properties: {
450
552
  principalAgentId: { type: 'string', description: "Optional: search ANOTHER agent's memories instead of your own (its agent UUID). Requires that agent's owner to have granted you the 'memory:read' scope and that you share a tenant; otherwise the call is refused with 403. Read-only — your own identity and write access are unchanged." },
451
- memoriesLimit: { type: 'number', description: 'Number of memories to load (1-50, default 5). Lower values reduce context size.' },
553
+ memoriesLimit: { type: 'number', description: 'Number of memories to load (1-50, default 5). Lower values reduce context size. Governs recent memories only — on the full view that is a small share of the payload, so prefer view to bound the whole response.' },
554
+ view: { type: 'string', enum: ['full', 'lean', 'bootstrap'], description: "Which projection to load. 'full' (default) is everything the stores hold, bounded to 6000 tokens. 'lean' is continuity only — last handoff first, then recent memories. 'bootstrap' is lean plus goals and inbox, for starting a session in another harness. All three honour maxTokens." },
555
+ maxTokens: { type: 'number', description: 'Token ceiling (500-20000; default 6000 for full, 2000 for lean, 3000 for bootstrap). Content is evicted from the tail until the payload fits — assembled context sections, then facts, then goals, then recent memories on the full view — and each eviction is named in receipt.omitted. Identity, the operating layer and the last handoff are never dropped.' },
452
556
  },
453
557
  },
454
558
  },
@@ -721,6 +825,30 @@ async function runWorkspaceKeyModeServer(config) {
721
825
  await server.connect(transport);
722
826
  stderr(`MCP server running (workspace key mode). Tools: ${tools.map((t) => t.name).join(', ')}`);
723
827
  }
828
+ /**
829
+ * MCP server entrypoint for run-pass auth mode (CORBOT-662A4B3A).
830
+ *
831
+ * The pass itself is never stored in process state: each tool request re-reads
832
+ * AIS_RUN_PASS_FILE and sends the current content as x-run-pass only.
833
+ */
834
+ async function runPassModeServer(config) {
835
+ stderr(`Run-pass auth mode — agent fixed to ${config.agentId}; pass file ${config.runPassFile}`);
836
+ const server = new Server({ name: 'aismemory', version: PACKAGE_VERSION }, { capabilities: { tools: {}, prompts: {} } });
837
+ server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools }));
838
+ server.setRequestHandler(ListPromptsRequestSchema, async () => ({ prompts: [] }));
839
+ server.setRequestHandler(GetPromptRequestSchema, async (request) => {
840
+ throw new Error(`Unknown prompt: ${request.params.name}`);
841
+ });
842
+ server.setRequestHandler(CallToolRequestSchema, createRunPassCallToolHandler({
843
+ aisUrl: AIS_URL,
844
+ activityTracker,
845
+ config,
846
+ getSessionIdentity: () => sessionIdentity,
847
+ }));
848
+ const transport = new StdioServerTransport();
849
+ await server.connect(transport);
850
+ stderr(`MCP server running (run-pass mode). Tools: ${tools.map((t) => t.name).join(', ')}`);
851
+ }
724
852
  /**
725
853
  * MCP server entrypoint for agent-API-key auth mode (CORBOT-B1D3244C).
726
854
  *
@@ -752,6 +880,10 @@ async function runAgentKeyModeServer(config) {
752
880
  }
753
881
  async function main() {
754
882
  // Subcommand dispatch — CLI entrypoints exit before MCP server startup.
883
+ if (process.argv[2] === 'install') {
884
+ (await import('./cli/install.js')).main(process.argv.slice(3));
885
+ return;
886
+ }
755
887
  if (process.argv[2] === 'enable-key-auth') {
756
888
  await import('./cli/enable-key-auth.js');
757
889
  return; // CLI calls process.exit() itself
@@ -775,8 +907,10 @@ async function main() {
775
907
  void startVersionCheck({ currentVersion: PACKAGE_VERSION, onUpdateAvailable: stderr });
776
908
  sessionIdentity = loadSessionIdentity();
777
909
  const adapterEnv = { ...process.env, AIS_AGENT_ID: sessionIdentity?.agentId };
778
- // Workspace key auth mode (CORBOT-3103ED88) — multi-agent workspace
779
- // credentials. Checked FIRST: workspace key -> agent API key -> device flow.
910
+ rejectRunPassWithKeyEnv(adapterEnv);
911
+ // Explicit key auth modes keep their existing order when AIS_RUN_PASS_FILE is
912
+ // unset: workspace key -> agent API key -> device flow. A run pass combined
913
+ // with any key env var is refused above.
780
914
  let workspaceKeyConfig;
781
915
  try {
782
916
  workspaceKeyConfig = loadWorkspaceKeyConfig(adapterEnv);
@@ -811,6 +945,23 @@ async function main() {
811
945
  await runAgentKeyModeServer(agentKeyConfig);
812
946
  return;
813
947
  }
948
+ // Run-pass auth mode (CORBOT-662A4B3A) — short-lived per-run credential
949
+ // written by the launcher. It must not read or require any key env var.
950
+ let runPassConfig;
951
+ try {
952
+ runPassConfig = loadRunPassConfig(adapterEnv);
953
+ }
954
+ catch (err) {
955
+ if (err instanceof RunPassConfigError) {
956
+ stderr(err.message);
957
+ process.exit(1);
958
+ }
959
+ throw err;
960
+ }
961
+ if (runPassConfig) {
962
+ await runPassModeServer(runPassConfig);
963
+ return;
964
+ }
814
965
  // Lazy-auth state. We connect the MCP transport before the user has approved
815
966
  // the device flow so Claude Code's 30s connection timeout is not blocked on
816
967
  // human approval. The first tool call surfaces the bond URL via its result.
@@ -1018,7 +1169,7 @@ async function main() {
1018
1169
  setupAutoHandoff(AIS_URL, c.agentId, c.token, activityTracker, () => {
1019
1170
  stopRefreshTimer();
1020
1171
  stderr('Session handoff saved');
1021
- }, () => verifyPinnedIdentity(sessionIdentity, c.agentId, () => aisGet(`/v1/agents/${c.agentId}`, c.token)));
1172
+ }, () => verifyPinnedIdentity(sessionIdentity, c.agentId, () => aisGet(`/v1/agents/${c.agentId}`, c.token), { credentialKey: identityCredentialFingerprint('oauth-bearer', c.token) }));
1022
1173
  }
1023
1174
  catch (e) {
1024
1175
  stderr(`Post-auth setup failed: ${e instanceof Error ? e.message : String(e)}`);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ import type { OAuthCredentials } from '../oauth-credentials.js';
16
16
  import { type SessionIdentity } from '../session-identity.js';
17
17
  import { type AgentApiKeyConfig } from '../agent-key-mode.js';
18
18
  import { type WorkspaceKeyConfig } from '../workspace-key-mode.js';
19
+ import { type RunPassConfig } from '../run-pass-mode.js';
19
20
  /** Entrypoint state and helpers the workspace-key-mode handler reads. */
20
21
  export interface WorkspaceKeyCallToolContext {
21
22
  readonly aisUrl: string;
@@ -28,6 +29,13 @@ export interface WorkspaceKeyCallToolContext {
28
29
  setActiveConfig(next: WorkspaceKeyConfig): void;
29
30
  stderr(msg: string): void;
30
31
  }
32
+ /** Entrypoint state and helpers the run-pass-mode handler reads. */
33
+ export interface RunPassCallToolContext {
34
+ readonly aisUrl: string;
35
+ readonly activityTracker: ActivityTracker;
36
+ readonly config: RunPassConfig;
37
+ getSessionIdentity(): SessionIdentity | null;
38
+ }
31
39
  /** Entrypoint state the agent-API-key-mode handler reads. */
32
40
  export interface AgentKeyCallToolContext {
33
41
  readonly aisUrl: string;
@@ -72,6 +80,8 @@ export interface OAuthCallToolContext {
72
80
  * the active agentId is updated for subsequent calls.
73
81
  */
74
82
  export declare function createWorkspaceKeyCallToolHandler(ctx: WorkspaceKeyCallToolContext): (request: CallToolRequest) => Promise<CallToolResult>;
83
+ /** `tools/call` handler for run-pass auth mode (CORBOT-662A4B3A). */
84
+ export declare function createRunPassCallToolHandler(ctx: RunPassCallToolContext): (request: CallToolRequest) => Promise<CallToolResult>;
75
85
  /** `tools/call` handler for agent-API-key auth mode (CORBOT-B1D3244C). */
76
86
  export declare function createAgentKeyCallToolHandler(ctx: AgentKeyCallToolContext): (request: CallToolRequest) => Promise<CallToolResult>;
77
87
  /**