blade-code 0.10.31 → 0.10.33

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 (106) hide show
  1. package/dist/blade.js +2 -2
  2. package/dist/chunk-08fww0yh.js +1 -0
  3. package/dist/{chunk-ktwp84cv.js → chunk-0k0k5qjr.js} +2 -2
  4. package/dist/{chunk-0ew7vmkb.js → chunk-189drzww.js} +1 -1
  5. package/dist/{chunk-b63dfss4.js → chunk-20qedxrp.js} +1 -1
  6. package/dist/chunk-23bhwgwm.js +204 -0
  7. package/dist/{chunk-7hs1n09m.js → chunk-23bkpq26.js} +2 -2
  8. package/dist/chunk-25j7tjr6.js +1 -0
  9. package/dist/{chunk-km155c83.js → chunk-2rsr3bte.js} +1 -1
  10. package/dist/chunk-2s24zvjm.js +22 -0
  11. package/dist/{chunk-aa4xya8p.js → chunk-3j57nm6f.js} +2 -2
  12. package/dist/{chunk-t857g6s9.js → chunk-3r0yfspg.js} +1 -1
  13. package/dist/{chunk-2nga4tsd.js → chunk-40654rh3.js} +2 -2
  14. package/dist/{chunk-pqsg5265.js → chunk-4kratdhc.js} +1 -1
  15. package/dist/{chunk-2rmt821w.js → chunk-5fm0qywg.js} +2 -2
  16. package/dist/chunk-5hn788xk.js +2 -0
  17. package/dist/{chunk-86phvby9.js → chunk-6b2w2132.js} +1 -1
  18. package/dist/{chunk-2q06pq10.js → chunk-6bqd2hkz.js} +1 -1
  19. package/dist/chunk-74js4dnw.js +1 -0
  20. package/dist/chunk-7dt49b6q.js +8 -0
  21. package/dist/chunk-7ncx3vzw.js +1 -0
  22. package/dist/{chunk-fs1r9hyz.js → chunk-8vxxmdhd.js} +1 -1
  23. package/dist/{chunk-at2krx3x.js → chunk-91sne4g4.js} +2 -2
  24. package/dist/{chunk-d0sej62r.js → chunk-91vwv4ph.js} +2 -2
  25. package/dist/{chunk-93zgz6v6.js → chunk-97mzk53w.js} +1 -1
  26. package/dist/chunk-9c4fvem6.js +1 -0
  27. package/dist/chunk-9qj6y0sj.js +2 -0
  28. package/dist/chunk-agw7bq0h.js +1 -0
  29. package/dist/{chunk-xhxvde2k.js → chunk-amm23yvd.js} +2 -2
  30. package/dist/chunk-bhj7dqe8.js +1 -0
  31. package/dist/{chunk-jmyxhygx.js → chunk-bvnxztsj.js} +1 -1
  32. package/dist/{chunk-byqg8qby.js → chunk-ctn675zn.js} +2 -2
  33. package/dist/{chunk-9wy7xryc.js → chunk-d3h8cgs8.js} +1 -1
  34. package/dist/chunk-dkz757cv.js +1 -0
  35. package/dist/{chunk-7gsqx900.js → chunk-f20mb84y.js} +2 -2
  36. package/dist/{chunk-tb1hr6w9.js → chunk-f5yx8s8t.js} +1 -1
  37. package/dist/{chunk-qat3ara1.js → chunk-f9graf2n.js} +1 -1
  38. package/dist/{chunk-fqrt55g3.js → chunk-g2yj0chw.js} +1 -1
  39. package/dist/chunk-gmpgmh7s.js +1 -0
  40. package/dist/{chunk-1905jhyj.js → chunk-gw51xyz9.js} +2 -2
  41. package/dist/{chunk-q1v03abc.js → chunk-h9v4tzdt.js} +2 -2
  42. package/dist/{chunk-anm5phza.js → chunk-hs3yryjm.js} +2 -2
  43. package/dist/{chunk-9jkbhaec.js → chunk-k05xt45s.js} +1 -1
  44. package/dist/{chunk-07t42c40.js → chunk-k9px24b5.js} +1 -1
  45. package/dist/{chunk-bqmd7hp7.js → chunk-kqe9y6ka.js} +43 -43
  46. package/dist/{chunk-v1jxren4.js → chunk-m06gcr4k.js} +1 -1
  47. package/dist/chunk-m6srq209.js +1 -0
  48. package/dist/{chunk-vw6z3t41.js → chunk-mdrdafpa.js} +1 -1
  49. package/dist/{chunk-pgs555fv.js → chunk-mt3nrz7x.js} +2 -2
  50. package/dist/{chunk-s8889acm.js → chunk-mxyb9hn6.js} +1 -1
  51. package/dist/chunk-np2vrjpc.js +10 -0
  52. package/dist/{chunk-0qjzgs1d.js → chunk-qj6gafse.js} +1 -1
  53. package/dist/chunk-sfvt4ef0.js +1610 -0
  54. package/dist/{chunk-qfd0tees.js → chunk-tzragyzm.js} +1 -1
  55. package/dist/{chunk-1v251p73.js → chunk-vm0w0jt9.js} +1 -1
  56. package/dist/{chunk-khvbwbtv.js → chunk-vp7n0w9w.js} +2 -2
  57. package/dist/{chunk-c2bgj76r.js → chunk-vybzvxf9.js} +1 -1
  58. package/dist/{chunk-9afqfajf.js → chunk-vzf17snk.js} +2 -2
  59. package/dist/{chunk-s4zvf2tf.js → chunk-w45ngpy1.js} +2 -2
  60. package/dist/chunk-wgnzghhc.js +6 -0
  61. package/dist/{chunk-44ep1v89.js → chunk-wzjhwr2p.js} +3 -3
  62. package/dist/chunk-xfpne7cm.js +1 -0
  63. package/dist/{chunk-ayx03d6y.js → chunk-y1bb5391.js} +1 -1
  64. package/dist/chunk-ycvwc7hb.js +1 -0
  65. package/dist/{chunk-zzkzmrjd.js → chunk-z2k6q0k1.js} +2 -2
  66. package/dist/chunk-z7s2138c.js +1 -0
  67. package/dist/chunk-zfezz6ew.js +1 -0
  68. package/dist/{chunk-3fzevvzm.js → chunk-zftb9s2h.js} +2 -2
  69. package/dist/{chunk-x36dp4pj.js → chunk-zhbpatxr.js} +1 -1
  70. package/dist/chunk-ztyt12kf.js +2 -0
  71. package/dist/{chunk-c913zbnw.js → chunk-zvjvbhc4.js} +2 -2
  72. package/dist/web/assets/{ChatView-SgrwGFY6.js → ChatView-B7_Um8KR.js} +2 -2
  73. package/dist/web/assets/{CodeBlockHighlighter-BgvTBcCD.js → CodeBlockHighlighter-JzE91vkT.js} +1 -1
  74. package/dist/web/assets/{FilePreview-D1ZOOgV-.js → FilePreview-BTbtoUBJ.js} +1 -1
  75. package/dist/web/assets/{MarkdownRenderer-BdBwdGfs.js → MarkdownRenderer-IaPtOh2w.js} +3 -3
  76. package/dist/web/assets/{SettingsModal-y7zf5Dbj.js → SettingsModal-CPgWPfZ2.js} +1 -1
  77. package/dist/web/assets/{TaskSwitcher-YYFAqV6o.js → TaskSwitcher-D4RZxQKp.js} +1 -1
  78. package/dist/web/assets/{TerminalPanel-BjA-x8tb.js → TerminalPanel-yWbQfbYa.js} +1 -1
  79. package/dist/web/assets/{index-B6QL61mx.js → index-BnCT8SxR.js} +8 -8
  80. package/dist/web/assets/session-events-BZao_jMQ.js +22 -0
  81. package/dist/web/index.html +2 -2
  82. package/package.json +1 -1
  83. package/dist/chunk-1pr72n4c.js +0 -1
  84. package/dist/chunk-1y3jpc4s.js +0 -1
  85. package/dist/chunk-321dpgd3.js +0 -2
  86. package/dist/chunk-3gbrc75h.js +0 -1
  87. package/dist/chunk-6pwgtmw3.js +0 -1
  88. package/dist/chunk-7b81rbkw.js +0 -1
  89. package/dist/chunk-a83cdn7b.js +0 -1
  90. package/dist/chunk-hev5sqxy.js +0 -1
  91. package/dist/chunk-hrfdc0dt.js +0 -6
  92. package/dist/chunk-nnby8asg.js +0 -10
  93. package/dist/chunk-rj3cmn4b.js +0 -1
  94. package/dist/chunk-s6exb18e.js +0 -3
  95. package/dist/chunk-tps0kwhy.js +0 -1
  96. package/dist/chunk-tsfv04af.js +0 -1
  97. package/dist/chunk-v0sfs2b6.js +0 -1
  98. package/dist/chunk-vd17dtg7.js +0 -1
  99. package/dist/chunk-vy59rm9j.js +0 -2
  100. package/dist/chunk-xtaq5ck1.js +0 -2
  101. package/dist/chunk-xv1bz8f4.js +0 -1608
  102. package/dist/chunk-y7m792w3.js +0 -1
  103. package/dist/chunk-y9v884rp.js +0 -204
  104. package/dist/chunk-ykjpwdba.js +0 -1
  105. package/dist/chunk-zfpbkkdh.js +0 -22
  106. package/dist/web/assets/session-events-Bgb4zeFL.js +0 -22
package/dist/blade.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import{Tc as W}from"./chunk-1905jhyj.js";import{Wc as F,Xc as M}from"./chunk-q1v03abc.js";import"./chunk-aa4xya8p.js";import"./chunk-v508x7cg.js";import"./chunk-c2bgj76r.js";import"./chunk-44ep1v89.js";import"./chunk-jmyxhygx.js";import"./chunk-9afqfajf.js";import"./chunk-9jkbhaec.js";import"./chunk-0qjzgs1d.js";import"./chunk-vy59rm9j.js";import{Af as N,Bf as B}from"./chunk-km155c83.js";import{Ef as T}from"./chunk-xhxvde2k.js";import"./chunk-2nga4tsd.js";import"./chunk-07t42c40.js";import"./chunk-d0sej62r.js";import"./chunk-7hs1n09m.js";import"./chunk-b63dfss4.js";import"./chunk-7gsqx900.js";import{ig as J}from"./chunk-9wy7xryc.js";import v from"node:path";var E=process.argv.slice(2),I=u(E),p=I!==null;if(I!==null)T.setGlobalDebug(I);function u(Q){for(let Y=0;Y<Q.length;Y+=1){let U=Q[Y];if(U==="--debug"||U==="-d"){let X=Q[Y+1];return X&&!X.startsWith("-")?X:!0}if(U.startsWith("--debug="))return U.slice(8)||!0}return null}function c(Q){return Q.length===1&&(Q[0]==="--version"||Q[0]==="-V")}function q(Q,...Y){return Q.some((U)=>Y.some((X)=>U===X||U.startsWith(`${X}=`)))}function m(Q,...Y){let U=[];for(let X=0;X<Q.length;X+=1){let G=Q[X],z=Y.find(($)=>G.startsWith(`${$}=`));if(z){let $=G.slice(z.length+1);if($)U.push($);continue}if(Y.includes(G)){let $=Q[X+1];if($&&!$.startsWith("-"))U.push($),X+=1}}return U}async function t(){if(c(E)){let{getVersion:K}=await import("./chunk-hev5sqxy.js");console.log(K());return}let Q=process.cwd(),Y=F(Q);M(Y),N(B());let U=m(E,"--plugin-dir","--pluginDir");if(U.length>0){let{configureInvocationPluginDirs:K}=await import("./chunk-7b81rbkw.js");K(U.map((Z)=>v.resolve(Q,Z)))}if(q(E,"--trust-workspace","--trustWorkspace")){let{WorkspaceTrustService:K}=await import("./chunk-tps0kwhy.js");await K.getInstance().trust(B())}if(process.getuid&&process.getuid()===0){let K=!!process.env.SUDO_USER,Z=!!process.env.BLADE_ALLOW_ROOT;if(K&&!Z)console.error(""),console.error("Error: 请不要使用 sudo 运行 blade"),console.error(""),console.error("原因:"),console.error(" 使用 sudo 会创建属于 root 的配置文件,"),console.error(" 导致普通用户无法访问。"),console.error(""),console.error("正确用法:"),console.error(" blade # 直接运行,不要加 sudo"),console.error(""),console.error("如果遇到权限错误,请运行:"),console.error(" sudo chown -R $USER:$USER ~/.blade/"),console.error(""),console.error("如果你确实需要以 root 运行(容器/CI),设置环境变量:"),console.error(" BLADE_ALLOW_ROOT=1 blade"),console.error(""),process.exit(1)}if(q(E,"--headless")){let{handleHeadlessMode:K}=await import("./chunk-hrfdc0dt.js");if(await K())return}if(W(),q(E,"--print","-p")){let{handlePrintMode:K}=await import("./chunk-2q06pq10.js");if(await K())return}if(E.includes("--acp")){let{runAcpIntegration:K}=await import("./chunk-zfpbkkdh.js");await K();return}let[{default:X},{hideBin:G},{cliConfig:z,globalOptions:$},{loadConfiguration:_,validateOutput:D,validatePermissions:R},{doctorCommands:S},{installCommands:k},{mcpCommands:O},{projectsCommands:y},{scheduleCommands:b},{serveCommand:V},{updateCommands:P},{webCommand:x}]=await Promise.all([import("yargs"),import("yargs/helpers"),import("./chunk-a83cdn7b.js"),import("./chunk-rj3cmn4b.js"),import("./chunk-ktwp84cv.js"),import("./chunk-1v251p73.js"),import("./chunk-93zgz6v6.js"),import("./chunk-qfd0tees.js"),import("./chunk-qat3ara1.js"),import("./chunk-1y3jpc4s.js"),import("./chunk-vw6z3t41.js"),import("./chunk-nnby8asg.js")]),A=X(G(process.argv)).scriptName(z.scriptName).usage(z.usage).version(z.version).locale(z.locale).showHelpOnFail(z.showHelpOnFail).demandCommand(0,"").recommendCommands().strict(z.strict).parserConfiguration({"populate--":!0}).options($).middleware([_,R,D]).command(O).command(y).command(b).command(S).command(P).command(k).command(x).command(V).completion("completion",!1).help("help","Show help").alias("help","h").alias("version","V").fail((K,Z,L)=>{if(Z){if(console.error("An error occurred:"),console.error(Z.message),p&&Z.stack)console.error(`
2
+ import{Zc as W}from"./chunk-gw51xyz9.js";import{ad as F,bd as M}from"./chunk-h9v4tzdt.js";import"./chunk-3j57nm6f.js";import"./chunk-v508x7cg.js";import"./chunk-vybzvxf9.js";import"./chunk-wzjhwr2p.js";import"./chunk-bvnxztsj.js";import"./chunk-vzf17snk.js";import"./chunk-k05xt45s.js";import"./chunk-qj6gafse.js";import"./chunk-5hn788xk.js";import{Gf as N,Hf as B}from"./chunk-2rsr3bte.js";import{Kf as T}from"./chunk-amm23yvd.js";import"./chunk-40654rh3.js";import"./chunk-k9px24b5.js";import"./chunk-91vwv4ph.js";import"./chunk-23bkpq26.js";import"./chunk-20qedxrp.js";import"./chunk-f20mb84y.js";import{og as J}from"./chunk-d3h8cgs8.js";import v from"node:path";var E=process.argv.slice(2),I=u(E),p=I!==null;if(I!==null)T.setGlobalDebug(I);function u(Q){for(let Y=0;Y<Q.length;Y+=1){let U=Q[Y];if(U==="--debug"||U==="-d"){let X=Q[Y+1];return X&&!X.startsWith("-")?X:!0}if(U.startsWith("--debug="))return U.slice(8)||!0}return null}function c(Q){return Q.length===1&&(Q[0]==="--version"||Q[0]==="-V")}function q(Q,...Y){return Q.some((U)=>Y.some((X)=>U===X||U.startsWith(`${X}=`)))}function m(Q,...Y){let U=[];for(let X=0;X<Q.length;X+=1){let G=Q[X],z=Y.find(($)=>G.startsWith(`${$}=`));if(z){let $=G.slice(z.length+1);if($)U.push($);continue}if(Y.includes(G)){let $=Q[X+1];if($&&!$.startsWith("-"))U.push($),X+=1}}return U}async function t(){if(c(E)){let{getVersion:K}=await import("./chunk-gmpgmh7s.js");console.log(K());return}let Q=process.cwd(),Y=F(Q);M(Y),N(B());let U=m(E,"--plugin-dir","--pluginDir");if(U.length>0){let{configureInvocationPluginDirs:K}=await import("./chunk-bhj7dqe8.js");K(U.map((Z)=>v.resolve(Q,Z)))}if(q(E,"--trust-workspace","--trustWorkspace")){let{WorkspaceTrustService:K}=await import("./chunk-74js4dnw.js");await K.getInstance().trust(B())}if(process.getuid&&process.getuid()===0){let K=!!process.env.SUDO_USER,Z=!!process.env.BLADE_ALLOW_ROOT;if(K&&!Z)console.error(""),console.error("Error: 请不要使用 sudo 运行 blade"),console.error(""),console.error("原因:"),console.error(" 使用 sudo 会创建属于 root 的配置文件,"),console.error(" 导致普通用户无法访问。"),console.error(""),console.error("正确用法:"),console.error(" blade # 直接运行,不要加 sudo"),console.error(""),console.error("如果遇到权限错误,请运行:"),console.error(" sudo chown -R $USER:$USER ~/.blade/"),console.error(""),console.error("如果你确实需要以 root 运行(容器/CI),设置环境变量:"),console.error(" BLADE_ALLOW_ROOT=1 blade"),console.error(""),process.exit(1)}if(q(E,"--headless")){let{handleHeadlessMode:K}=await import("./chunk-wgnzghhc.js");if(await K())return}if(W(),q(E,"--print","-p")){let{handlePrintMode:K}=await import("./chunk-6bqd2hkz.js");if(await K())return}if(E.includes("--acp")){let{runAcpIntegration:K}=await import("./chunk-2s24zvjm.js");await K();return}let[{default:X},{hideBin:G},{cliConfig:z,globalOptions:$},{loadConfiguration:_,validateOutput:D,validatePermissions:R},{doctorCommands:S},{installCommands:k},{mcpCommands:O},{projectsCommands:y},{scheduleCommands:b},{serveCommand:V},{updateCommands:P},{webCommand:x}]=await Promise.all([import("yargs"),import("yargs/helpers"),import("./chunk-xfpne7cm.js"),import("./chunk-m6srq209.js"),import("./chunk-0k0k5qjr.js"),import("./chunk-vm0w0jt9.js"),import("./chunk-97mzk53w.js"),import("./chunk-tzragyzm.js"),import("./chunk-f9graf2n.js"),import("./chunk-dkz757cv.js"),import("./chunk-mdrdafpa.js"),import("./chunk-np2vrjpc.js")]),A=X(G(process.argv)).scriptName(z.scriptName).usage(z.usage).version(z.version).locale(z.locale).showHelpOnFail(z.showHelpOnFail).demandCommand(0,"").recommendCommands().strict(z.strict).parserConfiguration({"populate--":!0}).options($).middleware([_,R,D]).command(O).command(y).command(b).command(S).command(P).command(k).command(x).command(V).completion("completion",!1).help("help","Show help").alias("help","h").alias("version","V").fail((K,Z,L)=>{if(Z){if(console.error("An error occurred:"),console.error(Z.message),p&&Z.stack)console.error(`
3
3
  Stack trace:`),console.error(Z.stack);else console.error(`
4
4
  Run with --debug to show the stack trace.`);process.exit(1)}if(K)console.error("Error: Invalid arguments:"),console.error(K),console.error(`
5
- Hint: Did you mean:`),L.showHelp(),process.exit(1)}).command("$0",!1,()=>{},async(K)=>{let Z=K._.slice(1),L=Z.length>0?Z.join(" "):void 0,h=import("./chunk-tsfv04af.js").then(({checkVersionOnStartup:C})=>C()),[{render:w},{createElement:f},{AppWrapper:j}]=await Promise.all([import("ink"),import("react"),import("./chunk-bqmd7hp7.js")]),H={...K,initialMessage:L,debug:K.debug,print:Boolean(K.print),versionCheckPromise:h};delete H._,delete H.$0,delete H.message,w(f(j,H),{patchConsole:!0,exitOnCtrlC:!1,alternateBuffer:!1})});try{await A.parse()}catch(K){console.error("Error: Parse error:",K),process.exit(1)}}if(J.main==J.module)t().catch(console.error);export{t as main};
5
+ Hint: Did you mean:`),L.showHelp(),process.exit(1)}).command("$0",!1,()=>{},async(K)=>{let Z=K._.slice(1),L=Z.length>0?Z.join(" "):void 0,h=import("./chunk-08fww0yh.js").then(({checkVersionOnStartup:C})=>C()),[{render:w},{createElement:f},{AppWrapper:j}]=await Promise.all([import("ink"),import("react"),import("./chunk-kqe9y6ka.js")]),H={...K,initialMessage:L,debug:K.debug,print:Boolean(K.print),versionCheckPromise:h};delete H._,delete H.$0,delete H.message,w(f(j,H),{patchConsole:!0,exitOnCtrlC:!1,alternateBuffer:!1})});try{await A.parse()}catch(K){console.error("Error: Parse error:",K),process.exit(1)}}if(J.main==J.module)t().catch(console.error);export{t as main};
@@ -0,0 +1 @@
1
+ import{a,b,c,d,e}from"./chunk-f5yx8s8t.js";import"./chunk-91vwv4ph.js";import"./chunk-d3h8cgs8.js";export{b as setSkipUntilVersion,d as performUpgrade,c as getUpgradeCommand,e as checkVersionOnStartup,a as checkVersion};
@@ -1,4 +1,4 @@
1
- import"./chunk-v508x7cg.js";import{mf as Q}from"./chunk-9afqfajf.js";import"./chunk-9jkbhaec.js";import"./chunk-0qjzgs1d.js";import"./chunk-vy59rm9j.js";import{Bf as L}from"./chunk-km155c83.js";import"./chunk-xhxvde2k.js";import"./chunk-2nga4tsd.js";import"./chunk-07t42c40.js";import"./chunk-d0sej62r.js";import"./chunk-7hs1n09m.js";import"./chunk-b63dfss4.js";import"./chunk-7gsqx900.js";import{ig as F}from"./chunk-9wy7xryc.js";var K=[22,19,0];function T(G){let A=/^v?(\d+)\.(\d+)\.(\d+)/.exec(G);if(!A)return!1;let H=A.slice(1).map(Number);for(let z=0;z<K.length;z++){let B=H[z]??0,J=K[z];if(B!==J)return B>J}return!0}var X={command:"doctor",describe:"Check the health of your Blade installation",builder:(G)=>G.option("rebuild-index",{type:"boolean",default:!1,describe:"Rebuild the SQLite session index from JSONL transcripts"}),handler:async(G)=>{if(G.rebuildIndex){console.log(`Rebuilding session index from JSONL transcripts...
2
- `);try{let{rebuildProjectionIndex:z}=await import("./chunk-3gbrc75h.js"),{SessionService:B}=await import("./chunk-6pwgtmw3.js"),J=await z(B.projectionDeriverForSearch());if(J===null)console.log("[WARN] Session index unavailable (SQLite driver missing); reads fall back to JSONL scan.");else console.log(`[OK] Session index rebuilt: ${J} session(s) indexed.`)}catch(z){console.log("[FAIL] Session index rebuild failed"),console.log(` Error: ${z instanceof Error?z.message:"未知错误"}`),process.exit(1)}return}console.log(`Running Blade health check...
1
+ import"./chunk-v508x7cg.js";import{sf as Q}from"./chunk-vzf17snk.js";import"./chunk-k05xt45s.js";import"./chunk-qj6gafse.js";import"./chunk-5hn788xk.js";import{Hf as L}from"./chunk-2rsr3bte.js";import"./chunk-amm23yvd.js";import"./chunk-40654rh3.js";import"./chunk-k9px24b5.js";import"./chunk-91vwv4ph.js";import"./chunk-23bkpq26.js";import"./chunk-20qedxrp.js";import"./chunk-f20mb84y.js";import{og as F}from"./chunk-d3h8cgs8.js";var K=[22,19,0];function T(G){let A=/^v?(\d+)\.(\d+)\.(\d+)/.exec(G);if(!A)return!1;let H=A.slice(1).map(Number);for(let z=0;z<K.length;z++){let B=H[z]??0,J=K[z];if(B!==J)return B>J}return!0}var X={command:"doctor",describe:"Check the health of your Blade installation",builder:(G)=>G.option("rebuild-index",{type:"boolean",default:!1,describe:"Rebuild the SQLite session index from JSONL transcripts"}),handler:async(G)=>{if(G.rebuildIndex){console.log(`Rebuilding session index from JSONL transcripts...
2
+ `);try{let{rebuildProjectionIndex:z}=await import("./chunk-7ncx3vzw.js"),{SessionService:B}=await import("./chunk-ycvwc7hb.js"),J=await z(B.projectionDeriverForSearch());if(J===null)console.log("[WARN] Session index unavailable (SQLite driver missing); reads fall back to JSONL scan.");else console.log(`[OK] Session index rebuilt: ${J} session(s) indexed.`)}catch(z){console.log("[FAIL] Session index rebuild failed"),console.log(` Error: ${z instanceof Error?z.message:"未知错误"}`),process.exit(1)}return}console.log(`Running Blade health check...
3
3
  `);let A=0;try{await Q.getInstance().initialize(),console.log("[OK] Configuration: OK")}catch(z){console.log("[FAIL] Configuration: FAILED"),console.log(` Error: ${z instanceof Error?z.message:"未知错误"}`),A++}let H=process.version;if(T(H))console.log(`[OK] Node.js version: ${H}`);else console.log(`[WARN] Node.js version: ${H} (required: >=22.19.0)`),A++;try{let z=await import("fs/promises"),B=L();await z.access(B,(await import("fs")).constants.R_OK|(await import("fs")).constants.W_OK),console.log("[OK] File system permissions: OK")}catch(z){console.log("[FAIL] File system permissions: FAILED"),console.log(" Error: Cannot read/write in current directory"),A++}try{await import("ink"),console.log("[OK] Dependencies: OK")}catch(z){console.log("[FAIL] Dependencies: FAILED"),console.log(" Error: Missing required dependencies"),A++}if(console.log(`
4
4
  Health Check Summary:`),A===0)console.log("All checks passed! Blade is ready to use.");else console.log(`Warning: Found ${A} issue(s). Please resolve them for optimal performance.`),process.exit(1)}};export{T as isSupportedNodeVersion,X as doctorCommands};
@@ -15,4 +15,4 @@ More specific user instructions about presentation take precedence for that resp
15
15
  <communication_style>
16
16
  ${h.prompt}
17
17
  </communication_style>`}
18
- export{R as ne,z as oe,H as pe,W as qe,Z as re};
18
+ export{R as te,z as ue,H as ve,W as we,Z as xe};
@@ -1,2 +1,2 @@
1
1
  import{promises as A}from"node:fs";import q from"node:path";var J=new Map;async function L(B){let b=B;while(!0){try{return await A.lstat(q.join(b,".git")),b}catch(H){if(H.code!=="ENOENT")return}let E=q.dirname(b);if(E===b)return;b=E}}async function M(B){let b=q.join(B,".git"),E=await A.lstat(b);if(E.isDirectory())return B;if(!E.isFile())return;let H=await A.readFile(b,"utf8"),F=/^gitdir:\s*(.+)\s*$/im.exec(H);if(!F)return;let z=await A.realpath(q.isAbsolute(F[1])?F[1]:q.resolve(B,F[1])),I=z;try{let x=(await A.readFile(q.join(z,"commondir"),"utf8")).trim();if(x)I=await A.realpath(q.resolve(z,x))}catch(x){if(x.code!=="ENOENT")throw x}return q.basename(I)===".git"?A.realpath(q.dirname(I)):void 0}async function S(B){if(!q.isAbsolute(B))throw Error("Workspace path must be absolute");let b=await A.realpath(B),E=J.get(b);if(E)return E;let H=b;try{let z=await L(b);if(z){let I=await M(z),x=q.relative(z,b);if(I&&(x===""||!x.startsWith(`..${q.sep}`)&&x!==".."&&!q.isAbsolute(x))){let K=q.resolve(I,x);H=await A.realpath(K).catch(()=>K)}}}catch{}let F={projectPath:b,trustRoot:H};if(J.size>=512){let z=J.keys().next().value;if(z)J.delete(z)}return J.set(b,F),F}
2
- export{S as Zf};
2
+ export{S as dg};