@enderfga/claw-orchestrator 7.12.1 → 7.14.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 +14 -11
- package/configs/engines/README.md +20 -0
- package/configs/engines/dsh.json +17 -0
- package/configs/engines/kimi-code.json +17 -0
- package/dist/bin/cli.js +123 -34
- package/dist/bin/cli.js.map +1 -1
- package/dist/src/acp-server.js +4 -2
- package/dist/src/acp-server.js.map +1 -1
- package/dist/src/autoloop/dispatcher.d.ts +19 -0
- package/dist/src/autoloop/dispatcher.js +57 -0
- package/dist/src/autoloop/dispatcher.js.map +1 -1
- package/dist/src/autoloop/runner.d.ts +102 -2
- package/dist/src/autoloop/runner.js +367 -44
- package/dist/src/autoloop/runner.js.map +1 -1
- package/dist/src/autoloop/types.d.ts +17 -0
- package/dist/src/autoloop/types.js.map +1 -1
- package/dist/src/dashboard/index.html +79 -73
- package/dist/src/embedded-server.js +35 -7
- package/dist/src/embedded-server.js.map +1 -1
- package/dist/src/engine-presets.d.ts +7 -3
- package/dist/src/engine-presets.js +39 -6
- package/dist/src/engine-presets.js.map +1 -1
- package/dist/src/engine-spawn.d.ts +8 -1
- package/dist/src/engine-spawn.js +13 -3
- package/dist/src/engine-spawn.js.map +1 -1
- package/dist/src/index.js +78 -71
- package/dist/src/index.js.map +1 -1
- package/dist/src/kernel/agent-step.d.ts +3 -0
- package/dist/src/kernel/agent-step.js.map +1 -1
- package/dist/src/kernel/engine.d.ts +5 -2
- package/dist/src/kernel/engine.js +11 -12
- package/dist/src/kernel/engine.js.map +1 -1
- package/dist/src/kernel/nodes/autoloop.d.ts +32 -2
- package/dist/src/kernel/nodes/autoloop.js +122 -15
- package/dist/src/kernel/nodes/autoloop.js.map +1 -1
- package/dist/src/kernel/nodes/goal.d.ts +94 -0
- package/dist/src/kernel/nodes/goal.js +386 -0
- package/dist/src/kernel/nodes/goal.js.map +1 -0
- package/dist/src/kernel/nodes/index.d.ts +2 -1
- package/dist/src/kernel/nodes/index.js +3 -1
- package/dist/src/kernel/nodes/index.js.map +1 -1
- package/dist/src/kernel/templates/index.d.ts +27 -3
- package/dist/src/kernel/templates/index.js +78 -1
- package/dist/src/kernel/templates/index.js.map +1 -1
- package/dist/src/kernel/types.d.ts +41 -2
- package/dist/src/kernel/types.js.map +1 -1
- package/dist/src/persistent-acp-session.d.ts +76 -0
- package/dist/src/persistent-acp-session.js +409 -0
- package/dist/src/persistent-acp-session.js.map +1 -0
- package/dist/src/persistent-agy-session.js +1 -0
- package/dist/src/persistent-agy-session.js.map +1 -1
- package/dist/src/persistent-codex-app-session.d.ts +55 -26
- package/dist/src/persistent-codex-app-session.js +109 -24
- package/dist/src/persistent-codex-app-session.js.map +1 -1
- package/dist/src/persistent-codex-session.js +1 -0
- package/dist/src/persistent-codex-session.js.map +1 -1
- package/dist/src/persistent-cursor-session.js +1 -0
- package/dist/src/persistent-cursor-session.js.map +1 -1
- package/dist/src/persistent-custom-session.js +2 -0
- package/dist/src/persistent-custom-session.js.map +1 -1
- package/dist/src/persistent-gemini-session.js +1 -0
- package/dist/src/persistent-gemini-session.js.map +1 -1
- package/dist/src/persistent-grok-session.js +1 -0
- package/dist/src/persistent-grok-session.js.map +1 -1
- package/dist/src/persistent-opencode-session.js +1 -0
- package/dist/src/persistent-opencode-session.js.map +1 -1
- package/dist/src/persistent-session.js +1 -0
- package/dist/src/persistent-session.js.map +1 -1
- package/dist/src/sanitize.d.ts +10 -0
- package/dist/src/sanitize.js +26 -0
- package/dist/src/sanitize.js.map +1 -1
- package/dist/src/session-manager.d.ts +25 -20
- package/dist/src/session-manager.js +92 -43
- package/dist/src/session-manager.js.map +1 -1
- package/dist/src/types.d.ts +35 -1
- package/dist/src/types.js +2 -0
- package/dist/src/types.js.map +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +2 -2
- package/skills/SKILL.md +8 -5
- package/skills/references/acp.md +4 -0
- package/skills/references/autoloop.md +27 -2
- package/skills/references/claude-cli-tracking.md +3 -1
- package/skills/references/cli.md +79 -39
- package/skills/references/dashboard.md +5 -1
- package/skills/references/multi-engine.md +39 -10
- package/skills/references/tools.md +77 -65
- package/skills/references/workflow.md +87 -13
|
@@ -1755,8 +1755,85 @@
|
|
|
1755
1755
|
});
|
|
1756
1756
|
}
|
|
1757
1757
|
|
|
1758
|
+
function autoloopResumeVisible() {
|
|
1759
|
+
const current = state.autoloop.state;
|
|
1760
|
+
if (!current) return false;
|
|
1761
|
+
if (state.autoloop.live === false) return true;
|
|
1762
|
+
return current.status === 'paused' || current.status === 'terminated';
|
|
1763
|
+
}
|
|
1764
|
+
|
|
1765
|
+
function syncAutoloopResumeButton() {
|
|
1766
|
+
const existing = document.getElementById('auto-resume');
|
|
1767
|
+
if (!autoloopResumeVisible()) {
|
|
1768
|
+
if (existing) existing.remove();
|
|
1769
|
+
return;
|
|
1770
|
+
}
|
|
1771
|
+
const bar = document.querySelector('.topbar');
|
|
1772
|
+
if (!bar || existing) return;
|
|
1773
|
+
const runId = state.autoloop.runId;
|
|
1774
|
+
if (!runId) return;
|
|
1775
|
+
const btn = document.createElement('button');
|
|
1776
|
+
btn.id = 'auto-resume';
|
|
1777
|
+
btn.textContent = 'Resume run';
|
|
1778
|
+
btn.style.cssText =
|
|
1779
|
+
'padding:6px 12px;border:1px solid var(--border);background:var(--accent);color:#fff;border-radius:6px;cursor:pointer;font:inherit;font-weight:600;margin-left:auto';
|
|
1780
|
+
btn.addEventListener('click', async () => {
|
|
1781
|
+
btn.disabled = true;
|
|
1782
|
+
btn.textContent = 'Resuming…';
|
|
1783
|
+
try {
|
|
1784
|
+
const body = {};
|
|
1785
|
+
if (state.autoloop.state && state.autoloop.state.pending_dispatch) {
|
|
1786
|
+
body.pending_dispatch_id = state.autoloop.state.pending_dispatch.dispatch_id;
|
|
1787
|
+
body.send_timeout_ms = (state.autoloop.state.pending_dispatch.timeout_ms || 600000) + 60000;
|
|
1788
|
+
}
|
|
1789
|
+
// A run whose roles used a custom engine cannot be resumed
|
|
1790
|
+
// from an empty body: the config carries credentials, so it is
|
|
1791
|
+
// never persisted and has to be supplied again. What is sent
|
|
1792
|
+
// is a *name* the server resolves from its own environment
|
|
1793
|
+
// (CLAWO_CUSTOM_ENGINE_<REF>) — no credential goes over the
|
|
1794
|
+
// wire, and this button stops being the one caller that
|
|
1795
|
+
// cannot resume such a run.
|
|
1796
|
+
const reqRes = await fetch(`/autoloop/${encodeURIComponent(runId)}/resume-requirements`);
|
|
1797
|
+
const reqJson = reqRes.ok ? await reqRes.json().catch(() => null) : null;
|
|
1798
|
+
for (const role of (reqJson && reqJson.rolesNeedingCustomEngine) || []) {
|
|
1799
|
+
const ref = prompt(
|
|
1800
|
+
`The ${role} used a custom engine, whose config is never stored.\n\n` +
|
|
1801
|
+
`Enter the reference name set on the orchestrator host as ` +
|
|
1802
|
+
`CLAWO_CUSTOM_ENGINE_<NAME>:`,
|
|
1803
|
+
);
|
|
1804
|
+
if (!ref) {
|
|
1805
|
+
btn.disabled = false;
|
|
1806
|
+
btn.textContent = 'Resume run';
|
|
1807
|
+
return;
|
|
1808
|
+
}
|
|
1809
|
+
body[`${role}CustomEngineRef`] = ref;
|
|
1810
|
+
}
|
|
1811
|
+
const r2 = await fetch(`/autoloop/${encodeURIComponent(runId)}/resume`, {
|
|
1812
|
+
method: 'POST',
|
|
1813
|
+
headers: { 'content-type': 'application/json' },
|
|
1814
|
+
body: JSON.stringify(body),
|
|
1815
|
+
});
|
|
1816
|
+
if (!r2.ok) {
|
|
1817
|
+
const j2 = await r2.json().catch(() => ({}));
|
|
1818
|
+
alert(`Resume failed: ${(j2 && j2.error) || `HTTP ${r2.status}`}`);
|
|
1819
|
+
btn.disabled = false;
|
|
1820
|
+
btn.textContent = 'Resume run';
|
|
1821
|
+
return;
|
|
1822
|
+
}
|
|
1823
|
+
closeStreams();
|
|
1824
|
+
openAutoloop(runId);
|
|
1825
|
+
} catch (err) {
|
|
1826
|
+
alert(`Resume failed: ${(err && err.message) || err}`);
|
|
1827
|
+
btn.disabled = false;
|
|
1828
|
+
btn.textContent = 'Resume run';
|
|
1829
|
+
}
|
|
1830
|
+
});
|
|
1831
|
+
bar.appendChild(btn);
|
|
1832
|
+
}
|
|
1833
|
+
|
|
1758
1834
|
async function openAutoloop(id) {
|
|
1759
1835
|
renderAutoloopShell();
|
|
1836
|
+
state.autoloop.runId = id;
|
|
1760
1837
|
$('auto-id').textContent = id;
|
|
1761
1838
|
// Initial state fetch
|
|
1762
1839
|
try {
|
|
@@ -1805,79 +1882,7 @@
|
|
|
1805
1882
|
paintReviewer();
|
|
1806
1883
|
}
|
|
1807
1884
|
}
|
|
1808
|
-
|
|
1809
|
-
// send, surface a Resume affordance under the top bar. The button kicks
|
|
1810
|
-
// off /autoloop/<id>/resume and then re-runs openAutoloop so SSE
|
|
1811
|
-
// reconnects with the live state. A live run paused for any other
|
|
1812
|
-
// reason (an expired activity lease, an explicit pause) gets no button:
|
|
1813
|
-
// resume only acts on a pending dispatch there, so it would be a no-op.
|
|
1814
|
-
if (
|
|
1815
|
-
state.autoloop.state &&
|
|
1816
|
-
(!state.autoloop.live ||
|
|
1817
|
-
state.autoloop.state.status === 'terminated' ||
|
|
1818
|
-
(state.autoloop.state.status === 'paused' && state.autoloop.state.pending_dispatch))
|
|
1819
|
-
) {
|
|
1820
|
-
const bar = document.querySelector('.topbar');
|
|
1821
|
-
if (bar && !document.getElementById('auto-resume')) {
|
|
1822
|
-
const btn = document.createElement('button');
|
|
1823
|
-
btn.id = 'auto-resume';
|
|
1824
|
-
btn.textContent = 'Resume run';
|
|
1825
|
-
btn.style.cssText =
|
|
1826
|
-
'padding:6px 12px;border:1px solid var(--border);background:var(--accent);color:#fff;border-radius:6px;cursor:pointer;font:inherit;font-weight:600;margin-left:auto';
|
|
1827
|
-
btn.addEventListener('click', async () => {
|
|
1828
|
-
btn.disabled = true;
|
|
1829
|
-
btn.textContent = 'Resuming…';
|
|
1830
|
-
try {
|
|
1831
|
-
const body = {};
|
|
1832
|
-
if (state.autoloop.state && state.autoloop.state.pending_dispatch) {
|
|
1833
|
-
body.pending_dispatch_id = state.autoloop.state.pending_dispatch.dispatch_id;
|
|
1834
|
-
body.send_timeout_ms = (state.autoloop.state.pending_dispatch.timeout_ms || 600000) + 60000;
|
|
1835
|
-
}
|
|
1836
|
-
// A run whose roles used a custom engine cannot be resumed
|
|
1837
|
-
// from an empty body: the config carries credentials, so it is
|
|
1838
|
-
// never persisted and has to be supplied again. What is sent
|
|
1839
|
-
// is a *name* the server resolves from its own environment
|
|
1840
|
-
// (CLAWO_CUSTOM_ENGINE_<REF>) — no credential goes over the
|
|
1841
|
-
// wire, and this button stops being the one caller that
|
|
1842
|
-
// cannot resume such a run.
|
|
1843
|
-
const reqRes = await fetch(`/autoloop/${encodeURIComponent(id)}/resume-requirements`);
|
|
1844
|
-
const reqJson = reqRes.ok ? await reqRes.json().catch(() => null) : null;
|
|
1845
|
-
for (const role of (reqJson && reqJson.rolesNeedingCustomEngine) || []) {
|
|
1846
|
-
const ref = prompt(
|
|
1847
|
-
`The ${role} used a custom engine, whose config is never stored.\n\n` +
|
|
1848
|
-
`Enter the reference name set on the orchestrator host as ` +
|
|
1849
|
-
`CLAWO_CUSTOM_ENGINE_<NAME>:`,
|
|
1850
|
-
);
|
|
1851
|
-
if (!ref) {
|
|
1852
|
-
btn.disabled = false;
|
|
1853
|
-
btn.textContent = 'Resume run';
|
|
1854
|
-
return;
|
|
1855
|
-
}
|
|
1856
|
-
body[`${role}CustomEngineRef`] = ref;
|
|
1857
|
-
}
|
|
1858
|
-
const r2 = await fetch(`/autoloop/${encodeURIComponent(id)}/resume`, {
|
|
1859
|
-
method: 'POST',
|
|
1860
|
-
headers: { 'content-type': 'application/json' },
|
|
1861
|
-
body: JSON.stringify(body),
|
|
1862
|
-
});
|
|
1863
|
-
if (!r2.ok) {
|
|
1864
|
-
const j2 = await r2.json().catch(() => ({}));
|
|
1865
|
-
alert(`Resume failed: ${(j2 && j2.error) || `HTTP ${r2.status}`}`);
|
|
1866
|
-
btn.disabled = false;
|
|
1867
|
-
btn.textContent = 'Resume run';
|
|
1868
|
-
return;
|
|
1869
|
-
}
|
|
1870
|
-
closeStreams();
|
|
1871
|
-
openAutoloop(id);
|
|
1872
|
-
} catch (err) {
|
|
1873
|
-
alert(`Resume failed: ${(err && err.message) || err}`);
|
|
1874
|
-
btn.disabled = false;
|
|
1875
|
-
btn.textContent = 'Resume run';
|
|
1876
|
-
}
|
|
1877
|
-
});
|
|
1878
|
-
bar.appendChild(btn);
|
|
1879
|
-
}
|
|
1880
|
-
}
|
|
1885
|
+
syncAutoloopResumeButton();
|
|
1881
1886
|
} catch (err) {
|
|
1882
1887
|
/* ignore */
|
|
1883
1888
|
}
|
|
@@ -2036,6 +2041,7 @@
|
|
|
2036
2041
|
input.placeholder = 'Chat with the Planner… (Enter to send)';
|
|
2037
2042
|
}
|
|
2038
2043
|
}
|
|
2044
|
+
syncAutoloopResumeButton();
|
|
2039
2045
|
}
|
|
2040
2046
|
|
|
2041
2047
|
function paintPlanner() {
|
|
@@ -14,6 +14,8 @@ import * as crypto from 'node:crypto';
|
|
|
14
14
|
import { sanitizeCwd, validateRegex } from './validation.js';
|
|
15
15
|
import { resolveSecretRefs } from './kernel/secrets.js';
|
|
16
16
|
import { validateAutoloopTimeoutConfig } from './autoloop/types.js';
|
|
17
|
+
import { isUnconfirmedChatNotice } from './autoloop/dispatcher.js';
|
|
18
|
+
import { boundedErrorReason } from './sanitize.js';
|
|
17
19
|
import { handleChatCompletion } from './openai-compat.js';
|
|
18
20
|
import { getModelList } from './models.js';
|
|
19
21
|
import { DEFAULT_SERVER_PORT, MAX_BODY_SIZE, RATE_LIMIT_MAX_REQUESTS, RATE_LIMIT_WINDOW_MS, OPENAI_COMPAT_SESSION_PREFIX, } from './constants.js';
|
|
@@ -67,7 +69,9 @@ function autoloopErrorStatus(error) {
|
|
|
67
69
|
// so `/session/start` handed the object straight to `startSession()`, which
|
|
68
70
|
// dispatches it to `PersistentCustomSession` and spawns `bin`. A per-route
|
|
69
71
|
// guard is only ever as good as the memory of whoever adds the next route.
|
|
70
|
-
|
|
72
|
+
// `acpAgent` is the same thing for the `acp` engine: an inline config names the
|
|
73
|
+
// command to run.
|
|
74
|
+
const CUSTOM_ENGINE_KEY = /(custom_?engines?|acp_?agents?)$/i;
|
|
71
75
|
const MAX_SCAN_DEPTH = 12;
|
|
72
76
|
/**
|
|
73
77
|
* Deep-scan a request body for any custom-engine payload, returning the
|
|
@@ -121,7 +125,10 @@ function isInlineCustomEngine(value) {
|
|
|
121
125
|
if (typeof value !== 'object' || value === null || Array.isArray(value))
|
|
122
126
|
return false;
|
|
123
127
|
const cfg = value;
|
|
124
|
-
return typeof cfg.bin === 'string' ||
|
|
128
|
+
return (typeof cfg.bin === 'string' ||
|
|
129
|
+
typeof cfg.binEnv === 'string' ||
|
|
130
|
+
typeof cfg.command === 'string' ||
|
|
131
|
+
typeof cfg.commandEnv === 'string');
|
|
125
132
|
}
|
|
126
133
|
function rejectCustomEngineOverHttp(body) {
|
|
127
134
|
const key = findCustomEngineKey(body);
|
|
@@ -1030,16 +1037,26 @@ export class EmbeddedServer {
|
|
|
1030
1037
|
const pathMod = await import('node:path');
|
|
1031
1038
|
const file = pathMod.join(status.ledger_dir, 'chat.jsonl');
|
|
1032
1039
|
const lines = [];
|
|
1040
|
+
// One notice may be appended more than once; its timestamp is its identity.
|
|
1041
|
+
const noticeTimestamps = new Set();
|
|
1033
1042
|
if (fsMod.existsSync(file)) {
|
|
1034
1043
|
for (const line of fsMod.readFileSync(file, 'utf-8').split('\n')) {
|
|
1035
1044
|
if (!line.trim())
|
|
1036
1045
|
continue;
|
|
1046
|
+
let entry;
|
|
1037
1047
|
try {
|
|
1038
|
-
|
|
1048
|
+
entry = JSON.parse(line);
|
|
1039
1049
|
}
|
|
1040
1050
|
catch {
|
|
1041
1051
|
/* skip malformed line */
|
|
1052
|
+
continue;
|
|
1053
|
+
}
|
|
1054
|
+
if (isUnconfirmedChatNotice(entry)) {
|
|
1055
|
+
if (noticeTimestamps.has(entry.ts))
|
|
1056
|
+
continue;
|
|
1057
|
+
noticeTimestamps.add(entry.ts);
|
|
1042
1058
|
}
|
|
1059
|
+
lines.push(entry);
|
|
1043
1060
|
}
|
|
1044
1061
|
}
|
|
1045
1062
|
json(200, { ok: true, entries: lines });
|
|
@@ -1156,7 +1173,8 @@ export class EmbeddedServer {
|
|
|
1156
1173
|
}
|
|
1157
1174
|
// Validate run exists synchronously so 404 surfaces cleanly. After
|
|
1158
1175
|
// this point we hand the message off to the runner and return.
|
|
1159
|
-
|
|
1176
|
+
const live = this.manager.getAutoloop(id);
|
|
1177
|
+
if (!live) {
|
|
1160
1178
|
// Only a run the store still holds can be resumed; anything else —
|
|
1161
1179
|
// a mistyped id included — is simply not found. MCP and CLI callers
|
|
1162
1180
|
// use this endpoint too, so the hint names the API, not a button.
|
|
@@ -1175,13 +1193,23 @@ export class EmbeddedServer {
|
|
|
1175
1193
|
});
|
|
1176
1194
|
return;
|
|
1177
1195
|
}
|
|
1178
|
-
|
|
1196
|
+
// 202 means the chat is in the run checkpoint, not that the Planner
|
|
1197
|
+
// has it: acceptance is synchronous, delivery is not.
|
|
1198
|
+
let env;
|
|
1199
|
+
try {
|
|
1200
|
+
env = this.manager.acceptAutoloopChat(id, text);
|
|
1201
|
+
}
|
|
1202
|
+
catch (err) {
|
|
1203
|
+
json(autoloopErrorStatus(err), { ok: false, error: err.message });
|
|
1204
|
+
return;
|
|
1205
|
+
}
|
|
1206
|
+
json(202, { ok: true, queued: true });
|
|
1207
|
+
void live.runner.send(env).catch((err) => {
|
|
1179
1208
|
// Late failures (planner errors, runner shutdown mid-dispatch) flow
|
|
1180
1209
|
// to SSE as planner_error events; this catch only exists to keep
|
|
1181
1210
|
// unhandled rejection from crashing the server.
|
|
1182
|
-
console.warn(`[autoloop/${id}] chat dispatch failed: ${err
|
|
1211
|
+
console.warn(`[autoloop/${id}] chat dispatch failed: ${boundedErrorReason(err)}`);
|
|
1183
1212
|
});
|
|
1184
|
-
json(202, { ok: true, queued: true });
|
|
1185
1213
|
return;
|
|
1186
1214
|
}
|
|
1187
1215
|
// ─── Autoloop — delete a run ──────────────────────────────
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedded-server.js","sourceRoot":"","sources":["../../src/embedded-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"embedded-server.js","sourceRoot":"","sources":["../../src/embedded-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
* translation out of this repo is what makes a preset something we can honestly
|
|
30
30
|
* ship without owning.
|
|
31
31
|
*/
|
|
32
|
-
import type { CustomEngineConfig } from './types.js';
|
|
32
|
+
import type { AcpAgentConfig, CustomEngineConfig } from './types.js';
|
|
33
33
|
/** Who attests that a preset works, against what, and when. */
|
|
34
34
|
export interface EnginePresetProvenance {
|
|
35
35
|
/** GitHub handle or name of the person answering for this preset. */
|
|
@@ -49,8 +49,10 @@ export interface EnginePreset {
|
|
|
49
49
|
tier: 'community';
|
|
50
50
|
description: string;
|
|
51
51
|
provenance: EnginePresetProvenance;
|
|
52
|
-
/** The custom-engine configuration this preset expands to. */
|
|
53
|
-
engine
|
|
52
|
+
/** The custom-engine configuration this preset expands to (`engine: 'custom'`). */
|
|
53
|
+
engine?: CustomEngineConfig;
|
|
54
|
+
/** Or: the ACP agent this preset starts (`engine: 'acp'`). Exactly one of the two. */
|
|
55
|
+
acp?: AcpAgentConfig;
|
|
54
56
|
}
|
|
55
57
|
/**
|
|
56
58
|
* Reject anything that does not carry a complete, checkable claim.
|
|
@@ -74,3 +76,5 @@ export declare function listEnginePresets(): EnginePreset[];
|
|
|
74
76
|
* back to a default engine that would run something the caller did not ask for.
|
|
75
77
|
*/
|
|
76
78
|
export declare function resolveCustomEngine(value: CustomEngineConfig | string | undefined): CustomEngineConfig | undefined;
|
|
79
|
+
/** Expand an `acpAgent` given as a preset name, like resolveCustomEngine. */
|
|
80
|
+
export declare function resolveAcpAgent(value: AcpAgentConfig | string | undefined): AcpAgentConfig | undefined;
|
|
@@ -71,15 +71,33 @@ export function validatePreset(raw, source) {
|
|
|
71
71
|
if (typeof prov.verifiedOn !== 'string' || !DATE_RE.test(prov.verifiedOn)) {
|
|
72
72
|
fail('`provenance.verifiedOn` must be an ISO date (YYYY-MM-DD)');
|
|
73
73
|
}
|
|
74
|
+
if ((p.engine === undefined) === (p.acp === undefined))
|
|
75
|
+
fail('exactly one of `engine` and `acp` is required');
|
|
76
|
+
// An absolute path is one machine's layout, not a preset. `binEnv` /
|
|
77
|
+
// `commandEnv` is how a preset stays portable across the people who install
|
|
78
|
+
// the engine elsewhere.
|
|
79
|
+
if (p.acp !== undefined) {
|
|
80
|
+
const acp = p.acp;
|
|
81
|
+
if (!acp || typeof acp !== 'object')
|
|
82
|
+
fail('`acp` must be an object');
|
|
83
|
+
if (typeof acp.name !== 'string' || !acp.name.trim())
|
|
84
|
+
fail('`acp.name` is required');
|
|
85
|
+
if (typeof acp.command !== 'string' || !acp.command.trim())
|
|
86
|
+
fail('`acp.command` is required');
|
|
87
|
+
if (path.isAbsolute(acp.command))
|
|
88
|
+
fail('`acp.command` must be a command name, not an absolute path — use `commandEnv`');
|
|
89
|
+
if (acp.args !== undefined && (!Array.isArray(acp.args) || acp.args.some((a) => typeof a !== 'string'))) {
|
|
90
|
+
fail('`acp.args` must be an array of strings');
|
|
91
|
+
}
|
|
92
|
+
return p;
|
|
93
|
+
}
|
|
74
94
|
const eng = p.engine;
|
|
75
95
|
if (!eng || typeof eng !== 'object')
|
|
76
|
-
fail('`engine`
|
|
96
|
+
fail('`engine` must be an object');
|
|
77
97
|
if (typeof eng.name !== 'string' || !eng.name.trim())
|
|
78
98
|
fail('`engine.name` is required');
|
|
79
99
|
if (typeof eng.bin !== 'string' || !eng.bin.trim())
|
|
80
100
|
fail('`engine.bin` is required');
|
|
81
|
-
// An absolute path is one machine's layout, not a preset. `binEnv` is how a
|
|
82
|
-
// preset stays portable across the people who install the engine elsewhere.
|
|
83
101
|
if (path.isAbsolute(eng.bin))
|
|
84
102
|
fail('`engine.bin` must be a command name, not an absolute path — use `binEnv`');
|
|
85
103
|
if (!eng.args || typeof eng.args !== 'object')
|
|
@@ -131,11 +149,26 @@ export function listEnginePresets() {
|
|
|
131
149
|
export function resolveCustomEngine(value) {
|
|
132
150
|
if (value === undefined || typeof value === 'object')
|
|
133
151
|
return value;
|
|
134
|
-
const preset =
|
|
152
|
+
const preset = findPreset(value);
|
|
153
|
+
if (!preset.engine)
|
|
154
|
+
throw new Error(`Engine preset '${value}' is an ACP agent: start it with engine 'acp'.`);
|
|
155
|
+
return preset.engine;
|
|
156
|
+
}
|
|
157
|
+
/** Expand an `acpAgent` given as a preset name, like resolveCustomEngine. */
|
|
158
|
+
export function resolveAcpAgent(value) {
|
|
159
|
+
if (value === undefined || typeof value === 'object')
|
|
160
|
+
return value;
|
|
161
|
+
const preset = findPreset(value);
|
|
162
|
+
if (!preset.acp)
|
|
163
|
+
throw new Error(`Engine preset '${value}' is a custom engine: start it with engine 'custom'.`);
|
|
164
|
+
return preset.acp;
|
|
165
|
+
}
|
|
166
|
+
function findPreset(id) {
|
|
167
|
+
const preset = loadEnginePresets().get(id);
|
|
135
168
|
if (!preset) {
|
|
136
169
|
const known = [...loadEnginePresets().keys()];
|
|
137
|
-
throw new Error(`Unknown engine preset '${
|
|
170
|
+
throw new Error(`Unknown engine preset '${id}'. Bundled presets: ${known.length ? known.join(', ') : '(none)'}.`);
|
|
138
171
|
}
|
|
139
|
-
return preset
|
|
172
|
+
return preset;
|
|
140
173
|
}
|
|
141
174
|
//# sourceMappingURL=engine-presets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine-presets.js","sourceRoot":"","sources":["../../src/engine-presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"engine-presets.js","sourceRoot":"","sources":["../../src/engine-presets.ts"],"names":[],"mappings":"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"}
|