aismemory 0.8.3 → 0.8.4
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 +146 -3
- package/dist/__tests__/agent-key-mode.test.js +46 -5
- package/dist/__tests__/agent-key-mode.test.js.map +1 -1
- package/dist/__tests__/ais-http.test.js +22 -0
- package/dist/__tests__/ais-http.test.js.map +1 -1
- package/dist/__tests__/auto-enroll-key.test.js +20 -1
- package/dist/__tests__/auto-enroll-key.test.js.map +1 -1
- package/dist/__tests__/cli-info.test.js +8 -4
- package/dist/__tests__/cli-info.test.js.map +1 -1
- package/dist/__tests__/client-credential-expiry.test.d.ts +1 -0
- package/dist/__tests__/client-credential-expiry.test.js +319 -0
- package/dist/__tests__/client-credential-expiry.test.js.map +1 -0
- package/dist/__tests__/declared-agent.test.d.ts +1 -0
- package/dist/__tests__/declared-agent.test.js +60 -0
- package/dist/__tests__/declared-agent.test.js.map +1 -0
- package/dist/__tests__/doctor.test.js +21 -2
- package/dist/__tests__/doctor.test.js.map +1 -1
- package/dist/__tests__/dream-poll.test.d.ts +1 -0
- package/dist/__tests__/dream-poll.test.js +130 -0
- package/dist/__tests__/dream-poll.test.js.map +1 -0
- package/dist/__tests__/enable-key-auth.test.d.ts +1 -0
- package/dist/__tests__/enable-key-auth.test.js +180 -0
- package/dist/__tests__/enable-key-auth.test.js.map +1 -0
- package/dist/__tests__/existing-hashes.test.js +3 -6
- package/dist/__tests__/existing-hashes.test.js.map +1 -1
- package/dist/__tests__/full-context-view-forwarding.test.js +20 -1
- package/dist/__tests__/full-context-view-forwarding.test.js.map +1 -1
- package/dist/__tests__/hooks.test.d.ts +1 -0
- package/dist/__tests__/hooks.test.js +455 -0
- package/dist/__tests__/hooks.test.js.map +1 -0
- package/dist/__tests__/hydration.test.js +2 -0
- package/dist/__tests__/hydration.test.js.map +1 -1
- package/dist/__tests__/install.test.js +28 -1
- package/dist/__tests__/install.test.js.map +1 -1
- package/dist/__tests__/invite-accept.test.js +167 -3
- package/dist/__tests__/invite-accept.test.js.map +1 -1
- package/dist/__tests__/list-all-agents.test.js +17 -15
- package/dist/__tests__/list-all-agents.test.js.map +1 -1
- package/dist/__tests__/mcp-instructions.test.d.ts +1 -0
- package/dist/__tests__/mcp-instructions.test.js +26 -0
- package/dist/__tests__/mcp-instructions.test.js.map +1 -0
- package/dist/__tests__/mcp-tools.test.js +65 -0
- package/dist/__tests__/mcp-tools.test.js.map +1 -1
- package/dist/__tests__/memory-export.test.d.ts +1 -0
- package/dist/__tests__/memory-export.test.js +78 -0
- package/dist/__tests__/memory-export.test.js.map +1 -0
- package/dist/__tests__/owner-credentials.test.d.ts +1 -0
- package/dist/__tests__/owner-credentials.test.js +250 -0
- package/dist/__tests__/owner-credentials.test.js.map +1 -0
- package/dist/__tests__/owner-keychain-agent-load.test.d.ts +1 -0
- package/dist/__tests__/owner-keychain-agent-load.test.js +57 -0
- package/dist/__tests__/owner-keychain-agent-load.test.js.map +1 -0
- package/dist/__tests__/recall-order-by.test.d.ts +1 -0
- package/dist/__tests__/recall-order-by.test.js +115 -0
- package/dist/__tests__/recall-order-by.test.js.map +1 -0
- package/dist/__tests__/remember-duplicate-truth.test.js +11 -0
- package/dist/__tests__/remember-duplicate-truth.test.js.map +1 -1
- package/dist/__tests__/resolve-agent-preference.test.js +19 -8
- package/dist/__tests__/resolve-agent-preference.test.js.map +1 -1
- package/dist/__tests__/signin-keychain.test.d.ts +1 -0
- package/dist/__tests__/signin-keychain.test.js +79 -0
- package/dist/__tests__/signin-keychain.test.js.map +1 -0
- package/dist/__tests__/startup-identity.test.d.ts +1 -0
- package/dist/__tests__/startup-identity.test.js +213 -0
- package/dist/__tests__/startup-identity.test.js.map +1 -0
- package/dist/__tests__/sync-auth.test.d.ts +1 -0
- package/dist/__tests__/sync-auth.test.js +69 -0
- package/dist/__tests__/sync-auth.test.js.map +1 -0
- package/dist/__tests__/sync-doc.test.d.ts +1 -0
- package/dist/__tests__/sync-doc.test.js +13 -0
- package/dist/__tests__/sync-doc.test.js.map +1 -0
- package/dist/__tests__/sync-memory-cli.test.js +1 -1
- package/dist/__tests__/sync-memory-cli.test.js.map +1 -1
- package/dist/__tests__/tool-args.test.js +6 -0
- package/dist/__tests__/tool-args.test.js.map +1 -1
- package/dist/agent-key-mode.js +22 -22
- package/dist/agent-key-mode.js.map +1 -1
- package/dist/agent-preference.d.ts +4 -0
- package/dist/agent-preference.js +7 -1
- package/dist/agent-preference.js.map +1 -1
- package/dist/ais-http-error.d.ts +5 -0
- package/dist/ais-http-error.js +10 -0
- package/dist/ais-http-error.js.map +1 -1
- package/dist/ais-http.js +8 -4
- package/dist/ais-http.js.map +1 -1
- package/dist/auto-handoff.js +2 -1
- package/dist/auto-handoff.js.map +1 -1
- package/dist/cli/doctor.d.ts +8 -0
- package/dist/cli/doctor.js +19 -0
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/enable-key-auth.js +39 -18
- package/dist/cli/enable-key-auth.js.map +1 -1
- package/dist/cli/export-harness.d.ts +13 -0
- package/dist/cli/export-harness.js +110 -0
- package/dist/cli/export-harness.js.map +1 -0
- package/dist/cli/hooks.d.ts +62 -0
- package/dist/cli/hooks.js +634 -0
- package/dist/cli/hooks.js.map +1 -0
- package/dist/cli/install.d.ts +4 -0
- package/dist/cli/install.js +44 -5
- package/dist/cli/install.js.map +1 -1
- package/dist/cli/invite-accept.d.ts +36 -1
- package/dist/cli/invite-accept.js +135 -1
- package/dist/cli/invite-accept.js.map +1 -1
- package/dist/cli/owner-credentials.d.ts +52 -0
- package/dist/cli/owner-credentials.js +387 -0
- package/dist/cli/owner-credentials.js.map +1 -0
- package/dist/cli/sync-memory.js +7 -9
- package/dist/cli/sync-memory.js.map +1 -1
- package/dist/cli-info.js +6 -1
- package/dist/cli-info.js.map +1 -1
- package/dist/credential-expiry.d.ts +10 -0
- package/dist/credential-expiry.js +41 -0
- package/dist/credential-expiry.js.map +1 -0
- package/dist/declared-agent.d.ts +20 -0
- package/dist/declared-agent.js +40 -0
- package/dist/declared-agent.js.map +1 -0
- package/dist/device-poll.d.ts +1 -0
- package/dist/device-poll.js.map +1 -1
- package/dist/dream-poll.d.ts +19 -0
- package/dist/dream-poll.js +93 -0
- package/dist/dream-poll.js.map +1 -0
- package/dist/env-agent.d.ts +6 -1
- package/dist/env-agent.js +18 -5
- package/dist/env-agent.js.map +1 -1
- package/dist/hydration.js +2 -1
- package/dist/hydration.js.map +1 -1
- package/dist/index.js +124 -16
- package/dist/index.js.map +1 -1
- package/dist/key-auth.d.ts +13 -3
- package/dist/key-auth.js +27 -5
- package/dist/key-auth.js.map +1 -1
- package/dist/mcp/tools.js +37 -20
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp-instructions.d.ts +6 -0
- package/dist/mcp-instructions.js +7 -0
- package/dist/mcp-instructions.js.map +1 -0
- package/dist/memory-export.d.ts +30 -0
- package/dist/memory-export.js +116 -0
- package/dist/memory-export.js.map +1 -0
- package/dist/pipeline/bulk-store.d.ts +2 -5
- package/dist/pipeline/bulk-store.js +2 -4
- package/dist/pipeline/bulk-store.js.map +1 -1
- package/dist/pipeline/existing-hashes.d.ts +2 -5
- package/dist/pipeline/existing-hashes.js +1 -2
- package/dist/pipeline/existing-hashes.js.map +1 -1
- package/dist/pipeline/sync-auth.d.ts +12 -0
- package/dist/pipeline/sync-auth.js +64 -0
- package/dist/pipeline/sync-auth.js.map +1 -0
- package/dist/refresh.js +2 -1
- package/dist/refresh.js.map +1 -1
- package/dist/run-pass-mode.js +8 -13
- package/dist/run-pass-mode.js.map +1 -1
- package/dist/signin-keychain.d.ts +54 -0
- package/dist/signin-keychain.js +200 -0
- package/dist/signin-keychain.js.map +1 -0
- package/dist/startup-identity.d.ts +71 -0
- package/dist/startup-identity.js +213 -0
- package/dist/startup-identity.js.map +1 -0
- package/dist/tool-args.d.ts +10 -0
- package/dist/tool-args.js +39 -0
- package/dist/tool-args.js.map +1 -1
- package/dist/types.d.ts +8 -0
- package/dist/workspace-key-mode.js +19 -19
- package/dist/workspace-key-mode.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/install.d.ts
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
export interface InstallResult {
|
|
2
2
|
configPath: string;
|
|
3
|
+
entryInstructionsPath: string;
|
|
4
|
+
entryInstructions: string;
|
|
3
5
|
startCommand: string;
|
|
4
6
|
}
|
|
7
|
+
/** First-call guidance for a new machine; carries the agent ID only, never credentials. */
|
|
8
|
+
export declare function renderEntryInstructions(agentId: string): string;
|
|
5
9
|
export declare function installIdentity(identity: string, outDir?: string): InstallResult;
|
|
6
10
|
export declare function main(argv?: string[]): void;
|
package/dist/cli/install.js
CHANGED
|
@@ -1,8 +1,32 @@
|
|
|
1
1
|
/** Generate opt-in session configs; never register an identity in user scope. */
|
|
2
|
-
import { mkdirSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { lstatSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
3
3
|
import { resolve, join } from 'node:path';
|
|
4
4
|
import { parseArgs } from 'node:util';
|
|
5
5
|
import { loadSessionIdentity } from '../session-identity.js';
|
|
6
|
+
import { readPackageVersion } from '../version-check.js';
|
|
7
|
+
function exists(path) {
|
|
8
|
+
try {
|
|
9
|
+
lstatSync(path);
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/** First-call guidance for a new machine; carries the agent ID only, never credentials. */
|
|
17
|
+
export function renderEntryInstructions(agentId) {
|
|
18
|
+
return `# AIS Memory entry instructions: ${agentId}
|
|
19
|
+
|
|
20
|
+
This session is pinned to AIS agent \`${agentId}\` through its MCP config.
|
|
21
|
+
Call these in order at the start of every session:
|
|
22
|
+
|
|
23
|
+
1. \`whoami\`: confirm the active identity is \`${agentId}\`, or complete authentication if it asks.
|
|
24
|
+
2. \`full_context\`: load the identity, constitution and goals.
|
|
25
|
+
3. Operating layer: follow the instructions and goals \`full_context\` returns; \`recall\` before answering from past context and \`remember\` each decision or lesson worth keeping.
|
|
26
|
+
|
|
27
|
+
No credentials are stored in this file or the MCP config. Authenticate through \`whoami\`.
|
|
28
|
+
`;
|
|
29
|
+
}
|
|
6
30
|
function shellQuote(value) {
|
|
7
31
|
return `'${value.replaceAll("'", "'\\''")}'`;
|
|
8
32
|
}
|
|
@@ -15,7 +39,8 @@ export function installIdentity(identity, outDir = resolve('aismemory-configs'))
|
|
|
15
39
|
mcpServers: {
|
|
16
40
|
aismemory: {
|
|
17
41
|
command: 'npx',
|
|
18
|
-
|
|
42
|
+
// Pin this release: resolving @latest on every start can outlast a client's connect timeout.
|
|
43
|
+
args: ['-y', `aismemory@${readPackageVersion()}`],
|
|
19
44
|
env: {
|
|
20
45
|
AIS_AGENT_ID: pin.agentId,
|
|
21
46
|
npm_config_audit: 'false',
|
|
@@ -24,29 +49,43 @@ export function installIdentity(identity, outDir = resolve('aismemory-configs'))
|
|
|
24
49
|
},
|
|
25
50
|
},
|
|
26
51
|
};
|
|
52
|
+
const entryInstructionsPath = join(resolve(outDir), `aismemory-${pin.agentId}.entry.md`);
|
|
53
|
+
const entryInstructions = renderEntryInstructions(pin.agentId);
|
|
54
|
+
// Check both up front so a refusal never leaves a config without its instructions.
|
|
55
|
+
if (exists(configPath) || exists(entryInstructionsPath)) {
|
|
56
|
+
throw new Error(`Refusing to overwrite existing install files for ${pin.agentId} in ${resolve(outDir)}.`);
|
|
57
|
+
}
|
|
27
58
|
mkdirSync(resolve(outDir), { recursive: true });
|
|
28
59
|
// Exclusive creation refuses existing files (including symlinks); never overwrite
|
|
29
60
|
// another config or follow a link into a user's shared configuration.
|
|
30
61
|
writeFileSync(configPath, `${JSON.stringify(config, null, 2)}\n`, { flag: 'wx' });
|
|
62
|
+
writeFileSync(entryInstructionsPath, entryInstructions, { flag: 'wx' });
|
|
31
63
|
return {
|
|
32
64
|
configPath,
|
|
65
|
+
entryInstructionsPath,
|
|
66
|
+
entryInstructions,
|
|
33
67
|
startCommand: `AIS_AGENT_ID=${shellQuote(pin.agentId)} claude --strict-mcp-config --mcp-config ${shellQuote(configPath)}`,
|
|
34
68
|
};
|
|
35
69
|
}
|
|
36
70
|
export function main(argv = process.argv.slice(3)) {
|
|
37
71
|
const { values } = parseArgs({
|
|
38
72
|
args: argv,
|
|
39
|
-
options: { identity: { type: 'string' }, out: { type: 'string' }, help: { type: 'boolean' } },
|
|
73
|
+
options: { identity: { type: 'string' }, out: { type: 'string' }, bundle: { type: 'boolean' }, help: { type: 'boolean' } },
|
|
40
74
|
strict: true,
|
|
41
75
|
allowPositionals: false,
|
|
42
76
|
});
|
|
43
77
|
if (values.help) {
|
|
44
|
-
process.stdout.write('Usage: aismemory install --identity <agent-id> [--out <directory>]\
|
|
78
|
+
process.stdout.write('Usage: aismemory install --identity <agent-id> [--out <directory>] [--bundle]\n--bundle also prints one JSON bundle (config, entry instructions, start command). Use the agent ID from whoami; names are not resolved. Default output: ./aismemory-configs\n');
|
|
45
79
|
return;
|
|
46
80
|
}
|
|
47
81
|
if (!values.identity)
|
|
48
82
|
throw new Error('Usage: aismemory install --identity <agent-id> [--out <directory>]');
|
|
49
83
|
const result = installIdentity(values.identity, values.out);
|
|
50
|
-
|
|
84
|
+
if (values.bundle) {
|
|
85
|
+
const config = JSON.parse(readFileSync(result.configPath, 'utf8'));
|
|
86
|
+
process.stdout.write(`${JSON.stringify({ config, entryInstructions: result.entryInstructions, startCommand: result.startCommand }, null, 2)}\n`);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
process.stdout.write(`Created ${result.configPath}\nCreated ${result.entryInstructionsPath}\n\nStart this identity's session (shell/start-script snippet):\n${result.startCommand}\n\n--strict-mcp-config loads only this config for this session. Add other needed MCP servers to this file.\nKeep this config per session; never copy its AIS_AGENT_ID into ~/.claude.json or a shared shell profile.\nNo credentials were copied. Run whoami in the session to verify or complete authentication.\n`);
|
|
51
90
|
}
|
|
52
91
|
//# sourceMappingURL=install.js.map
|
package/dist/cli/install.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,12 +12,27 @@ export interface InviteAcceptResult {
|
|
|
12
12
|
inviterDisplayName?: string;
|
|
13
13
|
agentMessage?: string;
|
|
14
14
|
humanMessage?: string;
|
|
15
|
+
credentialsSaved?: boolean;
|
|
16
|
+
credentialsFile?: string;
|
|
17
|
+
/** Why the save failed (fs error message only; never the bearer). */
|
|
18
|
+
credentialsError?: string;
|
|
19
|
+
}
|
|
20
|
+
/** Fields of the reply that make up the credentials file; never printed. */
|
|
21
|
+
interface ProvisionalBearer {
|
|
22
|
+
token: string;
|
|
23
|
+
agentId: string;
|
|
24
|
+
tenantId: string;
|
|
25
|
+
expiresAt: string;
|
|
15
26
|
}
|
|
16
27
|
export interface InviteAcceptDeps {
|
|
17
28
|
env: NodeJS.ProcessEnv;
|
|
18
29
|
readStdin: () => Promise<string>;
|
|
19
30
|
fetchImpl: typeof fetch;
|
|
20
31
|
stdout: (text: string) => void;
|
|
32
|
+
/** Where to save the provisional bearer; defaults to provisionalCredentialsPath(). */
|
|
33
|
+
credentialsPath?: string;
|
|
34
|
+
/** Home directory for the default path; defaults to os.homedir(). */
|
|
35
|
+
home?: string;
|
|
21
36
|
}
|
|
22
37
|
export declare class InviteAcceptError extends Error {
|
|
23
38
|
constructor(message: string);
|
|
@@ -25,8 +40,28 @@ export declare class InviteAcceptError extends Error {
|
|
|
25
40
|
export declare function parseInviteArgs(argv: string[]): InviteAcceptArgs;
|
|
26
41
|
/** Resolve the token from the one source the arguments allow. */
|
|
27
42
|
export declare function readInviteToken(args: InviteAcceptArgs, deps: Pick<InviteAcceptDeps, 'env' | 'readStdin'>): Promise<string>;
|
|
43
|
+
/**
|
|
44
|
+
* Where the provisional bearer goes, or why it is not saved. With AIS_AGENT_ID
|
|
45
|
+
* pinned to another agent the default path is that agent's file, so the new
|
|
46
|
+
* agent gets its own agents/<agentId>/ file instead. An explicit
|
|
47
|
+
* AIS_CREDENTIALS_FILE is then the pinned agent's file too, so nothing is saved.
|
|
48
|
+
*/
|
|
49
|
+
export declare function provisionalCredentialsPath(env: NodeJS.ProcessEnv, agentId: string, home?: string): {
|
|
50
|
+
file: string;
|
|
51
|
+
} | {
|
|
52
|
+
skipped: string;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Create the credentials file with the provisional bearer. The exclusive
|
|
56
|
+
* flag ('wx') means an existing file is left alone and no pre-existing
|
|
57
|
+
* file's permissions are inherited. Returns false when the file exists.
|
|
58
|
+
*/
|
|
59
|
+
export declare function saveProvisionalCredentials(bearer: ProvisionalBearer, file: string): boolean;
|
|
28
60
|
/** POST /v1/register with the invite. The bearer token in the reply is not printed. */
|
|
29
|
-
export declare function acceptInvite(aisUrl: string, token: string, name: string | undefined, fetchImpl: typeof fetch): Promise<InviteAcceptResult
|
|
61
|
+
export declare function acceptInvite(aisUrl: string, token: string, name: string | undefined, fetchImpl: typeof fetch): Promise<InviteAcceptResult & {
|
|
62
|
+
bearer?: ProvisionalBearer | 'mismatch';
|
|
63
|
+
}>;
|
|
30
64
|
export declare function main(argv: string[], deps?: InviteAcceptDeps): Promise<void>;
|
|
31
65
|
/** Entry from `aismemory invite ...`: failures print one line and exit 1. */
|
|
32
66
|
export declare function runFromCli(argv: string[]): Promise<void>;
|
|
67
|
+
export {};
|
|
@@ -13,9 +13,18 @@
|
|
|
13
13
|
*
|
|
14
14
|
* Exit codes:
|
|
15
15
|
* 0 — registered; the bond link is on stdout
|
|
16
|
+
*
|
|
17
|
+
* The provisional bearer from the reply is saved to the credentials file
|
|
18
|
+
* (dir 0700, file 0600; CORBOT-E1F1BF0C) so the agent can use AIS before
|
|
19
|
+
* bonding without a second sign-in. It is never printed. An existing
|
|
20
|
+
* credentials file is never overwritten: that may be a bonded agent's.
|
|
16
21
|
* 1 — bad arguments, no token, or the service refused the invite
|
|
17
22
|
*/
|
|
23
|
+
import { chmodSync, lstatSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
24
|
+
import { homedir } from 'node:os';
|
|
25
|
+
import { dirname, join } from 'node:path';
|
|
18
26
|
import { DEFAULT_AIS_URL } from '../ais-http.js';
|
|
27
|
+
import { credentialsFilePath } from '../oauth-credentials.js';
|
|
19
28
|
const USAGE = `aismemory invite accept — join Agents & Swarms with a friends invite
|
|
20
29
|
|
|
21
30
|
Usage:
|
|
@@ -32,6 +41,8 @@ There is no --token flag: a token on the command line lands in process
|
|
|
32
41
|
listings and shell history. Give your human only the bond link printed.
|
|
33
42
|
`;
|
|
34
43
|
const ENV_NAME_PATTERN = /^[A-Za-z_][A-Za-z0-9_]*$/;
|
|
44
|
+
// Same rule credentialsFilePath() applies to AIS_AGENT_ID: one safe path segment.
|
|
45
|
+
const AGENT_ID_PATTERN = /^[a-zA-Z0-9_-]+$/;
|
|
35
46
|
export class InviteAcceptError extends Error {
|
|
36
47
|
constructor(message) {
|
|
37
48
|
super(message);
|
|
@@ -95,6 +106,98 @@ function pickString(source, key) {
|
|
|
95
106
|
const value = source[key];
|
|
96
107
|
return typeof value === 'string' ? value : undefined;
|
|
97
108
|
}
|
|
109
|
+
/** Payload claims of the provisional JWT AIS just issued (not verified here). */
|
|
110
|
+
function jwtClaims(jwt) {
|
|
111
|
+
const payload = jwt.split('.')[1];
|
|
112
|
+
if (payload === undefined)
|
|
113
|
+
return undefined;
|
|
114
|
+
try {
|
|
115
|
+
const claims = JSON.parse(Buffer.from(payload, 'base64url').toString('utf8'));
|
|
116
|
+
return typeof claims === 'object' && claims !== null ? claims : undefined;
|
|
117
|
+
}
|
|
118
|
+
catch {
|
|
119
|
+
return undefined;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
/** The bearer from the reply, or 'mismatch' when its agentId is not the JWT's agent. */
|
|
123
|
+
function provisionalBearer(data) {
|
|
124
|
+
const token = pickString(data, 'bearerToken');
|
|
125
|
+
const agentId = pickString(data, 'agentId');
|
|
126
|
+
const expiresAt = pickString(data, 'expiresAt');
|
|
127
|
+
const claims = token === undefined ? undefined : jwtClaims(token);
|
|
128
|
+
const tenantId = claims === undefined ? undefined : pickString(claims, 'tenant_id');
|
|
129
|
+
if (token === undefined || agentId === undefined || expiresAt === undefined || claims === undefined || tenantId === undefined) {
|
|
130
|
+
return undefined;
|
|
131
|
+
}
|
|
132
|
+
// Every agent claim the JWT carries must name the agent the reply names.
|
|
133
|
+
const jwtAgentIds = [pickString(claims, 'agent_id'), pickString(claims, 'sub')]
|
|
134
|
+
.filter((id) => id !== undefined);
|
|
135
|
+
if (jwtAgentIds.length === 0 || jwtAgentIds.some((id) => id !== agentId)) {
|
|
136
|
+
return 'mismatch';
|
|
137
|
+
}
|
|
138
|
+
return { token, agentId, tenantId, expiresAt };
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Where the provisional bearer goes, or why it is not saved. With AIS_AGENT_ID
|
|
142
|
+
* pinned to another agent the default path is that agent's file, so the new
|
|
143
|
+
* agent gets its own agents/<agentId>/ file instead. An explicit
|
|
144
|
+
* AIS_CREDENTIALS_FILE is then the pinned agent's file too, so nothing is saved.
|
|
145
|
+
*/
|
|
146
|
+
export function provisionalCredentialsPath(env, agentId, home = homedir()) {
|
|
147
|
+
const pinned = env['AIS_AGENT_ID']?.trim();
|
|
148
|
+
if (!pinned || pinned === agentId) {
|
|
149
|
+
return { file: credentialsFilePath(home) };
|
|
150
|
+
}
|
|
151
|
+
if (env['AIS_CREDENTIALS_FILE']?.trim()) {
|
|
152
|
+
return { skipped: 'AIS_CREDENTIALS_FILE is set while AIS_AGENT_ID names another agent; credentials not saved.' };
|
|
153
|
+
}
|
|
154
|
+
if (!AGENT_ID_PATTERN.test(agentId)) {
|
|
155
|
+
return { skipped: 'The new agent id is not a safe path segment; credentials not saved.' };
|
|
156
|
+
}
|
|
157
|
+
return { file: join(home, '.aismemory', 'agents', agentId, 'credentials.json') };
|
|
158
|
+
}
|
|
159
|
+
// A credentials file is a few hundred bytes; anything bigger is not one.
|
|
160
|
+
const MAX_CREDENTIALS_BYTES = 64 * 1024;
|
|
161
|
+
/** True when `file` holds credentials whose expiresAt has passed. */
|
|
162
|
+
function holdsExpiredCredentials(file, nowMs) {
|
|
163
|
+
try {
|
|
164
|
+
// Never read a FIFO, device or symlink target: a blocking read would hide the bond link.
|
|
165
|
+
const stat = lstatSync(file);
|
|
166
|
+
if (!stat.isFile() || stat.size > MAX_CREDENTIALS_BYTES)
|
|
167
|
+
return false;
|
|
168
|
+
const parsed = JSON.parse(readFileSync(file, 'utf8'));
|
|
169
|
+
if (typeof parsed !== 'object' || parsed === null)
|
|
170
|
+
return false;
|
|
171
|
+
const expiresAt = pickString(parsed, 'expiresAt');
|
|
172
|
+
const expiresMs = expiresAt === undefined ? Number.NaN : Date.parse(expiresAt);
|
|
173
|
+
return Number.isFinite(expiresMs) && expiresMs <= nowMs;
|
|
174
|
+
}
|
|
175
|
+
catch {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Create the credentials file with the provisional bearer. The exclusive
|
|
181
|
+
* flag ('wx') means an existing file is left alone and no pre-existing
|
|
182
|
+
* file's permissions are inherited. Returns false when the file exists.
|
|
183
|
+
*/
|
|
184
|
+
export function saveProvisionalCredentials(bearer, file) {
|
|
185
|
+
mkdirSync(dirname(file), { recursive: true, mode: 0o700 });
|
|
186
|
+
const creds = bearer;
|
|
187
|
+
try {
|
|
188
|
+
writeFileSync(file, JSON.stringify(creds, null, 2), { mode: 0o600, flag: 'wx' });
|
|
189
|
+
}
|
|
190
|
+
catch (err) {
|
|
191
|
+
if (err.code === 'EEXIST')
|
|
192
|
+
return false;
|
|
193
|
+
throw err;
|
|
194
|
+
}
|
|
195
|
+
// The create mode is umask-dependent; chmod is the reliable path on POSIX.
|
|
196
|
+
if (process.platform !== 'win32') {
|
|
197
|
+
chmodSync(file, 0o600);
|
|
198
|
+
}
|
|
199
|
+
return true;
|
|
200
|
+
}
|
|
98
201
|
/** POST /v1/register with the invite. The bearer token in the reply is not printed. */
|
|
99
202
|
export async function acceptInvite(aisUrl, token, name, fetchImpl) {
|
|
100
203
|
const res = await fetchImpl(`${aisUrl}/v1/register`, {
|
|
@@ -122,6 +225,7 @@ export async function acceptInvite(aisUrl, token, name, fetchImpl) {
|
|
|
122
225
|
inviterDisplayName: pickString(data, 'inviterDisplayName'),
|
|
123
226
|
agentMessage: pickString(data, 'agentMessage'),
|
|
124
227
|
humanMessage: pickString(data, 'humanMessage'),
|
|
228
|
+
bearer: provisionalBearer(data),
|
|
125
229
|
};
|
|
126
230
|
}
|
|
127
231
|
async function readAllStdin() {
|
|
@@ -144,7 +248,37 @@ export async function main(argv, deps = {
|
|
|
144
248
|
}
|
|
145
249
|
const token = await readInviteToken(args, deps);
|
|
146
250
|
const aisUrl = (deps.env['AIS_URL']?.trim() || DEFAULT_AIS_URL).replace(/\/+$/, '');
|
|
147
|
-
const result = await acceptInvite(aisUrl, token, args.name, deps.fetchImpl);
|
|
251
|
+
const { bearer, ...result } = await acceptInvite(aisUrl, token, args.name, deps.fetchImpl);
|
|
252
|
+
if (bearer === 'mismatch') {
|
|
253
|
+
result.credentialsSaved = false;
|
|
254
|
+
result.credentialsError = 'The reply agentId does not match the bearer token; credentials not saved.';
|
|
255
|
+
}
|
|
256
|
+
else if (bearer !== undefined) {
|
|
257
|
+
// The agent is registered by now: a local save failure must not hide
|
|
258
|
+
// the bond link, so it is reported in the result instead of thrown.
|
|
259
|
+
try {
|
|
260
|
+
const target = deps.credentialsPath !== undefined
|
|
261
|
+
? { file: deps.credentialsPath }
|
|
262
|
+
: provisionalCredentialsPath(deps.env, bearer.agentId, deps.home);
|
|
263
|
+
if ('skipped' in target) {
|
|
264
|
+
result.credentialsSaved = false;
|
|
265
|
+
result.credentialsError = target.skipped;
|
|
266
|
+
}
|
|
267
|
+
else {
|
|
268
|
+
const { file } = target;
|
|
269
|
+
result.credentialsFile = file;
|
|
270
|
+
result.credentialsSaved = saveProvisionalCredentials(bearer, file);
|
|
271
|
+
if (!result.credentialsSaved && holdsExpiredCredentials(file, Date.now())) {
|
|
272
|
+
const hint = `An expired credentials file at ${file} was left in place, so the new credentials were not saved; the bond link still works, and the agent can sign in after bonding.`;
|
|
273
|
+
result.humanMessage = result.humanMessage === undefined ? hint : `${result.humanMessage} ${hint}`;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
catch (err) {
|
|
278
|
+
result.credentialsSaved = false;
|
|
279
|
+
result.credentialsError = err instanceof Error ? err.message : 'Could not save credentials';
|
|
280
|
+
}
|
|
281
|
+
}
|
|
148
282
|
deps.stdout(`${JSON.stringify(result, null, 2)}\n`);
|
|
149
283
|
}
|
|
150
284
|
/** Entry from `aismemory invite ...`: failures print one line and exit 1. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invite-accept.js","sourceRoot":"","sources":["../../src/cli/invite-accept.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"invite-accept.js","sourceRoot":"","sources":["../../src/cli/invite-accept.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export type OwnerCommand = 'rotate-token' | 'api-keys' | 'agents';
|
|
2
|
+
export type OwnerAction = {
|
|
3
|
+
kind: 'help';
|
|
4
|
+
} | {
|
|
5
|
+
kind: 'rotate';
|
|
6
|
+
agentId: string;
|
|
7
|
+
} | {
|
|
8
|
+
kind: 'list';
|
|
9
|
+
agentId: string;
|
|
10
|
+
} | {
|
|
11
|
+
kind: 'create';
|
|
12
|
+
agentId: string;
|
|
13
|
+
name?: string;
|
|
14
|
+
expiresInDays?: number;
|
|
15
|
+
readOnly: boolean;
|
|
16
|
+
} | {
|
|
17
|
+
kind: 'revoke';
|
|
18
|
+
agentId: string;
|
|
19
|
+
keyId: string;
|
|
20
|
+
} | {
|
|
21
|
+
kind: 'agents-create';
|
|
22
|
+
names: string[];
|
|
23
|
+
description?: string;
|
|
24
|
+
};
|
|
25
|
+
/** The owner session this device's enrolled key signs in as. */
|
|
26
|
+
export interface OwnerSession {
|
|
27
|
+
token: string;
|
|
28
|
+
userId: string;
|
|
29
|
+
}
|
|
30
|
+
export interface OwnerCredentialsDeps {
|
|
31
|
+
env: NodeJS.ProcessEnv;
|
|
32
|
+
fetchImpl: typeof fetch;
|
|
33
|
+
/** The owner session, or null when this device has no enrolled owner key. */
|
|
34
|
+
getOwnerSession: (aisUrl: string) => Promise<OwnerSession | null>;
|
|
35
|
+
stdout: (text: string) => void;
|
|
36
|
+
stderr: (text: string) => void;
|
|
37
|
+
}
|
|
38
|
+
export declare class OwnerCredentialsError extends Error {
|
|
39
|
+
constructor(message: string);
|
|
40
|
+
}
|
|
41
|
+
export declare function parseOwnerArgs(command: OwnerCommand, argv: string[], env: NodeJS.ProcessEnv): OwnerAction;
|
|
42
|
+
export declare function runOwnerCommand(command: OwnerCommand, argv: string[], deps: OwnerCredentialsDeps): Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* The user id comes from the token the service signed, not from the local key
|
|
45
|
+
* file: a copied or edited key file must not set another person as owner.
|
|
46
|
+
*/
|
|
47
|
+
export declare function ownerSessionFromCreds(creds: {
|
|
48
|
+
token: string;
|
|
49
|
+
userId: string;
|
|
50
|
+
}): OwnerSession;
|
|
51
|
+
/** Entry from `aismemory rotate-token|api-keys|agents ...`: one failure line, exit 1. */
|
|
52
|
+
export declare function runFromCli(command: OwnerCommand, argv: string[]): Promise<void>;
|