aismemory 0.8.0 → 0.8.3

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 (134) 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 +50 -4
  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__/cli-info.test.d.ts +1 -0
  14. package/dist/__tests__/cli-info.test.js +113 -0
  15. package/dist/__tests__/cli-info.test.js.map +1 -0
  16. package/dist/__tests__/credential-resolution.test.js +57 -3
  17. package/dist/__tests__/credential-resolution.test.js.map +1 -1
  18. package/dist/__tests__/credential-whoami.test.d.ts +8 -0
  19. package/dist/__tests__/credential-whoami.test.js +93 -0
  20. package/dist/__tests__/credential-whoami.test.js.map +1 -0
  21. package/dist/__tests__/device-flow-gate-e2e.test.js +6 -4
  22. package/dist/__tests__/device-flow-gate-e2e.test.js.map +1 -1
  23. package/dist/__tests__/doctor.test.js +39 -13
  24. package/dist/__tests__/doctor.test.js.map +1 -1
  25. package/dist/__tests__/full-context-view-forwarding.test.d.ts +1 -0
  26. package/dist/__tests__/full-context-view-forwarding.test.js +80 -0
  27. package/dist/__tests__/full-context-view-forwarding.test.js.map +1 -0
  28. package/dist/__tests__/hydration.test.js +56 -1
  29. package/dist/__tests__/hydration.test.js.map +1 -1
  30. package/dist/__tests__/install.test.d.ts +1 -0
  31. package/dist/__tests__/install.test.js +126 -0
  32. package/dist/__tests__/install.test.js.map +1 -0
  33. package/dist/__tests__/integration.test.js +1 -0
  34. package/dist/__tests__/integration.test.js.map +1 -1
  35. package/dist/__tests__/invite-accept.test.d.ts +1 -0
  36. package/dist/__tests__/invite-accept.test.js +118 -0
  37. package/dist/__tests__/invite-accept.test.js.map +1 -0
  38. package/dist/__tests__/lost-agent.test.js +51 -0
  39. package/dist/__tests__/lost-agent.test.js.map +1 -1
  40. package/dist/__tests__/mcp-tools.test.js +245 -6
  41. package/dist/__tests__/mcp-tools.test.js.map +1 -1
  42. package/dist/__tests__/missing-credential-help.test.d.ts +1 -0
  43. package/dist/__tests__/missing-credential-help.test.js +14 -0
  44. package/dist/__tests__/missing-credential-help.test.js.map +1 -0
  45. package/dist/__tests__/pending-device-flow-e2e.test.js +22 -1
  46. package/dist/__tests__/pending-device-flow-e2e.test.js.map +1 -1
  47. package/dist/__tests__/pending-device-flow-resume.test.d.ts +1 -0
  48. package/dist/__tests__/pending-device-flow-resume.test.js +104 -0
  49. package/dist/__tests__/pending-device-flow-resume.test.js.map +1 -0
  50. package/dist/__tests__/prompt-resource.test.js +1 -0
  51. package/dist/__tests__/prompt-resource.test.js.map +1 -1
  52. package/dist/__tests__/reconnect-survival-e2e.test.js +3 -2
  53. package/dist/__tests__/reconnect-survival-e2e.test.js.map +1 -1
  54. package/dist/__tests__/refresh.test.js +24 -2
  55. package/dist/__tests__/refresh.test.js.map +1 -1
  56. package/dist/__tests__/request-timeout.test.d.ts +1 -0
  57. package/dist/__tests__/request-timeout.test.js +55 -0
  58. package/dist/__tests__/request-timeout.test.js.map +1 -0
  59. package/dist/__tests__/resolve-agent-preference-e2e.test.js +15 -3
  60. package/dist/__tests__/resolve-agent-preference-e2e.test.js.map +1 -1
  61. package/dist/__tests__/retry-after.test.js +63 -4
  62. package/dist/__tests__/retry-after.test.js.map +1 -1
  63. package/dist/__tests__/run-pass-mode.test.d.ts +1 -0
  64. package/dist/__tests__/run-pass-mode.test.js +163 -0
  65. package/dist/__tests__/run-pass-mode.test.js.map +1 -0
  66. package/dist/__tests__/session-identity.test.d.ts +1 -0
  67. package/dist/__tests__/session-identity.test.js +276 -0
  68. package/dist/__tests__/session-identity.test.js.map +1 -0
  69. package/dist/__tests__/version-check.test.js +16 -1
  70. package/dist/__tests__/version-check.test.js.map +1 -1
  71. package/dist/__tests__/workspace-key-mode.test.js +194 -16
  72. package/dist/__tests__/workspace-key-mode.test.js.map +1 -1
  73. package/dist/agent-key-mode.js +70 -30
  74. package/dist/agent-key-mode.js.map +1 -1
  75. package/dist/ais-http-error.d.ts +3 -0
  76. package/dist/ais-http-error.js +8 -1
  77. package/dist/ais-http-error.js.map +1 -1
  78. package/dist/ais-http.d.ts +4 -0
  79. package/dist/ais-http.js +58 -17
  80. package/dist/ais-http.js.map +1 -1
  81. package/dist/auto-handoff.js +33 -1
  82. package/dist/auto-handoff.js.map +1 -1
  83. package/dist/cli/doctor.d.ts +4 -0
  84. package/dist/cli/doctor.js +60 -18
  85. package/dist/cli/doctor.js.map +1 -1
  86. package/dist/cli/install.d.ts +6 -0
  87. package/dist/cli/install.js +52 -0
  88. package/dist/cli/install.js.map +1 -0
  89. package/dist/cli/invite-accept.d.ts +32 -0
  90. package/dist/cli/invite-accept.js +161 -0
  91. package/dist/cli/invite-accept.js.map +1 -0
  92. package/dist/cli/orientation.d.ts +2 -0
  93. package/dist/cli/orientation.js +31 -1
  94. package/dist/cli/orientation.js.map +1 -1
  95. package/dist/cli-info.d.ts +18 -0
  96. package/dist/cli-info.js +72 -0
  97. package/dist/cli-info.js.map +1 -0
  98. package/dist/credential-whoami.d.ts +50 -0
  99. package/dist/credential-whoami.js +91 -0
  100. package/dist/credential-whoami.js.map +1 -0
  101. package/dist/hydration.js +8 -0
  102. package/dist/hydration.js.map +1 -1
  103. package/dist/index.d.ts +1 -0
  104. package/dist/index.js +201 -31
  105. package/dist/index.js.map +1 -1
  106. package/dist/mcp/tools.d.ts +10 -0
  107. package/dist/mcp/tools.js +99 -11
  108. package/dist/mcp/tools.js.map +1 -1
  109. package/dist/pending-device-flow.d.ts +31 -0
  110. package/dist/pending-device-flow.js +38 -0
  111. package/dist/pending-device-flow.js.map +1 -1
  112. package/dist/refresh.js +5 -1
  113. package/dist/refresh.js.map +1 -1
  114. package/dist/request-timeout.d.ts +26 -0
  115. package/dist/request-timeout.js +58 -0
  116. package/dist/request-timeout.js.map +1 -0
  117. package/dist/run-pass-mode.d.ts +16 -0
  118. package/dist/run-pass-mode.js +312 -0
  119. package/dist/run-pass-mode.js.map +1 -0
  120. package/dist/session-identity.d.ts +15 -1
  121. package/dist/session-identity.js +104 -12
  122. package/dist/session-identity.js.map +1 -1
  123. package/dist/telemetry.d.ts +1 -1
  124. package/dist/telemetry.js.map +1 -1
  125. package/dist/tool-args.d.ts +11 -1
  126. package/dist/tool-args.js +17 -1
  127. package/dist/tool-args.js.map +1 -1
  128. package/dist/types.d.ts +32 -0
  129. package/dist/version-check.d.ts +8 -0
  130. package/dist/version-check.js +21 -1
  131. package/dist/version-check.js.map +1 -1
  132. package/dist/workspace-key-mode.js +120 -32
  133. package/dist/workspace-key-mode.js.map +1 -1
  134. 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,19 @@ 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';
38
+ import { HUMAN_HOWTO_TEXT, resolveInfoRequest } from './cli-info.js';
37
39
  import { AGENT_ARCHIVE_DESCRIPTION, AGENT_ARCHIVE_INPUT_SCHEMA, AGENT_DELETE_ALIAS_DESCRIPTION } from './agent-archive.js';
38
40
  // ── Config ──────────────────────────────────────────────
39
41
  const AIS_URL = process.env['AIS_URL']?.trim() || DEFAULT_AIS_URL;
40
42
  const PACKAGE_VERSION = readPackageVersion();
43
+ const RUN_PASS_CONFLICTING_KEY_ENV_NAMES = ['AIS_WORKSPACE_KEY', 'AIS_API_KEY', 'AIS_AGENT_API_KEY'];
41
44
  let sessionIdentity = null;
42
45
  // ── Credential persistence ──────────────────────────────
43
46
  function loadCredentials() {
@@ -62,6 +65,16 @@ function loadCredentials() {
62
65
  function stderr(msg) {
63
66
  process.stderr.write(`[aismemory] ${msg}\n`);
64
67
  }
68
+ function rejectRunPassWithKeyEnv(env) {
69
+ if (env['AIS_RUN_PASS_FILE'] === undefined)
70
+ return;
71
+ const conflictingKeyName = RUN_PASS_CONFLICTING_KEY_ENV_NAMES.find((keyName) => env[keyName] !== undefined);
72
+ if (conflictingKeyName === undefined)
73
+ return;
74
+ stderr(`Refusing to start: AIS_RUN_PASS_FILE and ${conflictingKeyName} are both set. ` +
75
+ 'Run-pass mode must not silently fall back to a long-lived key; unset one variable.');
76
+ process.exit(1);
77
+ }
65
78
  function isSafeClaudeSessionId(sessionId) {
66
79
  return sessionId !== '.' && sessionId !== '..' && /^[A-Za-z0-9._-]+$/.test(sessionId);
67
80
  }
@@ -187,11 +200,11 @@ async function resolveAgent(token, fallbackAgentId, fallbackTenantId, preferredA
187
200
  return { agentId: fallbackAgentId, tenantId: fallbackTenantId };
188
201
  }
189
202
  }
190
- const MISSING_CREDENTIAL_HELP = 'Missing AIS credential: no authenticated aismemory MCP session, AIS_WORKSPACE_KEY / AIS_API_KEY, or usable local OAuth cache. ' +
203
+ export const MISSING_CREDENTIAL_HELP = 'Missing AIS credential: no authenticated aismemory MCP session, AIS_WORKSPACE_KEY / AIS_API_KEY, or usable local OAuth cache. ' +
191
204
  'Connect aismemory and complete AIS sign-in, or ask your workspace owner for a scoped ais_wk_ key ' +
192
205
  '(ais_ak_ for a single agent) and configure AIS_WORKSPACE_KEY / AIS_API_KEY with AIS_AGENT_ID. ' +
193
206
  'Local sign-in can use ~/.aismemory/credentials.json. ' +
194
- 'Railway is an operator-only last resort for locating an existing scoped key; client surfaces never fetch AIS_SERVICE_KEY or DATABASE_URL.';
207
+ 'Several agents? Mint one workspace key at https://agentsandswarms.ai/settings, set AIS_WORKSPACE_KEY and AIS_AGENT_ID, then switch with agent_load.';
195
208
  /**
196
209
  * Bond URL surfaced when a tool is called before the user has approved the
197
210
  * device flow. Caller catches this and returns the text to the MCP client
@@ -208,14 +221,79 @@ class BondPendingError extends Error {
208
221
  `${verificationUri}\n\n` +
209
222
  `Send nothing else: not this message, not a code, not a key, not a command, not JSON. ` +
210
223
  `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.`);
224
+ `The link expires in 30 minutes and is only redeemed while this tool is running — if it stops, ` +
225
+ `start it again before your human presses Bond and the same link still works. ` +
226
+ `An agent nobody bonds is archived after 7 days, with its memories.`);
212
227
  this.verificationUri = verificationUri;
213
228
  this.userCode = userCode;
214
229
  this.name = 'BondPendingError';
215
230
  }
216
231
  }
232
+ /**
233
+ * Wire the poll loop onto a freshly built flow. Shared by the mint path and
234
+ * the resume path so a change to the poll/dead bookkeeping lands in one place.
235
+ */
236
+ function attachDeviceFlowPoll(flow, interval) {
237
+ // flowRef points into the live flow object so auto-restart can update the
238
+ // surfaced URL without the caller needing to restart the MCP process.
239
+ const flowRef = flow;
240
+ const poll = pollForToken(flow.device_code, interval, flow.agent_id, flow.provisional_tenant_id, flowRef);
241
+ flow.poll = poll;
242
+ // Mark the flow dead as soon as its poll rejects so the next
243
+ // `ensureCredentials` call starts a fresh flow. The `.catch` here is purely
244
+ // for state-tracking — the original rejection is still observed by callers
245
+ // racing `flow.poll`. We swallow on this branch to suppress unhandled
246
+ // rejection warnings between rejection and the next ensureCredentials call.
247
+ poll.catch(() => {
248
+ flow.dead = true;
249
+ });
250
+ return flow;
251
+ }
252
+ /**
253
+ * Pick up the device code a previous process already minted, instead of
254
+ * asking the server for a new one (CORBOT-7F3EC71C).
255
+ *
256
+ * The bond link is redeemable for its full 30 minutes server-side, but
257
+ * `/v1/oauth/device/authorize` expires every unclaimed claim token for the
258
+ * agent before it issues the next one (OAuthDeviceService `tryReuseProvisional`).
259
+ * So the act of restarting — which an IDE does to its stdio MCP server
260
+ * constantly — used to kill the exact link the agent had just relayed to its
261
+ * human, and the human clicked a page that no longer meant anything.
262
+ * Resuming polls the same code and re-surfaces the same URL, so the link that
263
+ * left the building stays the link that works.
264
+ */
265
+ function resumeDeviceFlow(saved) {
266
+ emitTelemetry({ event: 'auth.device_flow.resume' });
267
+ const remainingMin = Math.max(1, Math.round((Date.parse(saved.codeExpiresAt) - Date.now()) / 60_000));
268
+ stderr('');
269
+ stderr('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
270
+ stderr(' aismemory — still waiting on the bond link already sent');
271
+ stderr('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
272
+ stderr(` Bond URL : ${saved.verificationUriComplete}`);
273
+ stderr(` Code : ${saved.userCode}`);
274
+ stderr(` Same link as before — good for about ${remainingMin} more min.`);
275
+ stderr('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
276
+ return attachDeviceFlowPoll({
277
+ device_code: saved.deviceCode,
278
+ user_code: saved.userCode,
279
+ verification_uri_complete: saved.verificationUriComplete,
280
+ agent_id: saved.agentId,
281
+ provisional_tenant_id: saved.provisionalTenantId,
282
+ provisional_token: saved.provisionalToken,
283
+ dead: false,
284
+ }, saved.interval ?? DEFAULT_DEVICE_POLL_INTERVAL_S);
285
+ }
286
+ /** Fallback poll interval when a resumed record predates the stored field. */
287
+ const DEFAULT_DEVICE_POLL_INTERVAL_S = 5;
217
288
  async function startDeviceFlow(priorProvisionalToken) {
218
289
  emitTelemetry({ event: 'auth.device_flow.start' });
290
+ // A caller that passes a prior provisional token has just watched its flow
291
+ // die (expired, denied, timed out), so its code is spent — mint, never
292
+ // resume. Only a process with no flow of its own looks on disk.
293
+ const resumable = priorProvisionalToken ? null : loadPendingDeviceFlow();
294
+ if (isResumableDeviceFlow(resumable)) {
295
+ return resumeDeviceFlow(resumable);
296
+ }
219
297
  stderr('Starting authentication...');
220
298
  // CORBOT-8F96A8EF: when this process has no in-flight flow of its own,
221
299
  // fall back to the provisional token left on disk by an earlier process.
@@ -247,32 +325,23 @@ async function startDeviceFlow(priorProvisionalToken) {
247
325
  agentId: agent_id,
248
326
  provisionalTenantId: provisional_tenant_id,
249
327
  startedAt: new Date().toISOString(),
328
+ deviceCode: device_code,
329
+ userCode: user_code,
330
+ verificationUriComplete: verification_uri_complete,
331
+ interval,
332
+ codeExpiresAt: new Date(Date.now() + authRes.data.expires_in * 1000).toISOString(),
250
333
  });
251
- const flow = {
334
+ return attachDeviceFlowPoll({
252
335
  device_code,
253
336
  user_code,
254
337
  verification_uri_complete,
255
338
  agent_id,
256
339
  provisional_tenant_id,
257
340
  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.
341
+ // poll is assigned by attachDeviceFlowPoll, which captures the live flow
342
+ // object so pollForToken can update the surfaced URL on auto-restart.
260
343
  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;
344
+ }, interval);
276
345
  }
277
346
  async function pollForToken(device_code, interval, agent_id, provisional_tenant_id,
278
347
  /** Mutable ref so auto-restart can update the surfaced URL and provisional token in ActiveDeviceFlow */
@@ -333,6 +402,11 @@ flowRef) {
333
402
  agentId: authRes.data.agent_id,
334
403
  provisionalTenantId: authRes.data.provisional_tenant_id,
335
404
  startedAt: new Date().toISOString(),
405
+ deviceCode: authRes.data.device_code,
406
+ userCode: authRes.data.user_code,
407
+ verificationUriComplete: authRes.data.verification_uri_complete,
408
+ interval: authRes.data.interval,
409
+ codeExpiresAt: new Date(Date.now() + authRes.data.expires_in * 1000).toISOString(),
336
410
  });
337
411
  stderr('');
338
412
  stderr('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
@@ -437,18 +511,49 @@ const tools = [
437
511
  },
438
512
  {
439
513
  name: 'whoami',
440
- description: 'Get the current agent identity — name, DID, status, description.' + BOND_LINK_NOTE,
514
+ 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.'
515
+ + BOND_LINK_NOTE,
441
516
  inputSchema: { type: 'object', properties: {} },
442
517
  },
518
+ {
519
+ name: 'orientation_check',
520
+ description: 'Run the same expected-environment orientation check "aismemory doctor --orientation" runs from a local file, ' +
521
+ 'reachable here for a filesystem-free surface. Pass an owner-approved manifest (host, account, required channels, ' +
522
+ 'and the wider tool-server/connector surface this agent expects — names and purposes only, never a secret value) ' +
523
+ 'plus this session\'s self-reported evidence. Returns PASS/FAIL per item; read-only, never self-healing, never grants anything.',
524
+ inputSchema: {
525
+ type: 'object',
526
+ properties: {
527
+ version: { type: 'number', enum: [1], description: 'Manifest format version. Always 1.' },
528
+ identity: { type: 'string', description: 'This agent\'s AIS identity (uuid).' },
529
+ requirements: {
530
+ type: 'object',
531
+ description: 'Owner-approved expectations: { host, account, channels: ["ais","mcp","inbox"], environment?: [{name, kind, purpose, required, permission?, dataEnvironment?}] }.',
532
+ },
533
+ current: { type: 'object', description: 'This session\'s observed { host, account, session } marker.' },
534
+ evidence: { type: 'object', description: 'This session\'s self-reported evidence: { session, host, account, credentials, credentialSource, channels: {ais,mcp,inbox}, environment?: {[name]: "pass"|"missing"|"unknown"} }.' },
535
+ relocation: { type: 'object', description: '{ verified, observedAction? } — whether relocation off the expected host/account is a verified, human-confirmed capability.' },
536
+ activationUrl: { type: 'string', description: 'Optional AIS device-flow activation door URL, echoed back as bondUrl.' },
537
+ },
538
+ required: ['version', 'identity', 'requirements', 'current', 'evidence', 'relocation'],
539
+ },
540
+ },
443
541
  {
444
542
  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,
543
+ 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. ' +
544
+ "Set principalAgentId to load ANOTHER agent's context under a 'memory:read' grant. " +
545
+ 'Every view is bounded: the default view budgets to 6000 tokens, and anything the ceiling cut is ' +
546
+ "named in the response's receipt.omitted rather than dropped silently — goal titles are cut to 200 " +
547
+ "characters with the goal's memory id in the payload, so the whole body is one memory-by-id fetch away. " +
548
+ "Pass view='lean' for continuity only (last handoff first, recent memories) or view='bootstrap' " +
549
+ 'for a cross-harness session start (adds goals and inbox). maxTokens sets the ceiling on any view.' + BOND_LINK_NOTE,
447
550
  inputSchema: {
448
551
  type: 'object',
449
552
  properties: {
450
553
  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.' },
554
+ 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.' },
555
+ 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." },
556
+ 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
557
  },
453
558
  },
454
559
  },
@@ -721,6 +826,30 @@ async function runWorkspaceKeyModeServer(config) {
721
826
  await server.connect(transport);
722
827
  stderr(`MCP server running (workspace key mode). Tools: ${tools.map((t) => t.name).join(', ')}`);
723
828
  }
829
+ /**
830
+ * MCP server entrypoint for run-pass auth mode (CORBOT-662A4B3A).
831
+ *
832
+ * The pass itself is never stored in process state: each tool request re-reads
833
+ * AIS_RUN_PASS_FILE and sends the current content as x-run-pass only.
834
+ */
835
+ async function runPassModeServer(config) {
836
+ stderr(`Run-pass auth mode — agent fixed to ${config.agentId}; pass file ${config.runPassFile}`);
837
+ const server = new Server({ name: 'aismemory', version: PACKAGE_VERSION }, { capabilities: { tools: {}, prompts: {} } });
838
+ server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools }));
839
+ server.setRequestHandler(ListPromptsRequestSchema, async () => ({ prompts: [] }));
840
+ server.setRequestHandler(GetPromptRequestSchema, async (request) => {
841
+ throw new Error(`Unknown prompt: ${request.params.name}`);
842
+ });
843
+ server.setRequestHandler(CallToolRequestSchema, createRunPassCallToolHandler({
844
+ aisUrl: AIS_URL,
845
+ activityTracker,
846
+ config,
847
+ getSessionIdentity: () => sessionIdentity,
848
+ }));
849
+ const transport = new StdioServerTransport();
850
+ await server.connect(transport);
851
+ stderr(`MCP server running (run-pass mode). Tools: ${tools.map((t) => t.name).join(', ')}`);
852
+ }
724
853
  /**
725
854
  * MCP server entrypoint for agent-API-key auth mode (CORBOT-B1D3244C).
726
855
  *
@@ -751,7 +880,17 @@ async function runAgentKeyModeServer(config) {
751
880
  stderr(`MCP server running (agent API key mode). Tools: ${tools.map((t) => t.name).join(', ')}`);
752
881
  }
753
882
  async function main() {
883
+ // CORBOT-AF282BD7: --help / --version print and exit before any credential or server code.
884
+ const infoText = resolveInfoRequest(process.argv.slice(2), PACKAGE_VERSION);
885
+ if (infoText !== null) {
886
+ process.stdout.write(infoText);
887
+ return;
888
+ }
754
889
  // Subcommand dispatch — CLI entrypoints exit before MCP server startup.
890
+ if (process.argv[2] === 'install') {
891
+ (await import('./cli/install.js')).main(process.argv.slice(3));
892
+ return;
893
+ }
755
894
  if (process.argv[2] === 'enable-key-auth') {
756
895
  await import('./cli/enable-key-auth.js');
757
896
  return; // CLI calls process.exit() itself
@@ -768,6 +907,15 @@ async function main() {
768
907
  await (await import('./cli/pull-memory.js')).main(process.argv.slice(3));
769
908
  return;
770
909
  }
910
+ if (process.argv[2] === 'invite') {
911
+ await (await import('./cli/invite-accept.js')).runFromCli(process.argv.slice(3));
912
+ return;
913
+ }
914
+ // CORBOT-73753A98: a person at a terminal gets a how-to; MCP clients pipe stdin and see nothing new.
915
+ const humanAtTerminal = process.stdin.isTTY === true;
916
+ if (humanAtTerminal) {
917
+ process.stderr.write(HUMAN_HOWTO_TEXT);
918
+ }
771
919
  // CORBOT-7B8A1D16: ask the npm registry, at most about once a day, whether a
772
920
  // newer aismemory has been published. Deliberately not awaited — startup must
773
921
  // not wait on a third-party registry, and the answer is only needed later,
@@ -775,8 +923,10 @@ async function main() {
775
923
  void startVersionCheck({ currentVersion: PACKAGE_VERSION, onUpdateAvailable: stderr });
776
924
  sessionIdentity = loadSessionIdentity();
777
925
  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.
926
+ rejectRunPassWithKeyEnv(adapterEnv);
927
+ // Explicit key auth modes keep their existing order when AIS_RUN_PASS_FILE is
928
+ // unset: workspace key -> agent API key -> device flow. A run pass combined
929
+ // with any key env var is refused above.
780
930
  let workspaceKeyConfig;
781
931
  try {
782
932
  workspaceKeyConfig = loadWorkspaceKeyConfig(adapterEnv);
@@ -811,6 +961,23 @@ async function main() {
811
961
  await runAgentKeyModeServer(agentKeyConfig);
812
962
  return;
813
963
  }
964
+ // Run-pass auth mode (CORBOT-662A4B3A) — short-lived per-run credential
965
+ // written by the launcher. It must not read or require any key env var.
966
+ let runPassConfig;
967
+ try {
968
+ runPassConfig = loadRunPassConfig(adapterEnv);
969
+ }
970
+ catch (err) {
971
+ if (err instanceof RunPassConfigError) {
972
+ stderr(err.message);
973
+ process.exit(1);
974
+ }
975
+ throw err;
976
+ }
977
+ if (runPassConfig) {
978
+ await runPassModeServer(runPassConfig);
979
+ return;
980
+ }
814
981
  // Lazy-auth state. We connect the MCP transport before the user has approved
815
982
  // the device flow so Claude Code's 30s connection timeout is not blocked on
816
983
  // human approval. The first tool call surfaces the bond URL via its result.
@@ -1018,7 +1185,7 @@ async function main() {
1018
1185
  setupAutoHandoff(AIS_URL, c.agentId, c.token, activityTracker, () => {
1019
1186
  stopRefreshTimer();
1020
1187
  stderr('Session handoff saved');
1021
- }, () => verifyPinnedIdentity(sessionIdentity, c.agentId, () => aisGet(`/v1/agents/${c.agentId}`, c.token)));
1188
+ }, () => verifyPinnedIdentity(sessionIdentity, c.agentId, () => aisGet(`/v1/agents/${c.agentId}`, c.token), { credentialKey: identityCredentialFingerprint('oauth-bearer', c.token) }));
1022
1189
  }
1023
1190
  catch (e) {
1024
1191
  stderr(`Post-auth setup failed: ${e instanceof Error ? e.message : String(e)}`);
@@ -1086,6 +1253,9 @@ async function main() {
1086
1253
  else if (hasEnrolledKey()) {
1087
1254
  stderr('Using enrolled device key; session starts on first tool call.');
1088
1255
  }
1256
+ else if (humanAtTerminal) {
1257
+ stderr('No sign-in yet. Your agent will show a bond link on first use.');
1258
+ }
1089
1259
  else {
1090
1260
  stderr(`${MISSING_CREDENTIAL_HELP} Bond URL will be surfaced on first tool call.`);
1091
1261
  }
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
  /**