agent-relay-sdk 0.2.11 → 0.2.13

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.
@@ -4,6 +4,12 @@ export interface HttpClientOptions {
4
4
  token?: string;
5
5
  timeout?: number;
6
6
  }
7
+ export interface TransportOptions {
8
+ /** External abort signal, combined (AbortSignal.any) with the internal timeout. */
9
+ signal?: AbortSignal;
10
+ /** Override the default request timeout (ms). `null` disables it — for streaming (SSE). */
11
+ timeoutMs?: number | null;
12
+ }
7
13
  export declare class RelayHttpError extends Error {
8
14
  readonly method: string;
9
15
  readonly path: string;
@@ -115,8 +121,20 @@ export declare class RelayHttpClient {
115
121
  }>;
116
122
  private json;
117
123
  private jsonUrl;
118
- private request;
119
- private requestRaw;
124
+ /**
125
+ * Generic transport escape hatch — issue a JSON request to any path and get the
126
+ * raw Response back (does NOT throw on non-2xx; callers inspect `.ok`). Shares
127
+ * this client's auth-header injection and timeout/abort. Use for endpoints
128
+ * without a typed method (orchestrator control API, connector routes, etc.).
129
+ */
130
+ request(method: string, pathOrUrl: string | URL, body?: unknown, opts?: TransportOptions): Promise<Response>;
131
+ /**
132
+ * Like {@link request} but sends a raw body (Blob/stream/FormData) with caller
133
+ * headers — used for artifact uploads and streaming (SSE) responses. Pass
134
+ * `{ timeoutMs: null }` to stream without the default abort timeout.
135
+ */
136
+ requestRaw(method: string, pathOrUrl: string | URL, body?: BodyInit, headers?: Record<string, string>, opts?: TransportOptions): Promise<Response>;
137
+ private fetchWithTimeout;
120
138
  private parseResponseForOk;
121
139
  private parseResponse;
122
140
  private headers;
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
@@ -235,31 +235,43 @@ export class RelayHttpClient {
235
235
  const response = await this.request(method, url, body);
236
236
  return this.parseResponse(response, method, url.pathname);
237
237
  }
238
- async request(method, pathOrUrl, body) {
239
- const controller = new AbortController();
240
- const timeout = setTimeout(() => controller.abort(), this.timeout);
241
- try {
242
- return await fetch(pathOrUrl instanceof URL ? pathOrUrl : this.url(pathOrUrl), {
243
- method,
244
- headers: this.headers(body === undefined ? undefined : { "Content-Type": "application/json" }),
245
- body: body === undefined ? undefined : JSON.stringify(body),
246
- signal: controller.signal,
247
- });
248
- }
249
- finally {
250
- clearTimeout(timeout);
251
- }
238
+ /**
239
+ * Generic transport escape hatch — issue a JSON request to any path and get the
240
+ * raw Response back (does NOT throw on non-2xx; callers inspect `.ok`). Shares
241
+ * this client's auth-header injection and timeout/abort. Use for endpoints
242
+ * without a typed method (orchestrator control API, connector routes, etc.).
243
+ */
244
+ async request(method, pathOrUrl, body, opts) {
245
+ return this.fetchWithTimeout(pathOrUrl, {
246
+ method,
247
+ headers: this.headers(body === undefined ? undefined : { "Content-Type": "application/json" }),
248
+ body: body === undefined ? undefined : JSON.stringify(body),
249
+ }, opts);
252
250
  }
253
- async requestRaw(method, pathOrUrl, body, headers = {}) {
251
+ /**
252
+ * Like {@link request} but sends a raw body (Blob/stream/FormData) with caller
253
+ * headers — used for artifact uploads and streaming (SSE) responses. Pass
254
+ * `{ timeoutMs: null }` to stream without the default abort timeout.
255
+ */
256
+ async requestRaw(method, pathOrUrl, body, headers = {}, opts) {
257
+ return this.fetchWithTimeout(pathOrUrl, {
258
+ method,
259
+ headers: this.headers(headers),
260
+ body,
261
+ }, opts);
262
+ }
263
+ async fetchWithTimeout(pathOrUrl, init, opts) {
264
+ const url = pathOrUrl instanceof URL ? pathOrUrl : this.url(pathOrUrl);
265
+ const timeoutMs = opts?.timeoutMs === undefined ? this.timeout : opts.timeoutMs;
266
+ if (timeoutMs === null) {
267
+ // Unbounded (e.g. SSE streams) — honor only an external abort signal.
268
+ return fetch(url, { ...init, signal: opts?.signal });
269
+ }
254
270
  const controller = new AbortController();
255
- const timeout = setTimeout(() => controller.abort(), this.timeout);
271
+ const timeout = setTimeout(() => controller.abort(), timeoutMs);
272
+ const signal = opts?.signal ? AbortSignal.any([opts.signal, controller.signal]) : controller.signal;
256
273
  try {
257
- return await fetch(pathOrUrl instanceof URL ? pathOrUrl : this.url(pathOrUrl), {
258
- method,
259
- headers: this.headers(headers),
260
- body,
261
- signal: controller.signal,
262
- });
274
+ return await fetch(url, { ...init, signal });
263
275
  }
264
276
  finally {
265
277
  clearTimeout(timeout);
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ export * from "./contracts.js";
3
3
  export * from "./provider-catalog.js";
4
4
  export * from "./protocol.js";
5
5
  export * from "./reconnect.js";
6
+ export * from "./sse.js";
6
7
  export * from "./http-client.js";
7
8
  export * from "./bus-client.js";
8
9
  export * from "./provider-base.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@ export * from "./contracts.js";
3
3
  export * from "./provider-catalog.js";
4
4
  export * from "./protocol.js";
5
5
  export * from "./reconnect.js";
6
+ export * from "./sse.js";
6
7
  export * from "./http-client.js";
7
8
  export * from "./bus-client.js";
8
9
  export * from "./provider-base.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Shared text → speech preparation, imported by both the dashboard
3
+ * (`dashboard/src/lib/voice.ts`) and the voice connector
4
+ * (`connectors/voice/src/text.ts`). Single source of truth — these rules used to
5
+ * live duplicated in both places and drifted.
6
+ *
7
+ * Two stages, applied in order by {@link prepareForSpeech}:
8
+ * 1. {@link speechify} — collapse markdown/code structure into prose worth hearing.
9
+ * 2. {@link normalizeForSpeech} — rule-based normalization of inline tokens
10
+ * (numbers, units, symbols, code identifiers, paths) so the speech engine
11
+ * reads them naturally.
12
+ *
13
+ * Why both, and why here: the server-side Kokoro engine (agent-speech) already
14
+ * normalizes some of this internally (number ranges, decimals, currency) via its
15
+ * phonemizer — but that normalization does NOT run for the browser Web Speech
16
+ * fallback, and the dashboard's own sentence splitter trips on decimals before
17
+ * the engine ever sees them. Normalizing here fixes the browser path and protects
18
+ * the splitter; feeding already-normalized text to Kokoro is harmless (idempotent).
19
+ */
20
+ /** Collapse markdown/code into something worth hearing. */
21
+ export declare function speechify(markdown: string): string;
22
+ /**
23
+ * One normalization rule. Each is a single regex + replacement — add a new one
24
+ * by appending an entry. Order matters: earlier rules see the raw text, later
25
+ * rules see the output of earlier ones (see the ordering notes in SPEECH_RULES).
26
+ */
27
+ export interface SpeechRule {
28
+ readonly name: string;
29
+ readonly pattern: RegExp;
30
+ readonly replace: string | ((substring: string, ...args: string[]) => string);
31
+ }
32
+ /**
33
+ * Ordered normalization rules. ORDER IS LOAD-BEARING:
34
+ * - URLs/paths first, before anything mangles their slashes/dots.
35
+ * - `~` → "approximately" before number rules consume the digits after it.
36
+ * - number ranges ("5-7") before unit expansion, so the unit attaches once: "5 to 7 seconds".
37
+ * - decimals before unit expansion and before the sentence splitter sees the dot.
38
+ * - unit expansion last among the number rules.
39
+ */
40
+ export declare const SPEECH_RULES: readonly SpeechRule[];
41
+ /**
42
+ * Apply the inline normalization rules in order. Pure and idempotent enough to
43
+ * feed straight into either the Kokoro engine or the browser Web Speech API.
44
+ */
45
+ export declare function normalizeForSpeech(text: string): string;
46
+ /** Full pipeline: markdown → prose → normalized speech text. */
47
+ export declare function prepareForSpeech(markdown: string): string;
48
+ //# sourceMappingURL=speech-text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"speech-text.d.ts","sourceRoot":"","sources":["../src/speech-text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,2DAA2D;AAC3D,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgClD;AAqDD;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC,CAAA;CAC9E;AAgBD;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EA0B7C,CAAA;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQvD;AAED,gEAAgE;AAChE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEzD"}
@@ -0,0 +1,162 @@
1
+ /**
2
+ * Shared text → speech preparation, imported by both the dashboard
3
+ * (`dashboard/src/lib/voice.ts`) and the voice connector
4
+ * (`connectors/voice/src/text.ts`). Single source of truth — these rules used to
5
+ * live duplicated in both places and drifted.
6
+ *
7
+ * Two stages, applied in order by {@link prepareForSpeech}:
8
+ * 1. {@link speechify} — collapse markdown/code structure into prose worth hearing.
9
+ * 2. {@link normalizeForSpeech} — rule-based normalization of inline tokens
10
+ * (numbers, units, symbols, code identifiers, paths) so the speech engine
11
+ * reads them naturally.
12
+ *
13
+ * Why both, and why here: the server-side Kokoro engine (agent-speech) already
14
+ * normalizes some of this internally (number ranges, decimals, currency) via its
15
+ * phonemizer — but that normalization does NOT run for the browser Web Speech
16
+ * fallback, and the dashboard's own sentence splitter trips on decimals before
17
+ * the engine ever sees them. Normalizing here fixes the browser path and protects
18
+ * the splitter; feeding already-normalized text to Kokoro is harmless (idempotent).
19
+ */
20
+ // ─── Stage 1: markdown/code → prose ──────────────────────────────────────────
21
+ /** Collapse markdown/code into something worth hearing. */
22
+ export function speechify(markdown) {
23
+ if (!markdown)
24
+ return '';
25
+ let text = markdown.replace(/\r\n/g, '\n');
26
+ // Fenced code blocks → "code block, N lines."
27
+ text = text.replace(/```[^\n]*\n([\s\S]*?)```/g, (_m, body) => {
28
+ const lines = body.replace(/\n+$/, '').split('\n').length;
29
+ return ` code block, ${lines} ${lines === 1 ? 'line' : 'lines'}. `;
30
+ });
31
+ // Any unterminated fence left over → drop the marker.
32
+ text = text.replace(/```[^\n]*/g, ' code block. ');
33
+ // Markdown tables → a spoken summary (must run before newlines collapse).
34
+ text = collapseTables(text);
35
+ // Strip ATX heading markers but keep the heading text.
36
+ text = text.replace(/^#{1,6}\s+/gm, '');
37
+ // Bullet/numbered list markers → pause.
38
+ text = text.replace(/^\s*[-*+]\s+/gm, '. ');
39
+ text = text.replace(/^\s*\d+\.\s+/gm, '. ');
40
+ // Inline code → keep the contents, drop the backticks.
41
+ text = text.replace(/`([^`]+)`/g, '$1');
42
+ // Markdown links [label](url) → just the label.
43
+ text = text.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1');
44
+ // Bold/italic emphasis markers.
45
+ text = text.replace(/(\*\*|__|\*|_)(.*?)\1/g, '$2');
46
+ // Collapse whitespace runs and stray punctuation pile-ups.
47
+ text = text.replace(/[ \t]+/g, ' ');
48
+ text = text.replace(/\n{2,}/g, '. ');
49
+ text = text.replace(/\s*\.\s*\.\s*(\.\s*)+/g, '. ');
50
+ return text.trim();
51
+ }
52
+ /** A markdown table row: `| a | b |` or `a | b`. The separator row is `|---|:-:|`. */
53
+ function isTableRow(line) {
54
+ return /\|/.test(line) && line.trim().length > 0;
55
+ }
56
+ function isTableSeparator(line) {
57
+ return /^\s*\|?\s*:?-{2,}:?\s*(\|\s*:?-{2,}:?\s*)+\|?\s*$/.test(line);
58
+ }
59
+ function tableCells(line) {
60
+ return line
61
+ .trim()
62
+ .replace(/^\||\|$/g, '')
63
+ .split('|')
64
+ .map((c) => c.trim())
65
+ .filter((c) => c.length > 0);
66
+ }
67
+ /**
68
+ * Replace contiguous markdown tables with a spoken summary
69
+ * ("table with columns A, B, C; N rows.") rather than reading pipes and cells.
70
+ */
71
+ function collapseTables(text) {
72
+ const lines = text.split('\n');
73
+ const out = [];
74
+ let i = 0;
75
+ while (i < lines.length) {
76
+ if (isTableRow(lines[i]) &&
77
+ i + 1 < lines.length &&
78
+ isTableSeparator(lines[i + 1])) {
79
+ const headers = tableCells(lines[i]);
80
+ let j = i + 2;
81
+ let rows = 0;
82
+ while (j < lines.length && isTableRow(lines[j]) && !isTableSeparator(lines[j])) {
83
+ rows++;
84
+ j++;
85
+ }
86
+ const cols = headers.length ? `with columns ${headers.join(', ')}` : '';
87
+ const rowText = `${rows} ${rows === 1 ? 'row' : 'rows'}`;
88
+ out.push(`table ${cols ? `${cols}, ` : ''}${rowText}.`.replace(/\s+/g, ' ').trim());
89
+ i = j;
90
+ continue;
91
+ }
92
+ out.push(lines[i]);
93
+ i++;
94
+ }
95
+ return out.join('\n');
96
+ }
97
+ const UNIT_WORDS = {
98
+ ms: 'milliseconds',
99
+ s: 'seconds',
100
+ kb: 'kilobytes',
101
+ mb: 'megabytes',
102
+ gb: 'gigabytes',
103
+ tb: 'terabytes',
104
+ };
105
+ /** Spell out a fractional part digit-by-digit: "14" → "1 4" (so "3.14" → "3 point 1 4"). */
106
+ function spaceDigits(frac) {
107
+ return frac.split('').join(' ');
108
+ }
109
+ /**
110
+ * Ordered normalization rules. ORDER IS LOAD-BEARING:
111
+ * - URLs/paths first, before anything mangles their slashes/dots.
112
+ * - `~` → "approximately" before number rules consume the digits after it.
113
+ * - number ranges ("5-7") before unit expansion, so the unit attaches once: "5 to 7 seconds".
114
+ * - decimals before unit expansion and before the sentence splitter sees the dot.
115
+ * - unit expansion last among the number rules.
116
+ */
117
+ export const SPEECH_RULES = [
118
+ // Bare URLs read character-by-character → say "link".
119
+ { name: 'url', pattern: /\bhttps?:\/\/\S+/gi, replace: ' link ' },
120
+ // Absolute-ish paths ("/api/connectors/voice") → spoken words.
121
+ {
122
+ name: 'path',
123
+ pattern: /(?:\/[A-Za-z0-9._-]+){2,}\/?/g,
124
+ replace: (m) => ' ' + m.replace(/[/._-]+/g, ' ').trim() + ' ',
125
+ },
126
+ // Empty-paren code identifiers ("fetchSpeech()") → drop the parens.
127
+ { name: 'func-call', pattern: /\b([A-Za-z_$][\w$]*)\(\)/g, replace: '$1' },
128
+ // Approximation tilde ("~0.1", "~5") → "approximately".
129
+ { name: 'approx', pattern: /~(?=\s*[\d.])/g, replace: 'approximately ' },
130
+ // Numeric ranges ("5-7", "100–200") → "X to Y".
131
+ { name: 'range', pattern: /(\d)\s*[-–—]\s*(?=\d)/g, replace: '$1 to ' },
132
+ // Decimals ("0.1", "3.14") → "0 point 1" so the sentence splitter keeps them whole.
133
+ { name: 'decimal', pattern: /\b(\d+)\.(\d+)\b/g, replace: (_m, i, f) => `${i} point ${spaceDigits(f)}` },
134
+ // Byte units ("165KB", "2 MB") → spelled out (case-insensitive).
135
+ {
136
+ name: 'byte-unit',
137
+ pattern: /\b(\d+)\s?(kb|mb|gb|tb)\b/gi,
138
+ replace: (_m, n, u) => `${n} ${UNIT_WORDS[u.toLowerCase()]}`,
139
+ },
140
+ // Time units ("500ms", "5s") → spelled out. Guard against 4-digit years for "s".
141
+ { name: 'ms-unit', pattern: /\b(\d{1,5})\s?ms\b/g, replace: (_m, n) => `${n} ${UNIT_WORDS.ms}` },
142
+ { name: 's-unit', pattern: /\b(\d{1,3})\s?s\b/g, replace: (_m, n) => `${n} ${UNIT_WORDS.s}` },
143
+ ];
144
+ /**
145
+ * Apply the inline normalization rules in order. Pure and idempotent enough to
146
+ * feed straight into either the Kokoro engine or the browser Web Speech API.
147
+ */
148
+ export function normalizeForSpeech(text) {
149
+ if (!text)
150
+ return '';
151
+ let out = text;
152
+ for (const rule of SPEECH_RULES) {
153
+ out = out.replace(rule.pattern, rule.replace);
154
+ }
155
+ // Tidy any double spaces the rules introduced.
156
+ return out.replace(/[ \t]{2,}/g, ' ').trim();
157
+ }
158
+ /** Full pipeline: markdown → prose → normalized speech text. */
159
+ export function prepareForSpeech(markdown) {
160
+ return normalizeForSpeech(speechify(markdown));
161
+ }
162
+ //# sourceMappingURL=speech-text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"speech-text.js","sourceRoot":"","sources":["../src/speech-text.ts"],"names":[],"mappings":"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"}
package/dist/sse.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ export interface ParsedSseFrame {
2
+ /** Event name; defaults to "message" per the SSE spec when no `event:` field. */
3
+ event: string;
4
+ /** Each `data:` line, in order. Join with "\n" to reconstruct the payload. */
5
+ data: string[];
6
+ /** A `retry:` reconnect hint in ms, when present and ≥ 1000. */
7
+ retry?: number;
8
+ }
9
+ /**
10
+ * Parse a single SSE frame — the text between blank-line (`\n\n`) separators —
11
+ * into its event name, data lines, and optional retry hint. Spec-compliant
12
+ * field parsing: normalises CRLF, skips comment (`:`-prefixed) lines, splits each
13
+ * line at the first colon, and strips one leading space from the value.
14
+ */
15
+ export declare function parseSseFrame(frame: string): ParsedSseFrame;
16
+ //# sourceMappingURL=sse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../src/sse.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,iFAAiF;IACjF,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAkB3D"}
package/dist/sse.js ADDED
@@ -0,0 +1,35 @@
1
+ // Shared Server-Sent-Events frame parsing. Pure string work, no node: deps —
2
+ // safe to import in the browser (dashboard) as well as node/bun consumers
3
+ // (voice connector). One home for the `event:`/`data:`/`retry:` field parse
4
+ // that was hand-rolled in connectors/voice and dashboard/src/lib/api.ts.
5
+ /**
6
+ * Parse a single SSE frame — the text between blank-line (`\n\n`) separators —
7
+ * into its event name, data lines, and optional retry hint. Spec-compliant
8
+ * field parsing: normalises CRLF, skips comment (`:`-prefixed) lines, splits each
9
+ * line at the first colon, and strips one leading space from the value.
10
+ */
11
+ export function parseSseFrame(frame) {
12
+ let event = "message";
13
+ const data = [];
14
+ let retry;
15
+ for (const rawLine of frame.replace(/\r\n/g, "\n").split("\n")) {
16
+ if (!rawLine || rawLine.startsWith(":"))
17
+ continue; // blank or keepalive comment
18
+ const sep = rawLine.indexOf(":");
19
+ const field = sep >= 0 ? rawLine.slice(0, sep) : rawLine;
20
+ let value = sep >= 0 ? rawLine.slice(sep + 1) : "";
21
+ if (value.startsWith(" "))
22
+ value = value.slice(1);
23
+ if (field === "event")
24
+ event = value;
25
+ else if (field === "data")
26
+ data.push(value);
27
+ else if (field === "retry") {
28
+ const next = Number(value);
29
+ if (Number.isFinite(next) && next >= 1000)
30
+ retry = next;
31
+ }
32
+ }
33
+ return { event, data, retry };
34
+ }
35
+ //# sourceMappingURL=sse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sse.js","sourceRoot":"","sources":["../src/sse.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,0EAA0E;AAC1E,4EAA4E;AAC5E,yEAAyE;AAWzE;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,IAAI,KAAK,GAAG,SAAS,CAAC;IACtB,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,KAAyB,CAAC;IAC9B,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS,CAAC,6BAA6B;QAChF,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACzD,IAAI,KAAK,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,OAAO;YAAE,KAAK,GAAG,KAAK,CAAC;aAChC,IAAI,KAAK,KAAK,MAAM;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACvC,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI;gBAAE,KAAK,GAAG,IAAI,CAAC;QAC1D,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAChC,CAAC"}
package/dist/types.d.ts CHANGED
@@ -15,6 +15,10 @@ export interface AgentCard {
15
15
  providerCapabilities?: ProviderCapabilities;
16
16
  context?: ContextState;
17
17
  meta?: Record<string, unknown>;
18
+ /** Agent id of the parent that spawned this one (set authoritatively from the child's
19
+ * signed runner token at registration). Absent for top-level/user/system agents. Powers
20
+ * spawn quotas, the `spawnedBy:` search filter, scoped shutdown, and the no-grandchild gate. */
21
+ spawnedBy?: string;
18
22
  lastSeen: number;
19
23
  createdAt: number;
20
24
  }
@@ -576,6 +580,9 @@ export interface RegisterAgentInput {
576
580
  providerCapabilities?: ProviderCapabilities;
577
581
  context?: ContextState;
578
582
  meta?: Record<string, unknown>;
583
+ /** Parent agent id. Server sets this authoritatively from the registering token's
584
+ * `spawnedBy`/`parentAgents` constraint; any client-supplied value is ignored. */
585
+ spawnedBy?: string;
579
586
  }
580
587
  export interface AgentSessionGuard {
581
588
  instanceId?: string;
@@ -1102,6 +1109,12 @@ export interface WorkspaceMergePreview {
1102
1109
  baseRef?: string;
1103
1110
  /** Human-readable reason a merge can't proceed (no work, dirty, missing). */
1104
1111
  reason?: string;
1112
+ /** True when there is nothing to land: ahead=0 with a clean worktree (branch tree
1113
+ * already in base — never diverged, or already landed via squash/cherry-pick/PR).
1114
+ * A no-op land resolves the workspace to a terminal state instead of parking it in
1115
+ * the steward queue (#230). Distinct from a dirty-worktree refusal, which also sets
1116
+ * `reason` but is not a no-op. */
1117
+ noop?: boolean;
1105
1118
  /** Set when the worktree path no longer exists. */
1106
1119
  missing?: boolean;
1107
1120
  /** Populated when git interrogation failed. */
@@ -1114,6 +1127,10 @@ export interface WorkspaceMergeResult {
1114
1127
  strategy: "pr" | "rebase-ff";
1115
1128
  /** True when work was landed locally (rebase-ff into base). */
1116
1129
  merged: boolean;
1130
+ /** True when the land was a no-op — nothing to merge (ahead=0, clean worktree),
1131
+ * resolved to a terminal `merged` status to clear the steward queue (#230). The
1132
+ * worktree/branch are reclaimed too when the owner is gone (`deleteBranch`). */
1133
+ noop?: boolean;
1117
1134
  /** True when a merge was prevented by conflicts. */
1118
1135
  conflict?: boolean;
1119
1136
  /** PR URL when the pr strategy opened one. */
@@ -1350,6 +1367,11 @@ export interface AgentProfileAssetRef {
1350
1367
  provider?: AgentProfileProvider;
1351
1368
  meta?: Record<string, unknown>;
1352
1369
  }
1370
+ export interface AgentProfileProviderOptions extends Record<string, unknown> {
1371
+ codex?: {
1372
+ toolOutputTokenLimit?: number | null;
1373
+ } & Record<string, unknown>;
1374
+ }
1353
1375
  export interface AgentProfile {
1354
1376
  name: string;
1355
1377
  description?: string;
@@ -1383,7 +1405,13 @@ export interface AgentProfile {
1383
1405
  filesystem: AgentProfileFilesystemScope;
1384
1406
  };
1385
1407
  env: Record<string, string>;
1386
- providerOptions: Record<string, unknown>;
1408
+ providerOptions: AgentProfileProviderOptions;
1409
+ /** Spawn quota for agents granted this profile: max concurrent LIVE children they may
1410
+ * have at once. `0`/undefined = cannot spawn (the strict default). `N` = up to N live
1411
+ * children; a child exiting frees a slot. Drives both the minted token's `command:spawn`
1412
+ * scope (granted iff `> 0`) and the runtime quota count. Children never inherit it
1413
+ * (no grandchildren). */
1414
+ maxSpawnedAgents?: number;
1387
1415
  }
1388
1416
  export type AgentProfileProjectionResult = "applied" | "partial" | "unsupported" | "not-applicable";
1389
1417
  export interface AgentProfileProjectionEntry {
@@ -1885,6 +1913,12 @@ export interface TokenConstraints {
1885
1913
  agents?: string[];
1886
1914
  policies?: string[];
1887
1915
  parentAgents?: string[];
1916
+ /** Parent agent id stamped on a child's runner token at spawn; read at registration to
1917
+ * set the child agent card's `spawnedBy` authoritatively (the child can't forge it). */
1918
+ spawnedBy?: string;
1919
+ /** Spawn quota (max concurrent live children) baked into a spawn-capable agent's token,
1920
+ * resolved from its profile's `maxSpawnedAgents`. The runtime quota check reads it here. */
1921
+ maxSpawnedAgents?: number;
1888
1922
  targets?: string[];
1889
1923
  channels?: string[];
1890
1924
  orchestrators?: string[];