@heyhuynhgiabuu/pi-pretty 0.6.15 → 0.6.17

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 (84) hide show
  1. package/CHANGELOG.md +19 -116
  2. package/README.md +8 -16
  3. package/dist/collapsed-hint.d.ts +7 -0
  4. package/dist/collapsed-hint.d.ts.map +1 -0
  5. package/dist/collapsed-hint.js +17 -0
  6. package/dist/collapsed-hint.js.map +1 -0
  7. package/dist/config.d.ts +3 -0
  8. package/dist/config.d.ts.map +1 -1
  9. package/dist/config.js +64 -19
  10. package/dist/config.js.map +1 -1
  11. package/dist/expand.d.ts +7 -0
  12. package/dist/expand.d.ts.map +1 -0
  13. package/dist/expand.js +11 -0
  14. package/dist/expand.js.map +1 -0
  15. package/dist/find-glob.d.ts +9 -0
  16. package/dist/find-glob.d.ts.map +1 -0
  17. package/dist/find-glob.js +29 -0
  18. package/dist/find-glob.js.map +1 -0
  19. package/dist/image.js +1 -1
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +18 -19
  23. package/dist/index.js.map +1 -1
  24. package/dist/render.d.ts +3 -5
  25. package/dist/render.d.ts.map +1 -1
  26. package/dist/render.js +24 -19
  27. package/dist/render.js.map +1 -1
  28. package/dist/tools/bash.d.ts +1 -1
  29. package/dist/tools/bash.d.ts.map +1 -1
  30. package/dist/tools/bash.js +22 -26
  31. package/dist/tools/bash.js.map +1 -1
  32. package/dist/tools/find.d.ts +3 -3
  33. package/dist/tools/find.d.ts.map +1 -1
  34. package/dist/tools/find.js +99 -50
  35. package/dist/tools/find.js.map +1 -1
  36. package/dist/tools/grep.d.ts +2 -2
  37. package/dist/tools/grep.d.ts.map +1 -1
  38. package/dist/tools/grep.js +12 -8
  39. package/dist/tools/grep.js.map +1 -1
  40. package/dist/tools/labels.d.ts +2 -0
  41. package/dist/tools/labels.d.ts.map +1 -0
  42. package/dist/tools/labels.js +7 -0
  43. package/dist/tools/labels.js.map +1 -0
  44. package/dist/tools/ls.d.ts +1 -1
  45. package/dist/tools/ls.d.ts.map +1 -1
  46. package/dist/tools/ls.js +9 -5
  47. package/dist/tools/ls.js.map +1 -1
  48. package/dist/tools/read.d.ts +1 -1
  49. package/dist/tools/read.d.ts.map +1 -1
  50. package/dist/tools/read.js +34 -48
  51. package/dist/tools/read.js.map +1 -1
  52. package/dist/tui-text.d.ts.map +1 -1
  53. package/dist/tui-text.js +1 -5
  54. package/dist/tui-text.js.map +1 -1
  55. package/dist/types.d.ts +4 -27
  56. package/dist/types.d.ts.map +1 -1
  57. package/package.json +5 -4
  58. package/src/collapsed-hint.ts +14 -0
  59. package/src/config.ts +70 -22
  60. package/src/expand.ts +10 -0
  61. package/src/find-glob.ts +21 -0
  62. package/src/image.ts +1 -1
  63. package/src/index.ts +25 -32
  64. package/src/notices.ts +1 -1
  65. package/src/render.ts +50 -41
  66. package/src/tools/bash.ts +27 -48
  67. package/src/tools/find.ts +131 -86
  68. package/src/tools/grep.ts +23 -17
  69. package/src/tools/labels.ts +3 -0
  70. package/src/tools/ls.ts +27 -13
  71. package/src/tools/metrics.ts +1 -1
  72. package/src/tools/read.ts +55 -66
  73. package/src/tui-text.ts +1 -5
  74. package/src/types.ts +4 -35
  75. package/dist/multi-grep-fallback.d.ts +0 -30
  76. package/dist/multi-grep-fallback.d.ts.map +0 -1
  77. package/dist/multi-grep-fallback.js +0 -205
  78. package/dist/multi-grep-fallback.js.map +0 -1
  79. package/dist/tools/multi-grep.d.ts +0 -7
  80. package/dist/tools/multi-grep.d.ts.map +0 -1
  81. package/dist/tools/multi-grep.js +0 -294
  82. package/dist/tools/multi-grep.js.map +0 -1
  83. package/src/multi-grep-fallback.ts +0 -248
  84. package/src/tools/multi-grep.ts +0 -331
@@ -1,14 +1,63 @@
1
1
  "use strict";
2
- /* pi-pretty: find tool -- FFF-backed file search with SDK fallback. */
2
+ /* pi-pretty: find tool -- FFF-backed file search with SDK (fd) fallback. */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.registerFindTool = registerFindTool;
5
5
  const node_path_1 = require("node:path");
6
6
  const config_js_1 = require("../config.js");
7
+ const find_glob_js_1 = require("../find-glob.js");
7
8
  const helpers_js_1 = require("../helpers.js");
8
- const metrics_js_1 = require("./metrics.js");
9
+ const notices_js_1 = require("../notices.js");
9
10
  const render_js_1 = require("../render.js");
10
11
  const tui_text_js_1 = require("../tui-text.js");
11
- const notices_js_1 = require("../notices.js");
12
+ const metrics_js_1 = require("./metrics.js");
13
+ function getText(result) {
14
+ return (result.content ?? [])
15
+ .filter((c) => c.type === "text")
16
+ .map((c) => c.text ?? "")
17
+ .join("\n");
18
+ }
19
+ function buildGlobPattern(pattern, path, basePath) {
20
+ const raw = pattern.startsWith("/") ? pattern.slice(1) : pattern;
21
+ const normalized = (0, find_glob_js_1.normalizeFindGlobPattern)(raw);
22
+ let cleanPath = path ?? "";
23
+ if (cleanPath && (0, node_path_1.isAbsolute)(cleanPath) && basePath) {
24
+ cleanPath = (0, node_path_1.relative)(basePath, cleanPath) || "";
25
+ }
26
+ cleanPath = cleanPath.replace(/\/$/, "");
27
+ if (cleanPath) {
28
+ if (normalized.startsWith("**/")) {
29
+ return `${cleanPath}/${normalized}`;
30
+ }
31
+ if (normalized.includes("/")) {
32
+ return `${cleanPath}/${normalized}`;
33
+ }
34
+ return `${cleanPath}/**/${normalized}`;
35
+ }
36
+ return normalized.startsWith("**/") || normalized.includes("/") ? normalized : `**/${normalized}`;
37
+ }
38
+ function appendFindNotices(result, extra) {
39
+ if (extra.length === 0)
40
+ return result;
41
+ const d = result.details;
42
+ if (!d || d._type !== "findResult")
43
+ return result;
44
+ const prev = Array.isArray(d.notices) ? d.notices : [];
45
+ return { ...result, details: { ...d, notices: [...prev, ...extra] } };
46
+ }
47
+ async function sdkFindAsFindResult(sdkTool, tid, params, sig, ctx, pattern, extraNotices) {
48
+ const result = (await sdkTool.execute(tid, params, sig, undefined, ctx));
49
+ const tc = getText(result);
50
+ const prev = result.details?.notices ?? [];
51
+ const notices = [...(Array.isArray(prev) ? prev : []), ...extraNotices];
52
+ result.details = {
53
+ _type: "findResult",
54
+ text: tc,
55
+ pattern,
56
+ matchCount: tc ? tc.trim().split("\n").filter(Boolean).length : 0,
57
+ notices,
58
+ };
59
+ return result;
60
+ }
12
61
  function registerFindTool(pi, cwd, fffService, sdkTool, TextComp) {
13
62
  const TC = (0, tui_text_js_1.resolveTextCtor)(TextComp);
14
63
  const home = process.env.HOME ?? "";
@@ -22,21 +71,16 @@ function registerFindTool(pi, cwd, fffService, sdkTool, TextComp) {
22
71
  const pattern = String(params.pattern ?? "");
23
72
  const path = params.path ? String(params.path) : undefined;
24
73
  const limit = params.limit;
25
- const glob = params.glob;
26
74
  const fff = fffService?.isAvailable ? fffService.getFinder() : null;
27
75
  if (fff) {
28
76
  try {
29
77
  const effectiveLimit = Math.max(1, typeof limit === "number" ? limit : 100);
30
78
  const basePathResult = fff.getBasePath();
31
79
  const basePath = basePathResult.ok ? basePathResult.value : null;
32
- let cleanPath = path ?? "";
33
- if (cleanPath && (0, node_path_1.isAbsolute)(cleanPath) && basePath) {
34
- cleanPath = (0, node_path_1.relative)(basePath, cleanPath) || "";
35
- }
36
- cleanPath = cleanPath.replace(/\/$/, "");
37
- const cleanPattern = pattern.startsWith("/") ? pattern.slice(1) : pattern;
38
- const globPattern = cleanPath ? `${cleanPath}/**/${cleanPattern}` : `**/${cleanPattern}`;
39
- const searchResult = fff.glob(globPattern, { pageSize: effectiveLimit });
80
+ const globPattern = buildGlobPattern(pattern, path, basePath);
81
+ const searchResult = fff.glob(globPattern, {
82
+ pageSize: effectiveLimit,
83
+ });
40
84
  if (searchResult.ok) {
41
85
  const items = searchResult.value.items.slice(0, effectiveLimit);
42
86
  const notices = [];
@@ -44,8 +88,19 @@ function registerFindTool(pi, cwd, fffService, sdkTool, TextComp) {
44
88
  notices.push(notices_js_1.NOTICE_PARTIAL_FILE_INDEX);
45
89
  if (items.length >= effectiveLimit)
46
90
  notices.push(`${effectiveLimit} limit reached`);
47
- if (searchResult.value.totalMatched > items.length)
91
+ if (searchResult.value.totalMatched > items.length) {
48
92
  notices.push(`${searchResult.value.totalMatched} total matches`);
93
+ }
94
+ if (items.length === 0 && (0, find_glob_js_1.isLikelyGlobPattern)(pattern)) {
95
+ return sdkFindAsFindResult(sdkTool, tid, params, sig, ctx, pattern, [
96
+ "FFF glob returned no matches; results from SDK find (fd).",
97
+ ...notices,
98
+ ]);
99
+ }
100
+ if (items.length > 0)
101
+ notices.push("Search engine: FFF glob.");
102
+ else if (notices.length === 0)
103
+ notices.push("Search engine: FFF glob (no matches).");
49
104
  const paths = items.map((i) => i.relativePath).join("\n");
50
105
  return {
51
106
  content: [{ type: "text", text: paths }],
@@ -63,69 +118,63 @@ function registerFindTool(pi, cwd, fffService, sdkTool, TextComp) {
63
118
  /* fall through to SDK */
64
119
  }
65
120
  }
66
- const result = (await sdkTool.execute(tid, params, sig, undefined, ctx));
67
- const tc = getText(result);
68
- result.details = {
69
- _type: "findResult",
70
- text: tc,
71
- pattern,
72
- matchCount: tc ? tc.trim().split("\n").filter(Boolean).length : 0,
73
- };
74
- return result;
121
+ return sdkFindAsFindResult(sdkTool, tid, params, sig, ctx, pattern, [
122
+ fff ? "FFF find unavailable; results from SDK find (fd)." : "Search engine: SDK find (fd).",
123
+ ]);
75
124
  }),
76
125
  renderCall(args, theme, ctx) {
77
126
  (0, config_js_1.resolveBaseBackground)(theme);
127
+ const a = args;
78
128
  const text = ctx.lastComponent ?? new TC("", 0, 0);
79
- const pattern = args.pattern === null || args.pattern === undefined ? "" : String(args.pattern);
80
- const path = args.path === null || args.path === undefined ? "<missing>" : (0, helpers_js_1.shortPath)(cwd, home, String(args.path));
81
- const limit = args.limit;
82
- const glob = args.glob;
83
- const findLabel = theme.fg("toolTitle", theme.bold("find"));
84
- const patternPart = pattern ? theme.fg("accent", pattern) : "";
129
+ const pattern = a.pattern == null ? "" : String(a.pattern);
130
+ const pathArg = a.path == null ? "<missing>" : (0, helpers_js_1.shortPath)(cwd, home, String(a.path));
131
+ const limit = a.limit;
132
+ const findLabel = theme.fg(ctx.isError ? "error" : "toolTitle", theme.bold("✱ find"));
133
+ const patternPart = pattern ? theme.fg("toolTitle", pattern) : "";
85
134
  const inPart = theme.fg("dim", " in ");
86
- const pathPart = theme.fg("toolOutput", path);
135
+ const pathPart = theme.fg("toolOutput", pathArg);
87
136
  const limitPart = limit !== undefined && limit !== null ? theme.fg("dim", ` limit ${limit}`) : "";
88
137
  const out = `${findLabel} ${patternPart}${inPart}${pathPart}${limitPart}`;
89
- text.setText((0, render_js_1.fillToolBackground)(` \n ${out}`, ctx.isError ? config_js_1.BG_ERROR : undefined));
138
+ text.setText((0, render_js_1.fillToolBackground)(`\n${config_js_1.TOOL_RESULT_INDENT}${out}`, ctx.isError ? config_js_1.BG_ERROR : undefined));
90
139
  return text;
91
140
  },
92
141
  renderResult(result, _opt, theme, ctx) {
93
142
  (0, config_js_1.resolveBaseBackground)(theme);
143
+ const r = result;
94
144
  const text = ctx.lastComponent ?? new TC("", 0, 0);
95
145
  if (ctx.isError) {
96
- text.setText((0, render_js_1.renderToolError)(getText(result) || "Error", theme));
146
+ text.setText((0, render_js_1.renderToolError)(getText(r) || "Error", theme));
97
147
  return text;
98
148
  }
99
- const d = result.details;
149
+ const d = r.details;
100
150
  if (d?._type === "findResult") {
101
151
  if (!d.text.trim()) {
102
- const notices = d.notices;
103
- const noticeStr = notices?.length ? `\n ${theme.fg("warning", `[${notices.join(". ")}]`)}` : "";
104
- text.setText((0, render_js_1.fillToolBackground)(` \n ${theme.fg("dim", "0 files")}${noticeStr}\n `));
152
+ const noticeStr = d.notices?.length
153
+ ? `\n${config_js_1.TOOL_RESULT_INDENT}${theme.fg("warning", `[${d.notices.join(". ")}]`)}`
154
+ : "";
155
+ text.setText((0, render_js_1.fillToolBackground)(`\n${config_js_1.TOOL_RESULT_INDENT}${theme.fg("dim", "0 files")}${noticeStr}\n`));
156
+ return text;
157
+ }
158
+ if (!ctx.expanded) {
159
+ const duration = (0, render_js_1.renderToolDuration)(r);
160
+ text.setText((0, render_js_1.fillToolBackground)(`${config_js_1.TOOL_RESULT_INDENT}${config_js_1.FG_DIM}${d.matchCount} files — ctrl+o to expand${config_js_1.RST}${duration ? `${config_js_1.FG_DIM}· ${duration}${config_js_1.RST}` : ""}\n`));
105
161
  return text;
106
162
  }
107
163
  const rendered = (0, render_js_1.renderFindResults)(d.text, theme)
108
164
  .split("\n")
109
- .map((l) => ` ${l}`)
165
+ .map((l) => `${config_js_1.TOOL_RESULT_INDENT}${l}`)
110
166
  .join("\n");
111
- const notices = d.notices;
112
- const noticeStr = notices?.length ? `\n ${theme.fg("warning", `[${notices.join(". ")}]`)}` : "";
113
- text.setText((0, render_js_1.fillToolBackground)(` \n ${theme.fg("dim", `${d.matchCount} files`)}${(0, render_js_1.renderToolMetrics)(result)}\n${rendered}${noticeStr}\n `));
167
+ const noticeStr = d.notices?.length
168
+ ? `\n${config_js_1.TOOL_RESULT_INDENT}${theme.fg("warning", `[${d.notices.join(". ")}]`)}`
169
+ : "";
170
+ const duration = (0, render_js_1.renderToolDuration)(r);
171
+ text.setText((0, render_js_1.fillToolBackground)(`\n${config_js_1.TOOL_RESULT_INDENT}${theme.fg("dim", `${d.matchCount} files`)}${duration ? `${config_js_1.FG_DIM}· ${duration}${config_js_1.RST}` : ""}\n${rendered}${noticeStr}\n`));
114
172
  return text;
115
173
  }
116
- const fc = result.content?.[0];
117
- text.setText((0, render_js_1.fillToolBackground)(` \n ${theme.fg("dim", fc && "text" in fc ? String(fc.text).slice(0, 120) : "0 files")}\n `));
174
+ const fc = r.content?.[0];
175
+ text.setText((0, render_js_1.fillToolBackground)(`\n${config_js_1.TOOL_RESULT_INDENT}${theme.fg("dim", fc?.text?.slice(0, 120) ?? "0 files")}\n`));
118
176
  return text;
119
177
  },
120
178
  });
121
179
  }
122
- function appendNotices(text, notices) {
123
- return notices.length ? `${text}\n\n[${notices.join(". ")}]` : text;
124
- }
125
- function getText(result) {
126
- return ((result.content ?? [])
127
- .filter((c) => c.type === "text")
128
- .map((c) => c.text ?? "")
129
- .join("\n") ?? "");
130
- }
131
180
  //# sourceMappingURL=find.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/tools/find.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/tools/find.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { type ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
- import type { SdkToolDef, FffServiceWithCursor } from "../types.js";
1
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
+ import type { FffServiceWithCursor, SdkToolDef } from "../types.js";
3
3
  export declare function registerGrepTool(pi: ExtensionAPI, cwd: string, fffService: FffServiceWithCursor | null | undefined, sdkTool: SdkToolDef, TextComp?: new (t?: string, x?: number, y?: number) => {
4
4
  setText(v: string): void;
5
5
  }): void;
@@ -1 +1 @@
1
- {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,KAAK,YAAY,EAGjB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAe,oBAAoB,EAAyC,MAAM,aAAa,CAAC;AAaxH,wBAAgB,gBAAgB,CAC/B,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,EACnD,OAAO,EAAE,UAAU,EACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK;IAAE,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACjF,IAAI,CAsIN"}
1
+ {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAmB,YAAY,EAAoC,MAAM,iCAAiC,CAAC;AAOvH,OAAO,KAAK,EAAE,oBAAoB,EAA8B,UAAU,EAA0B,MAAM,aAAa,CAAC;AAOxH,wBAAgB,gBAAgB,CAC/B,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,EACnD,OAAO,EAAE,UAAU,EACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK;IAAE,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACjF,IAAI,CAiJN"}
@@ -3,12 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.registerGrepTool = registerGrepTool;
5
5
  const config_js_1 = require("../config.js");
6
+ const fff_helpers_js_1 = require("../fff-helpers.js");
6
7
  const helpers_js_1 = require("../helpers.js");
7
- const metrics_js_1 = require("./metrics.js");
8
+ const notices_js_1 = require("../notices.js");
8
9
  const render_js_1 = require("../render.js");
9
10
  const tui_text_js_1 = require("../tui-text.js");
10
- const fff_helpers_js_1 = require("../fff-helpers.js");
11
- const notices_js_1 = require("../notices.js");
11
+ const metrics_js_1 = require("./metrics.js");
12
12
  const invalidArg = "<missing>";
13
13
  function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
14
14
  const T = (0, tui_text_js_1.resolveTextCtor)(TextComp);
@@ -96,7 +96,7 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
96
96
  const limit = args.limit;
97
97
  const literal = args.literal === true;
98
98
  const caseInsensitive = args.caseInsensitive === true || args.ignoreCase === true;
99
- let out = `${theme.fg("toolTitle", theme.bold("grep"))} ${theme.fg("accent", `/${pattern || ""}/`)}${theme.fg("toolOutput", ` in ${path}`)}`;
99
+ let out = `${theme.fg(ctx.isError ? "error" : "toolTitle", theme.bold("✱ grep"))} ${theme.fg("toolTitle", `/${pattern || ""}/`)}${theme.fg("toolOutput", ` in ${path}`)}`;
100
100
  if (glob)
101
101
  out += theme.fg("dim", ` (${String(glob)})`);
102
102
  if (limit !== undefined && limit !== null)
@@ -105,7 +105,7 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
105
105
  out += theme.fg("dim", ` (literal)`);
106
106
  if (caseInsensitive)
107
107
  out += theme.fg("dim", ` (case-insensitive)`);
108
- text.setText((0, render_js_1.fillToolBackground)(`\n ${out}`, ctx.isError ? config_js_1.BG_ERROR : undefined));
108
+ text.setText((0, render_js_1.fillToolBackground)(`\n${config_js_1.TOOL_RESULT_INDENT}${out}`, ctx.isError ? config_js_1.BG_ERROR : undefined));
109
109
  return text;
110
110
  },
111
111
  renderResult(result, _opt, theme, ctx) {
@@ -121,7 +121,11 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
121
121
  const d = result.details;
122
122
  if (d?._type === "grepResult" && d.text) {
123
123
  const lines = d.text.split("\n");
124
- const maxShow = ctx.expanded ? lines.length : Math.min(lines.length, config_js_1.MAX_PREVIEW_LINES);
124
+ if (!ctx.expanded) {
125
+ text.setText((0, render_js_1.fillToolBackground)(`${config_js_1.TOOL_RESULT_INDENT}${config_js_1.FG_DIM}${lines.length} lines — ctrl+o to expand${config_js_1.RST}\n`, ctx.isError ? config_js_1.BG_ERROR : undefined));
126
+ return text;
127
+ }
128
+ const maxShow = lines.length;
125
129
  const show = lines.slice(0, maxShow);
126
130
  const remaining = lines.length - maxShow;
127
131
  const out = [];
@@ -133,13 +137,13 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
133
137
  if (remaining > 0) {
134
138
  out.push(theme.fg("muted", `… (${remaining} more ${remaining === 1 ? "line" : "lines"}, to expand)`));
135
139
  }
136
- const body = out.map((l) => ` ${l}`).join("\n") + "\n\n";
140
+ const body = `${out.map((l) => `${config_js_1.TOOL_RESULT_INDENT}${l}`).join("\n")}\n\n`;
137
141
  text.setText((0, render_js_1.fillToolBackground)(body, ctx.isError ? config_js_1.BG_ERROR : undefined));
138
142
  return text;
139
143
  }
140
144
  const fc = result.content?.[0];
141
145
  const fallback = fc && "text" in fc ? String(fc.text).slice(0, 120) : "no matches";
142
- text.setText((0, render_js_1.fillToolBackground)(` ${theme.fg("dim", fallback)}`, ctx.isError ? config_js_1.BG_ERROR : undefined));
146
+ text.setText((0, render_js_1.fillToolBackground)(`${config_js_1.TOOL_RESULT_INDENT}${theme.fg("dim", fallback)}`, ctx.isError ? config_js_1.BG_ERROR : undefined));
143
147
  return text;
144
148
  },
145
149
  });
@@ -1 +1 @@
1
- {"version":3,"file":"grep.js","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grep.js","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function customToolTitle(name: string): string;
2
+ //# sourceMappingURL=labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/tools/labels.ts"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.customToolTitle = customToolTitle;
4
+ function customToolTitle(name) {
5
+ return `⚙ ${name}`;
6
+ }
7
+ //# sourceMappingURL=labels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"labels.js","sourceRoot":"","sources":["../../src/tools/labels.ts"],"names":[],"mappings":";;AAAA,0CAEC;AAFD,SAAgB,eAAe,CAAC,IAAY;IAC3C,OAAO,KAAK,IAAI,EAAE,CAAC;AACpB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type ExtensionAPI } from "@earendil-works/pi-coding-agent";
1
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
2
  import type { SdkToolDef } from "../types.js";
3
3
  export declare function registerLsTool(pi: ExtensionAPI, cwd: string, _fffService: unknown, sdkTool: SdkToolDef, TextComp?: new (t?: string, x?: number, y?: number) => {
4
4
  setText(v: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ls.d.ts","sourceRoot":"","sources":["../../src/tools/ls.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,KAAK,YAAY,EAGjB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAmE,MAAM,aAAa,CAAC;AAS/G,wBAAgB,cAAc,CAC7B,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,UAAU,EACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK;IAAE,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACjF,IAAI,CAmEN"}
1
+ {"version":3,"file":"ls.d.ts","sourceRoot":"","sources":["../../src/tools/ls.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAmB,YAAY,EAAoC,MAAM,iCAAiC,CAAC;AAcvH,OAAO,KAAK,EAA2C,UAAU,EAA0B,MAAM,aAAa,CAAC;AAK/G,wBAAgB,cAAc,CAC7B,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,UAAU,EACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK;IAAE,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACjF,IAAI,CA6EN"}
package/dist/tools/ls.js CHANGED
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.registerLsTool = registerLsTool;
5
5
  const config_js_1 = require("../config.js");
6
6
  const helpers_js_1 = require("../helpers.js");
7
- const metrics_js_1 = require("./metrics.js");
8
7
  const render_js_1 = require("../render.js");
9
8
  const tui_text_js_1 = require("../tui-text.js");
9
+ const metrics_js_1 = require("./metrics.js");
10
10
  function registerLsTool(pi, cwd, _fffService, sdkTool, TextComp) {
11
11
  const home = process.env.HOME ?? "";
12
12
  const TC = (0, tui_text_js_1.resolveTextCtor)(TextComp);
@@ -40,7 +40,7 @@ function registerLsTool(pi, cwd, _fffService, sdkTool, TextComp) {
40
40
  out += ` ${theme.fg("accent", path)}`;
41
41
  if (limit !== undefined && limit !== null)
42
42
  out += theme.fg("toolOutput", ` (limit ${limit})`);
43
- text.setText((0, render_js_1.fillToolBackground)(` \n ${out}`, ctx.isError ? config_js_1.BG_ERROR : undefined));
43
+ text.setText((0, render_js_1.fillToolBackground)(`\n${config_js_1.TOOL_RESULT_INDENT}${out}`, ctx.isError ? config_js_1.BG_ERROR : undefined));
44
44
  return text;
45
45
  },
46
46
  renderResult(result, _opt, theme, ctx) {
@@ -52,15 +52,19 @@ function registerLsTool(pi, cwd, _fffService, sdkTool, TextComp) {
52
52
  }
53
53
  const d = result.details;
54
54
  if (d?._type === "lsResult" && d.text) {
55
+ if (!ctx.expanded) {
56
+ text.setText((0, render_js_1.fillToolBackground)(`${config_js_1.TOOL_RESULT_INDENT}${config_js_1.FG_DIM}${d.entryCount} entries — ctrl+o to expand${config_js_1.RST}${(0, render_js_1.renderToolMetrics)(result)}\n`));
57
+ return text;
58
+ }
55
59
  const rendered = (0, render_js_1.renderTree)(d.text, d.path)
56
60
  .split("\n")
57
- .map((l) => ` ${l}`)
61
+ .map((l) => `${config_js_1.TOOL_RESULT_INDENT}${l}`)
58
62
  .join("\n");
59
- text.setText((0, render_js_1.fillToolBackground)(` \n ${config_js_1.FG_DIM}${d.entryCount} entries${config_js_1.RST}${(0, render_js_1.renderToolMetrics)(result)}\n${rendered}\n `));
63
+ text.setText((0, render_js_1.fillToolBackground)(`\n${config_js_1.TOOL_RESULT_INDENT}${config_js_1.FG_DIM}${d.entryCount} entries${config_js_1.RST}${(0, render_js_1.renderToolMetrics)(result)}\n${rendered}\n`));
60
64
  return text;
61
65
  }
62
66
  const fc = result.content?.[0];
63
- text.setText((0, render_js_1.fillToolBackground)(` ${theme.fg("dim", fc && "text" in fc ? String(fc.text).slice(0, 120) : "done")}`));
67
+ text.setText((0, render_js_1.fillToolBackground)(`${config_js_1.TOOL_RESULT_INDENT}${theme.fg("dim", fc && "text" in fc ? String(fc.text).slice(0, 120) : "done")}`));
64
68
  return text;
65
69
  },
66
70
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ls.js","sourceRoot":"","sources":["../../src/tools/ls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ls.js","sourceRoot":"","sources":["../../src/tools/ls.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type ExtensionAPI } from "@earendil-works/pi-coding-agent";
1
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
2
  import type { SdkToolDef } from "../types.js";
3
3
  export declare function registerReadTool(pi: ExtensionAPI, cwd: string, _fffService: unknown, sdkTool: SdkToolDef, TextComp?: new (t?: string, x?: number, y?: number) => {
4
4
  setText(v: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../src/tools/read.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,KAAK,YAAY,EAGjB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAqE,MAAM,aAAa,CAAC;AA+BjH,wBAAgB,gBAAgB,CAC/B,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,UAAU,EACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK;IAAE,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACjF,IAAI,CA+IN"}
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../src/tools/read.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAmB,YAAY,EAAoC,MAAM,iCAAiC,CAAC;AAiBvH,OAAO,KAAK,EAA8B,UAAU,EAA0B,MAAM,aAAa,CAAC;AAKlG,wBAAgB,gBAAgB,CAC/B,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,UAAU,EACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK;IAAE,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACjF,IAAI,CAmJN"}