@heyhuynhgiabuu/pi-pretty 0.6.6 → 0.6.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.6.7] - 2026-06-21
4
+
5
+ ### Fixed
6
+
7
+ - **Module loading crash before factory execution** — The v0.6.6 fix wrapped
8
+ `import("@earendil-works/pi-coding-agent")` in a try-catch block inside the
9
+ extension factory, but two files (`src/tools/grep.ts` and `src/render.ts`) had
10
+ **top-level value imports** from `@earendil-works/pi-coding-agent` (`keyHint`)
11
+ and `@earendil-works/pi-tui` (`truncateToWidth`). These compiled to top-level
12
+ `require()` calls that executed during **jiti module loading** (before the
13
+ factory), causing the extension to crash before the try-catch could fire.
14
+
15
+ Fix:
16
+ - `grep.ts`: replaced `import { keyHint }` with inline fallback text
17
+ - `render.ts`: replaced `import { truncateToWidth }` with lazy `require()`
18
+ inside a helper function (avoids top-level evaluation)
19
+
3
20
  ## [0.6.6] - 2026-06-21
4
21
 
5
22
  ### Fixed
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,IAAI,aAAa,EAAE,MAAM,YAAY,CAAC;AA4D5E,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAS5D;AAUD,eAAO,MAAM,gBAAgB,oCAAkC,CAAC;AAEhE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA4B1D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAU,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAUrF;AAeD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAO1F;AAMD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAKvE;AAMD,wBAAsB,iBAAiB,CACtC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,SAAI,EACV,QAAQ,SAAoB,EAC5B,KAAK,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,CAcjB;AAMD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAgBzG;AAMD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAwBlE;AAMG,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,GAAG,MAAM,CAiCjE;AAMb,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAwCtF;AAMD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,IACtC,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,SAAS,EAAE,KAAK,aAAa,SAO3E;AAED,wBAAgB,gBAAgB,KACvB,QAAQ,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,OAAO,EAAE,OAAO,SAAS,EAAE,KAAK,aAAa,SAqB7G"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkCH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,IAAI,aAAa,EAAE,MAAM,YAAY,CAAC;AAqE5E,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAS5D;AAUD,eAAO,MAAM,gBAAgB,oCAAkC,CAAC;AAEhE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkC1D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAU,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAUrF;AAeD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAO1F;AAMD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAKvE;AAMD,wBAAsB,iBAAiB,CACtC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,SAAI,EACV,QAAQ,SAAoB,EAC5B,KAAK,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,CAcjB;AAMD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAiBzG;AAMD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAwBlE;AAMD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,GAAG,MAAM,CAmCzE;AAMD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0CtF;AAMD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,IACtC,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,SAAS,EAAE,KAAK,aAAa,SAO3E;AAED,wBAAgB,gBAAgB,KACvB,QAAQ,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,OAAO,EAAE,OAAO,SAAS,EAAE,KAAK,aAAa,SAqB7G"}
package/dist/render.js CHANGED
@@ -20,10 +20,16 @@ exports.renderGrepResults = renderGrepResults;
20
20
  exports.makeRenderCall = makeRenderCall;
21
21
  exports.makeRenderResult = makeRenderResult;
22
22
  const cli_1 = require("@shikijs/cli");
23
- const pi_tui_1 = require("@earendil-works/pi-tui");
24
23
  const node_path_1 = require("node:path");
25
24
  const config_js_1 = require("./config.js");
26
25
  const helpers_js_1 = require("./helpers.js");
26
+ // ---------------------------------------------------------------------------
27
+ // Lazy imports — avoid top-level require() that blocks module loading
28
+ // ---------------------------------------------------------------------------
29
+ /** Lazy accessor to pi-tui's truncateToWidth */
30
+ function _truncateToWidth(text, maxWidth, ellipsis, pad) {
31
+ return require("@earendil-works/pi-tui").truncateToWidth(text, maxWidth, ellipsis, pad);
32
+ }
27
33
  const DEFAULT_THEME = "github-dark";
28
34
  function resolveTheme() {
29
35
  const env = process.env.PRETTY_THEME;
@@ -143,7 +149,7 @@ function fillToolBackground(text, bg = config_js_1.BG_BASE, width) {
143
149
  return text
144
150
  .split("\n")
145
151
  .map((line) => {
146
- const fitted = width ? (0, pi_tui_1.truncateToWidth)(line, width, "") : line;
152
+ const fitted = width ? _truncateToWidth(line, width, "") : line;
147
153
  const stripped = preserveBoxBackground(fitted);
148
154
  // Apply background to the entire line
149
155
  return bg ? bg + stripped : stripped;
@@ -191,7 +197,7 @@ async function renderFileContent(content, filePath, offset = 0, maxLines = confi
191
197
  const tw = width ?? (0, config_js_1.termWidth)();
192
198
  const out = [];
193
199
  for (const line of hl) {
194
- out.push((0, pi_tui_1.truncateToWidth)(line ?? "", Math.max(1, tw), `${config_js_1.FG_DIM}›`));
200
+ out.push(_truncateToWidth(line ?? "", Math.max(1, tw), `${config_js_1.FG_DIM}›`));
195
201
  }
196
202
  return out.join("\n");
197
203
  }
@@ -265,7 +271,9 @@ function renderFindResults(text, theme) {
265
271
  out.push(dirColored);
266
272
  for (let i = 0; i < files.length; i++) {
267
273
  if (count >= config_js_1.MAX_PREVIEW_LINES) {
268
- const more = theme ? theme.fg("dim", `… ${lines.length - count} more files`) : `${config_js_1.FG_DIM}… ${lines.length - count} more files${config_js_1.RST}`;
274
+ const more = theme
275
+ ? theme.fg("dim", `… ${lines.length - count} more files`)
276
+ : `${config_js_1.FG_DIM}… ${lines.length - count} more files${config_js_1.RST}`;
269
277
  out.push(` ${more}`);
270
278
  return out.join("\n");
271
279
  }
@@ -289,7 +297,9 @@ async function renderGrepResults(text, pattern) {
289
297
  try {
290
298
  re = new RegExp(`(${pattern})`, "gi");
291
299
  }
292
- catch { /* skip highlighting */ }
300
+ catch {
301
+ /* skip highlighting */
302
+ }
293
303
  for (const line of lines) {
294
304
  if (count >= config_js_1.MAX_PREVIEW_LINES) {
295
305
  out.push(`${config_js_1.FG_DIM} … more matches${config_js_1.RST}`);
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,KAAK,YAAY,EAA+C,MAAM,iCAAiC,CAAC;AACtI,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,CAiGN"}
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;AAYxH,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,CA6IN"}
@@ -2,7 +2,6 @@
2
2
  /* pi-pretty: grep tool -- FFF-backed text search with SDK fallback. */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.registerGrepTool = registerGrepTool;
5
- const pi_coding_agent_1 = require("@earendil-works/pi-coding-agent");
6
5
  const config_js_1 = require("../config.js");
7
6
  const helpers_js_1 = require("../helpers.js");
8
7
  const metrics_js_1 = require("./metrics.js");
@@ -11,7 +10,11 @@ const fff_helpers_js_1 = require("../fff-helpers.js");
11
10
  const notices_js_1 = require("../notices.js");
12
11
  const invalidArg = "<missing>";
13
12
  function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
14
- const T = TextComp ?? (() => { const m = require("@earendil-works/pi-tui"); return m.Text; })();
13
+ const T = TextComp ??
14
+ (() => {
15
+ const m = require("@earendil-works/pi-tui");
16
+ return m.Text;
17
+ })();
15
18
  const home = process.env.HOME ?? "";
16
19
  pi.registerTool({
17
20
  name: "grep",
@@ -33,7 +36,12 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
33
36
  if (!fff)
34
37
  throw new Error("FFF finder not available");
35
38
  const effectiveLimit = Math.max(1, limit);
36
- const grepResult = fff.grep(pattern, { pageSize: effectiveLimit, mode: literal ? "plain" : "regex", beforeContext: context, afterContext: context });
39
+ const grepResult = fff.grep(pattern, {
40
+ pageSize: effectiveLimit,
41
+ mode: literal ? "plain" : "regex",
42
+ beforeContext: context,
43
+ afterContext: context,
44
+ });
37
45
  if (grepResult.ok) {
38
46
  const grep = grepResult.value;
39
47
  const items = grep.items.slice(0, effectiveLimit);
@@ -50,18 +58,36 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
50
58
  notices.push(`More results available: cursor="${cursorId}"`);
51
59
  }
52
60
  const text = appendNotices((0, fff_helpers_js_1.fffFormatGrepText)(items, effectiveLimit), notices);
53
- return { content: [{ type: "text", text }], details: { _type: "grepResult", text, pattern, matchCount: items.length } };
61
+ return {
62
+ content: [{ type: "text", text }],
63
+ details: {
64
+ _type: "grepResult",
65
+ text,
66
+ pattern,
67
+ matchCount: items.length,
68
+ },
69
+ };
54
70
  }
55
71
  }
56
- catch { /* fall through */ }
72
+ catch {
73
+ /* fall through */
74
+ }
57
75
  }
58
- const result = await sdkTool.execute(tid, p, sig, undefined, ctx);
76
+ const result = (await sdkTool.execute(tid, p, sig, undefined, ctx));
59
77
  for (const c of (result.content ?? [])) {
60
78
  if (c.type === "text")
61
79
  c.text = (0, helpers_js_1.normalizeLineEndings)(c.text);
62
80
  }
63
- const tc = (result.content ?? []).filter((c) => c.type === "text").map((c) => c.text).join("\n") ?? "";
64
- result.details = { _type: "grepResult", text: tc, pattern, matchCount: tc ? tc.trim().split("\n").filter(Boolean).length : 0 };
81
+ const tc = (result.content ?? [])
82
+ .filter((c) => c.type === "text")
83
+ .map((c) => c.text)
84
+ .join("\n") ?? "";
85
+ result.details = {
86
+ _type: "grepResult",
87
+ text: tc,
88
+ pattern,
89
+ matchCount: tc ? tc.trim().split("\n").filter(Boolean).length : 0,
90
+ };
65
91
  return result;
66
92
  }),
67
93
  renderCall(args, theme, ctx) {
@@ -89,7 +115,10 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
89
115
  (0, config_js_1.resolveBaseBackground)(theme);
90
116
  const text = ctx.lastComponent ?? new T("", 0, 0);
91
117
  if (ctx.isError) {
92
- text.setText((0, render_js_1.renderToolError)((result.content ?? []).filter((c) => c.type === "text").map((c) => c.text).join("\n") || "Error", theme));
118
+ text.setText((0, render_js_1.renderToolError)((result.content ?? [])
119
+ .filter((c) => c.type === "text")
120
+ .map((c) => c.text)
121
+ .join("\n") || "Error", theme));
93
122
  return text;
94
123
  }
95
124
  const d = result.details;
@@ -105,7 +134,7 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
105
134
  out.push(theme.fg("toolOutput", line));
106
135
  }
107
136
  if (remaining > 0) {
108
- out.push(theme.fg("muted", `… (${remaining} more ${remaining === 1 ? "line" : "lines"}, ${(0, pi_coding_agent_1.keyHint)("app.tools.expand", "to expand")})`));
137
+ out.push(theme.fg("muted", `… (${remaining} more ${remaining === 1 ? "line" : "lines"}, to expand)`));
109
138
  }
110
139
  const body = out.map((l) => ` ${l}`).join("\n") + "\n\n";
111
140
  text.setText((0, render_js_1.fillToolBackground)(body, ctx.isError ? config_js_1.BG_ERROR : undefined));
@@ -118,5 +147,7 @@ function registerGrepTool(pi, cwd, fffService, sdkTool, TextComp) {
118
147
  },
119
148
  });
120
149
  }
121
- function appendNotices(text, notices) { return notices.length ? `${text}\n\n[${notices.join(". ")}]` : text; }
150
+ function appendNotices(text, notices) {
151
+ return notices.length ? `${text}\n\n[${notices.join(". ")}]` : text;
152
+ }
122
153
  //# sourceMappingURL=grep.js.map
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@heyhuynhgiabuu/pi-pretty",
3
- "version": "0.6.6",
3
+ "version": "0.6.7",
4
4
  "description": "Pretty terminal output for pi — syntax-highlighted file reads, colored bash output, tree-view directory listings, and more.",
5
5
  "keywords": [
6
6
  "pi",
package/src/render.ts CHANGED
@@ -7,22 +7,48 @@
7
7
 
8
8
  import type { BundledLanguage } from "shiki";
9
9
  import { codeToANSI } from "@shikijs/cli";
10
- import { truncateToWidth } from "@earendil-works/pi-tui";
11
10
  import { basename, dirname } from "node:path";
12
11
 
13
12
  import {
14
- RST, FG_LNUM, FG_DIM, FG_RULE, FG_GREEN, FG_RED, FG_YELLOW, FG_BLUE,
15
- BG_BASE, BG_ERROR,
16
- dirIcon, detectLang, termWidth, MAX_PREVIEW_LINES, MAX_HL_CHARS, CACHE_LIMIT,
13
+ RST,
14
+ FG_LNUM,
15
+ FG_DIM,
16
+ FG_RULE,
17
+ FG_GREEN,
18
+ FG_RED,
19
+ FG_YELLOW,
20
+ FG_BLUE,
21
+ BG_BASE,
22
+ BG_ERROR,
23
+ dirIcon,
24
+ detectLang,
25
+ termWidth,
26
+ MAX_PREVIEW_LINES,
27
+ MAX_HL_CHARS,
28
+ CACHE_LIMIT,
17
29
  resolveBaseBackground,
18
30
  } from "./config.js";
19
31
  import {
20
- normalizeLineEndings, humanSize, formatElapsedMs, formatCharCount,
21
- ELAPSED_KEY, CHARS_KEY, compactErrorLines,
32
+ normalizeLineEndings,
33
+ humanSize,
34
+ formatElapsedMs,
35
+ formatCharCount,
36
+ ELAPSED_KEY,
37
+ CHARS_KEY,
38
+ compactErrorLines,
22
39
  } from "./helpers.js";
23
40
  import type { AgentToolResult } from "@earendil-works/pi-coding-agent";
24
41
  import type { ThemeLike, RenderCtxLike as RenderContext } from "./types.js";
25
42
 
43
+ // ---------------------------------------------------------------------------
44
+ // Lazy imports — avoid top-level require() that blocks module loading
45
+ // ---------------------------------------------------------------------------
46
+
47
+ /** Lazy accessor to pi-tui's truncateToWidth */
48
+ function _truncateToWidth(text: string, maxWidth: number, ellipsis?: string, pad?: boolean): string {
49
+ return require("@earendil-works/pi-tui").truncateToWidth(text, maxWidth, ellipsis, pad);
50
+ }
51
+
26
52
  // ---------------------------------------------------------------------------
27
53
  // Shiki ANSI cache
28
54
  // ---------------------------------------------------------------------------
@@ -113,9 +139,15 @@ export function preserveBoxBackground(ansi: string): string {
113
139
  if (code === 38) {
114
140
  // Foreground extended — keep entire sequence
115
141
  kept.push(parts[i]);
116
- if (parts[i + 1] === "5") { kept.push(parts[i + 1]); i += 2; }
117
- else if (parts[i + 1] === "2") { kept.push(parts[i + 1], parts[i + 2], parts[i + 3], parts[i + 4]); i += 5; }
118
- else { i++; }
142
+ if (parts[i + 1] === "5") {
143
+ kept.push(parts[i + 1]);
144
+ i += 2;
145
+ } else if (parts[i + 1] === "2") {
146
+ kept.push(parts[i + 1], parts[i + 2], parts[i + 3], parts[i + 4]);
147
+ i += 5;
148
+ } else {
149
+ i++;
150
+ }
119
151
  } else if (code === 48) {
120
152
  // Background extended — skip entirely
121
153
  if (parts[i + 1] === "5") i += 3;
@@ -136,7 +168,7 @@ export function fillToolBackground(text: string, bg = BG_BASE, width?: number):
136
168
  return text
137
169
  .split("\n")
138
170
  .map((line) => {
139
- const fitted = width ? truncateToWidth(line, width, "") : line;
171
+ const fitted = width ? _truncateToWidth(line, width, "") : line;
140
172
  const stripped = preserveBoxBackground(fitted);
141
173
  // Apply background to the entire line
142
174
  return bg ? bg + stripped : stripped;
@@ -198,7 +230,7 @@ export async function renderFileContent(
198
230
 
199
231
  const out: string[] = [];
200
232
  for (const line of hl) {
201
- out.push(truncateToWidth(line ?? "", Math.max(1, tw), `${FG_DIM}›`));
233
+ out.push(_truncateToWidth(line ?? "", Math.max(1, tw), `${FG_DIM}›`));
202
234
  }
203
235
  return out.join("\n");
204
236
  }
@@ -210,9 +242,10 @@ export async function renderFileContent(
210
242
  export function renderBashOutput(text: string, exitCode: number | null): { summary: string; body: string } {
211
243
  const isOk = exitCode === 0;
212
244
  const statusIcon = isOk ? "✓" : "✗";
213
- const codeStr = exitCode !== null
214
- ? `${isOk ? FG_GREEN : FG_RED}${statusIcon} exit ${exitCode}${RST}`
215
- : `${FG_YELLOW} killed${RST}`;
245
+ const codeStr =
246
+ exitCode !== null
247
+ ? `${isOk ? FG_GREEN : FG_RED}${statusIcon} exit ${exitCode}${RST}`
248
+ : `${FG_YELLOW}⚡ killed${RST}`;
216
249
 
217
250
  const lines = text.split("\n");
218
251
  const maxShow = MAX_PREVIEW_LINES;
@@ -255,44 +288,46 @@ export function renderTree(text: string, _basePath: string): string {
255
288
  return out.join("\n");
256
289
  }
257
290
 
258
- // ---------------------------------------------------------------------------
259
- // Find — grouped file list (plain, no tree characters or icons)
260
- // ---------------------------------------------------------------------------
261
-
262
- export function renderFindResults(text: string, theme?: ThemeLike): string {
263
- const lines = text.trim().split("\n").filter(Boolean);
264
- if (!lines.length) return theme ? theme.fg("dim", "(no matches)") : `${FG_DIM}(no matches)${RST}`;
265
-
266
- const groups = new Map<string, string[]>();
267
- for (const line of lines) {
268
- const trimmed = line.trim();
269
- const dir = dirname(trimmed) || ".";
270
- const file = basename(trimmed);
271
- if (!groups.has(dir)) groups.set(dir, []);
272
- const bucket = groups.get(dir);
273
- if (bucket) bucket.push(file);
274
- }
275
-
276
- const out: string[] = [];
277
- let count = 0;
278
-
279
- for (const [dir, files] of groups) {
280
- if (count > 0) out.push("");
281
- const dirColored = theme ? theme.fg("accent", theme.bold(`${dir}/`)) : `${FG_BLUE}\x1b[1m${dir}/${RST}`;
282
- out.push(dirColored);
283
- for (let i = 0; i < files.length; i++) {
284
- if (count >= MAX_PREVIEW_LINES) {
285
- const more = theme ? theme.fg("dim", `… ${lines.length - count} more files`) : `${FG_DIM}… ${lines.length - count} more files${RST}`;
286
- out.push(` ${more}`);
287
- return out.join("\n");
288
- }
289
- out.push(` ${files[i]}`);
290
- count++;
291
- }
292
- }
293
-
294
- return out.join("\n");
295
- }
291
+ // ---------------------------------------------------------------------------
292
+ // Find — grouped file list (plain, no tree characters or icons)
293
+ // ---------------------------------------------------------------------------
294
+
295
+ export function renderFindResults(text: string, theme?: ThemeLike): string {
296
+ const lines = text.trim().split("\n").filter(Boolean);
297
+ if (!lines.length) return theme ? theme.fg("dim", "(no matches)") : `${FG_DIM}(no matches)${RST}`;
298
+
299
+ const groups = new Map<string, string[]>();
300
+ for (const line of lines) {
301
+ const trimmed = line.trim();
302
+ const dir = dirname(trimmed) || ".";
303
+ const file = basename(trimmed);
304
+ if (!groups.has(dir)) groups.set(dir, []);
305
+ const bucket = groups.get(dir);
306
+ if (bucket) bucket.push(file);
307
+ }
308
+
309
+ const out: string[] = [];
310
+ let count = 0;
311
+
312
+ for (const [dir, files] of groups) {
313
+ if (count > 0) out.push("");
314
+ const dirColored = theme ? theme.fg("accent", theme.bold(`${dir}/`)) : `${FG_BLUE}\x1b[1m${dir}/${RST}`;
315
+ out.push(dirColored);
316
+ for (let i = 0; i < files.length; i++) {
317
+ if (count >= MAX_PREVIEW_LINES) {
318
+ const more = theme
319
+ ? theme.fg("dim", `… ${lines.length - count} more files`)
320
+ : `${FG_DIM}… ${lines.length - count} more files${RST}`;
321
+ out.push(` ${more}`);
322
+ return out.join("\n");
323
+ }
324
+ out.push(` ${files[i]}`);
325
+ count++;
326
+ }
327
+ }
328
+
329
+ return out.join("\n");
330
+ }
296
331
 
297
332
  // ---------------------------------------------------------------------------
298
333
  // Grep — highlighted matches with line numbers
@@ -309,7 +344,9 @@ export async function renderGrepResults(text: string, pattern: string): Promise<
309
344
  let re: RegExp | null = null;
310
345
  try {
311
346
  re = new RegExp(`(${pattern})`, "gi");
312
- } catch { /* skip highlighting */ }
347
+ } catch {
348
+ /* skip highlighting */
349
+ }
313
350
 
314
351
  for (const line of lines) {
315
352
  if (count >= MAX_PREVIEW_LINES) {
package/src/tools/grep.ts CHANGED
@@ -1,8 +1,12 @@
1
1
  /* pi-pretty: grep tool -- FFF-backed text search with SDK fallback. */
2
2
 
3
- import { type ToolDefinition, type ExtensionAPI, type ExtensionContext, type AgentToolResult } from "@earendil-works/pi-coding-agent";
3
+ import {
4
+ type ToolDefinition,
5
+ type ExtensionAPI,
6
+ type ExtensionContext,
7
+ type AgentToolResult,
8
+ } from "@earendil-works/pi-coding-agent";
4
9
  import type { SdkToolDef, GrepDetails, FffServiceWithCursor, TextContent, ThemeLike, RenderCtxLike } from "../types.js";
5
- import { keyHint } from "@earendil-works/pi-coding-agent";
6
10
  import { MAX_PREVIEW_LINES, BG_ERROR, resolveBaseBackground } from "../config.js";
7
11
  import { shortPath, normalizeLineEndings } from "../helpers.js";
8
12
  import { wrapExecuteWithMetrics } from "./metrics.js";
@@ -21,7 +25,14 @@ export function registerGrepTool(
21
25
  sdkTool: SdkToolDef,
22
26
  TextComp?: new (t?: string, x?: number, y?: number) => { setText(v: string): void },
23
27
  ): void {
24
- const T = TextComp ?? (() => { const m = require("@earendil-works/pi-tui") as { Text: new (t?: string, x?: number, y?: number) => { setText(v: string): void } }; return m.Text; })();
28
+ const T =
29
+ TextComp ??
30
+ (() => {
31
+ const m = require("@earendil-works/pi-tui") as {
32
+ Text: new (t?: string, x?: number, y?: number) => { setText(v: string): void };
33
+ };
34
+ return m.Text;
35
+ })();
25
36
  const home = process.env.HOME ?? "";
26
37
 
27
38
  pi.registerTool({
@@ -45,7 +56,12 @@ export function registerGrepTool(
45
56
  const fff = fffService.getFinder();
46
57
  if (!fff) throw new Error("FFF finder not available");
47
58
  const effectiveLimit = Math.max(1, limit);
48
- const grepResult = fff.grep(pattern, { pageSize: effectiveLimit, mode: literal ? "plain" : "regex", beforeContext: context, afterContext: context });
59
+ const grepResult = fff.grep(pattern, {
60
+ pageSize: effectiveLimit,
61
+ mode: literal ? "plain" : "regex",
62
+ beforeContext: context,
63
+ afterContext: context,
64
+ });
49
65
  if (grepResult.ok) {
50
66
  const grep = grepResult.value;
51
67
  const items = grep.items.slice(0, effectiveLimit);
@@ -59,15 +75,36 @@ export function registerGrepTool(
59
75
  notices.push(`More results available: cursor="${cursorId}"`);
60
76
  }
61
77
  const text = appendNotices(fffFormatGrepText(items, effectiveLimit), notices);
62
- return { content: [{ type: "text" as const, text }], details: { _type: "grepResult", text, pattern, matchCount: items.length } as GrepDetails };
78
+ return {
79
+ content: [{ type: "text" as const, text }],
80
+ details: {
81
+ _type: "grepResult",
82
+ text,
83
+ pattern,
84
+ matchCount: items.length,
85
+ } as GrepDetails,
86
+ };
63
87
  }
64
- } catch { /* fall through */ }
88
+ } catch {
89
+ /* fall through */
90
+ }
65
91
  }
66
92
 
67
- const result = await sdkTool.execute(tid, p, sig, undefined, ctx) as Result;
68
- for (const c of (result.content ?? []) as any[]) { if (c.type === "text") c.text = normalizeLineEndings(c.text); }
69
- const tc = ((result.content ?? []) as TextContent[]).filter((c) => c.type === "text").map((c) => c.text).join("\n") ?? "";
70
- result.details = { _type: "grepResult", text: tc, pattern, matchCount: tc ? tc.trim().split("\n").filter(Boolean).length : 0 } as GrepDetails;
93
+ const result = (await sdkTool.execute(tid, p, sig, undefined, ctx)) as Result;
94
+ for (const c of (result.content ?? []) as any[]) {
95
+ if (c.type === "text") c.text = normalizeLineEndings(c.text);
96
+ }
97
+ const tc =
98
+ ((result.content ?? []) as TextContent[])
99
+ .filter((c) => c.type === "text")
100
+ .map((c) => c.text)
101
+ .join("\n") ?? "";
102
+ result.details = {
103
+ _type: "grepResult",
104
+ text: tc,
105
+ pattern,
106
+ matchCount: tc ? tc.trim().split("\n").filter(Boolean).length : 0,
107
+ } as GrepDetails;
71
108
  return result;
72
109
  }),
73
110
 
@@ -92,7 +129,18 @@ export function registerGrepTool(
92
129
  renderResult(result: Result, _opt: unknown, theme: ThemeLike, ctx: RenderCtxLike) {
93
130
  resolveBaseBackground(theme);
94
131
  const text = ctx.lastComponent ?? new T("", 0, 0);
95
- if (ctx.isError) { text.setText(renderToolError(((result.content ?? []) as TextContent[]).filter((c) => c.type === "text").map((c) => c.text).join("\n") || "Error", theme)); return text; }
132
+ if (ctx.isError) {
133
+ text.setText(
134
+ renderToolError(
135
+ ((result.content ?? []) as TextContent[])
136
+ .filter((c) => c.type === "text")
137
+ .map((c) => c.text)
138
+ .join("\n") || "Error",
139
+ theme,
140
+ ),
141
+ );
142
+ return text;
143
+ }
96
144
  const d = result.details as GrepDetails | undefined;
97
145
  if (d?._type === "grepResult" && d.text) {
98
146
  const lines = d.text.split("\n");
@@ -105,7 +153,7 @@ export function registerGrepTool(
105
153
  out.push(theme.fg("toolOutput", line));
106
154
  }
107
155
  if (remaining > 0) {
108
- out.push(theme.fg("muted", `… (${remaining} more ${remaining === 1 ? "line" : "lines"}, ${keyHint("app.tools.expand", "to expand")})`));
156
+ out.push(theme.fg("muted", `… (${remaining} more ${remaining === 1 ? "line" : "lines"}, to expand)`));
109
157
  }
110
158
  const body = out.map((l) => ` ${l}`).join("\n") + "\n\n";
111
159
  text.setText(fillToolBackground(body, ctx.isError ? BG_ERROR : undefined));
@@ -119,4 +167,6 @@ export function registerGrepTool(
119
167
  } as unknown as ToolDefinition<any, any, any>);
120
168
  }
121
169
 
122
- function appendNotices(text: string, notices: string[]): string { return notices.length ? `${text}\n\n[${notices.join(". ")}]` : text; }
170
+ function appendNotices(text: string, notices: string[]): string {
171
+ return notices.length ? `${text}\n\n[${notices.join(". ")}]` : text;
172
+ }