pybao-cli 1.3.3 → 1.3.5

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 (192) hide show
  1. package/README.md +1 -440
  2. package/README.zh-CN.md +35 -35
  3. package/cli-acp.js +3 -3
  4. package/cli.js +4 -4
  5. package/dist/REPL-4YZC3LJO.js +42 -0
  6. package/dist/{acp-75HO2LBV.js → acp-SE4B3WSL.js} +43 -43
  7. package/dist/acp-SE4B3WSL.js.map +7 -0
  8. package/dist/{agentsValidate-6Z57ARKC.js → agentsValidate-LZISHE5F.js} +15 -15
  9. package/dist/agentsValidate-LZISHE5F.js.map +7 -0
  10. package/dist/{ask-NXXXCGY4.js → ask-5IDOHI4E.js} +26 -26
  11. package/dist/ask-5IDOHI4E.js.map +7 -0
  12. package/dist/{autoUpdater-PJMGNPUG.js → autoUpdater-ECGS62JN.js} +3 -3
  13. package/dist/{chunk-6RZIUY5K.js → chunk-3X2KNIS3.js} +5 -5
  14. package/dist/chunk-3X2KNIS3.js.map +7 -0
  15. package/dist/{chunk-VTVTEE5N.js → chunk-4U4MLA4R.js} +18 -18
  16. package/dist/chunk-4U4MLA4R.js.map +7 -0
  17. package/dist/{chunk-PCXUZ6AT.js → chunk-5AGDLQAW.js} +3 -3
  18. package/dist/chunk-5AGDLQAW.js.map +7 -0
  19. package/dist/{chunk-27GYWUY2.js → chunk-5JHD6MUL.js} +3 -3
  20. package/dist/chunk-5JHD6MUL.js.map +7 -0
  21. package/dist/{chunk-Z3HMXDXP.js → chunk-5JTKXNG4.js} +6 -6
  22. package/dist/chunk-5JTKXNG4.js.map +7 -0
  23. package/dist/{chunk-HIRIJ2LQ.js → chunk-5UJ7KHM7.js} +34 -33
  24. package/dist/chunk-5UJ7KHM7.js.map +7 -0
  25. package/dist/{chunk-JKGOGSFT.js → chunk-6BSVSUGW.js} +3 -3
  26. package/dist/{chunk-4XPNRLJG.js → chunk-AT7FEIUK.js} +7 -7
  27. package/dist/chunk-AT7FEIUK.js.map +7 -0
  28. package/dist/{chunk-T6GVXTNQ.js → chunk-B6IMQJZM.js} +7 -7
  29. package/dist/chunk-B6IMQJZM.js.map +7 -0
  30. package/dist/{chunk-ZJGXEWKF.js → chunk-BO63S4OP.js} +9 -9
  31. package/dist/chunk-BO63S4OP.js.map +7 -0
  32. package/dist/{chunk-6WELHKDA.js → chunk-C66U55GA.js} +11 -11
  33. package/dist/chunk-C66U55GA.js.map +7 -0
  34. package/dist/{chunk-3KNGJX7Q.js → chunk-CTKC574I.js} +11 -11
  35. package/dist/chunk-CTKC574I.js.map +7 -0
  36. package/dist/{chunk-QBHEERCF.js → chunk-E2R24MD6.js} +139 -129
  37. package/dist/chunk-E2R24MD6.js.map +7 -0
  38. package/dist/{chunk-3PDD7M4T.js → chunk-EGHIB45T.js} +5 -5
  39. package/dist/chunk-EGHIB45T.js.map +7 -0
  40. package/dist/{chunk-TXFCNQDE.js → chunk-G2W2B3A3.js} +25 -25
  41. package/dist/chunk-G2W2B3A3.js.map +7 -0
  42. package/dist/{chunk-XXFY63TM.js → chunk-HBWCMS4E.js} +7 -7
  43. package/dist/chunk-HBWCMS4E.js.map +7 -0
  44. package/dist/{chunk-3ZNSAB7B.js → chunk-KVP2VINI.js} +4 -4
  45. package/dist/chunk-KVP2VINI.js.map +7 -0
  46. package/dist/{chunk-JZDE77EH.js → chunk-MLU76W2R.js} +3 -3
  47. package/dist/{chunk-SWYJOV5E.js → chunk-MRHGVQ5T.js} +1 -1
  48. package/dist/{chunk-SWYJOV5E.js.map → chunk-MRHGVQ5T.js.map} +1 -1
  49. package/dist/{chunk-VRGR4ZTQ.js → chunk-MWPFU2KU.js} +2 -2
  50. package/dist/chunk-MWPFU2KU.js.map +7 -0
  51. package/dist/{chunk-7AAE6EO2.js → chunk-NAXCFXKW.js} +7 -7
  52. package/dist/chunk-NAXCFXKW.js.map +7 -0
  53. package/dist/{chunk-ICTEVBLN.js → chunk-NRKOXQT5.js} +11 -11
  54. package/dist/chunk-NRKOXQT5.js.map +7 -0
  55. package/dist/{chunk-BQA2EOUU.js → chunk-OTNHBUGC.js} +5 -5
  56. package/dist/chunk-OTNHBUGC.js.map +7 -0
  57. package/dist/{chunk-WPTPPOYN.js → chunk-PGLKCZAE.js} +2 -2
  58. package/dist/{chunk-UUNVJZWA.js → chunk-PMKSJ3AZ.js} +3 -3
  59. package/dist/chunk-PMKSJ3AZ.js.map +7 -0
  60. package/dist/{chunk-QIHB5PYM.js → chunk-R6WNNB47.js} +6 -6
  61. package/dist/{chunk-QIHB5PYM.js.map → chunk-R6WNNB47.js.map} +2 -2
  62. package/dist/{chunk-Q24ZGKIE.js → chunk-V3AKMLFM.js} +14 -14
  63. package/dist/chunk-V3AKMLFM.js.map +7 -0
  64. package/dist/{chunk-T7GPUZVK.js → chunk-VF3J4G4Z.js} +27 -27
  65. package/dist/chunk-VF3J4G4Z.js.map +7 -0
  66. package/dist/{chunk-4SNFQYCY.js → chunk-VKMVP2QQ.js} +12 -12
  67. package/dist/chunk-VKMVP2QQ.js.map +7 -0
  68. package/dist/chunk-XI4LTVYT.js.map +7 -0
  69. package/dist/{chunk-A6PUMROK.js → chunk-YDXW3IJK.js} +4 -4
  70. package/dist/{chunk-A6PUMROK.js.map → chunk-YDXW3IJK.js.map} +1 -1
  71. package/dist/{chunk-HB2P6645.js → chunk-ZZQ6WGYG.js} +4 -4
  72. package/dist/{cli-RFYBXM7F.js → cli-MBYLENJH.js} +119 -119
  73. package/dist/cli-MBYLENJH.js.map +7 -0
  74. package/dist/commands-ECIN5O3E.js +46 -0
  75. package/dist/{config-5OPX3H2K.js → config-45ETSXTS.js} +4 -4
  76. package/dist/{context-THRRBPFP.js → context-34YXWOMP.js} +5 -5
  77. package/dist/{customCommands-4XOZH44N.js → customCommands-J52KDUBX.js} +4 -4
  78. package/dist/{env-EL4KBHMB.js → env-ODQXSPMW.js} +8 -8
  79. package/dist/index.js +4 -4
  80. package/dist/index.js.map +1 -1
  81. package/dist/{llm-A3BCM4Q2.js → llm-BBYIGM3X.js} +34 -34
  82. package/dist/llm-BBYIGM3X.js.map +7 -0
  83. package/dist/{llmLazy-ZJSRLZVD.js → llmLazy-VHWTJ7FY.js} +1 -1
  84. package/dist/{loader-HZQBWO74.js → loader-TXZ3EJZO.js} +4 -4
  85. package/dist/{mcp-XKOJ55B2.js → mcp-SHR6KH2Y.js} +7 -7
  86. package/dist/{mentionProcessor-ANYU5MLF.js → mentionProcessor-CDELTWDV.js} +5 -5
  87. package/dist/{messages-75DL5XBP.js → messages-R4ICGYOI.js} +1 -1
  88. package/dist/{model-OPJGJZRC.js → model-AO4OE46E.js} +5 -5
  89. package/dist/{openai-DT54BAFP.js → openai-F7WL45GM.js} +5 -5
  90. package/dist/{outputStyles-TPFVI52O.js → outputStyles-BWAE3CTZ.js} +4 -4
  91. package/dist/{pluginRuntime-W74PYSZ4.js → pluginRuntime-AHKVCUSE.js} +8 -8
  92. package/dist/pluginRuntime-AHKVCUSE.js.map +7 -0
  93. package/dist/{pluginValidation-FALYRVI2.js → pluginValidation-YSUVH4GM.js} +6 -6
  94. package/dist/prompts-4AUAETB4.js +48 -0
  95. package/dist/pybAgentSessionId-3HDHCCI5.js +13 -0
  96. package/dist/pybAgentSessionLoad-5FMAFO4P.js +18 -0
  97. package/dist/pybAgentSessionResume-GCVJHXVV.js +16 -0
  98. package/dist/{kodeAgentStreamJson-3T26CHCP.js → pybAgentStreamJson-UG22YE4Z.js} +5 -5
  99. package/dist/{kodeAgentStreamJsonSession-BZS2VDCY.js → pybAgentStreamJsonSession-BRWXPZ5Z.js} +9 -9
  100. package/dist/pybAgentStreamJsonSession-BRWXPZ5Z.js.map +7 -0
  101. package/dist/{kodeAgentStructuredStdio-TNB6U6SP.js → pybAgentStructuredStdio-QDF6UGAJ.js} +3 -3
  102. package/dist/{kodeHooks-VUAWIY2D.js → pybHooks-WXEUSK2Y.js} +7 -7
  103. package/dist/query-JNWSOFYQ.js +50 -0
  104. package/dist/{ripgrep-XJGSUBG7.js → ripgrep-ON745BFW.js} +3 -3
  105. package/dist/{skillMarketplace-AUGKNCPW.js → skillMarketplace-ZLW4PQFC.js} +3 -3
  106. package/dist/{state-DQYRXKTG.js → state-E57SH5ZM.js} +2 -2
  107. package/dist/{theme-MS5HDUBJ.js → theme-XJG6O2YU.js} +5 -5
  108. package/dist/{toolPermissionSettings-4MPZVYDR.js → toolPermissionSettings-BXLCU7BK.js} +6 -6
  109. package/dist/tools-UJZBVLIU.js +47 -0
  110. package/dist/{userInput-F2PGBRFU.js → userInput-IVM4BDPE.js} +34 -34
  111. package/dist/userInput-IVM4BDPE.js.map +7 -0
  112. package/package.json +1 -1
  113. package/scripts/binary-utils.cjs +8 -8
  114. package/scripts/cli-acp-wrapper.cjs +3 -3
  115. package/scripts/cli-wrapper.cjs +4 -4
  116. package/scripts/postinstall.js +7 -7
  117. package/dist/REPL-WPV32MTF.js +0 -42
  118. package/dist/acp-75HO2LBV.js.map +0 -7
  119. package/dist/agentsValidate-6Z57ARKC.js.map +0 -7
  120. package/dist/ask-NXXXCGY4.js.map +0 -7
  121. package/dist/chunk-27GYWUY2.js.map +0 -7
  122. package/dist/chunk-3KNGJX7Q.js.map +0 -7
  123. package/dist/chunk-3PDD7M4T.js.map +0 -7
  124. package/dist/chunk-3ZNSAB7B.js.map +0 -7
  125. package/dist/chunk-4SNFQYCY.js.map +0 -7
  126. package/dist/chunk-4XPNRLJG.js.map +0 -7
  127. package/dist/chunk-6RZIUY5K.js.map +0 -7
  128. package/dist/chunk-6WELHKDA.js.map +0 -7
  129. package/dist/chunk-7AAE6EO2.js.map +0 -7
  130. package/dist/chunk-BQA2EOUU.js.map +0 -7
  131. package/dist/chunk-HIRIJ2LQ.js.map +0 -7
  132. package/dist/chunk-ICTEVBLN.js.map +0 -7
  133. package/dist/chunk-M624LT6O.js.map +0 -7
  134. package/dist/chunk-PCXUZ6AT.js.map +0 -7
  135. package/dist/chunk-Q24ZGKIE.js.map +0 -7
  136. package/dist/chunk-QBHEERCF.js.map +0 -7
  137. package/dist/chunk-T6GVXTNQ.js.map +0 -7
  138. package/dist/chunk-T7GPUZVK.js.map +0 -7
  139. package/dist/chunk-TXFCNQDE.js.map +0 -7
  140. package/dist/chunk-UUNVJZWA.js.map +0 -7
  141. package/dist/chunk-VRGR4ZTQ.js.map +0 -7
  142. package/dist/chunk-VTVTEE5N.js.map +0 -7
  143. package/dist/chunk-XXFY63TM.js.map +0 -7
  144. package/dist/chunk-Z3HMXDXP.js.map +0 -7
  145. package/dist/chunk-ZJGXEWKF.js.map +0 -7
  146. package/dist/cli-RFYBXM7F.js.map +0 -7
  147. package/dist/commands-YOXMODDO.js +0 -46
  148. package/dist/kodeAgentSessionId-PROTVRBR.js +0 -13
  149. package/dist/kodeAgentSessionLoad-UMPV7MC3.js +0 -18
  150. package/dist/kodeAgentSessionResume-YJS4FVQM.js +0 -16
  151. package/dist/kodeAgentStreamJsonSession-BZS2VDCY.js.map +0 -7
  152. package/dist/llm-A3BCM4Q2.js.map +0 -7
  153. package/dist/pluginRuntime-W74PYSZ4.js.map +0 -7
  154. package/dist/prompts-J4TPRMJ3.js +0 -48
  155. package/dist/query-K3QKBVDN.js +0 -50
  156. package/dist/tools-QW6SIJLJ.js +0 -47
  157. package/dist/userInput-F2PGBRFU.js.map +0 -7
  158. /package/dist/{REPL-WPV32MTF.js.map → REPL-4YZC3LJO.js.map} +0 -0
  159. /package/dist/{autoUpdater-PJMGNPUG.js.map → autoUpdater-ECGS62JN.js.map} +0 -0
  160. /package/dist/{chunk-JKGOGSFT.js.map → chunk-6BSVSUGW.js.map} +0 -0
  161. /package/dist/{chunk-JZDE77EH.js.map → chunk-MLU76W2R.js.map} +0 -0
  162. /package/dist/{chunk-WPTPPOYN.js.map → chunk-PGLKCZAE.js.map} +0 -0
  163. /package/dist/{chunk-M624LT6O.js → chunk-XI4LTVYT.js} +0 -0
  164. /package/dist/{chunk-HB2P6645.js.map → chunk-ZZQ6WGYG.js.map} +0 -0
  165. /package/dist/{commands-YOXMODDO.js.map → commands-ECIN5O3E.js.map} +0 -0
  166. /package/dist/{config-5OPX3H2K.js.map → config-45ETSXTS.js.map} +0 -0
  167. /package/dist/{context-THRRBPFP.js.map → context-34YXWOMP.js.map} +0 -0
  168. /package/dist/{customCommands-4XOZH44N.js.map → customCommands-J52KDUBX.js.map} +0 -0
  169. /package/dist/{env-EL4KBHMB.js.map → env-ODQXSPMW.js.map} +0 -0
  170. /package/dist/{kodeAgentSessionId-PROTVRBR.js.map → llmLazy-VHWTJ7FY.js.map} +0 -0
  171. /package/dist/{kodeAgentSessionLoad-UMPV7MC3.js.map → loader-TXZ3EJZO.js.map} +0 -0
  172. /package/dist/{kodeAgentSessionResume-YJS4FVQM.js.map → mcp-SHR6KH2Y.js.map} +0 -0
  173. /package/dist/{mentionProcessor-ANYU5MLF.js.map → mentionProcessor-CDELTWDV.js.map} +0 -0
  174. /package/dist/{kodeAgentStreamJson-3T26CHCP.js.map → messages-R4ICGYOI.js.map} +0 -0
  175. /package/dist/{kodeAgentStructuredStdio-TNB6U6SP.js.map → model-AO4OE46E.js.map} +0 -0
  176. /package/dist/{kodeHooks-VUAWIY2D.js.map → openai-F7WL45GM.js.map} +0 -0
  177. /package/dist/{llmLazy-ZJSRLZVD.js.map → outputStyles-BWAE3CTZ.js.map} +0 -0
  178. /package/dist/{loader-HZQBWO74.js.map → pluginValidation-YSUVH4GM.js.map} +0 -0
  179. /package/dist/{mcp-XKOJ55B2.js.map → prompts-4AUAETB4.js.map} +0 -0
  180. /package/dist/{messages-75DL5XBP.js.map → pybAgentSessionId-3HDHCCI5.js.map} +0 -0
  181. /package/dist/{model-OPJGJZRC.js.map → pybAgentSessionLoad-5FMAFO4P.js.map} +0 -0
  182. /package/dist/{openai-DT54BAFP.js.map → pybAgentSessionResume-GCVJHXVV.js.map} +0 -0
  183. /package/dist/{outputStyles-TPFVI52O.js.map → pybAgentStreamJson-UG22YE4Z.js.map} +0 -0
  184. /package/dist/{pluginValidation-FALYRVI2.js.map → pybAgentStructuredStdio-QDF6UGAJ.js.map} +0 -0
  185. /package/dist/{prompts-J4TPRMJ3.js.map → pybHooks-WXEUSK2Y.js.map} +0 -0
  186. /package/dist/{query-K3QKBVDN.js.map → query-JNWSOFYQ.js.map} +0 -0
  187. /package/dist/{ripgrep-XJGSUBG7.js.map → ripgrep-ON745BFW.js.map} +0 -0
  188. /package/dist/{skillMarketplace-AUGKNCPW.js.map → skillMarketplace-ZLW4PQFC.js.map} +0 -0
  189. /package/dist/{state-DQYRXKTG.js.map → state-E57SH5ZM.js.map} +0 -0
  190. /package/dist/{theme-MS5HDUBJ.js.map → theme-XJG6O2YU.js.map} +0 -0
  191. /package/dist/{toolPermissionSettings-4MPZVYDR.js.map → toolPermissionSettings-BXLCU7BK.js.map} +0 -0
  192. /package/dist/{tools-QW6SIJLJ.js.map → tools-UJZBVLIU.js.map} +0 -0
@@ -4,7 +4,7 @@ import {
4
4
  BunShell,
5
5
  execFileNoThrow,
6
6
  logError
7
- } from "./chunk-TXFCNQDE.js";
7
+ } from "./chunk-G2W2B3A3.js";
8
8
 
9
9
  // src/utils/system/ripgrep.ts
10
10
  import { rgPath } from "@vscode/ripgrep";
@@ -14,16 +14,16 @@ import { existsSync } from "node:fs";
14
14
  import { execFile } from "child_process";
15
15
  import debug from "debug";
16
16
  import { quote } from "shell-quote";
17
- var d = debug("kode:ripgrep");
17
+ var d = debug("pyb:ripgrep");
18
18
  function isTruthyEnv(value) {
19
19
  if (!value) return false;
20
20
  return ["1", "true", "yes", "on"].includes(value.trim().toLowerCase());
21
21
  }
22
22
  function resolveRipgrepPathOrThrow() {
23
- const explicit = process.env.KODE_RIPGREP_PATH;
23
+ const explicit = process.env.PYB_RIPGREP_PATH;
24
24
  if (explicit) {
25
25
  if (!existsSync(explicit)) {
26
- throw new Error(`KODE_RIPGREP_PATH points to a missing file: ${explicit}`);
26
+ throw new Error(`PYB_RIPGREP_PATH points to a missing file: ${explicit}`);
27
27
  }
28
28
  return explicit;
29
29
  }
@@ -41,7 +41,7 @@ function resolveRipgrepPathOrThrow() {
41
41
  "ripgrep (rg) was not found on PATH, and @vscode/ripgrep is missing.",
42
42
  "Fix:",
43
43
  "- Install ripgrep: https://github.com/BurntSushi/ripgrep",
44
- "- Or reinstall @shareai-lab/kode (ensure dependencies are present)"
44
+ "- Or reinstall pyb (ensure dependencies are present)"
45
45
  ].join("\n")
46
46
  );
47
47
  }
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/utils/system/ripgrep.ts"],
4
+ "sourcesContent": ["import { rgPath } from '@vscode/ripgrep'\nimport { findActualExecutable } from 'spawn-rx'\nimport { memoize } from 'lodash-es'\nimport { existsSync } from 'node:fs'\nimport { execFile } from 'child_process'\nimport debug from 'debug'\nimport { quote } from 'shell-quote'\nimport { logError } from '@utils/log'\nimport { execFileNoThrow } from '@utils/system/execFileNoThrow'\nimport type { BunShellSandboxOptions } from '@utils/bun/shell'\nimport { BunShell } from '@utils/bun/shell'\n\nconst d = debug('pyb:ripgrep')\n\nfunction isTruthyEnv(value: string | undefined): boolean {\n if (!value) return false\n return ['1', 'true', 'yes', 'on'].includes(value.trim().toLowerCase())\n}\n\nfunction resolveRipgrepPathOrThrow(): string {\n const explicit = process.env.PYB_RIPGREP_PATH\n if (explicit) {\n if (!existsSync(explicit)) {\n throw new Error(`PYB_RIPGREP_PATH points to a missing file: ${explicit}`)\n }\n return explicit\n }\n\n const preferBundled = isTruthyEnv(process.env.USE_BUILTIN_RIPGREP)\n if (!preferBundled) {\n const { cmd } = findActualExecutable('rg', [])\n d(`ripgrep initially resolved as: ${cmd}`)\n if (cmd !== 'rg') {\n return cmd\n }\n }\n\n if (!rgPath || !existsSync(rgPath)) {\n throw new Error(\n [\n 'ripgrep (rg) was not found on PATH, and @vscode/ripgrep is missing.',\n 'Fix:',\n '- Install ripgrep: https://github.com/BurntSushi/ripgrep',\n '- Or reinstall pyb (ensure dependencies are present)',\n ].join('\\n'),\n )\n }\n\n d('Using @vscode/ripgrep fallback: %s', rgPath)\n return rgPath\n}\n\nexport const getRipgrepPath = memoize((): string => resolveRipgrepPathOrThrow())\n\nexport async function ripGrep(\n args: string[],\n target: string,\n abortSignal: AbortSignal,\n options?: { sandbox?: BunShellSandboxOptions },\n): Promise<string[]> {\n await codesignRipgrepIfNecessary()\n const rg = getRipgrepPath()\n d('ripgrep called: %s %o', rg, target, args)\n\n if (options?.sandbox?.enabled === true) {\n const cmd = quote([rg, ...args, target])\n const result = await BunShell.getInstance().exec(cmd, abortSignal, 10_000, {\n sandbox: options.sandbox,\n })\n if (result.code === 1) return []\n if (result.code !== 0) {\n logError(`ripgrep failed with exit code ${result.code}: ${result.stderr}`)\n return []\n }\n return result.stdout.trim().split('\\n').filter(Boolean)\n }\n\n return new Promise(resolve => {\n execFile(\n rg,\n [...args, target],\n {\n maxBuffer: 1_000_000,\n signal: abortSignal,\n timeout: 10_000,\n },\n (error, stdout) => {\n if (error) {\n if (error.code !== 1) {\n d('ripgrep error: %o', error)\n logError(error)\n }\n resolve([])\n } else {\n d('ripgrep succeeded with %s', stdout)\n resolve(stdout.trim().split('\\n').filter(Boolean))\n }\n },\n )\n })\n}\n\nexport async function listAllContentFiles(\n path: string,\n abortSignal: AbortSignal,\n limit: number,\n): Promise<string[]> {\n try {\n d('listAllContentFiles called: %s', path)\n return (await ripGrep(['-l', '.', path], path, abortSignal)).slice(0, limit)\n } catch (e) {\n d('listAllContentFiles failed: %o', e)\n\n logError(e)\n return []\n }\n}\n\nlet alreadyDoneSignCheck = false\nasync function codesignRipgrepIfNecessary(): Promise<void> {\n if (process.platform !== 'darwin' || alreadyDoneSignCheck) {\n return\n }\n\n alreadyDoneSignCheck = true\n\n d('checking if ripgrep is already signed')\n const lines = (\n await execFileNoThrow(\n 'codesign',\n ['-vv', '-d', getRipgrepPath()],\n undefined,\n undefined,\n false,\n )\n ).stdout.split('\\n')\n\n const needsSigned = lines.find(line => line.includes('linker-signed'))\n if (!needsSigned) {\n d('seems to be already signed')\n return\n }\n\n try {\n d('signing ripgrep')\n const signResult = await execFileNoThrow('codesign', [\n '--sign',\n '-',\n '--force',\n '--preserve-metadata=entitlements,requirements,flags,runtime',\n getRipgrepPath(),\n ])\n\n if (signResult.code !== 0) {\n d('failed to sign ripgrep: %o', signResult)\n logError(\n `Failed to sign ripgrep: ${signResult.stdout} ${signResult.stderr}`,\n )\n }\n\n d('removing quarantine')\n const quarantineResult = await execFileNoThrow('xattr', [\n '-d',\n 'com.apple.quarantine',\n getRipgrepPath(),\n ])\n\n if (quarantineResult.code !== 0) {\n d('failed to remove quarantine: %o', quarantineResult)\n logError(\n `Failed to remove quarantine: ${quarantineResult.stdout} ${quarantineResult.stderr}`,\n )\n }\n } catch (e) {\n d('failed during sign: %o', e)\n logError(e)\n }\n}\n\nexport function resetRipgrepPathCacheForTests(): void {\n ;(getRipgrepPath as any).cache?.clear?.()\n alreadyDoneSignCheck = false\n}\n\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -2,7 +2,7 @@ import { createRequire as __pybCreateRequire } from "node:module";
2
2
  const require = __pybCreateRequire(import.meta.url);
3
3
  import {
4
4
  MACRO
5
- } from "./chunk-A6PUMROK.js";
5
+ } from "./chunk-YDXW3IJK.js";
6
6
 
7
7
  // src/utils/state/index.ts
8
8
  import { cwd } from "process";
@@ -106,16 +106,16 @@ function execFileNoThrow(file, args, abortSignal, timeout = 10 * SECONDS_IN_MINU
106
106
  import { memoize } from "lodash-es";
107
107
  import { join } from "path";
108
108
  import { homedir } from "os";
109
- function getKodeBaseDir() {
110
- return process.env.KODE_CONFIG_DIR ?? process.env.CLAUDE_CONFIG_DIR ?? join(homedir(), CONFIG_BASE_DIR);
109
+ function getPybBaseDir() {
110
+ return process.env.PYB_CONFIG_DIR ?? process.env.CLAUDE_CONFIG_DIR ?? join(homedir(), CONFIG_BASE_DIR);
111
111
  }
112
112
  function getGlobalConfigFilePath() {
113
- return process.env.KODE_CONFIG_DIR || process.env.CLAUDE_CONFIG_DIR ? join(getKodeBaseDir(), "config.json") : join(homedir(), CONFIG_FILE);
113
+ return process.env.PYB_CONFIG_DIR || process.env.CLAUDE_CONFIG_DIR ? join(getPybBaseDir(), "config.json") : join(homedir(), CONFIG_FILE);
114
114
  }
115
115
  function getMemoryDir() {
116
- return join(getKodeBaseDir(), "memory");
116
+ return join(getPybBaseDir(), "memory");
117
117
  }
118
- var KODE_BASE_DIR = getKodeBaseDir();
118
+ var PYB_BASE_DIR = getPybBaseDir();
119
119
  var GLOBAL_CONFIG_FILE = getGlobalConfigFilePath();
120
120
  var MEMORY_DIR = getMemoryDir();
121
121
  var getIsDocker = memoize(async () => {
@@ -126,7 +126,7 @@ var getIsDocker = memoize(async () => {
126
126
  return process.platform === "linux";
127
127
  });
128
128
  var hasInternetAccess = memoize(async () => {
129
- const offline = process.env.KODE_OFFLINE ?? process.env.OFFLINE ?? process.env.NO_NETWORK ?? "";
129
+ const offline = process.env.PYB_OFFLINE ?? process.env.OFFLINE ?? process.env.NO_NETWORK ?? "";
130
130
  const normalized = String(offline).trim().toLowerCase();
131
131
  if (["1", "true", "yes", "on"].includes(normalized)) return false;
132
132
  return true;
@@ -1182,7 +1182,7 @@ function hydratePlanSlugFromMessages(messages, context) {
1182
1182
  return false;
1183
1183
  }
1184
1184
  function getPlanDirectory() {
1185
- const dir = join2(getKodeBaseDir(), "plans");
1185
+ const dir = join2(getPybBaseDir(), "plans");
1186
1186
  if (!existsSync(dir)) {
1187
1187
  mkdirSync(dir, { recursive: true });
1188
1188
  }
@@ -1257,10 +1257,10 @@ function getProjectDir(cwd2) {
1257
1257
  return cwd2.replace(/[^a-zA-Z0-9]/g, "-");
1258
1258
  }
1259
1259
  function getLegacyCacheRoot() {
1260
- return process.env.KODE_LEGACY_CACHE_ROOT ?? paths.cache;
1260
+ return process.env.PYB_LEGACY_CACHE_ROOT ?? paths.cache;
1261
1261
  }
1262
1262
  function getNewLogRoot() {
1263
- return process.env.KODE_LOG_ROOT ?? getKodeBaseDir();
1263
+ return process.env.PYB_LOG_ROOT ?? join3(getPybBaseDir(), "logs");
1264
1264
  }
1265
1265
  var CACHE_PATHS = {
1266
1266
  errors: () => join3(getNewLogRoot(), getProjectDir(process.cwd()), "errors"),
@@ -1586,7 +1586,7 @@ function getProjectDir2(cwd2) {
1586
1586
  }
1587
1587
  var PROJECT_ROOT = process.cwd();
1588
1588
  function getTaskOutputsDir() {
1589
- return join4(getKodeBaseDir(), getProjectDir2(PROJECT_ROOT), "tasks");
1589
+ return join4(getPybBaseDir(), getProjectDir2(PROJECT_ROOT), "tasks");
1590
1590
  }
1591
1591
  function getTaskOutputFilePath(taskId) {
1592
1592
  return join4(getTaskOutputsDir(), `${taskId}.output`);
@@ -1655,12 +1655,12 @@ function maybeAnnotateMacosSandboxStderr(stderr, sandbox) {
1655
1655
  if (platform !== "darwin") return stderr;
1656
1656
  if (stderr.includes("[sandbox]")) return stderr;
1657
1657
  const lower = stderr.toLowerCase();
1658
- const looksLikeSandboxViolation = stderr.includes("KODE_SANDBOX") || lower.includes("sandbox-exec") && (lower.includes("deny") || lower.includes("operation not permitted")) || lower.includes("operation not permitted") && lower.includes("sandbox");
1658
+ const looksLikeSandboxViolation = stderr.includes("PYB_SANDBOX") || stderr.includes("KODE_SANDBOX") || lower.includes("sandbox-exec") && (lower.includes("deny") || lower.includes("operation not permitted")) || lower.includes("operation not permitted") && lower.includes("sandbox");
1659
1659
  if (!looksLikeSandboxViolation) return stderr;
1660
1660
  return [
1661
1661
  stderr.trimEnd(),
1662
1662
  "",
1663
- "[sandbox] This failure looks like a macOS sandbox denial. Adjust sandbox settings (e.g. /sandbox or .kode/settings.json) to grant the minimal required access."
1663
+ "[sandbox] This failure looks like a macOS sandbox denial. Adjust sandbox settings (e.g. /sandbox or .pyb/settings.json) to grant the minimal required access."
1664
1664
  ].join("\n");
1665
1665
  }
1666
1666
  function hasGlobPattern(value) {
@@ -1702,9 +1702,9 @@ function buildLinuxBwrapFilesystemArgs(options) {
1702
1702
  if (writeConfig) {
1703
1703
  args.push("--ro-bind", "/", "/");
1704
1704
  const allowedRoots = [];
1705
- if (existsSync4("/tmp/kode")) {
1706
- args.push("--bind", "/tmp/kode", "/tmp/kode");
1707
- allowedRoots.push("/tmp/kode");
1705
+ if (existsSync4("/tmp/pyb")) {
1706
+ args.push("--bind", "/tmp/pyb", "/tmp/pyb");
1707
+ allowedRoots.push("/tmp/pyb");
1708
1708
  }
1709
1709
  for (const raw of writeConfig.allowOnly ?? []) {
1710
1710
  const resolved = normalizeLinuxSandboxPath(raw, { cwd: cwd2, homeDir });
@@ -1768,7 +1768,7 @@ function buildLinuxBwrapCommand(options) {
1768
1768
  "1",
1769
1769
  "--setenv",
1770
1770
  "TMPDIR",
1771
- "/tmp/kode"
1771
+ "/tmp/pyb"
1772
1772
  );
1773
1773
  if (!options.enableWeakerNestedSandbox) args.push("--proc", "/proc");
1774
1774
  args.push("--", options.binShellPath, "-c", options.command);
@@ -1778,7 +1778,7 @@ function buildSandboxEnvAssignments(options) {
1778
1778
  const httpProxyPort = options?.httpProxyPort;
1779
1779
  const socksProxyPort = options?.socksProxyPort;
1780
1780
  const platform = options?.platform ?? process.platform;
1781
- const env2 = ["SANDBOX_RUNTIME=1", "TMPDIR=/tmp/kode"];
1781
+ const env2 = ["SANDBOX_RUNTIME=1", "TMPDIR=/tmp/pyb"];
1782
1782
  if (!httpProxyPort && !socksProxyPort) return env2;
1783
1783
  const noProxy = [
1784
1784
  "localhost",
@@ -1954,12 +1954,12 @@ function buildMacosSandboxFileWriteRules(writeConfig, logTag) {
1954
1954
  return lines;
1955
1955
  }
1956
1956
  function buildMacosSandboxExecCommand(options) {
1957
- const logTag = "KODE_SANDBOX";
1957
+ const logTag = "PYB_SANDBOX";
1958
1958
  const profileLines = [
1959
1959
  "(version 1)",
1960
1960
  `(deny default (with message "${logTag}"))`,
1961
1961
  "",
1962
- "; Kode sandbox-exec profile (reference CLI compatible)",
1962
+ "; Pyb sandbox-exec profile (reference CLI compatible)",
1963
1963
  "",
1964
1964
  "(allow process*)",
1965
1965
  "(allow sysctl-read)",
@@ -2120,7 +2120,7 @@ var BunShell = class _BunShell {
2120
2120
  return null;
2121
2121
  }
2122
2122
  try {
2123
- mkdirSync4("/tmp/kode", { recursive: true });
2123
+ mkdirSync4("/tmp/pyb", { recursive: true });
2124
2124
  } catch {
2125
2125
  }
2126
2126
  const cmd = buildLinuxBwrapCommand({
@@ -2141,11 +2141,11 @@ var BunShell = class _BunShell {
2141
2141
  return null;
2142
2142
  }
2143
2143
  try {
2144
- mkdirSync4("/tmp/kode", { recursive: true });
2144
+ mkdirSync4("/tmp/pyb", { recursive: true });
2145
2145
  } catch {
2146
2146
  }
2147
2147
  try {
2148
- mkdirSync4("/private/tmp/kode", { recursive: true });
2148
+ mkdirSync4("/private/tmp/pyb", { recursive: true });
2149
2149
  } catch {
2150
2150
  }
2151
2151
  return {
@@ -2899,10 +2899,10 @@ export {
2899
2899
  getOriginalCwd,
2900
2900
  getCwd,
2901
2901
  execFileNoThrow,
2902
- getKodeBaseDir,
2902
+ getPybBaseDir,
2903
2903
  getGlobalConfigFilePath,
2904
2904
  getMemoryDir,
2905
- KODE_BASE_DIR,
2905
+ PYB_BASE_DIR,
2906
2906
  GLOBAL_CONFIG_FILE,
2907
2907
  MEMORY_DIR,
2908
2908
  env,