@guyghost/swarm-dao-tmux-adapter 0.2.7 → 0.3.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/dist/adapter.d.ts +6 -1
- package/dist/adapter.d.ts.map +1 -1
- package/dist/adapter.js +55 -10
- package/dist/adapter.js.map +1 -1
- package/package.json +2 -2
package/dist/adapter.d.ts
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import type { HostAdapter } from "@guyghost/swarm-dao-core";
|
|
2
2
|
/** Minimal command surface the adapter needs (node:child_process-backed by default). */
|
|
3
|
+
/** Minimal command surface the adapter needs. Commands are ARGV — never
|
|
4
|
+
* shell strings — the default runner spawns them via execFile (no shell), so
|
|
5
|
+
* session names and pane programs are never interpreted by a host shell.
|
|
6
|
+
* (The pane program itself is deliberately a shell program: tmux runs it
|
|
7
|
+
* through /bin/sh inside the pane.) */
|
|
3
8
|
export interface TmuxRunner {
|
|
4
|
-
exec(
|
|
9
|
+
exec(argv: readonly string[], options?: {
|
|
5
10
|
cwd?: string;
|
|
6
11
|
timeout?: number;
|
|
7
12
|
}): Promise<{
|
package/dist/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAyB,WAAW,EAAY,MAAM,0BAA0B,CAAC;AAE7F,wFAAwF;AACxF,MAAM,WAAW,UAAU;IACzB,IAAI,CACF,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAyB,WAAW,EAAY,MAAM,0BAA0B,CAAC;AAE7F,wFAAwF;AACxF;;;;uCAIuC;AACvC,MAAM,WAAW,UAAU;IACzB,IAAI,CACF,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3C,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClE;AAoCD,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAUvD;AAED,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB;;yEAEqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,yCAAyC;IACzC,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAYD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CA6K9E"}
|
package/dist/adapter.js
CHANGED
|
@@ -18,15 +18,24 @@
|
|
|
18
18
|
// Boundary: deliberation is read-only analysis. Agents share the repository
|
|
19
19
|
// checkout for context; execution-side isolation stays with the delivery
|
|
20
20
|
// layer's GitWorkspace.
|
|
21
|
-
import { exec as execCallback } from "node:child_process";
|
|
21
|
+
import { exec as execCallback, execFile } from "node:child_process";
|
|
22
22
|
import { promises as fs } from "node:fs";
|
|
23
23
|
import path from "node:path";
|
|
24
24
|
import { promisify } from "node:util";
|
|
25
25
|
const execAsync = promisify(execCallback);
|
|
26
|
+
/** execFile with utf8 strings, promise-shaped. */
|
|
27
|
+
const execFileAsync = (file, args, options) => new Promise((resolve, reject) => {
|
|
28
|
+
execFile(file, args, { ...options, encoding: "utf8" }, (error, stdout, stderr) => {
|
|
29
|
+
if (error)
|
|
30
|
+
reject(Object.assign(error, { stdout, stderr }));
|
|
31
|
+
else
|
|
32
|
+
resolve({ stdout: String(stdout), stderr: String(stderr) });
|
|
33
|
+
});
|
|
34
|
+
});
|
|
26
35
|
const defaultRunner = () => ({
|
|
27
|
-
exec: async (
|
|
36
|
+
exec: async (argv, options) => {
|
|
28
37
|
try {
|
|
29
|
-
const { stdout, stderr } = await
|
|
38
|
+
const { stdout, stderr } = await execFileAsync(argv[0] ?? "", argv.slice(1), {
|
|
30
39
|
cwd: options?.cwd,
|
|
31
40
|
timeout: options?.timeout,
|
|
32
41
|
});
|
|
@@ -44,7 +53,16 @@ const defaultRunner = () => ({
|
|
|
44
53
|
});
|
|
45
54
|
/** tmux session names and run-directory segments accept [a-zA-Z0-9_-] only. */
|
|
46
55
|
export function sanitizeSessionName(raw) {
|
|
47
|
-
const
|
|
56
|
+
const collapsed = raw.replace(/[^a-zA-Z0-9_-]+/g, "-");
|
|
57
|
+
// Trim leading/trailing dashes with a linear scan — /-+$/ style trailing
|
|
58
|
+
// runs make every start position backtrack (polynomial ReDoS).
|
|
59
|
+
let start = 0;
|
|
60
|
+
let end = collapsed.length;
|
|
61
|
+
while (start < end && collapsed.charCodeAt(start) === 45)
|
|
62
|
+
start++;
|
|
63
|
+
while (end > start && collapsed.charCodeAt(end - 1) === 45)
|
|
64
|
+
end--;
|
|
65
|
+
const cleaned = collapsed.slice(start, end);
|
|
48
66
|
return cleaned.length > 0 ? cleaned : "agent";
|
|
49
67
|
}
|
|
50
68
|
const DEFAULT_TIMEOUT_MS = 5 * 60_000;
|
|
@@ -90,8 +108,22 @@ export function createTmuxHostAdapter(options) {
|
|
|
90
108
|
const sessionProgram = `sh -c ${quote(inner)}`;
|
|
91
109
|
// Clear any stale session with the same name (e.g. a keepSessions
|
|
92
110
|
// leftover) so reruns are deterministic.
|
|
93
|
-
await runner.exec(
|
|
94
|
-
|
|
111
|
+
await runner.exec(["tmux", "kill-session", "-t", run.session]);
|
|
112
|
+
// The pane program is a shell program BY DESIGN (it streams the agent's
|
|
113
|
+
// output into the pane); tmux itself runs it via /bin/sh inside the pane.
|
|
114
|
+
// It rides as a single argv element — no host-side shell ever sees it.
|
|
115
|
+
const created = await runner.exec([
|
|
116
|
+
"tmux",
|
|
117
|
+
"new-session",
|
|
118
|
+
"-d",
|
|
119
|
+
"-s",
|
|
120
|
+
run.session,
|
|
121
|
+
"-c",
|
|
122
|
+
options.workDir,
|
|
123
|
+
"sh",
|
|
124
|
+
"-c",
|
|
125
|
+
sessionProgram,
|
|
126
|
+
]);
|
|
95
127
|
if (created.exitCode !== 0) {
|
|
96
128
|
throw new Error(`tmux new-session failed: ${created.stderr.trim().slice(0, 300)}`);
|
|
97
129
|
}
|
|
@@ -114,10 +146,14 @@ export function createTmuxHostAdapter(options) {
|
|
|
114
146
|
}
|
|
115
147
|
};
|
|
116
148
|
const harvestPane = async (session) => {
|
|
117
|
-
const captured = await runner.exec(
|
|
149
|
+
const captured = await runner.exec(["tmux", "capture-pane", "-p", "-S", `-${CAPTURE_LINES}`, "-t", session]);
|
|
118
150
|
// The last line can be the idle marker loop's shell prompt — trim
|
|
119
151
|
// trailing blank noise but keep the agent's own output verbatim.
|
|
120
|
-
|
|
152
|
+
// Collapse trailing blank noise to one newline (linear, ReDoS-safe).
|
|
153
|
+
let end = captured.stdout.length;
|
|
154
|
+
while (end > 0 && captured.stdout.charCodeAt(end - 1) === 10)
|
|
155
|
+
end--;
|
|
156
|
+
return end === captured.stdout.length ? captured.stdout : `${captured.stdout.slice(0, end)}\n`;
|
|
121
157
|
};
|
|
122
158
|
const harvest = async (proposal, agent, prompt, timeoutMs, startedAt) => {
|
|
123
159
|
const base = {
|
|
@@ -152,7 +188,7 @@ export function createTmuxHostAdapter(options) {
|
|
|
152
188
|
}
|
|
153
189
|
finally {
|
|
154
190
|
if (!keepSessions) {
|
|
155
|
-
await runner.exec(
|
|
191
|
+
await runner.exec(["tmux", "kill-session", "-t", run.session]).catch(() => undefined);
|
|
156
192
|
}
|
|
157
193
|
}
|
|
158
194
|
};
|
|
@@ -176,7 +212,16 @@ export function createTmuxHostAdapter(options) {
|
|
|
176
212
|
getWorkingDirectory: () => options.workDir,
|
|
177
213
|
readFile: async (file) => fs.readFile(containedPath(file), "utf8"),
|
|
178
214
|
writeFile: async (file, content) => fs.writeFile(containedPath(file), content, "utf8"),
|
|
179
|
-
exec: (command, execOptions) =>
|
|
215
|
+
exec: (command, execOptions) => execAsync(command, { cwd: execOptions?.cwd, timeout: execOptions?.timeout })
|
|
216
|
+
.then(({ stdout, stderr }) => ({ stdout: String(stdout), stderr: String(stderr), exitCode: 0 }))
|
|
217
|
+
.catch((error) => {
|
|
218
|
+
const failure = error;
|
|
219
|
+
return {
|
|
220
|
+
stdout: failure.stdout ?? "",
|
|
221
|
+
stderr: failure.stderr ?? failure.message ?? "command failed",
|
|
222
|
+
exitCode: failure.code ?? 1,
|
|
223
|
+
};
|
|
224
|
+
}),
|
|
180
225
|
hasCapability: (capability) => capability === "parallel-spawn",
|
|
181
226
|
};
|
|
182
227
|
}
|
package/dist/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,gCAAgC;AAChC,+DAA+D;AAC/D,2EAA2E;AAC3E,wEAAwE;AACxE,4EAA4E;AAC5E,wEAAwE;AACxE,EAAE;AACF,kBAAkB;AAClB,yEAAyE;AACzE,wEAAwE;AACxE,aAAa;AACb,4EAA4E;AAC5E,4EAA4E;AAC5E,yEAAyE;AACzE,oCAAoC;AACpC,EAAE;AACF,4EAA4E;AAC5E,yEAAyE;AACzE,wBAAwB;AAExB,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@guyghost/swarm-dao-tmux-adapter",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Swarm DAO tmux host — each deliberation agent runs as its own watchable tmux pane",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"prepublishOnly": "bun run build"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@guyghost/swarm-dao-core": "^0.
|
|
27
|
+
"@guyghost/swarm-dao-core": "^0.15.0"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@types/bun": "1.3.14",
|