@dalmasonto/taskflow-mcp 2.13.1 → 2.15.0

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.
@@ -10,9 +10,18 @@ import type { InstructionsBlock } from "./client.js";
10
10
  export type InstructionsCarrier = {
11
11
  instructions?: InstructionsBlock | null;
12
12
  project_instructions?: InstructionsBlock | null;
13
+ /** #605: the scopes this key carries. Absent on a backend that predates them. */
14
+ scopes?: string[];
13
15
  };
14
16
  /** The one line typed into the pane when the instructions changed. */
15
17
  export declare const INSTRUCTIONS_UPDATED_NOTICE = "[taskflow] your role/project instructions were updated \u2014 call whoami";
18
+ /**
19
+ * #605: the readable line for a key that carries `agents:manage`. Rendered in
20
+ * the same block as the instructions (rather than only inside the JSON) because
21
+ * it changes what the agent should DO — set up the team itself instead of
22
+ * asking the human to link every agent.
23
+ */
24
+ export declare function renderScopeNotice(identity: InstructionsCarrier): string | null;
16
25
  /**
17
26
  * A readable rendering of whichever blocks have text, role first, or null when
18
27
  * neither does (nothing set, or a backend that predates them).
@@ -1,5 +1,20 @@
1
1
  /** The one line typed into the pane when the instructions changed. */
2
2
  export const INSTRUCTIONS_UPDATED_NOTICE = "[taskflow] your role/project instructions were updated — call whoami";
3
+ /**
4
+ * #605: the readable line for a key that carries `agents:manage`. Rendered in
5
+ * the same block as the instructions (rather than only inside the JSON) because
6
+ * it changes what the agent should DO — set up the team itself instead of
7
+ * asking the human to link every agent.
8
+ */
9
+ export function renderScopeNotice(identity) {
10
+ if (!identity.scopes?.includes("agents:manage"))
11
+ return null;
12
+ return ("## Your key can manage agents (agents:manage)\n\n" +
13
+ "You may mint agents in this project (`create_agent`), set their role instructions " +
14
+ "(`set_agent_instructions`) and revoke them (`delete_agent`). Keys you mint are ordinary " +
15
+ "keys — they cannot do this themselves, because only a human owner/admin grants this scope. " +
16
+ "Use it to finish the project's agent setup yourself rather than asking your human to link each agent.");
17
+ }
3
18
  const text = (block) => block?.markdown && block.markdown.trim() ? block.markdown : null;
4
19
  /**
5
20
  * A readable rendering of whichever blocks have text, role first, or null when
@@ -1 +1 @@
1
- {"version":3,"file":"agent-instructions.js","sourceRoot":"","sources":["../src/agent-instructions.ts"],"names":[],"mappings":"AAeA,sEAAsE;AACtE,MAAM,CAAC,MAAM,2BAA2B,GACtC,sEAAsE,CAAC;AAEzE,MAAM,IAAI,GAAG,CAAC,KAA2C,EAAiB,EAAE,CAC1E,KAAK,EAAE,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAEnE;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAA6B;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IACpD,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,KAAK,GAAG;QACZ,2LAA2L;KAC5L,CAAC;IACF,IAAI,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;IAC7D,IAAI,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,gDAAgD,OAAO,EAAE,CAAC,CAAC;IACnF,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAAC,QAA6B;IAC7D,OAAO,GAAG,QAAQ,CAAC,YAAY,EAAE,UAAU,IAAI,EAAE,IAAI,QAAQ,CAAC,oBAAoB,EAAE,UAAU,IAAI,EAAE,EAAE,CAAC;AACzG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB;IACvC,IAAI,IAAwB,CAAC;IAC7B,OAAO;QACL,OAAO,CAAC,QAAQ;YACd,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;YACrD,IAAI,GAAG,KAAK,CAAC;YACb,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"agent-instructions.js","sourceRoot":"","sources":["../src/agent-instructions.ts"],"names":[],"mappings":"AAiBA,sEAAsE;AACtE,MAAM,CAAC,MAAM,2BAA2B,GACtC,sEAAsE,CAAC;AAEzE;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAA6B;IAC7D,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,eAAe,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7D,OAAO,CACL,mDAAmD;QACnD,oFAAoF;QACpF,0FAA0F;QAC1F,6FAA6F;QAC7F,uGAAuG,CACxG,CAAC;AACJ,CAAC;AAED,MAAM,IAAI,GAAG,CAAC,KAA2C,EAAiB,EAAE,CAC1E,KAAK,EAAE,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAEnE;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAA6B;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IACpD,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,KAAK,GAAG;QACZ,2LAA2L;KAC5L,CAAC;IACF,IAAI,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;IAC7D,IAAI,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,gDAAgD,OAAO,EAAE,CAAC,CAAC;IACnF,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAAC,QAA6B;IAC7D,OAAO,GAAG,QAAQ,CAAC,YAAY,EAAE,UAAU,IAAI,EAAE,IAAI,QAAQ,CAAC,oBAAoB,EAAE,UAAU,IAAI,EAAE,EAAE,CAAC;AACzG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB;IACvC,IAAI,IAAwB,CAAC;IAC7B,OAAO;QACL,OAAO,CAAC,QAAQ;YACd,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;YACrD,IAAI,GAAG,KAAK,CAAC;YACb,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * #605: how a failed agent-management call reads to the agent.
3
+ *
4
+ * A bare "403" is a dead end, and there are TWO different 403s on these routes:
5
+ * the key lacks `agents:manage` (remedy: ask a human for a scoped key) and a
6
+ * self-revoke (remedy: ask a human to delete this agent). They are told apart
7
+ * by the backend's machine code, never by its prose — a sentence can be
8
+ * reworded without anyone noticing this file depended on it.
9
+ */
10
+ import type { TaskflowApiError } from "./client.js";
11
+ export declare const SCOPE_REFUSAL: string;
12
+ export declare const SELF_REVOKE_REFUSAL: string;
13
+ /**
14
+ * The message for a `TaskflowApiError` on an agent-management route, or null
15
+ * when this module has nothing more specific to say than `Error: <detail>`.
16
+ */
17
+ export declare function agentsManageFailure(err: TaskflowApiError): string | null;
@@ -0,0 +1,17 @@
1
+ export const SCOPE_REFUSAL = "Error: this agent key cannot manage agents — it does not carry the `agents:manage` scope. " +
2
+ "Ask your human to mint one from the dashboard's Connect-agents page (tick " +
3
+ "\"Can manage agents\" while linking), then switch to it. A key minted by an agent never carries a scope.";
4
+ export const SELF_REVOKE_REFUSAL = "Error: an agent cannot delete itself — that would revoke the key making this call, mid-run, " +
5
+ "with no way back. Ask your human to delete this agent from the Connect-agents page instead.";
6
+ /**
7
+ * The message for a `TaskflowApiError` on an agent-management route, or null
8
+ * when this module has nothing more specific to say than `Error: <detail>`.
9
+ */
10
+ export function agentsManageFailure(err) {
11
+ if (err.status !== 403)
12
+ return null;
13
+ if (err.code === "cannot_delete_self")
14
+ return SELF_REVOKE_REFUSAL;
15
+ return SCOPE_REFUSAL;
16
+ }
17
+ //# sourceMappingURL=agents-manage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-manage.js","sourceRoot":"","sources":["../src/agents-manage.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,aAAa,GACxB,4FAA4F;IAC5F,4EAA4E;IAC5E,0GAA0G,CAAC;AAE7G,MAAM,CAAC,MAAM,mBAAmB,GAC9B,8FAA8F;IAC9F,6FAA6F,CAAC;AAEhG;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAqB;IACvD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,GAAG,CAAC,IAAI,KAAK,oBAAoB;QAAE,OAAO,mBAAmB,CAAC;IAClE,OAAO,aAAa,CAAC;AACvB,CAAC"}
package/dist/client.d.ts CHANGED
@@ -47,6 +47,13 @@ export type DesignScreenshotOptions = {
47
47
  tokens?: Record<string, DesignOverrideValue>;
48
48
  css?: string;
49
49
  max_px?: number;
50
+ /** #525: where the render goes. `to` is `inline` (default) | `message` |
51
+ * `url`; `message` needs `channel`. Flat on the wire — these four become
52
+ * query parameters, because the route is a GET. */
53
+ deliver?: "inline" | "message" | "url";
54
+ deliver_channel?: number;
55
+ deliver_body?: string;
56
+ deliver_reply_to?: number;
50
57
  };
51
58
  /** `design_compare` request body (minus `project`). */
52
59
  export type DesignCompareInput = {
@@ -77,6 +84,11 @@ export type DesignCompareInput = {
77
84
  css?: string;
78
85
  include_apply?: boolean;
79
86
  max_px?: number;
87
+ /** #525: `inline` (default) | `message` (needs `deliver_channel`) | `url`. */
88
+ deliver?: "inline" | "message" | "url";
89
+ deliver_channel?: number;
90
+ deliver_body?: string;
91
+ deliver_reply_to?: number;
80
92
  };
81
93
  export type DesignCompareResult = {
82
94
  mime: string;
@@ -86,8 +98,11 @@ export type DesignCompareResult = {
86
98
  width: number;
87
99
  height: number;
88
100
  };
89
- png_base64: string;
101
+ png_base64?: string;
90
102
  }[];
103
+ /** #525: present when `deliver` sent the render somewhere else — ids and
104
+ * sizes instead of pixels, and then `images[]` carries no base64. */
105
+ delivered?: unknown;
91
106
  split: boolean;
92
107
  grid: {
93
108
  columns: string[];
@@ -124,7 +139,11 @@ export declare class TaskflowApiError extends Error {
124
139
  readonly detail: string;
125
140
  readonly method: string;
126
141
  readonly path: string;
127
- constructor(method: string, path: string, status: number, detail: string);
142
+ /** The backend's machine code when the body carried one (its `error` field,
143
+ * e.g. `cannot_delete_self`). A tool that must say something more specific
144
+ * than the human sentence keys off this — never off the sentence's wording. */
145
+ readonly code?: string;
146
+ constructor(method: string, path: string, status: number, detail: string, code?: string);
128
147
  }
129
148
  /** #615/#616: one instructions block on `whoami`; both keys null when unset. */
130
149
  export interface InstructionsBlock {
@@ -137,11 +156,41 @@ export interface Whoami {
137
156
  identifier: string;
138
157
  project: number;
139
158
  status: string;
159
+ /** #605: the scopes THIS KEY carries (e.g. `["agents:manage"]`). Absent on a
160
+ * backend that predates scopes — treat that as an ordinary key. */
161
+ scopes?: string[];
140
162
  /** #615: this agent's role instructions. Absent on a backend that predates them. */
141
163
  instructions?: InstructionsBlock;
142
164
  /** #616: the project's instructions for every agent. Absent on an older backend. */
143
165
  project_instructions?: InstructionsBlock;
144
166
  }
167
+ /** #605: the body of `POST /agents/agent/agents`. No `scopes` field exists —
168
+ * see `TaskflowClient.createAgent`. */
169
+ export interface CreateAgentInput {
170
+ display_name: string;
171
+ profile: string;
172
+ project_root?: string;
173
+ runtime?: string;
174
+ version?: string;
175
+ instructions_markdown?: string;
176
+ }
177
+ /** #605: the reply to a mint — the raw `key` is shown ONCE and never stored. */
178
+ export interface MintedAgent {
179
+ agent_id: number;
180
+ identifier: string;
181
+ display_name: string;
182
+ project: number;
183
+ profile: string;
184
+ instructions_applied: boolean;
185
+ /** Always empty on this path: an agent-minted key never carries a scope. */
186
+ scopes: string[];
187
+ key: string;
188
+ taskflow_profile: {
189
+ agent_id: number;
190
+ key: string;
191
+ display_name: string;
192
+ };
193
+ }
145
194
  export interface ChannelSummary {
146
195
  id: number;
147
196
  title: string;
@@ -182,6 +231,33 @@ export interface SendMessageInput {
182
231
  }[];
183
232
  /** #317: the id of the message this one replies to (same channel). */
184
233
  reply_to?: number;
234
+ /** #644: a structured question set the human answers in a rendered dialog.
235
+ * The answers come back as an ordinary REPLY to this message. */
236
+ questions?: StructuredQuestions;
237
+ }
238
+ export interface StructuredQuestions {
239
+ title?: string;
240
+ questions: StructuredQuestion[];
241
+ submit_label?: string;
242
+ cancel_label?: string;
243
+ }
244
+ export interface StructuredQuestion {
245
+ /** Stable identity for the answer, unique in the set (`[a-z0-9_-]{1,40}`). */
246
+ key: string;
247
+ label: string;
248
+ type: "radio" | "select" | "text" | "date";
249
+ /** radio/select only: at least 2. */
250
+ options?: {
251
+ value: string;
252
+ label: string;
253
+ description?: string;
254
+ }[];
255
+ /** radio/select only: offer an "Other…" free-text choice. */
256
+ allow_other?: boolean;
257
+ required?: boolean;
258
+ /** text only. */
259
+ placeholder?: string;
260
+ multiline?: boolean;
185
261
  }
186
262
  export interface CreateTaskInput {
187
263
  title: string;
@@ -189,6 +265,7 @@ export interface CreateTaskInput {
189
265
  priority?: string;
190
266
  notes_markdown?: string;
191
267
  claim?: boolean;
268
+ repo?: string;
192
269
  }
193
270
  /**
194
271
  * Fields of a task that an agent may edit. Every one is optional: what is
@@ -203,6 +280,7 @@ export interface UpdateTaskInput {
203
280
  description_markdown?: string;
204
281
  notes_markdown?: string;
205
282
  priority?: string;
283
+ repo?: string | null;
206
284
  }
207
285
  export interface RegisterSessionInput {
208
286
  session_identifier: string;
@@ -282,6 +360,11 @@ export type DesignLayoutOp = {
282
360
  x: number;
283
361
  y: number;
284
362
  };
363
+ } | {
364
+ set_label: {
365
+ route: string;
366
+ label?: string;
367
+ };
285
368
  };
286
369
  export declare class TaskflowClient {
287
370
  private readonly server;
@@ -318,6 +401,28 @@ export declare class TaskflowClient {
318
401
  /** Only messages past this agent's read cursor. */
319
402
  unread?: boolean;
320
403
  }): Promise<MessagesPage>;
404
+ /** `GET /agents/toolbox` — the index. Never carries code. */
405
+ toolboxList(params?: {
406
+ kind?: string;
407
+ tag?: string;
408
+ query?: string;
409
+ }): Promise<unknown>;
410
+ /** `GET /agents/toolbox/{name}` — the full entry, code included. */
411
+ toolboxGet(name: string): Promise<unknown>;
412
+ /** `POST /agents/toolbox/{name}` — create or update (the version gate is the
413
+ * server's: a stale `base_version` is a 409). */
414
+ toolboxSave(name: string, input: Record<string, unknown>): Promise<unknown>;
415
+ /** `POST /agents/toolbox/{name}/run` — record how a run went. */
416
+ toolboxReportRun(name: string, ok: boolean, note?: string): Promise<unknown>;
417
+ /** `POST /agents/toolbox/{name}/deprecate` — retire an entry, with a reason. */
418
+ toolboxDeprecate(name: string, reason: string): Promise<unknown>;
419
+ /** `GET /agents/toolbox/{name}/versions` — history + who vetted what. */
420
+ toolboxVersions(name: string): Promise<unknown>;
421
+ /** `GET /agents/toolbox/{name}/versions/{version}` — one past version, with
422
+ * its code, so an update can be diffed before re-vetting. */
423
+ toolboxGetVersion(name: string, version: number): Promise<unknown>;
424
+ /** `POST /agents/toolbox/{name}/vet` — record an install's vetting note. */
425
+ toolboxVet(name: string, version: number, vettedBy: string, vettedNote: string): Promise<unknown>;
321
426
  /** `GET /agents/activity?task=&limit=` — recent activity, newest first. */
322
427
  listActivity(params?: {
323
428
  task?: number;
@@ -349,6 +454,19 @@ export declare class TaskflowClient {
349
454
  claimTask(task: number): Promise<unknown>;
350
455
  /** `POST /tasks/{id}/agent/review` — record a review verdict as this agent. */
351
456
  reportReview(task: number, decision: string, bodyMarkdown?: string): Promise<unknown>;
457
+ /** `POST /agents/agent/agents` — mint another agent in this project, with the
458
+ * same one-time key semantics as the dashboard link. The KEY calling this
459
+ * must carry the `agents:manage` scope (a plain key gets 403), and the key it
460
+ * mints never carries a scope itself: only a human owner/admin grants one. */
461
+ createAgent(input: CreateAgentInput): Promise<MintedAgent>;
462
+ /** `PUT /agents/agent/agents/{id}/instructions` — replace a peer's role
463
+ * instructions (#615's write, agent-authed). `agents:manage` scope required;
464
+ * the agent must be in the caller's own project. */
465
+ setPeerInstructions(agent: number, markdown: string | null): Promise<unknown>;
466
+ /** `DELETE /agents/agent/agents/{id}` — revoke a peer's identity (its keys,
467
+ * sessions and roster rows go with it). `agents:manage` required, and never
468
+ * the calling agent itself: the server refuses self-deletion with 403. */
469
+ deletePeer(agent: number): Promise<void>;
352
470
  /** `POST /agents/sessions` — register or reconnect a live session. */
353
471
  registerSession(input: RegisterSessionInput): Promise<SessionRow>;
354
472
  /** `POST /agents/sessions/{id}/heartbeat` — bump liveness (status hint idle/busy).
@@ -369,6 +487,35 @@ export declare class TaskflowClient {
369
487
  logActivityBatch(events: ActivityEventInput[]): Promise<unknown>;
370
488
  /** `GET /agents/design/context` — tokens + component registry. */
371
489
  designContext(project: number): Promise<unknown>;
490
+ /** `POST /agents/design/rename-route` — #682: move a page's route, with
491
+ * every reference following it (links in other pages, flow order, groups,
492
+ * the label, arrows, pinned position). One lock hold, one response. */
493
+ designRenameRoute(project: number, from: string, to: string): Promise<unknown>;
494
+ /** `GET /agents/design/versions` — #520: every recorded version of one
495
+ * file, newest first, and each with the `project_revision` that orders the
496
+ * timeline. No content: designVersion reads the one version wanted. */
497
+ designVersions(project: number, path: string): Promise<unknown>;
498
+ /** `GET /agents/design/version` — #520: one recorded version's content. */
499
+ designVersion(project: number, path: string, version: number): Promise<unknown>;
500
+ /** `POST /agents/design/restore-version` — #520: bring an old version back
501
+ * as a NEW write (validated, versioned, recorded — undoable in turn). */
502
+ designRestoreVersion(project: number, path: string, version: number): Promise<unknown>;
503
+ /** `GET /agents/design/search` — #664: find what the pages SAY.
504
+ *
505
+ * One call replaces reading every page to find a term: the server scans
506
+ * stored design files (pages tokenized so markup and class names are not
507
+ * copy; components whole), and answers which files mention it, where, and
508
+ * in what form — so a rename touches only the pages that carry it. */
509
+ designSearch(project: number, params: {
510
+ query: string;
511
+ regex?: boolean;
512
+ caseSensitive?: boolean;
513
+ wholeWord?: boolean;
514
+ scope?: string;
515
+ in?: string;
516
+ cursor?: string;
517
+ limit?: number;
518
+ }): Promise<unknown>;
372
519
  /** `GET /agents/design/guide` — the design guide index, or one topic. */
373
520
  designGuide(topic?: string): Promise<unknown>;
374
521
  /** `GET /agents/design/layout` — how the pages are grouped and ordered. */
@@ -435,6 +582,9 @@ export declare class TaskflowClient {
435
582
  warnings?: string[];
436
583
  mime: string;
437
584
  png_base64?: string;
585
+ /** #525: where a `deliver`ed render went (ids, urls, sizes) — and then
586
+ * `png_base64`/`shots[].png_base64` are absent. */
587
+ delivered?: unknown;
438
588
  /** `theme: "all"`: one shot per declared theme, in order. */
439
589
  shots?: {
440
590
  theme: string;
@@ -459,4 +609,10 @@ export declare class TaskflowClient {
459
609
  * else the status line. Kept resilient — a malformed body must never mask the
460
610
  * real failure.
461
611
  */
612
+ /**
613
+ * The backend's machine code from a JSON error body, or undefined. Distinct
614
+ * from [`extractDetail`], which prefers the human sentence: a caller that must
615
+ * branch on WHICH error it got reads this, so it never has to match prose.
616
+ */
617
+ export declare function extractCode(raw: string): string | undefined;
462
618
  export declare function extractDetail(raw: string, statusText: string): string;
package/dist/client.js CHANGED
@@ -16,13 +16,18 @@ export class TaskflowApiError extends Error {
16
16
  detail;
17
17
  method;
18
18
  path;
19
- constructor(method, path, status, detail) {
19
+ /** The backend's machine code when the body carried one (its `error` field,
20
+ * e.g. `cannot_delete_self`). A tool that must say something more specific
21
+ * than the human sentence keys off this — never off the sentence's wording. */
22
+ code;
23
+ constructor(method, path, status, detail, code) {
20
24
  super(`${method} ${path} → ${status}: ${detail}`);
21
25
  this.name = "TaskflowApiError";
22
26
  this.status = status;
23
27
  this.detail = detail;
24
28
  this.method = method;
25
29
  this.path = path;
30
+ this.code = code;
26
31
  }
27
32
  }
28
33
  const API_PREFIX = "/api/taskflow";
@@ -113,7 +118,7 @@ export class TaskflowClient {
113
118
  }
114
119
  const raw = await res.text();
115
120
  if (!res.ok) {
116
- throw new TaskflowApiError(method, path, res.status, extractDetail(raw, res.statusText));
121
+ throw new TaskflowApiError(method, path, res.status, extractDetail(raw, res.statusText), extractCode(raw));
117
122
  }
118
123
  if (!raw) {
119
124
  return undefined;
@@ -164,6 +169,52 @@ export class TaskflowClient {
164
169
  idempotent: true,
165
170
  });
166
171
  }
172
+ // ---- #617: the project toolbox -------------------------------------------
173
+ /** `GET /agents/toolbox` — the index. Never carries code. */
174
+ toolboxList(params = {}) {
175
+ return this.request("GET", `${API_PREFIX}/agents/toolbox`, {
176
+ query: { kind: params.kind, tag: params.tag, query: params.query },
177
+ idempotent: true,
178
+ });
179
+ }
180
+ /** `GET /agents/toolbox/{name}` — the full entry, code included. */
181
+ toolboxGet(name) {
182
+ return this.request("GET", `${API_PREFIX}/agents/toolbox/${encodeURIComponent(name)}`, { idempotent: true });
183
+ }
184
+ /** `POST /agents/toolbox/{name}` — create or update (the version gate is the
185
+ * server's: a stale `base_version` is a 409). */
186
+ toolboxSave(name, input) {
187
+ return this.request("POST", `${API_PREFIX}/agents/toolbox/${encodeURIComponent(name)}`, { body: input });
188
+ }
189
+ /** `POST /agents/toolbox/{name}/run` — record how a run went. */
190
+ toolboxReportRun(name, ok, note) {
191
+ return this.request("POST", `${API_PREFIX}/agents/toolbox/${encodeURIComponent(name)}/run`, {
192
+ body: { ok, note },
193
+ });
194
+ }
195
+ /** `POST /agents/toolbox/{name}/deprecate` — retire an entry, with a reason. */
196
+ toolboxDeprecate(name, reason) {
197
+ return this.request("POST", `${API_PREFIX}/agents/toolbox/${encodeURIComponent(name)}/deprecate`, {
198
+ body: { reason },
199
+ });
200
+ }
201
+ /** `GET /agents/toolbox/{name}/versions` — history + who vetted what. */
202
+ toolboxVersions(name) {
203
+ return this.request("GET", `${API_PREFIX}/agents/toolbox/${encodeURIComponent(name)}/versions`, {
204
+ idempotent: true,
205
+ });
206
+ }
207
+ /** `GET /agents/toolbox/{name}/versions/{version}` — one past version, with
208
+ * its code, so an update can be diffed before re-vetting. */
209
+ toolboxGetVersion(name, version) {
210
+ return this.request("GET", `${API_PREFIX}/agents/toolbox/${encodeURIComponent(name)}/versions/${version}`, { idempotent: true });
211
+ }
212
+ /** `POST /agents/toolbox/{name}/vet` — record an install's vetting note. */
213
+ toolboxVet(name, version, vettedBy, vettedNote) {
214
+ return this.request("POST", `${API_PREFIX}/agents/toolbox/${encodeURIComponent(name)}/vet`, {
215
+ body: { version, vetted_by: vettedBy, vetted_note: vettedNote },
216
+ });
217
+ }
167
218
  /** `GET /agents/activity?task=&limit=` — recent activity, newest first. */
168
219
  listActivity(params = {}) {
169
220
  return this.request("GET", `${API_PREFIX}/agents/activity`, {
@@ -189,6 +240,8 @@ export class TaskflowClient {
189
240
  form.set("is_design", "true");
190
241
  if (fields.reply_to !== undefined)
191
242
  form.set("reply_to", String(fields.reply_to));
243
+ if (fields.questions)
244
+ form.set("questions", JSON.stringify(fields.questions));
192
245
  for (const file of attachments) {
193
246
  // The server treats a part as a file only when it carries a non-empty
194
247
  // filename (views.rs:180-186), so the basename must be preserved.
@@ -254,6 +307,28 @@ export class TaskflowClient {
254
307
  body.body_markdown = bodyMarkdown;
255
308
  return this.request("POST", `${API_PREFIX}/tasks/${task}/agent/review`, { body });
256
309
  }
310
+ // ---- WRITES: agent management (#605, `agents:manage` scope) --------------
311
+ /** `POST /agents/agent/agents` — mint another agent in this project, with the
312
+ * same one-time key semantics as the dashboard link. The KEY calling this
313
+ * must carry the `agents:manage` scope (a plain key gets 403), and the key it
314
+ * mints never carries a scope itself: only a human owner/admin grants one. */
315
+ createAgent(input) {
316
+ return this.request("POST", `${API_PREFIX}/agents/agent/agents`, { body: input });
317
+ }
318
+ /** `PUT /agents/agent/agents/{id}/instructions` — replace a peer's role
319
+ * instructions (#615's write, agent-authed). `agents:manage` scope required;
320
+ * the agent must be in the caller's own project. */
321
+ setPeerInstructions(agent, markdown) {
322
+ return this.request("PUT", `${API_PREFIX}/agents/agent/agents/${agent}/instructions`, {
323
+ body: { markdown },
324
+ });
325
+ }
326
+ /** `DELETE /agents/agent/agents/{id}` — revoke a peer's identity (its keys,
327
+ * sessions and roster rows go with it). `agents:manage` required, and never
328
+ * the calling agent itself: the server refuses self-deletion with 403. */
329
+ deletePeer(agent) {
330
+ return this.request("DELETE", `${API_PREFIX}/agents/agent/agents/${agent}`, {});
331
+ }
257
332
  // ---- WRITES: sessions / frames / activity --------------------------------
258
333
  /** `POST /agents/sessions` — register or reconnect a live session. */
259
334
  registerSession(input) {
@@ -310,6 +385,59 @@ export class TaskflowClient {
310
385
  idempotent: true,
311
386
  });
312
387
  }
388
+ /** `POST /agents/design/rename-route` — #682: move a page's route, with
389
+ * every reference following it (links in other pages, flow order, groups,
390
+ * the label, arrows, pinned position). One lock hold, one response. */
391
+ designRenameRoute(project, from, to) {
392
+ return this.request("POST", `${API_PREFIX}/agents/design/rename-route`, {
393
+ body: { project, from, to },
394
+ });
395
+ }
396
+ /** `GET /agents/design/versions` — #520: every recorded version of one
397
+ * file, newest first, and each with the `project_revision` that orders the
398
+ * timeline. No content: designVersion reads the one version wanted. */
399
+ designVersions(project, path) {
400
+ return this.request("GET", `${API_PREFIX}/agents/design/versions`, {
401
+ query: { project, path },
402
+ idempotent: true,
403
+ });
404
+ }
405
+ /** `GET /agents/design/version` — #520: one recorded version's content. */
406
+ designVersion(project, path, version) {
407
+ return this.request("GET", `${API_PREFIX}/agents/design/version`, {
408
+ query: { project, path, version },
409
+ idempotent: true,
410
+ });
411
+ }
412
+ /** `POST /agents/design/restore-version` — #520: bring an old version back
413
+ * as a NEW write (validated, versioned, recorded — undoable in turn). */
414
+ designRestoreVersion(project, path, version) {
415
+ return this.request("POST", `${API_PREFIX}/agents/design/restore-version`, {
416
+ body: { project, path, version },
417
+ });
418
+ }
419
+ /** `GET /agents/design/search` — #664: find what the pages SAY.
420
+ *
421
+ * One call replaces reading every page to find a term: the server scans
422
+ * stored design files (pages tokenized so markup and class names are not
423
+ * copy; components whole), and answers which files mention it, where, and
424
+ * in what form — so a rename touches only the pages that carry it. */
425
+ designSearch(project, params) {
426
+ return this.request("GET", `${API_PREFIX}/agents/design/search`, {
427
+ query: {
428
+ project,
429
+ q: params.query,
430
+ ...(params.regex ? { regex: "true" } : {}),
431
+ ...(params.caseSensitive ? { case_sensitive: "true" } : {}),
432
+ ...(params.wholeWord === undefined ? {} : { whole_word: String(params.wholeWord) }),
433
+ ...(params.scope ? { scope: params.scope } : {}),
434
+ ...(params.in ? { in: params.in } : {}),
435
+ ...(params.cursor ? { cursor: params.cursor } : {}),
436
+ ...(params.limit ? { limit: String(params.limit) } : {}),
437
+ },
438
+ idempotent: true,
439
+ });
440
+ }
313
441
  /** `GET /agents/design/guide` — the design guide index, or one topic. */
314
442
  designGuide(topic) {
315
443
  return this.request("GET", `${API_PREFIX}/agents/design/guide`, {
@@ -460,6 +588,23 @@ export class TaskflowClient {
460
588
  * else the status line. Kept resilient — a malformed body must never mask the
461
589
  * real failure.
462
590
  */
591
+ /**
592
+ * The backend's machine code from a JSON error body, or undefined. Distinct
593
+ * from [`extractDetail`], which prefers the human sentence: a caller that must
594
+ * branch on WHICH error it got reads this, so it never has to match prose.
595
+ */
596
+ export function extractCode(raw) {
597
+ const trimmed = raw.trim();
598
+ if (!trimmed)
599
+ return undefined;
600
+ try {
601
+ const parsed = JSON.parse(trimmed);
602
+ return typeof parsed.error === "string" ? parsed.error : undefined;
603
+ }
604
+ catch {
605
+ return undefined;
606
+ }
607
+ }
463
608
  export function extractDetail(raw, statusText) {
464
609
  const trimmed = raw.trim();
465
610
  if (trimmed) {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}