pilotswarm-sdk 0.5.31 → 0.5.32

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.
@@ -27,6 +27,60 @@ import { type ImportPolicy } from "./agent-package-import-policy.js";
27
27
  * while they are deciding whether to approve it.
28
28
  */
29
29
  export declare const STAGING_ARTIFACT = "agent-package-staging.json";
30
+ /**
31
+ * Agent ids that hold the manager bundle.
32
+ *
33
+ * Lives here rather than in inspect-tools so BOTH halves of a manager tool can
34
+ * gate on one list: the declaration (this bundle) and the per-turn handler
35
+ * (managed-session). Declaring a tool the model cannot see but whose handler is
36
+ * still registered is a latent capability, so the two must agree.
37
+ *
38
+ * Per §15 A10 a name must never GRANT: this selects which agents BEHAVE like
39
+ * managers, not what a manager may do. Every one of these tools re-checks
40
+ * authority against the live catalog (owner-or-admin, system sessions
41
+ * refused), so a package declaring this id gains nothing its owner did not
42
+ * already have.
43
+ */
44
+ export declare const MANAGER_AGENT_IDS: Set<string>;
45
+ /**
46
+ * May the calling principal act on `target`?
47
+ *
48
+ * The DECISION only — the caller does the IO and hands in what it read. Kept
49
+ * pure and exported so the rule is directly testable: it is the gate on
50
+ * messaging a session as its user and on completing/cancelling/deleting one,
51
+ * and a gate nobody can unit-test is a gate nobody can trust.
52
+ *
53
+ * Owner-or-admin, deliberately narrower than "can read". Visibility includes
54
+ * sessions shared WITH you, and being allowed to watch a run is not being
55
+ * allowed to type into it or end it.
56
+ */
57
+ export declare function decideSessionControl(args: {
58
+ /** The target session row, or null when it was not found. */
59
+ target: {
60
+ isSystem?: boolean;
61
+ owner?: {
62
+ provider?: string;
63
+ subject?: string;
64
+ } | null;
65
+ } | null;
66
+ /** Short id, for the message only. */
67
+ targetIdLabel: string;
68
+ /** The calling session's owner, or null when it could not be resolved. */
69
+ caller: {
70
+ provider?: string;
71
+ subject?: string;
72
+ } | null;
73
+ callerIsAdmin: boolean;
74
+ /** Lifecycle operations refuse system sessions; messaging does not use this. */
75
+ refuseSystem?: boolean;
76
+ }): {
77
+ ok: true;
78
+ } | {
79
+ ok: false;
80
+ reason: string;
81
+ };
82
+ /** Does this agent identity hold the manager bundle? */
83
+ export declare function holdsManagerBundle(agentIdentity?: string | null): boolean;
30
84
  /** The changelog every package carries. Read before editing, appended on publish. */
31
85
  export declare const CHANGELOG_PATH = "CHANGELOG.md";
32
86
  export interface AgentManagerViewer {
@@ -52,5 +106,30 @@ export declare function selectorFromReference(reference: string, viewer: AgentMa
52
106
  semver?: string;
53
107
  error?: string;
54
108
  };
109
+ /**
110
+ * Resolve a reference, including one naming ANOTHER owner.
111
+ *
112
+ * `selectorFromReference` stays sync and directory-free, so it can only ever
113
+ * resolve the viewer's own copy. That is the right answer for a normal user —
114
+ * their manager reaches their own packages and the shared ones, nothing else.
115
+ *
116
+ * An administrator is a different case: their manager is meant to reach the
117
+ * whole fleet, and refusing `<owner>:<package>` left admins able to LIST
118
+ * another user's package (`cms_list_agent_packages` returns everything when
119
+ * `p_is_admin`) while being unable to open it. The database already accepts an
120
+ * owner selector and already gates on `p_is_admin`; only this layer said no.
121
+ *
122
+ * The owner is resolved through the users table — by subject, email, or
123
+ * display name — so an admin can name a person the way a person is named.
124
+ * Resolution is by lookup, never by trusting the string: a non-admin keeps the
125
+ * original refusal, and an unmatched name is an error rather than a fallback
126
+ * to the viewer's own copy.
127
+ */
128
+ export declare function resolveReference(reference: string, viewer: AgentManagerViewer, catalog: Pick<SessionCatalog, "listKnownUsers">): Promise<{
129
+ name: string;
130
+ selector: AgentPackageSelector | null;
131
+ semver?: string;
132
+ error?: string;
133
+ }>;
55
134
  export declare function createAgentManagerTools(opts: CreateAgentManagerToolsOptions): Tool<any>[];
56
135
  //# sourceMappingURL=agent-manager-tools.d.ts.map
@@ -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,qFAAqF;AACrF,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAS7C,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;AAKD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,8BAA8B,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CA2fzF"}
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,CA6nBzF"}
@@ -33,6 +33,61 @@ import { parseAgentFqn } from "./agent-fqn.js";
33
33
  * while they are deciding whether to approve it.
34
34
  */
35
35
  export const STAGING_ARTIFACT = "agent-package-staging.json";
36
+ /**
37
+ * Agent ids that hold the manager bundle.
38
+ *
39
+ * Lives here rather than in inspect-tools so BOTH halves of a manager tool can
40
+ * gate on one list: the declaration (this bundle) and the per-turn handler
41
+ * (managed-session). Declaring a tool the model cannot see but whose handler is
42
+ * still registered is a latent capability, so the two must agree.
43
+ *
44
+ * Per §15 A10 a name must never GRANT: this selects which agents BEHAVE like
45
+ * managers, not what a manager may do. Every one of these tools re-checks
46
+ * authority against the live catalog (owner-or-admin, system sessions
47
+ * refused), so a package declaring this id gains nothing its owner did not
48
+ * already have.
49
+ */
50
+ export const MANAGER_AGENT_IDS = new Set(["agent-tuner", "agent-manager"]);
51
+ /**
52
+ * May the calling principal act on `target`?
53
+ *
54
+ * The DECISION only — the caller does the IO and hands in what it read. Kept
55
+ * pure and exported so the rule is directly testable: it is the gate on
56
+ * messaging a session as its user and on completing/cancelling/deleting one,
57
+ * and a gate nobody can unit-test is a gate nobody can trust.
58
+ *
59
+ * Owner-or-admin, deliberately narrower than "can read". Visibility includes
60
+ * sessions shared WITH you, and being allowed to watch a run is not being
61
+ * allowed to type into it or end it.
62
+ */
63
+ export function decideSessionControl(args) {
64
+ const { target, targetIdLabel, caller, callerIsAdmin, refuseSystem } = args;
65
+ if (!target)
66
+ return { ok: false, reason: `session ${targetIdLabel} not found` };
67
+ // Checked BEFORE ownership and before admin, so being an admin is not a
68
+ // way to reach one. System sessions hold the deployment's background
69
+ // machinery and the fleet recreates them anyway.
70
+ if (refuseSystem && target.isSystem) {
71
+ return {
72
+ ok: false,
73
+ reason: `session ${targetIdLabel} is a system session — its lifecycle belongs to the deployment, not to any user or admin`,
74
+ };
75
+ }
76
+ // Fail closed: an unidentifiable caller drives nothing.
77
+ if (!caller?.provider || !caller?.subject) {
78
+ return { ok: false, reason: "this session's owner could not be identified" };
79
+ }
80
+ if (target.owner?.provider === caller.provider && target.owner?.subject === caller.subject) {
81
+ return { ok: true };
82
+ }
83
+ if (callerIsAdmin)
84
+ return { ok: true };
85
+ return { ok: false, reason: `you neither own session ${targetIdLabel} nor hold the admin role` };
86
+ }
87
+ /** Does this agent identity hold the manager bundle? */
88
+ export function holdsManagerBundle(agentIdentity) {
89
+ return MANAGER_AGENT_IDS.has(String(agentIdentity ?? ""));
90
+ }
36
91
  /** The changelog every package carries. Read before editing, appended on publish. */
37
92
  export const CHANGELOG_PATH = "CHANGELOG.md";
38
93
  /** Turn an FQN into a registry selector, or explain why it cannot be one. */
@@ -69,6 +124,59 @@ export function selectorFromReference(reference, viewer) {
69
124
  return { name: "", selector: null, error: fqn.reason ?? "unusable package reference" };
70
125
  }
71
126
  }
127
+ /**
128
+ * Resolve a reference, including one naming ANOTHER owner.
129
+ *
130
+ * `selectorFromReference` stays sync and directory-free, so it can only ever
131
+ * resolve the viewer's own copy. That is the right answer for a normal user —
132
+ * their manager reaches their own packages and the shared ones, nothing else.
133
+ *
134
+ * An administrator is a different case: their manager is meant to reach the
135
+ * whole fleet, and refusing `<owner>:<package>` left admins able to LIST
136
+ * another user's package (`cms_list_agent_packages` returns everything when
137
+ * `p_is_admin`) while being unable to open it. The database already accepts an
138
+ * owner selector and already gates on `p_is_admin`; only this layer said no.
139
+ *
140
+ * The owner is resolved through the users table — by subject, email, or
141
+ * display name — so an admin can name a person the way a person is named.
142
+ * Resolution is by lookup, never by trusting the string: a non-admin keeps the
143
+ * original refusal, and an unmatched name is an error rather than a fallback
144
+ * to the viewer's own copy.
145
+ */
146
+ export async function resolveReference(reference, viewer, catalog) {
147
+ const base = selectorFromReference(reference, viewer);
148
+ if (!base.error)
149
+ return base;
150
+ const fqn = parseAgentFqn(reference);
151
+ const ownerRef = fqn.ownerRef?.trim();
152
+ // Only a cross-owner reference is rescuable, and only for the fleet-wide
153
+ // principals. Everything else keeps the message it already had.
154
+ if (!ownerRef || !(viewer.isAdmin || viewer.isSystemPrincipal))
155
+ return base;
156
+ let users;
157
+ try {
158
+ users = await catalog.listKnownUsers({ limit: 1000 });
159
+ }
160
+ catch (err) {
161
+ return { name: fqn.name, selector: null, error: `could not resolve owner "${ownerRef}": ${err?.message || String(err)}` };
162
+ }
163
+ const needle = ownerRef.toLowerCase();
164
+ const match = users.find((u) => u.subject?.toLowerCase() === needle
165
+ || u.email?.toLowerCase() === needle
166
+ || u.displayName?.toLowerCase() === needle);
167
+ if (!match) {
168
+ return {
169
+ name: fqn.name,
170
+ selector: null,
171
+ error: `no user matches "${ownerRef}". Name the owner by subject, email, or display name.`,
172
+ };
173
+ }
174
+ return {
175
+ name: fqn.name,
176
+ selector: { scope: "user", owner: { provider: match.provider, subject: match.subject } },
177
+ semver: fqn.semver,
178
+ };
179
+ }
72
180
  const principalOf = (viewer) => viewer.provider && viewer.subject ? { provider: viewer.provider, subject: viewer.subject } : null;
73
181
  export function createAgentManagerTools(opts) {
74
182
  const { catalog, artifactStore, resolveViewer } = opts;
@@ -119,8 +227,11 @@ export function createAgentManagerTools(opts) {
119
227
  },
120
228
  });
121
229
  const readAgentPackageTool = defineTool("read_agent_package", {
122
- description: "One package with its full version history. Accepts a bare name (your copy, else shared) "
123
- + "or `__shared:<name>` to reach the deployment copy past your own.",
230
+ description: "One package with its full version history. Accepts a bare name (your copy, else shared), "
231
+ + "`__shared:<name>` to reach the deployment copy past your own, or `<owner>:<name>` "
232
+ + "naming a person by subject, email, or display name. "
233
+ + "An administrator reaches every user's packages — a bare name resolving someone else's "
234
+ + "package is the intended fleet-wide reach, not a leak.",
124
235
  parameters: {
125
236
  type: "object",
126
237
  properties: { package: { type: "string", description: "Package name or __shared:<name>." } },
@@ -128,7 +239,7 @@ export function createAgentManagerTools(opts) {
128
239
  },
129
240
  handler: async (args) => {
130
241
  const viewer = await resolveViewer();
131
- const ref = selectorFromReference(args.package, viewer);
242
+ const ref = await resolveReference(args.package, viewer, catalog);
132
243
  if (ref.error)
133
244
  return { error: `read_agent_package: ${ref.error}` };
134
245
  try {
@@ -167,10 +278,10 @@ export function createAgentManagerTools(opts) {
167
278
  },
168
279
  handler: async (args) => {
169
280
  const viewer = await resolveViewer();
170
- const leftRef = selectorFromReference(args.left, viewer);
281
+ const leftRef = await resolveReference(args.left, viewer, catalog);
171
282
  if (leftRef.error)
172
283
  return { error: `diff_agent_versions: ${leftRef.error}` };
173
- const rightRef = selectorFromReference(args.right ?? args.left, viewer);
284
+ const rightRef = await resolveReference(args.right ?? args.left, viewer, catalog);
174
285
  if (rightRef.error)
175
286
  return { error: `diff_agent_versions: ${rightRef.error}` };
176
287
  try {
@@ -219,7 +330,7 @@ export function createAgentManagerTools(opts) {
219
330
  return { error: "propose_agent_patch: no session to attach artifacts to." };
220
331
  if (!artifactStore)
221
332
  return { error: "propose_agent_patch: no artifact store is configured." };
222
- const ref = selectorFromReference(args.package, viewer);
333
+ const ref = await resolveReference(args.package, viewer, catalog);
223
334
  if (ref.error)
224
335
  return { error: `propose_agent_patch: ${ref.error}` };
225
336
  try {
@@ -303,7 +414,7 @@ export function createAgentManagerTools(opts) {
303
414
  },
304
415
  handler: async (args) => {
305
416
  const viewer = await resolveViewer();
306
- const ref = selectorFromReference(args.package, viewer);
417
+ const ref = await resolveReference(args.package, viewer, catalog);
307
418
  if (ref.error)
308
419
  return { error: `read_agent_package_file: ${ref.error}` };
309
420
  try {
@@ -353,7 +464,7 @@ export function createAgentManagerTools(opts) {
353
464
  const viewer = await resolveViewer();
354
465
  if (!artifactStore || !opts.sessionId)
355
466
  return { error: "stage_agent_package_edit: no artifact store on this session." };
356
- const ref = selectorFromReference(args.package, viewer);
467
+ const ref = await resolveReference(args.package, viewer, catalog);
357
468
  if (ref.error)
358
469
  return { error: `stage_agent_package_edit: ${ref.error}` };
359
470
  try {
@@ -362,7 +473,7 @@ export function createAgentManagerTools(opts) {
362
473
  staged = { package: ref.name, fromSemver: null, files: {} };
363
474
  }
364
475
  if (args.from_package) {
365
- const seedRef = selectorFromReference(args.from_package, viewer);
476
+ const seedRef = await resolveReference(args.from_package, viewer, catalog);
366
477
  if (seedRef.error)
367
478
  return { error: `stage_agent_package_edit: ${seedRef.error}` };
368
479
  const seed = await entriesForVersion(seedRef.name, seedRef.selector, args.from_semver ?? seedRef.semver, viewer);
@@ -375,6 +486,12 @@ export function createAgentManagerTools(opts) {
375
486
  staged.files[p] = buf.toString("utf8");
376
487
  }
377
488
  staged.fromSemver = seed.version.semver;
489
+ // Seeded from someone else's copy (only an admin can reach
490
+ // one) — remember whose, so the publish lands there.
491
+ const seedOwner = seedRef.selector?.owner;
492
+ staged.targetOwner = seedOwner && seedOwner.subject !== viewer.subject
493
+ ? { provider: seedOwner.provider, subject: seedOwner.subject }
494
+ : null;
378
495
  }
379
496
  for (const [p, content] of Object.entries(args.files ?? {})) {
380
497
  staged.files[p.replace(/^\.\//, "")] = String(content);
@@ -442,7 +559,15 @@ export function createAgentManagerTools(opts) {
442
559
  fs.mkdirSync(path.dirname(target), { recursive: true });
443
560
  fs.writeFileSync(target, content, "utf8");
444
561
  }
445
- const owner = principalOf(viewer);
562
+ // Publish to the package's real owner when this edit was
563
+ // seeded from someone else's copy. Only the fleet-wide
564
+ // principals can have staged such a seed in the first place,
565
+ // and the database re-checks creator-or-admin under a row
566
+ // lock, so this widens nothing on its own.
567
+ const target = staged.targetOwner;
568
+ const owner = target && (viewer.isAdmin || viewer.isSystemPrincipal)
569
+ ? { provider: target.provider, subject: target.subject }
570
+ : principalOf(viewer);
446
571
  const outcome = await publishAgentPackageDir({ catalog, artifactStore }, {
447
572
  dir,
448
573
  scope: args.scope === "shared" ? "shared" : "user",
@@ -482,7 +607,7 @@ export function createAgentManagerTools(opts) {
482
607
  },
483
608
  handler: async (args) => {
484
609
  const viewer = await resolveViewer();
485
- const ref = selectorFromReference(args.package, viewer);
610
+ const ref = await resolveReference(args.package, viewer, catalog);
486
611
  if (ref.error)
487
612
  return { error: `set_agent_package_enabled: ${ref.error}` };
488
613
  try {
@@ -504,7 +629,7 @@ export function createAgentManagerTools(opts) {
504
629
  },
505
630
  handler: async (args) => {
506
631
  const viewer = await resolveViewer();
507
- const ref = selectorFromReference(args.package, viewer);
632
+ const ref = await resolveReference(args.package, viewer, catalog);
508
633
  if (ref.error)
509
634
  return { error: `pin_agent_package_version: ${ref.error}` };
510
635
  try {
@@ -537,7 +662,7 @@ export function createAgentManagerTools(opts) {
537
662
  const entries = readAgentPackageTarGz(fetched.bytes);
538
663
  let comparison = undefined;
539
664
  if (args.compare_to) {
540
- const ref = selectorFromReference(args.compare_to, viewer);
665
+ const ref = await resolveReference(args.compare_to, viewer, catalog);
541
666
  if (ref.error)
542
667
  return { error: `import_agent_package: ${ref.error}` };
543
668
  const current = await entriesForVersion(ref.name, ref.selector, undefined, viewer);
@@ -565,6 +690,110 @@ export function createAgentManagerTools(opts) {
565
690
  }
566
691
  },
567
692
  });
693
+ /**
694
+ * The DECLARATION half of create_agent_session.
695
+ *
696
+ * The real handler needs the inline SDK client, which only exists inside
697
+ * the turn runner, so it is swapped in per turn from the control bridge —
698
+ * the same split `spawn_agent`, `wait` and `ask_user` already use. The
699
+ * declaration lives HERE rather than with the system tools because this
700
+ * bundle is identity-gated to manager agents: putting it in the system set
701
+ * would hand every agent in the deployment the ability to create top-level
702
+ * sessions, which is not a capability the design grants them.
703
+ *
704
+ * If this stub ever runs, the wiring is missing — say so rather than
705
+ * silently reporting success for a session that was never created.
706
+ */
707
+ const createAgentSessionTool = defineTool("create_agent_session", {
708
+ description: "Create a TOP-LEVEL session running an agent — the way a user actually runs it, "
709
+ + "with no parent above it. Use this to VERIFY a package you just published: spawn_agent "
710
+ + "would only make a child of you, which is not the same thing. "
711
+ + "The session is owned by this session's owner and does NOT report back to you — "
712
+ + "watch it with read_session_info / read_agent_events on the returned id. "
713
+ + "Publishes converge on the next registry poll (<30s), so poll read_agent_package until "
714
+ + "the active version is the one you published BEFORE creating the session, or you will be "
715
+ + "testing the old definition and the edit will look like it did nothing.",
716
+ parameters: {
717
+ type: "object",
718
+ properties: {
719
+ agent_name: { type: "string", description: "Agent to run, e.g. `triager` or `__shared:triager`." },
720
+ prompt: { type: "string", description: "Opening message. Defaults to the agent's own initialPrompt." },
721
+ title: { type: "string", description: "Optional session title." },
722
+ model: { type: "string", description: "Optional exact provider:model from list_available_models." },
723
+ reasoning_effort: {
724
+ type: "string",
725
+ enum: ["none", "minimal", "low", "medium", "high", "xhigh", "max"],
726
+ description: "Optional reasoning effort for the new session.",
727
+ },
728
+ test_of: { type: "string", description: "Tag the session as a verification run, e.g. `triager@1.2.0`, so the sweeper can reap it." },
729
+ key: { type: "string", description: "Idempotency key. The same agent_name+key reuses the live session instead of creating another; change it to get a fresh one." },
730
+ },
731
+ required: ["agent_name"],
732
+ },
733
+ handler: async () => ({
734
+ error: "create_agent_session is not wired in this session (no control bridge). "
735
+ + "No session was created.",
736
+ }),
737
+ });
738
+ /**
739
+ * DECLARATION half of message_agent_session (real handler per turn, as
740
+ * above).
741
+ *
742
+ * Drives a session as its USER — the other half of the test loop, since a
743
+ * verification run you cannot talk to only tells you the agent boots.
744
+ * Authorization is owner-or-admin and is enforced in the bridge against
745
+ * the live catalog, never here: this schema is only what the model sees.
746
+ */
747
+ const messageAgentSessionTool = defineTool("message_agent_session", {
748
+ description: "Send a message to a session AS ITS USER — it lands in that session's chat as a user turn. "
749
+ + "Use it to drive a session you created with create_agent_session, or any session you own. "
750
+ + "Allowed only if you OWN the target session or hold the admin role; otherwise it refuses and sends nothing. "
751
+ + "This is not `send_session_message` (an auditable cross-session request) and not `message_agent` "
752
+ + "(your own children only). The target runs on its own schedule — poll read_session_info / "
753
+ + "read_agent_events for what it did rather than assuming a reply.",
754
+ parameters: {
755
+ type: "object",
756
+ properties: {
757
+ session_id: { type: "string", description: "Target session id." },
758
+ message: { type: "string", description: "The message, exactly as a user would type it." },
759
+ },
760
+ required: ["session_id", "message"],
761
+ },
762
+ handler: async () => ({
763
+ error: "message_agent_session is not wired in this session (no control bridge). "
764
+ + "Nothing was sent.",
765
+ }),
766
+ });
767
+ /**
768
+ * DECLARATION half of manage_agent_session (real handler per turn).
769
+ *
770
+ * The sub-agent lifecycle tools only reach the caller's own children, so
771
+ * a manager could create a top-level test session and then had no way to
772
+ * clean it up. Authorization is enforced in the bridge against the live
773
+ * catalog: owner-or-admin, and system sessions refused for everyone.
774
+ */
775
+ const manageAgentSessionTool = defineTool("manage_agent_session", {
776
+ description: "Complete, cancel or delete a session — including a top-level one. "
777
+ + "Use it to clean up test sessions you created with create_agent_session. "
778
+ + "`complete` marks it finished, `cancel` stops it, `delete` removes it (cancelling descendants first). "
779
+ + "Allowed only on a session you OWN, or on any session if you hold the admin role; "
780
+ + "SYSTEM sessions are refused for everyone, admins included. "
781
+ + "It refuses rather than partially acting, and the target settles on its own schedule — "
782
+ + "poll read_session_info to confirm rather than assuming.",
783
+ parameters: {
784
+ type: "object",
785
+ properties: {
786
+ session_id: { type: "string", description: "Target session id." },
787
+ action: { type: "string", enum: ["complete", "cancel", "delete"], description: "What to do." },
788
+ reason: { type: "string", description: "Why — recorded on the session." },
789
+ },
790
+ required: ["session_id", "action"],
791
+ },
792
+ handler: async () => ({
793
+ error: "manage_agent_session is not wired in this session (no control bridge). "
794
+ + "Nothing was changed.",
795
+ }),
796
+ });
568
797
  return [
569
798
  listAgentPackagesTool,
570
799
  readAgentPackageTool,
@@ -576,6 +805,9 @@ export function createAgentManagerTools(opts) {
576
805
  setEnabledTool,
577
806
  pinVersionTool,
578
807
  importAgentPackageTool,
808
+ createAgentSessionTool,
809
+ messageAgentSessionTool,
810
+ manageAgentSessionTool,
579
811
  ];
580
812
  }
581
813
  //# sourceMappingURL=agent-manager-tools.js.map
@@ -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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"}
@@ -42,8 +42,22 @@ export interface PackageDiff {
42
42
  omitted: number;
43
43
  };
44
44
  }
45
+ /**
46
+ * An entry as either producer spells it.
47
+ *
48
+ * TWO shapes reach this module and they do not agree: `readAgentPackageTarGz`
49
+ * emits `{name, body}`, while a staged edit is built as `{path, content}`.
50
+ * The union is declared so the compiler checks both — the earlier version read
51
+ * `path`/`content` through `as any`, which silently dropped every tar entry
52
+ * (the map came out empty, so file reads reported "not in package" and every
53
+ * diff reported "identical" even across different hashes).
54
+ */
55
+ export type PackageEntry = ExtractedTarEntry | {
56
+ path: string;
57
+ content: Buffer | string;
58
+ };
45
59
  /** A tar entry list reduced to path → bytes, ignoring the packer's ordering. */
46
- export declare function entriesToMap(entries: ExtractedTarEntry[]): Map<string, Buffer>;
60
+ export declare function entriesToMap(entries: PackageEntry[]): Map<string, Buffer>;
47
61
  /**
48
62
  * Heuristic binary detection: a NUL byte in the first 8 KiB.
49
63
  *
@@ -66,7 +80,7 @@ export declare function unifiedDiff(oldText: string, newText: string, filePath:
66
80
  * for staging a raw source tree through the same packer first, or the result
67
81
  * is the noise this module exists to avoid.
68
82
  */
69
- export declare function diffPackageTrees(left: ExtractedTarEntry[], right: ExtractedTarEntry[]): PackageDiff;
83
+ export declare function diffPackageTrees(left: PackageEntry[], right: PackageEntry[]): PackageDiff;
70
84
  /**
71
85
  * Render a diff as ordered `.patch` artifacts.
72
86
  *
@@ -1 +1 @@
1
- {"version":3,"file":"agent-package-diff.d.ts","sourceRoot":"","sources":["../src/agent-package-diff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB,QAAa,CAAC;AAC9C,0EAA0E;AAC1E,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;IACzC,iFAAiF;IACjF,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IACxB,sEAAsE;IACtE,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,kDAAkD;IAClD,SAAS,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACnC;AAED,gFAAgF;AAChF,wBAAgB,YAAY,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ9E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAIhD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,SAAI,GACZ,MAAM,CA0DR;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,iBAAiB,EAAE,EACzB,KAAK,EAAE,iBAAiB,EAAE,GAC3B,WAAW,CAuCb;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,KAAK,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAalI"}
1
+ {"version":3,"file":"agent-package-diff.d.ts","sourceRoot":"","sources":["../src/agent-package-diff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB,QAAa,CAAC;AAC9C,0EAA0E;AAC1E,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;IACzC,iFAAiF;IACjF,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IACxB,sEAAsE;IACtE,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,kDAAkD;IAClD,SAAS,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACnC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAE1F,gFAAgF;AAChF,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAUzE;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAIhD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,SAAI,GACZ,MAAM,CA0DR;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,YAAY,EAAE,EACpB,KAAK,EAAE,YAAY,EAAE,GACtB,WAAW,CAuCb;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,KAAK,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAalI"}