swarmbox 0.16.0 → 0.18.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/CHANGELOG.md +28 -0
- package/dist/checks.d.ts +2 -0
- package/dist/checks.d.ts.map +1 -1
- package/dist/checks.js.map +1 -1
- package/dist/fleet/browser.d.ts +3 -5
- package/dist/fleet/browser.d.ts.map +1 -1
- package/dist/fleet/browser.js +38 -4
- package/dist/fleet/browser.js.map +1 -1
- package/dist/harness.d.ts +17 -2
- package/dist/harness.d.ts.map +1 -1
- package/dist/harness.js +14 -2
- package/dist/harness.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +49 -5
- package/dist/mcp/server.js.map +1 -1
- package/dist/product.d.ts +3 -1
- package/dist/product.d.ts.map +1 -1
- package/dist/runs/report.d.ts.map +1 -1
- package/dist/runs/report.js +11 -0
- package/dist/runs/report.js.map +1 -1
- package/dist/runs/results.d.ts +63 -0
- package/dist/runs/results.d.ts.map +1 -0
- package/dist/runs/results.js +81 -0
- package/dist/runs/results.js.map +1 -0
- package/dist/runs/run.d.ts +19 -1
- package/dist/runs/run.d.ts.map +1 -1
- package/dist/runs/run.js +35 -4
- package/dist/runs/run.js.map +1 -1
- package/dist/serve.d.ts +8 -0
- package/dist/serve.d.ts.map +1 -1
- package/dist/serve.js +8 -1
- package/dist/serve.js.map +1 -1
- package/package.json +1 -1
package/dist/runs/run.js
CHANGED
|
@@ -18,6 +18,7 @@ import { startInstant } from "../time.js";
|
|
|
18
18
|
import { loadScenario } from "../scenarios/spec.js";
|
|
19
19
|
import { openBudget } from "./budget.js";
|
|
20
20
|
import { renderReport } from "./report.js";
|
|
21
|
+
import { buildResults } from "./results.js";
|
|
21
22
|
const minutesSince = (iso) => (Date.now() - Date.parse(iso)) / 60_000;
|
|
22
23
|
/** Under the 60 s an MCP client waits for a tool's answer by default (claude -p's included). */
|
|
23
24
|
const START_WAIT_MS = 45_000;
|
|
@@ -49,7 +50,7 @@ export function createRuns(h, opts = {}) {
|
|
|
49
50
|
findings: r.findings.length,
|
|
50
51
|
});
|
|
51
52
|
/** The world, its clock, the cast on their screens, and the run's record. */
|
|
52
|
-
const open = async (id, scenario, options) => {
|
|
53
|
+
const open = async (id, scenario, options, recheck) => {
|
|
53
54
|
const w = await h.createWorld({
|
|
54
55
|
...(scenario.world.tenants ? { tenants: scenario.world.tenants } : {}),
|
|
55
56
|
seed: scenario.world.seed,
|
|
@@ -97,6 +98,8 @@ export function createRuns(h, opts = {}) {
|
|
|
97
98
|
startedAt: new Date().toISOString(),
|
|
98
99
|
cast,
|
|
99
100
|
findings: [],
|
|
101
|
+
recheck,
|
|
102
|
+
results: [],
|
|
100
103
|
provenance: describeProvenance(w.world.provenance),
|
|
101
104
|
commit: w.world.provenance.commit,
|
|
102
105
|
};
|
|
@@ -109,7 +112,7 @@ export function createRuns(h, opts = {}) {
|
|
|
109
112
|
throw e;
|
|
110
113
|
}
|
|
111
114
|
};
|
|
112
|
-
function begin(scenarioId) {
|
|
115
|
+
function begin(scenarioId, { recheck = [] } = {}) {
|
|
113
116
|
const scenario = loadScenario(scenarioId, scenarioDir);
|
|
114
117
|
const again = [...starts.values()].find((x) => x.scenario === scenario.id && !x.error);
|
|
115
118
|
if (again)
|
|
@@ -130,7 +133,7 @@ export function createRuns(h, opts = {}) {
|
|
|
130
133
|
id,
|
|
131
134
|
scenario: scenario.id,
|
|
132
135
|
since: new Date().toISOString(),
|
|
133
|
-
ready: open(id, scenario, checked?.data),
|
|
136
|
+
ready: open(id, scenario, checked?.data, recheck),
|
|
134
137
|
};
|
|
135
138
|
s.ready.catch((e) => (s.error = e.message));
|
|
136
139
|
starts.set(id, s);
|
|
@@ -204,6 +207,25 @@ export function createRuns(h, opts = {}) {
|
|
|
204
207
|
save(r);
|
|
205
208
|
return finding;
|
|
206
209
|
},
|
|
210
|
+
async result(runId, { ref, outcome, what, screen }) {
|
|
211
|
+
const r = get(runId);
|
|
212
|
+
if (r.endedAt)
|
|
213
|
+
throw new HarnessError(`run ${runId} has ended`);
|
|
214
|
+
if (outcome !== 'not-reached' && !screen)
|
|
215
|
+
throw new HarnessError(`${ref}: ${outcome} needs the screen it was seen on, for the picture`);
|
|
216
|
+
const said = { ref, outcome, what, at: new Date().toISOString() };
|
|
217
|
+
if (screen) {
|
|
218
|
+
if (!r.cast.some((c) => c.screen === screen))
|
|
219
|
+
throw new HarnessError(`screen ${screen} is not in run ${runId}`);
|
|
220
|
+
const shot = join('results', `${ref.replace(/[^\w.-]/g, '_')}.png`);
|
|
221
|
+
mkdirSync(join(r.dir, 'results'), { recursive: true });
|
|
222
|
+
await h.screen(screen).screen.page.screenshot({ path: join(r.dir, shot) });
|
|
223
|
+
said.screenshot = shot;
|
|
224
|
+
}
|
|
225
|
+
r.results = [...r.results.filter((x) => x.ref !== ref), said];
|
|
226
|
+
save(r);
|
|
227
|
+
return said;
|
|
228
|
+
},
|
|
207
229
|
async end(runId, { summary, keepWorld = false } = {}) {
|
|
208
230
|
const r = get(runId);
|
|
209
231
|
if (r.endedAt)
|
|
@@ -241,6 +263,14 @@ export function createRuns(h, opts = {}) {
|
|
|
241
263
|
if (summary)
|
|
242
264
|
r.summary = summary;
|
|
243
265
|
budget.spend(r.browserMinutes);
|
|
266
|
+
// Written before the tracker hears of it, so a tracker that's down never costs a result.
|
|
267
|
+
const results = buildResults({
|
|
268
|
+
...r,
|
|
269
|
+
endedAt: r.endedAt,
|
|
270
|
+
checks: r.checks.results,
|
|
271
|
+
});
|
|
272
|
+
const resultsFile = join(r.dir, 'results.json');
|
|
273
|
+
writeFileSync(resultsFile, `${JSON.stringify(results, null, 2)}\n`);
|
|
244
274
|
if (sink) {
|
|
245
275
|
if (sink.unavailable)
|
|
246
276
|
r.filed = `not registered: ${sink.unavailable}`;
|
|
@@ -251,6 +281,7 @@ export function createRuns(h, opts = {}) {
|
|
|
251
281
|
endedAt: r.endedAt,
|
|
252
282
|
failingChecks: failing(r.checks.results).length,
|
|
253
283
|
reportPath: join(r.dir, 'report.html'),
|
|
284
|
+
results,
|
|
254
285
|
})
|
|
255
286
|
.then(() => (r.filed = 'registered'), (e) => (r.filed = `not registered: ${e.message.slice(0, 200)}`));
|
|
256
287
|
}
|
|
@@ -259,7 +290,7 @@ export function createRuns(h, opts = {}) {
|
|
|
259
290
|
writeFileSync(report, renderReport(r));
|
|
260
291
|
if (!keepWorld && !gone)
|
|
261
292
|
await h.destroyWorld(r.worldId).catch(() => undefined);
|
|
262
|
-
return { ...r, report };
|
|
293
|
+
return { ...r, report, resultsFile };
|
|
263
294
|
},
|
|
264
295
|
overrun(screenId) {
|
|
265
296
|
const r = [...runs.values()].find((x) => !x.endedAt && x.cast.some((c) => c.screen === screenId));
|
package/dist/runs/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/runs/run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/runs/run.ts"],"names":[],"mappings":"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"}
|
package/dist/serve.d.ts
CHANGED
|
@@ -20,7 +20,15 @@ export interface ServeOptions {
|
|
|
20
20
|
handleSignals?: boolean;
|
|
21
21
|
/** Where to print the addresses; default the console. Null for nothing. */
|
|
22
22
|
log?: ((line: string) => void) | null;
|
|
23
|
+
/**
|
|
24
|
+
* Whether the product's stand-ins run in the operating-system sandbox. Default "required", or "off" when the
|
|
25
|
+
* environment has SWARMBOX_NO_SANDBOX=1: for a machine without one (Linux without bubblewrap). Off, a stand-in
|
|
26
|
+
* runs with the operator's own rights, so only stand-ins you trust.
|
|
27
|
+
*/
|
|
28
|
+
standinSandbox?: 'required' | 'off';
|
|
23
29
|
}
|
|
30
|
+
/** The stand-in sandbox serve asks for: the option if given, else off only when SWARMBOX_NO_SANDBOX is 1. */
|
|
31
|
+
export declare function standinSandboxFor(option: ServeOptions['standinSandbox'], env?: Record<string, string | undefined>): 'required' | 'off';
|
|
24
32
|
export interface Served<W extends ProductWorld> {
|
|
25
33
|
harness: Harness<W>;
|
|
26
34
|
mcp: McpHttp;
|
package/dist/serve.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AASA,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE1D,wEAAwE;AACxE,eAAO,MAAM,aAAa;;;CAA4C,CAAC;AAEvE,MAAM,WAAW,YAAY;IAC3B,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2EAA2E;IAC3E,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AASA,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE1D,wEAAwE;AACxE,eAAO,MAAM,aAAa;;;CAA4C,CAAC;AAEvE,MAAM,WAAW,YAAY;IAC3B,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2EAA2E;IAC3E,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACtC;;;;OAIG;IACH,cAAc,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC;CACrC;AAED,6GAA6G;AAC7G,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,YAAY,CAAC,gBAAgB,CAAC,EACtC,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GACpD,UAAU,GAAG,KAAK,CAEpB;AAED,MAAM,WAAW,MAAM,CAAC,CAAC,SAAS,YAAY;IAC5C,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED,wBAAsB,KAAK,CAAC,CAAC,SAAS,YAAY,EAChD,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CA8BpB"}
|
package/dist/serve.js
CHANGED
|
@@ -11,13 +11,20 @@ import { createHarness } from "./harness.js";
|
|
|
11
11
|
import { serveMcp } from "./mcp/server.js";
|
|
12
12
|
/** Where an agent and a person reach Swarmbox unless told otherwise. */
|
|
13
13
|
export const DEFAULT_PORTS = { controlRoom: 3100, mcp: 3101 };
|
|
14
|
+
/** The stand-in sandbox serve asks for: the option if given, else off only when SWARMBOX_NO_SANDBOX is 1. */
|
|
15
|
+
export function standinSandboxFor(option, env = process.env) {
|
|
16
|
+
return option ?? (env.SWARMBOX_NO_SANDBOX === '1' ? 'off' : 'required');
|
|
17
|
+
}
|
|
14
18
|
export async function serve(product, options = {}) {
|
|
15
|
-
const
|
|
19
|
+
const sandbox = standinSandboxFor(options.standinSandbox);
|
|
20
|
+
const harness = createHarness(product, { headless: options.headless ?? false, standinSandbox: sandbox });
|
|
16
21
|
const mcp = await serveMcp(harness, options.mcpPort ?? DEFAULT_PORTS.mcp);
|
|
17
22
|
const room = await serveControlRoom(harness, options.controlRoomPort ?? DEFAULT_PORTS.controlRoom);
|
|
18
23
|
const log = options.log === undefined ? (l) => console.log(l) : options.log;
|
|
19
24
|
log?.(`control room ${room.url}`);
|
|
20
25
|
log?.(`mcp ${mcp.url}`);
|
|
26
|
+
if (sandbox === 'off' && product.standins?.length)
|
|
27
|
+
log?.('stand-ins: unsandboxed (SWARMBOX_NO_SANDBOX=1 or standinSandbox off)');
|
|
21
28
|
log?.(`connect: claude mcp add --transport http ${options.mcpName ?? `swarmbox-${product.name}`} ${mcp.url}`);
|
|
22
29
|
let stopping;
|
|
23
30
|
const stop = () => (stopping ??= (async () => {
|
package/dist/serve.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AAAA,6GAA6G;AAC7G,wDAAwD;AACxD,EAAE;AACF,sCAAsC;AACtC,8CAA8C;AAC9C,8BAA8B;AAC9B,EAAE;AACF,mEAAmE;AAEnE,OAAO,EAAE,gBAAgB,EAAoB,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAgB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAgB,MAAM,iBAAiB,CAAC;AAGzD,wEAAwE;AACxE,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "swarmbox",
|
|
3
3
|
"license": "MIT",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.18.0",
|
|
5
5
|
"description": "A sandbox where AI agents run your product in real browsers against throwaway worlds: they see what is on each screen and what the server did, log findings, and end with checks and a report.",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"packageManager": "pnpm@11.11.0",
|