@jmanuelcorral/openteam 0.17.4 → 0.17.6
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.es.md +2 -2
- package/README.md +2 -2
- package/dist/certificates/graph-release-certificate.json +2 -2
- package/dist/certificates/graph-shadow-certificate.json +2 -2
- package/dist/cli.js +102 -21
- package/dist/commands/dispatch.d.ts.map +1 -1
- package/dist/commands/doctor.d.ts +20 -8
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/setup.d.ts +19 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +171 -23
- package/dist/local/lemonade.d.ts.map +1 -1
- package/dist/local/registry.d.ts +14 -0
- package/dist/local/registry.d.ts.map +1 -1
- package/dist/local/slotPool.d.ts +21 -0
- package/dist/local/slotPool.d.ts.map +1 -1
- package/dist/opencodeArtifacts/orchestratorAgent.d.ts +11 -6
- package/dist/opencodeArtifacts/orchestratorAgent.d.ts.map +1 -1
- package/dist/orchestrator/coordinator.d.ts +13 -0
- package/dist/orchestrator/coordinator.d.ts.map +1 -1
- package/dist/plugin/orchestrateTool.d.ts +55 -0
- package/dist/plugin/orchestrateTool.d.ts.map +1 -1
- package/package.json +1 -1
package/README.es.md
CHANGED
|
@@ -373,7 +373,7 @@ ejecutas desde un subdirectorio verás "provider not configured" y debes hacer
|
|
|
373
373
|
| `local.runtimes[].discovery` | `"cli" \| "sdk" \| "manual"` opcional | sin default por item | Discovery de Foundry Local; el registry usa CLI si está configurado y no es `manual`. |
|
|
374
374
|
| `local.runtimes[].defaultModel` | `ModelRef` | requerido | Modelo por defecto de ese runtime. |
|
|
375
375
|
| `local.runtimes[].maxConcurrency` | entero positivo opcional | `4` | Límite de generaciones concurrentes de esta instancia (su número real de slots). Se aplica por instancia. |
|
|
376
|
-
| `local.runtimes[].modelConcurrency` | `Record<modelID, entero positivo>` opcional | ninguno | Slots por modelo, porque los slots pertenecen al modelo cargado y no al servidor: un mismo host Lemonade puede servir un modelo con `--parallel 3` y otro con `--parallel 1` a la vez. Cada modelo declarado obtiene su propia cola; el resto comparte el pool de `maxConcurrency` de la instancia. `openteam setup`
|
|
376
|
+
| `local.runtimes[].modelConcurrency` | `Record<modelID, entero positivo>` opcional | ninguno | Slots por modelo, porque los slots pertenecen al modelo cargado y no al servidor: un mismo host Lemonade puede servir un modelo con `--parallel 3` y otro con `--parallel 1` a la vez. Cada modelo declarado obtiene su propia cola; el resto comparte el pool de `maxConcurrency` de la instancia. Cuando se deja sin definir, openteam autodetecta los slots de cada modelo desde el sondeo de salud en vivo del runtime en el momento del despacho y los aplica hasta que declares los tuyos (la config explícita siempre gana); `openteam setup` escribe el mapa para que el reparto sobreviva a los reinicios. |
|
|
377
377
|
| `budgets.sessionUSD` | `number` positivo opcional | sin límite | Presupuesto frontier por sesión. |
|
|
378
378
|
| `budgets.monthlyUSD` | `number` positivo opcional | sin límite | Presupuesto frontier mensual. |
|
|
379
379
|
| `budgets.frontierTokensPerSession` | `number` entero positivo opcional | sin límite | Límite de tokens frontier por sesión. |
|
|
@@ -825,7 +825,7 @@ Consulta [docs/compatibility.md](docs/compatibility.md). Resumen verificado el `
|
|
|
825
825
|
|
|
826
826
|
| Superficie | Versión / contrato |
|
|
827
827
|
| --- | --- |
|
|
828
|
-
| openteam | `0.17.
|
|
828
|
+
| openteam | `0.17.6`; versión actual del paquete |
|
|
829
829
|
| `@opencode-ai/plugin` | `1.18.19` |
|
|
830
830
|
| `@opencode-ai/sdk` | `1.18.19` |
|
|
831
831
|
| Hook de routing | `chat.message`; no `chat.params` para cambiar modelo |
|
package/README.md
CHANGED
|
@@ -325,7 +325,7 @@ configured" and should `cd` to the project root first.
|
|
|
325
325
|
| `local.runtimes[].discovery` | `"cli" \| "sdk" \| "manual"` optional | none per item | Foundry Local discovery; the registry uses CLI when configured and not `manual`. |
|
|
326
326
|
| `local.runtimes[].defaultModel` | `ModelRef` | required | Default model for that runtime. |
|
|
327
327
|
| `local.runtimes[].maxConcurrency` | positive integer, optional | `4` | Concurrent-generation cap for this instance (its real slot count). Applied per instance. |
|
|
328
|
-
| `local.runtimes[].modelConcurrency` | `Record<modelID, positive integer>`, optional | none | Per-model slot counts, because slots belong to the loaded model rather than to the server: a single Lemonade host can serve one model at `--parallel 3` and another at `--parallel 1` simultaneously. Each declared model gets its own queue; every other model shares the instance-wide `maxConcurrency` pool.
|
|
328
|
+
| `local.runtimes[].modelConcurrency` | `Record<modelID, positive integer>`, optional | none | Per-model slot counts, because slots belong to the loaded model rather than to the server: a single Lemonade host can serve one model at `--parallel 3` and another at `--parallel 1` simultaneously. Each declared model gets its own queue; every other model shares the instance-wide `maxConcurrency` pool. When left unset, openteam auto-detects each model's slots from the runtime's live health probe at dispatch time and applies them until you declare your own (explicit config always wins); `openteam setup` writes the map so the split survives restarts. |
|
|
329
329
|
| `budgets.sessionUSD` | positive number, optional | unlimited | Frontier budget per session. |
|
|
330
330
|
| `budgets.monthlyUSD` | positive number, optional | unlimited | Monthly frontier budget. |
|
|
331
331
|
| `budgets.frontierTokensPerSession` | positive integer, optional | unlimited | Frontier token limit per session. |
|
|
@@ -714,7 +714,7 @@ See [docs/compatibility.md](docs/compatibility.md). Verified summary as of `2026
|
|
|
714
714
|
|
|
715
715
|
| Surface | Version / contract |
|
|
716
716
|
| --- | --- |
|
|
717
|
-
| openteam | `0.17.
|
|
717
|
+
| openteam | `0.17.6`; current package version |
|
|
718
718
|
| `@opencode-ai/plugin` | `1.18.19` |
|
|
719
719
|
| `@opencode-ai/sdk` | `1.18.19` |
|
|
720
720
|
| Routing hook | `chat.message`; not `chat.params` for model changes |
|
|
@@ -34,12 +34,12 @@
|
|
|
34
34
|
"idempotent": true
|
|
35
35
|
},
|
|
36
36
|
"performance": {
|
|
37
|
-
"p95Millis": 0.
|
|
37
|
+
"p95Millis": 0.347075000000018,
|
|
38
38
|
"budgetMillis": 50,
|
|
39
39
|
"samples": 100
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
42
|
"verdict": "pass",
|
|
43
43
|
"failedGates": [],
|
|
44
|
-
"digest": "
|
|
44
|
+
"digest": "5abd433eb1075ebdf64a7b222c8d523e771b4d933e04ffc15dc42be7c484738e"
|
|
45
45
|
}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"rawFindings": 0
|
|
21
21
|
},
|
|
22
22
|
"overhead": {
|
|
23
|
-
"p95Millis": 0.
|
|
23
|
+
"p95Millis": 0.24204399999999282,
|
|
24
24
|
"budgetMillis": 25,
|
|
25
25
|
"samples": 1000
|
|
26
26
|
},
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
},
|
|
36
36
|
"verdict": "pass",
|
|
37
37
|
"failedGates": [],
|
|
38
|
-
"digest": "
|
|
38
|
+
"digest": "041dfb0e906c360db3d6ca716995d017eaf822218872a4daea3bb0ba7eb42e66"
|
|
39
39
|
}
|
package/dist/cli.js
CHANGED
|
@@ -692,6 +692,15 @@ function slotPoolKey(runtime, modelID) {
|
|
|
692
692
|
const declared = runtime.modelConcurrency?.[modelID];
|
|
693
693
|
return declared === undefined ? runtime.id : `${runtime.id}${POOL_SEPARATOR}${modelID}`;
|
|
694
694
|
}
|
|
695
|
+
function withReportedModelSlots(runtime, reported) {
|
|
696
|
+
if (reported === undefined || Object.keys(reported).length === 0) {
|
|
697
|
+
return runtime;
|
|
698
|
+
}
|
|
699
|
+
return {
|
|
700
|
+
...runtime,
|
|
701
|
+
modelConcurrency: { ...reported, ...runtime.modelConcurrency }
|
|
702
|
+
};
|
|
703
|
+
}
|
|
695
704
|
|
|
696
705
|
// src/capabilities/budget.ts
|
|
697
706
|
var WARNING_UTILIZATION = 0.8;
|
|
@@ -2309,7 +2318,8 @@ async function runRoleTaskWithCorrelation(input, deps, correlation, batch) {
|
|
|
2309
2318
|
if (runtimeId !== undefined && deps.runtimeLimiter !== undefined) {
|
|
2310
2319
|
const limiter = deps.runtimeLimiter;
|
|
2311
2320
|
const priority = priorityForRole(role);
|
|
2312
|
-
const
|
|
2321
|
+
const dispatchRuntime = configuredRuntime(runtimeId, input.config) ?? { id: runtimeId };
|
|
2322
|
+
const poolKey = slotPoolKey(withReportedModelSlots(dispatchRuntime, deps.reportedModelSlots?.(runtimeId)), decision2.selected.modelID);
|
|
2313
2323
|
release = limiter.tryAcquire(poolKey, priority);
|
|
2314
2324
|
let waitedMs = 0;
|
|
2315
2325
|
if (release === undefined) {
|
|
@@ -9039,8 +9049,8 @@ import { promisify } from "node:util";
|
|
|
9039
9049
|
var ORCHESTRATOR_AGENT_PATH = ".opencode/agent/openteam.md";
|
|
9040
9050
|
var OPENTEAM_ROSTER_PATH = ".opencode/openteam/roster.md";
|
|
9041
9051
|
var OPENTEAM_ROSTER_FILENAME = OPENTEAM_ROSTER_PATH.split("/").pop() ?? OPENTEAM_ROSTER_PATH;
|
|
9042
|
-
function buildOrchestratorAgent(
|
|
9043
|
-
const
|
|
9052
|
+
function buildOrchestratorAgent(model, options = {}) {
|
|
9053
|
+
const modelSpec = `${model.providerID}/${model.modelID}`;
|
|
9044
9054
|
const permissionLines = options.yolo ? ["permission:", ' "*": allow'] : [
|
|
9045
9055
|
"permission:",
|
|
9046
9056
|
" read: allow",
|
|
@@ -9059,7 +9069,7 @@ function buildOrchestratorAgent(frontier, options = {}) {
|
|
|
9059
9069
|
"---",
|
|
9060
9070
|
'description: "openteam multi-agent orchestrator: on every request it checks whether a team exists; if not, it understands the tasks and creates the team of subagents on demand, plans dependencies, parallelizes independent work and keeps the todo list attributed to the owner of each task, with local-first routing."',
|
|
9061
9071
|
"mode: primary",
|
|
9062
|
-
`model: ${
|
|
9072
|
+
`model: ${modelSpec}`,
|
|
9063
9073
|
"temperature: 0.2",
|
|
9064
9074
|
...permissionLines,
|
|
9065
9075
|
"---"
|
|
@@ -10076,6 +10086,8 @@ var NON_TEXT_LABELS = new Set([
|
|
|
10076
10086
|
"reranking"
|
|
10077
10087
|
]);
|
|
10078
10088
|
var PARALLEL_ARG = /(?:^|\s)(?:--parallel|-np)[\s=]+(\d+)(?!\d)/;
|
|
10089
|
+
var PARALLEL_FLAGS = new Set(["--parallel", "-np"]);
|
|
10090
|
+
var PARALLEL_FUSED = /^(?:--parallel|-np)=(\d+)$/;
|
|
10079
10091
|
function createLemonadeAdapter() {
|
|
10080
10092
|
const listModels = async (options) => {
|
|
10081
10093
|
const baseURL = normalizeBaseURL(options.baseURL ?? LEMONADE_DEFAULT_BASE_URL);
|
|
@@ -10176,15 +10188,49 @@ async function readLoadedModels(baseURL, fetch2) {
|
|
|
10176
10188
|
return loaded;
|
|
10177
10189
|
}
|
|
10178
10190
|
function readSlotCount(entry) {
|
|
10191
|
+
return slotsFromLlamacppArgs(entry) ?? slotsFromLaunchCommand(entry);
|
|
10192
|
+
}
|
|
10193
|
+
function slotsFromLlamacppArgs(entry) {
|
|
10179
10194
|
const options = entry.recipe_options;
|
|
10180
10195
|
if (!isObject3(options) || typeof options.llamacpp_args !== "string") {
|
|
10181
10196
|
return;
|
|
10182
10197
|
}
|
|
10183
10198
|
const match = PARALLEL_ARG.exec(options.llamacpp_args);
|
|
10184
|
-
|
|
10199
|
+
return match === null ? undefined : positiveSlotCount(match[1]);
|
|
10200
|
+
}
|
|
10201
|
+
function slotsFromLaunchCommand(entry) {
|
|
10202
|
+
const argv = entry.launch_command;
|
|
10203
|
+
if (!Array.isArray(argv)) {
|
|
10185
10204
|
return;
|
|
10186
10205
|
}
|
|
10187
|
-
|
|
10206
|
+
for (let index = 0;index < argv.length; index += 1) {
|
|
10207
|
+
const token = argv[index];
|
|
10208
|
+
if (typeof token !== "string") {
|
|
10209
|
+
continue;
|
|
10210
|
+
}
|
|
10211
|
+
const fused = PARALLEL_FUSED.exec(token);
|
|
10212
|
+
if (fused !== null) {
|
|
10213
|
+
const slots = positiveSlotCount(fused[1]);
|
|
10214
|
+
if (slots !== undefined) {
|
|
10215
|
+
return slots;
|
|
10216
|
+
}
|
|
10217
|
+
continue;
|
|
10218
|
+
}
|
|
10219
|
+
if (PARALLEL_FLAGS.has(token)) {
|
|
10220
|
+
const next = argv[index + 1];
|
|
10221
|
+
const slots = typeof next === "string" ? positiveSlotCount(next) : undefined;
|
|
10222
|
+
if (slots !== undefined) {
|
|
10223
|
+
return slots;
|
|
10224
|
+
}
|
|
10225
|
+
}
|
|
10226
|
+
}
|
|
10227
|
+
return;
|
|
10228
|
+
}
|
|
10229
|
+
function positiveSlotCount(raw) {
|
|
10230
|
+
if (raw === undefined || !/^\d+$/.test(raw)) {
|
|
10231
|
+
return;
|
|
10232
|
+
}
|
|
10233
|
+
const parsed = Number.parseInt(raw, 10);
|
|
10188
10234
|
return Number.isInteger(parsed) && parsed > 0 ? parsed : undefined;
|
|
10189
10235
|
}
|
|
10190
10236
|
function enrichWithLoadState(models, loaded) {
|
|
@@ -11215,13 +11261,27 @@ function runtimeLine(snapshot, runtime) {
|
|
|
11215
11261
|
const slots = declared === undefined ? ` · ${DEFAULT_LOCAL_MAX_CONCURRENCY} slot(s) (default)` : ` · ${declared} slot(s) (declared)`;
|
|
11216
11262
|
return ` ${mark} ${snapshot.id.padEnd(14)} ${snapshot.baseURL || "(no baseURL)"} — ${detail}${slots}`;
|
|
11217
11263
|
}
|
|
11218
|
-
function runtimeModelSlotsLine(runtime) {
|
|
11219
|
-
const
|
|
11220
|
-
if (
|
|
11221
|
-
|
|
11264
|
+
function runtimeModelSlotsLine(runtime, snapshot) {
|
|
11265
|
+
const declared = Object.entries(runtime?.modelConcurrency ?? {});
|
|
11266
|
+
if (declared.length > 0) {
|
|
11267
|
+
const detail = declared.map(([modelID, slots]) => `${modelID} ${slots} slot(s)`).join(" · ");
|
|
11268
|
+
return [` ↳ per-model slots: ${detail}`];
|
|
11269
|
+
}
|
|
11270
|
+
if (runtime === undefined || snapshot === undefined || !snapshot.reachable || snapshot.models.length === 0) {
|
|
11271
|
+
return [];
|
|
11222
11272
|
}
|
|
11223
|
-
const
|
|
11224
|
-
|
|
11273
|
+
const reported = snapshot.models.flatMap((model) => model.slots === undefined ? [] : [`${model.modelID} ${model.slots} slot(s)`]);
|
|
11274
|
+
if (reported.length > 0) {
|
|
11275
|
+
return [
|
|
11276
|
+
` ↳ per-model slots (detected from ${snapshot.id}, applied this run): ${reported.join(" · ")}`,
|
|
11277
|
+
" remedy: pin these under this runtime as `modelConcurrency` in .opencode/openteam.json so the split survives restarts and outranks detection."
|
|
11278
|
+
];
|
|
11279
|
+
}
|
|
11280
|
+
return [
|
|
11281
|
+
` ⚠ ${snapshot.id} is reachable and serving models but has no per-model slots declared`,
|
|
11282
|
+
" consequence: every model shares one runtime-wide pool sized to maxConcurrency, so a model the runtime serves at fewer parallel slots is over-dispatched and its extra requests queue invisibly inside the runtime where openteam cannot prioritise them.",
|
|
11283
|
+
' remedy: add "modelConcurrency": { "<modelID>": <slots> } to this runtime in .opencode/openteam.json (or re-run `openteam setup`, which detects the counts from the runtime), then re-run `openteam doctor`.'
|
|
11284
|
+
];
|
|
11225
11285
|
}
|
|
11226
11286
|
function isNetworkRuntime(baseURL) {
|
|
11227
11287
|
if (baseURL.length === 0) {
|
|
@@ -11441,7 +11501,7 @@ function gitignoreSection(gitignore) {
|
|
|
11441
11501
|
lines.push(` remedy: add ${quoted} to ${gitignore.path} (or re-run \`openteam setup\`), then re-run \`openteam doctor\`.`);
|
|
11442
11502
|
return lines;
|
|
11443
11503
|
}
|
|
11444
|
-
function agentModelsSection(diagnostics, searchedPaths) {
|
|
11504
|
+
function agentModelsSection(diagnostics, searchedPaths, localOnly) {
|
|
11445
11505
|
const lines = [" agent models:"];
|
|
11446
11506
|
if (diagnostics.length === 0) {
|
|
11447
11507
|
lines.push(" (no agent files in .opencode/agent/)");
|
|
@@ -11455,6 +11515,13 @@ function agentModelsSection(diagnostics, searchedPaths) {
|
|
|
11455
11515
|
if (broken > 0) {
|
|
11456
11516
|
lines.push(` ⚠ ${broken} agent model(s) will not resolve. This is an agent 'model:' declaration error, not the openteam router.`);
|
|
11457
11517
|
}
|
|
11518
|
+
const localOnlyGap = localOnly ? diagnostics.find((d) => d.mode === "primary" && d.resolution?.status === "unresolvable" && d.resolution.reason === "provider-not-configured") : undefined;
|
|
11519
|
+
if (localOnlyGap?.model !== undefined) {
|
|
11520
|
+
lines.push(` ✗ local-only mode, but the primary agent '${localOnlyGap.name}' points at provider '${localOnlyGap.model.providerID}', which opencode.json does not configure.`);
|
|
11521
|
+
lines.push(" cause: `openteam setup` recorded the frontier baseline placeholder as this agent's `model:`. That value is correctly inert as baseline.hardDefault while router.localOnly is true, but an agent's own `model:` is load-bearing, so opencode cannot resolve the coordinator against your local-only providers.");
|
|
11522
|
+
lines.push(" consequence: opencode cannot start the openteam coordinator, so it reads no roster and splits no work — even though every subagent resolves on your local runtime.");
|
|
11523
|
+
lines.push(` remedy: re-run \`openteam setup\` and keep local-only mode to regenerate ${localOnlyGap.sourceFile} with your local thinking model, then re-run \`openteam doctor\`.`);
|
|
11524
|
+
}
|
|
11458
11525
|
lines.push(" note: 'declared' = model set in .opencode/agent/<name>.md frontmatter; 'inherited' = opencode.json default.");
|
|
11459
11526
|
lines.push(" note: static checks are offline and deterministic; live checks need a reachable local runtime and can be inconclusive.");
|
|
11460
11527
|
return lines;
|
|
@@ -11478,9 +11545,9 @@ function renderDoctor(input) {
|
|
|
11478
11545
|
if (classLine !== undefined) {
|
|
11479
11546
|
lines.push(classLine);
|
|
11480
11547
|
}
|
|
11481
|
-
const modelSlots = runtimeModelSlotsLine(runtime);
|
|
11482
|
-
|
|
11483
|
-
lines.push(
|
|
11548
|
+
const modelSlots = runtimeModelSlotsLine(runtime, snapshot);
|
|
11549
|
+
for (const line of modelSlots) {
|
|
11550
|
+
lines.push(line);
|
|
11484
11551
|
}
|
|
11485
11552
|
}
|
|
11486
11553
|
}
|
|
@@ -11543,7 +11610,7 @@ function renderDoctor(input) {
|
|
|
11543
11610
|
lines.push(" Run `openteam clear-cache --delete` to clean up.");
|
|
11544
11611
|
}
|
|
11545
11612
|
if (input.agentModels !== undefined) {
|
|
11546
|
-
lines.push(...agentModelsSection(input.agentModels, input.opencodeConfigPaths ?? []));
|
|
11613
|
+
lines.push(...agentModelsSection(input.agentModels, input.opencodeConfigPaths ?? [], input.config.router.localOnly));
|
|
11547
11614
|
}
|
|
11548
11615
|
if (input.opencodeConfigError !== undefined) {
|
|
11549
11616
|
lines.push(` ⚠ opencode config parse error: ${input.opencodeConfigError}`);
|
|
@@ -12259,6 +12326,19 @@ function buildOpenTeamConfig(answers) {
|
|
|
12259
12326
|
graph: { mode: "active" }
|
|
12260
12327
|
});
|
|
12261
12328
|
}
|
|
12329
|
+
function orchestratorAgentModel(answers) {
|
|
12330
|
+
const primaryLocal = firstEnabled(answers.runtimes);
|
|
12331
|
+
if (answers.localOnly === true && primaryLocal !== undefined) {
|
|
12332
|
+
return {
|
|
12333
|
+
providerID: choiceProviderID(primaryLocal),
|
|
12334
|
+
modelID: primaryLocal.thinkingModelID ?? primaryLocal.defaultModelID
|
|
12335
|
+
};
|
|
12336
|
+
}
|
|
12337
|
+
return {
|
|
12338
|
+
providerID: answers.frontier.providerID,
|
|
12339
|
+
modelID: answers.frontier.modelID
|
|
12340
|
+
};
|
|
12341
|
+
}
|
|
12262
12342
|
function buildOpencodeConfig(answers) {
|
|
12263
12343
|
const provider = {};
|
|
12264
12344
|
const providerOwner = new Map;
|
|
@@ -12789,7 +12869,7 @@ async function runSetup(deps) {
|
|
|
12789
12869
|
};
|
|
12790
12870
|
const openTeamConfig = buildOpenTeamConfig(answers);
|
|
12791
12871
|
const opencodeConfig = buildOpencodeConfig(answers);
|
|
12792
|
-
const orchestratorAgent = buildOrchestratorAgent(
|
|
12872
|
+
const orchestratorAgent = buildOrchestratorAgent(orchestratorAgentModel(answers), { yolo });
|
|
12793
12873
|
const slashCommands = buildOpenteamCommands();
|
|
12794
12874
|
const openTeamPath = DEFAULT_CONFIG_PATH;
|
|
12795
12875
|
const existingOpencodePath = await deps.resolveOpencodeWriteTarget(OPENCODE_CONFIG_CANDIDATES);
|
|
@@ -13815,8 +13895,8 @@ async function regenerateOrchestratorAgent(deps, config, enable) {
|
|
|
13815
13895
|
Warning: could not regenerate ${deps.orchestratorAgentPath} (missing 'model' in opencode.json); adjust its permission by hand.`;
|
|
13816
13896
|
}
|
|
13817
13897
|
try {
|
|
13818
|
-
const
|
|
13819
|
-
const contents = buildOrchestratorAgent(
|
|
13898
|
+
const agentModel2 = parseModelRef(model);
|
|
13899
|
+
const contents = buildOrchestratorAgent(agentModel2, { yolo: enable });
|
|
13820
13900
|
await deps.writeOrchestratorAgent(contents, deps.orchestratorAgentPath);
|
|
13821
13901
|
return `
|
|
13822
13902
|
${deps.orchestratorAgentPath} regenerated (permission aligned with YOLO).`;
|
|
@@ -16286,6 +16366,7 @@ async function recallMemory(deps, queryText, query) {
|
|
|
16286
16366
|
import { tool } from "@opencode-ai/plugin";
|
|
16287
16367
|
import { z as z22 } from "zod";
|
|
16288
16368
|
var _pluginWarnedRoles = new Set;
|
|
16369
|
+
var EMPTY_ROLE_ID_SET = new Set;
|
|
16289
16370
|
var RoleAssignmentSchema = z22.object({
|
|
16290
16371
|
roleID: z22.string().min(1).describe("Role identifier from the roster"),
|
|
16291
16372
|
prompt: z22.string().min(1).describe("Work prompt for this role"),
|
|
@@ -16489,7 +16570,7 @@ async function buildMemoryRuntimeFromConfig(config, deps, options = {}) {
|
|
|
16489
16570
|
// package.json
|
|
16490
16571
|
var package_default = {
|
|
16491
16572
|
name: "@jmanuelcorral/openteam",
|
|
16492
|
-
version: "0.17.
|
|
16573
|
+
version: "0.17.6",
|
|
16493
16574
|
packageManager: "bun@1.3.14",
|
|
16494
16575
|
description: "Cost-aware, local-first routing plugin for opencode with cheapest-capable frontier fallback and multi-agent orchestration.",
|
|
16495
16576
|
license: "MIT",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/commands/dispatch.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/commands/dispatch.ts"],"names":[],"mappings":"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"}
|
|
@@ -137,16 +137,28 @@ export type DoctorRosterAudit = {
|
|
|
137
137
|
readonly unprofiledRoleEntries?: readonly DoctorRosterAuditEntry[];
|
|
138
138
|
};
|
|
139
139
|
/**
|
|
140
|
-
* Reports
|
|
140
|
+
* Reports a runtime's per-model slot split, and — the #217 fix — makes the
|
|
141
|
+
* previously SILENT case loud.
|
|
141
142
|
*
|
|
142
|
-
*
|
|
143
|
-
*
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
143
|
+
* Slots belong to the loaded model, not the server: a Lemonade host declaring 4
|
|
144
|
+
* server slots may serve its coder model at `--parallel 3` and its thinking
|
|
145
|
+
* model at `--parallel 1`, so roles routed to the thinking model serialise on a
|
|
146
|
+
* single slot. There are three outcomes:
|
|
147
|
+
*
|
|
148
|
+
* 1. The config DECLARES `modelConcurrency` → print the declared split, exactly
|
|
149
|
+
* as before.
|
|
150
|
+
* 2. The config declares none but the reachable runtime REPORTED slot counts
|
|
151
|
+
* over its API → print what was detected (openteam now applies it at
|
|
152
|
+
* runtime, #217) plus a remedy to pin it in config so it survives restarts
|
|
153
|
+
* and outranks detection.
|
|
154
|
+
* 3. The config declares none and a reachable runtime serving models reported
|
|
155
|
+
* none → warn, because this is exactly the over-dispatch config that used to
|
|
156
|
+
* print nothing at all, leaving the operator no signal.
|
|
157
|
+
*
|
|
158
|
+
* Returns an empty array (prints nothing) for an unreachable runtime or one
|
|
159
|
+
* serving no models, where there is nothing to substantiate. Pure.
|
|
148
160
|
*/
|
|
149
|
-
export declare function runtimeModelSlotsLine(runtime: LocalRuntime | undefined): string
|
|
161
|
+
export declare function runtimeModelSlotsLine(runtime: LocalRuntime | undefined, snapshot?: LocalRuntimeSnapshot): string[];
|
|
150
162
|
/**
|
|
151
163
|
* Doctor's view of local-runtime queue-wait telemetry (#144). Presence of this
|
|
152
164
|
* object means queue telemetry was consulted; `summary === undefined` means it
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/setup.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ModelCapabilityProfile } from "../capabilities/types";
|
|
2
|
-
import { type OpenTeamConfig, type PrivacyMode, type RouterMode } from "../config/schema";
|
|
2
|
+
import { type ModelRef, type OpenTeamConfig, type PrivacyMode, type RouterMode } from "../config/schema";
|
|
3
3
|
import type { LocalModelInfo, LocalRuntimeId, LocalRuntimeKind } from "../local/types";
|
|
4
4
|
import type { CliResult } from "./dispatch";
|
|
5
5
|
import { type FrontierChoice as FrontierChoiceType } from "./frontierCatalog";
|
|
@@ -202,6 +202,24 @@ export declare function buildOpenTeamConfig(answers: SetupAnswers): OpenTeamConf
|
|
|
202
202
|
* Construye el opencode.json: declara el plugin, los providers locales
|
|
203
203
|
* OpenAI-compatible y el modelo por defecto (baseline frontier). Pure.
|
|
204
204
|
*/
|
|
205
|
+
/**
|
|
206
|
+
* Model reference written into the generated primary `openteam` agent's
|
|
207
|
+
* `model:` frontmatter field (GE-072). Pure: no I/O.
|
|
208
|
+
*
|
|
209
|
+
* This value is load-bearing: opencode resolves the primary agent directly
|
|
210
|
+
* against it, so it must name a provider setup actually configured in
|
|
211
|
+
* `opencode.json`. In local-only mode that is the primary local runtime's
|
|
212
|
+
* THINKING model (`thinkingModel ?? defaultModel`) under that runtime's provider
|
|
213
|
+
* id — planning, decomposition and delegation is a reasoning workload, while the
|
|
214
|
+
* coder model serves the implementer subagents. Emitting the frontier baseline
|
|
215
|
+
* here (correct only as the inert `baseline.hardDefault`) would write an
|
|
216
|
+
* unresolvable `provider/model` into the agent, which is the whole defect. When
|
|
217
|
+
* no local runtime is enabled there is nothing local to point at, so — mirroring
|
|
218
|
+
* `buildOpencodeConfig`'s `primaryLocal !== undefined` guard — the recorded
|
|
219
|
+
* frontier baseline is used. In normal mode it is always the chosen
|
|
220
|
+
* cheapest-capable frontier baseline.
|
|
221
|
+
*/
|
|
222
|
+
export declare function orchestratorAgentModel(answers: SetupAnswers): ModelRef;
|
|
205
223
|
export declare function buildOpencodeConfig(answers: SetupAnswers): OpencodeConfig;
|
|
206
224
|
export declare function serializeOpencodeConfig(config: OpencodeConfig): string;
|
|
207
225
|
export type SelectChoice<T> = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,MAAM,EAEX,KAAK,YAAY,EAGlB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,KAAK,EACV,OAAO,EAEP,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAGL,KAAK,cAAc,EAGpB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EAEL,KAAK,YAAY,EAElB,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAC;AAezB,OAAO,EAEL,eAAe,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,MAAM,EAEX,KAAK,YAAY,EAGlB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,KAAK,EACV,OAAO,EAEP,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAGL,KAAK,cAAc,EAGpB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EAEL,KAAK,YAAY,EAElB,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAC;AAezB,OAAO,EAEL,eAAe,EAGhB,MAAM,kBAAkB,CAAC;AAwD1B,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAInB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAEL,KAAK,SAAS,EAGf,MAAM,sBAAsB,CAAC;AAoB9B,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,EACd,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CAGN;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,EACd,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CAGN;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CAEN;AAID,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,GAAG,EACd,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CASN;AAED,eAAO,MAAM,0CAA0C,KAAK,CAAC;AAE7D,wBAAgB,sCAAsC,CACpD,SAAS,SAA6C,EACtD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAwB1B;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,EAC1D,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CAsBN;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CASN;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,mBAAmB,EAC3B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CAaN;AAOD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAS7B;AAyCD;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG;IACzC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;CACzC,CAAC;AAEF,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAYjE,KAAK,0BAA0B,GAAG;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC/C,CAAC;AAiKF,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,GAAG,EACd,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,mBAAmB,CAAC,CAW9B;AAED,KAAK,gCAAgC,GAAG,0BAA0B,GAAG;IACnE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC,CAAC;AAUF,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,GAAG,EACd,OAAO,GAAE,gCAAqC,GAC7C,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAyCpC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,eAAe,EACxB,eAAe,EAAE,mBAAmB,EACpC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,EAClC,YAAY,GAAE,CACZ,IAAI,EAAE,MAAM,KACT,OAAO,CAAC,MAAM,GAAG,SAAS,CAA2B,GACzD,OAAO,CAAC,cAAc,CAAC,CAiGzB;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kCAAkC,QAGgB,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CAWhC;AACD,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,eAAe,GACvB,aAAa,CAmBf;AAuCD,wBAAgB,eAAe,CAC7B,UAAU,EAAE,OAAO,EACnB,OAAO,GAAE,eAAwD,EACjE,OAAO,GAAE;IACP,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC,GACL,SAAS,CAiCX;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAOrD;AA+DD,wBAAgB,aAAa,CAC3B,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,MAAM,EACrB,WAAW,GAAE,MAA6B,EAC1C,OAAO,GAAE,eAAwD,EACjE,cAAc,GAAE,YAAwB,EACxC,UAAU,CAAC,EAAE,OAAO,EACpB,sBAAsB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,GACzD,OAAO,CA2GT;AA2JD,eAAO,MAAM,MAAM,EAAE,MAibpB,CAAC;AAEF,QAAA,MAAM,MAAM,EAAE,YAGb,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;eAE7B,MAAM"}
|
package/dist/index.js
CHANGED
|
@@ -3718,8 +3718,8 @@ import { promisify } from "node:util";
|
|
|
3718
3718
|
var ORCHESTRATOR_AGENT_PATH = ".opencode/agent/openteam.md";
|
|
3719
3719
|
var OPENTEAM_ROSTER_PATH = ".opencode/openteam/roster.md";
|
|
3720
3720
|
var OPENTEAM_ROSTER_FILENAME = OPENTEAM_ROSTER_PATH.split("/").pop() ?? OPENTEAM_ROSTER_PATH;
|
|
3721
|
-
function buildOrchestratorAgent(
|
|
3722
|
-
const
|
|
3721
|
+
function buildOrchestratorAgent(model, options = {}) {
|
|
3722
|
+
const modelSpec = `${model.providerID}/${model.modelID}`;
|
|
3723
3723
|
const permissionLines = options.yolo ? ["permission:", ' "*": allow'] : [
|
|
3724
3724
|
"permission:",
|
|
3725
3725
|
" read: allow",
|
|
@@ -3738,7 +3738,7 @@ function buildOrchestratorAgent(frontier, options = {}) {
|
|
|
3738
3738
|
"---",
|
|
3739
3739
|
'description: "openteam multi-agent orchestrator: on every request it checks whether a team exists; if not, it understands the tasks and creates the team of subagents on demand, plans dependencies, parallelizes independent work and keeps the todo list attributed to the owner of each task, with local-first routing."',
|
|
3740
3740
|
"mode: primary",
|
|
3741
|
-
`model: ${
|
|
3741
|
+
`model: ${modelSpec}`,
|
|
3742
3742
|
"temperature: 0.2",
|
|
3743
3743
|
...permissionLines,
|
|
3744
3744
|
"---"
|
|
@@ -5534,6 +5534,8 @@ var NON_TEXT_LABELS = new Set([
|
|
|
5534
5534
|
"reranking"
|
|
5535
5535
|
]);
|
|
5536
5536
|
var PARALLEL_ARG = /(?:^|\s)(?:--parallel|-np)[\s=]+(\d+)(?!\d)/;
|
|
5537
|
+
var PARALLEL_FLAGS = new Set(["--parallel", "-np"]);
|
|
5538
|
+
var PARALLEL_FUSED = /^(?:--parallel|-np)=(\d+)$/;
|
|
5537
5539
|
function createLemonadeAdapter() {
|
|
5538
5540
|
const listModels = async (options) => {
|
|
5539
5541
|
const baseURL = normalizeBaseURL(options.baseURL ?? LEMONADE_DEFAULT_BASE_URL);
|
|
@@ -5634,15 +5636,49 @@ async function readLoadedModels(baseURL, fetch) {
|
|
|
5634
5636
|
return loaded;
|
|
5635
5637
|
}
|
|
5636
5638
|
function readSlotCount(entry) {
|
|
5639
|
+
return slotsFromLlamacppArgs(entry) ?? slotsFromLaunchCommand(entry);
|
|
5640
|
+
}
|
|
5641
|
+
function slotsFromLlamacppArgs(entry) {
|
|
5637
5642
|
const options = entry.recipe_options;
|
|
5638
5643
|
if (!isObject2(options) || typeof options.llamacpp_args !== "string") {
|
|
5639
5644
|
return;
|
|
5640
5645
|
}
|
|
5641
5646
|
const match = PARALLEL_ARG.exec(options.llamacpp_args);
|
|
5642
|
-
|
|
5647
|
+
return match === null ? undefined : positiveSlotCount(match[1]);
|
|
5648
|
+
}
|
|
5649
|
+
function slotsFromLaunchCommand(entry) {
|
|
5650
|
+
const argv = entry.launch_command;
|
|
5651
|
+
if (!Array.isArray(argv)) {
|
|
5652
|
+
return;
|
|
5653
|
+
}
|
|
5654
|
+
for (let index = 0;index < argv.length; index += 1) {
|
|
5655
|
+
const token = argv[index];
|
|
5656
|
+
if (typeof token !== "string") {
|
|
5657
|
+
continue;
|
|
5658
|
+
}
|
|
5659
|
+
const fused = PARALLEL_FUSED.exec(token);
|
|
5660
|
+
if (fused !== null) {
|
|
5661
|
+
const slots = positiveSlotCount(fused[1]);
|
|
5662
|
+
if (slots !== undefined) {
|
|
5663
|
+
return slots;
|
|
5664
|
+
}
|
|
5665
|
+
continue;
|
|
5666
|
+
}
|
|
5667
|
+
if (PARALLEL_FLAGS.has(token)) {
|
|
5668
|
+
const next = argv[index + 1];
|
|
5669
|
+
const slots = typeof next === "string" ? positiveSlotCount(next) : undefined;
|
|
5670
|
+
if (slots !== undefined) {
|
|
5671
|
+
return slots;
|
|
5672
|
+
}
|
|
5673
|
+
}
|
|
5674
|
+
}
|
|
5675
|
+
return;
|
|
5676
|
+
}
|
|
5677
|
+
function positiveSlotCount(raw) {
|
|
5678
|
+
if (raw === undefined || !/^\d+$/.test(raw)) {
|
|
5643
5679
|
return;
|
|
5644
5680
|
}
|
|
5645
|
-
const parsed = Number.parseInt(
|
|
5681
|
+
const parsed = Number.parseInt(raw, 10);
|
|
5646
5682
|
return Number.isInteger(parsed) && parsed > 0 ? parsed : undefined;
|
|
5647
5683
|
}
|
|
5648
5684
|
function enrichWithLoadState(models, loaded) {
|
|
@@ -5768,6 +5804,24 @@ function reachableRuntimeIds(snapshots) {
|
|
|
5768
5804
|
}
|
|
5769
5805
|
return ids;
|
|
5770
5806
|
}
|
|
5807
|
+
function reportedModelSlotsByRuntime(snapshots) {
|
|
5808
|
+
const byRuntime = new Map;
|
|
5809
|
+
for (const snapshot of snapshots) {
|
|
5810
|
+
if (!snapshot.reachable) {
|
|
5811
|
+
continue;
|
|
5812
|
+
}
|
|
5813
|
+
const slots = {};
|
|
5814
|
+
for (const model of snapshot.models) {
|
|
5815
|
+
if (model.slots !== undefined) {
|
|
5816
|
+
slots[model.modelID] = model.slots;
|
|
5817
|
+
}
|
|
5818
|
+
}
|
|
5819
|
+
if (Object.keys(slots).length > 0) {
|
|
5820
|
+
byRuntime.set(snapshot.id, slots);
|
|
5821
|
+
}
|
|
5822
|
+
}
|
|
5823
|
+
return byRuntime;
|
|
5824
|
+
}
|
|
5771
5825
|
|
|
5772
5826
|
// src/local/slotPool.ts
|
|
5773
5827
|
var POOL_SEPARATOR = "::";
|
|
@@ -5799,6 +5853,15 @@ function slotPoolReservedInteractive(runtime, modelID) {
|
|
|
5799
5853
|
function unknownPoolCapacity() {
|
|
5800
5854
|
return DEFAULT_LOCAL_MAX_CONCURRENCY;
|
|
5801
5855
|
}
|
|
5856
|
+
function withReportedModelSlots(runtime, reported) {
|
|
5857
|
+
if (reported === undefined || Object.keys(reported).length === 0) {
|
|
5858
|
+
return runtime;
|
|
5859
|
+
}
|
|
5860
|
+
return {
|
|
5861
|
+
...runtime,
|
|
5862
|
+
modelConcurrency: { ...reported, ...runtime.modelConcurrency }
|
|
5863
|
+
};
|
|
5864
|
+
}
|
|
5802
5865
|
|
|
5803
5866
|
// src/orchestrator/coordinator.ts
|
|
5804
5867
|
import { z as z17 } from "zod";
|
|
@@ -6969,7 +7032,8 @@ async function runRoleTaskWithCorrelation(input, deps, correlation, batch) {
|
|
|
6969
7032
|
if (runtimeId !== undefined && deps.runtimeLimiter !== undefined) {
|
|
6970
7033
|
const limiter = deps.runtimeLimiter;
|
|
6971
7034
|
const priority = priorityForRole(role);
|
|
6972
|
-
const
|
|
7035
|
+
const dispatchRuntime = configuredRuntime(runtimeId, input.config) ?? { id: runtimeId };
|
|
7036
|
+
const poolKey = slotPoolKey(withReportedModelSlots(dispatchRuntime, deps.reportedModelSlots?.(runtimeId)), decision2.selected.modelID);
|
|
6973
7037
|
release = limiter.tryAcquire(poolKey, priority);
|
|
6974
7038
|
let waitedMs = 0;
|
|
6975
7039
|
if (release === undefined) {
|
|
@@ -8457,13 +8521,27 @@ function runtimeLine(snapshot, runtime) {
|
|
|
8457
8521
|
const slots = declared === undefined ? ` · ${DEFAULT_LOCAL_MAX_CONCURRENCY} slot(s) (default)` : ` · ${declared} slot(s) (declared)`;
|
|
8458
8522
|
return ` ${mark} ${snapshot.id.padEnd(14)} ${snapshot.baseURL || "(no baseURL)"} — ${detail}${slots}`;
|
|
8459
8523
|
}
|
|
8460
|
-
function runtimeModelSlotsLine(runtime) {
|
|
8461
|
-
const
|
|
8462
|
-
if (
|
|
8463
|
-
|
|
8524
|
+
function runtimeModelSlotsLine(runtime, snapshot) {
|
|
8525
|
+
const declared = Object.entries(runtime?.modelConcurrency ?? {});
|
|
8526
|
+
if (declared.length > 0) {
|
|
8527
|
+
const detail = declared.map(([modelID, slots]) => `${modelID} ${slots} slot(s)`).join(" · ");
|
|
8528
|
+
return [` ↳ per-model slots: ${detail}`];
|
|
8529
|
+
}
|
|
8530
|
+
if (runtime === undefined || snapshot === undefined || !snapshot.reachable || snapshot.models.length === 0) {
|
|
8531
|
+
return [];
|
|
8532
|
+
}
|
|
8533
|
+
const reported = snapshot.models.flatMap((model) => model.slots === undefined ? [] : [`${model.modelID} ${model.slots} slot(s)`]);
|
|
8534
|
+
if (reported.length > 0) {
|
|
8535
|
+
return [
|
|
8536
|
+
` ↳ per-model slots (detected from ${snapshot.id}, applied this run): ${reported.join(" · ")}`,
|
|
8537
|
+
" remedy: pin these under this runtime as `modelConcurrency` in .opencode/openteam.json so the split survives restarts and outranks detection."
|
|
8538
|
+
];
|
|
8464
8539
|
}
|
|
8465
|
-
|
|
8466
|
-
|
|
8540
|
+
return [
|
|
8541
|
+
` ⚠ ${snapshot.id} is reachable and serving models but has no per-model slots declared`,
|
|
8542
|
+
" consequence: every model shares one runtime-wide pool sized to maxConcurrency, so a model the runtime serves at fewer parallel slots is over-dispatched and its extra requests queue invisibly inside the runtime where openteam cannot prioritise them.",
|
|
8543
|
+
' remedy: add "modelConcurrency": { "<modelID>": <slots> } to this runtime in .opencode/openteam.json (or re-run `openteam setup`, which detects the counts from the runtime), then re-run `openteam doctor`.'
|
|
8544
|
+
];
|
|
8467
8545
|
}
|
|
8468
8546
|
function isNetworkRuntime(baseURL) {
|
|
8469
8547
|
if (baseURL.length === 0) {
|
|
@@ -8683,7 +8761,7 @@ function gitignoreSection(gitignore) {
|
|
|
8683
8761
|
lines.push(` remedy: add ${quoted} to ${gitignore.path} (or re-run \`openteam setup\`), then re-run \`openteam doctor\`.`);
|
|
8684
8762
|
return lines;
|
|
8685
8763
|
}
|
|
8686
|
-
function agentModelsSection(diagnostics, searchedPaths) {
|
|
8764
|
+
function agentModelsSection(diagnostics, searchedPaths, localOnly) {
|
|
8687
8765
|
const lines = [" agent models:"];
|
|
8688
8766
|
if (diagnostics.length === 0) {
|
|
8689
8767
|
lines.push(" (no agent files in .opencode/agent/)");
|
|
@@ -8697,6 +8775,13 @@ function agentModelsSection(diagnostics, searchedPaths) {
|
|
|
8697
8775
|
if (broken > 0) {
|
|
8698
8776
|
lines.push(` ⚠ ${broken} agent model(s) will not resolve. This is an agent 'model:' declaration error, not the openteam router.`);
|
|
8699
8777
|
}
|
|
8778
|
+
const localOnlyGap = localOnly ? diagnostics.find((d) => d.mode === "primary" && d.resolution?.status === "unresolvable" && d.resolution.reason === "provider-not-configured") : undefined;
|
|
8779
|
+
if (localOnlyGap?.model !== undefined) {
|
|
8780
|
+
lines.push(` ✗ local-only mode, but the primary agent '${localOnlyGap.name}' points at provider '${localOnlyGap.model.providerID}', which opencode.json does not configure.`);
|
|
8781
|
+
lines.push(" cause: `openteam setup` recorded the frontier baseline placeholder as this agent's `model:`. That value is correctly inert as baseline.hardDefault while router.localOnly is true, but an agent's own `model:` is load-bearing, so opencode cannot resolve the coordinator against your local-only providers.");
|
|
8782
|
+
lines.push(" consequence: opencode cannot start the openteam coordinator, so it reads no roster and splits no work — even though every subagent resolves on your local runtime.");
|
|
8783
|
+
lines.push(` remedy: re-run \`openteam setup\` and keep local-only mode to regenerate ${localOnlyGap.sourceFile} with your local thinking model, then re-run \`openteam doctor\`.`);
|
|
8784
|
+
}
|
|
8700
8785
|
lines.push(" note: 'declared' = model set in .opencode/agent/<name>.md frontmatter; 'inherited' = opencode.json default.");
|
|
8701
8786
|
lines.push(" note: static checks are offline and deterministic; live checks need a reachable local runtime and can be inconclusive.");
|
|
8702
8787
|
return lines;
|
|
@@ -8720,9 +8805,9 @@ function renderDoctor(input) {
|
|
|
8720
8805
|
if (classLine !== undefined) {
|
|
8721
8806
|
lines.push(classLine);
|
|
8722
8807
|
}
|
|
8723
|
-
const modelSlots = runtimeModelSlotsLine(runtime);
|
|
8724
|
-
|
|
8725
|
-
lines.push(
|
|
8808
|
+
const modelSlots = runtimeModelSlotsLine(runtime, snapshot);
|
|
8809
|
+
for (const line of modelSlots) {
|
|
8810
|
+
lines.push(line);
|
|
8726
8811
|
}
|
|
8727
8812
|
}
|
|
8728
8813
|
}
|
|
@@ -8785,7 +8870,7 @@ function renderDoctor(input) {
|
|
|
8785
8870
|
lines.push(" Run `openteam clear-cache --delete` to clean up.");
|
|
8786
8871
|
}
|
|
8787
8872
|
if (input.agentModels !== undefined) {
|
|
8788
|
-
lines.push(...agentModelsSection(input.agentModels, input.opencodeConfigPaths ?? []));
|
|
8873
|
+
lines.push(...agentModelsSection(input.agentModels, input.opencodeConfigPaths ?? [], input.config.router.localOnly));
|
|
8789
8874
|
}
|
|
8790
8875
|
if (input.opencodeConfigError !== undefined) {
|
|
8791
8876
|
lines.push(` ⚠ opencode config parse error: ${input.opencodeConfigError}`);
|
|
@@ -10246,8 +10331,8 @@ async function regenerateOrchestratorAgent(deps, config, enable) {
|
|
|
10246
10331
|
Warning: could not regenerate ${deps.orchestratorAgentPath} (missing 'model' in opencode.json); adjust its permission by hand.`;
|
|
10247
10332
|
}
|
|
10248
10333
|
try {
|
|
10249
|
-
const
|
|
10250
|
-
const contents = buildOrchestratorAgent(
|
|
10334
|
+
const agentModel = parseModelRef(model);
|
|
10335
|
+
const contents = buildOrchestratorAgent(agentModel, { yolo: enable });
|
|
10251
10336
|
await deps.writeOrchestratorAgent(contents, deps.orchestratorAgentPath);
|
|
10252
10337
|
return `
|
|
10253
10338
|
${deps.orchestratorAgentPath} regenerated (permission aligned with YOLO).`;
|
|
@@ -12956,6 +13041,7 @@ function createMemoryTool(deps) {
|
|
|
12956
13041
|
import { tool as tool4 } from "@opencode-ai/plugin";
|
|
12957
13042
|
import { z as z25 } from "zod";
|
|
12958
13043
|
var _pluginWarnedRoles = new Set;
|
|
13044
|
+
var EMPTY_ROLE_ID_SET = new Set;
|
|
12959
13045
|
var RoleAssignmentSchema = z25.object({
|
|
12960
13046
|
roleID: z25.string().min(1).describe("Role identifier from the roster"),
|
|
12961
13047
|
prompt: z25.string().min(1).describe("Work prompt for this role"),
|
|
@@ -13363,6 +13449,28 @@ function orchestrateToolDescription(config) {
|
|
|
13363
13449
|
|
|
13364
13450
|
` + "Emit one assignment per role that has genuinely distinct work, in a " + "single call — that is what parallelises the team. A call carrying only " + "one assignment has delegated nothing and is almost always a mistake " + "unless the task truly belongs to a single role. Use `dependsOn` to " + "sequence roles that must wait for another role's output; independent " + "roles are dispatched concurrently.";
|
|
13365
13451
|
}
|
|
13452
|
+
function unknownAssignmentRoleIDs(assignments, config, rosterRoleIDs) {
|
|
13453
|
+
const seen = new Set;
|
|
13454
|
+
const unknown = [];
|
|
13455
|
+
for (const { roleID } of assignments) {
|
|
13456
|
+
if (getRoleProfile(roleID, config.orchestrator?.roles) !== undefined) {
|
|
13457
|
+
continue;
|
|
13458
|
+
}
|
|
13459
|
+
if (rosterRoleIDs.has(roleID)) {
|
|
13460
|
+
continue;
|
|
13461
|
+
}
|
|
13462
|
+
if (seen.has(roleID)) {
|
|
13463
|
+
continue;
|
|
13464
|
+
}
|
|
13465
|
+
seen.add(roleID);
|
|
13466
|
+
unknown.push(roleID);
|
|
13467
|
+
}
|
|
13468
|
+
return unknown;
|
|
13469
|
+
}
|
|
13470
|
+
function formatUnknownRoleError(unknownRoles, assignable) {
|
|
13471
|
+
const offending = unknownRoles.map((roleID) => `"${roleID}"`).join(", ");
|
|
13472
|
+
return `role validation error: unknown role(s) ${offending} — not a roster role ` + "and not declared under orchestrator.roles. " + `Assignable roles: ${assignable.join(", ")}. ` + "Use one of these, or declare the custom role under orchestrator.roles in " + ".opencode/openteam.json before assigning it.";
|
|
13473
|
+
}
|
|
13366
13474
|
function createOrchestrateTool(deps) {
|
|
13367
13475
|
return tool4({
|
|
13368
13476
|
description: orchestrateToolDescription(deps.config),
|
|
@@ -13386,6 +13494,12 @@ function createOrchestrateTool(deps) {
|
|
|
13386
13494
|
return `dependency validation error: ${depError.code} — ${depError.detail}`;
|
|
13387
13495
|
}
|
|
13388
13496
|
try {
|
|
13497
|
+
const needsRoster = parsed.data.assignments.some((assignment) => getRoleProfile(assignment.roleID, deps.config.orchestrator?.roles) === undefined);
|
|
13498
|
+
const rosterRoleIDs = needsRoster ? await deps.rosterRoleIDs() : EMPTY_ROLE_ID_SET;
|
|
13499
|
+
const unknownRoles = unknownAssignmentRoleIDs(parsed.data.assignments, deps.config, rosterRoleIDs);
|
|
13500
|
+
if (unknownRoles.length > 0) {
|
|
13501
|
+
return formatUnknownRoleError(unknownRoles, assignableRoleIDs(deps.config));
|
|
13502
|
+
}
|
|
13389
13503
|
const inputs = buildRoleTaskInputs(parsed.data, deps.config);
|
|
13390
13504
|
const coordinatorDeps = {
|
|
13391
13505
|
client: deps.client,
|
|
@@ -13396,7 +13510,8 @@ function createOrchestrateTool(deps) {
|
|
|
13396
13510
|
warnedRoles: _pluginWarnedRoles,
|
|
13397
13511
|
localRuntimeReachable: deps.localRuntimeReachable,
|
|
13398
13512
|
reachableRuntimeIds: deps.reachableRuntimeIds,
|
|
13399
|
-
runtimeLimiter: deps.runtimeLimiter
|
|
13513
|
+
runtimeLimiter: deps.runtimeLimiter,
|
|
13514
|
+
reportedModelSlots: deps.reportedModelSlots
|
|
13400
13515
|
};
|
|
13401
13516
|
const batch = await runRoleTasks(inputs, coordinatorDeps);
|
|
13402
13517
|
const projected = projectResults(batch.results, batch.cancelled);
|
|
@@ -13760,7 +13875,7 @@ var createOtlpSpanExporter = (connection, config) => {
|
|
|
13760
13875
|
// package.json
|
|
13761
13876
|
var package_default = {
|
|
13762
13877
|
name: "@jmanuelcorral/openteam",
|
|
13763
|
-
version: "0.17.
|
|
13878
|
+
version: "0.17.6",
|
|
13764
13879
|
packageManager: "bun@1.3.14",
|
|
13765
13880
|
description: "Cost-aware, local-first routing plugin for opencode with cheapest-capable frontier fallback and multi-agent orchestration.",
|
|
13766
13881
|
license: "MIT",
|
|
@@ -14224,6 +14339,17 @@ async function readStoredRosterForDoctor(storage) {
|
|
|
14224
14339
|
return content;
|
|
14225
14340
|
}
|
|
14226
14341
|
}
|
|
14342
|
+
async function readStoredRosterRoleIDs(storage) {
|
|
14343
|
+
try {
|
|
14344
|
+
const content = await storage.read(OPENTEAM_ROSTER_PATH);
|
|
14345
|
+
if (content === undefined) {
|
|
14346
|
+
return new Set;
|
|
14347
|
+
}
|
|
14348
|
+
return new Set(parseRoster(content).entries.map((entry) => entry.roleID));
|
|
14349
|
+
} catch {
|
|
14350
|
+
return new Set;
|
|
14351
|
+
}
|
|
14352
|
+
}
|
|
14227
14353
|
var auditStoredRosterForDoctor = (roster, configuredRoles) => typeof roster === "string" ? auditRoster(roster, configuredRoles) : auditRoster(roster, configuredRoles);
|
|
14228
14354
|
function createCliDeps(config, registry, telemetryPath, sessionsDir = DEFAULT_SESSIONS_DIR, storage = createFsStorageProvider(process.cwd()), fallbackSource = "options", rawOptions, resolveOpencodeVersion) {
|
|
14229
14355
|
return {
|
|
@@ -14508,17 +14634,36 @@ var server = async (ctx, rawOptions) => {
|
|
|
14508
14634
|
const effectiveGraphMode = graphConfig.effectiveMode;
|
|
14509
14635
|
const journalRoot2 = config.graph?.journalRoot ?? DEFAULT_GRAPH_JOURNAL_ROOT;
|
|
14510
14636
|
const journal = effectiveGraphMode !== "off" ? createFsGraphJournal(journalRoot2) : undefined;
|
|
14637
|
+
const reportedSlotsByRuntime = new Map;
|
|
14638
|
+
const rememberReportedSlots = (snapshots) => {
|
|
14639
|
+
const reported = reportedModelSlotsByRuntime(snapshots);
|
|
14640
|
+
for (const snapshot of snapshots) {
|
|
14641
|
+
const slots = reported.get(snapshot.id);
|
|
14642
|
+
if (slots === undefined) {
|
|
14643
|
+
reportedSlotsByRuntime.delete(snapshot.id);
|
|
14644
|
+
} else {
|
|
14645
|
+
reportedSlotsByRuntime.set(snapshot.id, slots);
|
|
14646
|
+
}
|
|
14647
|
+
}
|
|
14648
|
+
};
|
|
14649
|
+
const reportedModelSlots = (runtimeId) => reportedSlotsByRuntime.get(runtimeId);
|
|
14511
14650
|
const localRuntimeReachable = async () => {
|
|
14512
14651
|
const snapshots = await registry.probe(config.local.runtimes.filter((runtime) => runtime.enabled));
|
|
14652
|
+
rememberReportedSlots(snapshots);
|
|
14513
14653
|
return anyRuntimeReachable(snapshots);
|
|
14514
14654
|
};
|
|
14515
14655
|
const probeReachableRuntimeIds = async () => {
|
|
14516
14656
|
const snapshots = await registry.probe(config.local.runtimes.filter((runtime) => runtime.enabled));
|
|
14657
|
+
rememberReportedSlots(snapshots);
|
|
14517
14658
|
return reachableRuntimeIds(snapshots);
|
|
14518
14659
|
};
|
|
14519
14660
|
const runtimeById = (key2) => {
|
|
14520
14661
|
const runtimeId = slotPoolRuntimeID(key2);
|
|
14521
|
-
|
|
14662
|
+
const runtime = config.local.runtimes.find((candidate) => candidate.id === runtimeId);
|
|
14663
|
+
if (runtime === undefined) {
|
|
14664
|
+
return;
|
|
14665
|
+
}
|
|
14666
|
+
return withReportedModelSlots(runtime, reportedSlotsByRuntime.get(runtimeId));
|
|
14522
14667
|
};
|
|
14523
14668
|
const runtimeLimiter = createRuntimeConcurrencyLimiter({
|
|
14524
14669
|
capacityFor: (key2) => {
|
|
@@ -14543,6 +14688,8 @@ var server = async (ctx, rawOptions) => {
|
|
|
14543
14688
|
localRuntimeReachable,
|
|
14544
14689
|
reachableRuntimeIds: probeReachableRuntimeIds,
|
|
14545
14690
|
runtimeLimiter,
|
|
14691
|
+
reportedModelSlots,
|
|
14692
|
+
rosterRoleIDs: () => readStoredRosterRoleIDs(storage),
|
|
14546
14693
|
warn: diagnostics.warn("unknown-role")
|
|
14547
14694
|
});
|
|
14548
14695
|
const memoryTool = createMemoryTool({
|
|
@@ -14564,7 +14711,8 @@ var server = async (ctx, rawOptions) => {
|
|
|
14564
14711
|
warn: diagnostics.warn("unknown-role"),
|
|
14565
14712
|
localRuntimeReachable,
|
|
14566
14713
|
reachableRuntimeIds: probeReachableRuntimeIds,
|
|
14567
|
-
runtimeLimiter
|
|
14714
|
+
runtimeLimiter,
|
|
14715
|
+
reportedModelSlots
|
|
14568
14716
|
}
|
|
14569
14717
|
});
|
|
14570
14718
|
const registerCastTool = createRegisterCastTool({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lemonade.d.ts","sourceRoot":"","sources":["../../src/local/lemonade.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAIV,cAAc,EAGf,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,eAAO,MAAM,yBAAyB,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"lemonade.d.ts","sourceRoot":"","sources":["../../src/local/lemonade.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAIV,cAAc,EAGf,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,eAAO,MAAM,yBAAyB,kCAAkC,CAAC;AAmCzE,wBAAgB,qBAAqB,IAAI,cAAc,CA0CtD"}
|
package/dist/local/registry.d.ts
CHANGED
|
@@ -33,4 +33,18 @@ export declare function anyRuntimeReachable(snapshots: readonly LocalRuntimeSnap
|
|
|
33
33
|
* one. Pure over probe results; reachability I/O lives in `RuntimeRegistry.probe`.
|
|
34
34
|
*/
|
|
35
35
|
export declare function reachableRuntimeIds(snapshots: readonly LocalRuntimeSnapshot[]): Set<LocalRuntimeId>;
|
|
36
|
+
/**
|
|
37
|
+
* Per-model slot counts each reachable runtime REPORTED over its API, keyed by
|
|
38
|
+
* runtime instance id then by model id (#217).
|
|
39
|
+
*
|
|
40
|
+
* The health-probe path already carries the slot count a model was loaded with
|
|
41
|
+
* (`LocalModelInfo.slots`), measured from the runtime itself — on a live
|
|
42
|
+
* Lemonade host the coder model served `--parallel 3` while the thinking model
|
|
43
|
+
* served `--parallel 1`. Surfacing that here lets the plugin apply those counts
|
|
44
|
+
* to a config that declares none, so a low-slot model stops being over-dispatched
|
|
45
|
+
* to. A runtime that reports no slots (an adapter that cannot, or a server too
|
|
46
|
+
* old to expose them) contributes no entry, preserving the single-pool default.
|
|
47
|
+
* Pure over probe results; probing I/O lives in `RuntimeRegistry.probe`.
|
|
48
|
+
*/
|
|
49
|
+
export declare function reportedModelSlotsByRuntime(snapshots: readonly LocalRuntimeSnapshot[]): Map<LocalRuntimeId, Record<string, number>>;
|
|
36
50
|
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/local/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAoB,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAMtD,OAAO,KAAK,EACV,KAAK,EACL,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;IACb,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;CAC9D,CAAC;AAEF,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2C;IACpE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA+B;IAEhE,YAAY,OAAO,EAAE,sBAAsB,EAW1C;IAEK,KAAK,CACT,QAAQ,EAAE,SAAS,YAAY,EAAE,GAChC,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA+BjC;IAED,OAAO,CAAC,kBAAkB;CAuB3B;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,cAAc,EAAE,CAWlB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,OAAO,CAET;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,GAAG,CAAC,cAAc,CAAC,CAQrB"}
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/local/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAoB,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAMtD,OAAO,KAAK,EACV,KAAK,EACL,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;IACb,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;CAC9D,CAAC;AAEF,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2C;IACpE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA+B;IAEhE,YAAY,OAAO,EAAE,sBAAsB,EAW1C;IAEK,KAAK,CACT,QAAQ,EAAE,SAAS,YAAY,EAAE,GAChC,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA+BjC;IAED,OAAO,CAAC,kBAAkB;CAuB3B;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,cAAc,EAAE,CAWlB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,OAAO,CAET;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,GAAG,CAAC,cAAc,CAAC,CAQrB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,oBAAoB,EAAE,GACzC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAiB7C"}
|
package/dist/local/slotPool.d.ts
CHANGED
|
@@ -53,6 +53,27 @@ export declare function slotPoolReservedInteractive(runtime: Pick<LocalRuntime,
|
|
|
53
53
|
* unbounded capacity. Pure.
|
|
54
54
|
*/
|
|
55
55
|
export declare function unknownPoolCapacity(): number;
|
|
56
|
+
/**
|
|
57
|
+
* A runtime whose per-model slot pools also reflect what the runtime REPORTED
|
|
58
|
+
* over its API, for the models the config declares no slot count for (#217).
|
|
59
|
+
*
|
|
60
|
+
* `openteam setup` writes `modelConcurrency` from the slot counts a runtime
|
|
61
|
+
* reports, but an existing config predating that — or one written by hand —
|
|
62
|
+
* declares none, so every model shares the single `maxConcurrency` pool and a
|
|
63
|
+
* 1-slot model is over-dispatched to (three of four generations then queue
|
|
64
|
+
* inside the server, invisible to the limiter). The runtime already reports its
|
|
65
|
+
* real per-model slot counts on the health-probe path, so folding them in here
|
|
66
|
+
* closes that gap without a re-run of setup.
|
|
67
|
+
*
|
|
68
|
+
* Explicit config ALWAYS wins: a `modelConcurrency` entry the operator wrote
|
|
69
|
+
* overrides the reported count for the same model, because explicit operator
|
|
70
|
+
* intent outranks detection. Reported counts only fill the models the config is
|
|
71
|
+
* silent on.
|
|
72
|
+
*
|
|
73
|
+
* Returns the runtime UNCHANGED when nothing was reported, so a runtime whose
|
|
74
|
+
* adapter cannot report slots keeps its exact prior single-pool behaviour. Pure.
|
|
75
|
+
*/
|
|
76
|
+
export declare function withReportedModelSlots<T extends Pick<LocalRuntime, "modelConcurrency">>(runtime: T, reported: Readonly<Record<string, number>> | undefined): T;
|
|
56
77
|
/** Re-exported so callers resolving pools do not also import the schema module. */
|
|
57
78
|
export { effectiveReservedInteractiveSlots };
|
|
58
79
|
//# sourceMappingURL=slotPool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slotPool.d.ts","sourceRoot":"","sources":["../../src/local/slotPool.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,iCAAiC,EACjC,KAAK,YAAY,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAW9C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,kBAAkB,CAAC,EACtD,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,CAQR;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAG7D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG/D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,gBAAgB,GAAG,kBAAkB,CAAC,EAClE,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,CAIR;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,IAAI,CACX,YAAY,EACZ,gBAAgB,GAAG,kBAAkB,GAAG,0BAA0B,CACnE,EACD,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,CAKR;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,mFAAmF;AACnF,OAAO,EAAE,iCAAiC,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"slotPool.d.ts","sourceRoot":"","sources":["../../src/local/slotPool.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,iCAAiC,EACjC,KAAK,YAAY,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAW9C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,kBAAkB,CAAC,EACtD,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,CAQR;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAG7D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG/D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,gBAAgB,GAAG,kBAAkB,CAAC,EAClE,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,CAIR;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,IAAI,CACX,YAAY,EACZ,gBAAgB,GAAG,kBAAkB,GAAG,0BAA0B,CACnE,EACD,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,CAKR;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,sBAAsB,CACpC,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,EAChD,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,CAQvE;AAED,mFAAmF;AACnF,OAAO,EAAE,iCAAiC,EAAE,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ModelRef } from "../config/schema";
|
|
2
2
|
/**
|
|
3
3
|
* Relative path (from cwd) to the primary agent that `openteam setup` generates. The
|
|
4
4
|
* filename (`openteam`) is the agent name in opencode.
|
|
@@ -18,12 +18,17 @@ export declare const OPENTEAM_ROSTER_PATH = ".opencode/openteam/roster.md";
|
|
|
18
18
|
* casts the team, and creates subagents on demand (including the standard roles
|
|
19
19
|
* scribe, ralph and guardian). Pure: no I/O.
|
|
20
20
|
*
|
|
21
|
-
* `
|
|
22
|
-
* real and resolvable `provider/model
|
|
23
|
-
*
|
|
24
|
-
*
|
|
21
|
+
* `model` sets the orchestrator's `model:` frontmatter field to an **already
|
|
22
|
+
* resolved**, real and resolvable `provider/model`. This value is load-bearing —
|
|
23
|
+
* opencode resolves the primary agent against it directly — so the caller is
|
|
24
|
+
* responsible for choosing a reference whose provider it actually configured:
|
|
25
|
+
* the cheapest-capable frontier baseline in normal mode, or the local runtime's
|
|
26
|
+
* thinking model in local-only mode. Never pass the inert `baseline.hardDefault`
|
|
27
|
+
* placeholder here; that value is only correct as a baseline, not as an agent
|
|
28
|
+
* `model:`. The openteam plugin still routes per message, so subagents this one
|
|
29
|
+
* creates can inherit the default and be routed local-first.
|
|
25
30
|
*/
|
|
26
|
-
export declare function buildOrchestratorAgent(
|
|
31
|
+
export declare function buildOrchestratorAgent(model: ModelRef, options?: {
|
|
27
32
|
yolo?: boolean;
|
|
28
33
|
}): string;
|
|
29
34
|
//# sourceMappingURL=orchestratorAgent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestratorAgent.d.ts","sourceRoot":"","sources":["../../src/opencodeArtifacts/orchestratorAgent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"orchestratorAgent.d.ts","sourceRoot":"","sources":["../../src/opencodeArtifacts/orchestratorAgent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,gCAAgC,CAAC;AAErE;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,iCAAiC,CAAC;AAInE;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,QAAQ,EACf,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GAC/B,MAAM,CAwRR"}
|
|
@@ -93,6 +93,19 @@ export type CoordinatorDeps = {
|
|
|
93
93
|
* released in a `finally`, so it stays pinned to its runtime for its duration.
|
|
94
94
|
*/
|
|
95
95
|
runtimeLimiter?: RuntimeConcurrencyLimiter;
|
|
96
|
+
/**
|
|
97
|
+
* Per-model slot counts a runtime REPORTED over its API, looked up by instance
|
|
98
|
+
* id (#217). When a runtime declares no `modelConcurrency` for a model but the
|
|
99
|
+
* probe observed a slot count for it, the dispatch competes in a per-model pool
|
|
100
|
+
* sized to that reported count instead of the bare runtime pool — so a 1-slot
|
|
101
|
+
* model is not over-dispatched to. Explicit config always wins over the report.
|
|
102
|
+
*
|
|
103
|
+
* Injected reader, not I/O: the composition root probes in `src/local/**` and
|
|
104
|
+
* caches the result, and this port hands the coordinator the cached counts so
|
|
105
|
+
* the dispatch stays free of network access. Optional so existing callers keep
|
|
106
|
+
* the exact pre-#217 single-pool behaviour when it is absent.
|
|
107
|
+
*/
|
|
108
|
+
reportedModelSlots?: (runtimeId: LocalRuntimeId) => Readonly<Record<string, number>> | undefined;
|
|
96
109
|
};
|
|
97
110
|
export type CorrelatedCostRecord = CostRecord & {
|
|
98
111
|
decisionID: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,KAAK,EAEV,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,KAAK,EAEV,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,KAAK,EACV,yBAAyB,EAE1B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EAEf,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAA0B,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAEL,KAAK,YAAY,EAEjB,KAAK,UAAU,EACf,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EACL,KAAK,gBAAgB,EAKtB,MAAM,SAAS,CAAC;AAMjB,OAAO,EACL,KAAK,qBAAqB,EAG1B,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpC,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACnC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qFAAqF;IACrF,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,qBAAqB,CAAC;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B;;;;;;;;;;;;;OAaG;IACH,qBAAqB,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxD;;;;;;;;;;;;;OAaG;IACH,mBAAmB,CAAC,EAAE,MAClB,WAAW,CAAC,cAAc,CAAC,GAC3B,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IACzC;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,EAAE,yBAAyB,CAAC;IAC3C;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,EAAE,CACnB,SAAS,EAAE,cAAc,KACtB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,eAAe,CAAC;IAC1B,UAAU,EAAE,gBAAgB,CAAC;IAC7B,MAAM,EAAE,oBAAoB,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,EAClC,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACxB,IAAI,CAaN;AAsBD;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAOnE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,OAAO,GAAG,SAAS,GAC7B,IAAI,CAQN;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;CACvD,CAAC;AAgHF;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,aAAa,GAAG,WAAW,CAczE;AAoID;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;EAatC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AA0HhF,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,qBAAqB,CA8BvB;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EACD;IACE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC,GACD,SAAS,GACZ,qBAAqB,CASvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,oBAAoB,GAC3B,UAAU,CA4BZ;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,aAAa,EAAE,EAChC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,EAAE,EAAE,MAAM,GACT,YAAY,GAAG,SAAS,CAkB1B;AAUD;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,oBAAoB,EACjC,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,EACV,WAAW,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACrE,UAAU,CAyBZ;AA0KD,wBAAsB,WAAW,CAC/B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,cAAc,CAAC,CAUzB;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;IACnC,oFAAoF;IACpF,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,SAAS,aAAa,EAAE,GAC/B,aAAa,EAAE,EAAE,CA2BnB;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,SAAS,aAAa,EAAE,EAChC,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,eAAe,CAAC,CAiE1B"}
|
|
@@ -170,6 +170,32 @@ export type OrchestrateDeps = {
|
|
|
170
170
|
* queues excess work. Required so dropping the wiring is a compile error.
|
|
171
171
|
*/
|
|
172
172
|
readonly runtimeLimiter: RuntimeConcurrencyLimiter;
|
|
173
|
+
/**
|
|
174
|
+
* Per-model reported-slot reader (#217). A REQUIRED injected reader hand-fed
|
|
175
|
+
* from the composition root's cached probe results, passed through to the
|
|
176
|
+
* coordinator so a config that declares no `modelConcurrency` still caps each
|
|
177
|
+
* model at the slot count the runtime reported (a 1-slot model then stops being
|
|
178
|
+
* over-dispatched to). Required (not optional) so dropping the composition-root
|
|
179
|
+
* wiring is a compile error, the same posture as the limiter and reachability
|
|
180
|
+
* ports. Not I/O: the probe runs in `src/local/**`; this only reads its cache.
|
|
181
|
+
*/
|
|
182
|
+
readonly reportedModelSlots: (runtimeId: LocalRuntimeId) => Readonly<Record<string, number>> | undefined;
|
|
183
|
+
/**
|
|
184
|
+
* Registered project-roster role IDs (#roleid-roster). A REQUIRED injected I/O
|
|
185
|
+
* port — the roster lives on disk behind the `StorageProvider` boundary,
|
|
186
|
+
* outside router purity, so it cannot be read from the pure config. The tool
|
|
187
|
+
* consults it so a role the operator deliberately cast into the roster but has
|
|
188
|
+
* not given an `orchestrator.roles` profile — a product-supported state:
|
|
189
|
+
* `openteam-register-cast` returns success for it and `openteam doctor` prints
|
|
190
|
+
* it as informational, not an error — is accepted, while a name the model
|
|
191
|
+
* invented (present in neither config nor roster) is rejected. Required (not
|
|
192
|
+
* optional) so that dropping the injection at the composition root is a compile
|
|
193
|
+
* error rather than a silent fail-open that would reject legitimately-cast
|
|
194
|
+
* custom roles and reintroduce this exact regression. The adapter MUST be
|
|
195
|
+
* fail-safe: on a missing or unparseable roster it returns an empty set, and it
|
|
196
|
+
* must never throw.
|
|
197
|
+
*/
|
|
198
|
+
readonly rosterRoleIDs: () => Promise<ReadonlySet<string>>;
|
|
173
199
|
};
|
|
174
200
|
/**
|
|
175
201
|
* Builds a `GraphSpecV1` from orchestrate payload assignments. Each assignment
|
|
@@ -230,6 +256,35 @@ export declare function assignableRoleIDs(config: OpenTeamConfig): string[];
|
|
|
230
256
|
* Builds the tool description. Dynamic because the roster is config-driven.
|
|
231
257
|
*/
|
|
232
258
|
export declare function orchestrateToolDescription(config: OpenTeamConfig): string;
|
|
259
|
+
/**
|
|
260
|
+
* Returns the assignment roleIDs that are genuinely invented: they resolve NO
|
|
261
|
+
* curated or configured routing profile AND are not registered in the project
|
|
262
|
+
* roster. This is the exact set that would otherwise fall through to
|
|
263
|
+
* `synthesiseFallbackProfile`, a neutral FRONTIER-ELIGIBLE profile, without the
|
|
264
|
+
* operator ever having asked for that role.
|
|
265
|
+
*
|
|
266
|
+
* A roleID is accepted when either:
|
|
267
|
+
* - `getRoleProfile` resolves it against the built-in `TEAM_ROLES`, a legacy
|
|
268
|
+
* themed alias, or a role the user declared under `orchestrator.roles`; or
|
|
269
|
+
* - it appears in `rosterRoleIDs` — a role the operator deliberately cast into
|
|
270
|
+
* the project roster. A roster entry without a profile is a product-supported
|
|
271
|
+
* state (`openteam-register-cast` returns success for it and `openteam doctor`
|
|
272
|
+
* reports it as informational, not an error), so it must NOT be rejected here.
|
|
273
|
+
*
|
|
274
|
+
* Anything else is a name the coordinator model invented on the fly; routing it
|
|
275
|
+
* on the fallback profile silently bypasses curated routing, so the tool rejects
|
|
276
|
+
* it instead of dispatching it.
|
|
277
|
+
*
|
|
278
|
+
* This preserves the open-roleID doctrine: a genuinely custom project roleID
|
|
279
|
+
* stays valid the moment it is either declared under `orchestrator.roles` or
|
|
280
|
+
* cast into the roster. What is no longer accepted is an undeclared, unregistered
|
|
281
|
+
* name the model guessed.
|
|
282
|
+
*
|
|
283
|
+
* Pure: no I/O, clock, random, or env — the roster is read by the caller through
|
|
284
|
+
* an injected port and passed in as a set. Order-preserving and de-duplicated so
|
|
285
|
+
* the error message lists each offending id exactly once.
|
|
286
|
+
*/
|
|
287
|
+
export declare function unknownAssignmentRoleIDs(assignments: readonly OrchestratePayload["assignments"][number][], config: OpenTeamConfig, rosterRoleIDs: ReadonlySet<string>): string[];
|
|
233
288
|
/**
|
|
234
289
|
* Creates the `openteam-orchestrate` tool.
|
|
235
290
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrateTool.d.ts","sourceRoot":"","sources":["../../src/plugin/orchestrateTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAQ,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlE,OAAO,KAAK,EAEV,YAAY,EACZ,WAAW,EAEZ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACL,KAAK,eAAe,EAIpB,KAAK,cAAc,EAGpB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"orchestrateTool.d.ts","sourceRoot":"","sources":["../../src/plugin/orchestrateTool.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jmanuelcorral/openteam",
|
|
3
|
-
"version": "0.17.
|
|
3
|
+
"version": "0.17.6",
|
|
4
4
|
"packageManager": "bun@1.3.14",
|
|
5
5
|
"description": "Cost-aware, local-first routing plugin for opencode with cheapest-capable frontier fallback and multi-agent orchestration.",
|
|
6
6
|
"license": "MIT",
|