@guyghost/swarm-dao-herdr-adapter 0.4.1 → 0.4.3

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 CHANGED
@@ -18,9 +18,15 @@ For every agent, the adapter:
18
18
  1. Creates an **isolated herdr workspace** (one root pane, `--no-focus` —
19
19
  it never touches your existing layout).
20
20
  2. Starts the agent: `herdr agent start <name> --kind <kind>` — blocks until
21
- herdr detects the agent is ready for input.
21
+ herdr detects the agent is ready for input. A freshly created pane may not
22
+ be at its shell prompt yet (slower shell init under load); herdr then
23
+ reports `agent_pane_busy` and the adapter retries on the same pane until
24
+ the readiness budget (`startTimeoutMs`) is spent.
22
25
  3. Submits the deliberation prompt: `herdr agent prompt <name> '<prompt>'
23
- --wait` — settles on `idle`, `done`, or `blocked`.
26
+ --wait` — settles on `idle`, `done`, or `blocked`. A stalled prompt (herdr
27
+ enforces a 5 s observed-state-change window) is recovered: the adapter
28
+ grace-polls the agent state and, if the prompt took effect, waits for
29
+ settle; only a swallowed submission is re-prompted, exactly once.
24
30
  4. Harvests the ANSI-stripped terminal transcript:
25
31
  `herdr agent read <name> --source recent-unwrapped`.
26
32
  5. Closes the workspace (unless `keepPanes`).
package/dist/adapter.d.ts CHANGED
@@ -50,14 +50,118 @@ export interface HerdrAdapterOptions {
50
50
  timeoutMs?: number;
51
51
  /** agent start readiness timeout in ms (default 30s; herdr 3000..300000). */
52
52
  startTimeoutMs?: number;
53
+ /** Delay between same-pane agent start readiness retries (default 1 s; 0
54
+ * only for tests). */
55
+ readinessRetryDelayMs?: number;
53
56
  /** Lines of terminal output harvested per agent (default 200). */
54
57
  readLines?: number;
58
+ /** Grace-poll budget after a stalled prompt (default 20 s). */
59
+ stalledGraceMs?: number;
60
+ /** Delay between stalled-prompt grace polls (default 2 s; 0 only for tests). */
61
+ stalledPollIntervalMs?: number;
55
62
  /** Keep the herdr workspaces alive after harvest (default false). */
56
63
  keepPanes?: boolean;
64
+ /** Parent herdr workspace id for child-session linkage (default:
65
+ * HERDR_WORKSPACE_ID when running inside a herdr pane). Worktree children
66
+ * open nested under it; same-checkout children get a parent token. */
67
+ parentWorkspaceId?: string;
57
68
  /** Injectable command runner (tests). */
58
69
  runner?: HerdrRunner;
59
70
  /** Agent name / workspace label prefix (default "swarm-dao"). */
60
71
  prefix?: string;
61
72
  }
73
+ export interface AgentPromptRequest {
74
+ /** Unique herdr agent name ([a-z][a-z0-9_-]{0,31}). */
75
+ readonly agentName: string;
76
+ /** Verbatim prompt text (a single argv element — never shell-interpreted). */
77
+ readonly prompt: string;
78
+ /** herdr prompt/settle budget in ms (also used for the settle wait). */
79
+ readonly timeoutMs: number;
80
+ /** Grace-poll budget after a stalled prompt (default 20 s). */
81
+ readonly stalledGraceMs?: number;
82
+ /** Delay between grace polls (default 2 s; 0 only for tests). */
83
+ readonly pollIntervalMs?: number;
84
+ }
85
+ /**
86
+ * Submit a prompt and wait for a settled state (idle | done | blocked),
87
+ * recovering from the transient agent_prompt_stalled classification: herdr
88
+ * requires an observed state change within a hardcoded 5 s window, and a fresh
89
+ * agent in a heavy repo under load can exceed it while the prompt was accepted
90
+ * and is being processed (issue #137). On stall, grace-poll the agent state;
91
+ * if the agent came alive, wait for a settled state with `agent wait`. If it
92
+ * stays idle through the grace period the submission was swallowed — re-prompt
93
+ * exactly ONCE (naive re-prompting risks double submission into a working
94
+ * agent).
95
+ */
96
+ export declare function promptAgentUntilSettled(runner: HerdrRunner, request: AgentPromptRequest): Promise<{
97
+ stdout: string;
98
+ stderr: string;
99
+ exitCode: number;
100
+ }>;
101
+ /** herdr machine-readable error code from a failed command response, if any. */
102
+ export declare function herdrErrorCode(stderr: string, stdout: string): string | null;
103
+ /** Parent herdr workspace for child-session linkage: herdr injects
104
+ * HERDR_ENV=1 and HERDR_WORKSPACE_ID into panes it manages, so a process
105
+ * spawned from a herdr pane (this CLI, an orchestrator) inherits the parent
106
+ * context its children can be linked to. Returns undefined outside herdr. */
107
+ export declare function herdrParentWorkspaceId(env?: Record<string, string | undefined>): string | undefined;
108
+ export interface ChildWorkspaceRequest {
109
+ /** Directory the child agent works in (repo checkout or git worktree). */
110
+ readonly workDir: string;
111
+ /** Workspace label (the sanitized child agent name). */
112
+ readonly label: string;
113
+ /** Parent herdr workspace id (see herdrParentWorkspaceId). When set, the
114
+ * child is linked to the parent session; when absent nothing changes. */
115
+ readonly parentWorkspaceId?: string;
116
+ }
117
+ export type ChildWorkspaceResult = {
118
+ ok: true;
119
+ paneId: string;
120
+ workspaceId: string;
121
+ } | {
122
+ ok: false;
123
+ error: string;
124
+ };
125
+ /**
126
+ * Create the herdr workspace a child agent runs in, linked to the parent
127
+ * session when one is given:
128
+ * - git-worktree checkout + parent → `worktree open` nests the child under
129
+ * the parent workspace in the Spaces sidebar (herdr's parent/children
130
+ * view), so a spawned agent's owner is visible at a glance;
131
+ * - same-checkout child + parent → plain workspace stamped with a `parent`
132
+ * provenance token (renderable as $parent in Space sidebar rows);
133
+ * - no parent → exactly the plain workspace create.
134
+ * Linking is presentation-only and best-effort: every linking failure falls
135
+ * back to the plain workspace, and only a create failure fails the child.
136
+ */
137
+ export declare function createChildWorkspace(runner: HerdrRunner, request: ChildWorkspaceRequest): Promise<ChildWorkspaceResult>;
138
+ export interface AgentStartRequest {
139
+ /** Unique herdr agent name ([a-z][a-z0-9_-]{0,31}). */
140
+ readonly agentName: string;
141
+ /** herdr agent kind (pi, claude, …). */
142
+ readonly kind: string;
143
+ /** Pane to start the agent in. */
144
+ readonly paneId: string;
145
+ /** Readiness budget in ms — passed to herdr's --timeout and used as the
146
+ * same-pane agent_pane_busy retry budget. */
147
+ readonly timeoutMs: number;
148
+ /** Extra arguments passed to the agent executable (after herdr's --). */
149
+ readonly agentArgs?: readonly string[];
150
+ /** Delay between agent_pane_busy retries in ms (default 1 s; 0 for tests). */
151
+ readonly retryDelayMs?: number;
152
+ }
153
+ /**
154
+ * Start an agent in a pane, retrying on the SAME pane while herdr reports the
155
+ * transient agent_pane_busy (a fresh pane is not yet at its interactive shell
156
+ * prompt when agent start runs — workspace create returns before shell init
157
+ * finishes, slower under herd load). Retries run 1 s apart until timeoutMs is
158
+ * spent; any other failure code is not a readiness race and returns
159
+ * immediately.
160
+ */
161
+ export declare function startAgentUntilReady(runner: HerdrRunner, request: AgentStartRequest): Promise<{
162
+ stdout: string;
163
+ stderr: string;
164
+ exitCode: number;
165
+ }>;
62
166
  export declare function createHerdrHostAdapter(options: HerdrAdapterOptions): HostAdapter;
63
167
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAyB,WAAW,EAAY,MAAM,0BAA0B,CAAC;AAC7F;;;;yDAIyD;AACzD,MAAM,WAAW,WAAW;IAC1B,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;AAsCD;yEACyE;AACzE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIzD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAcrD;AAcD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAS1F;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB;8EAC0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yCAAyC;IACzC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAsCD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,mBAAmB,GAAG,WAAW,CA0MhF"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EAAyB,WAAW,EAAY,MAAM,0BAA0B,CAAC;AAC7F;;;;yDAIyD;AACzD,MAAM,WAAW,WAAW;IAC1B,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;AAsCD;yEACyE;AACzE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIzD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAcrD;AAcD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAS1F;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB;8EAC0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;0BACsB;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gFAAgF;IAChF,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qEAAqE;IACrE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;0EAEsE;IACtE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yCAAyC;IACzC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAiBD,MAAM,WAAW,kBAAkB;IACjC,uDAAuD;IACvD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,+DAA+D;IAC/D,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,iEAAiE;IACjE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAKD;;;;;;;;;;GAUG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAmC/D;AA6BD,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI5E;AAED;;;6EAG6E;AAC7E,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GAAG,MAAM,GAAG,SAAS,CAEhH;AAaD,MAAM,WAAW,qBAAqB;IACpC,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,wDAAwD;IACxD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;6EACyE;IACzE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,MAAM,MAAM,oBAAoB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpH;;;;;;;;;;;GAWG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAmE/B;AAED,MAAM,WAAW,iBAAiB;IAChC,uDAAuD;IACvD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;iDAC6C;IAC7C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,yEAAyE;IACzE,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CA0B/D;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,mBAAmB,GAAG,WAAW,CAgMhF"}
package/dist/adapter.js CHANGED
@@ -9,11 +9,23 @@
9
9
  //
10
10
  // Lifecycle per agent (packages/herdr-adapter):
11
11
  // herdr workspace create --cwd <repo> --label <name> --no-focus (isolated pane)
12
+ // — or, for a git-worktree cwd under a detectable parent session:
13
+ // herdr worktree open --workspace <parent> --path <checkout> …
14
+ // (the child nests under the parent in the Spaces sidebar, so the
15
+ // spawned agent's owner is visible at a glance); same-checkout
16
+ // children get a `parent` workspace token instead
12
17
  // herdr agent start <name> --kind <kind> --pane <id> --timeout (blocks until ready)
13
18
  // herdr agent prompt <name> '<prompt>' --wait --timeout (settles on idle/done/blocked)
14
19
  // herdr agent read <name> --source recent-unwrapped --lines N (ANSI-stripped output)
15
20
  // herdr workspace close <id> (unless keepPanes)
16
21
  //
22
+ // Readiness race: workspace create returns before the fresh pane's shell has
23
+ // reached its interactive prompt, and herdr's agent start classifies such a
24
+ // pane as busy (agent_pane_busy) instead of waiting for the prompt — slower
25
+ // shell init under herd load makes this intermittent. startAgentUntilReady
26
+ // therefore retries agent start on the SAME pane (1 s apart) until the
27
+ // readiness budget is spent, so one slow shell init no longer fails the agent.
28
+ //
17
29
  // Every command is spawned as ARGV via execFile — the JS side never builds
18
30
  // a shell command line, so prompts and labels are never shell-interpreted.
19
31
  //
@@ -128,6 +140,52 @@ export function stripEchoedVoteTemplates(content) {
128
140
  const DEFAULT_TIMEOUT_MS = 300_000;
129
141
  const DEFAULT_START_TIMEOUT_MS = 30_000;
130
142
  const DEFAULT_READ_LINES = 200;
143
+ /** Settled, non-idle agent states proving a stalled prompt took effect. */
144
+ const ACTIVE_AGENT_STATES = new Set(["working", "done", "blocked"]);
145
+ /**
146
+ * Submit a prompt and wait for a settled state (idle | done | blocked),
147
+ * recovering from the transient agent_prompt_stalled classification: herdr
148
+ * requires an observed state change within a hardcoded 5 s window, and a fresh
149
+ * agent in a heavy repo under load can exceed it while the prompt was accepted
150
+ * and is being processed (issue #137). On stall, grace-poll the agent state;
151
+ * if the agent came alive, wait for a settled state with `agent wait`. If it
152
+ * stays idle through the grace period the submission was swallowed — re-prompt
153
+ * exactly ONCE (naive re-prompting risks double submission into a working
154
+ * agent).
155
+ */
156
+ export async function promptAgentUntilSettled(runner, request) {
157
+ const promptArgs = () => [
158
+ "herdr",
159
+ "agent",
160
+ "prompt",
161
+ request.agentName,
162
+ request.prompt,
163
+ "--wait",
164
+ "--timeout",
165
+ String(request.timeoutMs),
166
+ ];
167
+ const graceMs = Math.min(Math.max(request.stalledGraceMs ?? 20_000, 0), 60_000);
168
+ const pollMs = Math.min(Math.max(request.pollIntervalMs ?? 2_000, 0), 30_000);
169
+ const isAlive = (response) => response.exitCode === 0 && ACTIVE_AGENT_STATES.has(agentState(parseHerdrJson(response.stdout)?.result) ?? "");
170
+ const prompted = await runner.exec(promptArgs());
171
+ if (prompted.exitCode === 0 || herdrErrorCode(prompted.stderr, prompted.stdout) !== "agent_prompt_stalled") {
172
+ return prompted;
173
+ }
174
+ const graceDeadline = Date.now() + graceMs;
175
+ for (;;) {
176
+ const got = await runner.exec(["herdr", "agent", "get", request.agentName]);
177
+ if (isAlive(got)) {
178
+ // The prompt took effect — herdr just missed the 5 s state transition.
179
+ return runner.exec(["herdr", "agent", "wait", request.agentName, "--timeout", String(request.timeoutMs)]);
180
+ }
181
+ if (Date.now() >= graceDeadline)
182
+ break;
183
+ if (pollMs > 0)
184
+ await sleep(pollMs);
185
+ }
186
+ // Still idle through the grace period: the submission was swallowed.
187
+ return runner.exec(promptArgs());
188
+ }
131
189
  function parseHerdrJson(raw) {
132
190
  try {
133
191
  const parsed = JSON.parse(raw);
@@ -146,15 +204,157 @@ function herdrErrorDetail(stderr, stdout) {
146
204
  return (stderr.trim() || stdout.trim() || "unknown herdr error").slice(0, 300);
147
205
  }
148
206
  function agentState(result) {
149
- return result?.agent?.status ?? result?.agent?.state ?? null;
207
+ // herdr exposes the lifecycle field as agent_status (verified live); the
208
+ // others are defensive fallbacks — reading them alone silently disabled the
209
+ // blocked-agent guard (issue #138).
210
+ return result?.agent?.agent_status ?? result?.agent?.status ?? result?.agent?.state ?? null;
211
+ }
212
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
213
+ /** herdr machine-readable error code from a failed command response, if any. */
214
+ export function herdrErrorCode(stderr, stdout) {
215
+ const parsed = parseHerdrJson(stderr.trim()) ?? parseHerdrJson(stdout.trim());
216
+ const code = parsed?.error?.code;
217
+ return typeof code === "string" ? code : null;
218
+ }
219
+ /** Parent herdr workspace for child-session linkage: herdr injects
220
+ * HERDR_ENV=1 and HERDR_WORKSPACE_ID into panes it manages, so a process
221
+ * spawned from a herdr pane (this CLI, an orchestrator) inherits the parent
222
+ * context its children can be linked to. Returns undefined outside herdr. */
223
+ export function herdrParentWorkspaceId(env = process.env) {
224
+ return env.HERDR_ENV === "1" && env.HERDR_WORKSPACE_ID ? env.HERDR_WORKSPACE_ID : undefined;
225
+ }
226
+ /** A registered git worktree checkout carries a .git FILE pointing at the
227
+ * primary repo's worktree metadata; a primary checkout has a .git directory
228
+ * (or none). */
229
+ async function isGitWorktreeCheckout(workDir) {
230
+ try {
231
+ return (await fs.stat(path.join(workDir, ".git"))).isFile();
232
+ }
233
+ catch {
234
+ return false;
235
+ }
236
+ }
237
+ /**
238
+ * Create the herdr workspace a child agent runs in, linked to the parent
239
+ * session when one is given:
240
+ * - git-worktree checkout + parent → `worktree open` nests the child under
241
+ * the parent workspace in the Spaces sidebar (herdr's parent/children
242
+ * view), so a spawned agent's owner is visible at a glance;
243
+ * - same-checkout child + parent → plain workspace stamped with a `parent`
244
+ * provenance token (renderable as $parent in Space sidebar rows);
245
+ * - no parent → exactly the plain workspace create.
246
+ * Linking is presentation-only and best-effort: every linking failure falls
247
+ * back to the plain workspace, and only a create failure fails the child.
248
+ */
249
+ export async function createChildWorkspace(runner, request) {
250
+ if (request.parentWorkspaceId && (await isGitWorktreeCheckout(request.workDir))) {
251
+ const opened = await runner.exec([
252
+ "herdr",
253
+ "worktree",
254
+ "open",
255
+ "--workspace",
256
+ request.parentWorkspaceId,
257
+ "--path",
258
+ request.workDir,
259
+ "--label",
260
+ request.label,
261
+ "--no-focus",
262
+ ]);
263
+ const openedPane = parseHerdrJson(opened.stdout)?.result?.root_pane?.pane_id ?? null;
264
+ const openedWorkspace = parseHerdrJson(opened.stdout)?.result?.workspace?.workspace_id ?? null;
265
+ if (opened.exitCode === 0 && openedPane && openedWorkspace) {
266
+ return { ok: true, paneId: openedPane, workspaceId: openedWorkspace };
267
+ }
268
+ // Linking is presentation-only — fall back to the plain workspace below.
269
+ }
270
+ const created = await runner.exec([
271
+ "herdr",
272
+ "workspace",
273
+ "create",
274
+ "--cwd",
275
+ request.workDir,
276
+ "--label",
277
+ request.label,
278
+ "--no-focus",
279
+ ]);
280
+ if (created.exitCode !== 0) {
281
+ return { ok: false, error: `herdr workspace create failed: ${herdrErrorDetail(created.stderr, created.stdout)}` };
282
+ }
283
+ const paneId = parseHerdrJson(created.stdout)?.result?.root_pane?.pane_id ?? null;
284
+ const workspaceId = parseHerdrJson(created.stdout)?.result?.workspace?.workspace_id ?? null;
285
+ if (!paneId || !workspaceId) {
286
+ return {
287
+ ok: false,
288
+ error: `herdr workspace create returned no pane/workspace id: ${created.stdout.slice(0, 200)}`,
289
+ };
290
+ }
291
+ if (request.parentWorkspaceId) {
292
+ // Worktree children are already nested; same-checkout children only get
293
+ // the provenance token. Human-readable parent label, id as fallback —
294
+ // and never a run failure over display metadata.
295
+ const parent = parseHerdrJson((await runner.exec(["herdr", "workspace", "get", request.parentWorkspaceId]).catch(() => ({ stdout: "" })))
296
+ .stdout)?.result;
297
+ const parentLabel = parent?.workspace?.label ?? parent?.label ?? request.parentWorkspaceId;
298
+ await runner
299
+ .exec([
300
+ "herdr",
301
+ "workspace",
302
+ "report-metadata",
303
+ workspaceId,
304
+ "--source",
305
+ "swarm-dao",
306
+ "--token",
307
+ `parent=${parentLabel}`,
308
+ ])
309
+ .catch(() => undefined);
310
+ }
311
+ return { ok: true, paneId, workspaceId };
312
+ }
313
+ /**
314
+ * Start an agent in a pane, retrying on the SAME pane while herdr reports the
315
+ * transient agent_pane_busy (a fresh pane is not yet at its interactive shell
316
+ * prompt when agent start runs — workspace create returns before shell init
317
+ * finishes, slower under herd load). Retries run 1 s apart until timeoutMs is
318
+ * spent; any other failure code is not a readiness race and returns
319
+ * immediately.
320
+ */
321
+ export async function startAgentUntilReady(runner, request) {
322
+ const startArgs = () => [
323
+ "herdr",
324
+ "agent",
325
+ "start",
326
+ request.agentName,
327
+ "--kind",
328
+ request.kind,
329
+ "--pane",
330
+ request.paneId,
331
+ "--timeout",
332
+ String(request.timeoutMs),
333
+ ...(request.agentArgs && request.agentArgs.length > 0 ? ["--", ...request.agentArgs] : []),
334
+ ];
335
+ const delayMs = Math.min(Math.max(request.retryDelayMs ?? 1_000, 0), 60_000);
336
+ const deadline = Date.now() + request.timeoutMs;
337
+ let started = await runner.exec(startArgs());
338
+ while (started.exitCode !== 0 &&
339
+ herdrErrorCode(started.stderr, started.stdout) === "agent_pane_busy" &&
340
+ Date.now() < deadline) {
341
+ if (delayMs > 0)
342
+ await sleep(delayMs);
343
+ started = await runner.exec(startArgs());
344
+ }
345
+ return started;
150
346
  }
151
347
  export function createHerdrHostAdapter(options) {
152
348
  const runner = options.runner ?? defaultRunner();
153
349
  const defaultTimeoutMs = Math.min(options.timeoutMs ?? DEFAULT_TIMEOUT_MS, 300_000);
154
350
  const startTimeoutMs = Math.min(options.startTimeoutMs ?? DEFAULT_START_TIMEOUT_MS, 300_000);
351
+ const retryDelayMs = Math.min(Math.max(options.readinessRetryDelayMs ?? 1_000, 0), 60_000);
352
+ const stalledGraceMs = Math.min(Math.max(options.stalledGraceMs ?? 20_000, 0), 60_000);
353
+ const stalledPollIntervalMs = Math.min(Math.max(options.stalledPollIntervalMs ?? 2_000, 0), 30_000);
155
354
  const readLines = options.readLines ?? DEFAULT_READ_LINES;
156
355
  const prefix = sanitizeHerdrName(options.prefix ?? "swarm-dao");
157
356
  const keepPanes = options.keepPanes === true;
357
+ const parentWorkspaceId = options.parentWorkspaceId ?? herdrParentWorkspaceId();
158
358
  const agentArgs = options.agentArgs ?? [];
159
359
  /** Resolve the deepest EXISTING ancestor's realpath, then rejoin the rest —
160
360
  * containment must hold even for files that do not exist yet. */
@@ -209,62 +409,48 @@ export function createHerdrHostAdapter(options) {
209
409
  const name = herdrAgentName(prefix, proposal.id, agent.id);
210
410
  let workspaceId = null;
211
411
  try {
212
- // 1. Isolated workspace with one root pane (never touches the user's layout).
213
- const created = await runner.exec([
214
- "herdr",
215
- "workspace",
216
- "create",
217
- "--cwd",
218
- options.workDir,
219
- "--label",
220
- name,
221
- "--no-focus",
222
- ]);
223
- if (created.exitCode !== 0) {
224
- return finish({
225
- error: `herdr workspace create failed: ${herdrErrorDetail(created.stderr, created.stdout)} (is the herdr server running? start it with \`herdr\`)`,
226
- });
227
- }
228
- const paneId = parseHerdrJson(created.stdout)?.result?.root_pane?.pane_id ?? null;
229
- workspaceId = parseHerdrJson(created.stdout)?.result?.workspace?.workspace_id ?? null;
230
- if (!paneId || !workspaceId) {
412
+ // 1. Isolated workspace with one root pane (never touches the user's
413
+ // layout), linked to the parent herdr session when one is detectable
414
+ // (worktree children nest under it in the Spaces sidebar).
415
+ const created = await createChildWorkspace(runner, {
416
+ workDir: options.workDir,
417
+ label: name,
418
+ parentWorkspaceId,
419
+ });
420
+ if (!created.ok) {
231
421
  return finish({
232
- error: `herdr workspace create returned no pane/workspace id: ${created.stdout.slice(0, 200)}`,
422
+ error: `${created.error} (is the herdr server running? start it with \`herdr\`)`,
233
423
  });
234
424
  }
235
- // 2. Start the agent (blocks until herdr detects it ready for input).
236
- const started = await runner.exec([
237
- "herdr",
238
- "agent",
239
- "start",
240
- name,
241
- "--kind",
242
- options.kind,
243
- "--pane",
425
+ const paneId = created.paneId;
426
+ workspaceId = created.workspaceId;
427
+ // 2. Start the agent (blocks until herdr detects it ready for input;
428
+ // same-pane retries while the fresh pane is still busy).
429
+ const started = await startAgentUntilReady(runner, {
430
+ agentName: name,
431
+ kind: options.kind,
244
432
  paneId,
245
- "--timeout",
246
- String(startTimeoutMs),
247
- ...(agentArgs.length > 0 ? ["--", ...agentArgs] : []),
248
- ]);
433
+ timeoutMs: startTimeoutMs,
434
+ agentArgs,
435
+ retryDelayMs,
436
+ });
249
437
  if (started.exitCode !== 0) {
250
438
  return finish({
251
439
  error: `herdr agent start (${options.kind}) failed: ${herdrErrorDetail(started.stderr, started.stdout)}`,
252
440
  });
253
441
  }
254
- // 3. Prompt and wait for a settled state (idle | done | blocked).
255
- const prompted = await runner.exec([
256
- "herdr",
257
- "agent",
258
- "prompt",
259
- name,
442
+ // 3. Prompt and wait for a settled state (idle | done | blocked),
443
+ // recovering from herdr's transient agent_prompt_stalled classification.
444
+ const prompted = await promptAgentUntilSettled(runner, {
445
+ agentName: name,
260
446
  prompt,
261
- "--wait",
262
- "--timeout",
263
- String(timeoutMs),
264
- ]);
447
+ timeoutMs,
448
+ stalledGraceMs,
449
+ pollIntervalMs: stalledPollIntervalMs,
450
+ });
265
451
  if (prompted.exitCode !== 0) {
266
452
  const detail = herdrErrorDetail(prompted.stderr, prompted.stdout);
267
- return finish({ error: `herdr agent prompt failed (likely timeout): ${detail}` });
453
+ return finish({ error: `herdr agent prompt failed: ${detail}` });
268
454
  }
269
455
  const state = agentState(parseHerdrJson(prompted.stdout)?.result);
270
456
  if (state === "blocked") {
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export type { HerdrAdapterOptions, HerdrRunner } from "./adapter.js";
2
- export { createHerdrHostAdapter, herdrAgentName, sanitizeHerdrName, trimTrailingNewlines, } from "./adapter.js";
1
+ export type { AgentPromptRequest, AgentStartRequest, ChildWorkspaceRequest, ChildWorkspaceResult, HerdrAdapterOptions, HerdrRunner, } from "./adapter.js";
2
+ export { createChildWorkspace, createHerdrHostAdapter, herdrAgentName, herdrErrorCode, herdrParentWorkspaceId, promptAgentUntilSettled, sanitizeHerdrName, startAgentUntilReady, trimTrailingNewlines, } from "./adapter.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export { createHerdrHostAdapter, herdrAgentName, sanitizeHerdrName, trimTrailingNewlines, } from "./adapter.js";
1
+ export { createChildWorkspace, createHerdrHostAdapter, herdrAgentName, herdrErrorCode, herdrParentWorkspaceId, promptAgentUntilSettled, sanitizeHerdrName, startAgentUntilReady, trimTrailingNewlines, } from "./adapter.js";
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@guyghost/swarm-dao-herdr-adapter",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
4
4
  "description": "Swarm DAO herdr host — each deliberation agent runs as a real coding agent in a herdr workspace",
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.16.0"
27
+ "@guyghost/swarm-dao-core": "^0.16.1"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@types/bun": "1.3.14",