@automatalabs/acp-agents 0.24.9 → 0.25.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.
- package/README.md +9 -7
- package/dist/acp-client.d.ts +2 -32
- package/dist/acp-client.d.ts.map +1 -1
- package/dist/acp-client.js +3 -167
- package/dist/backend.d.ts +2 -3
- package/dist/backend.d.ts.map +1 -1
- package/dist/interactive.d.ts +3 -3
- package/dist/interactive.d.ts.map +1 -1
- package/dist/registry.d.ts +4 -5
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +11 -14
- package/dist/runner.d.ts +4 -6
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +38 -81
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -32,14 +32,14 @@ try {
|
|
|
32
32
|
risk: Type.Union([Type.Literal("low"), Type.Literal("high")]),
|
|
33
33
|
summary: Type.String(),
|
|
34
34
|
}),
|
|
35
|
-
model: "
|
|
35
|
+
model: "claude/sonnet", // verified Claude harness id
|
|
36
36
|
cwd: "/abs/path/to/worktree", // ACP session/new { cwd } — absolute
|
|
37
37
|
});
|
|
38
38
|
console.log(review.risk, review.summary);
|
|
39
39
|
|
|
40
40
|
// No schema: result is the final assistant text.
|
|
41
41
|
const text = await runner.run("Explain this repo in one paragraph.", {
|
|
42
|
-
model: "
|
|
42
|
+
model: "codex/gpt-5.6-luna", // verified Codex harness id
|
|
43
43
|
cwd: "/abs/path/to/worktree",
|
|
44
44
|
});
|
|
45
45
|
console.log(text);
|
|
@@ -50,6 +50,8 @@ try {
|
|
|
50
50
|
|
|
51
51
|
`run()` accepts the full `RunOptions` seam: `schema`, `model`, `mode`, `tier`, `cwd`, `instructions`, `label`, `signal` (cancellation), `toolNames` / `disallowedToolNames`, `maxSchemaRetries`, `mcpServers`, `images` (see below), `runId`, `backends`, `meta` / `promptMeta`, `baseInstructions` / `developerInstructions` (Codex-only, see below), `keepSession`, `onSessionOpen`, `onUsage`, `onModelResolved`, `onModelFallback`, and `onHistory`. See `@automatalabs/shared-types` for the field-by-field contract.
|
|
52
52
|
|
|
53
|
+
Model routing uses only the first `/`-delimited segment. An ASCII-case-insensitive `claude`, `codex`, `opencode`, or registered custom name selects that harness and is stripped exactly once; custom registrations win on collision. A harness name alone is backend-only and issues no model config call. Otherwise the whole string goes unchanged to `AGENTPRISM_DEFAULT_BACKEND` (default `claude`). Any remaining id is sent byte-for-byte as `configId: "model"`: catalogs are not matched, brackets and provider prefixes are ordinary characters, no sibling effort/Fast option is driven, and harness errors propagate through the normal agent-error path. Live-catalog-verified examples are `claude/opus[1m]`, `codex/gpt-5.6-sol`, and `opencode/zai/glm-5.2`; use backend-only forms for harness-configured models.
|
|
54
|
+
|
|
53
55
|
### Image attachments (`images`)
|
|
54
56
|
|
|
55
57
|
`images` appends base64 image `ContentBlock`s to the first prompt turn. The client adapts content to what the connected agent advertised at `initialize`: when the agent does not advertise `promptCapabilities.image`, each attachment degrades to a bracketed text note naming the mime type (never an error, never silently dropped). Repair/re-prompt turns stay text-only.
|
|
@@ -72,7 +74,7 @@ They ride ACP `session/new` `_meta` as bare keys and are threaded into the Codex
|
|
|
72
74
|
|
|
73
75
|
```ts
|
|
74
76
|
await runner.run("Cut the release.", {
|
|
75
|
-
model: "
|
|
77
|
+
model: "codex/gpt-5.6-sol",
|
|
76
78
|
cwd: "/abs/path/to/worktree",
|
|
77
79
|
baseInstructions: "You are a release bot. Only touch CHANGELOG.md.",
|
|
78
80
|
developerInstructions: "Prefer conventional-commit summaries.",
|
|
@@ -110,7 +112,7 @@ const runner = createAcpRunner();
|
|
|
110
112
|
|
|
111
113
|
try {
|
|
112
114
|
const session = await runner.openSession({
|
|
113
|
-
model: "
|
|
115
|
+
model: "claude/sonnet",
|
|
114
116
|
cwd: "/abs/path/to/worktree",
|
|
115
117
|
onPermissionRequest: async (request) => choosePermission(request),
|
|
116
118
|
});
|
|
@@ -181,9 +183,9 @@ From [`src/index.ts`](./src/index.ts):
|
|
|
181
183
|
- **Session lifecycle methods** — `listSessions()`, `deleteSession()`, `loadSession()`, `resumeSession()`, and `forkSession()` for backends that advertise session persistence; see [docs/api.md](../../docs/api.md).
|
|
182
184
|
- **`InteractiveSession` / `InteractiveSessionOptions` / `InteractiveTurn`** — the held-open multi-turn session surface returned by `openSession()`.
|
|
183
185
|
- **`AcpRunnerOptions.onElicitation`** — runner-wide ACP elicitation responder; sessions can override with `InteractiveSessionOptions.onElicitation`.
|
|
184
|
-
- **`selectBackend({ model, tier }, registry?)`** —
|
|
186
|
+
- **`selectBackend({ model, tier }, registry?)`** — deterministic first-segment routing; registered custom names take priority, then the three built-ins, otherwise the configured default.
|
|
185
187
|
- **`ClaudeBackend` / `CodexBackend` / `OpenCodeBackend`** — the three built-in backend strategies (spawn config + per-backend schema/auth wiring). OpenCode is host-resolved rather than bundled.
|
|
186
|
-
- **`CustomAcpBackend` / `resolveBackendRegistry` / `BACKENDS_ENV`** — the custom-backend registry: run **any** ACP agent as a named backend via `createAcpRunner({ backends: { name: { command, args?, env?, sessionMeta?, customCapabilities? } } })` or the `AGENTPRISM_BACKENDS` env var (JSON, same shape; the option wins per name;
|
|
188
|
+
- **`CustomAcpBackend` / `resolveBackendRegistry` / `BACKENDS_ENV`** — the custom-backend registry: run **any** ACP agent as a named backend via `createAcpRunner({ backends: { name: { command, args?, env?, sessionMeta?, customCapabilities? } } })` or the `AGENTPRISM_BACKENDS` env var (JSON, same shape; the option wins per name; names may shadow built-ins). Custom backends carry a `schema` as turn-level `_meta.outputSchema` and read the result off the final message as JSON. `customCapabilities: { namespace, gatedKeys }` declares the agent's `agentCapabilities._meta` negotiation contract: once the agent advertises that namespace, each declared bare `_meta` key is sent only when its same-named flag is `true` (no declaration = never gated).
|
|
187
189
|
- **Auth contracts and lifecycle** — `AuthStore`, `BackendAuthMachine`, `buildAuthDescriptors`, the built-in auth profiles, and the `AuthContext` / `AuthResolution` / `AuthMethodDescriptor` / `AuthCapableRunner` types.
|
|
188
190
|
- **`PermissionResolver`** — async human-in-the-loop permission resolution for runner-wide or interactive sessions.
|
|
189
191
|
- **`clientCapabilitiesFor` + the `ClientHandlers` / `FsHandlers` / `TerminalHandlers` / `AcpSessionContext` types** — the client-side fs/terminal interposition surface (see above).
|
|
@@ -197,7 +199,7 @@ Also exported: `AcpAgentPool` / `resolvePoolSize`, `PooledConnection` / `Session
|
|
|
197
199
|
|
|
198
200
|
| Variable | Effect |
|
|
199
201
|
| --- | --- |
|
|
200
|
-
| `AGENTPRISM_DEFAULT_BACKEND` | Backend
|
|
202
|
+
| `AGENTPRISM_DEFAULT_BACKEND` | Backend for specs whose first segment is not registered (`codex` selects Codex; a registered custom name selects that backend; anything else is Claude). |
|
|
201
203
|
| `AGENTPRISM_BACKENDS` | Custom ACP backends as JSON: `{"<name>": {"command": "…", "args": […], "env": {…}, "sessionMeta": {…}, "customCapabilities": {"namespace": "…", "gatedKeys": […]}}}`. |
|
|
202
204
|
| `AGENTPRISM_ACP_INIT_TIMEOUT_MS` | Deadline (default `60000`) for a backend's one-time ACP `initialize` handshake — a non-ACP command fails fast instead of hanging. |
|
|
203
205
|
| `AGENTPRISM_ACP_POOL_SIZE` | Long-lived processes to keep per backend (default `1`). |
|
package/dist/acp-client.d.ts
CHANGED
|
@@ -324,38 +324,8 @@ export declare class SessionHandle implements StructuredSource {
|
|
|
324
324
|
get modes(): SessionModeState | null | undefined;
|
|
325
325
|
/** The connection-level initialize response parsed before this session was opened. */
|
|
326
326
|
get capabilities(): NegotiatedCapabilities | undefined;
|
|
327
|
-
/**
|
|
328
|
-
|
|
329
|
-
* Returns `matched:false` (the caller fires onModelFallback) when the catalog has no value
|
|
330
|
-
* matching the spec, leaving the session default in place.
|
|
331
|
-
*
|
|
332
|
-
* Beyond the `model` select, this also drives the sibling config options the catalog may
|
|
333
|
-
* advertise (codex-acp), decoded from the `model[effort]` spec encoding:
|
|
334
|
-
* - `reasoning_effort` (id "reasoning_effort" / category "thought_level"): set to the
|
|
335
|
-
* bracketed effort token, e.g. `gpt-5.1-codex[high]` -> "high".
|
|
336
|
-
* - Fast mode (id "fast-mode" / category "fast-mode"): turned on when the bracket carries
|
|
337
|
-
* a `fast` token.
|
|
338
|
-
* Each is best-effort and advertise-gated: when the catalog does not expose the option, or
|
|
339
|
-
* the requested value is not among its choices, the modifier is NOT applied — but, unlike
|
|
340
|
-
* before, that silent no-op is now SURFACED. `modifierFallbacks` lists a descriptor for every
|
|
341
|
-
* requested effort/Fast value that could not be applied, so the caller can fire the same
|
|
342
|
-
* onModelFallback channel model selection uses (incorrect tiering becomes observable). It
|
|
343
|
-
* stays best-effort: an unmet modifier is reported, never thrown.
|
|
344
|
-
*/
|
|
345
|
-
selectModel(spec: string): Promise<{
|
|
346
|
-
matched: boolean;
|
|
347
|
-
resolved?: string;
|
|
348
|
-
modifierFallbacks?: string[];
|
|
349
|
-
}>;
|
|
350
|
-
/**
|
|
351
|
-
* Drive reasoning_effort + Fast-mode from the `model[effort]` spec bracket, when advertised.
|
|
352
|
-
* Returns a descriptor for each requested modifier that could NOT be applied because the
|
|
353
|
-
* catalog does not advertise the option or the requested value — the symmetric signal to
|
|
354
|
-
* model fallback, so the no-op is observable rather than silent. When the resolved model id
|
|
355
|
-
* already ENCODES the bracket (e.g. a `gpt-5-codex[high]` catalog value), the effort is
|
|
356
|
-
* carried by the model select itself, so it is treated as satisfied (no fallback).
|
|
357
|
-
*/
|
|
358
|
-
private applyModelModifiers;
|
|
327
|
+
/** Pass the routed model id straight to the agent. Its catalog and validation are authoritative. */
|
|
328
|
+
selectModel(spec: string): Promise<void>;
|
|
359
329
|
/** Set one session config option via the wire method and adopt the echoed catalog.
|
|
360
330
|
* A boolean value drives a `type: "boolean"` option (the request must carry the type
|
|
361
331
|
* discriminator on the wire); a string value drives a select option. */
|
package/dist/acp-client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-client.d.ts","sourceRoot":"","sources":["../src/acp-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"acp-client.d.ts","sourceRoot":"","sources":["../src/acp-client.ts"],"names":[],"mappings":"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"}
|
package/dist/acp-client.js
CHANGED
|
@@ -31,7 +31,7 @@ import { UsageAccumulator } from "./usage.js";
|
|
|
31
31
|
import { clientCapabilitiesFor, hasFullMcpHandlers, } from "./client-handlers.js";
|
|
32
32
|
import { redactSecrets, } from "./auth/auth-store.js";
|
|
33
33
|
/** A benign client identity. NOT JetBrains/IntelliJ 2026.1 — that exact identity makes
|
|
34
|
-
* codex-acp disable session config options (
|
|
34
|
+
* codex-acp disable session config options (including the model-selection channel). */
|
|
35
35
|
const CLIENT_INFO = {
|
|
36
36
|
name: "agentprism-workflows",
|
|
37
37
|
title: "AgentPrism Workflows",
|
|
@@ -1443,96 +1443,9 @@ export class SessionHandle {
|
|
|
1443
1443
|
get capabilities() {
|
|
1444
1444
|
return this.pooled.capabilities;
|
|
1445
1445
|
}
|
|
1446
|
-
/**
|
|
1447
|
-
* Select the model for this session from the agent-advertised config options (§5.4).
|
|
1448
|
-
* Returns `matched:false` (the caller fires onModelFallback) when the catalog has no value
|
|
1449
|
-
* matching the spec, leaving the session default in place.
|
|
1450
|
-
*
|
|
1451
|
-
* Beyond the `model` select, this also drives the sibling config options the catalog may
|
|
1452
|
-
* advertise (codex-acp), decoded from the `model[effort]` spec encoding:
|
|
1453
|
-
* - `reasoning_effort` (id "reasoning_effort" / category "thought_level"): set to the
|
|
1454
|
-
* bracketed effort token, e.g. `gpt-5.1-codex[high]` -> "high".
|
|
1455
|
-
* - Fast mode (id "fast-mode" / category "fast-mode"): turned on when the bracket carries
|
|
1456
|
-
* a `fast` token.
|
|
1457
|
-
* Each is best-effort and advertise-gated: when the catalog does not expose the option, or
|
|
1458
|
-
* the requested value is not among its choices, the modifier is NOT applied — but, unlike
|
|
1459
|
-
* before, that silent no-op is now SURFACED. `modifierFallbacks` lists a descriptor for every
|
|
1460
|
-
* requested effort/Fast value that could not be applied, so the caller can fire the same
|
|
1461
|
-
* onModelFallback channel model selection uses (incorrect tiering becomes observable). It
|
|
1462
|
-
* stays best-effort: an unmet modifier is reported, never thrown.
|
|
1463
|
-
*/
|
|
1446
|
+
/** Pass the routed model id straight to the agent. Its catalog and validation are authoritative. */
|
|
1464
1447
|
async selectModel(spec) {
|
|
1465
|
-
|
|
1466
|
-
if (!option)
|
|
1467
|
-
return { matched: false };
|
|
1468
|
-
const values = flattenSelectOptions(option.options);
|
|
1469
|
-
const target = matchModelValue(values, spec);
|
|
1470
|
-
if (!target)
|
|
1471
|
-
return { matched: false };
|
|
1472
|
-
if (option.currentValue !== target.value) {
|
|
1473
|
-
await this.applyConfigOption(option.id, target.value);
|
|
1474
|
-
}
|
|
1475
|
-
const modifierFallbacks = await this.applyModelModifiers(spec, target.value);
|
|
1476
|
-
return { matched: true, resolved: target.value, modifierFallbacks };
|
|
1477
|
-
}
|
|
1478
|
-
/**
|
|
1479
|
-
* Drive reasoning_effort + Fast-mode from the `model[effort]` spec bracket, when advertised.
|
|
1480
|
-
* Returns a descriptor for each requested modifier that could NOT be applied because the
|
|
1481
|
-
* catalog does not advertise the option or the requested value — the symmetric signal to
|
|
1482
|
-
* model fallback, so the no-op is observable rather than silent. When the resolved model id
|
|
1483
|
-
* already ENCODES the bracket (e.g. a `gpt-5-codex[high]` catalog value), the effort is
|
|
1484
|
-
* carried by the model select itself, so it is treated as satisfied (no fallback).
|
|
1485
|
-
*/
|
|
1486
|
-
async applyModelModifiers(spec, modelValue) {
|
|
1487
|
-
const fallbacks = [];
|
|
1488
|
-
const tokens = bracketTokens(spec);
|
|
1489
|
-
if (tokens.length === 0)
|
|
1490
|
-
return fallbacks;
|
|
1491
|
-
// The model id already carries the bracket (e.g. "gpt-5-codex[high]") -> effort is applied
|
|
1492
|
-
// via the model select; the separate effort/Fast options are not the channel here.
|
|
1493
|
-
const effortAbsorbedByModel = modelValue.includes("[");
|
|
1494
|
-
const fastRequested = tokens.some((t) => t.toLowerCase() === "fast");
|
|
1495
|
-
const effortTokens = tokens.filter((t) => t.toLowerCase() !== "fast");
|
|
1496
|
-
// reasoning_effort: set to the bracket token that matches one of its advertised values.
|
|
1497
|
-
if (effortTokens.length > 0 && !effortAbsorbedByModel) {
|
|
1498
|
-
const effortOption = this.configOptions.find(isReasoningEffortOption);
|
|
1499
|
-
const match = effortOption
|
|
1500
|
-
? matchToken(flattenSelectOptions(effortOption.options), effortTokens)
|
|
1501
|
-
: undefined;
|
|
1502
|
-
if (effortOption && match) {
|
|
1503
|
-
if (effortOption.currentValue !== match.value) {
|
|
1504
|
-
await this.applyConfigOption(effortOption.id, match.value);
|
|
1505
|
-
}
|
|
1506
|
-
}
|
|
1507
|
-
else {
|
|
1508
|
-
// No reasoning_effort option, or none of its choices match the requested effort.
|
|
1509
|
-
fallbacks.push(`${spec}: reasoning_effort "${effortTokens.join(",")}" not advertised`);
|
|
1510
|
-
}
|
|
1511
|
-
}
|
|
1512
|
-
// Fast mode: a `fast` token turns the advertised toggle on. The agent may advertise
|
|
1513
|
-
// it as a `type: "boolean"` option (agents gate that shape on our
|
|
1514
|
-
// session.configOptions.boolean capability) or as the legacy on/off select.
|
|
1515
|
-
if (fastRequested && !effortAbsorbedByModel) {
|
|
1516
|
-
const fastOption = this.configOptions.find(isFastModeOption);
|
|
1517
|
-
if (fastOption?.type === "boolean") {
|
|
1518
|
-
if (fastOption.currentValue !== true) {
|
|
1519
|
-
await this.applyConfigOption(fastOption.id, true);
|
|
1520
|
-
}
|
|
1521
|
-
}
|
|
1522
|
-
else {
|
|
1523
|
-
const onValue = fastOption ? fastModeOnValue(flattenSelectOptions(fastOption.options)) : undefined;
|
|
1524
|
-
if (fastOption && onValue) {
|
|
1525
|
-
if (fastOption.currentValue !== onValue) {
|
|
1526
|
-
await this.applyConfigOption(fastOption.id, onValue);
|
|
1527
|
-
}
|
|
1528
|
-
}
|
|
1529
|
-
else {
|
|
1530
|
-
// No Fast-mode option, or it advertises no "on" value.
|
|
1531
|
-
fallbacks.push(`${spec}: Fast mode not advertised`);
|
|
1532
|
-
}
|
|
1533
|
-
}
|
|
1534
|
-
}
|
|
1535
|
-
return fallbacks;
|
|
1448
|
+
await this.applyConfigOption("model", spec);
|
|
1536
1449
|
}
|
|
1537
1450
|
/** Set one session config option via the wire method and adopt the echoed catalog.
|
|
1538
1451
|
* A boolean value drives a `type: "boolean"` option (the request must carry the type
|
|
@@ -1635,43 +1548,9 @@ function withTimeout(op, ms) {
|
|
|
1635
1548
|
});
|
|
1636
1549
|
});
|
|
1637
1550
|
}
|
|
1638
|
-
function isModelSelectOption(option) {
|
|
1639
|
-
return option.type === "select" && (option.category === "model" || option.id === "model");
|
|
1640
|
-
}
|
|
1641
|
-
function isReasoningEffortOption(option) {
|
|
1642
|
-
return option.type === "select" && (option.id === "reasoning_effort" || option.category === "thought_level");
|
|
1643
|
-
}
|
|
1644
1551
|
function isModeConfigOption(option) {
|
|
1645
1552
|
return option.type === "select" && (option.id === "mode" || option.category === "mode");
|
|
1646
1553
|
}
|
|
1647
|
-
/** Fast mode is matched by its stable id (upstream codex-acp moved the category to
|
|
1648
|
-
* "model_config"; the legacy category match is kept for older agents). Both the
|
|
1649
|
-
* `type: "boolean"` and the legacy on/off select shapes qualify — the caller branches
|
|
1650
|
-
* on `type`. */
|
|
1651
|
-
function isFastModeOption(option) {
|
|
1652
|
-
return option.id === "fast-mode" || option.category === "fast-mode";
|
|
1653
|
-
}
|
|
1654
|
-
/** Split the trailing `[...]` of a `model[effort]` spec into its comma/space/plus-separated
|
|
1655
|
-
* tokens (e.g. `gpt-5.1-codex[high]` -> ["high"], `gpt-5-codex[high fast]` -> ["high","fast"]). */
|
|
1656
|
-
function bracketTokens(spec) {
|
|
1657
|
-
const match = spec.match(/\[([^\]]+)\]\s*$/);
|
|
1658
|
-
if (!match)
|
|
1659
|
-
return [];
|
|
1660
|
-
return match[1]
|
|
1661
|
-
.split(/[\s,+]+/)
|
|
1662
|
-
.map((token) => token.trim())
|
|
1663
|
-
.filter(Boolean);
|
|
1664
|
-
}
|
|
1665
|
-
/** First advertised value whose id matches any of the given tokens (case-insensitive). */
|
|
1666
|
-
function matchToken(values, tokens) {
|
|
1667
|
-
const wanted = new Set(tokens.map((token) => token.toLowerCase()));
|
|
1668
|
-
return values.find((value) => wanted.has(value.value.toLowerCase()));
|
|
1669
|
-
}
|
|
1670
|
-
/** The "on" value of a Fast-mode select (codex-acp advertises value "on"; tolerate name too). */
|
|
1671
|
-
function fastModeOnValue(values) {
|
|
1672
|
-
const on = values.find((value) => value.value.toLowerCase() === "on" || value.name.toLowerCase() === "on");
|
|
1673
|
-
return on?.value;
|
|
1674
|
-
}
|
|
1675
1554
|
function flattenSelectOptions(options) {
|
|
1676
1555
|
const out = [];
|
|
1677
1556
|
for (const entry of options) {
|
|
@@ -1682,46 +1561,3 @@ function flattenSelectOptions(options) {
|
|
|
1682
1561
|
}
|
|
1683
1562
|
return out;
|
|
1684
1563
|
}
|
|
1685
|
-
/**
|
|
1686
|
-
* Best-effort match of a model spec (`provider/modelId`, a bare `modelId`, or a tier word)
|
|
1687
|
-
* against the agent's catalog. Tries, in priority order: exact spec, the exact spec with its
|
|
1688
|
-
* `[effort]` bracket stripped (so `zai/glm-5.2[max]` matches its own provider's `zai/glm-5.2`
|
|
1689
|
-
* before any cross-provider lookalike), exact id-after-slash, the bare base id (bracket
|
|
1690
|
-
* stripped, so `gpt-5.1-codex[high]` matches a
|
|
1691
|
-
* bare `gpt-5.1-codex` model value while the bracket separately drives reasoning_effort), the
|
|
1692
|
-
* Codex `base[effort]` encoding, exact option name, then substring fallbacks. The effort
|
|
1693
|
-
* bracket itself is applied via applyModelModifiers, not folded into the model select.
|
|
1694
|
-
*/
|
|
1695
|
-
function matchModelValue(values, spec) {
|
|
1696
|
-
const afterSlash = spec.includes("/") ? spec.slice(spec.indexOf("/") + 1) : spec;
|
|
1697
|
-
const fullLower = spec.toLowerCase();
|
|
1698
|
-
const fullBaseLower = stripEffortBracket(fullLower);
|
|
1699
|
-
const idLower = afterSlash.toLowerCase();
|
|
1700
|
-
const baseLower = stripEffortBracket(afterSlash).toLowerCase();
|
|
1701
|
-
const tests = [
|
|
1702
|
-
(value) => value.value.toLowerCase() === fullLower,
|
|
1703
|
-
// The provider-prefixed spec with the bracket stripped ("zai/glm-5.2[max]" ->
|
|
1704
|
-
// "zai/glm-5.2") — without this, a bracketed spec whose provider serves a model
|
|
1705
|
-
// that OTHER providers also list never exact-matches and falls through to the
|
|
1706
|
-
// substring tests, which can pick a different provider's entry for the same model.
|
|
1707
|
-
(value) => value.value.toLowerCase() === fullBaseLower,
|
|
1708
|
-
(value) => value.value.toLowerCase() === idLower,
|
|
1709
|
-
(value) => value.value.toLowerCase() === baseLower,
|
|
1710
|
-
(value) => value.value.toLowerCase().startsWith(`${baseLower}[`),
|
|
1711
|
-
(value) => value.name.toLowerCase() === idLower,
|
|
1712
|
-
(value) => value.name.toLowerCase() === baseLower,
|
|
1713
|
-
(value) => value.value.toLowerCase().includes(baseLower),
|
|
1714
|
-
(value) => value.name.toLowerCase().includes(baseLower),
|
|
1715
|
-
];
|
|
1716
|
-
for (const test of tests) {
|
|
1717
|
-
const found = values.find(test);
|
|
1718
|
-
if (found)
|
|
1719
|
-
return found;
|
|
1720
|
-
}
|
|
1721
|
-
return undefined;
|
|
1722
|
-
}
|
|
1723
|
-
/** Drop a trailing `[effort]` bracket from a model id, leaving the base model id. */
|
|
1724
|
-
function stripEffortBracket(spec) {
|
|
1725
|
-
const open = spec.indexOf("[");
|
|
1726
|
-
return open >= 0 ? spec.slice(0, open) : spec;
|
|
1727
|
-
}
|
package/dist/backend.d.ts
CHANGED
|
@@ -37,9 +37,8 @@ export interface Backend {
|
|
|
37
37
|
* with DIFFERENT commands (script-declared `meta.backends`): keying the pool by name alone
|
|
38
38
|
* would hand run B a pooled process spawned from run A's command. */
|
|
39
39
|
readonly poolKey?: string;
|
|
40
|
-
/**
|
|
41
|
-
*
|
|
42
|
-
* specs pass through whole. */
|
|
40
|
+
/** @deprecated Prefix stripping is defined solely by the runner's registered first-segment
|
|
41
|
+
* routing. This compatibility property is no longer consulted. */
|
|
43
42
|
readonly stripsRoutingPrefix?: boolean;
|
|
44
43
|
/** When true, the runner EMBEDS the JSON Schema in the prompt text on schema runs. For the
|
|
45
44
|
* native built-ins the native constraint channel is authoritative and this stays unset; a
|
package/dist/backend.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../src/backend.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,wFAAwF;AACxF,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AAC/D;sFACsF;AACtF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CACxB;AAED,8FAA8F;AAC9F,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,eAAe,IAAI,MAAM,CAAC;IAC1B;;;4FAGwF;IACxF,gBAAgB,IAAI,MAAM,CAAC;IAC3B,uGAAuG;IACvG,mBAAmB,IAAI,OAAO,CAAC;CAChC;AAED;+EAC+E;AAC/E,MAAM,WAAW,iBAAiB;IAChC,yFAAyF;IACzF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,sFAAsF;IACtF,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB;;;0EAGsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B
|
|
1
|
+
{"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../src/backend.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,wFAAwF;AACxF,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AAC/D;sFACsF;AACtF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CACxB;AAED,8FAA8F;AAC9F,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,eAAe,IAAI,MAAM,CAAC;IAC1B;;;4FAGwF;IACxF,gBAAgB,IAAI,MAAM,CAAC;IAC3B,uGAAuG;IACvG,mBAAmB,IAAI,OAAO,CAAC;CAChC;AAED;+EAC+E;AAC/E,MAAM,WAAW,iBAAiB;IAChC,yFAAyF;IACzF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,sFAAsF;IACtF,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB;;;0EAGsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;uEACmE;IACnE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC;;;;kGAI8F;IAC9F,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC;;qFAEiF;IACjF,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C;;sFAEkF;IAClF,QAAQ,CAAC,kBAAkB,CAAC,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC;IACpG;;;;6EAIyE;IACzE,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACnC,0DAA0D;IAC1D,WAAW,IAAI,WAAW,CAAC;IAC3B;;sEAEkE;IAClE,mBAAmB,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC5D;;;mGAG+F;IAC/F,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC1G,kGAAkG;IAClG,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC7E,oGAAoG;IACpG,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC;CACrD;AAED,6FAA6F;AAC7F,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,CAE7D"}
|
package/dist/interactive.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ import type { ElicitationResolver, PermissionResolver } from "./permissions.js";
|
|
|
12
12
|
* permission/elicitation resolvers win over the runner-wide defaults; tool allow/deny policy is
|
|
13
13
|
* used only when no permission resolver is present. */
|
|
14
14
|
export interface InteractiveSessionOptions {
|
|
15
|
-
/** Model spec
|
|
15
|
+
/** Model spec: registered first segment routes once; any remaining id is sent verbatim. */
|
|
16
16
|
model?: string;
|
|
17
17
|
/** Agent-advertised session mode id. Strict: openSession fails rather than running unconfined. */
|
|
18
18
|
mode?: string;
|
|
@@ -28,9 +28,9 @@ export interface InteractiveSessionOptions {
|
|
|
28
28
|
onPermissionRequest?: PermissionResolver;
|
|
29
29
|
/** Session-scoped elicitation resolver; overrides the runner-wide resolver for this session. */
|
|
30
30
|
onElicitation?: ElicitationResolver;
|
|
31
|
-
/** The
|
|
31
|
+
/** The model id accepted for the session (display/telemetry). */
|
|
32
32
|
onModelResolved?: RunOptions["onModelResolved"];
|
|
33
|
-
/**
|
|
33
|
+
/** Compatibility callback for non-resolution subsystems or third-party runners. */
|
|
34
34
|
onModelFallback?: RunOptions["onModelFallback"];
|
|
35
35
|
/** Event/telemetry label stamped onto this session's emitted ACP events. */
|
|
36
36
|
label?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,uBAAuB,EACvB,+BAA+B,EAC/B,kBAAkB,EAClB,0BAA0B,EAC1B,6BAA6B,EAC7B,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAOhF;;;;wDAIwD;AACxD,MAAM,WAAW,yBAAyB;IACxC,
|
|
1
|
+
{"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,uBAAuB,EACvB,+BAA+B,EAC/B,kBAAkB,EAClB,0BAA0B,EAC1B,6BAA6B,EAC7B,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACnH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAOhF;;;;wDAIwD;AACxD,MAAM,WAAW,yBAAyB;IACxC,2FAA2F;IAC3F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kGAAkG;IAClG,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uFAAuF;IACvF,GAAG,EAAE,MAAM,CAAC;IACZ,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,oDAAoD;IACpD,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,+FAA+F;IAC/F,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;IACzC,gGAAgG;IAChG,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,iEAAiE;IACjE,eAAe,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAChD,mFAAmF;IACnF,eAAe,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAChD,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6FAA6F;IAC7F,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2EAA2E;IAC3E,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,4DAA4D;IAC5D,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAC/B,kGAAkG;IAClG,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;2FAEuF;IACvF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;0CAE0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,SAAS,GAAG,CAAC,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC;AAEhG,iGAAiG;AACjG,UAAU,sBAAsB;IAC9B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACvD,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;;oBAOoB;AACpB,qBAAa,kBAAkB;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAE9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqC;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;IAC3C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyB;IACvD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAA4B;IAElD;;oDAEgD;gBACpC,IAAI,EAAE,sBAAsB;IAwBxC,kFAAkF;IAClF,IAAI,YAAY,IAAI,sBAAsB,GAAG,SAAS,CAErD;IAED,0FAA0F;IAC1F,IAAI,KAAK,IAAI,gBAAgB,GAAG,IAAI,GAAG,SAAS,CAE/C;IAED,iEAAiE;IACjE,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,uEAAuE;IACvE,IAAI,OAAO,IAAI,SAAS,iBAAiB,EAAE,CAE1C;IAED;;;yDAGqD;IAC/C,MAAM,CACV,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE,EAChC,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAO,GACnF,OAAO,CAAC,eAAe,CAAC;IAsB3B;;;uEAGmE;IACnE,OAAO,CAAC,MAAM,SAAS,kBAAkB,EACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,0BAA0B,CAAC,MAAM,CAAC,EAC1C,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,CAAC,QAAQ,GAAG,OAAO,EAAE,MAAM,GAAG,OAAO,EAC1C,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,QAAQ,CAAC;IAMpB,oGAAoG;IAC9F,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5C;qFACiF;IACjF,MAAM,CAAC,MAAM,SAAS,uBAAuB,EAC3C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,+BAA+B,CAAC,MAAM,CAAC,GAC9C,OAAO,CAAC,IAAI,CAAC;IAChB,MAAM,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxE;gGAC4F;IACtF,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAK7B;;oGAEgG;IAChG,EAAE,CAAC,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAiB9E;4FACwF;IACxF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAKxB;;;mFAG+E;IAC/E,IAAI,UAAU,IAAI,eAAe,CAahC;YAEa,SAAS;IAkBvB,OAAO,CAAC,mBAAmB;CAK5B"}
|
package/dist/registry.d.ts
CHANGED
|
@@ -28,16 +28,15 @@ export type BackendRegistry = ReadonlyMap<string, RegisteredBackend>;
|
|
|
28
28
|
/**
|
|
29
29
|
* Resolve the custom-backend registry: env-declared backends first, programmatic `backends`
|
|
30
30
|
* merged over them (option wins per name). Throws on malformed JSON, invalid names/configs, or
|
|
31
|
-
*
|
|
32
|
-
* misroute at run time.
|
|
31
|
+
* malformed configs — a misconfigured registry should fail LOUDLY at construction, not silently
|
|
32
|
+
* misroute at run time. A name matching a built-in is valid and takes routing priority.
|
|
33
33
|
*/
|
|
34
34
|
export declare function resolveBackendRegistry(option?: Record<string, CustomBackendConfig>, env?: NodeJS.ProcessEnv): BackendRegistry;
|
|
35
35
|
/**
|
|
36
36
|
* Layer a RUN-SCOPED registry (an approved script-declared `meta.backends`, arriving via
|
|
37
37
|
* RunOptions.backends) UNDER the host registry: run entries are validated with the same rules
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
* run declares nothing.
|
|
38
|
+
* and a host-registered name always wins on conflict — a script can never hijack a name the
|
|
39
|
+
* operator configured. Returns the host registry unchanged when the run declares nothing.
|
|
41
40
|
*/
|
|
42
41
|
export declare function registryWithRunBackends(host: BackendRegistry, run?: Record<string, CustomBackendConfig>): BackendRegistry;
|
|
43
42
|
//# sourceMappingURL=registry.d.ts.map
|
package/dist/registry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,YAAY,wBAAwB,CAAC;AAIlD,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,mFAAmF;IACnF,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B;2FACuF;IACvF,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC;gFAC4E;IAC5E,kBAAkB,CAAC,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC;IAC3F;wGACoG;IACpG,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,yEAAyE;AACzE,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAC5C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,eAAe,CAwBjB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,eAAe,EACrB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GACxC,eAAe,CAQjB"}
|
package/dist/registry.js
CHANGED
|
@@ -3,18 +3,16 @@
|
|
|
3
3
|
// session `_meta`), resolved once at runner construction from:
|
|
4
4
|
// 1. the programmatic option: createAcpRunner({ backends: { name: config } }) (wins per name)
|
|
5
5
|
// 2. the env var AGENTPRISM_BACKENDS: a JSON object of the same shape
|
|
6
|
-
// Routing then matches
|
|
7
|
-
//
|
|
8
|
-
//
|
|
9
|
-
// built-ins own their ids (and their own AGENTPRISM_*_ACP_CMD override channel).
|
|
6
|
+
// Routing then matches the effective model spec's first segment against registered names FIRST,
|
|
7
|
+
// before the built-in names — see runner.ts. Names are ASCII-case-insensitive (stored lowercased),
|
|
8
|
+
// and a custom name deliberately shadows a built-in name on collision.
|
|
10
9
|
export const BACKENDS_ENV = "AGENTPRISM_BACKENDS";
|
|
11
|
-
const RESERVED_NAMES = new Set(["claude", "codex", "opencode"]);
|
|
12
10
|
const NAME_PATTERN = /^[a-z][a-z0-9._-]*$/;
|
|
13
11
|
/**
|
|
14
12
|
* Resolve the custom-backend registry: env-declared backends first, programmatic `backends`
|
|
15
13
|
* merged over them (option wins per name). Throws on malformed JSON, invalid names/configs, or
|
|
16
|
-
*
|
|
17
|
-
* misroute at run time.
|
|
14
|
+
* malformed configs — a misconfigured registry should fail LOUDLY at construction, not silently
|
|
15
|
+
* misroute at run time. A name matching a built-in is valid and takes routing priority.
|
|
18
16
|
*/
|
|
19
17
|
export function resolveBackendRegistry(option, env = process.env) {
|
|
20
18
|
const registry = new Map();
|
|
@@ -42,9 +40,8 @@ export function resolveBackendRegistry(option, env = process.env) {
|
|
|
42
40
|
/**
|
|
43
41
|
* Layer a RUN-SCOPED registry (an approved script-declared `meta.backends`, arriving via
|
|
44
42
|
* RunOptions.backends) UNDER the host registry: run entries are validated with the same rules
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* run declares nothing.
|
|
43
|
+
* and a host-registered name always wins on conflict — a script can never hijack a name the
|
|
44
|
+
* operator configured. Returns the host registry unchanged when the run declares nothing.
|
|
48
45
|
*/
|
|
49
46
|
export function registryWithRunBackends(host, run) {
|
|
50
47
|
if (!run || Object.keys(run).length === 0)
|
|
@@ -58,13 +55,10 @@ export function registryWithRunBackends(host, run) {
|
|
|
58
55
|
return merged;
|
|
59
56
|
}
|
|
60
57
|
function validateEntry(rawName, config, source) {
|
|
61
|
-
const name = rawName
|
|
58
|
+
const name = asciiLowercase(rawName);
|
|
62
59
|
if (!NAME_PATTERN.test(name)) {
|
|
63
60
|
throw new Error(`${source}: invalid backend name "${rawName}" (must match ${NAME_PATTERN}, matched case-insensitively)`);
|
|
64
61
|
}
|
|
65
|
-
if (RESERVED_NAMES.has(name)) {
|
|
66
|
-
throw new Error(`${source}: backend name "${rawName}" is reserved for the built-in backend (use AGENTPRISM_${name.toUpperCase()}_ACP_CMD to override how it spawns)`);
|
|
67
|
-
}
|
|
68
62
|
if (config === null || typeof config !== "object" || Array.isArray(config)) {
|
|
69
63
|
throw new Error(`${source}: backend "${rawName}" must be an object with at least { command }`);
|
|
70
64
|
}
|
|
@@ -98,6 +92,9 @@ function validateEntry(rawName, config, source) {
|
|
|
98
92
|
},
|
|
99
93
|
];
|
|
100
94
|
}
|
|
95
|
+
function asciiLowercase(value) {
|
|
96
|
+
return value.replace(/[A-Z]/g, (character) => String.fromCharCode(character.charCodeAt(0) + 32));
|
|
97
|
+
}
|
|
101
98
|
function validateCustomCapabilities(value, source, rawName) {
|
|
102
99
|
if (value === undefined)
|
|
103
100
|
return undefined;
|
package/dist/runner.d.ts
CHANGED
|
@@ -145,7 +145,7 @@ export interface ProviderCapableRunner {
|
|
|
145
145
|
* registry. `backends` merges over (and wins against) env-declared AGENTPRISM_BACKENDS entries. */
|
|
146
146
|
export interface AcpRunnerOptions extends AcpPoolOptions {
|
|
147
147
|
/** Custom ACP backends, keyed by registered name (see registry.ts for the config shape
|
|
148
|
-
* and the routing rules). Names are case-insensitive
|
|
148
|
+
* and the routing rules). Names are ASCII-case-insensitive and shadow built-in ids. */
|
|
149
149
|
backends?: Record<string, CustomBackendConfig>;
|
|
150
150
|
/** Runner-wide human-in-the-loop permission resolver. When set, it replaces ToolPolicy
|
|
151
151
|
* auto-decisions for every session that does not provide its own resolver. */
|
|
@@ -332,11 +332,9 @@ export declare class AcpAgentRunner implements AgentRunner, AuthCapableRunner, P
|
|
|
332
332
|
* never enter hashAgentCall / the resume identity. Env fallbacks: AGENTPRISM_ACP_POOL_SIZE for
|
|
333
333
|
* size, AGENTPRISM_BACKENDS (JSON) for backends. */
|
|
334
334
|
export declare function createAcpRunner(options?: AcpRunnerOptions): AcpAgentRunner;
|
|
335
|
-
/** Pick the backend
|
|
336
|
-
*
|
|
337
|
-
*
|
|
338
|
-
* heuristics; then the default backend (AGENTPRISM_DEFAULT_BACKEND — which may itself name
|
|
339
|
-
* a registered custom backend). */
|
|
335
|
+
/** Pick the backend for the effective model spec (`model` wins over `tier`). The first segment
|
|
336
|
+
* routes only when it is a registered custom or built-in harness name; everything else goes to
|
|
337
|
+
* the configured default backend without interpretation. */
|
|
340
338
|
export declare function selectBackend(opts: {
|
|
341
339
|
model?: string;
|
|
342
340
|
tier?: string;
|
package/dist/runner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
|
package/dist/runner.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// 1. pick the backend by model/tier (cross-provider routing = which ACP server to spawn)
|
|
4
4
|
// 2. ACQUIRE a pooled connection + session/new { cwd } (per-session cwd = worktree isolation;
|
|
5
5
|
// the PROCESS is pool-managed and REUSED across runs — never spawned/killed per run)
|
|
6
|
-
// 3. select the model via session/set_config_option (onModelResolved
|
|
6
|
+
// 3. select the model verbatim via session/set_config_option (onModelResolved)
|
|
7
7
|
// 4. apply the schema per backend (Claude: at session/new; Codex: per-turn _meta)
|
|
8
8
|
// 5. prompt + drain; enforce the tool allow/deny policy via permission auto-responses
|
|
9
9
|
// 6. schema -> native -> validate -> re-prompt ladder -> SCHEMA_NONCOMPLIANCE
|
|
@@ -409,7 +409,7 @@ export class AcpAgentRunner {
|
|
|
409
409
|
const opts = options;
|
|
410
410
|
const schema = opts.schema;
|
|
411
411
|
// Layer any run-scoped backends (an APPROVED script-declared meta.backends) under the
|
|
412
|
-
// host registry. Malformed
|
|
412
|
+
// host registry. Malformed entries fail the call loudly and are NOT retried —
|
|
413
413
|
// re-running a misdeclared registry can never succeed.
|
|
414
414
|
let registry;
|
|
415
415
|
try {
|
|
@@ -513,9 +513,8 @@ export class AcpAgentRunner {
|
|
|
513
513
|
// observer only; the run result never depends on it.
|
|
514
514
|
}
|
|
515
515
|
}
|
|
516
|
-
//
|
|
517
|
-
//
|
|
518
|
-
// full spec unchanged (their catalogs match provider-prefixed and bare ids).
|
|
516
|
+
// A registered first segment is routing only. Everything after it is sent verbatim;
|
|
517
|
+
// an unregistered first segment leaves the entire authored string intact for the default.
|
|
519
518
|
await applyModelSelection(activeSession, prepared.modelSpec, opts);
|
|
520
519
|
opts.signal?.throwIfAborted();
|
|
521
520
|
if (opts.mode)
|
|
@@ -845,7 +844,8 @@ export class AcpAgentRunner {
|
|
|
845
844
|
/** Build the backend choice, model-selection spec, tool policy, and session/new options in one
|
|
846
845
|
* place for run() and openSession() so new AcpSessionOptions fields cannot drift by path. */
|
|
847
846
|
prepareSession(opts, config) {
|
|
848
|
-
const
|
|
847
|
+
const route = resolveModelRoute(opts.model ?? opts.tier, config.registry);
|
|
848
|
+
const backend = route.backend;
|
|
849
849
|
const hasPermissionResolver = Boolean(config.permissionResolver ?? this.permissionResolver);
|
|
850
850
|
const policy = {
|
|
851
851
|
allow: opts.toolNames,
|
|
@@ -854,7 +854,7 @@ export class AcpAgentRunner {
|
|
|
854
854
|
};
|
|
855
855
|
return {
|
|
856
856
|
backend,
|
|
857
|
-
modelSpec:
|
|
857
|
+
modelSpec: route.modelSpec,
|
|
858
858
|
sessionOptions: {
|
|
859
859
|
cwd: config.cwd,
|
|
860
860
|
schema: config.schema,
|
|
@@ -950,34 +950,16 @@ function availableMcpServerName(base, servers) {
|
|
|
950
950
|
return candidate;
|
|
951
951
|
}
|
|
952
952
|
async function applyModelSelection(session, spec, opts) {
|
|
953
|
-
|
|
954
|
-
// backend's routing name already stripped by innerModelSpec.
|
|
955
|
-
if (!spec)
|
|
953
|
+
if (spec === undefined)
|
|
956
954
|
return;
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
opts.onModelResolved?.(resolved ?? spec);
|
|
960
|
-
else
|
|
961
|
-
opts.onModelFallback?.(spec);
|
|
962
|
-
// Symmetric to model fallback: a requested reasoning_effort / Fast-mode value the catalog
|
|
963
|
-
// does not advertise is a silent no-op in the session. Surface it on the SAME channel so
|
|
964
|
-
// incorrect tiering is observable (best-effort — reported, never thrown).
|
|
965
|
-
for (const fallback of modifierFallbacks ?? [])
|
|
966
|
-
opts.onModelFallback?.(fallback);
|
|
955
|
+
await session.selectModel(spec);
|
|
956
|
+
opts.onModelResolved?.(spec);
|
|
967
957
|
}
|
|
968
|
-
/** Pick the backend
|
|
969
|
-
*
|
|
970
|
-
*
|
|
971
|
-
* heuristics; then the default backend (AGENTPRISM_DEFAULT_BACKEND — which may itself name
|
|
972
|
-
* a registered custom backend). */
|
|
958
|
+
/** Pick the backend for the effective model spec (`model` wins over `tier`). The first segment
|
|
959
|
+
* routes only when it is a registered custom or built-in harness name; everything else goes to
|
|
960
|
+
* the configured default backend without interpretation. */
|
|
973
961
|
export function selectBackend(opts, registry) {
|
|
974
|
-
|
|
975
|
-
if (custom)
|
|
976
|
-
return custom;
|
|
977
|
-
const id = backendIdForSpec(opts.model) ?? backendIdForSpec(opts.tier) ?? defaultBackendId(registry);
|
|
978
|
-
if (typeof id !== "string")
|
|
979
|
-
return id; // the default resolved to a registered custom backend
|
|
980
|
-
return builtinBackend(id);
|
|
962
|
+
return resolveModelRoute(opts.model ?? opts.tier, registry).backend;
|
|
981
963
|
}
|
|
982
964
|
function builtinBackend(id) {
|
|
983
965
|
switch (id) {
|
|
@@ -989,29 +971,21 @@ function builtinBackend(id) {
|
|
|
989
971
|
return new OpenCodeBackend();
|
|
990
972
|
}
|
|
991
973
|
}
|
|
992
|
-
/**
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
const slash =
|
|
998
|
-
const
|
|
999
|
-
const
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
if (!spec || !backend.stripsRoutingPrefix)
|
|
1008
|
-
return spec;
|
|
1009
|
-
const lower = spec.toLowerCase();
|
|
1010
|
-
if (lower === backend.id)
|
|
1011
|
-
return undefined;
|
|
1012
|
-
if (lower.startsWith(`${backend.id}/`))
|
|
1013
|
-
return spec.slice(backend.id.length + 1) || undefined;
|
|
1014
|
-
return spec;
|
|
974
|
+
/** Resolve routing and the verbatim model value together so backend choice and prefix stripping
|
|
975
|
+
* cannot drift. A registered custom name has priority over a built-in on collision. */
|
|
976
|
+
function resolveModelRoute(spec, registry) {
|
|
977
|
+
if (spec === undefined)
|
|
978
|
+
return { backend: defaultBackend(registry), modelSpec: undefined };
|
|
979
|
+
const slash = spec.indexOf("/");
|
|
980
|
+
const firstSegment = asciiLowercase(slash >= 0 ? spec.slice(0, slash) : spec);
|
|
981
|
+
const inner = slash >= 0 ? spec.slice(slash + 1) : undefined;
|
|
982
|
+
const custom = registry?.get(firstSegment);
|
|
983
|
+
if (custom)
|
|
984
|
+
return { backend: new CustomAcpBackend(custom), modelSpec: inner };
|
|
985
|
+
if (firstSegment === "claude" || firstSegment === "codex" || firstSegment === "opencode") {
|
|
986
|
+
return { backend: builtinBackend(firstSegment), modelSpec: inner };
|
|
987
|
+
}
|
|
988
|
+
return { backend: defaultBackend(registry), modelSpec: spec };
|
|
1015
989
|
}
|
|
1016
990
|
/** The re-attach handle for an open session: id + backend routing name + cwd + the
|
|
1017
991
|
* agent-advertised reopen surface. Contains no secrets; JSON-round-trippable. `backendId`
|
|
@@ -1106,37 +1080,20 @@ async function disposeBestEffort(connection) {
|
|
|
1106
1080
|
// Dedicated lifecycle processes are already no longer useful; never mask the request result.
|
|
1107
1081
|
}
|
|
1108
1082
|
}
|
|
1109
|
-
function backendIdForSpec(spec) {
|
|
1110
|
-
if (!spec)
|
|
1111
|
-
return undefined;
|
|
1112
|
-
const lower = spec.toLowerCase();
|
|
1113
|
-
const slash = lower.indexOf("/");
|
|
1114
|
-
const provider = slash > 0 ? lower.slice(0, slash) : "";
|
|
1115
|
-
if (provider === "opencode")
|
|
1116
|
-
return "opencode";
|
|
1117
|
-
if (provider === "openai" || provider === "codex")
|
|
1118
|
-
return "codex";
|
|
1119
|
-
if (provider === "anthropic" || provider === "claude")
|
|
1120
|
-
return "claude";
|
|
1121
|
-
const id = slash > 0 ? lower.slice(slash + 1) : lower;
|
|
1122
|
-
if (id === "opencode")
|
|
1123
|
-
return "opencode";
|
|
1124
|
-
if (/codex|gpt|openai|\bo\d/.test(id))
|
|
1125
|
-
return "codex";
|
|
1126
|
-
if (/claude|opus|sonnet|haiku|anthropic/.test(id))
|
|
1127
|
-
return "claude";
|
|
1128
|
-
return undefined;
|
|
1129
|
-
}
|
|
1130
1083
|
/** Resolve the default backend: a registered custom name wins (returned as a Backend), else
|
|
1131
1084
|
* the built-in id. An unknown/unset value falls back to "claude" (the historical default). */
|
|
1132
|
-
function
|
|
1133
|
-
const
|
|
1085
|
+
function defaultBackend(registry) {
|
|
1086
|
+
const configured = process.env.AGENTPRISM_DEFAULT_BACKEND;
|
|
1087
|
+
const name = configured === undefined ? undefined : asciiLowercase(configured);
|
|
1134
1088
|
if (name && registry) {
|
|
1135
1089
|
const config = registry.get(name);
|
|
1136
1090
|
if (config)
|
|
1137
1091
|
return new CustomAcpBackend(config);
|
|
1138
1092
|
}
|
|
1139
|
-
if (name === "opencode")
|
|
1140
|
-
return
|
|
1141
|
-
return
|
|
1093
|
+
if (name === "opencode" || name === "codex")
|
|
1094
|
+
return builtinBackend(name);
|
|
1095
|
+
return builtinBackend("claude");
|
|
1096
|
+
}
|
|
1097
|
+
function asciiLowercase(value) {
|
|
1098
|
+
return value.replace(/[A-Z]/g, (character) => String.fromCharCode(character.charCodeAt(0) + 32));
|
|
1142
1099
|
}
|