primitive-admin 1.2.0-alpha.0 → 1.2.0-alpha.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 (137) hide show
  1. package/README.md +6 -4
  2. package/dist/bin/primitive.js +22 -24
  3. package/dist/bin/primitive.js.map +1 -1
  4. package/dist/src/commands/agent-sessions.d.ts +20 -0
  5. package/dist/src/commands/agent-sessions.js +275 -0
  6. package/dist/src/commands/agent-sessions.js.map +1 -0
  7. package/dist/src/commands/apps-children.d.ts +54 -0
  8. package/dist/src/commands/apps-children.js +578 -0
  9. package/dist/src/commands/apps-children.js.map +1 -0
  10. package/dist/src/commands/apps.js +88 -9
  11. package/dist/src/commands/apps.js.map +1 -1
  12. package/dist/src/commands/auth-sessions.d.ts +3 -3
  13. package/dist/src/commands/auth-sessions.js +117 -23
  14. package/dist/src/commands/auth-sessions.js.map +1 -1
  15. package/dist/src/commands/auth.js +248 -15
  16. package/dist/src/commands/auth.js.map +1 -1
  17. package/dist/src/commands/connections.js +1 -5
  18. package/dist/src/commands/connections.js.map +1 -1
  19. package/dist/src/commands/databases.js +7 -109
  20. package/dist/src/commands/databases.js.map +1 -1
  21. package/dist/src/commands/documents.d.ts +29 -0
  22. package/dist/src/commands/documents.js +676 -191
  23. package/dist/src/commands/documents.js.map +1 -1
  24. package/dist/src/commands/env.d.ts +9 -1
  25. package/dist/src/commands/env.js +158 -45
  26. package/dist/src/commands/env.js.map +1 -1
  27. package/dist/src/commands/functions.js +7 -1
  28. package/dist/src/commands/functions.js.map +1 -1
  29. package/dist/src/commands/init.js +2 -1
  30. package/dist/src/commands/init.js.map +1 -1
  31. package/dist/src/commands/integrations.js +14 -2
  32. package/dist/src/commands/integrations.js.map +1 -1
  33. package/dist/src/commands/prompts.js +4 -0
  34. package/dist/src/commands/prompts.js.map +1 -1
  35. package/dist/src/commands/scripts.js +1 -1
  36. package/dist/src/commands/scripts.js.map +1 -1
  37. package/dist/src/commands/sessions.js +3 -8
  38. package/dist/src/commands/sessions.js.map +1 -1
  39. package/dist/src/commands/sync-app-settings.d.ts +25 -7
  40. package/dist/src/commands/sync-app-settings.js +81 -20
  41. package/dist/src/commands/sync-app-settings.js.map +1 -1
  42. package/dist/src/commands/sync.d.ts +183 -12
  43. package/dist/src/commands/sync.js +974 -452
  44. package/dist/src/commands/sync.js.map +1 -1
  45. package/dist/src/commands/tokens.js +1 -6
  46. package/dist/src/commands/tokens.js.map +1 -1
  47. package/dist/src/commands/users.js +77 -2
  48. package/dist/src/commands/users.js.map +1 -1
  49. package/dist/src/lib/api-client.d.ts +161 -35
  50. package/dist/src/lib/api-client.js +210 -86
  51. package/dist/src/lib/api-client.js.map +1 -1
  52. package/dist/src/lib/app-settings-descriptor.d.ts +9 -1
  53. package/dist/src/lib/app-settings-descriptor.js +22 -10
  54. package/dist/src/lib/app-settings-descriptor.js.map +1 -1
  55. package/dist/src/lib/auth-flow.d.ts +41 -1
  56. package/dist/src/lib/auth-flow.js +45 -16
  57. package/dist/src/lib/auth-flow.js.map +1 -1
  58. package/dist/src/lib/child-apps-local.d.ts +184 -0
  59. package/dist/src/lib/child-apps-local.js +282 -0
  60. package/dist/src/lib/child-apps-local.js.map +1 -0
  61. package/dist/src/lib/ci-session-request.d.ts +22 -0
  62. package/dist/src/lib/ci-session-request.js +51 -0
  63. package/dist/src/lib/ci-session-request.js.map +1 -0
  64. package/dist/src/lib/codegen-shared/generatedFiles.d.ts +4 -1
  65. package/dist/src/lib/codegen-shared/generatedFiles.js +19 -13
  66. package/dist/src/lib/codegen-shared/generatedFiles.js.map +1 -1
  67. package/dist/src/lib/config-object-descriptor.js +5 -5
  68. package/dist/src/lib/config-object-descriptor.js.map +1 -1
  69. package/dist/src/lib/config-payload.js +2 -3
  70. package/dist/src/lib/config-payload.js.map +1 -1
  71. package/dist/src/lib/config-surface.d.ts +2 -1
  72. package/dist/src/lib/config-surface.js +7 -28
  73. package/dist/src/lib/config-surface.js.map +1 -1
  74. package/dist/src/lib/credentials-store.d.ts +17 -2
  75. package/dist/src/lib/credentials-store.js +72 -6
  76. package/dist/src/lib/credentials-store.js.map +1 -1
  77. package/dist/src/lib/document-export-lookups.d.ts +31 -0
  78. package/dist/src/lib/document-export-lookups.js +53 -0
  79. package/dist/src/lib/document-export-lookups.js.map +1 -0
  80. package/dist/src/lib/document-export-permissions.d.ts +7 -5
  81. package/dist/src/lib/document-export-permissions.js +7 -5
  82. package/dist/src/lib/document-export-permissions.js.map +1 -1
  83. package/dist/src/lib/env-resolver-core.d.ts +69 -1
  84. package/dist/src/lib/env-resolver-core.js +137 -20
  85. package/dist/src/lib/env-resolver-core.js.map +1 -1
  86. package/dist/src/lib/env-resolver.d.ts +14 -2
  87. package/dist/src/lib/env-resolver.js +32 -10
  88. package/dist/src/lib/env-resolver.js.map +1 -1
  89. package/dist/src/lib/function-run.d.ts +4 -1
  90. package/dist/src/lib/function-run.js +24 -4
  91. package/dist/src/lib/function-run.js.map +1 -1
  92. package/dist/src/lib/function-sync.d.ts +5 -2
  93. package/dist/src/lib/function-sync.js +7 -4
  94. package/dist/src/lib/function-sync.js.map +1 -1
  95. package/dist/src/lib/generated-config-surfaces.d.ts +49 -50
  96. package/dist/src/lib/generated-config-surfaces.js +283 -166
  97. package/dist/src/lib/generated-config-surfaces.js.map +1 -1
  98. package/dist/src/lib/generated-sdk-types.d.ts +1 -1
  99. package/dist/src/lib/generated-sdk-types.js +1 -1
  100. package/dist/src/lib/generated-sdk-types.js.map +1 -1
  101. package/dist/src/lib/init-adopt.js +12 -3
  102. package/dist/src/lib/init-adopt.js.map +1 -1
  103. package/dist/src/lib/local-state.d.ts +17 -1
  104. package/dist/src/lib/local-state.js +94 -15
  105. package/dist/src/lib/local-state.js.map +1 -1
  106. package/dist/src/lib/local-test-cases.d.ts +5 -2
  107. package/dist/src/lib/local-test-cases.js +7 -4
  108. package/dist/src/lib/local-test-cases.js.map +1 -1
  109. package/dist/src/lib/log-inspection.d.ts +25 -0
  110. package/dist/src/lib/log-inspection.js +24 -0
  111. package/dist/src/lib/log-inspection.js.map +1 -1
  112. package/dist/src/lib/logout-admin-session.d.ts +2 -1
  113. package/dist/src/lib/logout-admin-session.js +7 -1
  114. package/dist/src/lib/logout-admin-session.js.map +1 -1
  115. package/dist/src/lib/pull-write.d.ts +31 -0
  116. package/dist/src/lib/pull-write.js +49 -0
  117. package/dist/src/lib/pull-write.js.map +1 -0
  118. package/dist/src/lib/root-import-decision.d.ts +59 -0
  119. package/dist/src/lib/root-import-decision.js +95 -0
  120. package/dist/src/lib/root-import-decision.js.map +1 -0
  121. package/dist/src/lib/scope-request.d.ts +69 -0
  122. package/dist/src/lib/scope-request.js +188 -0
  123. package/dist/src/lib/scope-request.js.map +1 -0
  124. package/dist/src/lib/session-id.d.ts +9 -0
  125. package/dist/src/lib/session-id.js +28 -0
  126. package/dist/src/lib/session-id.js.map +1 -0
  127. package/dist/src/lib/snapshots.d.ts +17 -1
  128. package/dist/src/lib/snapshots.js +50 -2
  129. package/dist/src/lib/snapshots.js.map +1 -1
  130. package/dist/src/lib/sync-paths.d.ts +35 -0
  131. package/dist/src/lib/sync-paths.js +57 -5
  132. package/dist/src/lib/sync-paths.js.map +1 -1
  133. package/dist/src/lib/transient-retry.d.ts +34 -0
  134. package/dist/src/lib/transient-retry.js +57 -0
  135. package/dist/src/lib/transient-retry.js.map +1 -0
  136. package/dist/src/types/index.d.ts +21 -4
  137. package/package.json +4 -3
package/README.md CHANGED
@@ -169,10 +169,11 @@ Manage users within an app.
169
169
 
170
170
  ```bash
171
171
  primitive users list [app-id] # List users
172
- primitive users create <email> [--role admin|member] # Create/add user by email
172
+ primitive users create <email> [--role admin|member] [--name <name>] [--avatar-url <url>] # Create/add user by email
173
173
  primitive users invite [app-id] <email> [--role admin] # Invite user
174
174
  primitive users remove [app-id] <user-id> # Remove user
175
175
  primitive users set-role [app-id] <user-id> <role> # Change role
176
+ primitive users set-profile [app-id] <user-id> [--name <name>] [--avatar-url <url> | --clear-avatar] # Set display name/avatar
176
177
  primitive users transfer-owner [app-id] <new-owner-id> # Transfer ownership
177
178
  primitive users mint-jwt <user-id> [--role <role>] # Mint test JWT (dev/test only)
178
179
  primitive users invitations [app-id] # List pending invitations
@@ -404,9 +405,10 @@ primitive databases permissions remove-manager <database-id> <user-id> [--app <a
404
405
 
405
406
  Permission values: `owner` (set at creation), `manager`
406
407
 
407
- **Metadata:**
408
+ **Metadata:** per-database values live in resource metadata categories.
408
409
  ```bash
409
- primitive databases metadata update <database-id> --data '{"key":"value"}' # Merge-update metadata
410
+ primitive metadata set database <database-id> <category> --data '{"key":"value"}' # Write one category
411
+ primitive metadata get database <database-id> <category> # Read it back
410
412
  ```
411
413
 
412
414
  **Operations:**
@@ -465,7 +467,7 @@ primitive documents export-all [app-id] --user-id <id> --owned-only # Expor
465
467
  primitive documents import [app-id] <path> --overwrite --aliases overwrite|skip --dry-run # Import from export
466
468
  ```
467
469
 
468
- Export creates a directory per document with `metadata.json`, `document.yjs` (Yjs state), `permissions.json` (for reference), and `blobs/` (attachments). Permissions are exported for reference but not restored during import — the importing admin is the new owner and manages sharing in the target app. Document IDs are preserved across import. User-scoped aliases can be restored with `--aliases overwrite` (update existing) or `--aliases skip` (keep existing, default).
470
+ Export creates a directory per document with `metadata.json`, `document.yjs` (Yjs state), `permissions.json` (for reference), and `blobs/` (attachments). Permissions are exported for reference but not restored during import — the importing admin is the new owner and manages sharing in the target app. Document IDs are preserved across import. User-scoped aliases can be restored with `--aliases overwrite` (update existing) or `--aliases skip` (keep existing, default). A document whose permissions, aliases or blob list can't be read (anything but a 404, after retrying transient failures) is not exported: the command names it and exits non-zero, and `export-all` still exports the rest and leaves it out of `manifest.json`.
469
471
 
470
472
  ### Collections
471
473
 
@@ -12,6 +12,7 @@ import { registerIntegrationsCommands } from "../src/commands/integrations.js";
12
12
  import { registerWebhooksCommands } from "../src/commands/webhooks.js";
13
13
  import { registerConnectionsCommands } from "../src/commands/connections.js";
14
14
  import { registerSessionsCommands } from "../src/commands/sessions.js";
15
+ import { registerAgentSessionsCommands } from "../src/commands/agent-sessions.js";
15
16
  import { registerCronTriggersCommands } from "../src/commands/cron-triggers.js";
16
17
  import { registerLocksCommands } from "../src/commands/locks.js";
17
18
  import { registerMetadataCommands } from "../src/commands/metadata.js";
@@ -50,7 +51,7 @@ import { registerSecretsCommands } from "../src/commands/secrets.js";
50
51
  import { registerVarsCommands } from "../src/commands/vars.js";
51
52
  import { registerBlobBucketsCommands } from "../src/commands/blob-buckets.js";
52
53
  import { registerEnvCommands } from "../src/commands/env.js";
53
- import { setCurrentEnvName, getCurrentEnvNameSafe, getProjectConfig, PrimitiveEnvError, } from "../src/lib/env-resolver.js";
54
+ import { setCurrentEnvName, getCurrentEnvNameSafe, getCurrentEnvironment, getProjectConfig, PrimitiveEnvError, } from "../src/lib/env-resolver.js";
54
55
  import { ProjectConfigError, PROJECT_CONFIG_DISPLAY_NAME, findProjectConfigPath } from "../src/lib/project-config.js";
55
56
  // Install global crash handlers first thing. Without these, an error that
56
57
  // escapes the top-level `.catch` below — e.g. ERR_USE_AFTER_CLOSE thrown from
@@ -183,6 +184,11 @@ catch (err) {
183
184
  // Skipped when the layout is refused: the file that would name the
184
185
  // environments is the one the CLI will not read, and the refusal below is the
185
186
  // answer to every command that cares.
187
+ //
188
+ // The check is the resolver's own, so `--env` reaches every environment the
189
+ // resolver knows — the committed ones and this machine's machine-local ones
190
+ // (#4117) — and an unknown name is refused with the one message that lists
191
+ // them all.
186
192
  if (preParsedEnv && !staleLayoutRefusal) {
187
193
  try {
188
194
  const project = getProjectConfig();
@@ -190,14 +196,10 @@ if (preParsedEnv && !staleLayoutRefusal) {
190
196
  error(`--env was given but no ${PROJECT_CONFIG_DISPLAY_NAME} was found in this directory or any parent.`);
191
197
  process.exit(1);
192
198
  }
193
- if (!project.environments[preParsedEnv]) {
194
- const available = Object.keys(project.environments).join(", ") || "(none)";
195
- error(`Environment "${preParsedEnv}" is not defined in ${PROJECT_CONFIG_DISPLAY_NAME}. Available: ${available}`);
196
- process.exit(1);
197
- }
199
+ getCurrentEnvironment();
198
200
  }
199
201
  catch (err) {
200
- if (err instanceof ProjectConfigError) {
202
+ if (err instanceof ProjectConfigError || err instanceof PrimitiveEnvError) {
201
203
  error(err.message);
202
204
  process.exit(1);
203
205
  }
@@ -213,16 +215,22 @@ if (!skipHeader) {
213
215
  // parsed (#3273's shape). In project mode the URL comes from the config;
214
216
  // outside a project there is nothing to show.
215
217
  //
216
- // The app is the environment's, and nothing else's (#3152) — read straight
217
- // from the config, so the header is right before login as well as after.
218
+ // The app is the environment's, and nothing else's (#3152) — read from the
219
+ // resolved environment, so the header is right before login as well as
220
+ // after, and a machine-local environment shows its own app and server
221
+ // (#4117). Every resolver error is swallowed: the command reports it.
218
222
  const envNameForHeader = getCurrentEnvNameSafe();
219
223
  let headerAppId;
220
224
  let headerAppName;
225
+ // The active environment's apiUrl, so the header stays correct even before
226
+ // you have logged in.
227
+ let server;
221
228
  if (envNameForHeader) {
222
229
  try {
223
- const envCfg = getProjectConfig()?.environments[envNameForHeader];
230
+ const envCfg = getCurrentEnvironment()?.config;
224
231
  headerAppId = envCfg?.appId;
225
232
  headerAppName = envCfg?.appName;
233
+ server = envCfg?.apiUrl;
226
234
  }
227
235
  catch {
228
236
  // ignore
@@ -231,19 +239,6 @@ if (!skipHeader) {
231
239
  const appInfo = headerAppName
232
240
  ? `${headerAppName} (${headerAppId})`
233
241
  : headerAppId || "None set";
234
- // The active environment's apiUrl, so the header stays correct even before
235
- // you have logged in.
236
- let server;
237
- if (envNameForHeader) {
238
- try {
239
- const env = getProjectConfig()?.environments[envNameForHeader];
240
- if (env)
241
- server = env.apiUrl;
242
- }
243
- catch {
244
- // fall through
245
- }
246
- }
247
242
  server = server || "Not configured";
248
243
  let projectConfigPath = null;
249
244
  try {
@@ -315,7 +310,9 @@ Project configuration (primitive/config.json):
315
310
  Primitive environment selection (project mode):
316
311
  1. --env <name> flag
317
312
  2. PRIMITIVE_ENV env var
318
- 3. This machine's selection in .primitive/local.json ('primitive env use')
313
+ 3. This machine's selection in .primitive/local.json ('primitive env use'),
314
+ which may name a machine-local environment registered in the same file:
315
+ a child app that uses a committed environment's tree
319
316
  4. "defaultEnvironment" in primitive/config.json (the committed team default)
320
317
  5. The only environment, if there's exactly one
321
318
 
@@ -339,6 +336,7 @@ registerIntegrationsCommands(program);
339
336
  registerWebhooksCommands(program);
340
337
  registerConnectionsCommands(program);
341
338
  registerSessionsCommands(program);
339
+ registerAgentSessionsCommands(program);
342
340
  registerCronTriggersCommands(program);
343
341
  registerLocksCommands(program);
344
342
  registerMetadataCommands(program);
@@ -1 +1 @@
1
- {"version":3,"file":"primitive.js","sourceRoot":"","sources":["../../bin/primitive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primitive.js","sourceRoot":"","sources":["../../bin/primitive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { Command } from "commander";
2
+ import { ApiClient } from "../lib/api-client.js";
3
+ /** What the delete action needs: the API call, the prompt and where to print. */
4
+ export interface DeleteAgentSessionDeps {
5
+ client: Pick<ApiClient, "deleteAgentSession">;
6
+ confirm: (message: string) => Promise<boolean>;
7
+ print: (line: string) => void;
8
+ }
9
+ /**
10
+ * Delete one agent session: confirm unless `yes`, then one `DELETE`. Answers
11
+ * whether it was deleted or the prompt was declined; a refusal throws (the
12
+ * prompt's non-TTY refusal included, before any request).
13
+ */
14
+ export declare function deleteAgentSessionAction(options: {
15
+ appId: string;
16
+ sessionId: string;
17
+ yes: boolean;
18
+ json: boolean;
19
+ }, deps: DeleteAgentSessionDeps): Promise<"deleted" | "cancelled">;
20
+ export declare function registerAgentSessionsCommands(program: Command): void;
@@ -0,0 +1,275 @@
1
+ import { ApiClient } from "../lib/api-client.js";
2
+ import { resolveAppId } from "../lib/config.js";
3
+ import { error, formatDate, formatTable, info, json, result, success, } from "../lib/output.js";
4
+ import { confirmPrompt } from "../lib/confirm-prompt.js";
5
+ import { pageCursorOption, pageLimitOption, parsePageLimit, printEmptyPage, printPageHint, } from "../lib/list-options.js";
6
+ import { normalizeCliListEnvelope } from "../lib/paginate.js";
7
+ import { describeRecordsFailure } from "./documents.js";
8
+ /**
9
+ * `primitive agent-sessions` — inspect and delete agent sessions (#3809,
10
+ * design-docs/agents.md §D7). A data noun: `list` one user's sessions, `get`
11
+ * one session's binding, status, active turn and — for app owners and admins —
12
+ * the session object's state, and `delete` a session with its document. The
13
+ * conversation's rows are never copied here; they are read by opening the
14
+ * session's document (`documents records query`). `primitive sessions` is
15
+ * sign-in sessions.
16
+ */
17
+ /** The `object` keys `get` prints as sections; any other key is printed as JSON. */
18
+ const OBJECT_SECTIONS = new Set([
19
+ "pending",
20
+ "deletedAt",
21
+ "initializing",
22
+ "turn",
23
+ "lastTurn",
24
+ "queue",
25
+ "leaseUntil",
26
+ "alarmAt",
27
+ "calls",
28
+ ]);
29
+ const ROWS_NOTE = `
30
+ The conversation itself (messages, parts, steps) lives in the session's
31
+ document and is never copied by these commands. Read it with:
32
+ $ primitive documents records query <document-id> PrimitiveMessage
33
+ $ primitive documents records query <document-id> PrimitivePart
34
+ $ primitive documents records query <document-id> PrimitiveStep
35
+ $ primitive documents records query <document-id> PrimitiveSession
36
+ `;
37
+ const list = (values) => Array.isArray(values) && values.length > 0 ? values.map(String).join(", ") : "-";
38
+ /**
39
+ * Delete one agent session: confirm unless `yes`, then one `DELETE`. Answers
40
+ * whether it was deleted or the prompt was declined; a refusal throws (the
41
+ * prompt's non-TTY refusal included, before any request).
42
+ */
43
+ export async function deleteAgentSessionAction(options, deps) {
44
+ if (!options.yes) {
45
+ const ok = await deps.confirm(`Delete agent session ${options.sessionId} and its document? This cannot be undone.`);
46
+ if (!ok)
47
+ return "cancelled";
48
+ }
49
+ const answer = await deps.client.deleteAgentSession(options.appId, options.sessionId);
50
+ deps.print(options.json ? JSON.stringify(answer, null, 2) : `Agent session ${options.sessionId} deleted.`);
51
+ return "deleted";
52
+ }
53
+ /** The active turn, as `get` prints it. */
54
+ function printTurn(turn) {
55
+ if (!turn) {
56
+ result("Turn", "none");
57
+ return;
58
+ }
59
+ result("Turn", turn.turnId);
60
+ result(" Phase", turn.phase);
61
+ result(" Rounds", turn.rounds);
62
+ result(" Initiator", turn.initiatorUserId);
63
+ result(" Started", turn.startedAt ? formatDate(turn.startedAt) : null);
64
+ result(" Answered by", turn.answeredBy);
65
+ if (turn.pause) {
66
+ result(" Waiting on", `${list(turn.pause.callIds)} (until ${formatDate(turn.pause.expiresAt)})`);
67
+ }
68
+ if (turn.pending)
69
+ result(" Pending", turn.pending.kind);
70
+ }
71
+ /** The session object's state, for app owners and admins. */
72
+ function printObject(object) {
73
+ console.log("");
74
+ console.log("Session object");
75
+ result("Deleted at", object.deletedAt ? formatDate(object.deletedAt) : null);
76
+ result("Initializing", object.initializing ? formatDate(object.initializing) : null);
77
+ result("Pending changes", Array.isArray(object.pending) ? object.pending.length : 0);
78
+ const queue = Array.isArray(object.queue) ? object.queue : [];
79
+ result("Queue", queue.length > 0
80
+ ? queue
81
+ .map((entry) => {
82
+ const count = Array.isArray(entry?.messageIds) ? entry.messageIds.length : 0;
83
+ return `${entry?.userId} (${count} message${count === 1 ? "" : "s"})`;
84
+ })
85
+ .join(", ")
86
+ : "empty");
87
+ result("Lease until", object.leaseUntil ? formatDate(object.leaseUntil) : null);
88
+ result("Alarm at", object.alarmAt ? formatDate(object.alarmAt) : null);
89
+ const last = object.lastTurn;
90
+ if (last) {
91
+ result("Last turn", last.turnId);
92
+ result(" Outcome", `${last.outcome}${last.code ? ` (${last.code})` : ""}`);
93
+ result(" Started", last.startedAt ? formatDate(last.startedAt) : null);
94
+ result(" Ended", last.endedAt ? formatDate(last.endedAt) : null);
95
+ result(" Rounds", last.rounds);
96
+ }
97
+ else {
98
+ result("Last turn", "none");
99
+ }
100
+ const calls = Array.isArray(object.calls) ? object.calls : [];
101
+ if (calls.length > 0) {
102
+ console.log("");
103
+ console.log(formatTable(calls.map((call) => ({ ...call, endedBy: call.endedBy ?? (call.discarded ? "discarded" : "-") })), [
104
+ { header: "CALL", key: "callId" },
105
+ { header: "TOOL", key: "toolName" },
106
+ { header: "STATE", key: "state" },
107
+ { header: "ATTEMPTS", key: "attempts" },
108
+ { header: "ENDED BY", key: "endedBy" },
109
+ ]));
110
+ }
111
+ // The configuration pinned at the active turn's start, else the last turn's.
112
+ const pinned = object.turn ?? last;
113
+ if (typeof pinned?.systemPrompt === "string") {
114
+ console.log("");
115
+ console.log("Pinned system prompt:");
116
+ console.log(pinned.systemPrompt);
117
+ }
118
+ if (Array.isArray(pinned?.tools) && pinned.tools.length > 0) {
119
+ console.log("");
120
+ console.log("Pinned tools:");
121
+ for (const tool of pinned.tools) {
122
+ const how = [tool.runs, tool.runs === "server" ? tool.invoke ?? "request" : undefined].filter(Boolean).join(", ");
123
+ console.log(` ${tool.name}${how ? ` (${how})` : ""}`);
124
+ }
125
+ }
126
+ // Keys this CLI does not know yet, as they came.
127
+ for (const [key, value] of Object.entries(object)) {
128
+ if (OBJECT_SECTIONS.has(key))
129
+ continue;
130
+ console.log("");
131
+ console.log(`${key}:`);
132
+ console.log(JSON.stringify(value, null, 2));
133
+ }
134
+ }
135
+ export function registerAgentSessionsCommands(program) {
136
+ const agentSessions = program
137
+ .command("agent-sessions")
138
+ .description("Inspect and delete agent sessions")
139
+ .addHelpText("after", `
140
+ An agent session is one conversation with an agent, created by a server
141
+ function (ctx.agents.createSession). App owners and admins list any user's
142
+ sessions, get any session — including the session object's state: each
143
+ turn's pinned system prompt and tools, the queue and the call ledger — and
144
+ delete any session. This is not \`primitive sessions\`, which lists sign-in
145
+ sessions.
146
+ ${ROWS_NOTE}
147
+ Examples:
148
+ $ primitive agent-sessions list --user-id 01HXY...
149
+ $ primitive agent-sessions list --user-id 01HXY... --agent advisor --json
150
+ $ primitive agent-sessions get 01HXZ...
151
+ $ primitive agent-sessions delete 01HXZ... --yes
152
+ `);
153
+ agentSessions
154
+ .command("list")
155
+ .description("List one user's agent sessions, newest first")
156
+ .option("--app <app-id>", "App ID (uses current app if not specified)")
157
+ // Required, but checked in the action (the `sessions list` precedent).
158
+ .option("--user-id <user-id>", "List sessions this user owns or belongs to")
159
+ .option("--agent <key>", "Only this agent's sessions")
160
+ .option("--scope <scope>", "Only sessions created with exactly this scope")
161
+ .addOption(pageLimitOption())
162
+ .addOption(pageCursorOption())
163
+ .option("--json", "Output as JSON")
164
+ .action(async (options) => {
165
+ const userId = options.userId;
166
+ if (!userId) {
167
+ error("required option '--user-id <user-id>' not specified");
168
+ process.exit(1);
169
+ }
170
+ const limit = parsePageLimit(options.limit);
171
+ const resolvedAppId = resolveAppId(undefined, options);
172
+ const client = new ApiClient();
173
+ try {
174
+ const page = normalizeCliListEnvelope(await client.listAgentSessions(resolvedAppId, {
175
+ userId,
176
+ agent: options.agent,
177
+ scope: options.scope,
178
+ limit,
179
+ cursor: options.cursor,
180
+ }));
181
+ if (options.json) {
182
+ json(page);
183
+ return;
184
+ }
185
+ if (page.items.length === 0) {
186
+ printEmptyPage(page, "agent sessions");
187
+ return;
188
+ }
189
+ console.log(formatTable(page.items, [
190
+ { header: "SESSION", key: "sessionId" },
191
+ { header: "AGENT", key: "agentKey" },
192
+ { header: "SCOPE", key: "scope" },
193
+ { header: "ROLE", key: "role" },
194
+ { header: "TITLE", key: "title", flex: true },
195
+ { header: "LAST ACTIVITY", key: "lastActivityAt", format: formatDate },
196
+ { header: "DOCUMENT", key: "documentId" },
197
+ ]));
198
+ printPageHint(page);
199
+ }
200
+ catch (err) {
201
+ error(describeRecordsFailure(err));
202
+ process.exit(1);
203
+ }
204
+ });
205
+ agentSessions
206
+ .command("get")
207
+ .description("Show an agent session: its binding, status, members, active turn and object state")
208
+ .argument("<session-id>", "Session ID")
209
+ .option("--app <app-id>", "App ID (uses current app if not specified)")
210
+ .option("--json", "Output the server's answer as JSON")
211
+ .addHelpText("after", `
212
+ App owners and admins also see the session object's state: the active and
213
+ last turn with the system prompt and tools pinned at the turn's start, the
214
+ queue, the lease, the next alarm and the server tool calls (never their
215
+ input). Keys this CLI does not know are printed as JSON.
216
+ ${ROWS_NOTE}`)
217
+ .action(async (sessionId, options) => {
218
+ const resolvedAppId = resolveAppId(undefined, options);
219
+ const client = new ApiClient();
220
+ try {
221
+ const session = await client.getAgentSession(resolvedAppId, sessionId);
222
+ if (options.json) {
223
+ json(session);
224
+ return;
225
+ }
226
+ result("Session ID", session.sessionId);
227
+ result("Agent", session.agentKey);
228
+ result("Document ID", session.documentId);
229
+ result("Owner", session.ownerUserId);
230
+ result("Created", formatDate(session.createdAt));
231
+ result("Status", session.status);
232
+ result("Title", session.title);
233
+ result("Scope", session.scope);
234
+ result("Last activity", session.lastActivityAt ? formatDate(session.lastActivityAt) : null);
235
+ result("Viewers", list(session.members?.viewers));
236
+ result("Participants", list(session.members?.participants));
237
+ result("Your role", session.role);
238
+ printTurn(session.turn);
239
+ if (session.object && typeof session.object === "object")
240
+ printObject(session.object);
241
+ }
242
+ catch (err) {
243
+ error(describeRecordsFailure(err));
244
+ process.exit(1);
245
+ }
246
+ });
247
+ agentSessions
248
+ .command("delete")
249
+ .description("Delete an agent session and its document")
250
+ .argument("<session-id>", "Session ID")
251
+ .option("--app <app-id>", "App ID (uses current app if not specified)")
252
+ .option("-y, --yes", "Skip confirmation prompt")
253
+ .option("--json", "Output as JSON")
254
+ .addHelpText("after", `
255
+ The session's owner, app owners and admins delete; the document and its rows
256
+ go with it. Deleting a session that is already deleted succeeds again.
257
+ `)
258
+ .action(async (sessionId, options) => {
259
+ const resolvedAppId = resolveAppId(undefined, options);
260
+ try {
261
+ const outcome = await deleteAgentSessionAction({ appId: resolvedAppId, sessionId, yes: options.yes === true, json: options.json === true }, {
262
+ client: new ApiClient(),
263
+ confirm: confirmPrompt,
264
+ print: (line) => (options.json ? console.log(line) : success(line)),
265
+ });
266
+ if (outcome === "cancelled")
267
+ info("Cancelled.");
268
+ }
269
+ catch (err) {
270
+ error(describeRecordsFailure(err));
271
+ process.exit(1);
272
+ }
273
+ });
274
+ }
275
+ //# sourceMappingURL=agent-sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-sessions.js","sourceRoot":"","sources":["../../../src/commands/agent-sessions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * `primitive apps children` — child apps of the current environment's parent
3
+ * (#4119, project `child-apps`).
4
+ *
5
+ * apps children create <slug> create a child, register it here, push the tree into it
6
+ * apps children list one page of the parent's children
7
+ * apps children get <slug> one child, and how it relates to this machine
8
+ * apps children delete <slug> hard-delete a child and its local state
9
+ *
10
+ * Two hidden verbs, `add-preview-origin` and `remove-preview-origin`, write a
11
+ * child's preview origins for `cf-deploy --preview-alias` (#4120).
12
+ *
13
+ * Every verb acts on the PARENT: the committed environment named by the
14
+ * current environment's `tree`. With a child selected that is the child's
15
+ * parent, so `create` makes a sibling. A child is registered on this machine
16
+ * as a machine-local environment (#4117) named by its slug; `env use <slug>`
17
+ * attaches one another admin created (`attachChildEnvironment`, below).
18
+ *
19
+ * Local state is related to server children by app id, never by name — see
20
+ * `lib/child-apps-local.ts`.
21
+ */
22
+ import { Command } from "commander";
23
+ import { type LocalStateRemoval } from "../lib/child-apps-local.js";
24
+ /**
25
+ * Makes sure `.primitive/local.json` is git-ignored before a command writes
26
+ * it, or exits naming the one-line remedy — the check `env use` makes, shared
27
+ * so a registration is held to the same rule as a selection. `rerun` is the
28
+ * command to run again once the remedy is applied.
29
+ */
30
+ export declare function ensureLocalStateIgnoredOrExit(configPath: string, rerun: string): void;
31
+ /**
32
+ * Prints what `removeLocalStateForApp` removed, naming the parent environment
33
+ * to select when the removed entry was this machine's selection. A cleanup
34
+ * that stopped part-way is an error (exit code 1) naming how to finish it.
35
+ */
36
+ export declare function reportLocalStateRemoval(removed: readonly LocalStateRemoval[]): void;
37
+ /**
38
+ * After an app is deleted on the server, removes this machine's state for it
39
+ * — every machine-local entry holding its app id — and reports it. Outside a
40
+ * project, or with local state that cannot be read, there is nothing to match
41
+ * against and nothing is removed.
42
+ */
43
+ export declare function removeLocalStateAfterDelete(configPath: string | null, appId: string): void;
44
+ /**
45
+ * Attaches the child `slug` of the current environment's parent as a
46
+ * machine-local environment and selects it: `env use <slug>` for a name that
47
+ * is neither a committed environment nor a local entry. Lists the parent's
48
+ * children, refuses an unknown slug and a child whose app is already
49
+ * registered here under another name, then registers it as `apps children
50
+ * create` does (baseline, login, entry). Exits on any refusal, writing nothing.
51
+ */
52
+ export declare function attachChildEnvironment(slug: string): Promise<void>;
53
+ /** Registers `apps children` and its verbs under the `apps` group. */
54
+ export declare function registerAppsChildrenCommands(apps: Command): void;