@stigmer/runner 3.36.0 → 3.37.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.
Files changed (54) hide show
  1. package/dist/.build-fingerprint +1 -1
  2. package/dist/__test-utils__/hermetic-activity.d.ts +4 -2
  3. package/dist/__test-utils__/hermetic-activity.js +5 -3
  4. package/dist/__test-utils__/hermetic-activity.js.map +1 -1
  5. package/dist/activities/execute-deep-agent/engine-tools.d.ts +32 -0
  6. package/dist/activities/execute-deep-agent/engine-tools.js +32 -0
  7. package/dist/activities/execute-deep-agent/engine-tools.js.map +1 -0
  8. package/dist/activities/execute-deep-agent/prompt-builder.d.ts +5 -4
  9. package/dist/activities/execute-deep-agent/prompt-builder.js +66 -64
  10. package/dist/activities/execute-deep-agent/prompt-builder.js.map +1 -1
  11. package/dist/activities/execute-deep-agent/subagent-transformer.d.ts +5 -2
  12. package/dist/activities/execute-deep-agent/subagent-transformer.js +27 -14
  13. package/dist/activities/execute-deep-agent/subagent-transformer.js.map +1 -1
  14. package/dist/activities/execute-deep-agent/todo-list.d.ts +40 -0
  15. package/dist/activities/execute-deep-agent/todo-list.js +51 -0
  16. package/dist/activities/execute-deep-agent/todo-list.js.map +1 -0
  17. package/dist/activities/execute-deep-agent/turn-setup.js +5 -7
  18. package/dist/activities/execute-deep-agent/turn-setup.js.map +1 -1
  19. package/dist/middleware/error-hints.js +3 -3
  20. package/dist/middleware/error-hints.js.map +1 -1
  21. package/dist/middleware/path-normalization.d.ts +18 -4
  22. package/dist/middleware/path-normalization.js +42 -13
  23. package/dist/middleware/path-normalization.js.map +1 -1
  24. package/dist/shared/subagent-gate.d.ts +6 -0
  25. package/dist/shared/subagent-gate.js +6 -1
  26. package/dist/shared/subagent-gate.js.map +1 -1
  27. package/dist/shared/workspace/sources/local-path.js +5 -1
  28. package/dist/shared/workspace/sources/local-path.js.map +1 -1
  29. package/dist/tools/think-tool.d.ts +7 -0
  30. package/dist/tools/think-tool.js +10 -11
  31. package/dist/tools/think-tool.js.map +1 -1
  32. package/package.json +5 -5
  33. package/src/__test-utils__/hermetic-activity.ts +5 -3
  34. package/src/activities/execute-deep-agent/__tests__/engine-tools.test.ts +96 -0
  35. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.build-from-plan.prompt.md +22 -35
  36. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.everything.prompt.md +23 -35
  37. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.minimal.prompt.md +11 -23
  38. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.plan-mode.prompt.md +22 -35
  39. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.skills-below-threshold.prompt.md +22 -34
  40. package/src/activities/execute-deep-agent/__tests__/hermetic/hitl-parallel-gates.test.ts +132 -0
  41. package/src/activities/execute-deep-agent/__tests__/prompt-builder.test.ts +20 -2
  42. package/src/activities/execute-deep-agent/__tests__/prompt-goldens.test.ts +9 -0
  43. package/src/activities/execute-deep-agent/engine-tools.ts +33 -0
  44. package/src/activities/execute-deep-agent/prompt-builder.ts +73 -69
  45. package/src/activities/execute-deep-agent/subagent-transformer.ts +28 -13
  46. package/src/activities/execute-deep-agent/todo-list.ts +56 -0
  47. package/src/activities/execute-deep-agent/turn-setup.ts +5 -7
  48. package/src/middleware/__tests__/path-normalization.test.ts +32 -0
  49. package/src/middleware/error-hints.ts +3 -3
  50. package/src/middleware/path-normalization.ts +41 -13
  51. package/src/shared/subagent-gate.ts +6 -1
  52. package/src/shared/workspace/sources/local-path.ts +5 -1
  53. package/src/tools/__tests__/think-tool.test.ts +3 -2
  54. package/src/tools/think-tool.ts +10 -11
@@ -1 +1 @@
1
- {"hash":"380a77662a3e06cc","builtAt":"2026-09-28T11:34:21.201Z","fileCount":334}
1
+ {"hash":"4424a958e146fda3","builtAt":"2026-09-28T14:08:21.286Z","fileCount":336}
@@ -196,9 +196,11 @@ export declare class ExecutionRecord {
196
196
  * the tool call the runner wrote. The runner owns `status`; the server owns
197
197
  * `approval_action` (field ownership, 005 mandate 2) — so this is the ONE
198
198
  * place a test writes it, and the status stays WAITING_APPROVAL until the
199
- * resumed turn runs the tool, exactly as in production.
199
+ * resumed turn runs the tool, exactly as in production. `onlyId` decides one
200
+ * of several calls paused in the same round and leaves the rest waiting, as
201
+ * a user deciding them one at a time does.
200
202
  */
201
- decideWaitingToolCalls(action: ApprovalAction, decidedAt: string): number;
203
+ decideWaitingToolCalls(action: ApprovalAction, decidedAt: string, onlyId?: string): number;
202
204
  /**
203
205
  * What the server's `SubmitFileDecision` and its projection do between
204
206
  * invocations: every change of every AWAITING_REVIEW set the runner captured
@@ -247,10 +247,12 @@ export class ExecutionRecord {
247
247
  * the tool call the runner wrote. The runner owns `status`; the server owns
248
248
  * `approval_action` (field ownership, 005 mandate 2) — so this is the ONE
249
249
  * place a test writes it, and the status stays WAITING_APPROVAL until the
250
- * resumed turn runs the tool, exactly as in production.
250
+ * resumed turn runs the tool, exactly as in production. `onlyId` decides one
251
+ * of several calls paused in the same round and leaves the rest waiting, as
252
+ * a user deciding them one at a time does.
251
253
  */
252
- decideWaitingToolCalls(action, decidedAt) {
253
- const waiting = this.waitingToolCalls();
254
+ decideWaitingToolCalls(action, decidedAt, onlyId) {
255
+ const waiting = this.waitingToolCalls().filter((tc) => onlyId === undefined || tc.id === onlyId);
254
256
  for (const tc of waiting) {
255
257
  tc.approvalAction = action;
256
258
  tc.approvalDecidedAt = decidedAt;
@@ -1 +1 @@
1
- {"version":3,"file":"hermetic-activity.js","sourceRoot":"","sources":["../../src/__test-utils__/hermetic-activity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hermetic-activity.js","sourceRoot":"","sources":["../../src/__test-utils__/hermetic-activity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * The names the native engine binds for its built-in tools, the one home
3
+ * every text of this harness quotes them from.
4
+ *
5
+ * The model can call only what is bound, so a prompt that names a tool by
6
+ * any other spelling sends it looking for something that does not exist.
7
+ * That drift is not hypothetical: this harness's prompts named `read`,
8
+ * `search` and `list_dir` after every rename upstream made, because each
9
+ * text spelled the names itself. The prompt modules
10
+ * (`prompt-builder.ts`, `subagent-transformer.ts`, `todo-list.ts`) now
11
+ * interpolate these constants, and
12
+ * `__tests__/engine-tools.test.ts` binds a real graph and fails when a name
13
+ * here is not on its surface.
14
+ *
15
+ * The file tools, `execute` and `task` are deepagents' (1.14: the
16
+ * filesystem and sub-agent middleware); `write_todos` is langchain's
17
+ * `todoListMiddleware`, which this harness installs on the parent
18
+ * (`turn-setup.ts`). The runner's own tools (`think`, `web_fetch`) carry
19
+ * their names in `tools/`.
20
+ */
21
+ export declare const ENGINE_TOOL: {
22
+ readonly ls: "ls";
23
+ readonly readFile: "read_file";
24
+ readonly writeFile: "write_file";
25
+ readonly editFile: "edit_file";
26
+ readonly glob: "glob";
27
+ readonly grep: "grep";
28
+ readonly execute: "execute";
29
+ readonly task: "task";
30
+ readonly writeTodos: "write_todos";
31
+ };
32
+ export type EngineToolName = (typeof ENGINE_TOOL)[keyof typeof ENGINE_TOOL];
@@ -0,0 +1,32 @@
1
+ /**
2
+ * The names the native engine binds for its built-in tools, the one home
3
+ * every text of this harness quotes them from.
4
+ *
5
+ * The model can call only what is bound, so a prompt that names a tool by
6
+ * any other spelling sends it looking for something that does not exist.
7
+ * That drift is not hypothetical: this harness's prompts named `read`,
8
+ * `search` and `list_dir` after every rename upstream made, because each
9
+ * text spelled the names itself. The prompt modules
10
+ * (`prompt-builder.ts`, `subagent-transformer.ts`, `todo-list.ts`) now
11
+ * interpolate these constants, and
12
+ * `__tests__/engine-tools.test.ts` binds a real graph and fails when a name
13
+ * here is not on its surface.
14
+ *
15
+ * The file tools, `execute` and `task` are deepagents' (1.14: the
16
+ * filesystem and sub-agent middleware); `write_todos` is langchain's
17
+ * `todoListMiddleware`, which this harness installs on the parent
18
+ * (`turn-setup.ts`). The runner's own tools (`think`, `web_fetch`) carry
19
+ * their names in `tools/`.
20
+ */
21
+ export const ENGINE_TOOL = {
22
+ ls: "ls",
23
+ readFile: "read_file",
24
+ writeFile: "write_file",
25
+ editFile: "edit_file",
26
+ glob: "glob",
27
+ grep: "grep",
28
+ execute: "execute",
29
+ task: "task",
30
+ writeTodos: "write_todos",
31
+ };
32
+ //# sourceMappingURL=engine-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-tools.js","sourceRoot":"","sources":["../../../src/activities/execute-deep-agent/engine-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,EAAE,EAAE,IAAI;IACR,QAAQ,EAAE,WAAW;IACrB,SAAS,EAAE,YAAY;IACvB,QAAQ,EAAE,WAAW;IACrB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,aAAa;CACjB,CAAC"}
@@ -16,10 +16,11 @@
16
16
  * module; this builder only frames them.
17
17
  * - This harness's: the framing — `## Heading` markdown sections, the house
18
18
  * style for a system prompt — and every text that quotes this engine's
19
- * tools: the `## Skills` activation protocol (`read`, `execute(...)`), the
20
- * response rules, the sub-agent delegation rules, the plan-mode
21
- * read-boundary sentence, and the workspace section (the deepagents
22
- * backend's path resolution is this engine's).
19
+ * tools: the `## Skills` activation protocol, the response rules, the
20
+ * working rules, the plan-mode read-boundary sentence, and the workspace
21
+ * section (the deepagents backend's path resolution is this engine's).
22
+ * Every tool name those texts quote is interpolated from `engine-tools.ts`,
23
+ * the names the engine binds.
23
24
  *
24
25
  * The rendered bytes are load-bearing for the hermetic tests: `ScriptedModel`
25
26
  * tells its scripted roles apart by the system prompt's text, so this
@@ -16,10 +16,11 @@
16
16
  * module; this builder only frames them.
17
17
  * - This harness's: the framing — `## Heading` markdown sections, the house
18
18
  * style for a system prompt — and every text that quotes this engine's
19
- * tools: the `## Skills` activation protocol (`read`, `execute(...)`), the
20
- * response rules, the sub-agent delegation rules, the plan-mode
21
- * read-boundary sentence, and the workspace section (the deepagents
22
- * backend's path resolution is this engine's).
19
+ * tools: the `## Skills` activation protocol, the response rules, the
20
+ * working rules, the plan-mode read-boundary sentence, and the workspace
21
+ * section (the deepagents backend's path resolution is this engine's).
22
+ * Every tool name those texts quote is interpolated from `engine-tools.ts`,
23
+ * the names the engine binds.
23
24
  *
24
25
  * The rendered bytes are load-bearing for the hermetic tests: `ScriptedModel`
25
26
  * tells its scripted roles apart by the system prompt's text, so this
@@ -33,12 +34,14 @@ import { effectiveInstructions } from "../../shared/builtin-assistant-prompt.js"
33
34
  import { PLAN_MODE_DIRECTIVE } from "../../shared/plan-mode-prompt.js";
34
35
  import { buildImplementPlanDirective, findApprovedPlanPath, } from "../../shared/implement-plan-prompt.js";
35
36
  import { STIGMER_LOCAL_STATE_DIR } from "../../shared/workspace/stigmer-link.js";
37
+ import { DEFAULT_MAX_CONCURRENT } from "../../shared/subagent-gate.js";
38
+ import { ENGINE_TOOL } from "./engine-tools.js";
36
39
  const RESPONSE_RULES = `
37
40
 
38
41
  ## Response rules
39
42
 
40
- - After using the read tool, NEVER reprint, echo, list, or summarize \
41
- file contents in your response. Tool results are already in your \
43
+ - After reading a file with \`${ENGINE_TOOL.readFile}\`, NEVER reprint, echo, \
44
+ list, or summarize file contents in your response. Tool results are already in your \
42
45
  context. Proceed directly to analysis or the task.
43
46
  - Do not begin responses with phrases like \
44
47
  "Below is the complete content", \
@@ -51,52 +54,50 @@ and shell commands (e.g., \`src/main.py\`, \`handleRequest()\`, \
51
54
  code blocks that the user can see in tool results.
52
55
  - Structure complex answers with headings and bullet points.
53
56
  - If you encounter something unexpected that changes the scope, \
54
- explain the issue and propose options before proceeding.
55
- `;
56
- const SUB_AGENT_RULES = `
57
-
58
- ## Sub-agent delegation rules
59
-
60
- ### Concurrency limit
61
-
62
- Do NOT spawn more than 3 sub-agents concurrently. If you need to \
63
- explore more than 3 areas, batch them: launch the first 3, wait for \
64
- results, then launch more if needed. The runtime enforces this limit — \
65
- excess sub-agents will be rejected.
66
-
67
- ### When NOT to delegate
68
-
69
- - **Reading files.** Use the \`read\` tool yourself. You need raw file \
70
- contents in your own context to reason about them accurately.
71
- - **Single-step lookups.** Use \`grep\`, \`glob\`, \`search\`, or \`read\` \
72
- directly for simple searches across 1-2 files. Only delegate when \
73
- the task requires multi-step exploration.
74
- - **Data you will process yourself.** If you need the output in your \
75
- own context (e.g., to answer a question, write code, compare files), \
76
- do the work directly — do not delegate it.
77
- - **Small tasks (fewer than 3 steps).** The overhead of spawning a \
78
- sub-agent outweighs the benefit for trivial operations.
57
+ explain the issue and propose options before proceeding.`;
58
+ // Every section of this prompt opens with its own blank line ("\n\n## ...")
59
+ // and ends on its last line, so sections are one blank line apart (#1127).
60
+ /**
61
+ * How to work with the tools, and when to delegate: the rules that decide
62
+ * how many model calls a turn takes. Each round re-sends the whole prompt,
63
+ * so a round saved is the turn's largest saving; the benchmark's per-call
64
+ * record (test/conformance src/benchmark/tool-call-facts.ts) showed where
65
+ * they went.
66
+ *
67
+ * - The path model comes first because the file tools speak the virtual
68
+ * root (`/` is the workspace; `middleware/path-normalization.ts`), and a
69
+ * model that is told nothing uses whatever path it saw last. `execute`
70
+ * runs with the workspace as its working directory (deepagents
71
+ * `LocalShellBackend`), so a `cd` into it is a wasted prefix; plan mode
72
+ * binds no shell, so its prompt says nothing about commands.
73
+ * - Edits to different files may go in one response; several edits to ONE
74
+ * file are not asked for in one response, because each is a
75
+ * read-modify-write of the same bytes. Changes that sit close together go
76
+ * in one call instead.
77
+ * - The sub-agent rules keep the one hard fact the model cannot see, the
78
+ * concurrency cap `shared/subagent-gate.ts` enforces by refusal, and leave
79
+ * the delegation mechanics to the `task` tool's own description.
80
+ */
81
+ function workingRules(interactionMode) {
82
+ const commands = interactionMode === InteractionMode.PLAN
83
+ ? ""
84
+ : ` Commands run in the workspace, so \`${ENGINE_TOOL.execute}\` needs no \`cd\`.`;
85
+ return `
79
86
 
80
- ### When TO delegate
87
+ ## Working with tools
81
88
 
82
- - Multi-step, independent tasks that produce a deliverable (analysis, \
83
- synthesis, generated content) you will incorporate into your response.
84
- - Parallel exploration of genuinely different areas of a codebase or \
85
- knowledge base when context isolation helps.
86
- - Tasks that benefit from a separate context window (e.g., long \
87
- document summarization that would crowd your own context).
89
+ - Your file tools see the workspace as \`/\`: a file at its top level is \`/README.md\`.${commands}
90
+ - Make independent tool calls together in one response: read every file you need at once, and edit different files at once. Wait for a result only when the next call depends on it.
91
+ - When one file needs changes that sit close together, make them in one \`${ENGINE_TOOL.editFile}\` call.
92
+ - A file you have read stays in your context. Read it again only if something other than your own edit changed it.
93
+ - After your edits, run the checks once. Run them again only after a fix.
88
94
 
89
- ### Delegation best practices
95
+ ## Sub-agents
90
96
 
91
- - When delegating, specify the **deliverable** you need — not \
92
- "read these files and give me the contents."
93
- - You MUST reference and synthesize sub-agent results in your \
94
- response. If you spawn a sub-agent, its output must visibly \
95
- influence your answer.
96
- - Each sub-agent consumes tokens and time. Prefer doing work \
97
- directly over delegating. Only delegate when context isolation \
98
- or parallelism genuinely helps the user.
99
- `;
97
+ - Do the work yourself unless it is a multi-step, independent task whose result you need only as a summary. Never delegate reading a file you must reason about.
98
+ - At most ${DEFAULT_MAX_CONCURRENT} sub-agents run at once; the runtime rejects more.
99
+ - Tell a sub-agent exactly what to return, and use what it returns.`;
100
+ }
100
101
  /**
101
102
  * This harness's heading for each shared standing section (the section's
102
103
  * identity and order are `prompt-sections.ts`'s; the `##` framing is the
@@ -141,7 +142,7 @@ export function buildEnhancedSystemPrompt(input) {
141
142
  prompt += `\n\n## ${STANDING_SECTION_HEADINGS[section.kind]}\n\n${section.body}`;
142
143
  }
143
144
  prompt += RESPONSE_RULES;
144
- prompt += SUB_AGENT_RULES;
145
+ prompt += workingRules(input.interactionMode);
145
146
  // Last sections on purpose: these per-execution directives redefine the
146
147
  // turn's deliverable, so they must be the freshest instruction the model
147
148
  // reads. (PLAN and build_from_plan are mutually exclusive in practice —
@@ -206,7 +207,7 @@ export function renderSkillsSection(skills) {
206
207
  "knowledge or capabilities.",
207
208
  "",
208
209
  "**Activation protocol**: To use a skill, read its SKILL.md file " +
209
- "using the `read` tool. The SKILL.md contains detailed instructions, " +
210
+ `with \`${ENGINE_TOOL.readFile}\`. The SKILL.md contains detailed instructions, ` +
210
211
  "available tools, and usage examples.",
211
212
  "",
212
213
  "**Usage pattern**:",
@@ -215,8 +216,8 @@ export function renderSkillsSection(skills) {
215
216
  "2. Read `{location}/SKILL.md` for full instructions",
216
217
  "3. Follow the skill's documented operations:",
217
218
  "",
218
- "`read {location}/references/schema.md`",
219
- '`execute("python3 {location}/scripts/run.py")`',
219
+ `\`${ENGINE_TOOL.readFile}\` on \`{location}/references/schema.md\``,
220
+ `\`${ENGINE_TOOL.execute}\` with \`python3 {location}/scripts/run.py\``,
220
221
  "",
221
222
  ];
222
223
  for (const skill of skills) {
@@ -224,7 +225,7 @@ export function renderSkillsSection(skills) {
224
225
  lines.push(`### ${skill.name}`);
225
226
  lines.push(`**Description**: ${skill.description || "(no description)"}`);
226
227
  lines.push(`**Location**: \`${skillDir}/\``);
227
- lines.push(`**Activate**: \`read ${skillDir}/SKILL.md\``);
228
+ lines.push(`**Activate**: \`${ENGINE_TOOL.readFile}\` on \`${skillDir}/SKILL.md\``);
228
229
  lines.push("");
229
230
  }
230
231
  return lines.join("\n");
@@ -255,15 +256,15 @@ function buildMultiWorkspaceSection(results, containerRoot) {
255
256
  const firstLabel = results[0].entryName || "entry-1";
256
257
  let section = `\n\n## Workspace\n\n` +
257
258
  `This session has ${results.length} workspace entries.\n\n` +
258
- `**Path resolution**: All tools resolve paths relative to the ` +
259
- `workspace root. Use entry-relative paths ` +
260
- `(e.g., \`${firstLabel}/src/main.py\`). ` +
261
- `Do not use absolute filesystem paths.\n`;
259
+ `**Path resolution**: each entry is a directory at the workspace ` +
260
+ `root; name a file by its entry (e.g., \`/${firstLabel}/src/main.py\`).`;
261
+ // Entries are joined by a blank line, so an entry's file tree never runs
262
+ // into the next entry's heading (#1127).
262
263
  for (let idx = 0; idx < results.length; idx++) {
263
264
  const result = results[idx];
264
265
  const label = result.entryName || `entry-${idx + 1}`;
265
266
  const relPath = workspaceRelativePath(result.rootDir, containerRoot);
266
- section += `\n### ${label} (\`${relPath}\`)\n\n`;
267
+ section += `\n\n### ${label} (\`${relPath}\`)\n\n`;
267
268
  section += formatEntryDescription(result);
268
269
  if (result.fileTree) {
269
270
  section += "\n\n" + result.fileTree;
@@ -287,8 +288,7 @@ function workspaceRelativePath(rootDir, containerRoot) {
287
288
  function formatEntryDescription(result) {
288
289
  const name = result.entryName || "this entry";
289
290
  if (result.sourceType === "local_path") {
290
- return (`Workspace entry **${name}** is the user's project directory ` +
291
- `at \`${result.rootDir}\`.\n` +
291
+ return (`Workspace entry **${name}** is the user's project directory.\n` +
292
292
  "You are operating directly on the user's files — changes are " +
293
293
  "immediate and persistent. Use git to track and verify your changes.");
294
294
  }
@@ -312,7 +312,7 @@ function buildReferencedFilesSection(workspaceFileRefs, _workspaceRoot) {
312
312
  return "";
313
313
  let section = "\n\n## Referenced Files\n\n" +
314
314
  "The user has highlighted the following workspace paths for your " +
315
- "attention. Use `read` to access file contents.\n\n";
315
+ `attention. Use \`${ENGINE_TOOL.readFile}\` to access file contents.\n\n`;
316
316
  for (const refPath of workspaceFileRefs) {
317
317
  section += `- \`${refPath}\`\n`;
318
318
  }
@@ -320,7 +320,7 @@ function buildReferencedFilesSection(workspaceFileRefs, _workspaceRoot) {
320
320
  }
321
321
  /**
322
322
  * The `## Input Files` section: this harness's intro (it names this engine's
323
- * `read` tool) around the shared lines (`prompt-sections.ts` `inputFileLines`
323
+ * file-reading tool) around the shared lines (`prompt-sections.ts` `inputFileLines`
324
324
  * says what each bullet and disclosure carries and why). Each disclosure
325
325
  * group is set off by a blank line, the markdown idiom.
326
326
  */
@@ -330,7 +330,7 @@ function buildInputFilesSection(files, vision, downloadUrlKind) {
330
330
  "The following files have been provided as read-only reference " +
331
331
  "material for your task. They live under `.stigmer/inputs/` and " +
332
332
  "are NOT part of the project source tree.\n\n" +
333
- "Read them using the `read` tool when you need their contents. " +
333
+ `Read them with \`${ENGINE_TOOL.readFile}\` when you need their contents. ` +
334
334
  "Do NOT echo, reprint, or summarize file contents in your response " +
335
335
  "-- they are reference material, not output. " +
336
336
  "Do NOT modify or delete these files.\n\n";
@@ -344,6 +344,8 @@ function buildInputFilesSection(files, vision, downloadUrlKind) {
344
344
  if (lines.vision.length > 0) {
345
345
  section += "\n" + lines.vision.join("\n") + "\n";
346
346
  }
347
- return section;
347
+ // Every section opens with its own blank line ("\n\n## ..."), so this one
348
+ // ends on its last line rather than adding a second blank (#1127).
349
+ return section.replace(/\n+$/, "");
348
350
  }
349
351
  //# sourceMappingURL=prompt-builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../../src/activities/execute-deep-agent/prompt-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../../src/activities/execute-deep-agent/prompt-builder.ts"],"names":[],"mappings":"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"}
@@ -123,8 +123,11 @@ export interface SubagentTransformOptions {
123
123
  * general-purpose is the gated replacement for the sub-agent deepagents would
124
124
  * otherwise auto-inject WITHOUT our approval gate (suppressed process-wide in
125
125
  * deepagents-profiles.ts; supplying our own under the same name is the
126
- * documented override path). It uses deepagents' own description/prompt so the
127
- * model's delegation behavior is unchanged, and receives the parent's MCP tools
126
+ * documented override path). It keeps deepagents' own prompt, but its line in
127
+ * the `task` tool is Stigmer's ({@link GENERAL_PURPOSE_DESCRIPTION}): it was
128
+ * upstream's while the goal was parity with the suppressed original, and
129
+ * upstream's invites the delegation the parent's rules advise against. It
130
+ * receives the parent's MCP tools
128
131
  * for capability parity with the injected original. Conscious simplification:
129
132
  * the parent's skills prompt is NOT inherited — a sub-agent needing skills
130
133
  * should be declared explicitly in the Agent spec.
@@ -21,7 +21,7 @@
21
21
  * - Invalid configurations are logged and skipped (graceful degradation)
22
22
  * - Empty subagent list returns null (no subagents configured)
23
23
  */
24
- import { createDeepAgent, FilesystemBackend, LocalShellBackend, DEFAULT_GENERAL_PURPOSE_DESCRIPTION, DEFAULT_SUBAGENT_PROMPT } from "deepagents";
24
+ import { createDeepAgent, FilesystemBackend, LocalShellBackend, DEFAULT_SUBAGENT_PROMPT } from "deepagents";
25
25
  import { createCasCaptureBackend } from "./cas-capture-backend.js";
26
26
  import { mountPlatformRoute } from "./platform-route.js";
27
27
  import { createThinkTool, createWebFetchTool } from "../../tools/index.js";
@@ -29,6 +29,7 @@ import { buildSubAgentMiddleware } from "./subagent-wiring.js";
29
29
  import { SubAgentGate } from "../../shared/subagent-gate.js";
30
30
  import { isModelRegistered } from "../../shared/model-registry.js";
31
31
  import { renderSkillsSection } from "./prompt-builder.js";
32
+ import { ENGINE_TOOL } from "./engine-tools.js";
32
33
  // =========================================================================
33
34
  // Built-in subagent types and prompts
34
35
  // =========================================================================
@@ -37,32 +38,41 @@ export const BUILTIN_SUBAGENT_TYPES = new Set([
37
38
  "shell",
38
39
  "general-purpose",
39
40
  ]);
41
+ // The task arrives as the sub-agent's first message (deepagents' `task`
42
+ // tool), so a prompt carries no slot for it. Tool names come from the one
43
+ // table of bound names (`engine-tools.ts`).
40
44
  const EXPLORE_SYSTEM_PROMPT = `\
41
45
  You are an exploration specialist. Your ONLY job is to explore codebases \
42
46
  and report findings back to the parent agent.
43
47
 
44
48
  STRICT BOUNDARIES:
45
- - Use ONLY the read-only tools provided (read_file, list_dir, glob, grep, search)
49
+ - Use ONLY the read-only tools (${ENGINE_TOOL.readFile}, ${ENGINE_TOOL.ls}, ${ENGINE_TOOL.glob}, ${ENGINE_TOOL.grep})
46
50
  - Do NOT write files, create files, or modify anything
47
51
  - Do NOT execute shell commands
48
52
  - Do NOT follow skill activation instructions from any context
49
53
  - Do NOT create deliverables, scaffolds, or run initialization scripts
50
- - Report your findings concisely — the parent agent has direct file access
51
-
52
- Your task: {description}`;
54
+ - Report your findings concisely — the parent agent has direct file access`;
53
55
  const SHELL_SYSTEM_PROMPT = `\
54
56
  You are a command execution specialist. Your ONLY job is to run shell \
55
57
  commands and report the results back to the parent agent.
56
58
 
57
59
  STRICT BOUNDARIES:
58
- - Use ONLY the tools provided (execute, read_file, list_dir)
60
+ - Use ONLY ${ENGINE_TOOL.execute}, ${ENGINE_TOOL.readFile} and ${ENGINE_TOOL.ls}
59
61
  - Do NOT write or modify files directly — use shell commands if needed
60
62
  - Do NOT search extensively or explore the codebase beyond what is needed
61
63
  - Do NOT follow skill activation instructions from any context
62
64
  - Do NOT create deliverables, scaffolds, or run initialization scripts
63
- - Report command output concisely — the parent agent will interpret results
64
-
65
- Your task: {description}`;
65
+ - Report command output concisely — the parent agent will interpret results`;
66
+ /**
67
+ * The general-purpose sub-agent's line in the `task` tool. Stigmer's own
68
+ * words rather than upstream's `DEFAULT_GENERAL_PURPOSE_DESCRIPTION`, which
69
+ * invites delegating a search ("use this agent to perform the search for
70
+ * you") that the parent's working rules tell it to do itself
71
+ * (`prompt-builder.ts`): each delegation is a sub-agent's own rounds on top
72
+ * of the parent's.
73
+ */
74
+ const GENERAL_PURPOSE_DESCRIPTION = "Runs a multi-step task with the same tools as you, in its own context, and returns one report. " +
75
+ "Use it only for independent work you need as a summary.";
66
76
  const BUILTIN_DESCRIPTIONS = new Map([
67
77
  ["explore", ("Read-only codebase exploration specialist. Use for searching, " +
68
78
  "reading files, finding patterns, and understanding code structure. " +
@@ -78,8 +88,8 @@ const RESPONSE_RULES = `\
78
88
 
79
89
  ## Response rules
80
90
 
81
- - After using the read tool, NEVER reprint, echo, list, or \
82
- summarize file contents in your response. Tool results are \
91
+ - After reading a file with ${ENGINE_TOOL.readFile}, NEVER reprint, echo, \
92
+ list, or summarize file contents in your response. Tool results are \
83
93
  already in your context. Proceed directly to the task.
84
94
  - Your response is returned to the parent agent as a task \
85
95
  result. Return concise findings and actionable results — not \
@@ -103,8 +113,11 @@ same files.
103
113
  * general-purpose is the gated replacement for the sub-agent deepagents would
104
114
  * otherwise auto-inject WITHOUT our approval gate (suppressed process-wide in
105
115
  * deepagents-profiles.ts; supplying our own under the same name is the
106
- * documented override path). It uses deepagents' own description/prompt so the
107
- * model's delegation behavior is unchanged, and receives the parent's MCP tools
116
+ * documented override path). It keeps deepagents' own prompt, but its line in
117
+ * the `task` tool is Stigmer's ({@link GENERAL_PURPOSE_DESCRIPTION}): it was
118
+ * upstream's while the goal was parity with the suppressed original, and
119
+ * upstream's invites the delegation the parent's rules advise against. It
120
+ * receives the parent's MCP tools
108
121
  * for capability parity with the injected original. Conscious simplification:
109
122
  * the parent's skills prompt is NOT inherited — a sub-agent needing skills
110
123
  * should be declared explicitly in the Agent spec.
@@ -121,7 +134,7 @@ export function createBuiltinSubagents(hasWorkspace, parentMcpTools = [], webFet
121
134
  if (subagentType === "general-purpose") {
122
135
  result.push({
123
136
  name: "general-purpose",
124
- description: DEFAULT_GENERAL_PURPOSE_DESCRIPTION,
137
+ description: GENERAL_PURPOSE_DESCRIPTION,
125
138
  systemPrompt: DEFAULT_SUBAGENT_PROMPT + RESPONSE_RULES,
126
139
  // Parent-parity tool set: MCP tools plus the native web_fetch the
127
140
  // parent always carries. explore/shell stay web-less on purpose —