pilotswarm-sdk 0.5.42 → 0.5.44

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 (149) hide show
  1. package/README.md +2 -1
  2. package/api/index.d.ts +22 -1
  3. package/api/index.js +5 -0
  4. package/api/src/api-client.js +20 -1
  5. package/api/src/http-api-transport.js +102 -1
  6. package/api/src/protocol.js +39 -4
  7. package/api/src/surface-contract.js +44 -0
  8. package/dist/agent-manager-tools.d.ts +2 -0
  9. package/dist/agent-manager-tools.d.ts.map +1 -1
  10. package/dist/agent-manager-tools.js +24 -15
  11. package/dist/agent-manager-tools.js.map +1 -1
  12. package/dist/agent-package-service.d.ts +9 -0
  13. package/dist/agent-package-service.d.ts.map +1 -1
  14. package/dist/agent-package-service.js +46 -2
  15. package/dist/agent-package-service.js.map +1 -1
  16. package/dist/client.d.ts +2 -0
  17. package/dist/client.d.ts.map +1 -1
  18. package/dist/client.js +82 -19
  19. package/dist/client.js.map +1 -1
  20. package/dist/cms-migrations.d.ts.map +1 -1
  21. package/dist/cms-migrations.js +3538 -0
  22. package/dist/cms-migrations.js.map +1 -1
  23. package/dist/cms.d.ts +25 -0
  24. package/dist/cms.d.ts.map +1 -1
  25. package/dist/cms.js +43 -4
  26. package/dist/cms.js.map +1 -1
  27. package/dist/index.d.ts +7 -2
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +5 -1
  30. package/dist/index.js.map +1 -1
  31. package/dist/managed-session.d.ts +9 -1
  32. package/dist/managed-session.d.ts.map +1 -1
  33. package/dist/managed-session.js +40 -8
  34. package/dist/managed-session.js.map +1 -1
  35. package/dist/management-client.d.ts +410 -1
  36. package/dist/management-client.d.ts.map +1 -1
  37. package/dist/management-client.js +1254 -78
  38. package/dist/management-client.js.map +1 -1
  39. package/dist/model-providers.d.ts +13 -3
  40. package/dist/model-providers.d.ts.map +1 -1
  41. package/dist/model-providers.js +50 -13
  42. package/dist/model-providers.js.map +1 -1
  43. package/dist/orchestration/index.d.ts +2 -2
  44. package/dist/orchestration/index.js +1 -1
  45. package/dist/orchestration/lifecycle.d.ts.map +1 -1
  46. package/dist/orchestration/lifecycle.js +6 -3
  47. package/dist/orchestration/lifecycle.js.map +1 -1
  48. package/dist/orchestration/queue.d.ts.map +1 -1
  49. package/dist/orchestration/queue.js +1 -0
  50. package/dist/orchestration/queue.js.map +1 -1
  51. package/dist/orchestration/runtime.d.ts +1 -1
  52. package/dist/orchestration/state.d.ts +20 -0
  53. package/dist/orchestration/state.d.ts.map +1 -1
  54. package/dist/orchestration/state.js +1 -0
  55. package/dist/orchestration/state.js.map +1 -1
  56. package/dist/orchestration/turn.d.ts.map +1 -1
  57. package/dist/orchestration/turn.js +134 -3
  58. package/dist/orchestration/turn.js.map +1 -1
  59. package/dist/orchestration-registry.d.ts.map +1 -1
  60. package/dist/orchestration-registry.js +4 -2
  61. package/dist/orchestration-registry.js.map +1 -1
  62. package/dist/orchestration-version.d.ts +1 -1
  63. package/dist/orchestration-version.js +1 -1
  64. package/dist/orchestration.d.ts +2 -2
  65. package/dist/orchestration.js +1 -1
  66. package/dist/orchestration_1_0_46.d.ts +1 -1
  67. package/dist/orchestration_1_0_47.d.ts +1 -1
  68. package/dist/orchestration_1_0_48.d.ts +1 -1
  69. package/dist/orchestration_1_0_49.d.ts +1 -1
  70. package/dist/orchestration_1_0_50.d.ts +1 -1
  71. package/dist/orchestration_1_0_68/agents.d.ts +61 -0
  72. package/dist/orchestration_1_0_68/agents.d.ts.map +1 -0
  73. package/dist/orchestration_1_0_68/agents.js +840 -0
  74. package/dist/orchestration_1_0_68/agents.js.map +1 -0
  75. package/dist/orchestration_1_0_68/index.d.ts +30 -0
  76. package/dist/orchestration_1_0_68/index.d.ts.map +1 -0
  77. package/dist/orchestration_1_0_68/index.js +13 -0
  78. package/dist/orchestration_1_0_68/index.js.map +1 -0
  79. package/dist/orchestration_1_0_68/lifecycle.d.ts +49 -0
  80. package/dist/orchestration_1_0_68/lifecycle.d.ts.map +1 -0
  81. package/dist/orchestration_1_0_68/lifecycle.js +944 -0
  82. package/dist/orchestration_1_0_68/lifecycle.js.map +1 -0
  83. package/dist/orchestration_1_0_68/queue.d.ts +7 -0
  84. package/dist/orchestration_1_0_68/queue.d.ts.map +1 -0
  85. package/dist/orchestration_1_0_68/queue.js +804 -0
  86. package/dist/orchestration_1_0_68/queue.js.map +1 -0
  87. package/dist/orchestration_1_0_68/runtime.d.ts +29 -0
  88. package/dist/orchestration_1_0_68/runtime.d.ts.map +1 -0
  89. package/dist/orchestration_1_0_68/runtime.js +228 -0
  90. package/dist/orchestration_1_0_68/runtime.js.map +1 -0
  91. package/dist/orchestration_1_0_68/state.d.ts +176 -0
  92. package/dist/orchestration_1_0_68/state.d.ts.map +1 -0
  93. package/dist/orchestration_1_0_68/state.js +158 -0
  94. package/dist/orchestration_1_0_68/state.js.map +1 -0
  95. package/dist/orchestration_1_0_68/turn.d.ts +34 -0
  96. package/dist/orchestration_1_0_68/turn.d.ts.map +1 -0
  97. package/dist/orchestration_1_0_68/turn.js +1211 -0
  98. package/dist/orchestration_1_0_68/turn.js.map +1 -0
  99. package/dist/orchestration_1_0_68/utils.d.ts +39 -0
  100. package/dist/orchestration_1_0_68/utils.d.ts.map +1 -0
  101. package/dist/orchestration_1_0_68/utils.js +316 -0
  102. package/dist/orchestration_1_0_68/utils.js.map +1 -0
  103. package/dist/provider-budgets.d.ts +127 -0
  104. package/dist/provider-budgets.d.ts.map +1 -0
  105. package/dist/provider-budgets.js +182 -0
  106. package/dist/provider-budgets.js.map +1 -0
  107. package/dist/provider-catalog.d.ts +125 -0
  108. package/dist/provider-catalog.d.ts.map +1 -0
  109. package/dist/provider-catalog.js +299 -0
  110. package/dist/provider-catalog.js.map +1 -0
  111. package/dist/provider-store.d.ts +383 -0
  112. package/dist/provider-store.d.ts.map +1 -0
  113. package/dist/provider-store.js +514 -0
  114. package/dist/provider-store.js.map +1 -0
  115. package/dist/provider-tools.d.ts +47 -0
  116. package/dist/provider-tools.d.ts.map +1 -0
  117. package/dist/provider-tools.js +585 -0
  118. package/dist/provider-tools.js.map +1 -0
  119. package/dist/session-manager.d.ts +23 -2
  120. package/dist/session-manager.d.ts.map +1 -1
  121. package/dist/session-manager.js +144 -6
  122. package/dist/session-manager.js.map +1 -1
  123. package/dist/session-proxy.d.ts +4 -3
  124. package/dist/session-proxy.d.ts.map +1 -1
  125. package/dist/session-proxy.js +192 -10
  126. package/dist/session-proxy.js.map +1 -1
  127. package/dist/system-agents.d.ts +12 -0
  128. package/dist/system-agents.d.ts.map +1 -1
  129. package/dist/system-agents.js +54 -12
  130. package/dist/system-agents.js.map +1 -1
  131. package/dist/types.d.ts +19 -2
  132. package/dist/types.d.ts.map +1 -1
  133. package/dist/types.js.map +1 -1
  134. package/dist/web/generated-op-methods.d.ts +208 -2
  135. package/dist/web/generated-op-methods.d.ts.map +1 -1
  136. package/dist/web/generated-op-methods.js +50 -0
  137. package/dist/web/generated-op-methods.js.map +1 -1
  138. package/dist/web/web-management-client.d.ts +112 -2
  139. package/dist/web/web-management-client.d.ts.map +1 -1
  140. package/dist/web/web-management-client.js +163 -0
  141. package/dist/web/web-management-client.js.map +1 -1
  142. package/dist/worker.d.ts +9 -0
  143. package/dist/worker.d.ts.map +1 -1
  144. package/dist/worker.js +124 -19
  145. package/dist/worker.js.map +1 -1
  146. package/package.json +3 -3
  147. package/plugins/mgmt/agents/token-manager.agent.md +183 -0
  148. package/plugins/system/agents/default.agent.md +21 -7
  149. package/plugins/system/skills/canvas-apps/SKILL.md +158 -0
package/README.md CHANGED
@@ -46,4 +46,5 @@ Common docs:
46
46
  - Configuration: `https://github.com/affandar/PilotSwarm/blob/main/docs/developer/reference/configuration.md`
47
47
  - Architecture: `https://github.com/affandar/PilotSwarm/blob/main/docs/architecture/system.md`
48
48
 
49
- If you want the shipped terminal UI, install `pilotswarm-cli`.
49
+ If you want the shipped terminal UI, portal, and MCP server, install
50
+ `pilotswarm` (`pilotswarm-cli` is only a bin alias inside that package).
package/api/index.d.ts CHANGED
@@ -35,9 +35,24 @@ export declare function artifactDownloadPath(sessionId: string, filename: string
35
35
  export declare class ApiError extends Error {
36
36
  code: string;
37
37
  status: number;
38
- constructor(message: string, opts?: { code?: string; status?: number });
38
+ candidates?: string[];
39
+ constructor(message: string, opts?: { code?: string; status?: number; candidates?: string[] });
39
40
  }
40
41
 
42
+ export interface NonManagementOperationOwner {
43
+ owner: string;
44
+ file: string;
45
+ className: string;
46
+ method: string;
47
+ reason: string;
48
+ }
49
+ export declare const NON_MANAGEMENT_OPERATION_OWNERS: Readonly<Record<string, NonManagementOperationOwner>>;
50
+ export declare const WEB_MODE_UNSUPPORTED_OPERATION_METHODS: Readonly<Record<string, {
51
+ alternative: string;
52
+ reason: string;
53
+ }>>;
54
+ export declare function operationRequiresManagementMethod(operationName: string): boolean;
55
+
41
56
  export interface ApiClientOptions {
42
57
  apiUrl: string;
43
58
  getAccessToken?: () => Promise<string | null>;
@@ -57,6 +72,12 @@ export declare class ApiClient {
57
72
  getAuthContext(): Promise<any>;
58
73
  getBootstrap(): Promise<any>;
59
74
  downloadArtifactResponse(sessionId: string, filename: string): Promise<Response>;
75
+ downloadAgentPackageResponse(name: string, options?: {
76
+ semver?: string;
77
+ scope?: string;
78
+ ownerProvider?: string;
79
+ ownerSubject?: string;
80
+ }): Promise<Response>;
60
81
  start(): Promise<void>;
61
82
  stop(): Promise<void>;
62
83
  subscribeSession(sessionId: string, handler: (event: unknown) => void, onResubscribe?: () => void): () => void;
package/api/index.js CHANGED
@@ -23,3 +23,8 @@ export {
23
23
  export { ApiClient } from "./src/api-client.js";
24
24
  export { createCanvasLiveMirror, jsonMergePatch } from "./src/canvas-live-mirror.js";
25
25
  export { HttpApiTransport } from "./src/http-api-transport.js";
26
+ export {
27
+ NON_MANAGEMENT_OPERATION_OWNERS,
28
+ WEB_MODE_UNSUPPORTED_OPERATION_METHODS,
29
+ operationRequiresManagementMethod,
30
+ } from "./src/surface-contract.js";
@@ -19,6 +19,7 @@ function toWebSocketUrl(apiUrl) {
19
19
  async function readErrorEnvelope(response) {
20
20
  let message = response.statusText || `HTTP ${response.status}`;
21
21
  let code = response.status === 401 ? "UNAUTHORIZED" : response.status === 403 ? "FORBIDDEN" : "INTERNAL_ERROR";
22
+ let candidates;
22
23
  try {
23
24
  const payload = await response.json();
24
25
  const error = payload?.error;
@@ -26,11 +27,12 @@ async function readErrorEnvelope(response) {
26
27
  else if (error && typeof error === "object") {
27
28
  if (error.message) message = error.message;
28
29
  if (error.code) code = error.code;
30
+ if (Array.isArray(error.candidates)) candidates = error.candidates;
29
31
  } else if (payload?.message) {
30
32
  message = payload.message;
31
33
  }
32
34
  } catch {}
33
- return new ApiError(message, { code, status: response.status });
35
+ return new ApiError(message, { code, status: response.status, candidates });
34
36
  }
35
37
 
36
38
  /**
@@ -172,6 +174,23 @@ export class ApiClient {
172
174
  return response;
173
175
  }
174
176
 
177
+ async downloadAgentPackageResponse(name, { semver, scope, ownerProvider, ownerSubject } = {}) {
178
+ const query = new URLSearchParams();
179
+ if (semver) query.set("semver", semver);
180
+ if (scope) query.set("scope", scope);
181
+ if (ownerProvider) query.set("ownerProvider", ownerProvider);
182
+ if (ownerSubject) query.set("ownerSubject", ownerSubject);
183
+ const suffix = query.toString() ? `?${query}` : "";
184
+ const headers = await this.authHeaders();
185
+ const response = await this.fetchImpl(
186
+ `${this.apiUrl}${API_PREFIX}/agent-packages/${encodeURIComponent(name)}/download${suffix}`,
187
+ { method: "GET", headers },
188
+ );
189
+ if (response.status === 401) this.onUnauthorized();
190
+ if (!response.ok) throw await readErrorEnvelope(response);
191
+ return response;
192
+ }
193
+
175
194
  // ── WebSocket (session events + log tail) ───────────────────────────
176
195
 
177
196
  async start() {
@@ -19,6 +19,36 @@ function toIso(value) {
19
19
  return value instanceof Date ? value.toISOString() : value;
20
20
  }
21
21
 
22
+ /**
23
+ * `getProviderStatus` takes its names as one comma-separated query value,
24
+ * and no names at all means every provider in the caller's namespace.
25
+ *
26
+ * There is no way to ask for NOTHING: the server drops empty names and then
27
+ * reads an empty list as "all of them". So an empty array is sent as no
28
+ * parameter rather than as `names=`, which would read in a log like a filter
29
+ * that matched nothing when the answer coming back is everything.
30
+ */
31
+ function providerNamesParam(names) {
32
+ if (names === undefined || names === null) return undefined;
33
+ if (Array.isArray(names)) return names.length ? names.join(",") : undefined;
34
+ return String(names) || undefined;
35
+ }
36
+
37
+ /**
38
+ * A default is one tuple: provider + model + reasoning + context. A null
39
+ * tuple clears it, and clearing has to reach the server as explicit nulls —
40
+ * an omitted body field is dropped before it gets there, which would read as
41
+ * "leave it alone" instead of "I want no default".
42
+ */
43
+ function defaultTupleParams(tuple) {
44
+ return {
45
+ provider: tuple?.provider ?? null,
46
+ model: tuple?.model ?? null,
47
+ reasoning: tuple?.reasoning ?? null,
48
+ context: tuple?.context ?? null,
49
+ };
50
+ }
51
+
22
52
  function unsupported(name, hint) {
23
53
  return () => {
24
54
  throw new Error(`${name} is not available on this client${hint ? ` (${hint})` : ""}`);
@@ -105,7 +135,13 @@ export class HttpApiTransport {
105
135
  setAgentPackageEnabled(name, enabled, selector) { return this.api.call("setAgentPackageEnabled", { name, enabled, ...selectorParams(selector) }); }
106
136
  pinAgentPackageVersion(name, semver, selector) { return this.api.call("pinAgentPackageVersion", { name, semver, ...selectorParams(selector) }); }
107
137
  deleteAgentPackage(name, selector) { return this.api.call("deleteAgentPackage", { name, ...selectorParams(selector) }); }
108
- republishAgentPackageVersion(name, semver, targetScope) { return this.api.call("republishAgentPackageVersion", { name, semver, targetScope }); }
138
+ republishAgentPackageVersion(name, semver, targetScope, selector) { return this.api.call("republishAgentPackageVersion", { name, semver, targetScope, ...selectorParams(selector) }); }
139
+ downloadAgentPackage(name, semver, selector) {
140
+ return this.api.downloadAgentPackageResponse(name, {
141
+ ...(semver ? { semver } : {}),
142
+ ...selectorParams(selector),
143
+ });
144
+ }
109
145
 
110
146
  getSessionCreationPolicy() {
111
147
  return this.bootstrap?.sessionCreationPolicy || null;
@@ -373,6 +409,59 @@ export class HttpApiTransport {
373
409
  return this.api.call("listModels");
374
410
  }
375
411
 
412
+ // ── Provider budgets (docs/proposals/providers-and-budgets.md) ──────
413
+ // One method per capability in
414
+ // docs/proposals/providers-and-budgets-surface.md. Nothing here decides
415
+ // who may do what: every call carries the signed-in person to the
416
+ // `cms_provider_*` procedures, and the database refuses what they may
417
+ // not do. A refusal arrives as an ApiError with a PROVIDER_* code and a
418
+ // message already written for a person — pass it on, do not rewrite it.
419
+ //
420
+ // The wire calls the provider `name` (it is a path segment); the
421
+ // capability list calls it `provider`. These methods take the wire name
422
+ // so a reader can line them up against the table.
423
+
424
+ listProviders() { return this.api.call("listProviders"); }
425
+ getProviderStatus(names) { return this.api.call("getProviderStatus", { names: providerNamesParam(names) }); }
426
+ getProviderUsageGrid() { return this.api.call("getProviderUsageGrid"); }
427
+ createProvider({ name, type, credentials, baseUrl, displayName } = {}) { return this.api.call("createProvider", { name, type, credentials, baseUrl, displayName }); }
428
+ deleteProvider(name) { return this.api.call("deleteProvider", { name }); }
429
+ createMyProvider({ name, type, credentials, baseUrl, displayName } = {}) { return this.api.call("createMyProvider", { name, type, credentials, baseUrl, displayName }); }
430
+ deleteMyProvider(name) { return this.api.call("deleteMyProvider", { name }); }
431
+ clearProviderRoutingDependencies(name) { return this.api.call("clearProviderRoutingDependencies", { name }); }
432
+ setProviderLimit({ name, period, model, tokens } = {}) { return this.api.call("setProviderLimit", { name, period, model: model ?? null, tokens }); }
433
+ removeProviderLimit({ name, period, model } = {}) { return this.api.call("removeProviderLimit", { name, period, model: model ?? undefined }); }
434
+ setProviderAllowance({ name, pct } = {}) { return this.api.call("setProviderAllowance", { name, pct }); }
435
+ setProviderHold({ name, untilUtc, release } = {}) { return this.api.call("setProviderHold", { name, untilUtc: untilUtc ?? null, release: release === true }); }
436
+ getDefaults() { return this.api.call("getDefaults"); }
437
+ getModelDefaults() { return this.api.call("getModelDefaults"); }
438
+ setModelDefault(input) { return this.api.call("setModelDefault", input || {}); }
439
+ setProviderSystemUse({ provider, enabled } = {}) { return this.api.call("setProviderSystemUse", { name: provider, enabled }); }
440
+ getLegacyProviderMigrationStatus() { return this.api.call("getLegacyProviderMigrationStatus"); }
441
+ adoptLegacySystemGitHubCopilotKey({ name, displayName } = {}) { return this.api.call("adoptLegacySystemGitHubCopilotKey", { name, displayName }); }
442
+ setSystemModelDefault(input) { return this.api.call("setSystemModelDefault", input || {}); }
443
+ setSystemSessionModel(input) { return this.api.call("setSystemSessionModel", input || {}); }
444
+ clearSystemSessionModel(agentId) { return this.api.call("clearSystemSessionModel", { agentId }); }
445
+ setClusterDefault(tuple) { return this.api.call("setClusterDefault", defaultTupleParams(tuple)); }
446
+ setMyDefault(tuple) { return this.api.call("setMyDefault", defaultTupleParams(tuple)); }
447
+ getProviderUsage(filters = {}) {
448
+ return this.api.call("getProviderUsage", {
449
+ days: filters.days,
450
+ // "Only my own", resolved server-side from the authenticated
451
+ // caller. A boolean cannot name anybody else, which is why the
452
+ // chart asks this way rather than sending an id.
453
+ mine: filters.mine === true ? true : undefined,
454
+ ownerUserId: filters.ownerUserId ?? undefined,
455
+ provider: filters.provider ?? undefined,
456
+ model: filters.model ?? undefined,
457
+ sessionId: filters.sessionId ?? undefined,
458
+ chargeClass: filters.chargeClass ?? undefined,
459
+ dimension: filters.dimension ?? undefined,
460
+ limit: filters.limit,
461
+ });
462
+ }
463
+ listPausedSessions() { return this.api.call("listPausedSessions"); }
464
+
376
465
  // ── Events / history ────────────────────────────────────────────────
377
466
 
378
467
  async getSessionEvents(sessionId, afterSeq, limit, eventTypes) {
@@ -429,6 +518,18 @@ export class HttpApiTransport {
429
518
  return this.api.call("uploadArtifact", { sessionId, filename, content, contentType, contentEncoding });
430
519
  }
431
520
 
521
+ async readArtifactBase64(sessionId, filename, maxBytes) {
522
+ return this.api.call("readArtifactBase64", { sessionId, filename, maxBytes });
523
+ }
524
+
525
+ async copyArtifact(fromSessionId, fromFilename, toSessionId, toFilename) {
526
+ return this.api.call("copyArtifact", { fromSessionId, fromFilename, toSessionId, toFilename });
527
+ }
528
+
529
+ async setArtifactPinned(sessionId, filename, pinned) {
530
+ return this.api.call("setArtifactPinned", { sessionId, filename, pinned });
531
+ }
532
+
432
533
  getArtifactExportDirectory() {
433
534
  return this.artifactExportDirectory || "Downloads";
434
535
  }
@@ -189,8 +189,8 @@ export const OPERATIONS = [
189
189
  { name: "deleteGraphNamespace", access: "fleet:admin", method: "DELETE", path: "/graph/namespaces/:namespace", params: { namespace: path("namespace") }, admin: true, summary: "Delete a graph namespace and its data. [admin]" },
190
190
 
191
191
  // ── Models / agents / policy ────────────────────────────────────────
192
- { name: "listModels", access: "authed", method: "GET", path: "/models", summary: "All available models." },
193
- { name: "getModelsByProvider", access: "authed", method: "GET", path: "/models/by-provider", summary: "Models grouped by provider." },
192
+ { name: "listModels", access: "authed", method: "GET", path: "/models", summary: "Viewer-usable runtime provider instances (`catalogKind=runtime_provider`). Direct PilotSwarmManagementClient.listModels() is the provider-type template catalog (`catalogKind=provider_type`); use listRuntimeModels(viewer) for direct parity." },
193
+ { name: "getModelsByProvider", access: "authed", method: "GET", path: "/models/by-provider", summary: "Model templates grouped by provider type (catalogKind=provider_type); use listModels for viewer-usable runtime provider instances." },
194
194
  { name: "getDefaultModel", access: "authed", method: "GET", path: "/models/default", summary: "The deployment default model." },
195
195
  { name: "listCreatableAgents", access: "authed", method: "GET", path: "/agents", summary: "Agents sessions can be created for." },
196
196
  { name: "getSessionCreationPolicy", access: "authed", method: "GET", path: "/session-creation-policy", summary: "Session creation policy." },
@@ -217,7 +217,7 @@ export const OPERATIONS = [
217
217
  { name: "setAgentPackageEnabled", access: "authed", method: "PUT", path: "/agent-packages/:name/enabled", params: { name: path("name"), enabled: body(), scope: body(), ownerProvider: body(), ownerSubject: body() }, summary: "Enable/disable a package fleet-wide. Creator or admin. `scope` picks which same-named copy." },
218
218
  { name: "pinAgentPackageVersion", access: "authed", method: "PUT", path: "/agent-packages/:name/active", params: { name: path("name"), semver: body(), scope: body(), ownerProvider: body(), ownerSubject: body() }, summary: "Pin the active version (rollback). Creator or admin; fleet converges on the next epoch poll. `scope` picks which same-named copy." },
219
219
  { name: "deleteAgentPackage", access: "authed", method: "DELETE", path: "/agent-packages/:name", params: { name: path("name"), scope: query("string"), ownerProvider: query("string"), ownerSubject: query("string") }, summary: "Delete a package: every version and its artifacts. Creator or admin. Live sessions using its agents fail resolution on their next turn. `scope` picks which same-named copy." },
220
- { name: "republishAgentPackageVersion", access: "authed", method: "POST", path: "/agent-packages/:name/republish", params: { name: path("name"), semver: body(), targetScope: body() }, summary: "Publish an existing version's exact bytes into the same-named package in another scope (user↔shared). THE update path for an already-published shared package — promote can only move a row to an unused name. Creator or admin." },
220
+ { name: "republishAgentPackageVersion", access: "authed", method: "POST", path: "/agent-packages/:name/republish", params: { name: path("name"), semver: body(), targetScope: body(), ownerProvider: body(), ownerSubject: body() }, summary: "Publish an existing version's exact bytes into the same-named package in another scope (user↔shared). THE update path for an already-published shared package — promote can only move a row to an unused name. Creator or admin." },
221
221
 
222
222
  // ── Current user profile ────────────────────────────────────────────
223
223
  { name: "getCurrentUserProfile", access: "authed", method: "GET", path: "/me/profile", summary: "Profile of the authenticated principal." },
@@ -226,6 +226,40 @@ export const OPERATIONS = [
226
226
  { name: "setSystemGitHubCopilotKey", access: "fleet:admin", method: "PUT", path: "/admin/system-github-copilot-key", params: { key: body() }, admin: true, summary: "Set (or clear with null) the System user's GitHub Copilot key, used by ownerless system sessions. [admin]" },
227
227
  { name: "getSystemGitHubCopilotKeyStatus", access: "fleet:admin", method: "GET", path: "/admin/system-github-copilot-key", admin: true, summary: "Whether a System GitHub Copilot key is configured and who last changed it. [admin]" },
228
228
 
229
+ // ── Provider budgets (docs/proposals/providers-and-budgets.md) ──────
230
+ // A session runs provider:model and that provider is charged. Every
231
+ // operation carries the caller down to the cms_provider_* procedures,
232
+ // which decide what the caller may do; the admin rows are marked
233
+ // fleet:admin so the door matches the answer the database would give.
234
+ { name: "listProviders", access: "authed", method: "GET", path: "/providers", summary: "Providers the caller can use: every shared one plus their own. Admins also see other people's, marked usableByMe:false." },
235
+ { name: "getProviderStatus", access: "authed", method: "GET", path: "/providers/status", params: { names: query("string") }, summary: "Limits, usage against them, reset times, and the caller's own ceiling where an allowance applies. `names` is a comma-separated list; omit it for all of them." },
236
+ // One read, one table. A meter runs whether or not anybody capped the
237
+ // period, so an uncapped day still reports what was spent on it — which
238
+ // is the fact `getProviderStatus` cannot carry, because it lists limits.
239
+ { name: "getProviderUsageGrid", access: "authed", method: "GET", path: "/providers/usage-grid", summary: "Every provider in the caller's namespace, each followed by its model-scoped limits, with used and quota figures for day, week and month — the caller's own and everyone's. A period with no limit reports its usage against an unlimited quota." },
240
+ { name: "createProvider", access: "fleet:admin", method: "POST", path: "/management/providers", params: { name: body(), type: body(), credentials: body(), baseUrl: body() }, summary: "Create a shared provider — one anyone may spend from. [admin]" },
241
+ { name: "deleteProvider", access: "fleet:admin", method: "DELETE", path: "/management/providers/:name", params: { name: path("name") }, summary: "Remove a shared provider. Returns how many sessions are now waiting on the name. [admin]" },
242
+ { name: "createMyProvider", access: "authed", method: "POST", path: "/me/providers", params: { name: body(), type: body(), credentials: body(), baseUrl: body() }, summary: "Create a provider of your own, on your own credentials. Nobody else sees it." },
243
+ { name: "deleteMyProvider", access: "authed", method: "DELETE", path: "/me/providers/:name", params: { name: path("name") }, summary: "Remove one of your own providers. Returns how many sessions are now waiting on the name." },
244
+ { name: "clearProviderRoutingDependencies", access: "authed", method: "POST", path: "/providers/:name/clear-routing", params: { name: path("name") }, summary: "Explicitly clear defaults and system-agent overrides that reference a provider. Shared providers require admin." },
245
+ { name: "setProviderLimit", access: "authed", method: "PUT", path: "/providers/:name/limit", params: { name: path("name"), period: body(), model: body(), tokens: body() }, summary: "Save one limit (day | week | month, all models or one). The same combination replaces what was there. Admin on a shared provider, owner on a personal one." },
246
+ { name: "removeProviderLimit", access: "authed", method: "DELETE", path: "/providers/:name/limit", params: { name: path("name"), period: query("string"), model: query("string") }, summary: "Drop one limit. Returns whether there was one." },
247
+ { name: "setProviderAllowance", access: "fleet:admin", method: "PUT", path: "/management/providers/:name/allowance", params: { name: path("name"), pct: body() }, summary: "The share of each limit one person may use, 1..100. 100 means no per-person ceiling. Shared providers only. [admin]" },
248
+ { name: "setProviderHold", access: "fleet:admin", method: "PUT", path: "/management/providers/:name/hold", params: { name: path("name"), untilUtc: body(), release: body() }, summary: "Pause new turns against a provider. Neither untilUtc nor release = a hold with no end. [admin]" },
249
+ { name: "getDefaults", access: "authed", method: "GET", path: "/defaults", summary: "Compatibility view of configured cluster, user and system model tuples." },
250
+ { name: "getModelDefaults", access: "authed", method: "GET", path: "/model-defaults", summary: "Configured and effective user, cluster and system defaults plus per-system-agent overrides." },
251
+ { name: "setModelDefault", access: "authed", method: "PUT", path: "/model-defaults", params: { scope: body(), provider: body(), model: body(), reasoningEffort: body(), contextTier: body() }, summary: "Set or clear the user or cluster ordinary-session default. Cluster scope requires admin." },
252
+ { name: "setProviderSystemUse", access: "fleet:admin", method: "PUT", path: "/management/providers/:name/system-use", params: { name: path("name"), enabled: body() }, summary: "Allow or refuse system-session use of the calling admin's personal provider. [admin]" },
253
+ { name: "getLegacyProviderMigrationStatus", access: "fleet:admin", method: "GET", path: "/management/providers/legacy-key-migration", summary: "Aggregate legacy GHCP migration status; never returns credentials. [admin]" },
254
+ { name: "adoptLegacySystemGitHubCopilotKey", access: "fleet:admin", method: "POST", path: "/management/providers/adopt-system-github-key", params: { name: body() }, summary: "Adopt the legacy synthetic System GHCP key into the calling admin's private, system-enabled provider. [admin]" },
255
+ { name: "setSystemModelDefault", access: "fleet:admin", method: "PUT", path: "/management/system-model-default", params: { provider: body(), model: body(), reasoningEffort: body(), contextTier: body(), restartExisting: body() }, summary: "Set or clear the system-session default and optionally restart inheriting sessions. [admin]" },
256
+ { name: "setSystemSessionModel", access: "fleet:admin", method: "PUT", path: "/management/system-sessions/:agentId/model", params: { agentId: path("agentId"), provider: body(), model: body(), reasoningEffort: body(), contextTier: body() }, summary: "Set one persistent system-agent model override. [admin]" },
257
+ { name: "clearSystemSessionModel", access: "fleet:admin", method: "DELETE", path: "/management/system-sessions/:agentId/model", params: { agentId: path("agentId") }, summary: "Clear one persistent system-agent model override. [admin]" },
258
+ { name: "setClusterDefault", access: "fleet:admin", method: "PUT", path: "/management/defaults", params: { provider: body(), model: body(), reasoning: body(), context: body() }, summary: "Deprecated alias for setModelDefault(scope=cluster). [admin]" },
259
+ { name: "setMyDefault", access: "authed", method: "PUT", path: "/me/default", params: { provider: body(), model: body(), reasoning: body(), context: body() }, summary: "The caller's prefill for new sessions. A null provider clears it." },
260
+ { name: "getProviderUsage", access: "authed", method: "GET", path: "/providers/usage", params: { days: query("number"), mine: query("boolean"), ownerUserId: query("number"), provider: query("string"), model: query("string"), sessionId: query("string"), chargeClass: query("string"), dimension: query("string"), limit: query("number") }, summary: "Where the tokens went: { totals, daily[], breakdown[] } over one filter set. dimension: session | user | provider | model | agent. Non-admins see only their own rows. `mine` narrows to the caller's own spend, resolved server-side — it carries no id, so it cannot name anybody else." },
261
+ { name: "listPausedSessions", access: "authed", method: "GET", path: "/providers/paused", summary: "Sessions waiting on a limit, allowance, hold, or a provider name that no longer resolves. Admins fleet-wide, everyone else their own." },
262
+
229
263
  // ── System ──────────────────────────────────────────────────────────
230
264
  { name: "getLogConfig", access: "authed", method: "GET", path: "/system/log-config", summary: "Log tail availability." },
231
265
  { name: "getWorkerCount", access: "authed", method: "GET", path: "/system/workers", summary: "Live worker count." },
@@ -298,10 +332,11 @@ export function artifactDownloadPath(sessionId, filename) {
298
332
  }
299
333
 
300
334
  export class ApiError extends Error {
301
- constructor(message, { code = "INTERNAL_ERROR", status = 500 } = {}) {
335
+ constructor(message, { code = "INTERNAL_ERROR", status = 500, candidates = undefined } = {}) {
302
336
  super(message);
303
337
  this.name = "ApiError";
304
338
  this.code = code;
305
339
  this.status = status;
340
+ if (Array.isArray(candidates)) this.candidates = candidates;
306
341
  }
307
342
  }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Operations intentionally owned outside PilotSwarmManagementClient.
3
+ *
4
+ * Every protocol operation not listed here must have the same-named ergonomic
5
+ * method on both direct and Web management clients. Adding an exception
6
+ * requires naming its owning public abstraction and why management is not it.
7
+ */
8
+ export const NON_MANAGEMENT_OPERATION_OWNERS = Object.freeze({
9
+ createSession: { owner: "PilotSwarmClient", file: "packages/sdk/src/client.ts", className: "PilotSwarmClient", method: "createSession", reason: "session creation handle" },
10
+ createSessionForAgent: { owner: "PilotSwarmClient", file: "packages/sdk/src/client.ts", className: "PilotSwarmClient", method: "createSessionForAgent", reason: "agent-bound session creation handle" },
11
+ sendSessionEvent: { owner: "PilotSwarmSession", file: "packages/sdk/src/client.ts", className: "PilotSwarmSession", method: "sendEvent", reason: "session event write" },
12
+
13
+ listArtifacts: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "listArtifacts", reason: "session artifact data plane" },
14
+ getArtifactMetadata: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "getArtifactMetadata", reason: "session artifact data plane" },
15
+ downloadArtifact: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "downloadArtifact", reason: "session artifact data plane" },
16
+ uploadArtifact: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "uploadArtifactContent", reason: "session artifact data plane" },
17
+ deleteArtifact: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "deleteArtifact", reason: "session artifact data plane" },
18
+ readArtifactBase64: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "readArtifactBase64", reason: "binary artifact data plane" },
19
+ copyArtifact: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "copyArtifact", reason: "cross-session artifact data plane" },
20
+ setArtifactPinned: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "setArtifactPinned", reason: "artifact retention data plane" },
21
+ exportExecutionHistory: { owner: "HttpApiTransport", file: "packages/sdk/api/src/http-api-transport.js", className: "HttpApiTransport", method: "exportExecutionHistory", reason: "creates a downloadable artifact" },
22
+
23
+ startFactsEmbedder: { owner: "WebEnhancedFactStore", file: "packages/sdk/src/web/web-fact-store.ts", className: "WebEnhancedFactStore", method: "startEmbedder", reason: "fact-store lifecycle" },
24
+ stopFactsEmbedder: { owner: "WebEnhancedFactStore", file: "packages/sdk/src/web/web-fact-store.ts", className: "WebEnhancedFactStore", method: "stopEmbedder", reason: "fact-store lifecycle" },
25
+ listCreatableAgents: { owner: "NodeSdkTransport", file: "packages/app/tui/src/node-sdk-transport.js", className: "NodeSdkTransport", method: "listCreatableAgents", reason: "merged deployment and package catalog" },
26
+ getSessionCreationPolicy: { owner: "NodeSdkTransport", file: "packages/app/tui/src/node-sdk-transport.js", className: "NodeSdkTransport", method: "getSessionCreationPolicy", reason: "session creation policy" },
27
+
28
+ getCurrentUserProfile: { owner: "WebPilotSwarmManagementClient", file: "packages/sdk/src/web/web-management-client.ts", className: "WebPilotSwarmManagementClient", method: "getUserProfile", reason: "request principal is server-derived" },
29
+ setCurrentUserProfileSettings: { owner: "WebPilotSwarmManagementClient", file: "packages/sdk/src/web/web-management-client.ts", className: "WebPilotSwarmManagementClient", method: "setUserProfileSettings", reason: "request principal is server-derived" },
30
+ setCurrentUserGitHubCopilotKey: { owner: "WebPilotSwarmManagementClient", file: "packages/sdk/src/web/web-management-client.ts", className: "WebPilotSwarmManagementClient", method: "setUserGitHubCopilotKey", reason: "request principal is server-derived" },
31
+ getLogConfig: { owner: "NodeSdkTransport", file: "packages/app/tui/src/node-sdk-transport.js", className: "NodeSdkTransport", method: "getLogConfig", reason: "deployment log integration" },
32
+ getWorkerCount: { owner: "NodeSdkTransport", file: "packages/app/tui/src/node-sdk-transport.js", className: "NodeSdkTransport", method: "getWorkerCount", reason: "embedded host process count" },
33
+ });
34
+
35
+ export const WEB_MODE_UNSUPPORTED_OPERATION_METHODS = Object.freeze({
36
+ factsCapabilities: {
37
+ alternative: "WebEnhancedFactStore.capabilities / ManagementOps.factsCapabilities()",
38
+ reason: "the direct method is synchronous while the Web capability probe is asynchronous",
39
+ },
40
+ });
41
+
42
+ export function operationRequiresManagementMethod(operationName) {
43
+ return !Object.prototype.hasOwnProperty.call(NON_MANAGEMENT_OPERATION_OWNERS, operationName);
44
+ }
@@ -98,6 +98,8 @@ export interface CreateAgentManagerToolsOptions {
98
98
  importPolicy?: ImportPolicy;
99
99
  /** Session id used to attach patch artifacts. */
100
100
  sessionId?: string;
101
+ /** Agent names a package may not shadow. Defaults to bundled agents. */
102
+ reservedAgentNames?: string[];
101
103
  }
102
104
  /** Turn an FQN into a registry selector, or explain why it cannot be one. */
103
105
  export declare function selectorFromReference(reference: string, viewer: AgentManagerViewer): {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-manager-tools.d.ts","sourceRoot":"","sources":["../src/agent-manager-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAKhD,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAkB,MAAM,UAAU,CAAC;AACrF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKxD,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAGvF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,+BAA+B,CAAC;AAE7D;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,aAA4C,CAAC;AAE3E;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IACvC,6DAA6D;IAC7D,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9F,sCAAsC;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACvD,aAAa,EAAE,OAAO,CAAC;IACvB,gFAAgF;IAChF,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAyB/C;AAED,wDAAwD;AACxD,wBAAgB,kBAAkB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAEzE;AAED,qFAAqF;AACrF,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAmB7C,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,8BAA8B;IAC3C,OAAO,EAAE,cAAc,CAAC;IACxB,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC,gEAAgE;IAChE,aAAa,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACjD,yEAAyE;IACzE,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,6EAA6E;AAC7E,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,GAAG;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAiCA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,gBAAgB,CAClC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAChD,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAkCnG;AAKD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,8BAA8B,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAuoBzF"}
1
+ {"version":3,"file":"agent-manager-tools.d.ts","sourceRoot":"","sources":["../src/agent-manager-tools.ts"],"names":[],"mappings":"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"}
@@ -20,11 +20,12 @@ import * as fs from "node:fs";
20
20
  import * as os from "node:os";
21
21
  import * as path from "node:path";
22
22
  import { readAgentPackageTarGz } from "./agent-package-format.js";
23
- import { fetchAgentPackageTarGz, publishAgentPackageDir } from "./agent-package-service.js";
23
+ import { publishAgentPackageDir, readAgentPackageVersionEntries } from "./agent-package-service.js";
24
24
  import { diffPackageTrees, patchArtifacts, entriesToMap } from "./agent-package-diff.js";
25
25
  import { guardedImportFetch } from "./agent-package-import-fetch.js";
26
26
  import { loadImportPolicy } from "./agent-package-import-policy.js";
27
27
  import { parseAgentFqn } from "./agent-fqn.js";
28
+ import { listBundledAgentNames } from "./agent-loader.js";
28
29
  /**
29
30
  * Staging lives in ONE session artifact rather than N.
30
31
  *
@@ -191,18 +192,14 @@ export function createAgentManagerTools(opts) {
191
192
  };
192
193
  /** Read a package's active (or named) version as tar entries. */
193
194
  const entriesForVersion = async (name, selector, semver, viewer) => {
194
- const detail = await catalog.getAgentPackage(name, principalOf(viewer), viewer.isAdmin, selector);
195
- if (!detail)
196
- return { error: `package "${name}" not found, or not visible to you.` };
197
- const version = semver
198
- ? detail.versions.find((v) => v.semver === semver)
199
- : detail.versions.find((v) => v.versionId === detail.activeVersionId) ?? detail.versions[0];
200
- if (!version)
201
- return { error: semver ? `${name}@${semver} is not a published version.` : `package "${name}" has no versions.` };
202
195
  if (!artifactStore)
203
196
  return { error: "no artifact store is configured on this worker." };
204
- const targz = await fetchAgentPackageTarGz(artifactStore, version.artifactFilename, version.sha256);
205
- return { entries: readAgentPackageTarGz(targz), version, detail };
197
+ try {
198
+ return await readAgentPackageVersionEntries({ catalog, artifactStore }, name, principalOf(viewer), viewer.isAdmin, selector, semver);
199
+ }
200
+ catch (error) {
201
+ return { error: error?.message || String(error) };
202
+ }
206
203
  };
207
204
  const listAgentPackagesTool = defineTool("list_agent_packages", {
208
205
  description: "List agent packages you can see: the shared ones plus your own. "
@@ -547,6 +544,19 @@ export function createAgentManagerTools(opts) {
547
544
  if (!changelog.includes(args.semver)) {
548
545
  return { error: `publish_agent_package: ${CHANGELOG_PATH} has no entry for ${args.semver}. Add one before publishing.` };
549
546
  }
547
+ let plugin;
548
+ try {
549
+ plugin = JSON.parse(staged.files["plugin.json"] || "");
550
+ }
551
+ catch {
552
+ return { error: "publish_agent_package: staged plugin.json is missing or invalid JSON." };
553
+ }
554
+ if (plugin.name !== staged.package || args.package !== staged.package) {
555
+ return { error: `publish_agent_package: package identity mismatch (staged=${staged.package}, plugin=${plugin.name || "?"}, requested=${args.package}).` };
556
+ }
557
+ if (plugin.version !== args.semver) {
558
+ return { error: `publish_agent_package: plugin.json version ${plugin.version || "(missing)"} does not match requested ${args.semver}.` };
559
+ }
550
560
  const dir = fs.mkdtempSync(path.join(os.tmpdir(), "ps-agent-publish-"));
551
561
  try {
552
562
  for (const [rel, content] of Object.entries(staged.files)) {
@@ -576,8 +586,7 @@ export function createAgentManagerTools(opts) {
576
586
  // agent-authored version from a human `agents push`.
577
587
  createdBy: `agent-manager (approved by ${args.approved_by})`,
578
588
  isAdmin: viewer.isAdmin,
579
- name: staged.package,
580
- semver: args.semver,
589
+ validate: { reservedAgentNames: opts.reservedAgentNames ?? listBundledAgentNames() },
581
590
  });
582
591
  await artifactStore.deleteArtifact(opts.sessionId, STAGING_ARTIFACT).catch(() => { });
583
592
  const status = outcome?.status ?? "published";
@@ -586,8 +595,8 @@ export function createAgentManagerTools(opts) {
586
595
  .map((w) => w.message);
587
596
  return {
588
597
  status,
589
- package: staged.package,
590
- semver: args.semver,
598
+ package: outcome.name,
599
+ semver: outcome.semver,
591
600
  scope: args.scope === "shared" ? "shared" : "user",
592
601
  approvedBy: args.approved_by,
593
602
  // "noop" is not success: it means this exact semver+content
@@ -1 +1 @@
1
- {"version":3,"file":"agent-manager-tools.js","sourceRoot":"","sources":["../src/agent-manager-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-manager-tools.js","sourceRoot":"","sources":["../src/agent-manager-tools.ts"],"names":[],"mappings":"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"}