@linghun/tools 0.1.0 → 0.1.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.
@@ -5,26 +5,26 @@ import {
5
5
  WriteTool
6
6
  } from "./chunk-I3Z4OKMS.js";
7
7
  import {
8
- MultiEditTool
9
- } from "./chunk-VJDLOFCF.js";
8
+ TodoTool
9
+ } from "./chunk-MFHY7PBM.js";
10
10
  import {
11
11
  WebFetchTool
12
12
  } from "./chunk-LGZOG7IQ.js";
13
13
  import {
14
- GrepTool
15
- } from "./chunk-AZCQL24J.js";
16
- import {
17
- ReadTool
18
- } from "./chunk-RBHQ5WNR.js";
19
- import {
20
- TodoTool
21
- } from "./chunk-4567YAXM.js";
14
+ MultiEditTool
15
+ } from "./chunk-VJDLOFCF.js";
22
16
  import {
23
17
  GlobTool
24
18
  } from "./chunk-DN3KJZRV.js";
19
+ import {
20
+ ReadTool
21
+ } from "./chunk-TZ6QK52L.js";
25
22
  import {
26
23
  EditTool
27
24
  } from "./chunk-WLQ7DGMG.js";
25
+ import {
26
+ GrepTool
27
+ } from "./chunk-AZCQL24J.js";
28
28
  import {
29
29
  BashTool
30
30
  } from "./chunk-VZWMPUSS.js";
@@ -5,26 +5,26 @@ import {
5
5
  WriteTool
6
6
  } from "./chunk-I3Z4OKMS.js";
7
7
  import {
8
- MultiEditTool
9
- } from "./chunk-VJDLOFCF.js";
8
+ TodoTool
9
+ } from "./chunk-MFHY7PBM.js";
10
10
  import {
11
11
  WebFetchTool
12
12
  } from "./chunk-LGZOG7IQ.js";
13
13
  import {
14
- GrepTool
15
- } from "./chunk-AZCQL24J.js";
16
- import {
17
- ReadTool
18
- } from "./chunk-RBHQ5WNR.js";
19
- import {
20
- TodoTool
21
- } from "./chunk-4567YAXM.js";
14
+ MultiEditTool
15
+ } from "./chunk-VJDLOFCF.js";
22
16
  import {
23
17
  GlobTool
24
18
  } from "./chunk-DN3KJZRV.js";
19
+ import {
20
+ ReadTool
21
+ } from "./chunk-TZ6QK52L.js";
25
22
  import {
26
23
  EditTool
27
24
  } from "./chunk-WLQ7DGMG.js";
25
+ import {
26
+ GrepTool
27
+ } from "./chunk-AZCQL24J.js";
28
28
  import {
29
29
  BashTool
30
30
  } from "./chunk-VZWMPUSS.js";
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { ChildProcess } from "node:child_process";
1
2
  import { type ToolDefinition } from "./tool-runtime.js";
2
3
  export type { ToolDefinition, ToolFactoryDefinition, ToolInterruptBehavior, ToolLifecycleMetadata, ToolPermissionDecision, } from "./tool-runtime.js";
3
4
  export { createTool } from "./tool-runtime.js";
@@ -24,6 +25,12 @@ export type ToolProgressEvent = {
24
25
  stream: "stdout" | "stderr" | "system";
25
26
  text: string;
26
27
  };
28
+ export type ToolChildProcessTrackOptions = {
29
+ detached?: boolean;
30
+ label?: string;
31
+ cwd?: string;
32
+ retainAfterExit?: boolean;
33
+ };
27
34
  export type ReadSnapshot = {
28
35
  path: string;
29
36
  hash: string;
@@ -39,6 +46,7 @@ export type ToolContext = {
39
46
  patchSummaries?: Record<string, DiffSummary>;
40
47
  abortSignal?: AbortSignal;
41
48
  onProgress?: (event: ToolProgressEvent) => void | Promise<void>;
49
+ trackChildProcess?: (child: Pick<ChildProcess, "kill" | "pid" | "exitCode" | "signalCode" | "once">, options?: ToolChildProcessTrackOptions) => boolean;
42
50
  };
43
51
  export type ToolName = "Read" | "Write" | "Edit" | "MultiEdit" | "Grep" | "Glob" | "Bash" | "Todo" | "Diff" | "WebSearch" | "WebFetch";
44
52
  export type TodoStatus = "pending" | "in_progress" | "completed" | "blocked";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -12,37 +12,37 @@ import {
12
12
  } from "./chunk-MMJX44V6.js";
13
13
  import {
14
14
  toolPrompts
15
- } from "./chunk-KGDJAST5.js";
15
+ } from "./chunk-3JCXABUK.js";
16
16
  import {
17
17
  toolUserFacingNames
18
- } from "./chunk-NKWRH36V.js";
18
+ } from "./chunk-QNZMO55X.js";
19
19
  import "./chunk-4EZHIDZ6.js";
20
20
  import "./chunk-YR4HWOR2.js";
21
21
  import "./chunk-VAFW24RN.js";
22
22
  import "./chunk-I3Z4OKMS.js";
23
23
  import "./chunk-PS2ZOFZ6.js";
24
24
  import "./chunk-NPKLGVDQ.js";
25
- import "./chunk-VJDLOFCF.js";
26
- import "./chunk-3RP665TH.js";
27
- import "./chunk-IOC3BSPT.js";
25
+ import "./chunk-MFHY7PBM.js";
26
+ import "./chunk-SZFZPQGL.js";
27
+ import "./chunk-XZWSO5CM.js";
28
28
  import "./chunk-LGZOG7IQ.js";
29
29
  import "./chunk-ZYAEUABC.js";
30
30
  import "./chunk-SWK6XRZQ.js";
31
- import "./chunk-AZCQL24J.js";
32
- import "./chunk-HUIZOB4A.js";
33
- import "./chunk-MK3YP2VR.js";
34
- import "./chunk-RBHQ5WNR.js";
35
- import "./chunk-HNIVNZIS.js";
36
- import "./chunk-K3YDFDLP.js";
37
- import "./chunk-4567YAXM.js";
38
- import "./chunk-XZWSO5CM.js";
39
- import "./chunk-SZFZPQGL.js";
31
+ import "./chunk-VJDLOFCF.js";
32
+ import "./chunk-3RP665TH.js";
33
+ import "./chunk-IOC3BSPT.js";
40
34
  import "./chunk-DN3KJZRV.js";
41
35
  import "./chunk-2U4BZXAI.js";
42
36
  import "./chunk-ITBZHMZQ.js";
37
+ import "./chunk-TZ6QK52L.js";
38
+ import "./chunk-K3YDFDLP.js";
39
+ import "./chunk-HNIVNZIS.js";
43
40
  import "./chunk-WLQ7DGMG.js";
44
41
  import "./chunk-SQP6SJRP.js";
45
42
  import "./chunk-BRG64AEC.js";
43
+ import "./chunk-AZCQL24J.js";
44
+ import "./chunk-HUIZOB4A.js";
45
+ import "./chunk-MK3YP2VR.js";
46
46
  import "./chunk-VZWMPUSS.js";
47
47
  import "./chunk-E75PYM7V.js";
48
48
  import "./chunk-GAWMEMXB.js";
@@ -744,7 +744,8 @@ async function bashTool(input, context) {
744
744
  context.workspaceRoot,
745
745
  timeoutMs,
746
746
  context.abortSignal,
747
- (stream, text) => void context.onProgress?.({ toolName: "Bash", stream, text })
747
+ (stream, text) => void context.onProgress?.({ toolName: "Bash", stream, text }),
748
+ context.trackChildProcess
748
749
  );
749
750
  const adapterLines = adapted.command === input.command && adapted.adapter === "native" ? [] : [
750
751
  `adapter ${adapted.adapter}`,
@@ -763,13 +764,28 @@ async function bashTool(input, context) {
763
764
  const truncated = fullText.length > BASH_PREVIEW_LIMIT;
764
765
  const preview = truncated ? `${fullText.slice(0, BASH_PREVIEW_LIMIT)}
765
766
  ...\uFF08\u8F93\u51FA\u5DF2\u622A\u65AD\uFF0C\u5B8C\u6574\u65E5\u5FD7\u89C1 fullOutputPath\uFF09` : fullText;
767
+ const details = createBashDetails(fullOutputPath, fullText);
766
768
  return {
767
769
  text: preview,
770
+ details,
768
771
  data: adapted.adapter === "native" ? { exitCode: result.exitCode, outcome: result.outcome } : { exitCode: result.exitCode, outcome: result.outcome, adapter: adapted.adapter },
769
772
  truncated,
770
773
  fullOutputPath
771
774
  };
772
775
  }
776
+ function createBashDetails(fullOutputPath, fullText) {
777
+ return [
778
+ `fullOutputPath: ${fullOutputPath}`,
779
+ "--- summary",
780
+ ...fullText.split(/\r?\n/u).slice(0, 8),
781
+ "--- tail",
782
+ ...tailLines(fullText, 80)
783
+ ].join("\n");
784
+ }
785
+ function tailLines(text, limit) {
786
+ const lines = text.split(/\r?\n/u);
787
+ return lines.slice(Math.max(0, lines.length - limit));
788
+ }
773
789
  function adaptShellCommand(command) {
774
790
  return adaptShellCommandForPlatform(command, process.platform);
775
791
  }
@@ -1512,9 +1528,16 @@ function globToRegExp(pattern) {
1512
1528
  }
1513
1529
  return new RegExp(result);
1514
1530
  }
1515
- function runShell(command, cwd, timeoutMs, signal, onProgress) {
1531
+ function runShell(command, cwd, timeoutMs, signal, onProgress, trackChildProcess) {
1516
1532
  return new Promise((resolvePromise) => {
1517
- const child = spawn(command, { cwd, shell: true, windowsHide: true });
1533
+ const detached = process.platform !== "win32";
1534
+ const child = spawn(command, { cwd, shell: true, windowsHide: true, detached });
1535
+ trackChildProcess?.(child, {
1536
+ detached,
1537
+ cwd,
1538
+ label: `Bash:${command.slice(0, 80)}`,
1539
+ retainAfterExit: detached
1540
+ });
1518
1541
  let output = "";
1519
1542
  let settled = false;
1520
1543
  let forcedKillTimer;
@@ -1544,7 +1567,16 @@ function runShell(command, cwd, timeoutMs, signal, onProgress) {
1544
1567
  await stopWindowsProcessTree(child.pid, cwd);
1545
1568
  return;
1546
1569
  }
1547
- child.kill(force ? "SIGKILL" : "SIGTERM");
1570
+ const signalName = force ? "SIGKILL" : "SIGTERM";
1571
+ if (detached && child.pid) {
1572
+ try {
1573
+ process.kill(-child.pid, signalName);
1574
+ } catch {
1575
+ child.kill(signalName);
1576
+ }
1577
+ } else {
1578
+ child.kill(signalName);
1579
+ }
1548
1580
  if (force) {
1549
1581
  await waitForChildClose();
1550
1582
  }
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  ReadTool
3
- } from "../../chunk-RBHQ5WNR.js";
4
- import "../../chunk-HNIVNZIS.js";
3
+ } from "../../chunk-TZ6QK52L.js";
5
4
  import "../../chunk-K3YDFDLP.js";
5
+ import "../../chunk-HNIVNZIS.js";
6
6
  export {
7
7
  ReadTool
8
8
  };
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  TodoTool
3
- } from "../../chunk-4567YAXM.js";
4
- import "../../chunk-XZWSO5CM.js";
3
+ } from "../../chunk-MFHY7PBM.js";
5
4
  import "../../chunk-SZFZPQGL.js";
5
+ import "../../chunk-XZWSO5CM.js";
6
6
  export {
7
7
  TodoTool
8
8
  };
@@ -1,33 +1,33 @@
1
1
  import {
2
2
  toolPrompts
3
- } from "../chunk-KGDJAST5.js";
3
+ } from "../chunk-3JCXABUK.js";
4
4
  import "../chunk-4EZHIDZ6.js";
5
5
  import "../chunk-YR4HWOR2.js";
6
6
  import "../chunk-VAFW24RN.js";
7
7
  import "../chunk-I3Z4OKMS.js";
8
8
  import "../chunk-PS2ZOFZ6.js";
9
9
  import "../chunk-NPKLGVDQ.js";
10
- import "../chunk-VJDLOFCF.js";
11
- import "../chunk-3RP665TH.js";
12
- import "../chunk-IOC3BSPT.js";
10
+ import "../chunk-MFHY7PBM.js";
11
+ import "../chunk-SZFZPQGL.js";
12
+ import "../chunk-XZWSO5CM.js";
13
13
  import "../chunk-LGZOG7IQ.js";
14
14
  import "../chunk-ZYAEUABC.js";
15
15
  import "../chunk-SWK6XRZQ.js";
16
- import "../chunk-AZCQL24J.js";
17
- import "../chunk-HUIZOB4A.js";
18
- import "../chunk-MK3YP2VR.js";
19
- import "../chunk-RBHQ5WNR.js";
20
- import "../chunk-HNIVNZIS.js";
21
- import "../chunk-K3YDFDLP.js";
22
- import "../chunk-4567YAXM.js";
23
- import "../chunk-XZWSO5CM.js";
24
- import "../chunk-SZFZPQGL.js";
16
+ import "../chunk-VJDLOFCF.js";
17
+ import "../chunk-3RP665TH.js";
18
+ import "../chunk-IOC3BSPT.js";
25
19
  import "../chunk-DN3KJZRV.js";
26
20
  import "../chunk-2U4BZXAI.js";
27
21
  import "../chunk-ITBZHMZQ.js";
22
+ import "../chunk-TZ6QK52L.js";
23
+ import "../chunk-K3YDFDLP.js";
24
+ import "../chunk-HNIVNZIS.js";
28
25
  import "../chunk-WLQ7DGMG.js";
29
26
  import "../chunk-SQP6SJRP.js";
30
27
  import "../chunk-BRG64AEC.js";
28
+ import "../chunk-AZCQL24J.js";
29
+ import "../chunk-HUIZOB4A.js";
30
+ import "../chunk-MK3YP2VR.js";
31
31
  import "../chunk-VZWMPUSS.js";
32
32
  import "../chunk-E75PYM7V.js";
33
33
  import "../chunk-GAWMEMXB.js";
package/dist/tools/ui.js CHANGED
@@ -1,33 +1,33 @@
1
1
  import {
2
2
  toolUserFacingNames
3
- } from "../chunk-NKWRH36V.js";
3
+ } from "../chunk-QNZMO55X.js";
4
4
  import "../chunk-4EZHIDZ6.js";
5
5
  import "../chunk-YR4HWOR2.js";
6
6
  import "../chunk-VAFW24RN.js";
7
7
  import "../chunk-I3Z4OKMS.js";
8
8
  import "../chunk-PS2ZOFZ6.js";
9
9
  import "../chunk-NPKLGVDQ.js";
10
- import "../chunk-VJDLOFCF.js";
11
- import "../chunk-3RP665TH.js";
12
- import "../chunk-IOC3BSPT.js";
10
+ import "../chunk-MFHY7PBM.js";
11
+ import "../chunk-SZFZPQGL.js";
12
+ import "../chunk-XZWSO5CM.js";
13
13
  import "../chunk-LGZOG7IQ.js";
14
14
  import "../chunk-ZYAEUABC.js";
15
15
  import "../chunk-SWK6XRZQ.js";
16
- import "../chunk-AZCQL24J.js";
17
- import "../chunk-HUIZOB4A.js";
18
- import "../chunk-MK3YP2VR.js";
19
- import "../chunk-RBHQ5WNR.js";
20
- import "../chunk-HNIVNZIS.js";
21
- import "../chunk-K3YDFDLP.js";
22
- import "../chunk-4567YAXM.js";
23
- import "../chunk-XZWSO5CM.js";
24
- import "../chunk-SZFZPQGL.js";
16
+ import "../chunk-VJDLOFCF.js";
17
+ import "../chunk-3RP665TH.js";
18
+ import "../chunk-IOC3BSPT.js";
25
19
  import "../chunk-DN3KJZRV.js";
26
20
  import "../chunk-2U4BZXAI.js";
27
21
  import "../chunk-ITBZHMZQ.js";
22
+ import "../chunk-TZ6QK52L.js";
23
+ import "../chunk-K3YDFDLP.js";
24
+ import "../chunk-HNIVNZIS.js";
28
25
  import "../chunk-WLQ7DGMG.js";
29
26
  import "../chunk-SQP6SJRP.js";
30
27
  import "../chunk-BRG64AEC.js";
28
+ import "../chunk-AZCQL24J.js";
29
+ import "../chunk-HUIZOB4A.js";
30
+ import "../chunk-MK3YP2VR.js";
31
31
  import "../chunk-VZWMPUSS.js";
32
32
  import "../chunk-E75PYM7V.js";
33
33
  import "../chunk-GAWMEMXB.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@linghun/tools",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,9 +1,9 @@
1
- import {
2
- userFacingName
3
- } from "./chunk-XZWSO5CM.js";
4
1
  import {
5
2
  prompt
6
3
  } from "./chunk-SZFZPQGL.js";
4
+ import {
5
+ userFacingName
6
+ } from "./chunk-XZWSO5CM.js";
7
7
 
8
8
  // src/tools/Todo/TodoTool.ts
9
9
  var TodoTool = { name: "Todo", prompt, userFacingName };
@@ -1,9 +1,9 @@
1
- import {
2
- prompt
3
- } from "./chunk-HNIVNZIS.js";
4
1
  import {
5
2
  userFacingName
6
3
  } from "./chunk-K3YDFDLP.js";
4
+ import {
5
+ prompt
6
+ } from "./chunk-HNIVNZIS.js";
7
7
 
8
8
  // src/tools/Read/ReadTool.ts
9
9
  var ReadTool = { name: "Read", prompt, userFacingName };