@oh-my-pi/pi-coding-agent 16.1.22 → 16.2.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 (276) hide show
  1. package/CHANGELOG.md +99 -1
  2. package/dist/cli.js +4387 -4164
  3. package/dist/types/advisor/__tests__/emission-guard.test.d.ts +1 -0
  4. package/dist/types/advisor/emission-guard.d.ts +73 -0
  5. package/dist/types/advisor/index.d.ts +1 -0
  6. package/dist/types/advisor/runtime.d.ts +7 -0
  7. package/dist/types/advisor/watchdog.d.ts +2 -0
  8. package/dist/types/cli/flag-tables.d.ts +1 -0
  9. package/dist/types/cli/gallery-fixtures/search.d.ts +1 -1
  10. package/dist/types/cli/gc-cli.d.ts +58 -0
  11. package/dist/types/collab/display-name.d.ts +3 -0
  12. package/dist/types/collab/host.d.ts +0 -2
  13. package/dist/types/commands/gc.d.ts +37 -0
  14. package/dist/types/commands/worktree.d.ts +0 -3
  15. package/dist/types/config/inline-tool-descriptors-mode.d.ts +13 -0
  16. package/dist/types/config/model-discovery.d.ts +6 -1
  17. package/dist/types/config/model-registry.d.ts +6 -2
  18. package/dist/types/config/model-resolver.d.ts +12 -0
  19. package/dist/types/config/models-config-schema.d.ts +29 -2
  20. package/dist/types/config/models-config.d.ts +22 -1
  21. package/dist/types/config/settings-schema.d.ts +145 -21
  22. package/dist/types/config/settings.d.ts +13 -0
  23. package/dist/types/dap/config.d.ts +1 -1
  24. package/dist/types/edit/hashline/filesystem.d.ts +4 -2
  25. package/dist/types/edit/renderer.d.ts +4 -0
  26. package/dist/types/extensibility/extensions/types.d.ts +17 -17
  27. package/dist/types/extensibility/hooks/types.d.ts +10 -10
  28. package/dist/types/extensibility/plugins/marketplace/types.d.ts +1 -0
  29. package/dist/types/internal-urls/__tests__/ssh-protocol.test.d.ts +1 -0
  30. package/dist/types/internal-urls/index.d.ts +1 -0
  31. package/dist/types/internal-urls/registry-helpers.d.ts +2 -0
  32. package/dist/types/internal-urls/router.d.ts +1 -1
  33. package/dist/types/internal-urls/ssh-protocol.d.ts +10 -0
  34. package/dist/types/internal-urls/types.d.ts +19 -2
  35. package/dist/types/irc/bus.d.ts +6 -0
  36. package/dist/types/mcp/transports/stdio.d.ts +25 -1
  37. package/dist/types/modes/components/__tests__/move-overlay.test.d.ts +1 -0
  38. package/dist/types/modes/components/custom-editor.d.ts +7 -0
  39. package/dist/types/modes/components/move-overlay.d.ts +23 -0
  40. package/dist/types/modes/components/plugin-selector.d.ts +2 -1
  41. package/dist/types/modes/components/queue-mode-selector.d.ts +2 -1
  42. package/dist/types/modes/components/select-list-mouse-routing.d.ts +2 -0
  43. package/dist/types/modes/components/settings-defs.d.ts +4 -1
  44. package/dist/types/modes/components/settings-selector.d.ts +2 -0
  45. package/dist/types/modes/components/show-images-selector.d.ts +2 -1
  46. package/dist/types/modes/components/status-line/component.d.ts +2 -0
  47. package/dist/types/modes/components/status-line/types.d.ts +2 -0
  48. package/dist/types/modes/components/theme-selector.d.ts +2 -1
  49. package/dist/types/modes/components/thinking-selector.d.ts +2 -1
  50. package/dist/types/modes/controllers/command-controller.d.ts +10 -1
  51. package/dist/types/modes/controllers/streaming-reveal.d.ts +6 -0
  52. package/dist/types/modes/interactive-mode.d.ts +10 -1
  53. package/dist/types/modes/internal-url-autocomplete.d.ts +1 -1
  54. package/dist/types/modes/running-subagent-badge.d.ts +6 -0
  55. package/dist/types/modes/theme/mermaid-rendering.test.d.ts +1 -0
  56. package/dist/types/modes/theme/theme.d.ts +2 -1
  57. package/dist/types/modes/types.d.ts +9 -1
  58. package/dist/types/sdk.d.ts +2 -2
  59. package/dist/types/session/agent-session.d.ts +2 -1
  60. package/dist/types/session/session-listing.d.ts +10 -1
  61. package/dist/types/session/session-manager.d.ts +13 -0
  62. package/dist/types/slash-commands/builtin-registry.d.ts +1 -1
  63. package/dist/types/ssh/__tests__/connection-manager-args.test.d.ts +1 -0
  64. package/dist/types/ssh/__tests__/file-transfer-posix-guard.test.d.ts +1 -0
  65. package/dist/types/ssh/connection-manager.d.ts +2 -0
  66. package/dist/types/ssh/file-transfer.d.ts +79 -0
  67. package/dist/types/ssh/utils.d.ts +6 -0
  68. package/dist/types/system-prompt.d.ts +5 -0
  69. package/dist/types/task/executor.d.ts +16 -0
  70. package/dist/types/tiny/text.d.ts +1 -1
  71. package/dist/types/tools/builtin-names.d.ts +5 -1
  72. package/dist/types/tools/{find.d.ts → glob.d.ts} +15 -15
  73. package/dist/types/tools/{search.d.ts → grep.d.ts} +14 -14
  74. package/dist/types/tools/index.d.ts +3 -3
  75. package/dist/types/tools/path-utils.d.ts +29 -0
  76. package/dist/types/tools/plan-mode-guard.d.ts +7 -0
  77. package/dist/types/tools/read.d.ts +2 -2
  78. package/dist/types/tools/render-utils.d.ts +8 -0
  79. package/dist/types/tools/renderers.d.ts +11 -0
  80. package/dist/types/tools/ssh.d.ts +2 -0
  81. package/dist/types/tools/todo.d.ts +0 -16
  82. package/dist/types/tools/write.d.ts +2 -2
  83. package/dist/types/utils/active-repo-context.d.ts +8 -0
  84. package/dist/types/utils/image-resize.d.ts +1 -0
  85. package/dist/types/utils/markit-cache.d.ts +23 -0
  86. package/dist/types/utils/markit.d.ts +5 -1
  87. package/dist/types/utils/prompt-path.d.ts +1 -0
  88. package/dist/types/web/search/providers/duckduckgo.d.ts +14 -0
  89. package/dist/types/web/search/providers/firecrawl.d.ts +28 -0
  90. package/dist/types/web/search/providers/tinyfish.d.ts +29 -0
  91. package/dist/types/web/search/providers/xai.d.ts +13 -0
  92. package/dist/types/web/search/types.d.ts +18 -2
  93. package/package.json +30 -15
  94. package/scripts/bench-guard.ts +1 -1
  95. package/scripts/build-binary.ts +9 -9
  96. package/scripts/bundle-dist.ts +2 -2
  97. package/src/advisor/__tests__/advisor.test.ts +40 -4
  98. package/src/advisor/__tests__/emission-guard.test.ts +147 -0
  99. package/src/advisor/advise-tool.ts +1 -1
  100. package/src/advisor/emission-guard.ts +172 -0
  101. package/src/advisor/index.ts +1 -0
  102. package/src/advisor/runtime.ts +11 -0
  103. package/src/advisor/watchdog.ts +12 -1
  104. package/src/cli/args.ts +5 -2
  105. package/src/cli/auth-broker-cli.ts +17 -0
  106. package/src/cli/config-cli.ts +4 -0
  107. package/src/cli/flag-tables.ts +7 -4
  108. package/src/cli/gallery-cli.ts +14 -2
  109. package/src/cli/gallery-fixtures/edit.ts +60 -0
  110. package/src/cli/gallery-fixtures/fs.ts +17 -17
  111. package/src/cli/gallery-fixtures/search.ts +4 -4
  112. package/src/cli/gc-cli.ts +939 -0
  113. package/src/cli/usage-cli.ts +20 -1
  114. package/src/cli/web-search-cli.ts +1 -1
  115. package/src/cli-commands.ts +1 -0
  116. package/src/collab/display-name.ts +13 -0
  117. package/src/collab/guest.ts +5 -1
  118. package/src/collab/host.ts +2 -13
  119. package/src/commands/gc.ts +46 -0
  120. package/src/commands/worktree.ts +6 -0
  121. package/src/config/inline-tool-descriptors-mode.ts +27 -0
  122. package/src/config/model-discovery.ts +77 -8
  123. package/src/config/model-registry.ts +89 -11
  124. package/src/config/model-resolver.ts +39 -1
  125. package/src/config/models-config-schema.ts +41 -5
  126. package/src/config/models-config.ts +4 -1
  127. package/src/config/settings-schema.ts +130 -27
  128. package/src/config/settings.ts +216 -7
  129. package/src/cursor.ts +1 -1
  130. package/src/dap/config.ts +152 -8
  131. package/src/dap/session.ts +1 -1
  132. package/src/discovery/helpers.ts +3 -1
  133. package/src/edit/hashline/diff.ts +14 -3
  134. package/src/edit/hashline/execute.ts +42 -6
  135. package/src/edit/hashline/filesystem.ts +49 -8
  136. package/src/edit/index.ts +1 -0
  137. package/src/edit/modes/patch.ts +11 -1
  138. package/src/edit/renderer.ts +140 -13
  139. package/src/eval/__tests__/agent-bridge.test.ts +101 -0
  140. package/src/eval/__tests__/julia-prelude.test.ts +18 -0
  141. package/src/eval/agent-bridge.ts +26 -3
  142. package/src/eval/jl/runner.jl +7 -1
  143. package/src/eval/js/tool-bridge.ts +2 -2
  144. package/src/export/html/index.ts +1 -1
  145. package/src/export/html/template.js +3 -1
  146. package/src/export/html/tool-views.generated.js +20 -20
  147. package/src/extensibility/extensions/types.ts +22 -22
  148. package/src/extensibility/hooks/types.ts +11 -11
  149. package/src/extensibility/plugins/legacy-pi-bundled-keys.ts +10 -3
  150. package/src/extensibility/plugins/legacy-pi-bundled-registry.ts +31 -10
  151. package/src/extensibility/plugins/marketplace/manager.ts +22 -0
  152. package/src/extensibility/plugins/marketplace/types.ts +1 -0
  153. package/src/internal-urls/__tests__/ssh-protocol.test.ts +331 -0
  154. package/src/internal-urls/docs-index.generated.txt +2 -2
  155. package/src/internal-urls/docs-index.ts +2 -3
  156. package/src/internal-urls/index.ts +1 -0
  157. package/src/internal-urls/registry-helpers.ts +19 -4
  158. package/src/internal-urls/router.ts +5 -3
  159. package/src/internal-urls/ssh-protocol.ts +367 -0
  160. package/src/internal-urls/types.ts +19 -2
  161. package/src/irc/bus.ts +11 -3
  162. package/src/lsp/index.ts +8 -1
  163. package/src/mcp/oauth-discovery.ts +20 -20
  164. package/src/mcp/tool-bridge.ts +32 -2
  165. package/src/mcp/transports/stdio.test.ts +20 -3
  166. package/src/mcp/transports/stdio.ts +45 -14
  167. package/src/memories/index.ts +1 -1
  168. package/src/modes/acp/acp-event-mapper.ts +2 -2
  169. package/src/modes/components/__tests__/move-overlay.test.ts +166 -0
  170. package/src/modes/components/agent-hub.ts +3 -0
  171. package/src/modes/components/agent-transcript-viewer.ts +9 -7
  172. package/src/modes/components/custom-editor.ts +90 -5
  173. package/src/modes/components/move-overlay.ts +282 -0
  174. package/src/modes/components/plan-review-overlay.ts +35 -35
  175. package/src/modes/components/plugin-selector.ts +6 -1
  176. package/src/modes/components/queue-mode-selector.ts +6 -1
  177. package/src/modes/components/select-list-mouse-routing.ts +35 -0
  178. package/src/modes/components/session-selector.ts +11 -10
  179. package/src/modes/components/settings-defs.ts +14 -1
  180. package/src/modes/components/settings-selector.ts +196 -29
  181. package/src/modes/components/show-images-selector.ts +6 -1
  182. package/src/modes/components/status-line/component.ts +108 -28
  183. package/src/modes/components/status-line/segments.ts +5 -1
  184. package/src/modes/components/status-line/types.ts +2 -0
  185. package/src/modes/components/theme-selector.ts +6 -1
  186. package/src/modes/components/thinking-selector.ts +6 -1
  187. package/src/modes/components/tool-execution.ts +25 -9
  188. package/src/modes/components/tree-selector.ts +5 -5
  189. package/src/modes/controllers/command-controller.ts +140 -47
  190. package/src/modes/controllers/event-controller.ts +59 -3
  191. package/src/modes/controllers/input-controller.ts +70 -4
  192. package/src/modes/controllers/selector-controller.ts +15 -2
  193. package/src/modes/controllers/streaming-reveal.ts +17 -0
  194. package/src/modes/controllers/tool-args-reveal.ts +1 -1
  195. package/src/modes/interactive-mode.ts +142 -59
  196. package/src/modes/internal-url-autocomplete.ts +17 -2
  197. package/src/modes/prompt-action-autocomplete.ts +3 -1
  198. package/src/modes/running-subagent-badge.ts +13 -0
  199. package/src/modes/setup-wizard/scenes/glyph.ts +2 -13
  200. package/src/modes/setup-wizard/scenes/providers.ts +2 -1
  201. package/src/modes/setup-wizard/scenes/theme.ts +6 -12
  202. package/src/modes/setup-wizard/scenes/web-search.ts +8 -13
  203. package/src/modes/setup-wizard/wizard-overlay.ts +6 -5
  204. package/src/modes/theme/mermaid-rendering.test.ts +53 -0
  205. package/src/modes/theme/theme.ts +42 -15
  206. package/src/modes/types.ts +9 -1
  207. package/src/modes/utils/interactive-context-helpers.ts +1 -1
  208. package/src/priority.json +15 -0
  209. package/src/prompts/advisor/active-repo-watchdog.md +6 -0
  210. package/src/prompts/advisor/system.md +21 -7
  211. package/src/prompts/agents/designer.md +1 -1
  212. package/src/prompts/agents/explore.md +1 -1
  213. package/src/prompts/agents/librarian.md +2 -2
  214. package/src/prompts/agents/plan.md +2 -2
  215. package/src/prompts/agents/reviewer.md +1 -1
  216. package/src/prompts/agents/task.md +2 -2
  217. package/src/prompts/system/active-repo-context.md +4 -0
  218. package/src/prompts/system/gemini-tool-call-reminder.md +9 -0
  219. package/src/prompts/system/plan-mode-active.md +12 -3
  220. package/src/prompts/system/project-prompt.md +2 -2
  221. package/src/prompts/system/system-prompt.md +8 -6
  222. package/src/prompts/tools/bash.md +2 -2
  223. package/src/prompts/tools/checkpoint.md +1 -1
  224. package/src/prompts/tools/{find.md → glob.md} +1 -1
  225. package/src/prompts/tools/{search.md → grep.md} +3 -3
  226. package/src/prompts/tools/read.md +4 -2
  227. package/src/sdk.ts +98 -29
  228. package/src/session/agent-session.ts +828 -191
  229. package/src/session/session-history-format.ts +2 -2
  230. package/src/session/session-listing.ts +35 -2
  231. package/src/session/session-manager.ts +46 -0
  232. package/src/slash-commands/builtin-registry.ts +158 -22
  233. package/src/slash-commands/helpers/usage-report.ts +23 -2
  234. package/src/ssh/__tests__/connection-manager-args.test.ts +69 -0
  235. package/src/ssh/__tests__/file-transfer-posix-guard.test.ts +68 -0
  236. package/src/ssh/connection-manager.ts +12 -15
  237. package/src/ssh/file-transfer.ts +209 -0
  238. package/src/ssh/utils.ts +24 -0
  239. package/src/system-prompt.ts +60 -28
  240. package/src/task/executor.ts +96 -36
  241. package/src/task/index.ts +3 -3
  242. package/src/task/render.ts +14 -13
  243. package/src/task/worktree.ts +38 -1
  244. package/src/tiny/text.ts +49 -4
  245. package/src/tiny/worker.ts +3 -3
  246. package/src/tools/acp-bridge.ts +6 -1
  247. package/src/tools/bash.ts +2 -2
  248. package/src/tools/builtin-names.ts +26 -2
  249. package/src/tools/{find.ts → glob.ts} +48 -42
  250. package/src/tools/{search.ts → grep.ts} +311 -129
  251. package/src/tools/index.ts +13 -14
  252. package/src/tools/irc.ts +6 -2
  253. package/src/tools/path-utils.ts +64 -1
  254. package/src/tools/plan-mode-guard.ts +26 -13
  255. package/src/tools/read.ts +35 -6
  256. package/src/tools/render-utils.ts +14 -0
  257. package/src/tools/renderers.ts +15 -4
  258. package/src/tools/ssh.ts +17 -2
  259. package/src/tools/todo.ts +4 -26
  260. package/src/tools/write.ts +25 -9
  261. package/src/utils/active-repo-context.ts +143 -0
  262. package/src/utils/edit-mode.ts +19 -2
  263. package/src/utils/image-resize.ts +88 -7
  264. package/src/utils/lang-from-path.ts +3 -3
  265. package/src/utils/markit-cache.ts +166 -0
  266. package/src/utils/markit.ts +86 -18
  267. package/src/utils/prompt-path.ts +3 -0
  268. package/src/utils/shell-snapshot.ts +1 -1
  269. package/src/utils/title-generator.ts +1 -1
  270. package/src/web/search/provider.ts +54 -34
  271. package/src/web/search/providers/duckduckgo.ts +140 -0
  272. package/src/web/search/providers/firecrawl.ts +144 -0
  273. package/src/web/search/providers/tinyfish.ts +159 -0
  274. package/src/web/search/providers/xai.ts +292 -0
  275. package/src/web/search/providers/zai.ts +142 -56
  276. package/src/web/search/types.ts +6 -2
@@ -138,14 +138,26 @@ export async function renderGalleryState(
138
138
  return await fixture.renderState(state, width, expanded);
139
139
  }
140
140
 
141
- const tool = fakeToolFor(name, fixture);
141
+ // A non-customRendered fixture may borrow another tool's built-in renderer
142
+ // (e.g. `edit_delete` → `edit`): drive the component under that real tool
143
+ // name so the sample exercises the exact production branch, not the
144
+ // custom-tool one (which tints/pads non-framed result rows).
145
+ const componentName = fixture.customRendered ? name : (fixture.renderer ?? name);
146
+ const tool = fakeToolFor(componentName, fixture);
142
147
  const streamingArgs = state === "streaming" ? (fixture.streamingArgs ?? fixture.args) : fixture.args;
143
148
  // The component only calls `requestRender`/`requestComponentRender` (via
144
149
  // its loader) during a static render; `imageBudget` is consulted solely
145
150
  // when images render, which the gallery disables. A cast avoids
146
151
  // constructing a real terminal.
147
152
  const ui = { requestRender() {}, requestComponentRender() {} } as unknown as TUI;
148
- const component = new ToolExecutionComponent(name, streamingArgs, { showImages: false }, tool, ui, getProjectDir());
153
+ const component = new ToolExecutionComponent(
154
+ componentName,
155
+ streamingArgs,
156
+ { showImages: false },
157
+ tool,
158
+ ui,
159
+ getProjectDir(),
160
+ );
149
161
  component.setExpanded(expanded);
150
162
 
151
163
  if (state !== "streaming") {
@@ -62,6 +62,66 @@ export const editFixtures: Record<string, GalleryFixture> = {
62
62
  },
63
63
  },
64
64
 
65
+ edit_delete: {
66
+ label: "Delete",
67
+ // The registry has no `edit_delete` key, so `renderer: "edit"` routes this
68
+ // fixture through the real built-in edit renderer (see the harness in
69
+ // `gallery-cli`), keeping the sample identical to a production delete.
70
+ renderer: "edit",
71
+ streamingArgs: { file_path: "scripts/prune-changelogs.ts", op: "delete" },
72
+ args: { file_path: "scripts/prune-changelogs.ts", op: "delete" },
73
+ result: {
74
+ content: [{ type: "text", text: "Deleted scripts/prune-changelogs.ts" }],
75
+ details: {
76
+ op: "delete",
77
+ path: "scripts/prune-changelogs.ts",
78
+ diff: "",
79
+ oldText: "#!/usr/bin/env bun\n// obsolete changelog pruning helper\n",
80
+ },
81
+ },
82
+ errorResult: {
83
+ content: [{ type: "text", text: "Edit failed: scripts/prune-changelogs.ts not found" }],
84
+ isError: true,
85
+ details: {
86
+ op: "delete",
87
+ path: "scripts/prune-changelogs.ts",
88
+ diff: "",
89
+ errorText: "Cannot delete scripts/prune-changelogs.ts: the file does not exist.",
90
+ },
91
+ },
92
+ },
93
+
94
+ edit_move: {
95
+ label: "Move",
96
+ renderer: "edit",
97
+ streamingArgs: { file_path: "scripts/prune-changelogs.ts", rename: "scripts/archived/prune-changelogs.ts" },
98
+ args: { file_path: "scripts/prune-changelogs.ts", rename: "scripts/archived/prune-changelogs.ts" },
99
+ result: {
100
+ content: [{ type: "text", text: "Moved scripts/prune-changelogs.ts to scripts/archived/prune-changelogs.ts" }],
101
+ details: {
102
+ op: "update",
103
+ path: "scripts/archived/prune-changelogs.ts",
104
+ move: "scripts/archived/prune-changelogs.ts",
105
+ sourcePath: "scripts/prune-changelogs.ts",
106
+ diff: "",
107
+ },
108
+ },
109
+ errorResult: {
110
+ content: [
111
+ { type: "text", text: "Edit failed: destination scripts/archived/prune-changelogs.ts already exists" },
112
+ ],
113
+ isError: true,
114
+ details: {
115
+ op: "update",
116
+ path: "scripts/archived/prune-changelogs.ts",
117
+ move: "scripts/archived/prune-changelogs.ts",
118
+ sourcePath: "scripts/prune-changelogs.ts",
119
+ diff: "",
120
+ errorText: "MV destination scripts/archived/prune-changelogs.ts already exists.",
121
+ },
122
+ },
123
+ },
124
+
65
125
  apply_patch: {
66
126
  label: "Apply Patch",
67
127
  editMode: "apply_patch",
@@ -1,17 +1,17 @@
1
1
  // biome-ignore-all lint/suspicious/noTemplateCurlyInString: sample source-code strings (read fixtures) intentionally contain literal ${...}.
2
- // Gallery fixtures for the filesystem tools (read, write, find).
2
+ // Gallery fixtures for the filesystem tools (read, write, glob).
3
3
  import { ReadToolGroupComponent } from "../../modes/components/read-tool-group";
4
4
  import type { GalleryFixture, GalleryFixtureState, GalleryResult } from "./types";
5
5
 
6
6
  const readSnippet = [
7
- "export const findToolRenderer = {",
7
+ "export const globToolRenderer = {",
8
8
  "\tinline: true,",
9
- "\trenderCall(args: FindRenderArgs, _options: RenderResultOptions, uiTheme: Theme): Component {",
9
+ "\trenderCall(args: GlobRenderArgs, _options: RenderResultOptions, uiTheme: Theme): Component {",
10
10
  "\t\tconst meta: string[] = [];",
11
11
  "\t\tif (args.limit !== undefined) meta.push(`limit:${args.limit}`);",
12
12
  "",
13
13
  "\t\tconst text = renderStatusLine(",
14
- '\t\t\t{ icon: "pending", title: "Find", description: formatFindRenderPaths(args.paths) || "*", meta },',
14
+ '\t\t\t{ icon: "pending", title: "Glob", description: formatGlobRenderPaths(args.paths) || "*", meta },',
15
15
  "\t\t\tuiTheme,",
16
16
  "\t\t);",
17
17
  "\t\treturn new Text(text, 0, 0);",
@@ -99,22 +99,22 @@ export const fsFixtures: Record<string, GalleryFixture> = {
99
99
  read: {
100
100
  label: "Read",
101
101
  // Streaming: path still being typed, selector not yet appended.
102
- streamingArgs: { path: "packages/coding-agent/src/tools/find" },
103
- args: { path: "packages/coding-agent/src/tools/find.ts:437-448" },
102
+ streamingArgs: { path: "packages/coding-agent/src/tools/glob" },
103
+ args: { path: "packages/coding-agent/src/tools/glob.ts:437-448" },
104
104
  result: {
105
105
  content: [
106
106
  {
107
107
  type: "text",
108
108
  text: [
109
- "[packages/coding-agent/src/tools/find.ts#E48E]",
110
- "437:export const findToolRenderer = {",
109
+ "[packages/coding-agent/src/tools/glob.ts#E48E]",
110
+ "437:export const globToolRenderer = {",
111
111
  "438:\tinline: true,",
112
- "439:\trenderCall(args: FindRenderArgs, _options: RenderResultOptions, uiTheme: Theme): Component {",
112
+ "439:\trenderCall(args: GlobRenderArgs, _options: RenderResultOptions, uiTheme: Theme): Component {",
113
113
  "440:\t\tconst meta: string[] = [];",
114
114
  "441:\t\tif (args.limit !== undefined) meta.push(`limit:${args.limit}`);",
115
115
  "442:",
116
116
  "443:\t\tconst text = renderStatusLine(",
117
- '444:\t\t\t{ icon: "pending", title: "Find", description: formatFindRenderPaths(args.paths) || "*", meta },',
117
+ '444:\t\t\t{ icon: "pending", title: "Glob", description: formatGlobRenderPaths(args.paths) || "*", meta },',
118
118
  "445:\t\t\tuiTheme,",
119
119
  "446:\t\t);",
120
120
  "447:\t\treturn new Text(text, 0, 0);",
@@ -124,7 +124,7 @@ export const fsFixtures: Record<string, GalleryFixture> = {
124
124
  ],
125
125
  details: {
126
126
  kind: "file",
127
- resolvedPath: "/Users/dev/Projects/pi/packages/coding-agent/src/tools/find.ts",
127
+ resolvedPath: "/Users/dev/Projects/pi/packages/coding-agent/src/tools/glob.ts",
128
128
  contentType: "text/typescript",
129
129
  displayContent: { text: readSnippet, startLine: 437 },
130
130
  },
@@ -134,7 +134,7 @@ export const fsFixtures: Record<string, GalleryFixture> = {
134
134
  content: [
135
135
  {
136
136
  type: "text",
137
- text: "Error: ENOENT: no such file or directory, open 'packages/coding-agent/src/tools/find.ts'",
137
+ text: "Error: ENOENT: no such file or directory, open 'packages/coding-agent/src/tools/glob.ts'",
138
138
  },
139
139
  ],
140
140
  },
@@ -179,8 +179,8 @@ export const fsFixtures: Record<string, GalleryFixture> = {
179
179
  },
180
180
  },
181
181
 
182
- find: {
183
- label: "Find",
182
+ glob: {
183
+ label: "Glob",
184
184
  // Streaming: glob half-typed, no limit yet.
185
185
  streamingArgs: { paths: ["packages/coding-agent/src/tools/*-render"] },
186
186
  args: { paths: ["packages/coding-agent/src/**/*.test.ts"], limit: 50 },
@@ -191,7 +191,7 @@ export const fsFixtures: Record<string, GalleryFixture> = {
191
191
  text: [
192
192
  "packages/coding-agent/src/tools/read.test.ts",
193
193
  "packages/coding-agent/src/tools/write.test.ts",
194
- "packages/coding-agent/src/tools/find.test.ts",
194
+ "packages/coding-agent/src/tools/glob.test.ts",
195
195
  "packages/coding-agent/src/cli/gallery-cli.test.ts",
196
196
  "packages/coding-agent/src/edit/edit.test.ts",
197
197
  ].join("\n"),
@@ -205,7 +205,7 @@ export const fsFixtures: Record<string, GalleryFixture> = {
205
205
  files: [
206
206
  "packages/coding-agent/src/cli/gallery-cli.test.ts",
207
207
  "packages/coding-agent/src/edit/edit.test.ts",
208
- "packages/coding-agent/src/tools/find.test.ts",
208
+ "packages/coding-agent/src/tools/glob.test.ts",
209
209
  "packages/coding-agent/src/tools/read.test.ts",
210
210
  "packages/coding-agent/src/tools/write.test.ts",
211
211
  ],
@@ -213,7 +213,7 @@ export const fsFixtures: Record<string, GalleryFixture> = {
213
213
  },
214
214
  errorResult: {
215
215
  isError: true,
216
- content: [{ type: "text", text: "Find failed: invalid glob pattern '[unclosed'." }],
216
+ content: [{ type: "text", text: "Glob failed: invalid glob pattern '[unclosed'." }],
217
217
  details: { error: "invalid glob pattern '[unclosed'" },
218
218
  },
219
219
  },
@@ -1,9 +1,9 @@
1
- /** Gallery fixtures for the search tools (search, search_tool_bm25, ast_grep). */
1
+ /** Gallery fixtures for the search tools (grep, search_tool_bm25, ast_grep). */
2
2
  import type { GalleryFixture } from "./types";
3
3
 
4
4
  export const searchFixtures: Record<string, GalleryFixture> = {
5
- search: {
6
- label: "Search",
5
+ grep: {
6
+ label: "Grep",
7
7
  streamingArgs: {
8
8
  pattern: "useState",
9
9
  },
@@ -101,7 +101,7 @@ export const searchFixtures: Record<string, GalleryFixture> = {
101
101
  limit: 5,
102
102
  total_tools: 142,
103
103
  activated_tools: ["docling_extract_tables", "docling_convert", "pdf_read_text"],
104
- active_selected_tools: ["read", "search", "edit", "bash"],
104
+ active_selected_tools: ["read", "grep", "edit", "bash"],
105
105
  tools: [
106
106
  {
107
107
  name: "docling_extract_tables",