blade-code 0.10.132 → 0.10.133

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 (123) hide show
  1. package/dist/blade.js +2 -2
  2. package/dist/{chunk-j3nmt09e.js → chunk-00zazdct.js} +2 -2
  3. package/dist/chunk-04yas0t8.js +1 -0
  4. package/dist/{chunk-pqsvz99n.js → chunk-0ap8b3sw.js} +1 -1
  5. package/dist/{chunk-tkydv9k8.js → chunk-0d440hhe.js} +1 -1
  6. package/dist/{chunk-td2jk2xn.js → chunk-0xph7bhe.js} +2 -2
  7. package/dist/{chunk-aaxc81jc.js → chunk-1tfjaazq.js} +1 -1
  8. package/dist/{chunk-v52wc8yg.js → chunk-2242dshn.js} +1 -1
  9. package/dist/{chunk-p00f53yq.js → chunk-2nv0kg12.js} +1 -1
  10. package/dist/chunk-2nxev7f2.js +1 -0
  11. package/dist/{chunk-6p6ts4kv.js → chunk-2qyh6qhb.js} +1 -1
  12. package/dist/{chunk-jkfkyedn.js → chunk-3csj18f1.js} +1 -1
  13. package/dist/{chunk-z03dtyh6.js → chunk-3ndwbb7h.js} +1 -1
  14. package/dist/chunk-43a0n5rw.js +1 -0
  15. package/dist/{chunk-zssz8hc4.js → chunk-4xhawy0e.js} +1 -1
  16. package/dist/{chunk-rj8mmwc6.js → chunk-555ffyze.js} +1 -1
  17. package/dist/{chunk-sfe4810k.js → chunk-5x3h9ak8.js} +1 -1
  18. package/dist/{chunk-sj1dzeta.js → chunk-679b7s58.js} +1 -1
  19. package/dist/chunk-78wwep9f.js +1 -0
  20. package/dist/{chunk-y0kqkewg.js → chunk-7hxyxv4x.js} +2 -2
  21. package/dist/{chunk-edtxcqxa.js → chunk-7j628q12.js} +1 -1
  22. package/dist/chunk-7zvwfz85.js +2 -0
  23. package/dist/{chunk-mvm1rzc4.js → chunk-87ycd3f8.js} +2 -2
  24. package/dist/{chunk-3e0t25rq.js → chunk-88jmtcv7.js} +2 -2
  25. package/dist/{chunk-2y1qngw7.js → chunk-8xem2mzy.js} +1 -1
  26. package/dist/{chunk-zwjrensv.js → chunk-961nemng.js} +1 -1
  27. package/dist/{chunk-ar5np5h5.js → chunk-ar3sdj0w.js} +2 -2
  28. package/dist/chunk-avf9spct.js +1 -0
  29. package/dist/chunk-azv25dg2.js +10 -0
  30. package/dist/chunk-b8c1vj8c.js +1 -0
  31. package/dist/chunk-bbw6s542.js +1 -0
  32. package/dist/{chunk-44jtpg8y.js → chunk-be2csw9m.js} +1 -1
  33. package/dist/{chunk-fag8rk53.js → chunk-bj8cgfbr.js} +1 -1
  34. package/dist/{chunk-6q3g5e3m.js → chunk-bzp08nf6.js} +1 -1
  35. package/dist/{chunk-a60cmnmz.js → chunk-cfamqqgv.js} +2 -2
  36. package/dist/{chunk-bavzm721.js → chunk-cz9mqkn2.js} +1 -1
  37. package/dist/{chunk-gmqpfm52.js → chunk-d881py5y.js} +2 -2
  38. package/dist/chunk-dnt4c3gy.js +2 -0
  39. package/dist/{chunk-sbc90z9j.js → chunk-e1q1hvty.js} +1 -1
  40. package/dist/chunk-eetva9y8.js +1 -0
  41. package/dist/{chunk-xjrmq0pg.js → chunk-f1wnva76.js} +3 -3
  42. package/dist/{chunk-prt6y5fv.js → chunk-f4pn5tmr.js} +1 -1
  43. package/dist/{chunk-pj69j4zp.js → chunk-fjvt9mwv.js} +1 -1
  44. package/dist/{chunk-r7kevfd3.js → chunk-gv24cgpb.js} +3 -3
  45. package/dist/{chunk-b5z1rec4.js → chunk-h123tjsg.js} +27 -27
  46. package/dist/{chunk-grhsv55v.js → chunk-h6tr3zz7.js} +1 -1
  47. package/dist/{chunk-0bkhpd72.js → chunk-jy61b0v8.js} +2 -2
  48. package/dist/chunk-kjjpn49y.js +1 -0
  49. package/dist/{chunk-dvb89529.js → chunk-ks67gd2j.js} +1 -1
  50. package/dist/chunk-kx61g7xw.js +1 -0
  51. package/dist/chunk-m30sbsnw.js +1 -0
  52. package/dist/{chunk-7dy3mzgz.js → chunk-mkvqtawj.js} +2 -2
  53. package/dist/{chunk-e371f7xk.js → chunk-ms360ds6.js} +2 -2
  54. package/dist/chunk-n589jxsm.js +1 -0
  55. package/dist/{chunk-749jzrbk.js → chunk-n7pydthh.js} +2 -2
  56. package/dist/{chunk-9gs4eqt8.js → chunk-ndgdf5jx.js} +1 -1
  57. package/dist/{chunk-93x9xbew.js → chunk-nfdfthhb.js} +1 -1
  58. package/dist/chunk-nry7d26k.js +2 -0
  59. package/dist/{chunk-8y08fytr.js → chunk-nyk5q71k.js} +1 -1
  60. package/dist/{chunk-g1bqjdeq.js → chunk-p8y5kk56.js} +1 -1
  61. package/dist/{chunk-sm9p1fkf.js → chunk-py92cy57.js} +1 -1
  62. package/dist/{chunk-mdew58v9.js → chunk-r4bgsfj6.js} +1 -1
  63. package/dist/{chunk-dfjmvj3d.js → chunk-rcthrb7h.js} +2 -2
  64. package/dist/{chunk-ajsw4te2.js → chunk-rkjrft19.js} +2 -2
  65. package/dist/{chunk-qcvxff27.js → chunk-rmm7n9n3.js} +2 -2
  66. package/dist/chunk-sr9gqacp.js +1 -0
  67. package/dist/{chunk-mg1s861p.js → chunk-sxqydew5.js} +1 -1
  68. package/dist/{chunk-xyxjcehh.js → chunk-t52v91dy.js} +1 -1
  69. package/dist/chunk-v7zt3pft.js +171 -0
  70. package/dist/{chunk-zkzhm39s.js → chunk-w3y69e4e.js} +1 -1
  71. package/dist/{chunk-t8rjxqp2.js → chunk-x1w3fvhr.js} +2 -2
  72. package/dist/{chunk-qcydkn1n.js → chunk-xgz1yanb.js} +1 -1
  73. package/dist/{chunk-g4xny949.js → chunk-yvk8w63g.js} +1 -1
  74. package/dist/{chunk-sx77dpxw.js → chunk-z5mm9g1y.js} +1 -1
  75. package/dist/web/assets/{ChatView-CkmlibKO.js → ChatView-hYd9mmJ6.js} +4 -4
  76. package/dist/web/assets/{CodeBlockHighlighter-DR5RLA1_.js → CodeBlockHighlighter-D0yM8QTf.js} +1 -1
  77. package/dist/web/assets/{FilePreview-C4tqzUOM.js → FilePreview-CaTCjV5i.js} +1 -1
  78. package/dist/web/assets/{KanbanBoard-D7HJQXE2.js → KanbanBoard-BY0SXCol.js} +1 -1
  79. package/dist/web/assets/{MarkdownRenderer-Ct8vtONO.js → MarkdownRenderer-zKto-Pty.js} +3 -3
  80. package/dist/web/assets/{ScrollArea-CMSE6nO4.js → ScrollArea-1qPJ8lcT.js} +1 -1
  81. package/dist/web/assets/{SessionHistorySurface-BPwnF9ND.js → SessionHistorySurface-Ce9xX62q.js} +1 -1
  82. package/dist/web/assets/{SettingsModal-KW5WYAov.js → SettingsModal-BxKOMuIm.js} +1 -1
  83. package/dist/web/assets/{Sidebar-8BUNEHHQ.js → Sidebar-CEF6lGps.js} +1 -1
  84. package/dist/web/assets/{TaskSwitcher-CZfkp2L_.js → TaskSwitcher-C-EY0nVG.js} +1 -1
  85. package/dist/web/assets/{TerminalPanel-DBBMaU_6.js → TerminalPanel-C3PVDyAr.js} +1 -1
  86. package/dist/web/assets/{archive-tBd5snSF.js → archive-D5Nuw__Q.js} +1 -1
  87. package/dist/web/assets/{arrow-left-Cs_sFMp-.js → arrow-left-DaOpfgEz.js} +1 -1
  88. package/dist/web/assets/{calendar-clock-C0ue6XTy.js → calendar-clock-DA_D4ppV.js} +1 -1
  89. package/dist/web/assets/{chevron-right-DZHCUfAH.js → chevron-right-COQAoZf3.js} +1 -1
  90. package/dist/web/assets/{chevrons-up-down-BSa16Scz.js → chevrons-up-down-B_WSFixv.js} +1 -1
  91. package/dist/web/assets/{clock-3-DstAM2AR.js → clock-3-DJ-pSj3t.js} +1 -1
  92. package/dist/web/assets/{copy-BfnFXTgG.js → copy-5c0ESKoo.js} +1 -1
  93. package/dist/web/assets/{download-XKyNtMnj.js → download-VkaTciEH.js} +1 -1
  94. package/dist/web/assets/{external-link-3bcWFMya.js → external-link-BypdqupZ.js} +1 -1
  95. package/dist/web/assets/{folder-D7hQLvy7.js → folder-B8znObPL.js} +1 -1
  96. package/dist/web/assets/{index-CCdnLriX.js → index-DorkRCqS.js} +12 -12
  97. package/dist/web/assets/{pause-CBR55GXy.js → pause-BWbHHYG6.js} +1 -1
  98. package/dist/web/assets/{pencil-8yqeFHC4.js → pencil-BPyvvR59.js} +1 -1
  99. package/dist/web/assets/{play-F_Spkp4p.js → play-CLJgUH4S.js} +1 -1
  100. package/dist/web/assets/{plus-CJCqq3rG.js → plus-D1VVvu-z.js} +1 -1
  101. package/dist/web/assets/{settings-G6riyt4S.js → settings-CGCgC_NX.js} +1 -1
  102. package/dist/web/assets/{teamService-Cixkq48S.js → teamService-DsYRmp6u.js} +1 -1
  103. package/dist/web/assets/{terminal-_Nebc2yj.js → terminal-pA96HZrI.js} +1 -1
  104. package/dist/web/index.html +1 -1
  105. package/package.json +2 -2
  106. package/dist/chunk-0gmbvtpp.js +0 -1
  107. package/dist/chunk-0z9nqbd0.js +0 -2
  108. package/dist/chunk-14z94k0r.js +0 -1
  109. package/dist/chunk-53j6nh8j.js +0 -1
  110. package/dist/chunk-64kg5a9r.js +0 -1
  111. package/dist/chunk-9d49tj9y.js +0 -2
  112. package/dist/chunk-9s8saznq.js +0 -1
  113. package/dist/chunk-dhzbac1c.js +0 -1
  114. package/dist/chunk-f8gb685p.js +0 -2
  115. package/dist/chunk-g12kqs1b.js +0 -1
  116. package/dist/chunk-kd3k1q9z.js +0 -1
  117. package/dist/chunk-m9mw8ppy.js +0 -1
  118. package/dist/chunk-pkg1bvzc.js +0 -1
  119. package/dist/chunk-q7m0tvhw.js +0 -1
  120. package/dist/chunk-sf9sbm6y.js +0 -1
  121. package/dist/chunk-z28dcrr9.js +0 -10
  122. package/dist/chunk-z83xk6jn.js +0 -1
  123. package/dist/chunk-znqt5g8v.js +0 -170
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-CCdnLriX.js";/**
1
+ import{c as e}from"./index-DorkRCqS.js";/**
2
2
  * @license lucide-react v0.300.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-CCdnLriX.js";/**
1
+ import{c as e}from"./index-DorkRCqS.js";/**
2
2
  * @license lucide-react v0.300.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as o}from"./index-CCdnLriX.js";/**
1
+ import{c as o}from"./index-DorkRCqS.js";/**
2
2
  * @license lucide-react v0.300.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-CCdnLriX.js";/**
1
+ import{c as e}from"./index-DorkRCqS.js";/**
2
2
  * @license lucide-react v0.300.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as a}from"./index-CCdnLriX.js";/**
1
+ import{c as a}from"./index-DorkRCqS.js";/**
2
2
  * @license lucide-react v0.300.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1 +1 @@
1
- import{ap as e,aq as t,ar as a,Y as s,as as m}from"./index-CCdnLriX.js";import"./vendor-react-DofNRwfy.js";import"./vendor-radix-D6QrtXqd.js";import"./session-events-C6fPz20c.js";const p=e(t.Object({id:t.String(),name:t.String(),subagentType:t.String(),description:t.String(),agentId:t.Optional(t.String()),status:a(["leader","running","completed","failed","cancelled","unknown"]),result:t.Optional(t.Unknown()),stats:t.Optional(t.Unknown()),worktreePath:t.Optional(t.String())})),d=e(t.Object({id:t.String(),subject:t.String(),description:t.String(),status:a(["pending","blocked","running","completed"]),owner:t.Optional(t.String()),priority:a(["high","medium","low"]),dependsOn:t.Array(t.String()),blocks:t.Array(t.String()),result:t.Optional(t.String()),createdAt:t.String(),startedAt:t.Optional(t.String()),completedAt:t.Optional(t.String())})),o=e(t.Object({name:t.String(),description:t.Optional(t.String()),status:a(["idle","running","completed","failed","deleted"]),leadAgentId:t.String(),leadSessionId:t.Optional(t.String()),workspaceRoot:t.Optional(t.String()),peerMessagingEnabled:t.Boolean(),createdAt:t.Number(),updatedAt:t.Number(),deletedAt:t.Optional(t.Number()),members:t.Array(p),tasks:t.Array(d)}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),name:t.String({minLength:1}),description:t.Optional(t.String()),leadAgentType:t.Optional(t.String()),peerMessagingEnabled:t.Optional(t.Boolean()),members:t.Array(t.Object({name:t.String({minLength:1}),subagentType:t.String({minLength:1}),description:t.Optional(t.String()),prompt:t.String({minLength:10,maxLength:32*1024})}),{maxItems:32}),tasks:t.Optional(t.Array(t.Object({subject:t.String({minLength:1}),description:t.String({minLength:1}),dependsOn:t.Optional(t.Array(t.String())),assignedTo:t.Optional(t.String()),priority:t.Optional(a(["high","medium","low"]))}),{maxItems:256}))}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),to:t.String({minLength:1}),message:t.String({minLength:1,maxLength:32*1024})}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),memberId:t.String({minLength:1})}));const S=t.Array(o),u={list:async n=>{const i=new URLSearchParams({sessionId:n.sessionId,projectPath:n.projectPath});return m(S,await s(`/teams?${i.toString()}`))},sendMessage:async(n,i,r,g)=>{await s(`/teams/${encodeURIComponent(i)}/messages`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:n.sessionId,projectPath:n.projectPath,to:r,message:g})})},delete:async(n,i)=>{const r=new URLSearchParams({sessionId:n.sessionId,projectPath:n.projectPath});return o.parse(await s(`/teams/${encodeURIComponent(i)}?${r.toString()}`,{method:"DELETE"}))}};export{u as teamService};
1
+ import{ap as e,aq as t,ar as a,Y as s,as as m}from"./index-DorkRCqS.js";import"./vendor-react-DofNRwfy.js";import"./vendor-radix-D6QrtXqd.js";import"./session-events-C6fPz20c.js";const p=e(t.Object({id:t.String(),name:t.String(),subagentType:t.String(),description:t.String(),agentId:t.Optional(t.String()),status:a(["leader","running","completed","failed","cancelled","unknown"]),result:t.Optional(t.Unknown()),stats:t.Optional(t.Unknown()),worktreePath:t.Optional(t.String())})),d=e(t.Object({id:t.String(),subject:t.String(),description:t.String(),status:a(["pending","blocked","running","completed"]),owner:t.Optional(t.String()),priority:a(["high","medium","low"]),dependsOn:t.Array(t.String()),blocks:t.Array(t.String()),result:t.Optional(t.String()),createdAt:t.String(),startedAt:t.Optional(t.String()),completedAt:t.Optional(t.String())})),o=e(t.Object({name:t.String(),description:t.Optional(t.String()),status:a(["idle","running","completed","failed","deleted"]),leadAgentId:t.String(),leadSessionId:t.Optional(t.String()),workspaceRoot:t.Optional(t.String()),peerMessagingEnabled:t.Boolean(),createdAt:t.Number(),updatedAt:t.Number(),deletedAt:t.Optional(t.Number()),members:t.Array(p),tasks:t.Array(d)}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),name:t.String({minLength:1}),description:t.Optional(t.String()),leadAgentType:t.Optional(t.String()),peerMessagingEnabled:t.Optional(t.Boolean()),members:t.Array(t.Object({name:t.String({minLength:1}),subagentType:t.String({minLength:1}),description:t.Optional(t.String()),prompt:t.String({minLength:10,maxLength:32*1024})}),{maxItems:32}),tasks:t.Optional(t.Array(t.Object({subject:t.String({minLength:1}),description:t.String({minLength:1}),dependsOn:t.Optional(t.Array(t.String())),assignedTo:t.Optional(t.String()),priority:t.Optional(a(["high","medium","low"]))}),{maxItems:256}))}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),to:t.String({minLength:1}),message:t.String({minLength:1,maxLength:32*1024})}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),memberId:t.String({minLength:1})}));const S=t.Array(o),u={list:async n=>{const i=new URLSearchParams({sessionId:n.sessionId,projectPath:n.projectPath});return m(S,await s(`/teams?${i.toString()}`))},sendMessage:async(n,i,r,g)=>{await s(`/teams/${encodeURIComponent(i)}/messages`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:n.sessionId,projectPath:n.projectPath,to:r,message:g})})},delete:async(n,i)=>{const r=new URLSearchParams({sessionId:n.sessionId,projectPath:n.projectPath});return o.parse(await s(`/teams/${encodeURIComponent(i)}?${r.toString()}`,{method:"DELETE"}))}};export{u as teamService};
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-CCdnLriX.js";/**
1
+ import{c as e}from"./index-DorkRCqS.js";/**
2
2
  * @license lucide-react v0.300.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -5,7 +5,7 @@
5
5
  <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
6
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
7
  <title>BladeCode</title>
8
- <script type="module" crossorigin src="/assets/index-CCdnLriX.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-DorkRCqS.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/vendor-react-DofNRwfy.js">
10
10
  <link rel="modulepreload" crossorigin href="/assets/vendor-radix-D6QrtXqd.js">
11
11
  <link rel="stylesheet" crossorigin href="/assets/index-B4186fIT.css">
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blade-code",
3
- "version": "0.10.132",
3
+ "version": "0.10.133",
4
4
  "private": false,
5
5
  "description": "🗡️ Blade Code - 智能代码助手命令行工具",
6
6
  "type": "module",
@@ -18,7 +18,7 @@
18
18
  "build": "rm -rf dist && node scripts/run-bun.js run scripts/build.ts",
19
19
  "start": "node scripts/run-bun.js run dist/blade.js",
20
20
  "test": "node scripts/test.js",
21
- "test:all": "vitest run --config vitest.config.ts --project='!performance' && vitest run --config vitest.config.ts --project=performance",
21
+ "test:all": "node scripts/test.js all",
22
22
  "test:unit": "node scripts/test.js unit",
23
23
  "test:integration": "node scripts/test.js integration",
24
24
  "test:real-api": "node scripts/test.js realApi",
@@ -1 +0,0 @@
1
- import{Ag as a,Bg as b,Cg as c,Dg as d,Eg as e,Fg as f,Gg as g,Hg as h,Ig as i,Jg as j,Kg as k}from"./chunk-t8rjxqp2.js";import"./chunk-sx77dpxw.js";import"./chunk-aaxc81jc.js";import"./chunk-93x9xbew.js";import"./chunk-r7kevfd3.js";import"./chunk-g4xny949.js";import"./chunk-0bkhpd72.js";import"./chunk-jkfkyedn.js";import"./chunk-f8gb685p.js";import"./chunk-44jtpg8y.js";import"./chunk-sj1dzeta.js";import"./chunk-2y1qngw7.js";import"./chunk-ar5np5h5.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import"./chunk-9d49tj9y.js";import"./chunk-qcvxff27.js";import"./chunk-zwjrensv.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{g as withWorkspaceAgentResources,i as snapshotWorkspaceAgentResources,f as resolveWorkspaceAgentResources,k as resetWorkspaceAgentResources,d as refreshWorkspaceCommunicationStyles,h as getWorkspaceAgentResourceCacheStats,j as createEmptySessionAgentResources,e as configureInvocationPluginDirs,c as WorkspaceAgentResourceCapacityError,a as MAX_RESIDENT_WORKSPACE_AGENT_RESOURCES,b as MAX_ACTIVE_WORKSPACE_AGENT_RESOURCES};
@@ -1,2 +0,0 @@
1
- import{Li as d,Mi as k,Oi as q}from"./chunk-sj1dzeta.js";function j(F){return d.Object(F,{additionalProperties:!1})}var G=d.String({pattern:"^acp-remote-workspace:[A-Za-z0-9_-]{43}$"}),B=d.Optional(d.Integer({minimum:1,maximum:100})),w=d.String({minLength:1,maxLength:200,pattern:"^[A-Za-z0-9_-][A-Za-z0-9._-]{0,199}$"}),x=k(d.Union([j({version:d.Literal(2),sessionId:w,workspace:j({kind:d.Literal("local"),projectPath:d.String({minLength:1})})}),j({version:d.Literal(2),sessionId:w,workspace:j({kind:d.Literal("acp-remote"),workspaceRef:G})})])),z=k(q(["history-only","owner-offline","owner-mismatch","archived","surface-not-supported","capability-not-advertised"])),I=k(j({connection:q(["local","online","offline"]),history:j({read:d.Boolean(),fork:d.Boolean()}),turn:j({start:d.Boolean(),reason:d.Optional(z)}),files:j({readText:d.Boolean(),writeText:d.Boolean(),browse:q(["none","known-files","tree"]),reason:d.Optional(z)}),terminal:j({mode:q(["none","command","interactive"]),owner:q(["none","local","acp-remote"]),reason:d.Optional(z)})})),J=k(j({id:d.String({pattern:"^surface-message:[0-9]+:.+$"}),role:q(["user","assistant"]),content:d.String(),timestamp:d.String({minLength:1}),truncated:d.Optional(d.Boolean())})),K=q(["queued","running","completed","failed","cancelled","interrupted"]),L=q(["posix","win32"]),N=q(["subagent","fork"]),A=d.String({minLength:1}),D=d.String({minLength:1}),E=k(j({locator:x,displayCwd:d.String({minLength:1}),pathStyle:d.Optional(L),title:d.Optional(d.String()),rootId:w,parentId:d.Optional(w),relationType:d.Optional(N),taskStatus:K,messageCount:d.Integer({minimum:0}),firstMessageTime:d.String({minLength:1}),lastMessageTime:d.String({minLength:1}),hasErrors:d.Boolean(),archivedAt:d.Optional(d.String({minLength:1})),selectedModelId:d.Optional(d.String({minLength:1})),capabilities:I})),O=k(q(["invalid_session_surface_request","invalid_session_locator","session_surface_not_found","workspace_binding_mismatch","session_surface_cursor_invalid","session_surface_snapshot_changed","session_surface_read_only","session_surface_capability_unavailable","session_surface_capacity","session_surface_unavailable","session_surface_state_invalid"])),V=k(j({error:j({code:O,message:d.String({minLength:1}),retryable:d.Boolean()})})),W=k(j({sessions:d.Array(E),nextCursor:d.Optional(A)})),Q=k(j({messages:d.Array(J),olderCursor:d.Optional(A),snapshot:D,truncated:d.Boolean()})),X=k(j({locator:x,limit:B})),Y=k(j({session:E,history:Q})),Z=k(j({locator:x,cursor:A,expectedSnapshot:D,limit:B})),_=k(j({locator:x}));
2
- export{x as Se,J as Te,E as Ue,V as Ve,W as We,Q as Xe,X as Ye,Y as Ze,Z as _e,_ as $e};
@@ -1 +0,0 @@
1
- import{a,b as i,c as l,d as m}from"./chunk-sm9p1fkf.js";import"./chunk-dvb89529.js";import"./chunk-grhsv55v.js";import"./chunk-bavzm721.js";import"./chunk-qcydkn1n.js";import"./chunk-6q3g5e3m.js";import"./chunk-xjrmq0pg.js";import"./chunk-6p6ts4kv.js";import"./chunk-sbc90z9j.js";import"./chunk-v52wc8yg.js";import"./chunk-3e0t25rq.js";import"./chunk-77efqpdc.js";import"./chunk-rj8mmwc6.js";import"./chunk-53h87fmt.js";import"./chunk-b5z1rec4.js";import"./chunk-0z9nqbd0.js";import{hf as n}from"./chunk-y0kqkewg.js";import"./chunk-a60cmnmz.js";import{Df as s}from"./chunk-j3nmt09e.js";import"./chunk-v508x7cg.js";import"./chunk-mdew58v9.js";import"./chunk-ajsw4te2.js";import"./chunk-mvm1rzc4.js";import"./chunk-edtxcqxa.js";import"./chunk-e371f7xk.js";import"./chunk-t8rjxqp2.js";import"./chunk-sx77dpxw.js";import"./chunk-aaxc81jc.js";import"./chunk-93x9xbew.js";import"./chunk-r7kevfd3.js";import"./chunk-g4xny949.js";import"./chunk-0bkhpd72.js";import"./chunk-jkfkyedn.js";import"./chunk-f8gb685p.js";import"./chunk-44jtpg8y.js";import"./chunk-sj1dzeta.js";import"./chunk-2y1qngw7.js";import"./chunk-ar5np5h5.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import"./chunk-9d49tj9y.js";import"./chunk-qcvxff27.js";import"./chunk-zwjrensv.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";import v from"chalk";var C={command:"serve",describe:"Start a headless Blade server (no browser)",builder:a,handler:async(p)=>{let r=i(p);if(await s(),!process.env.BLADE_SERVER_PASSWORD)console.log(v.yellow("Warning: BLADE_SERVER_PASSWORD is not set; server is unsecured."));let e=await m.listenAsync(r);if(console.log(`Blade server listening on http://${e.hostname}:${e.port}`),r.hostname==="0.0.0.0"){let o=l();for(let g of o)console.log(` Network: http://${g}:${e.port}`)}let t,c=new Promise((o)=>{t=o}),d=n(async()=>{await e.stop(),t()});try{await c}finally{d(),await e.stop()}}};export{C as serveCommand};
@@ -1 +0,0 @@
1
- import{Nd as a,Od as b,Pd as c,Qd as d,Rd as e,Sd as f,Td as g}from"./chunk-rj8mmwc6.js";import"./chunk-53h87fmt.js";import"./chunk-b5z1rec4.js";import"./chunk-0z9nqbd0.js";import"./chunk-edtxcqxa.js";import"./chunk-aaxc81jc.js";import"./chunk-g4xny949.js";import"./chunk-f8gb685p.js";import"./chunk-44jtpg8y.js";import"./chunk-sj1dzeta.js";import"./chunk-ar5np5h5.js";import"./chunk-tkydv9k8.js";import"./chunk-9d49tj9y.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{b as __setSessionSnapshotIOForTesting,c as __resetSessionSnapshotIOForTesting,g as SessionService,d as SessionMissingCreationError,e as SessionArchivedError,f as SessionArchiveConflictError,a as STALE_EMPTY_SESSION_AGE_MS};
@@ -1 +0,0 @@
1
- import{$b as p,Bb as a,Cb as b,Eb as c,Ib as d,Jb as e,Kb as f,Lb as g,Mb as h,Nb as i,Ob as j,Pb as k,Wb as l,Xb as m,Yb as n,Zb as o,ac as q,bc as r}from"./chunk-3e0t25rq.js";import"./chunk-77efqpdc.js";import"./chunk-rj8mmwc6.js";import"./chunk-53h87fmt.js";import"./chunk-b5z1rec4.js";import"./chunk-0z9nqbd0.js";import"./chunk-mdew58v9.js";import"./chunk-ajsw4te2.js";import"./chunk-edtxcqxa.js";import"./chunk-sx77dpxw.js";import"./chunk-aaxc81jc.js";import"./chunk-r7kevfd3.js";import"./chunk-g4xny949.js";import"./chunk-jkfkyedn.js";import"./chunk-f8gb685p.js";import"./chunk-44jtpg8y.js";import"./chunk-sj1dzeta.js";import"./chunk-2y1qngw7.js";import"./chunk-ar5np5h5.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import"./chunk-9d49tj9y.js";import"./chunk-zwjrensv.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{g as saveUserMessage,i as saveToolUse,j as saveToolResult,k as saveCompaction,h as saveAssistantMessage,d as isRootSystemPrompt,m as handleTaskListUpdate,n as handleSkillActivation,o as extractModelSwitch,r as executeLoopGenerator,f as drainLoop,c as checkStopHook,a as checkOutputRecovery,b as checkIncompleteIntent,q as checkAndCompactInLoop,p as applyToolDomainEffects,l as StreamingToolExecutor,e as ConversationState};
@@ -1,2 +0,0 @@
1
- import{readFileSync as l}from"node:fs";import{dirname as o,join as u}from"node:path";import{fileURLToPath as a}from"node:url";var e={name:"blade-code",version:"0.10.132",private:!1,description:"🗡️ Blade Code - 智能代码助手命令行工具",type:"module",bin:{blade:"dist/blade.js"},files:["dist","vendor/ripgrep/**","README.md"],scripts:{dev:"node scripts/run-bun.js --watch src/blade.tsx","dev:serve":"node scripts/run-bun.js --watch src/blade.tsx serve --port 4097",build:"rm -rf dist && node scripts/run-bun.js run scripts/build.ts",start:"node scripts/run-bun.js run dist/blade.js",test:"node scripts/test.js","test:all":"vitest run --config vitest.config.ts --project='!performance' && vitest run --config vitest.config.ts --project=performance","test:unit":"node scripts/test.js unit","test:integration":"node scripts/test.js integration","test:real-api":"node scripts/test.js realApi","test:real-api:qualification":"node scripts/test.js realApiQualification","test:cli":"node scripts/test.js cli","test:headless-core":"node scripts/test.js headlessCore","test:e2e":"node scripts/test.js e2e","test:performance":"node scripts/test.js performance","test:snapshot":"node scripts/test.js snapshot","test:security":"node scripts/test.js security","browser:install":"playwright install chromium","browser:check":"node scripts/run-bun.js run scripts/browser-check.ts","test:coverage":"node scripts/test.js all --coverage","test:watch":"vitest --watch --config vitest.config.ts","qualify:local":"node scripts/run-bun.js run scripts/qualify.ts local","qualify:production":"node scripts/run-bun.js run scripts/qualify.ts production","benchmark:repo":"node scripts/run-bun.js run scripts/run-real-repo-benchmark.ts","test:update-snapshots":"node scripts/test.js snapshot --update",lint:"biome lint src tests","lint:fix":"biome lint --write src tests","type-check":"tsc --noEmit","format:check":"biome format src tests",ready:"node scripts/run-bun.js run scripts/qualify.ts production","detect-unused":"node scripts/run-bun.js run scripts/detect-unused.ts",prepack:"node scripts/run-bun.js run build",release:"node scripts/release.js","release:dry":"node scripts/release.js --dry-run","release:major":"node scripts/release.js --major","release:minor":"node scripts/release.js --minor","release:patch":"node scripts/release.js --patch"},keywords:["cli","blade","ai","assistant","agent","llm"],author:"echoVic",license:"MIT",repository:{type:"git",url:"git+https://github.com/echoVic/blade-code.git"},homepage:"https://github.com/echoVic/blade-code#readme",bugs:{url:"https://github.com/echoVic/blade-code/issues"},engines:{node:">=22.19.0"},optionalDependencies:{"@vscode/ripgrep":"^1.18.0","better-sqlite3":"^11.8.1","bun-pty":"^0.4.8","node-pty":"1.1.0"},dependencies:{"@agentclientprotocol/sdk":"^1.3.0","@anthropic-ai/sandbox-runtime":"0.0.67","@earendil-works/pi-ai":"0.84.2","@inkjs/ui":"^2.0.0","@modelcontextprotocol/sdk":"^1.30.0",ahooks:"^3.9.7",ajv:"^8.17.1","ansi-escapes":"^7.3.0","async-mutex":"^0.5.0",axios:"^1.19.0",chalk:"^5.4.1",diff:"^8.0.2","fast-glob":"^3.3.3","fuse.js":"^7.5.0","gray-matter":"^4.0.3",hono:"^4.13.0",ink:"npm:@jrichman/ink@6.4.10","ink-big-text":"^2.0.0","ink-gradient":"^3.0.0","ink-select-input":"^6.2.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","js-tiktoken":"^1.0.21","lodash-es":"^4.18.1",lowlight:"^3.3.0","lru-cache":"^11.5.2",nanoid:"^5.1.6",open:"^10.1.2",picomatch:"^4.0.5",playwright:"1.62.1","proper-lockfile":"^4.1.2",react:"19.2.4","react-dom":"19.2.4",semver:"^7.8.5","string-width":"^8.2.2",typebox:"1.3.10",undici:"^7.16.0","vscode-jsonrpc":"8.2.1","vscode-languageserver-protocol":"3.17.5","vscode-languageserver-types":"3.17.5","write-file-atomic":"^7.0.0",ws:"^8.21.2",yaml:"^2.9.0",yargs:"^18.1.0",zustand:"^5.0.14"},devDependencies:{"@biomejs/biome":"2.5.7","@types/bun":"^1.3.14","@types/json-schema":"^7.0.15","@types/lodash-es":"^4.17.12","@types/node":"^22.15.24","@types/picomatch":"^4.0.3","@types/proper-lockfile":"^4.1.4","@types/react":"19.2.10","@types/react-dom":"19.2.3","@types/semver":"^7.8.0","@types/write-file-atomic":"^4.0.3","@types/ws":"^8.18.1","@types/yargs":"^17.0.35","@vitest/coverage-v8":"^4.1.10",jsdom:"^26.0.0",typescript:"^5.9.2",vitest:"^4.1.10"}};var s;function r(){if(s)return s;let i=o(a(import.meta.url));for(let n=0;n<5;n++){try{let t=JSON.parse(l(u(i,"package.json"),"utf8"));if(t.name===e.name&&typeof t.version==="string"&&typeof t.description==="string")return s=t,s}catch{}i=o(i)}return s={name:e.name,version:process.env.BLADE_VERSION??e.version,description:e.description},s}function y(){return{...r()}}function p(){return r().version}function v(){return r().name}function g(){return r().description}function f(){return`v${p()}`}function w(){return`v${p()} © 2025 Blade Code`}
2
- export{y as Bj,p as Cj,v as Dj,g as Ej,f as Fj,w as Gj};
@@ -1 +0,0 @@
1
- import{Hj as a,Ij as b,Jj as c}from"./chunk-qcvxff27.js";import"./chunk-zwjrensv.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{b as isWorkspaceTrusted,c as WorkspaceTrustService,a as MAX_RESIDENT_WORKSPACE_TRUST_STATUSES};
@@ -1 +0,0 @@
1
- import{eg as a,fg as b,gg as c,hg as d}from"./chunk-e371f7xk.js";import"./chunk-0bkhpd72.js";import"./chunk-jkfkyedn.js";import"./chunk-f8gb685p.js";import"./chunk-44jtpg8y.js";import"./chunk-sj1dzeta.js";import"./chunk-2y1qngw7.js";import"./chunk-ar5np5h5.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import"./chunk-9d49tj9y.js";import"./chunk-qcvxff27.js";import"./chunk-zwjrensv.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{c as snapshotWorkspaceModelResources,b as resolveWorkspaceModelResources,d as createProcessModelResources,a as cloneWorkspaceModelConfig};
@@ -1,2 +0,0 @@
1
- var _=20,E=5242880,T=32768,A=1e6,S=4194304;
2
- export{_ as Ai,E as Bi,T as Ci,A as Di,S as Ei};
@@ -1 +0,0 @@
1
- import{Bj as a,Cj as b,Dj as c,Ej as d,Fj as e,Gj as f}from"./chunk-9d49tj9y.js";import"./chunk-zkzhm39s.js";export{b as getVersion,c as getPackageName,a as getPackageInfo,e as getFormattedVersion,d as getDescription,f as getCopyright};
@@ -1 +0,0 @@
1
- import{_f as a}from"./chunk-ajsw4te2.js";import"./chunk-2y1qngw7.js";import"./chunk-ar5np5h5.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{a as createChatServiceAsync};
@@ -1 +0,0 @@
1
- import{$f as a,ag as b,bg as c}from"./chunk-mvm1rzc4.js";import"./chunk-edtxcqxa.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{b as resolveModelConfig,c as getModelDisplayName,a as getModelApiKeyEnvironmentVariable};
@@ -1 +0,0 @@
1
- import{cf as a,df as b,ef as c}from"./chunk-749jzrbk.js";import"./chunk-gmqpfm52.js";import"./chunk-j3nmt09e.js";import"./chunk-v508x7cg.js";import"./chunk-mdew58v9.js";import"./chunk-93x9xbew.js";import"./chunk-0bkhpd72.js";import"./chunk-jkfkyedn.js";import"./chunk-f8gb685p.js";import"./chunk-44jtpg8y.js";import"./chunk-sj1dzeta.js";import"./chunk-2y1qngw7.js";import"./chunk-ar5np5h5.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import"./chunk-9d49tj9y.js";import"./chunk-qcvxff27.js";import"./chunk-zwjrensv.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{a as validatePermissions,c as validateOutput,b as loadConfiguration};
@@ -1 +0,0 @@
1
- import{af as a,bf as b}from"./chunk-7dy3mzgz.js";import"./chunk-9d49tj9y.js";import"./chunk-zkzhm39s.js";export{a as globalOptions,b as cliConfig};
@@ -1 +0,0 @@
1
- import{Af as d,Bf as e,Cf as f,Df as g,Ef as h,Ff as i,Gf as j,Hf as k,If as l,Jf as m,Kf as n,Lf as o,Mf as p,Nf as q,xf as a,yf as b,zf as c}from"./chunk-j3nmt09e.js";import"./chunk-v508x7cg.js";import"./chunk-mdew58v9.js";import"./chunk-0bkhpd72.js";import"./chunk-jkfkyedn.js";import"./chunk-f8gb685p.js";import"./chunk-44jtpg8y.js";import"./chunk-sj1dzeta.js";import"./chunk-2y1qngw7.js";import"./chunk-ar5np5h5.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import"./chunk-9d49tj9y.js";import"./chunk-qcvxff27.js";import"./chunk-zwjrensv.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";export{a as vanillaStore,c as sessionActions,l as getThinkingModeEnabled,b as getState,n as getServiceTier,o as getResponseVerbosity,m as getReasoningEffort,j as getModelById,e as getMessages,k as getMcpServers,i as getCurrentModel,f as getConfig,p as getCommunicationStyle,h as getAllModels,g as ensureStoreInitialized,q as configActions,d as appActions};
@@ -1,10 +0,0 @@
1
- import{a as T,b as W,c as X,d as Y}from"./chunk-sm9p1fkf.js";import"./chunk-dvb89529.js";import"./chunk-grhsv55v.js";import"./chunk-bavzm721.js";import"./chunk-qcydkn1n.js";import"./chunk-6q3g5e3m.js";import"./chunk-xjrmq0pg.js";import"./chunk-6p6ts4kv.js";import"./chunk-sbc90z9j.js";import"./chunk-v52wc8yg.js";import"./chunk-3e0t25rq.js";import"./chunk-77efqpdc.js";import"./chunk-rj8mmwc6.js";import"./chunk-53h87fmt.js";import"./chunk-b5z1rec4.js";import"./chunk-0z9nqbd0.js";import{hf as R}from"./chunk-y0kqkewg.js";import"./chunk-a60cmnmz.js";import{Df as Q}from"./chunk-j3nmt09e.js";import"./chunk-v508x7cg.js";import"./chunk-mdew58v9.js";import"./chunk-ajsw4te2.js";import"./chunk-mvm1rzc4.js";import"./chunk-edtxcqxa.js";import"./chunk-e371f7xk.js";import"./chunk-t8rjxqp2.js";import"./chunk-sx77dpxw.js";import"./chunk-aaxc81jc.js";import"./chunk-93x9xbew.js";import"./chunk-r7kevfd3.js";import"./chunk-g4xny949.js";import"./chunk-0bkhpd72.js";import"./chunk-jkfkyedn.js";import"./chunk-f8gb685p.js";import"./chunk-44jtpg8y.js";import"./chunk-sj1dzeta.js";import"./chunk-2y1qngw7.js";import"./chunk-ar5np5h5.js";import"./chunk-dfjmvj3d.js";import"./chunk-tkydv9k8.js";import{Cj as M}from"./chunk-9d49tj9y.js";import"./chunk-qcvxff27.js";import"./chunk-zwjrensv.js";import"./chunk-pj69j4zp.js";import"./chunk-zkzhm39s.js";import m from"chalk";import K from"open";var A=`
2
- ____ _ _
3
- | __ )| | __ _ __| | ___
4
- | _ \\| |/ _\` |/ _\` |/ _ \\
5
- | |_) | | (_| | (_| | __/
6
- |____/|_|\\__,_|\\__,_|\\___|
7
- `,C={command:"web",describe:"Start Blade server and open web interface",builder:T,handler:async(Z)=>{let H=W(Z);if(await Q(),!process.env.BLADE_SERVER_PASSWORD)console.log(m.yellow("[WARN] BLADE_SERVER_PASSWORD is not set; server is unsecured.")),console.log(m.gray(` Set this environment variable to enable Basic Auth.
8
- `));let F=await Y.listenAsync(H);if(console.log(m.cyan(A)),console.log(m.gray(` v${M()}
9
- `)),H.hostname==="0.0.0.0"){let q=`http://localhost:${F.port}`;console.log(m.blue.bold(" Local access: "),m.white(q));let x=X();for(let z of x)console.log(m.blue.bold(" Network access: "),m.white(`http://${z}:${F.port}`));K(q).catch(()=>{})}else{let q=F.url.toString();console.log(m.blue.bold(" Web interface: "),m.white(q)),K(q).catch(()=>{})}console.log(""),console.log(m.gray(` Press Ctrl+C to stop the server.
10
- `));let J,$=new Promise((q)=>{J=q}),b=R(async()=>{await F.stop(),J()});try{await $}finally{b(),await F.stop()}}};export{C as webCommand};
@@ -1 +0,0 @@
1
- import{k as a,l as b,m as c,n as d,o as e}from"./chunk-fag8rk53.js";import"./chunk-9d49tj9y.js";import"./chunk-zkzhm39s.js";export{b as setSkipUntilVersion,d as performUpgrade,c as getUpgradeCommand,e as checkVersionOnStartup,a as checkVersion};