pi-agent-flow 2.3.0 → 2.3.1

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 (144) hide show
  1. package/dist/batch/constants.d.ts +2 -2
  2. package/dist/batch/constants.d.ts.map +1 -1
  3. package/dist/batch/execute.d.ts +2 -2
  4. package/dist/batch/execute.d.ts.map +1 -1
  5. package/dist/batch/execute.js.map +1 -1
  6. package/dist/cli/ask-user.d.ts +40 -0
  7. package/dist/cli/ask-user.d.ts.map +1 -0
  8. package/dist/cli/ask-user.js +117 -0
  9. package/dist/cli/ask-user.js.map +1 -0
  10. package/dist/cli/batch-read.d.ts +1 -4
  11. package/dist/cli/batch-read.d.ts.map +1 -1
  12. package/dist/cli/batch-read.js +28 -219
  13. package/dist/cli/batch-read.js.map +1 -1
  14. package/dist/cli/batch.d.ts.map +1 -1
  15. package/dist/cli/batch.js +54 -178
  16. package/dist/cli/batch.js.map +1 -1
  17. package/dist/cli/exec/bash.d.ts +2 -6
  18. package/dist/cli/exec/bash.d.ts.map +1 -1
  19. package/dist/cli/exec/bash.js +2 -2
  20. package/dist/cli/exec/bash.js.map +1 -1
  21. package/dist/cli/exec/delete.d.ts +2 -6
  22. package/dist/cli/exec/delete.d.ts.map +1 -1
  23. package/dist/cli/exec/delete.js +2 -5
  24. package/dist/cli/exec/delete.js.map +1 -1
  25. package/dist/cli/exec/edit.d.ts +2 -6
  26. package/dist/cli/exec/edit.d.ts.map +1 -1
  27. package/dist/cli/exec/edit.js +2 -5
  28. package/dist/cli/exec/edit.js.map +1 -1
  29. package/dist/cli/exec/patch.d.ts +2 -6
  30. package/dist/cli/exec/patch.d.ts.map +1 -1
  31. package/dist/cli/exec/patch.js +2 -5
  32. package/dist/cli/exec/patch.js.map +1 -1
  33. package/dist/cli/exec/poll.d.ts +2 -7
  34. package/dist/cli/exec/poll.d.ts.map +1 -1
  35. package/dist/cli/exec/poll.js +2 -2
  36. package/dist/cli/exec/poll.js.map +1 -1
  37. package/dist/cli/exec/read.d.ts +6 -1
  38. package/dist/cli/exec/read.d.ts.map +1 -1
  39. package/dist/cli/exec/read.js +3 -3
  40. package/dist/cli/exec/read.js.map +1 -1
  41. package/dist/cli/exec/rg.d.ts +1 -1
  42. package/dist/cli/exec/rg.d.ts.map +1 -1
  43. package/dist/cli/exec/rg.js +7 -7
  44. package/dist/cli/exec/rg.js.map +1 -1
  45. package/dist/cli/exec/util.d.ts +9 -0
  46. package/dist/cli/exec/util.d.ts.map +1 -0
  47. package/dist/cli/exec/util.js +8 -0
  48. package/dist/cli/exec/util.js.map +1 -0
  49. package/dist/cli/exec/web.d.ts +2 -7
  50. package/dist/cli/exec/web.d.ts.map +1 -1
  51. package/dist/cli/exec/web.js +3 -2
  52. package/dist/cli/exec/web.js.map +1 -1
  53. package/dist/cli/exec/write.d.ts +2 -6
  54. package/dist/cli/exec/write.d.ts.map +1 -1
  55. package/dist/cli/exec/write.js +2 -5
  56. package/dist/cli/exec/write.js.map +1 -1
  57. package/dist/cli/flags/bash.d.ts.map +1 -1
  58. package/dist/cli/flags/bash.js +2 -1
  59. package/dist/cli/flags/bash.js.map +1 -1
  60. package/dist/cli/flags/delete.d.ts.map +1 -1
  61. package/dist/cli/flags/delete.js +3 -1
  62. package/dist/cli/flags/delete.js.map +1 -1
  63. package/dist/cli/flags/edit.d.ts.map +1 -1
  64. package/dist/cli/flags/edit.js +1 -0
  65. package/dist/cli/flags/edit.js.map +1 -1
  66. package/dist/cli/flags/patch.d.ts.map +1 -1
  67. package/dist/cli/flags/patch.js +1 -0
  68. package/dist/cli/flags/patch.js.map +1 -1
  69. package/dist/cli/flags/poll.d.ts.map +1 -1
  70. package/dist/cli/flags/poll.js +1 -0
  71. package/dist/cli/flags/poll.js.map +1 -1
  72. package/dist/cli/flags/read.d.ts.map +1 -1
  73. package/dist/cli/flags/read.js +1 -0
  74. package/dist/cli/flags/read.js.map +1 -1
  75. package/dist/cli/flags/rg.d.ts.map +1 -1
  76. package/dist/cli/flags/rg.js +1 -0
  77. package/dist/cli/flags/rg.js.map +1 -1
  78. package/dist/cli/flags/web.d.ts.map +1 -1
  79. package/dist/cli/flags/web.js +1 -0
  80. package/dist/cli/flags/web.js.map +1 -1
  81. package/dist/cli/flags/write.d.ts.map +1 -1
  82. package/dist/cli/flags/write.js +1 -0
  83. package/dist/cli/flags/write.js.map +1 -1
  84. package/dist/cli/flow.d.ts +2 -2
  85. package/dist/cli/flow.d.ts.map +1 -1
  86. package/dist/cli/flow.js +58 -218
  87. package/dist/cli/flow.js.map +1 -1
  88. package/dist/cli/help.d.ts +2 -0
  89. package/dist/cli/help.d.ts.map +1 -1
  90. package/dist/cli/help.js +11 -0
  91. package/dist/cli/help.js.map +1 -1
  92. package/dist/cli/parse.js +2 -2
  93. package/dist/cli/parse.js.map +1 -1
  94. package/dist/cli/register.d.ts +8 -12
  95. package/dist/cli/register.d.ts.map +1 -1
  96. package/dist/cli/register.js +27 -50
  97. package/dist/cli/register.js.map +1 -1
  98. package/dist/cli/runner.d.ts +30 -0
  99. package/dist/cli/runner.d.ts.map +1 -0
  100. package/dist/cli/runner.js +102 -0
  101. package/dist/cli/runner.js.map +1 -0
  102. package/dist/cli/tokenize.js +1 -1
  103. package/dist/cli/tokenize.js.map +1 -1
  104. package/dist/flow/continuation.d.ts.map +1 -1
  105. package/dist/flow/continuation.js +26 -0
  106. package/dist/flow/continuation.js.map +1 -1
  107. package/dist/flow/process-lifecycle.d.ts.map +1 -1
  108. package/dist/flow/process-lifecycle.js +11 -3
  109. package/dist/flow/process-lifecycle.js.map +1 -1
  110. package/dist/flow/runner.d.ts.map +1 -1
  111. package/dist/flow/runner.js +36 -5
  112. package/dist/flow/runner.js.map +1 -1
  113. package/dist/flow/warp.d.ts.map +1 -1
  114. package/dist/flow/warp.js +16 -10
  115. package/dist/flow/warp.js.map +1 -1
  116. package/dist/index.d.ts.map +1 -1
  117. package/dist/index.js +3 -4
  118. package/dist/index.js.map +1 -1
  119. package/dist/steering/sliding-prompt.d.ts.map +1 -1
  120. package/dist/steering/sliding-prompt.js +2 -1
  121. package/dist/steering/sliding-prompt.js.map +1 -1
  122. package/dist/tools/ask-user.d.ts +10 -7
  123. package/dist/tools/ask-user.d.ts.map +1 -1
  124. package/dist/tools/ask-user.js +51 -62
  125. package/dist/tools/ask-user.js.map +1 -1
  126. package/dist/tools/trace.d.ts.map +1 -1
  127. package/dist/tools/trace.js +1 -1
  128. package/dist/tools/trace.js.map +1 -1
  129. package/dist/tools/web-ops.d.ts.map +1 -1
  130. package/dist/tools/web-ops.js +5 -1
  131. package/dist/tools/web-ops.js.map +1 -1
  132. package/package.json +3 -2
  133. package/dist/batch/index.d.ts +0 -11
  134. package/dist/batch/index.d.ts.map +0 -1
  135. package/dist/batch/index.js +0 -12
  136. package/dist/batch/index.js.map +0 -1
  137. package/dist/cli/exec/index.d.ts +0 -10
  138. package/dist/cli/exec/index.d.ts.map +0 -1
  139. package/dist/cli/exec/index.js +0 -10
  140. package/dist/cli/exec/index.js.map +0 -1
  141. package/dist/cli/flags/index.d.ts +0 -10
  142. package/dist/cli/flags/index.d.ts.map +0 -1
  143. package/dist/cli/flags/index.js +0 -10
  144. package/dist/cli/flags/index.js.map +0 -1
@@ -5,12 +5,13 @@
5
5
  * that uses subcommands and flags.
6
6
  */
7
7
  import { Type } from "@sinclair/typebox";
8
- import { tokenize } from "./tokenize.js";
9
- import { splitChain } from "./chain.js";
10
- import { parseCommand, CliError } from "./parse.js";
11
- import { renderHelp } from "./help.js";
12
- import { formatChainedOutput } from "./format.js";
13
- import { executeOperations } from "../batch/execute.js";
8
+ import { CliError } from "./parse.js";
9
+ import { renderHelp, flagSpecToHelp } from "./help.js";
10
+ import { runChain } from "./runner.js";
11
+ import { READ_FLAGS } from "./flags/read.js";
12
+ import { RG_FLAGS } from "./flags/rg.js";
13
+ import { runReadSubcommand } from "./exec/read.js";
14
+ import { runRgSubcommand } from "./exec/rg.js";
14
15
  // ---------------------------------------------------------------------------
15
16
  // Schema
16
17
  // ---------------------------------------------------------------------------
@@ -26,242 +27,50 @@ export const BatchReadCliParams = Type.Object({
26
27
  // Constants
27
28
  // ---------------------------------------------------------------------------
28
29
  export const BATCH_READ_CLI_DESCRIPTION = "Read-only file & grep tool — NOT a shell. Supports ONLY two subcommands: `read` (file contents) and `rg` (ripgrep). Pass a single [cmd] string of the form `batch_read <subcommand> <flags> <args>`. There is no `ls`, no `cd`, no `git`. Examples: `batch_read read src/index.ts` • `batch_read rg -q \"TODO\" src/`. Pass [cmd]: \"help\" for the man page.";
29
- export const BATCH_READ_CLI_SNIPPET = "Read files or grep via bash-style CLI (read-only)";
30
+ export const BATCH_READ_CLI_SNIPPET = "Read files or grep NOT a shell (read-only)";
30
31
  export const BATCH_READ_CLI_GUIDELINES = [
31
32
  "**This is a structured command, NOT a shell.** There is no `ls`, `cd`, `git`, or arbitrary command. The only operations available are the documented subcommands (`read`, `rg`).",
32
33
  "Use `batch_read read <paths>` for files. Add `:N` or `:N-M` for line ranges.",
33
34
  "Use `batch_read rg -q <pattern> <path>` for ripgrep.",
34
35
  "Chain with `;` for sequential ops and `&&` for conditional ops.",
35
- "Pass `cmd: \"help\"` or `--help` for the man page.",
36
+ "Pass `cmd: \"help\"`, `--help`, or `-h` for the man page.",
36
37
  ];
37
38
  // ---------------------------------------------------------------------------
38
- // Flag specs
39
- // ---------------------------------------------------------------------------
40
- export const READ_FLAGS = {
41
- start: { short: "s", type: "number", description: "1-indexed start line" },
42
- limit: { short: "l", type: "number", description: "Maximum lines to read" },
43
- end: { short: "e", type: "number", description: "End line (used with -s)" },
44
- };
45
- export const RG_FLAGS = {
46
- query: { short: "q", type: "string", description: "Search pattern for rg" },
47
- "ignore-case": { short: "i", type: "boolean", description: "Ignore case for rg" },
48
- "files-only": { short: "l", type: "boolean", description: "Return filenames only for rg" },
49
- type: { short: "t", type: "string", description: "Type filter for rg (e.g., ts, js)" },
50
- "max-count": { short: "n", type: "number", description: "Max matches per file for rg" },
51
- "ignore-level": { short: "u", type: "number", description: "Ignore level for rg (0-3)" },
52
- };
53
- // ---------------------------------------------------------------------------
54
39
  // Help text
55
40
  // ---------------------------------------------------------------------------
56
41
  const subcommands = [
57
- {
58
- name: "read",
59
- description: "Read file contents. Paths may include :N or :N-M line ranges.",
60
- flags: {
61
- start: { short: "s", type: "number", description: "1-indexed start line" },
62
- limit: { short: "l", type: "number", description: "Maximum lines to read" },
63
- end: { short: "e", type: "number", description: "End line (used with -s)" },
64
- },
65
- },
66
- {
67
- name: "rg",
68
- description: "Search with ripgrep.",
69
- flags: {
70
- query: { short: "q", type: "string", description: "Search pattern (required)" },
71
- "ignore-case": { short: "i", type: "boolean", description: "Ignore case" },
72
- "files-only": { short: "l", type: "boolean", description: "Return filenames only" },
73
- type: { short: "t", type: "string", description: "Type filter (e.g., ts, js)" },
74
- "max-count": { short: "n", type: "number", description: "Max matches per file" },
75
- "ignore-level": { short: "u", type: "number", description: "Ignore level (0-3)" },
76
- },
77
- },
42
+ { name: "read", description: "Read file contents. Paths may include :N or :N-M line ranges.", flags: flagSpecToHelp(READ_FLAGS) },
43
+ { name: "rg", description: "Search with ripgrep.", flags: flagSpecToHelp(RG_FLAGS) },
78
44
  ];
79
45
  export const BATCH_READ_HELP = renderHelp("batch_read", "Read-only file and ripgrep tool. Does not execute shell commands, write to files, or fetch URLs.", subcommands);
80
46
  // ---------------------------------------------------------------------------
81
- // Path spec parser
82
- // ---------------------------------------------------------------------------
83
- function parsePathSpec(spec) {
84
- // Find the last colon that might be a line-range marker.
85
- // POSIX paths rarely contain colons except at the root, so we look for
86
- // patterns like :N or :N-M at the end.
87
- const match = spec.match(/^(.*):(\d+)(?:-(\d+))?$/);
88
- if (match) {
89
- const pathPart = match[1];
90
- const start = parseInt(match[2], 10);
91
- const end = match[3] ? parseInt(match[3], 10) : undefined;
92
- return { path: pathPart, start, end };
93
- }
94
- return { path: spec };
95
- }
96
- // ---------------------------------------------------------------------------
97
47
  // Dispatch
98
48
  // ---------------------------------------------------------------------------
99
- async function runReadSubcommand(parsed, cwd, signal) {
100
- if (parsed.positionals.length === 0) {
101
- throw new CliError("read requires at least one path.", "Usage: batch_read read [flags] <path> ...");
102
- }
103
- const flagStart = typeof parsed.flags.start === "number" ? parsed.flags.start : undefined;
104
- const flagLimit = typeof parsed.flags.limit === "number" ? parsed.flags.limit : undefined;
105
- const flagEnd = typeof parsed.flags.end === "number" ? parsed.flags.end : undefined;
106
- const ops = [];
107
- for (const spec of parsed.positionals) {
108
- const { path, start, end } = parsePathSpec(spec);
109
- const effectiveStart = start ?? flagStart;
110
- let effectiveLimit;
111
- if (end !== undefined && effectiveStart !== undefined) {
112
- effectiveLimit = end - effectiveStart + 1;
113
- }
114
- else if (end !== undefined) {
115
- effectiveLimit = end;
49
+ const RECOGNIZED_SUBS = new Set(["read", "rg"]);
50
+ async function dispatch(subcommand, parsed, cwd, signal) {
51
+ switch (subcommand) {
52
+ case "read": {
53
+ return runReadSubcommand(parsed, cwd, signal, "batch_read");
116
54
  }
117
- else {
118
- effectiveLimit = flagLimit;
55
+ case "rg": {
56
+ return runRgSubcommand(parsed, cwd, signal, "batch_read");
119
57
  }
120
- if (flagEnd !== undefined && effectiveStart !== undefined && effectiveLimit === undefined) {
121
- effectiveLimit = flagEnd - effectiveStart + 1;
58
+ default: {
59
+ throw new CliError(`Unknown subcommand: ${subcommand}`, `Did you mean: read, rg? Run with --help for usage.`);
122
60
  }
123
- ops.push({
124
- o: "read",
125
- p: path,
126
- s: effectiveStart,
127
- l: effectiveLimit,
128
- });
129
61
  }
130
- const { contentText, results } = await executeOperations(ops, cwd, signal, {
131
- readOptions: { truncate: false, toolName: "batch_read" },
132
- includeLimitWarnings: false,
133
- });
134
- const failed = results.some((r) => r.status === "error");
135
- const error = failed
136
- ? (results.find((r) => r.status === "error")?.error ?? "operation failed")
137
- : undefined;
138
- return { output: contentText, results, error, failed };
139
- }
140
- async function runRgSubcommand(parsed, cwd, signal) {
141
- const query = typeof parsed.flags.query === "string" ? parsed.flags.query : undefined;
142
- if (!query) {
143
- throw new CliError("rg requires -q <pattern>.", "Usage: batch_read rg -q <pattern> [flags] <path>");
144
- }
145
- if (parsed.positionals.length === 0) {
146
- throw new CliError("rg requires a search path.", "Usage: batch_read rg -q <pattern> [flags] <path>");
147
- }
148
- const searchPath = parsed.positionals[0];
149
- const op = {
150
- o: "rg",
151
- p: searchPath,
152
- q: query,
153
- i: parsed.flags["ignore-case"] === true ? true : undefined,
154
- l: parsed.flags["files-only"] === true ? true : undefined,
155
- t: typeof parsed.flags.type === "string" ? parsed.flags.type : undefined,
156
- n: typeof parsed.flags["max-count"] === "number" ? parsed.flags["max-count"] : undefined,
157
- u: typeof parsed.flags["ignore-level"] === "number" ? parsed.flags["ignore-level"] : undefined,
158
- };
159
- const { contentText, results } = await executeOperations([op], cwd, signal, {
160
- readOptions: { truncate: false, toolName: "batch_read" },
161
- includeLimitWarnings: false,
162
- });
163
- const failed = results.some((r) => r.status === "error");
164
- const error = failed
165
- ? (results.find((r) => r.status === "error")?.error ?? "operation failed")
166
- : undefined;
167
- return { output: contentText, results, error, failed };
168
62
  }
169
63
  // ---------------------------------------------------------------------------
170
64
  // Main entry
171
65
  // ---------------------------------------------------------------------------
172
66
  export async function runBatchReadCli(cmd, cwd, signal) {
173
- const trimmed = cmd.trim();
174
- if (trimmed.length === 0) {
175
- return { text: BATCH_READ_HELP, results: [], hasError: false };
176
- }
177
- const chain = splitChain(trimmed);
178
- const ops = [];
179
- let previousFailed = false;
180
- const allResults = [];
181
- for (const link of chain) {
182
- if (link.kind === "and" && previousFailed) {
183
- ops.push({ cmd: link.cmd, output: "", skipped: true });
184
- continue;
185
- }
186
- let output = "";
187
- let failed = false;
188
- let error;
189
- try {
190
- const tokens = tokenize(link.cmd);
191
- // Remove leading "batch_read" if present (the model may include it)
192
- if (tokens[0] === "batch_read") {
193
- tokens.shift();
194
- }
195
- if (tokens.length === 0) {
196
- output = BATCH_READ_HELP;
197
- }
198
- else {
199
- const subcommand = tokens[0];
200
- if (subcommand === "help" || subcommand === "--help" || subcommand === "-h") {
201
- output = BATCH_READ_HELP;
202
- }
203
- else {
204
- let parsed;
205
- const recognizedSubs = new Set(["read", "rg"]);
206
- if (!recognizedSubs.has(subcommand)) {
207
- // Defer to the default branch in the switch below, which produces a clear "Unknown subcommand" error.
208
- parsed = { subcommand, flags: {}, positionals: tokens.slice(1) };
209
- }
210
- else {
211
- const flagSpec = subcommand === "rg" ? RG_FLAGS : READ_FLAGS;
212
- try {
213
- parsed = parseCommand(tokens, flagSpec);
214
- }
215
- catch (err) {
216
- if (err instanceof CliError && err.message.startsWith("Unknown flag")) {
217
- const validFlags = Object.keys(flagSpec).map((n) => `--${n}`).join(", ");
218
- throw new CliError(err.message, `\`${subcommand}\` supports: ${validFlags}. Run [cmd]: \"help\" for the man page.`);
219
- }
220
- throw err;
221
- }
222
- }
223
- let result;
224
- switch (parsed.subcommand) {
225
- case "read": {
226
- result = await runReadSubcommand(parsed, cwd ?? process.cwd(), signal);
227
- break;
228
- }
229
- case "rg": {
230
- result = await runRgSubcommand(parsed, cwd ?? process.cwd(), signal);
231
- break;
232
- }
233
- default: {
234
- throw new CliError(`Unknown subcommand: ${parsed.subcommand}`, `Did you mean: read, rg? Run with --help for usage.`);
235
- }
236
- }
237
- output = result.output;
238
- allResults.push(...result.results);
239
- if (result.failed) {
240
- failed = true;
241
- error = `${result.error ?? "operation failed"}\nTIP: This is not a shell. Valid subcommands: read, rg. Run [cmd]: \"help\" for the man page.`;
242
- }
243
- }
244
- }
245
- }
246
- catch (err) {
247
- failed = true;
248
- if (err instanceof CliError) {
249
- const baseError = err.hint ? `${err.message} (hint: ${err.hint})` : err.message;
250
- error = `${baseError}\nTIP: This is not a shell. Valid subcommands: read, rg. Run [cmd]: \"help\" for the man page.`;
251
- }
252
- else {
253
- error = `internal error: ${err instanceof Error ? err.message : String(err)}`;
254
- }
255
- }
256
- ops.push({ cmd: link.cmd, output, error, failed, skipped: false });
257
- if (failed) {
258
- previousFailed = true;
259
- }
260
- else {
261
- previousFailed = false;
262
- }
263
- }
264
- const hasError = ops.some((op) => op.error !== undefined || op.skipped || op.failed);
265
- return { text: formatChainedOutput(ops), results: allResults, hasError };
67
+ return runChain(cmd, cwd ?? process.cwd(), signal, {
68
+ toolPrefix: "batch_read",
69
+ recognizedSubs: RECOGNIZED_SUBS,
70
+ getFlagSpec: (subcommand) => (subcommand === "rg" ? RG_FLAGS : READ_FLAGS),
71
+ dispatch,
72
+ helpText: BATCH_READ_HELP,
73
+ validSubcommandsTip: "read, rg",
74
+ });
266
75
  }
267
76
  //# sourceMappingURL=batch-read.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"batch-read.js","sourceRoot":"","sources":["../../src/cli/batch-read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batch-read.js","sourceRoot":"","sources":["../../src/cli/batch-read.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"batch.d.ts","sourceRoot":"","sources":["../../src/cli/batch.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AA4BjE,eAAO,MAAM,cAAc,KASzB,CAAC;AAMH,eAAO,MAAM,qBAAqB,+gBAC+b,CAAC;AAEle,eAAO,MAAM,iBAAiB,qDACsB,CAAC;AAErD,eAAO,MAAM,oBAAoB,UAYhC,CAAC;AAoFF,eAAO,MAAM,UAAU,QAItB,CAAC;AA4DF,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,kBAAkB,GAAG,SAAS,EAC3C,cAAc,CAAC,EAAE;IAAE,aAAa,IAAI,MAAM,CAAA;CAAE,EAC5C,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,uBAAuB,EAAE,QAAQ,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,CAmGnG"}
1
+ {"version":3,"file":"batch.d.ts","sourceRoot":"","sources":["../../src/cli/batch.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAwBjE,eAAO,MAAM,cAAc,KASzB,CAAC;AAMH,eAAO,MAAM,qBAAqB,+gBAC+b,CAAC;AAEle,eAAO,MAAM,iBAAiB,qDACsB,CAAC;AAErD,eAAO,MAAM,oBAAoB,UAYhC,CAAC;AAkBF,eAAO,MAAM,UAAU,QAItB,CAAC;AA8DF,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,kBAAkB,GAAG,SAAS,EAC3C,cAAc,CAAC,EAAE;IAAE,aAAa,IAAI,MAAM,CAAA;CAAE,EAC5C,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,uBAAuB,EAAE,QAAQ,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,CAUnG"}
package/dist/cli/batch.js CHANGED
@@ -5,13 +5,27 @@
5
5
  * that uses subcommands and flags.
6
6
  */
7
7
  import { Type } from "@sinclair/typebox";
8
- import { tokenize } from "./tokenize.js";
9
- import { splitChain } from "./chain.js";
10
- import { parseCommand, CliError } from "./parse.js";
11
- import { renderHelp } from "./help.js";
12
- import { formatChainedOutput } from "./format.js";
13
- import { READ_FLAGS, WRITE_FLAGS, EDIT_FLAGS, DELETE_FLAGS, PATCH_FLAGS, BASH_FLAGS, RG_FLAGS, WEB_FLAGS, POLL_FLAGS, } from "./flags/index.js";
14
- import { runReadSubcommand, runWriteSubcommand, runEditSubcommand, runDeleteSubcommand, runPatchSubcommand, runBashSubcommand, runRgSubcommand, runWebSubcommand, runPollSubcommand, } from "./exec/index.js";
8
+ import { CliError } from "./parse.js";
9
+ import { renderHelp, flagSpecToHelp } from "./help.js";
10
+ import { runChain } from "./runner.js";
11
+ import { READ_FLAGS } from "./flags/read.js";
12
+ import { WRITE_FLAGS } from "./flags/write.js";
13
+ import { EDIT_FLAGS } from "./flags/edit.js";
14
+ import { PATCH_FLAGS } from "./flags/patch.js";
15
+ import { BASH_FLAGS } from "./flags/bash.js";
16
+ import { RG_FLAGS } from "./flags/rg.js";
17
+ import { WEB_FLAGS } from "./flags/web.js";
18
+ import { POLL_FLAGS } from "./flags/poll.js";
19
+ import { DELETE_FLAGS } from "./flags/delete.js";
20
+ import { runReadSubcommand } from "./exec/read.js";
21
+ import { runWriteSubcommand } from "./exec/write.js";
22
+ import { runEditSubcommand } from "./exec/edit.js";
23
+ import { runDeleteSubcommand } from "./exec/delete.js";
24
+ import { runPatchSubcommand } from "./exec/patch.js";
25
+ import { runBashSubcommand } from "./exec/bash.js";
26
+ import { runRgSubcommand } from "./exec/rg.js";
27
+ import { runWebSubcommand } from "./exec/web.js";
28
+ import { runPollSubcommand } from "./exec/poll.js";
15
29
  // ---------------------------------------------------------------------------
16
30
  // Schema
17
31
  // ---------------------------------------------------------------------------
@@ -39,92 +53,41 @@ export const BATCH_CLI_GUIDELINES = [
39
53
  "Use `batch rg -q <pattern> <path>` for ripgrep.",
40
54
  "Use `batch web search -q <query>` or `batch web fetch -u <url>` for web ops.",
41
55
  "Use `batch poll -i <id>` to check pending bash commands.",
42
- "Pass `cmd: \"help\"` or `--help` for the man page.",
56
+ "Pass `cmd: \"help\"`, `--help`, or `-h` for the man page.",
43
57
  ];
44
58
  // ---------------------------------------------------------------------------
45
59
  // Help text
46
60
  // ---------------------------------------------------------------------------
47
61
  const subcommands = [
48
- {
49
- name: "read",
50
- description: "Read file contents. Paths may include :N or :N-M line ranges.",
51
- flags: {
52
- start: { short: "s", type: "number", description: "1-indexed start line" },
53
- limit: { short: "l", type: "number", description: "Maximum lines to read" },
54
- end: { short: "e", type: "number", description: "End line (used with -s)" },
55
- },
56
- },
57
- {
58
- name: "write",
59
- description: "Write content to file(s).",
60
- flags: {
61
- content: { short: "c", type: "string", description: "File content (required)" },
62
- },
63
- },
64
- {
65
- name: "edit",
66
- description: "Targeted file edit using --find/--replace pairs.",
67
- flags: {
68
- find: { short: "f", type: "string", description: "Exact text to find (oldText). Repeatable." },
69
- replace: { short: "r", type: "string", description: "Replacement text (newText). Repeatable." },
70
- append: { short: "a", type: "boolean", description: "Append instead of replace" },
71
- "all-occurrences": { short: "A", type: "boolean", description: "Replace all occurrences instead of requiring unique match" },
72
- },
73
- },
74
- {
75
- name: "delete",
76
- description: "Delete file(s).",
77
- flags: {},
78
- },
79
- {
80
- name: "patch",
81
- description: "Apply a patch.",
82
- flags: {
83
- content: { short: "c", type: "string", description: "Patch text (required)" },
84
- },
85
- },
86
- {
87
- name: "bash",
88
- description: "Execute a shell command.",
89
- flags: {
90
- id: { short: "i", type: "string", description: "Unique ID for this bash operation (auto-generated if omitted)" },
91
- timeout: { short: "t", type: "number", description: "Timeout in ms" },
92
- cwd: { short: "h", type: "string", description: "Working directory override for this command" },
93
- },
94
- },
95
- {
96
- name: "rg",
97
- description: "Search with ripgrep.",
98
- flags: {
99
- query: { short: "q", type: "string", description: "Search pattern (required)" },
100
- "ignore-case": { short: "i", type: "boolean", description: "Ignore case" },
101
- "files-only": { short: "l", type: "boolean", description: "Return filenames only" },
102
- type: { short: "t", type: "string", description: "Type filter (e.g., ts, js)" },
103
- "max-count": { short: "n", type: "number", description: "Max matches per file" },
104
- "ignore-level": { short: "u", type: "number", description: "Ignore level (0-3)" },
105
- },
106
- },
107
- {
108
- name: "web",
109
- description: "Web operations: search or fetch.",
110
- flags: {
111
- query: { short: "q", type: "string", description: "Search query (for web search)" },
112
- url: { short: "u", type: "string", description: "URL to fetch (for web fetch)" },
113
- format: { short: "f", type: "string", description: "Output format for fetch: markdown, text, html" },
114
- },
115
- },
116
- {
117
- name: "poll",
118
- description: "Poll pending bash commands by ID.",
119
- flags: {
120
- id: { short: "i", type: "string", description: "Bash operation ID to poll (required, repeatable)" },
121
- },
122
- },
62
+ { name: "read", description: "Read file contents. Paths may include :N or :N-M line ranges.", flags: flagSpecToHelp(READ_FLAGS) },
63
+ { name: "write", description: "Write content to file(s).", flags: flagSpecToHelp(WRITE_FLAGS) },
64
+ { name: "edit", description: "Targeted file edit using --find/--replace pairs.", flags: flagSpecToHelp(EDIT_FLAGS) },
65
+ { name: "delete", description: "Delete file(s).", flags: flagSpecToHelp(DELETE_FLAGS) },
66
+ { name: "patch", description: "Apply a patch.", flags: flagSpecToHelp(PATCH_FLAGS) },
67
+ { name: "bash", description: "Execute a shell command.", flags: flagSpecToHelp(BASH_FLAGS) },
68
+ { name: "rg", description: "Search with ripgrep.", flags: flagSpecToHelp(RG_FLAGS) },
69
+ { name: "web", description: "Web operations: search or fetch.", flags: flagSpecToHelp(WEB_FLAGS) },
70
+ { name: "poll", description: "Poll pending bash commands by ID.", flags: flagSpecToHelp(POLL_FLAGS) },
123
71
  ];
124
72
  export const BATCH_HELP = renderHelp("batch", "Multi-op executor. File/shell ops ([read] [write] [edit] [delete] [patch] [bash] [rg]) execute first; web ([search] [fetch]) runs after. Supports chaining with ; and &&.", subcommands);
125
73
  // ---------------------------------------------------------------------------
126
74
  // Dispatch
127
75
  // ---------------------------------------------------------------------------
76
+ const RECOGNIZED_SUBS = new Set(["read", "write", "edit", "delete", "patch", "bash", "rg", "web", "poll"]);
77
+ function getFlagSpec(subcommand) {
78
+ switch (subcommand) {
79
+ case "read": return READ_FLAGS;
80
+ case "write": return WRITE_FLAGS;
81
+ case "edit": return EDIT_FLAGS;
82
+ case "delete": return DELETE_FLAGS;
83
+ case "patch": return PATCH_FLAGS;
84
+ case "bash": return BASH_FLAGS;
85
+ case "rg": return RG_FLAGS;
86
+ case "web": return WEB_FLAGS;
87
+ case "poll": return POLL_FLAGS;
88
+ default: return {};
89
+ }
90
+ }
128
91
  async function dispatchSubcommand(subcommand, parsed, cwd, bashTracker, sessionManager, signal) {
129
92
  switch (subcommand) {
130
93
  case "read":
@@ -149,104 +112,17 @@ async function dispatchSubcommand(subcommand, parsed, cwd, bashTracker, sessionM
149
112
  throw new CliError(`Unknown subcommand: ${subcommand}`, `Did you mean: ${subcommands.map((s) => s.name).join(", ")}? Run with --help for usage.`);
150
113
  }
151
114
  }
152
- function getFlagSpec(subcommand) {
153
- switch (subcommand) {
154
- case "read": return READ_FLAGS;
155
- case "write": return WRITE_FLAGS;
156
- case "edit": return EDIT_FLAGS;
157
- case "delete": return DELETE_FLAGS;
158
- case "patch": return PATCH_FLAGS;
159
- case "bash": return BASH_FLAGS;
160
- case "rg": return RG_FLAGS;
161
- case "web": return WEB_FLAGS;
162
- case "poll": return POLL_FLAGS;
163
- default: return {};
164
- }
165
- }
166
115
  // ---------------------------------------------------------------------------
167
116
  // Main entry
168
117
  // ---------------------------------------------------------------------------
169
118
  export async function runBatchCli(cmd, cwd, bashTracker, sessionManager, signal) {
170
- const trimmed = cmd.trim();
171
- if (trimmed.length === 0) {
172
- return { text: BATCH_HELP, results: [], hasError: false };
173
- }
174
- const chain = splitChain(trimmed);
175
- const ops = [];
176
- let previousFailed = false;
177
- const allResults = [];
178
- for (const link of chain) {
179
- if (link.kind === "and" && previousFailed) {
180
- ops.push({ cmd: link.cmd, output: "", skipped: true });
181
- continue;
182
- }
183
- let output = "";
184
- let failed = false;
185
- let error;
186
- try {
187
- const tokens = tokenize(link.cmd);
188
- // Remove leading "batch" if present (the model may include it)
189
- if (tokens[0] === "batch") {
190
- tokens.shift();
191
- }
192
- if (tokens.length === 0) {
193
- output = BATCH_HELP;
194
- }
195
- else {
196
- const subcommand = tokens[0];
197
- if (subcommand === "help" || subcommand === "--help" || subcommand === "-h") {
198
- output = BATCH_HELP;
199
- }
200
- else {
201
- const RECOGNIZED_SUBS = new Set(["read", "write", "edit", "delete", "patch", "bash", "rg", "web", "poll"]);
202
- let parsed;
203
- let result;
204
- if (!RECOGNIZED_SUBS.has(subcommand)) {
205
- // Defer to dispatchSubcommand's default branch for a clear "Unknown subcommand" error.
206
- result = await dispatchSubcommand(subcommand, { flags: {}, positionals: tokens.slice(1) }, cwd, bashTracker, sessionManager, signal);
207
- }
208
- else {
209
- const flagSpec = getFlagSpec(subcommand);
210
- try {
211
- parsed = parseCommand(tokens, flagSpec);
212
- }
213
- catch (err) {
214
- if (err instanceof CliError && err.message.startsWith("Unknown flag")) {
215
- const validFlags = Object.keys(flagSpec).map((n) => `--${n}`).join(", ");
216
- throw new CliError(err.message, `\`${subcommand}\` supports: ${validFlags}. Run [cmd]: \"help\" for the man page.`);
217
- }
218
- throw err;
219
- }
220
- result = await dispatchSubcommand(parsed.subcommand, parsed, cwd, bashTracker, sessionManager, signal);
221
- }
222
- output = result.output;
223
- allResults.push(...result.results);
224
- if (result.failed) {
225
- failed = true;
226
- error = `${result.error ?? "operation failed"}\nTIP: This is not a shell. Valid subcommands: read, write, edit, delete, patch, bash, rg, web, poll. Run [cmd]: \"help\" for the man page.`;
227
- }
228
- }
229
- }
230
- }
231
- catch (err) {
232
- failed = true;
233
- if (err instanceof CliError) {
234
- const baseError = err.hint ? `${err.message} (hint: ${err.hint})` : err.message;
235
- error = `${baseError}\nTIP: This is not a shell. Valid subcommands: read, write, edit, delete, patch, bash, rg, web, poll. Run [cmd]: \"help\" for the man page.`;
236
- }
237
- else {
238
- error = `internal error: ${err instanceof Error ? err.message : String(err)}`;
239
- }
240
- }
241
- ops.push({ cmd: link.cmd, output, error, failed, skipped: false });
242
- if (failed) {
243
- previousFailed = true;
244
- }
245
- else {
246
- previousFailed = false;
247
- }
248
- }
249
- const hasError = ops.some((op) => op.error !== undefined || op.skipped || op.failed);
250
- return { text: formatChainedOutput(ops), results: allResults, hasError };
119
+ return runChain(cmd, cwd, signal, {
120
+ toolPrefix: "batch",
121
+ recognizedSubs: RECOGNIZED_SUBS,
122
+ getFlagSpec,
123
+ dispatch: (subcommand, parsed, cwd, signal) => dispatchSubcommand(subcommand, parsed, cwd, bashTracker, sessionManager, signal),
124
+ helpText: BATCH_HELP,
125
+ validSubcommandsTip: "read, write, edit, delete, patch, bash, rg, web, poll",
126
+ });
251
127
  }
252
128
  //# sourceMappingURL=batch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"batch.js","sourceRoot":"","sources":["../../src/cli/batch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batch.js","sourceRoot":"","sources":["../../src/cli/batch.ts"],"names":[],"mappings":"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"}