blade-code 0.11.1 → 0.11.3

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 (141) hide show
  1. package/dist/blade.js +2 -2
  2. package/dist/{chunk-s1cch8tt.js → chunk-0759ckbc.js} +1 -1
  3. package/dist/{chunk-4cdk4mds.js → chunk-0eajnhrj.js} +1 -1
  4. package/dist/{chunk-2ftyzk83.js → chunk-0pcrccgp.js} +1 -1
  5. package/dist/{chunk-5034apfz.js → chunk-0wxnrjes.js} +2 -2
  6. package/dist/{chunk-vbjgcn49.js → chunk-1cy4ab77.js} +1 -1
  7. package/dist/{chunk-a74ynw4t.js → chunk-33w0b9r4.js} +1 -1
  8. package/dist/chunk-3d4wgfkr.js +1 -0
  9. package/dist/chunk-3rxs9vxm.js +6 -0
  10. package/dist/{chunk-30p7aff1.js → chunk-45xdp95z.js} +1 -1
  11. package/dist/{chunk-9ydrwcpy.js → chunk-4e4qtpca.js} +2 -2
  12. package/dist/{chunk-ts5xzefm.js → chunk-5qrw9g8c.js} +2 -2
  13. package/dist/{chunk-0wcnkxe8.js → chunk-5s2x98rx.js} +2 -2
  14. package/dist/{chunk-8sth12hd.js → chunk-6v23hdt8.js} +1 -1
  15. package/dist/{chunk-06hkf59s.js → chunk-7ajvrtb3.js} +1 -1
  16. package/dist/chunk-7p8r4q6f.js +1 -0
  17. package/dist/{chunk-gzbb747a.js → chunk-a95jmx2j.js} +1 -1
  18. package/dist/{chunk-n8qg68y2.js → chunk-amabfzc8.js} +1 -1
  19. package/dist/{chunk-m30qwpe9.js → chunk-b22ab7yw.js} +1 -1
  20. package/dist/chunk-b3kvf23h.js +357 -0
  21. package/dist/chunk-b7pn03pb.js +1 -0
  22. package/dist/chunk-b8hm4td5.js +1 -0
  23. package/dist/{chunk-xz7dddaj.js → chunk-cmpxdek8.js} +1 -1
  24. package/dist/{chunk-8n3jythp.js → chunk-crbt25b4.js} +2 -2
  25. package/dist/{chunk-0b83mt1c.js → chunk-crv3sghv.js} +2 -2
  26. package/dist/{chunk-7eset766.js → chunk-dv5ts9ae.js} +6 -6
  27. package/dist/{chunk-g0hhqxpg.js → chunk-dyf12wbv.js} +2 -2
  28. package/dist/chunk-fa5sebe2.js +1 -0
  29. package/dist/{chunk-hmw99nm1.js → chunk-faedrfhd.js} +27 -27
  30. package/dist/chunk-ffq1k7q5.js +10 -0
  31. package/dist/chunk-fnvh22vc.js +1 -0
  32. package/dist/{chunk-xcy45yxx.js → chunk-g0xtk1yy.js} +2 -2
  33. package/dist/{chunk-h8w3ahnk.js → chunk-g2295k8s.js} +2 -2
  34. package/dist/chunk-gfhb2h6z.js +1 -0
  35. package/dist/chunk-gqypt03h.js +1 -0
  36. package/dist/chunk-hn2p1296.js +1 -0
  37. package/dist/chunk-hnnhpv75.js +1 -0
  38. package/dist/{chunk-ms0wve9g.js → chunk-hzz27w5w.js} +2 -2
  39. package/dist/{chunk-ta99scbr.js → chunk-jbpasjg9.js} +1 -1
  40. package/dist/{chunk-2vrsfb8p.js → chunk-jm1chm6x.js} +55 -55
  41. package/dist/{chunk-pm5ssr7m.js → chunk-kb4hwa5a.js} +1 -1
  42. package/dist/{chunk-sa9fxss4.js → chunk-kdtj92em.js} +1 -1
  43. package/dist/{chunk-3kszepm6.js → chunk-kehgewqh.js} +1 -1
  44. package/dist/{chunk-wcps5gjm.js → chunk-kkzznz4w.js} +1 -1
  45. package/dist/chunk-m2x6pb4f.js +2 -0
  46. package/dist/chunk-mmpcq1yh.js +1 -0
  47. package/dist/{chunk-xzva8y4e.js → chunk-mqfayxf7.js} +3 -3
  48. package/dist/{chunk-tqt5c2f5.js → chunk-n30najxq.js} +2 -2
  49. package/dist/{chunk-9yn01a90.js → chunk-nts19h6v.js} +1 -1
  50. package/dist/{chunk-v1k6nvth.js → chunk-nvj4da2w.js} +1 -1
  51. package/dist/{chunk-80946c9a.js → chunk-p36k2e96.js} +1 -1
  52. package/dist/{chunk-a1tt14a2.js → chunk-pbckwd41.js} +2 -2
  53. package/dist/{chunk-zfxcef0z.js → chunk-pm163dfm.js} +1 -1
  54. package/dist/{chunk-1beqtjsw.js → chunk-prqtwzxd.js} +1 -1
  55. package/dist/{chunk-zjezws85.js → chunk-px45q235.js} +2 -2
  56. package/dist/{chunk-5bc4hwt9.js → chunk-q6sr4979.js} +2 -2
  57. package/dist/{chunk-m8te4s8f.js → chunk-qvew5nk3.js} +2 -2
  58. package/dist/{chunk-yrr9mdjn.js → chunk-qy6p8bpr.js} +2 -2
  59. package/dist/{chunk-xseh3f4m.js → chunk-r5svk833.js} +1 -1
  60. package/dist/{chunk-25s0c8km.js → chunk-r9nyzqzb.js} +5 -5
  61. package/dist/{chunk-27bjk35b.js → chunk-s3pnhdqk.js} +1 -1
  62. package/dist/{chunk-f552hzcx.js → chunk-sdapqhj0.js} +1 -1
  63. package/dist/{chunk-a731hdwa.js → chunk-skktstg8.js} +1 -1
  64. package/dist/chunk-sqsfztrv.js +1 -0
  65. package/dist/{chunk-xcj23spc.js → chunk-t0swttvj.js} +2 -2
  66. package/dist/{chunk-m70cnaeg.js → chunk-v0eanse2.js} +1 -1
  67. package/dist/{chunk-dxq7462e.js → chunk-wan9q99y.js} +2 -2
  68. package/dist/{chunk-f6hc7t65.js → chunk-wnzr9h84.js} +1 -1
  69. package/dist/{chunk-447ps2te.js → chunk-x2crj6jq.js} +2 -2
  70. package/dist/{chunk-5yyp6njq.js → chunk-x6k5ye1z.js} +1 -1
  71. package/dist/{chunk-fqxzzsgr.js → chunk-yeandcre.js} +1 -1
  72. package/dist/{chunk-3y2x6fb6.js → chunk-ys8gysg8.js} +1 -1
  73. package/dist/chunk-yw3achrm.js +1 -0
  74. package/dist/{chunk-rt3f4xjz.js → chunk-zc8erdkc.js} +14 -6
  75. package/dist/web/assets/ChatView-CvuKp3Yl.js +17 -0
  76. package/dist/web/assets/{CodeBlockHighlighter-B5kcdVCA.js → CodeBlockHighlighter-CYiAdOLs.js} +1 -1
  77. package/dist/web/assets/FilePreview-DGolvoH6.js +8 -0
  78. package/dist/web/assets/KanbanBoard-DdwrLpvb.js +1 -0
  79. package/dist/web/assets/{MarkdownRenderer-d7DdyYdx.js → MarkdownRenderer-fJny7W8J.js} +3 -3
  80. package/dist/web/assets/{ScrollArea-D1tPWHKZ.js → ScrollArea-CSCl8r35.js} +1 -1
  81. package/dist/web/assets/{SessionHistorySurface-Cv_jRoJr.js → SessionHistorySurface-dttyHhtN.js} +1 -1
  82. package/dist/web/assets/SettingsModal-Bn9m-F-v.js +5 -0
  83. package/dist/web/assets/Sidebar-JYvLuHTi.js +1 -0
  84. package/dist/web/assets/{TaskSwitcher-C9AKJrl-.js → TaskSwitcher-InE9ArQH.js} +1 -1
  85. package/dist/web/assets/{TerminalPanel-BxBGcuB9.js → TerminalPanel-BLRAlQoa.js} +1 -1
  86. package/dist/web/assets/{archive-DNa9b1YE.js → archive-D3alcPOa.js} +1 -1
  87. package/dist/web/assets/{arrow-left-BQh8jlfT.js → arrow-left-CNfcSdE2.js} +1 -1
  88. package/dist/web/assets/{calendar-clock-CC7FeYTg.js → calendar-clock-BoRTfsxW.js} +1 -1
  89. package/dist/web/assets/chevron-right-B8JH5N50.js +1 -0
  90. package/dist/web/assets/{clock-3-P2q6i6vm.js → clock-3-BGymk4sE.js} +1 -1
  91. package/dist/web/assets/{copy-C-KvzjCC.js → copy-CLG3LQ2v.js} +1 -1
  92. package/dist/web/assets/{dist-DiQNoDMg.js → dist-BtGkS2rG.js} +1 -1
  93. package/dist/web/assets/{download-CJHn20x1.js → download-DxK6pukC.js} +1 -1
  94. package/dist/web/assets/{folder-DmyFehXD.js → folder-B0xRimYH.js} +1 -1
  95. package/dist/web/assets/index-BJdxoBtv.css +1 -0
  96. package/dist/web/assets/{index-D-oma3Je.js → index-DkwePtIh.js} +4 -4
  97. package/dist/web/assets/{pause-D2FxNG-w.js → pause-CKNq9DgJ.js} +1 -1
  98. package/dist/web/assets/{pencil-D6HI7KC8.js → pencil-CMjIwtk5.js} +1 -1
  99. package/dist/web/assets/{play-4jKCDYR-.js → play-BOz9Sqzf.js} +1 -1
  100. package/dist/web/assets/plus-BJIEQjD7.js +1 -0
  101. package/dist/web/assets/preload-helper-HI3NtP3B.js +1 -0
  102. package/dist/web/assets/{session-events-CvFfHkFA.js → session-events-B-hnDC4L.js} +7 -7
  103. package/dist/web/assets/{settings-fWlqCZ-U.js → settings-CP6ArjQ7.js} +1 -1
  104. package/dist/web/assets/team-BHlihaeV.js +1 -0
  105. package/dist/web/assets/{teamService-DfIvlI2_.js → teamService-DDfifLYm.js} +1 -1
  106. package/dist/web/assets/{terminal-DZkEoiSb.js → terminal-BYHhWXe-.js} +1 -1
  107. package/dist/web/assets/tooltip-DJBQZhJD.js +1 -0
  108. package/dist/web/assets/triangle-alert-BCJaJaVj.js +1 -0
  109. package/dist/web/assets/{vendor-radix-CHeA_3Pt.js → vendor-radix-BCAvgfOW.js} +1 -1
  110. package/dist/web/assets/{vendor-react-hNfZDUf2.js → vendor-react-DQwAdeyS.js} +1 -1
  111. package/dist/web/index.html +5 -5
  112. package/package.json +1 -1
  113. package/dist/chunk-1kxpnt9q.js +0 -1
  114. package/dist/chunk-2g3v9qpz.js +0 -1
  115. package/dist/chunk-43gg1wdc.js +0 -1
  116. package/dist/chunk-72wn385d.js +0 -1
  117. package/dist/chunk-7vzz3rsx.js +0 -332
  118. package/dist/chunk-8emp6ysb.js +0 -1
  119. package/dist/chunk-8evyh5t0.js +0 -1
  120. package/dist/chunk-8hdtssvs.js +0 -1
  121. package/dist/chunk-b36egepz.js +0 -1
  122. package/dist/chunk-hrtf7dba.js +0 -2
  123. package/dist/chunk-j7dx054r.js +0 -1
  124. package/dist/chunk-j9ppeg6v.js +0 -1
  125. package/dist/chunk-jemb0vwa.js +0 -1
  126. package/dist/chunk-r9m3b170.js +0 -1
  127. package/dist/chunk-tf1qz4q6.js +0 -1
  128. package/dist/chunk-v17q4bsd.js +0 -6
  129. package/dist/chunk-y0wc0hef.js +0 -10
  130. package/dist/web/assets/ChatView-BA3kB_z1.js +0 -17
  131. package/dist/web/assets/FilePreview-BQid6G2-.js +0 -8
  132. package/dist/web/assets/KanbanBoard-CTR7bMLa.js +0 -1
  133. package/dist/web/assets/SettingsModal-CFa2uCzI.js +0 -5
  134. package/dist/web/assets/Sidebar-DrRNJOgU.js +0 -1
  135. package/dist/web/assets/chevron-right-6ZTOJE0p.js +0 -1
  136. package/dist/web/assets/index-BVEiHNFk.css +0 -1
  137. package/dist/web/assets/message-square-plus-CKu9bFq3.js +0 -1
  138. package/dist/web/assets/plus-C4p8E1Nk.js +0 -1
  139. package/dist/web/assets/preload-helper-BC9Zf9qO.js +0 -1
  140. package/dist/web/assets/team-qGS2kixH.js +0 -1
  141. package/dist/web/assets/triangle-alert-Detl9fRQ.js +0 -1
@@ -1 +0,0 @@
1
- import{$g as j,Sg as a,Tg as b,Ug as c,Vg as d,Wg as e,Xg as f,Yg as g,Zg as h,_g as i,ah as k}from"./chunk-8n3jythp.js";import"./chunk-3kszepm6.js";import"./chunk-wcps5gjm.js";import"./chunk-vbjgcn49.js";import"./chunk-06hkf59s.js";import"./chunk-xzva8y4e.js";import"./chunk-3y2x6fb6.js";import"./chunk-yrr9mdjn.js";import"./chunk-m30qwpe9.js";import"./chunk-n8qg68y2.js";import"./chunk-hrtf7dba.js";import"./chunk-9ydrwcpy.js";import"./chunk-0wcnkxe8.js";import"./chunk-4cdk4mds.js";import"./chunk-a1tt14a2.js";import"./chunk-zjezws85.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.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 +0,0 @@
1
- import{Af as c,yf as a,zf as b}from"./chunk-m8te4s8f.js";import"./chunk-5034apfz.js";import"./chunk-7eset766.js";import"./chunk-5yyp6njq.js";import"./chunk-v508x7cg.js";import"./chunk-06hkf59s.js";import"./chunk-yrr9mdjn.js";import"./chunk-m30qwpe9.js";import"./chunk-n8qg68y2.js";import"./chunk-hrtf7dba.js";import"./chunk-9ydrwcpy.js";import"./chunk-0wcnkxe8.js";import"./chunk-4cdk4mds.js";import"./chunk-a1tt14a2.js";import"./chunk-zjezws85.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.js";export{a as validatePermissions,c as validateOutput,b as loadConfiguration};
@@ -1 +0,0 @@
1
- import{a,b as i,c as l,d as m}from"./chunk-ms0wve9g.js";import"./chunk-1beqtjsw.js";import"./chunk-8sth12hd.js";import"./chunk-sa9fxss4.js";import"./chunk-v1k6nvth.js";import"./chunk-30p7aff1.js";import"./chunk-25s0c8km.js";import"./chunk-f6hc7t65.js";import"./chunk-pm5ssr7m.js";import"./chunk-xseh3f4m.js";import"./chunk-7vzz3rsx.js";import"./chunk-9qxch6sy.js";import"./chunk-hmw99nm1.js";import"./chunk-a731hdwa.js";import"./chunk-dxq7462e.js";import"./chunk-tqt5c2f5.js";import{Df as n}from"./chunk-447ps2te.js";import"./chunk-0b83mt1c.js";import{Zf as s}from"./chunk-7eset766.js";import"./chunk-5yyp6njq.js";import"./chunk-v508x7cg.js";import"./chunk-xcy45yxx.js";import"./chunk-5bc4hwt9.js";import"./chunk-h8w3ahnk.js";import"./chunk-zfxcef0z.js";import"./chunk-g0hhqxpg.js";import"./chunk-8n3jythp.js";import"./chunk-3kszepm6.js";import"./chunk-wcps5gjm.js";import"./chunk-vbjgcn49.js";import"./chunk-06hkf59s.js";import"./chunk-xzva8y4e.js";import"./chunk-3y2x6fb6.js";import"./chunk-yrr9mdjn.js";import"./chunk-m30qwpe9.js";import"./chunk-n8qg68y2.js";import"./chunk-hrtf7dba.js";import"./chunk-9ydrwcpy.js";import"./chunk-0wcnkxe8.js";import"./chunk-4cdk4mds.js";import"./chunk-a1tt14a2.js";import"./chunk-zjezws85.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.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{$b as d,Ub as a,Vb as b,Xb as c,ac as e,bc as f,cc as g,dc as h,ec as i,fc as j,gc as k,pc as l,qc as m,rc as n,sc as o,uc as p,vc as q,wc as r}from"./chunk-7vzz3rsx.js";import"./chunk-9qxch6sy.js";import"./chunk-hmw99nm1.js";import"./chunk-a731hdwa.js";import"./chunk-dxq7462e.js";import"./chunk-tqt5c2f5.js";import"./chunk-5yyp6njq.js";import"./chunk-v508x7cg.js";import"./chunk-xcy45yxx.js";import"./chunk-5bc4hwt9.js";import"./chunk-zfxcef0z.js";import"./chunk-3kszepm6.js";import"./chunk-wcps5gjm.js";import"./chunk-vbjgcn49.js";import"./chunk-xzva8y4e.js";import"./chunk-3y2x6fb6.js";import"./chunk-yrr9mdjn.js";import"./chunk-m30qwpe9.js";import"./chunk-n8qg68y2.js";import"./chunk-hrtf7dba.js";import"./chunk-9ydrwcpy.js";import"./chunk-0wcnkxe8.js";import"./chunk-4cdk4mds.js";import"./chunk-a1tt14a2.js";import"./chunk-zjezws85.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.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
- var _=20,E=5242880,T=32768,A=1e6,S=4194304;
2
- export{_ as vj,E as wj,T as xj,A as yj,S as zj};
@@ -1 +0,0 @@
1
- import{qg as a}from"./chunk-xcy45yxx.js";import"./chunk-5bc4hwt9.js";import"./chunk-n8qg68y2.js";import"./chunk-hrtf7dba.js";import"./chunk-9ydrwcpy.js";import"./chunk-0wcnkxe8.js";import"./chunk-4cdk4mds.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.js";export{a as createChatServiceAsync};
@@ -1 +0,0 @@
1
- import{k as a,l as b,m as c,n as d,o as e}from"./chunk-2ftyzk83.js";import"./chunk-a1tt14a2.js";import"./chunk-f552hzcx.js";export{b as setSkipUntilVersion,d as performUpgrade,c as getUpgradeCommand,e as checkVersionOnStartup,a as checkVersion};
@@ -1 +0,0 @@
1
- import{ge as a,he as b,ie as c,je as d,ke as e,le as f,me as g}from"./chunk-hmw99nm1.js";import"./chunk-a731hdwa.js";import"./chunk-dxq7462e.js";import"./chunk-tqt5c2f5.js";import"./chunk-zfxcef0z.js";import"./chunk-vbjgcn49.js";import"./chunk-3y2x6fb6.js";import"./chunk-m30qwpe9.js";import"./chunk-hrtf7dba.js";import"./chunk-9ydrwcpy.js";import"./chunk-4cdk4mds.js";import"./chunk-a1tt14a2.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.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{Ag as c,Bg as d,yg as a,zg as b}from"./chunk-g0hhqxpg.js";import"./chunk-yrr9mdjn.js";import"./chunk-m30qwpe9.js";import"./chunk-n8qg68y2.js";import"./chunk-hrtf7dba.js";import"./chunk-9ydrwcpy.js";import"./chunk-0wcnkxe8.js";import"./chunk-4cdk4mds.js";import"./chunk-a1tt14a2.js";import"./chunk-zjezws85.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.js";export{c as snapshotWorkspaceModelResources,b as resolveWorkspaceModelResources,d as createProcessModelResources,a as cloneWorkspaceModelConfig};
@@ -1 +0,0 @@
1
- import{bk as a,ck as b,dk as c}from"./chunk-zjezws85.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.js";export{b as isWorkspaceTrusted,c as WorkspaceTrustService,a as MAX_RESIDENT_WORKSPACE_TRUST_STATUSES};
@@ -1,6 +0,0 @@
1
- import{p as gH,q as RH,r as CH,s as kH,t as hH,u as OH,v as wH}from"./chunk-xz7dddaj.js";import{E as bH,F as VH,G as ZH,H as $H,I as p,J as qH}from"./chunk-30p7aff1.js";import{K as BH,ha as EH,ja as MH,ka as zH,oa as AH}from"./chunk-25s0c8km.js";import"./chunk-f6hc7t65.js";import"./chunk-pm5ssr7m.js";import{eb as NH}from"./chunk-xseh3f4m.js";import{Rb as r,bc as PH,mc as FH}from"./chunk-7vzz3rsx.js";import"./chunk-9qxch6sy.js";import{$d as _H,Xd as UH,be as m,me as o}from"./chunk-hmw99nm1.js";import"./chunk-a731hdwa.js";import"./chunk-dxq7462e.js";import"./chunk-tqt5c2f5.js";import{wf as SH}from"./chunk-ts5xzefm.js";import{Af as IH,yf as TH,zf as yH}from"./chunk-m8te4s8f.js";import{Bf as fH}from"./chunk-5034apfz.js";import"./chunk-0b83mt1c.js";import{$f as xH}from"./chunk-7eset766.js";import"./chunk-5yyp6njq.js";import"./chunk-v508x7cg.js";import"./chunk-xcy45yxx.js";import"./chunk-5bc4hwt9.js";import"./chunk-h8w3ahnk.js";import"./chunk-zfxcef0z.js";import"./chunk-g0hhqxpg.js";import"./chunk-8n3jythp.js";import"./chunk-3kszepm6.js";import{hh as O,lh as YH}from"./chunk-wcps5gjm.js";import"./chunk-vbjgcn49.js";import"./chunk-06hkf59s.js";import"./chunk-xzva8y4e.js";import"./chunk-3y2x6fb6.js";import{Eh as jH}from"./chunk-yrr9mdjn.js";import{Yi as R}from"./chunk-m30qwpe9.js";import"./chunk-n8qg68y2.js";import{yj as i,zj as s}from"./chunk-hrtf7dba.js";import{Fj as GH,Hj as H,Ij as XH,Kj as Y}from"./chunk-9ydrwcpy.js";import"./chunk-0wcnkxe8.js";import"./chunk-4cdk4mds.js";import"./chunk-a1tt14a2.js";import"./chunk-zjezws85.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.js";import pJ from"yargs";import{hideBin as vJ}from"yargs/helpers";function v(V,Z,Q){if(V.off){V.off(Z,Q);return}V.removeListener?.(Z,Q)}function sH(V,Z){if(!V.once&&!V.on||!V.off&&!V.removeListener)throw Error("Writable returned false without an observable drain contract");return new Promise((Q,q)=>{let J=!1,K=()=>{v(V,"drain",G),v(V,"error",j),Z.removeEventListener("abort",P)},W=(F)=>{if(J)return;J=!0,K(),F()},G=()=>W(Q),j=(F)=>W(()=>q(F??Error("Writable emitted an error"))),P=()=>W(()=>q(Z.reason??Error("Writable drain aborted")));if(Z.aborted){P();return}let S=V.once?.bind(V)??V.on?.bind(V);S?.("drain",G),S?.("error",j),Z.addEventListener("abort",P,{once:!0})})}async function oH(V,Z,Q){if(V.destroyed||V.writableEnded)throw Error("Writable is already closed");if(V.write(Z)===!1)await sH(V,Q)}class l{options;queues;sinkErrorListeners=[];failed=!1;closing=!1;handleAbort=()=>{this.fail(new p("aborted","Headless output was aborted",{cause:this.options.signal?.reason}))};constructor(V,Z={}){this.options=Z;let Q=(q)=>new qH({maxPendingItems:Z.maxPendingItems??VH,maxPendingBytes:Z.maxPendingBytes??ZH,writeTimeoutMs:Z.writeTimeoutMs??$H,sizeOf:(J)=>Buffer.byteLength(J),write:(J,K)=>oH(V[q],J,K),onFailure:(J)=>this.fail(J)});if(this.queues={stdout:Q("stdout"),stderr:Q("stderr")},this.observeSinkErrors(V.stdout),V.stderr!==V.stdout)this.observeSinkErrors(V.stderr);if(Z.signal?.addEventListener("abort",this.handleAbort,{once:!0}),Z.signal?.aborted)this.handleAbort()}write(V,Z){return this.queues[V].offer(Z).accepted}async flush(){await Promise.all([this.queues.stdout.flush(),this.queues.stderr.flush()])}close(V){if(this.closing||this.failed)return;this.closing=!0,this.options.signal?.removeEventListener("abort",this.handleAbort),this.removeSinkErrorListeners(),this.queues.stdout.close(V),this.queues.stderr.close(V)}stats(){return{stdout:this.queues.stdout.stats(),stderr:this.queues.stderr.stats()}}observeSinkErrors(V){if(!V.on||!V.off&&!V.removeListener)return;let Z=(Q)=>{this.fail(new p("write_failed","Headless writable failed",{cause:Q??Error("Writable emitted an error")}))};V.on("error",Z),this.sinkErrorListeners.push({writer:V,listener:Z})}fail(V){if(this.closing||this.failed)return;this.failed=!0,this.options.signal?.removeEventListener("abort",this.handleAbort),this.removeSinkErrorListeners(),this.queues.stdout.close(V),this.queues.stderr.close(V),this.options.onFailure?.(V)}removeSinkErrorListeners(){for(let{writer:V,listener:Z}of this.sinkErrorListeners.splice(0))v(V,"error",Z)}}var g=1;function D(V){return H.Object({event_version:H.Literal(g),...V})}var rH=D({type:H.Literal("content_delta"),delta:H.String()}),nH=D({type:H.Literal("thinking_delta"),delta:H.String()}),tH=D({type:H.Literal("thinking"),content:H.String()}),eH=D({type:H.Literal("stream_end")}),HJ=D({type:H.Literal("content"),content:H.String()}),JJ=D({type:H.Literal("structured_output"),output:H.Record(H.String(),H.Unknown()),schema_digest:H.String({pattern:"^[a-f0-9]{64}$"})}),a=Y(["readonly","write","execute"]),KJ=H.Object({kind:a,scope:Y(["global","session"]),queue_position:H.Integer({minimum:1}),in_flight:H.Integer({minimum:0}),limit:H.Integer({minimum:1})}),VJ=D({type:H.Literal("tool_start"),tool_name:H.String(),summary:H.String(),target:H.Optional(H.String()),tool_kind:H.Optional(a)}),ZJ=D({type:H.Literal("tool_progress"),tool_name:H.String(),message:H.String(),progress:H.Optional(H.Number()),total:H.Optional(H.Number()),admission:H.Optional(KJ)}),$J=H.Object({auto_backgrounded:H.Literal(!0),background_reason:H.Literal("foreground_budget"),foreground_budget_ms:H.Integer({minimum:1}),shell_id:H.String({minLength:1,maxLength:128,pattern:"^bash_[A-Za-z0-9-]+$"}),pid:H.Optional(H.Integer({minimum:1})),terminal_transport:Y(["local","acp"])}),qJ=D({type:H.Literal("tool_result"),tool_name:H.String(),summary:H.String(),target:H.Optional(H.String()),tool_kind:H.Optional(a),success:H.Optional(H.Boolean()),error_type:H.Optional(H.String()),error_message:H.Optional(H.String()),background:H.Optional($J)}),XJ=D({type:H.Literal("mcp_catalog_changed"),revision:H.Integer({minimum:1}),server_name:H.String(),added:H.Array(H.String()),removed:H.Array(H.String()),updated:H.Array(H.String())}),YJ=D({type:H.Literal("mcp_content_changed"),revision:H.Integer({minimum:1}),server_name:H.String(),content_kind:Y(["resources","resource_templates","prompts"]),added:H.Array(H.String()),removed:H.Array(H.String()),updated:H.Array(H.String())}),BJ=D({type:H.Literal("mcp_resource_updated"),revision:H.Integer({minimum:1}),server_name:H.String(),uri:H.String()}),NJ=D({type:H.Literal("mcp_connection_changed"),revision:H.Integer({minimum:1}),server_name:H.String(),phase:Y(["reconnecting","recovered","failed"]),reason:H.String(),attempt:H.Integer({minimum:0}),max_attempts:H.Integer({minimum:0}),next_retry_at:H.Optional(H.Integer({minimum:0})),error:H.Optional(H.String())}),QJ=D({type:H.Literal("mcp_log"),revision:H.Integer({minimum:1}),server_name:H.String(),level:Y(["debug","info","notice","warning","error","critical","alert","emergency"]),logger:H.Optional(H.String()),message:H.String(),projected_bytes:H.Integer({minimum:0}),data_sha256:H.String(),truncated:H.Boolean(),details_omitted:H.Boolean(),timestamp:H.Integer({minimum:0}),synthetic:H.Optional(H.Boolean())}),DJ=D({type:H.Literal("mcp_instructions_changed"),revision:H.Integer({minimum:0}),server_name:H.String(),action:Y(["added","removed"]),reason:Y(["snapshot","connection","disconnection"]),text:H.Optional(H.String()),source_bytes:H.Optional(H.Integer({minimum:0})),projected_bytes:H.Optional(H.Integer({minimum:0})),sha256:H.Optional(H.String()),truncated:H.Optional(H.Boolean()),details_omitted:H.Optional(H.Boolean())}),LJ=D({type:H.Literal("mcp_task_changed"),revision:H.Integer({minimum:0}),task_id:H.String(),server_name:H.String(),tool_name:H.String(),status:Y(["working","input_required","interrupted","completed","failed","cancelled"]),status_message:H.Optional(H.String()),created_at:H.Integer({minimum:0}),updated_at:H.Integer({minimum:0}),completed_at:H.Optional(H.Integer({minimum:0})),has_result:H.Boolean(),error:H.Optional(H.String())}),WJ=D({type:H.Literal("project_rules_loaded"),files:H.Array(H.Object({id:H.String(),relative_path:H.String(),source:Y(["project","local"]),conditional:H.Boolean(),content_sha256:H.String({pattern:"^[a-f0-9]{64}$"})})),trigger_paths:H.Array(H.String()),blocked_write:H.Boolean()}),jJ=D({type:H.Literal("user_shell_started"),execution_id:H.String(),command:H.String(),auxiliary:H.Boolean()}),GJ=D({type:H.Literal("user_shell_output"),execution_id:H.String(),stream:Y(["stdout","stderr"]),chunk:H.String(),stream_truncated:H.Boolean()}),xJ=D({type:H.Literal("user_shell_completed"),execution_id:H.String(),message_id:H.String(),status:Y(["completed","failed","aborted","timed_out","spawn_error"]),exit_code:H.Union([H.Integer(),H.Null()]),duration_ms:H.Number({minimum:0}),stdout:H.String(),stderr:H.String(),truncated:H.Boolean(),auxiliary:H.Boolean()}),UJ=D({type:H.Literal("phase"),phase:Y(["turn","searching","inspecting","target_hit","executing","completed"]),status:Y(["ongoing","hit","done"]),message:H.String(),turn:H.Optional(H.Number()),tool_name:H.Optional(H.String()),target:H.Optional(H.String())}),_J=D({type:H.Literal("tool_detail"),tool_name:H.String(),detail:H.String()}),PJ=D({type:H.Literal("task_update"),tasks:H.Array(BH)}),FJ=D({type:H.Literal("goal_frontier"),goal_id:H.String({minLength:1}),status:Y(["active","verifying","paused","blocked","usage_limited","budget_limited","complete"]),task_list_id:H.String({minLength:1,maxLength:256}),total:H.Integer({minimum:0}),completed:H.Integer({minimum:0}),in_progress:H.Integer({minimum:0}),pending:H.Integer({minimum:0}),blocked:H.Integer({minimum:0}),next_task:H.Optional(H.Object({id:H.String({minLength:1}),subject:H.String({minLength:1,maxLength:512}),priority:Y(["high","medium","low"])})),digest_sha256:H.String({pattern:"^[a-f0-9]{64}$"}),observed_at:H.String(),stall_category:H.Optional(Y(["waiting_dependency","same_task_no_effect","repeated_deferral"])),stall_count:H.Optional(H.Integer({minimum:1,maximum:3}))}),EJ=D({type:H.Literal("goal"),state:Y(["updated","cleared"]),goal_id:H.Optional(H.String()),status:H.Optional(Y(["active","verifying","paused","blocked","usage_limited","budget_limited","complete"])),verification_attempt:H.Optional(H.Integer({minimum:1})),verification_status:H.Optional(Y(["pending","pass","fail","partial"])),verifier_session_id:H.Optional(H.String()),verification_evidence_sha256:H.Optional(H.String({pattern:"^[a-f0-9]{64}$"})),verification_summary:H.Optional(H.String()),verification_stall_count:H.Optional(H.Integer({minimum:1})),premature_stop_pattern:H.Optional(Y(YH)),premature_stop_count:H.Optional(H.Integer({minimum:1})),execution_host_failure_category:H.Optional(Y(["timeout","admission","spawn","finalization","sandbox_start","terminal"])),execution_host_failure_count:H.Optional(H.Integer({minimum:1,maximum:3})),frontier_stall_category:H.Optional(Y(["waiting_dependency","same_task_no_effect","repeated_deferral"])),frontier_stall_count:H.Optional(H.Integer({minimum:1,maximum:3})),root_turn_id:H.Optional(H.String({minLength:1,maxLength:O})),current_turn_id:H.Optional(H.String({minLength:1,maxLength:O})),parent_turn_id:H.Optional(H.String({minLength:1,maxLength:O}))}),MJ=D({type:H.Literal("subagent"),state:Y(["spawned","completed"]),session_id:H.String(),subagent_type:H.Optional(H.String()),success:H.Optional(H.Boolean()),summary:H.Optional(H.String()),verification_verdict:H.Optional(Y(["pass","fail","partial"])),resumed_from:H.Optional(H.String()),root_agent_id:H.Optional(H.String()),resume_depth:H.Optional(H.Integer({minimum:0}))}),zJ=D({type:H.Literal("token_usage"),scope:H.Optional(H.Literal("auxiliary")),input_tokens:H.Number(),output_tokens:H.Number(),total_tokens:H.Number(),max_context_tokens:H.Number(),cache_read_tokens:H.Optional(H.Number()),cache_write_tokens:H.Optional(H.Number()),prompt_cache_break:H.Optional(H.Object({reason:Y(["model_changed","system_prompt_changed","tools_changed","request_policy_changed","ttl_expired","server_side"]),previous_cache_read_tokens:H.Number(),cache_read_tokens:H.Number(),cache_write_tokens:H.Number(),token_drop:H.Number(),elapsed_ms:H.Number(),call_number:H.Number(),system_prompt_changed:H.Boolean(),system_char_delta:H.Number(),tools_changed:H.Boolean(),added_tool_count:H.Number(),removed_tool_count:H.Number(),changed_tool_count:H.Number(),model_changed:H.Boolean(),request_policy_changed:H.Boolean()})),cost_usd:H.Optional(H.Number())}),AJ=D({type:H.Literal("compacting"),state:Y(["started","completed"]),reason:H.Optional(Y(["threshold","context_limit","turn_limit","manual"])),strategy:H.Optional(Y(["llm","fallback","snip"])),outcome:H.Optional(Y(["completed","fallback","failed"])),pre_tokens:H.Optional(H.Number({minimum:0})),pre_token_source:H.Optional(Y(["provider","provider_plus_estimate","local_estimate"])),estimated_pending_tokens:H.Optional(H.Number({minimum:0})),post_tokens:H.Optional(H.Number({minimum:0})),sample_attempts:H.Optional(H.Integer({minimum:0})),input_reductions:H.Optional(H.Integer({minimum:0})),messages_omitted:H.Optional(H.Integer({minimum:0})),files_omitted:H.Optional(H.Integer({minimum:0})),images_omitted:H.Optional(H.Integer({minimum:0})),fallback_target_tokens:H.Optional(H.Integer({minimum:0})),fallback_messages_omitted:H.Optional(H.Integer({minimum:0})),fallback_messages_truncated:H.Optional(H.Integer({minimum:0})),failure_reason:H.Optional(Y(["circuit_open","context_exhausted","deterministic","empty_exhausted","insufficient_reduction","transient_exhausted"])),memory:H.Optional(NH)}),fJ=D({type:H.Literal("provider_retry"),phase:Y(["scheduled","waiting","attempt","recovered","exhausted"]),attempt:H.Integer({minimum:0}),max_retries:H.Integer({minimum:0}),reason:Y(["rate_limit","server_error","timeout","transport","stream_closed"]),status_code:H.Optional(H.Integer({minimum:100,maximum:599})),delay_ms:H.Optional(H.Integer({minimum:0})),next_retry_at:H.Optional(H.Integer({minimum:0})),mode:H.Optional(Y(["standard","bounded_foreground"])),recovery_budget_ms:H.Optional(H.Integer({minimum:0})),recovery_elapsed_ms:H.Optional(H.Integer({minimum:0})),recovery_remaining_ms:H.Optional(H.Integer({minimum:0})),exhausted_by:H.Optional(Y(["attempt_limit","recovery_budget"]))}),SJ=D({type:H.Literal("provider_admission"),phase:Y(["queued","admitted","rejected"]),request_class:Y(["foreground","background","internal"]),resource:Y(["stream","pending_count","pending_bytes"]),scope:Y(["global","domain","owner","class"]),reason:H.Optional(Y(["capacity","queue_full","wait_timeout","closed"])),queue_position:H.Integer({minimum:0}),queue_depth:H.Integer({minimum:0}),in_flight:H.Integer({minimum:0}),limit:H.Integer({minimum:0}),wait_ms:H.Integer({minimum:0}),max_wait_ms:H.Integer({minimum:0}),recovery_remaining_ms:H.Optional(H.Integer({minimum:0}))}),TJ=D({type:H.Literal("provider_circuit"),phase:Y(["opened","waiting","probe","closed","reopened","rejected"]),reason:Y(["rate_limit","server_error","transport","stream_closed"]),status_code:H.Optional(H.Integer({minimum:100,maximum:599})),retry_after_ms:H.Optional(H.Integer({minimum:0})),next_probe_at:H.Optional(H.Integer({minimum:0})),open_duration_ms:H.Integer({minimum:0}),sample_count:H.Optional(H.Integer({minimum:0})),failure_count:H.Optional(H.Integer({minimum:0})),recovery_remaining_ms:H.Optional(H.Integer({minimum:0}))}),yJ=D({type:H.Literal("provider_stall"),phase:Y(["detected","recovered"]),stall_count:H.Integer({minimum:1}),duration_ms:H.Integer({minimum:0}),warning_after_ms:H.Integer({minimum:1}),timeout_ms:H.Integer({minimum:1}),output_started:H.Boolean()}),w=H.Object({provider:H.String({minLength:1,maxLength:256}),model:H.String({minLength:1,maxLength:256})},{additionalProperties:!1}),QH=H.Union([H.Object({source:Y(["retry","circuit"]),reason:Y(["rate_limit","server_error","timeout","transport","stream_closed"]),status_code:H.Optional(H.Integer({minimum:100,maximum:999}))},{additionalProperties:!1}),H.Object({source:H.Literal("admission"),reason:Y(["queue_full","wait_timeout","closed"])},{additionalProperties:!1}),H.Object({source:H.Literal("stall"),reason:H.Literal("timeout")},{additionalProperties:!1})]),IJ=H.Object({activity:Y(["admission_wait","retry_wait","retry_attempt","circuit_open","circuit_probe","stream_stall","fallback"]),reason:Y(["capacity","queue_full","wait_timeout","admission_closed","rate_limit","server_error","timeout","transport","stream_closed","circuit_open","stream_stall"]),updated_at:H.Integer({minimum:0}),next_action_at:H.Optional(H.Integer({minimum:0})),retry:H.Optional(H.Object({attempt:H.Integer({minimum:0}),max_retries:H.Integer({minimum:0}),status_code:H.Optional(H.Integer({minimum:100,maximum:999})),delay_ms:H.Optional(H.Integer({minimum:0})),recovery_budget_ms:H.Optional(H.Integer({minimum:0})),recovery_elapsed_ms:H.Optional(H.Integer({minimum:0})),recovery_remaining_ms:H.Optional(H.Integer({minimum:0}))},{additionalProperties:!1})),admission:H.Optional(H.Object({request_class:Y(["foreground","background","internal"]),scope:Y(["global","domain","owner","class"]),resource:Y(["stream","pending_count","pending_bytes"]),queue_position:H.Integer({minimum:0}),queue_depth:H.Integer({minimum:0}),in_flight:H.Integer({minimum:0}),limit:H.Integer({minimum:0}),wait_ms:H.Integer({minimum:0}),max_wait_ms:H.Integer({minimum:0}),recovery_remaining_ms:H.Optional(H.Integer({minimum:0}))},{additionalProperties:!1})),circuit:H.Optional(H.Object({phase:Y(["opened","reopened","waiting","probe","rejected"]),status_code:H.Optional(H.Integer({minimum:100,maximum:999})),retry_after_ms:H.Optional(H.Integer({minimum:0})),next_probe_at:H.Optional(H.Integer({minimum:0})),open_duration_ms:H.Integer({minimum:0}),sample_count:H.Optional(H.Integer({minimum:0})),failure_count:H.Optional(H.Integer({minimum:0})),recovery_remaining_ms:H.Optional(H.Integer({minimum:0}))},{additionalProperties:!1})),stall:H.Optional(H.Object({stall_count:H.Integer({minimum:0}),duration_ms:H.Integer({minimum:0}),warning_after_ms:H.Integer({minimum:0}),timeout_ms:H.Integer({minimum:0}),output_started:H.Boolean()},{additionalProperties:!1})),fallback:H.Optional(H.Object({from:w,to:w,candidate:H.Integer({minimum:1}),candidate_count:H.Integer({minimum:1}),trigger:QH},{additionalProperties:!1}))},{additionalProperties:!1}),bJ=H.Object({event_version:H.Literal(g),type:H.Literal("provider_recovery"),generation:H.String({minLength:1,maxLength:128}),revision:H.Integer({minimum:0}),snapshot:H.Union([IJ,H.Null()])},{additionalProperties:!1}),gJ=H.Object({name:H.String({minLength:1,maxLength:128}),kind:H.Optional(Y(["readonly","write","execute"])),started_at:H.Integer({minimum:0}),progress:H.Optional(H.Integer({minimum:0})),total:H.Optional(H.Integer({minimum:0}))},{additionalProperties:!1}),RJ=H.Object({phase:Y(["starting","thinking","responding","executing_tools","compacting","continuing"]),started_at:H.Integer({minimum:0}),updated_at:H.Integer({minimum:0}),turn:H.Integer({minimum:0}),max_turns:H.Union([H.Integer({minimum:0}),H.Null()]),output_started:H.Boolean(),tool_calls_started:H.Integer({minimum:0}),tool_calls_completed:H.Integer({minimum:0}),active_tools:H.Array(gJ,{maxItems:8}),active_tool_overflow:H.Integer({minimum:0})},{additionalProperties:!1}),CJ=H.Object({event_version:H.Literal(g),type:H.Literal("turn_activity"),generation:H.String({minLength:1,maxLength:128}),revision:H.Integer({minimum:0}),snapshot:H.Union([RJ,H.Null()])},{additionalProperties:!1}),kJ=H.Object({event_version:H.Literal(g),type:H.Literal("model_fallback"),from:w,to:w,candidate:H.Integer({minimum:1}),candidate_count:H.Integer({minimum:1}),trigger:QH},{additionalProperties:!1}),hJ=D({type:H.Literal("action_stationarity"),phase:Y(["detected","recovered","halted"]),tool_name:H.String(),run_length:H.Integer({minimum:1}),nudge_threshold:H.Integer({minimum:1}),halt_threshold:H.Integer({minimum:1}),progress_aware:H.Boolean()}),OJ=D({type:H.Literal("turn_recovery"),state:Y(["completed","resumable","requires_attention"]),turn_id:H.String({minLength:1}),input_message_count:H.Integer({minimum:0}),reason:H.Optional(Y(["successful_tool_result","interrupted_tool_call"]))}),wJ=D({type:H.Literal("turn_limit"),turns_count:H.Number(),action:H.Literal("continue")}),mJ=D({type:H.Literal("task_session"),session_id:H.String(),project_path:H.String(),source_project_path:H.String(),isolation:Y(["local","worktree"]),worktree_branch:H.Optional(H.String()),base_commit:H.Optional(H.String())}),uJ=D({type:H.Literal("task_admission"),state:Y(["queued","running"]),queue_position:H.Optional(H.Integer({minimum:1})),queue_depth:H.Integer({minimum:0}),in_flight:H.Integer({minimum:0}),max_concurrent_tasks:H.Integer({minimum:1})}),cJ=D({type:H.Literal("output"),content:H.String(),exit_code:H.Number()}),dJ=D({type:H.Literal("error"),message:H.String()}),DK=XH(H.Union([rH,nH,tH,eH,HJ,JJ,VJ,ZJ,qJ,XJ,YJ,BJ,NJ,QJ,DJ,LJ,WJ,jJ,GJ,xJ,UJ,_J,PJ,FJ,EJ,MJ,zJ,AJ,SJ,TJ,fJ,yJ,bJ,CJ,kJ,hJ,OJ,wJ,mJ,uJ,cJ,dJ]));function DH(V,Z){return{event_version:g,type:V,...Z}}function lJ(V){if(!V||typeof V!=="object"||Array.isArray(V))return;let Z=V;if(Z.auto_backgrounded!==!0||Z.background_reason!=="foreground_budget"||!Number.isSafeInteger(Z.foreground_budget_ms)||Z.foreground_budget_ms<=0||typeof Z.shell_id!=="string"||!/^bash_[A-Za-z0-9-]+$/.test(Z.shell_id)||Z.shell_id.length>128||Z.terminal_transport!=="local"&&Z.terminal_transport!=="acp"||Z.pid!==void 0&&(!Number.isSafeInteger(Z.pid)||Z.pid<=0))return;return{auto_backgrounded:!0,background_reason:"foreground_budget",foreground_budget_ms:Z.foreground_budget_ms,shell_id:Z.shell_id,...Z.pid===void 0?{}:{pid:Z.pid},terminal_transport:Z.terminal_transport}}function aJ(V){let Z=new AbortController,Q=(K)=>{if(!Z.signal.aborted)Z.abort(K)},q=()=>Q("interrupt"),J=()=>Q(V?.signal?.reason);if(V?.signal){if(V.signal.addEventListener("abort",J,{once:!0}),V.signal.aborted)J()}else process.once("SIGINT",q),process.once("SIGTERM",q);return{signal:Z.signal,abort:Q,dispose:()=>{V?.signal?.removeEventListener("abort",J),process.removeListener("SIGINT",q),process.removeListener("SIGTERM",q)}}}var iJ=Y(["text","jsonl"]),sJ=H.Object({headless:H.Optional(H.Boolean()),message:H.Optional(H.String()),_:H.Optional(H.Array(H.Union([H.String(),H.Number()]))),model:H.Optional(H.String()),systemPrompt:H.Optional(H.String()),appendSystemPrompt:H.Optional(H.String()),verificationAgent:H.Optional(H.Boolean()),maxTurns:H.Optional(H.Refine(H.Integer(),(V)=>V===-1||V>0,()=>"must be -1 (unlimited) or a positive integer")),permissionMode:H.Optional(H.Enum(jH)),mcpConfig:H.Optional(H.Array(H.String())),strictMcpConfig:H.Optional(H.Boolean()),sessionId:H.Optional(H.String()),allowedTools:H.Optional(H.Array(H.String())),disallowedTools:H.Optional(H.Array(H.String())),agents:H.Optional(H.String()),continue:H.Optional(H.Boolean()),resume:H.Optional(H.Union([H.String(),H.Boolean()])),forkSession:H.Optional(H.Boolean()),taskIsolation:H.Optional(Y(["local","worktree"])),outputFormat:H.Optional(iJ),jsonSchema:H.Optional(H.String()),outputSchema:H.Optional(H.String())});class mH{openedThinking=!1;wroteAssistantContent=!1;markAssistantContent(){this.wroteAssistantContent=!0}setThinkingOpened(V){this.openedThinking=V}hasOpenThinking(){return this.openedThinking}completeStream(){let V={openedThinking:this.openedThinking,wroteAssistantContent:this.wroteAssistantContent};return this.openedThinking=!1,this.wroteAssistantContent=!1,V}}function oJ(V){return V.issues.map((Z)=>`${Z.path.join(".")||"options"}: ${Z.message}`).join("; ")}function rJ(V){let Z=GH(sJ,V);if(!Z.success)throw Error(`Invalid headless options: ${oJ(Z.error)}`);return Z.data}function nJ(V){return V.command("* [message]","Run full agent loop without Ink UI and print events to the terminal",(Z)=>Z.positional("message",{describe:"Message to process",type:"string"}).option("headless",{type:"boolean",describe:"Run full agent loop without Ink UI and print events to the terminal"}).option("model",{describe:"Model ID for this run",type:"string"}).option("system-prompt",{describe:"Replace the default system prompt",type:"string"}).option("append-system-prompt",{describe:"Append a system prompt to the default system prompt",type:"string"}).option("verification-agent",{describe:"Run the built-in independent verification agent after non-trivial changes",type:"boolean",default:!0}).option("max-turns",{alias:["maxTurns"],describe:"Maximum conversation turns (-1: unlimited, N>0: limit to N turns)",type:"number"}).option("output-format",{alias:["outputFormat"],choices:["text","jsonl"],describe:"Headless output format",type:"string"}).option("json-schema",{alias:["jsonSchema"],describe:"Inline JSON Schema for the structured final response",type:"string"}).option("output-schema",{alias:["outputSchema"],describe:"Path to a JSON Schema file for the structured final response",type:"string"}).option("task-isolation",{alias:["taskIsolation"],choices:["local","worktree"],describe:"Dispatch a new durable task in the selected workspace mode",type:"string"}),async(Z)=>{if(!Z.headless)return;let Q=await VK(Z);process.exit(Q)})}function L(V,Z=""){V.write(`${Z}
2
- `)}function tJ(V){return`[task] [${V.status}] ${V.subject}`}function eJ(){return{requestConfirmation:async(V)=>V.type==="mcpElicitation"?{approved:!1,reason:"headless-mcp-elicitation-unavailable",elicitation:{action:"cancel"}}:V.type==="mcpSampling"?{approved:!1,reason:"headless-mcp-sampling-unavailable"}:{approved:!0,reason:"headless-auto-approved",scope:"session"}}}function HK(V){if(!(V instanceof Error))return"Unknown error";let q=V.lastError??V;if(q.responseBody)try{let W=JSON.parse(q.responseBody)?.error?.message;if(W)return q.statusCode?`${W} (HTTP ${q.statusCode})`:W}catch{}let J=V.message.match(/Last error:\s*(.+)$/);if(J)return J[1];return V.message}function JK(V){return V==="jsonl"?"jsonl":"text"}function LH(V,Z){let Q=(...q)=>{for(let J of q){let K=Z[J];if(typeof K==="string"&&K.trim()!=="")return K}return};switch(V){case"Read":case"Edit":case"Write":case"UndoEdit":return Q("file_path");case"ApplyPatch":return"multi-file patch";case"NotebookEdit":return Q("notebook_path");case"Grep":return Q("path","pattern");case"FindFiles":return Q("query");case"Glob":return Q("pattern");case"WebFetch":return Q("url");case"WebSearch":return Q("query");case"Bash":return Q("command","description");case"Task":return Q("description");case"LSP":return Q("filePath","operation");case"EnterWorktree":return Q("name");case"ExitWorktree":return Q("action");default:return}}function KK(V,Z,Q,q){let J=new Set(["FindFiles","Glob","Grep","WebSearch","LS"]),K=new Set(["Read","WebFetch"]);if(new Set(["Edit","Write","ApplyPatch","NotebookEdit","Bash","LSP","UndoEdit","EnterWorktree","ExitWorktree"]).has(V)&&!q.targetLocked)return{phase:"target_hit",status:"hit",message:`Target locked: ${Z}`,shouldLockTarget:!0};if(q.targetLocked)return{phase:"executing",status:"hit",message:Q?`Working within target: ${Z}`:`Executing: ${Z}`,shouldLockTarget:!1};if(J.has(V))return{phase:"searching",status:"ongoing",message:`Still searching: ${Z}`,shouldLockTarget:!1};if(K.has(V))return{phase:"inspecting",status:"ongoing",message:`Inspecting candidate: ${Z}`,shouldLockTarget:!1};return{phase:"executing",status:q.targetLocked?"hit":"ongoing",message:`Executing: ${Z}`,shouldLockTarget:!1}}function WH(V,Z,Q=!1){let q=(J,K)=>{V.stdout.write(`${JSON.stringify(DH(J,K))}
3
- `)};return{contentDelta(J){if(Z==="jsonl"){q("content_delta",{delta:J});return}if(Q)return;V.stdout.write(J)},thinkingDelta(J,K){if(Z==="jsonl")return q("thinking_delta",{delta:J}),K;if(!K)V.stderr.write("[thinking] ");return V.stderr.write(J),!0},thinking(J){if(Z==="jsonl"){q("thinking",{content:J});return}L(V.stderr,`[thinking] ${J}`)},streamEnd(J,K){if(Z==="jsonl"){q("stream_end",{});return}if(K)V.stderr.write(`
4
- `);if(J)V.stdout.write(`
5
- `)},content(J){if(Z==="jsonl"){q("content",{content:J});return}L(V.stdout,J)},structuredOutput(J){if(Z==="jsonl"){q("structured_output",{output:J.output,schema_digest:J.schemaDigest});return}L(V.stdout,JSON.stringify(J.output))},toolStart(J,K,W,G){if(Z==="jsonl"){q("tool_start",{tool_name:J,summary:K,target:W,tool_kind:G});return}L(V.stderr,`[tool:start] ${K}`)},toolProgress(J,K,W,G,j){if(Z==="jsonl"){q("tool_progress",{tool_name:J,message:K,progress:W,total:G,admission:j?{kind:j.kind,scope:j.scope,queue_position:j.queuePosition,in_flight:j.inFlight,limit:j.limit}:void 0});return}L(V.stderr,`[tool:progress] ${J}: ${K}`)},toolResult(J,K,W,G,j){if(Z==="jsonl"){q("tool_result",{tool_name:J,summary:K,target:W,tool_kind:G,success:j?.success,error_type:j?.errorType,error_message:j?.errorMessage,background:j?.background});return}L(V.stderr,`[tool:result] ${K}`)},mcpCatalogChanged(J){if(Z==="jsonl"){q("mcp_catalog_changed",{revision:J.revision,server_name:J.serverName,added:J.added,removed:J.removed,updated:J.updated});return}L(V.stderr,`[mcp:catalog] r${J.revision} ${J.serverName} +${J.added.length} -${J.removed.length} ~${J.updated.length}`)},mcpContentChanged(J){if(Z==="jsonl"){q("mcp_content_changed",{revision:J.revision,server_name:J.serverName,content_kind:J.contentKind==="resourceTemplates"?"resource_templates":J.contentKind,added:J.added,removed:J.removed,updated:J.updated});return}L(V.stderr,`[mcp:${J.contentKind}] r${J.revision} ${J.serverName} +${J.added.length} -${J.removed.length} ~${J.updated.length}`)},mcpResourceUpdated(J){if(Z==="jsonl"){q("mcp_resource_updated",{revision:J.revision,server_name:J.serverName,uri:J.uri});return}L(V.stderr,`[mcp:resource] r${J.revision} ${J.serverName} updated ${J.uri}`)},mcpConnectionChanged(J){if(Z==="jsonl"){q("mcp_connection_changed",{revision:J.revision,server_name:J.serverName,phase:J.phase,reason:J.reason,attempt:J.attempt,max_attempts:J.maxAttempts,...J.nextRetryAt!==void 0?{next_retry_at:J.nextRetryAt}:{},...J.error?{error:J.error}:{}});return}L(V.stderr,`[mcp:connection] r${J.revision} ${J.serverName} ${J.phase} ${J.attempt}/${J.maxAttempts}`)},mcpLog(J){if(Z==="jsonl"){q("mcp_log",{revision:J.revision,server_name:J.serverName,level:J.level,logger:J.logger,message:J.message,projected_bytes:J.projectedBytes,data_sha256:J.dataSha256,truncated:J.truncated,details_omitted:J.detailsOmitted,timestamp:J.timestamp,synthetic:J.synthetic});return}L(V.stderr,`[mcp:log] ${J.level} ${J.serverName}${J.logger?` logger=${J.logger}`:""}: ${J.message}`)},mcpInstructionsChanged(J){if(Z==="jsonl"){q("mcp_instructions_changed",{revision:J.revision,server_name:J.serverName,action:J.action,reason:J.reason,text:J.text,source_bytes:J.sourceBytes,projected_bytes:J.projectedBytes,sha256:J.sha256,truncated:J.truncated,details_omitted:J.detailsOmitted});return}L(V.stderr,`[mcp:instructions] ${J.action} ${J.serverName}${J.truncated?" (truncated)":""}`)},mcpTaskChanged(J){if(Z==="jsonl"){q("mcp_task_changed",{revision:J.revision,task_id:J.taskId,server_name:J.serverName,tool_name:J.toolName,status:J.status,status_message:J.statusMessage,created_at:J.createdAt,updated_at:J.updatedAt,completed_at:J.completedAt,has_result:J.hasResult,error:J.error});return}L(V.stderr,`[mcp:task] ${J.taskId} ${J.serverName}/${J.toolName} `+J.status)},projectRulesLoaded(J){if(Z==="jsonl"){q("project_rules_loaded",{files:J.files.map((K)=>({id:K.id,relative_path:K.relativePath,source:K.source,conditional:K.conditional,content_sha256:K.contentSha256})),trigger_paths:J.triggerPaths,blocked_write:J.blockedWrite});return}L(V.stderr,`[project-rules] loaded ${J.files.length} file(s)${J.blockedWrite?" before write":""}`)},userShellStarted(J,K,W){if(Z==="jsonl"){q("user_shell_started",{execution_id:J,command:K,auxiliary:W});return}L(V.stderr,`[user-shell:start] ${K}`)},userShellOutput(J,K,W,G){if(Z==="jsonl"){q("user_shell_output",{execution_id:J,stream:K,chunk:W,stream_truncated:G});return}(K==="stderr"?V.stderr:V.stdout).write(W)},userShellCompleted(J){if(Z==="jsonl"){q("user_shell_completed",{execution_id:J.executionId,message_id:J.messageId,status:J.record.status,exit_code:J.record.exitCode,duration_ms:J.record.durationMs,stdout:J.record.stdout,stderr:J.record.stderr,truncated:J.record.truncated,auxiliary:J.auxiliary});return}L(V.stderr,`[user-shell:${J.record.status}] exit=${J.record.exitCode??"null"} ${J.record.durationMs}ms`)},phase(J,K,W,G={}){if(Z==="jsonl"){q("phase",{phase:J,status:K,message:W,turn:G.turn,tool_name:G.toolName,target:G.target});return}L(V.stderr,`[phase:${J}] ${W}`)},toolDetail(J,K){if(Z==="jsonl"){q("tool_detail",{tool_name:J,detail:K});return}L(V.stderr,K)},taskUpdate(J){if(Z==="jsonl"){q("task_update",{tasks:J});return}for(let K of J)L(V.stderr,tJ(K))},goalFrontier(J){if(Z==="jsonl"){q("goal_frontier",{goal_id:J.goal.goalId,status:J.goal.status,task_list_id:J.frontier.taskListId,total:J.frontier.total,completed:J.frontier.completed,in_progress:J.frontier.inProgress,pending:J.frontier.pending,blocked:J.frontier.blocked,next_task:J.frontier.nextTask,digest_sha256:J.frontier.digestSha256,observed_at:J.frontier.observedAt,stall_category:J.goal.frontierStall?.category,stall_count:J.goal.frontierStall?.consecutiveCount});return}let K=J.frontier.nextTask?` next=#${J.frontier.nextTask.id} ${J.frontier.nextTask.subject}`:"";L(V.stderr,`[goal-frontier] ${J.frontier.completed}/${J.frontier.total} completed${K}`)},turnRecovery(J){let K=J.assessment;if(Z==="jsonl"){q("turn_recovery",{state:K.state,turn_id:K.turnId,input_message_count:K.inputMessageCount,reason:K.state==="requires_attention"?K.reason:void 0});return}L(V.stderr,`[turn-recovery:${K.state}] ${K.turnId}`)},goal(J){if(Z==="jsonl"){q("goal",{state:J.goal?"updated":"cleared",goal_id:J.goal?.goalId,status:J.goal?.status,verification_attempt:J.goal?.completionVerification?.attempt,verification_status:J.goal?.completionVerification?.status,verifier_session_id:J.goal?.completionVerification?.verifierSessionId,verification_evidence_sha256:J.goal?.completionVerification?.evidenceSha256,verification_summary:J.goal?.completionVerification?.summary,verification_stall_count:J.goal?.verificationStall?.consecutiveCount,premature_stop_pattern:J.goal?.prematureStop?.pattern,premature_stop_count:J.goal?.prematureStop?.consecutiveCount,execution_host_failure_category:J.goal?.executionHostFailure?.category,execution_host_failure_count:J.goal?.executionHostFailure?.consecutiveCount,frontier_stall_category:J.goal?.frontierStall?.category,frontier_stall_count:J.goal?.frontierStall?.consecutiveCount,root_turn_id:J.goal?.turnLineage?.rootTurnId,current_turn_id:J.goal?.turnLineage?.currentTurnId,parent_turn_id:J.goal?.turnLineage?.parentTurnId});return}if(J.goal)L(V.stderr,`[goal:${J.goal.status}] ${J.goal.objective}`);else L(V.stderr,"[goal:cleared]")},subagent(J){let K=J.kind==="subagent_spawned";if(Z==="jsonl"){q("subagent",{state:K?"spawned":"completed",session_id:J.sessionId,subagent_type:J.type,success:K?void 0:J.success,summary:K?void 0:J.summary,verification_verdict:K?void 0:J.verificationVerdict,resumed_from:J.resumedFrom,root_agent_id:J.rootAgentId,resume_depth:J.resumeDepth});return}L(V.stderr,`[subagent:${K?"spawned":"completed"}] ${J.sessionId}${J.resumedFrom?` resumed from ${J.resumedFrom}`:""}`)},tokenUsage(J){if(Z==="jsonl"){q("token_usage",{...J.scope?{scope:J.scope}:{},input_tokens:J.inputTokens,output_tokens:J.outputTokens,total_tokens:J.totalTokens,max_context_tokens:J.maxContextTokens,cache_read_tokens:J.cacheReadTokens,cache_write_tokens:J.cacheWriteTokens,prompt_cache_break:J.cacheBreak?{reason:J.cacheBreak.reason,previous_cache_read_tokens:J.cacheBreak.previousCacheReadTokens,cache_read_tokens:J.cacheBreak.cacheReadTokens,cache_write_tokens:J.cacheBreak.cacheWriteTokens,token_drop:J.cacheBreak.tokenDrop,elapsed_ms:J.cacheBreak.elapsedMs,call_number:J.cacheBreak.callNumber,system_prompt_changed:J.cacheBreak.systemPromptChanged,system_char_delta:J.cacheBreak.systemCharDelta,tools_changed:J.cacheBreak.toolsChanged,added_tool_count:J.cacheBreak.addedToolCount,removed_tool_count:J.cacheBreak.removedToolCount,changed_tool_count:J.cacheBreak.changedToolCount,model_changed:J.cacheBreak.modelChanged,request_policy_changed:J.cacheBreak.requestPolicyChanged}:void 0,cost_usd:J.costUsd});return}L(V.stderr,`[tokens] in=${J.inputTokens} out=${J.outputTokens} total=${J.totalTokens} / ${J.maxContextTokens}`)},compacting(J){let K=J.phase==="start";if(Z==="jsonl"){q("compacting",{state:K?"started":"completed",reason:J.reason,strategy:J.strategy,outcome:J.outcome,pre_tokens:J.preTokens,pre_token_source:J.preTokenSource,estimated_pending_tokens:J.estimatedPendingTokens,post_tokens:J.postTokens,sample_attempts:J.sampleAttempts,input_reductions:J.inputReductions,messages_omitted:J.messagesOmitted,files_omitted:J.filesOmitted,images_omitted:J.imagesOmitted,fallback_target_tokens:J.fallbackTargetTokens,fallback_messages_omitted:J.fallbackMessagesOmitted,fallback_messages_truncated:J.fallbackMessagesTruncated,failure_reason:J.failureReason,memory:J.memory});return}L(V.stderr,K?`[context] compacting started${J.reason?` (${J.reason})`:""}`:`[context] compacting ${J.outcome??"completed"}${J.sampleAttempts!==void 0?` after ${J.sampleAttempts} sample attempt${J.sampleAttempts===1?"":"s"}`:""}${J.inputReductions?` with ${J.inputReductions} input reduction${J.inputReductions===1?"":"s"}`:""}${J.imagesOmitted?` and ${J.imagesOmitted} image${J.imagesOmitted===1?"":"s"} omitted`:""}${J.fallbackTargetTokens!==void 0?`; fallback target ${J.fallbackTargetTokens} tokens, ${J.fallbackMessagesOmitted??0} messages omitted, ${J.fallbackMessagesTruncated??0} truncated`:""}${J.memory?.outcome==="written"?`; saved ${J.memory.entries} project memories`:""}`)},providerAdmission(J){if(Z==="jsonl"){q("provider_admission",{phase:J.phase,request_class:J.requestClass,resource:J.resource,scope:J.scope,reason:J.reason,queue_position:J.queuePosition,queue_depth:J.queueDepth,in_flight:J.inFlight,limit:J.limit,wait_ms:J.waitMs,max_wait_ms:J.maxWaitMs,recovery_remaining_ms:J.recoveryRemainingMs});return}L(V.stderr,`[provider-admission:${J.phase}] ${J.resource}/${J.scope} ${J.inFlight}/${J.limit} queue=${J.queuePosition}/${J.queueDepth}`)},providerRetry(J){if(Z==="jsonl"){q("provider_retry",{phase:J.phase,attempt:J.attempt,max_retries:J.maxRetries,reason:J.reason,status_code:J.statusCode,delay_ms:J.delayMs,next_retry_at:J.nextRetryAt,mode:J.mode,recovery_budget_ms:J.recoveryBudgetMs,recovery_elapsed_ms:J.recoveryElapsedMs,recovery_remaining_ms:J.recoveryRemainingMs,exhausted_by:J.exhaustedBy});return}let K=J.delayMs!==void 0?` in ${Math.max(0,Math.ceil(J.delayMs/1000))}s`:"";L(V.stderr,`[provider-retry:${J.phase}] ${J.attempt}/${J.maxRetries} ${J.reason}${K}`)},providerCircuit(J){if(Z==="jsonl"){q("provider_circuit",{phase:J.phase,reason:J.reason,status_code:J.statusCode,retry_after_ms:J.retryAfterMs,next_probe_at:J.nextProbeAt,open_duration_ms:J.openDurationMs,sample_count:J.sampleCount,failure_count:J.failureCount,recovery_remaining_ms:J.recoveryRemainingMs});return}let K=J.retryAfterMs!==void 0?` retry in ${Math.max(0,Math.ceil(J.retryAfterMs/1000))}s`:"";L(V.stderr,`[provider-circuit:${J.phase}] ${J.reason}${K}`)},providerStall(J){if(Z==="jsonl"){q("provider_stall",{phase:J.phase,stall_count:J.stallCount,duration_ms:J.durationMs,warning_after_ms:J.warningAfterMs,timeout_ms:J.timeoutMs,output_started:J.outputStarted});return}L(V.stderr,`[provider-stall:${J.phase}] ${J.durationMs}ms / ${J.timeoutMs}ms`)},providerRecovery(J){let K=J.recovery.snapshot;if(Z==="jsonl"){q("provider_recovery",{generation:J.recovery.generation,revision:J.recovery.revision,snapshot:K?{activity:K.activity,reason:K.reason,updated_at:K.updatedAt,next_action_at:K.nextActionAt,retry:K.retry?{attempt:K.retry.attempt,max_retries:K.retry.maxRetries,status_code:K.retry.statusCode,delay_ms:K.retry.delayMs,recovery_budget_ms:K.retry.recoveryBudgetMs,recovery_elapsed_ms:K.retry.recoveryElapsedMs,recovery_remaining_ms:K.retry.recoveryRemainingMs}:void 0,admission:K.admission?{request_class:K.admission.requestClass,scope:K.admission.scope,resource:K.admission.resource,queue_position:K.admission.queuePosition,queue_depth:K.admission.queueDepth,in_flight:K.admission.inFlight,limit:K.admission.limit,wait_ms:K.admission.waitMs,max_wait_ms:K.admission.maxWaitMs,recovery_remaining_ms:K.admission.recoveryRemainingMs}:void 0,circuit:K.circuit?{phase:K.circuit.phase,status_code:K.circuit.statusCode,retry_after_ms:K.circuit.retryAfterMs,next_probe_at:K.circuit.nextProbeAt,open_duration_ms:K.circuit.openDurationMs,sample_count:K.circuit.sampleCount,failure_count:K.circuit.failureCount,recovery_remaining_ms:K.circuit.recoveryRemainingMs}:void 0,stall:K.stall?{stall_count:K.stall.stallCount,duration_ms:K.stall.durationMs,warning_after_ms:K.stall.warningAfterMs,timeout_ms:K.stall.timeoutMs,output_started:K.stall.outputStarted}:void 0,fallback:K.fallback?{from:K.fallback.from,to:K.fallback.to,candidate:K.fallback.candidate,candidate_count:K.fallback.candidateCount,trigger:K.fallback.trigger.source==="retry"||K.fallback.trigger.source==="circuit"?{source:K.fallback.trigger.source,reason:K.fallback.trigger.reason,status_code:K.fallback.trigger.statusCode}:K.fallback.trigger}:void 0}:null});return}L(V.stderr,K?`[provider-recovery:${K.activity}] ${K.reason}`:"[provider-recovery:clear]")},turnActivity(J){if(Z!=="jsonl")return;let K=J.activity.snapshot;q("turn_activity",{generation:J.activity.generation,revision:J.activity.revision,snapshot:K?{phase:K.phase,started_at:K.startedAt,updated_at:K.updatedAt,turn:K.turn,max_turns:K.maxTurns,output_started:K.outputStarted,tool_calls_started:K.toolCallsStarted,tool_calls_completed:K.toolCallsCompleted,active_tools:K.activeTools.map((W)=>({name:W.name,kind:W.kind,started_at:W.startedAt,progress:W.progress,total:W.total})),active_tool_overflow:K.activeToolOverflow}:null})},modelFallback(J){let K=J.trigger.source==="retry"||J.trigger.source==="circuit"?{source:J.trigger.source,reason:J.trigger.reason,status_code:J.trigger.statusCode}:J.trigger;if(Z==="jsonl"){q("model_fallback",{from:J.from,to:J.to,candidate:J.candidate,candidate_count:J.candidateCount,trigger:K});return}L(V.stderr,`[provider-fallback] ${J.from.model} -> ${J.to.model}`)},actionStationarity(J){if(Z==="jsonl"){q("action_stationarity",{phase:J.phase,tool_name:J.toolName,run_length:J.runLength,nudge_threshold:J.nudgeThreshold,halt_threshold:J.haltThreshold,progress_aware:J.progressAware});return}L(V.stderr,`[action-stationarity:${J.phase}] ${J.toolName} ${J.runLength}/${J.haltThreshold}`)},turnLimit(J){if(Z==="jsonl"){q("turn_limit",{turns_count:J,action:"continue"});return}L(V.stderr,`[turn-limit] continuing after ${J} turns`)},taskSession(J){if(Z==="jsonl"){q("task_session",{session_id:J.sessionId,project_path:J.projectPath,source_project_path:J.sourceProjectPath,isolation:J.isolation,worktree_branch:J.worktreeBranch,base_commit:J.baseCommit});return}L(V.stderr,`[task:${J.isolation}] ${J.sessionId} ${J.sourceProjectPath} -> ${J.projectPath}${J.worktreeBranch?` (${J.worktreeBranch})`:""}`)},taskAdmission(J){if(Z==="jsonl"){q("task_admission",{state:J.state,queue_position:J.queuePosition,queue_depth:J.queueDepth,in_flight:J.inFlight,max_concurrent_tasks:J.maxConcurrentTasks});return}L(V.stderr,J.state==="queued"?`[task:queued] position ${J.queuePosition??1}/${J.queueDepth} (running ${J.inFlight}/${J.maxConcurrentTasks})`:`[task:running] admitted (running ${J.inFlight}/${J.maxConcurrentTasks})`)},output(J,K=0){if(Z==="jsonl"){q("output",{content:J,exit_code:K});return}L(K===0?V.stdout:V.stderr,J)},error(J){if(Z==="jsonl"){q("error",{message:J});return}L(V.stderr,J)}}}async function VK(V,Z={stdout:process.stdout,stderr:process.stderr},Q){let q="text",J=new mH,K={targetLocked:!1},W,G,j,P=aJ(Q),S=!1,F=new l(Z,{signal:P.signal,onFailure:(N)=>{S=!0,P.abort(N)}}),u={stdout:{write:(N)=>F.write("stdout",N)},stderr:{write:(N)=>F.write("stderr",N)}},B=WH(u,q),c=async()=>{try{return await F.flush(),!S}catch{return!1}},E=async(N)=>{return G?.(),G=void 0,j?.(),j=void 0,await c()?N:1};try{let N=rJ(V);q=JK(N.outputFormat);let T=await OH(N);B=WH(u,q,Boolean(T)),await gH();let n=N.forkSession!==!0&&(N.continue===!0||typeof N.resume==="string"&&N.resume.length>0)?await CH({message:N.message,_:N._,stdin:Q?.stdin}):await RH({...N,stdin:Q?.stdin}),C=n===void 0,U=C?{mode:"agent",content:""}:await kH(n);if(U.mode==="output"){if(U.content)B.output(U.content,U.exitCode??0);return await E(U.exitCode??0)}if(!C&&U.content.length>i)throw Error(`User prompt exceeds the ${i}-character durable input limit`);if(!C&&Buffer.byteLength(U.content,"utf8")>s)throw Error(`User prompt exceeds the ${s}-byte durable input limit`);let k=U.content.trimStart().startsWith("!")?U.content.trimStart().slice(1).trim():void 0;if(k!==void 0&&N.taskIsolation)throw Error("User shell commands cannot be combined with --task-isolation");if(k!==void 0&&T)throw Error("Output schemas cannot be combined with user shell commands");if(N.taskIsolation&&(N.continue||N.resume||N.forkSession))throw Error("--task-isolation cannot be combined with --continue, --resume, or --fork-session");let{sessionId:_,messages:t,metadata:e}=await wH({sessionId:N.sessionId,continue:N.continue,resume:N.resume,forkSession:N.forkSession,fallbackSessionPrefix:"headless"}),b=N.permissionMode??e?.permissionMode??"yolo",HH=N.model&&N.model!=="inherit"?N.model:xH()?.id,x=N.taskIsolation?await bH.createSessionTask({sessionId:_,prompt:U.content,sourceProjectPath:R(),isolation:N.taskIsolation,dispatch:{version:1,prompt:U.content,sourceProjectPath:R(),isolation:N.taskIsolation,permissionMode:b,...HH?{modelId:HH}:{},...T?{outputSchema:T}:{}}}):void 0,M=x?.metadata.projectPath??e?.projectPath??R();if(j=r.subscribe(($)=>{if($.type!=="subagent.provider.admission"||$.sessionId!==_||$.projectPath!==M)return;let X=$.properties,z=["queued","admitted","rejected"],A=["foreground","background","internal"],f=["stream","pending_count","pending_bytes"],I=["global","domain","owner","class"],iH=["capacity","queue_full","wait_timeout","closed"];if(!z.includes(X.phase)||!A.includes(X.requestClass)||!f.includes(X.resource)||!I.includes(X.scope)||X.reason!==void 0&&!iH.includes(X.reason)||typeof X.queuePosition!=="number"||typeof X.queueDepth!=="number"||typeof X.inFlight!=="number"||typeof X.limit!=="number"||typeof X.waitMs!=="number"||typeof X.maxWaitMs!=="number"||X.recoveryRemainingMs!==void 0&&typeof X.recoveryRemainingMs!=="number")return;B.providerAdmission({kind:"provider_admission",phase:X.phase,requestClass:X.requestClass,resource:X.resource,scope:X.scope,...X.reason!==void 0?{reason:X.reason}:{},queuePosition:X.queuePosition,queueDepth:X.queueDepth,inFlight:X.inFlight,limit:X.limit,waitMs:X.waitMs,maxWaitMs:X.maxWaitMs,...X.recoveryRemainingMs!==void 0?{recoveryRemainingMs:X.recoveryRemainingMs}:{}})}),!x)await o.setSessionPermissionMode(_,M,b);let uH=x?!1:await FH.cancelPendingNonInteractive(M,_);if(x)B.taskSession({sessionId:_,projectPath:M,sourceProjectPath:x.metadata.taskSourceProjectPath??R(),isolation:N.taskIsolation,worktreeBranch:x.metadata.taskWorktreeBranch,baseCommit:x.metadata.taskBaseCommit}),G=r.subscribe(($)=>{if($.type!=="task.status"||$.sessionId!==_||$.projectPath!==M||!["queued","running"].includes(String($.properties.taskStatus))||typeof $.properties.taskQueueDepth!=="number"||typeof $.properties.taskInFlight!=="number"||typeof $.properties.taskConcurrencyLimit!=="number")return;B.taskAdmission({state:$.properties.taskStatus,queuePosition:typeof $.properties.taskQueuePosition==="number"?$.properties.taskQueuePosition:void 0,queueDepth:$.properties.taskQueueDepth,inFlight:$.properties.taskInFlight,maxConcurrentTasks:$.properties.taskConcurrencyLimit})});let cH={messages:uH?await o.loadSessionModelContext(_,M):[...t],userId:"cli-user",sessionId:_,workspaceRoot:M,permissionMode:b,signal:P.signal,...x?.taskWorktree?{worktreeActive:!0}:{},confirmationHandler:eJ()};W=await EH.create({sessionId:_,workspaceRoot:M,modelId:N.model,permissionMode:b,mcpConfig:N.mcpConfig,strictMcpConfig:N.strictMcpConfig,agents:N.agents?fH(N.agents):void 0,...x?.taskWorktree?{taskWorktree:x.taskWorktree}:{},...x?.metadata.taskIsolation?{taskIsolation:x.metadata.taskIsolation}:{},...t.length>0?{sessionStart:{isResume:!0,resumeSessionId:_}}:{}});let{pendingInputOnly:dH,resumedGoal:JH,goalContinuationOnly:pH,finalRecovery:KH,recoveryAssessment:d,recoveredFinalResponse:y}=await hH(W,C);if(KH&&d.state==="requires_attention")return B.turnRecovery({kind:"turn_recovery",assessment:d}),B.error("Error: Turn recovery requires explicit user attention before continuation"),await E(2);if(KH){if(!y)throw Error("No unfinished turn or active goal to resume");let $=d;if($.state!=="none")B.turnRecovery({kind:"turn_recovery",assessment:$});if(JH)B.goal({kind:"goal_updated",goal:JH});if(y.structuredOutput&&y.structuredOutputSchemaDigest)B.structuredOutput({kind:"structured_output",output:y.structuredOutput,schemaDigest:y.structuredOutputSchemaDigest});else B.content(y.content);return B.phase("completed","done","Recovered headless run completed"),await E(0)}if(k!==void 0){let $=await W.executeUserShellCommand(k,{signal:P.signal,onEvent:async(X)=>{if(X.type==="started")B.userShellStarted(X.executionId,X.command,X.auxiliary);else if(X.type==="output")B.userShellOutput(X.executionId,X.stream,X.chunk,X.streamTruncated);await c()}});return B.userShellCompleted($),await E($.record.status==="completed"?0:$.record.status==="aborted"?130:$.record.exitCode??1)}let vH=N.maxTurns??W.getConfig().maxTurns,lH=x?.taskWorktree?[...new Set([...N.disallowedTools??[],"EnterWorktree","ExitWorktree"])]:N.disallowedTools,aH=await AH.createWithRuntime(W,{sessionId:_,systemPrompt:N.systemPrompt,appendSystemPrompt:N.appendSystemPrompt,maxTurns:N.maxTurns,modelId:N.model,permissionMode:b,toolWhitelist:N.allowedTools,toolBlacklist:lH,mcpConfig:N.mcpConfig,strictMcpConfig:N.strictMcpConfig}),h=await PH(aH.chatStream(U.content,cH,{stream:!0,signal:P.signal,maxTurns:N.maxTurns,builtinVerification:N.verificationAgent!==!1,outputSchema:T,pendingInputOnly:dH,goalContinuationOnly:pH,...vH===-1?{onTurnLimitReached:async($)=>{return B.turnLimit($.turnsCount),{continue:!0,reason:"headless-auto-continue"}}}:{}}),async($)=>{switch($.kind){case"content_delta":if(!T||q==="jsonl")J.markAssistantContent();B.contentDelta($.delta);break;case"thinking_delta":J.setThinkingOpened(B.thinkingDelta($.delta,J.hasOpenThinking()));break;case"stream_end":{let X=J.completeStream();B.streamEnd(X.wroteAssistantContent,X.openedThinking);break}case"tool_start":{let X=$.toolCall;if(!("function"in X))break;if(X.function.name===m)break;if(["TaskCreate","TaskUpdate","TaskList"].includes(X.function.name))break;try{let z=JSON.parse(X.function.arguments),A=MH(X.function.name,z),f=LH(X.function.name,z),I=KK(X.function.name,A,f,K);if(I.shouldLockTarget)K.targetLocked=!0;B.phase(I.phase,I.status,I.message,{toolName:X.function.name,target:f}),B.toolStart(X.function.name,A,f,$.toolKind)}catch{B.phase(K.targetLocked?"executing":"searching",K.targetLocked?"hit":"ongoing",K.targetLocked?`Working within target: ${X.function.name}`:`Still searching: ${X.function.name}`,{toolName:X.function.name}),B.toolStart(X.function.name,X.function.name,void 0,$.toolKind)}break}case"tool_progress":{let X=$.toolCall;if(!("function"in X))break;if(X.function.name===m)break;B.toolProgress(X.function.name,$.update.message,$.update.progress,$.update.total,$.update.admission);break}case"tool_result":{let X=$.toolCall;if(!("function"in X))break;if(X.function.name===m)break;let z;try{let f=JSON.parse(X.function.arguments);z=LH(X.function.name,f)}catch{z=void 0}let A=_H(zH(X.function.name,$.result),UH);if(B.toolResult(X.function.name,A.summary,z,void 0,{success:$.result.success,errorType:$.result.error?.type,errorMessage:$.result.error?.message,background:lJ($.result.metadata)}),A.detail)B.toolDetail(X.function.name,A.detail);break}case"token_usage":B.tokenUsage($.usage);break;case"compaction":B.compacting($);break;case"task_update":B.taskUpdate($.tasks);break;case"goal_frontier_updated":B.goalFrontier($);break;case"turn_recovery":B.turnRecovery($);break;case"structured_output":B.structuredOutput($);break;case"mcp_catalog_changed":B.mcpCatalogChanged($);break;case"mcp_content_changed":B.mcpContentChanged($);break;case"mcp_resource_updated":B.mcpResourceUpdated($);break;case"mcp_connection_changed":B.mcpConnectionChanged($);break;case"mcp_log":B.mcpLog($);break;case"mcp_instructions_changed":B.mcpInstructionsChanged($);break;case"mcp_task_changed":B.mcpTaskChanged($);break;case"project_rules_loaded":B.projectRulesLoaded($);break;case"steering_applied":case"follow_up_started":case"follow_up_queue_changed":case"goal_continuation_started":break;case"goal_updated":B.goal($);break;case"subagent_spawned":case"subagent_completed":B.subagent($);break;case"model_fallback":B.modelFallback($);break;case"provider_admission":B.providerAdmission($);break;case"provider_retry":B.providerRetry($);break;case"provider_circuit":B.providerCircuit($);break;case"provider_stall":B.providerStall($);break;case"provider_recovery":B.providerRecovery($);break;case"turn_activity":B.turnActivity($);break;case"action_stationarity":B.actionStationarity($);break;case"turn_start":if($.turn===1)K.targetLocked=!1;B.phase("turn",K.targetLocked?"hit":"ongoing",`Turn ${$.turn} started`,{turn:$.turn});break;default:{let X=$}}await c()});if(h.metadata?.outputTruncated)B.error("[warning] 输出因达到 token 上限被截断,部分内容可能不完整。");if(h.metadata?.recoveryAttention)return B.error("Error: Turn recovery requires explicit user attention before continuation"),await E(2);if(!h.success)return B.error(`Error: ${h.error?.message??"Agent execution failed"}`),await E(1);return B.phase("completed","done","Headless run completed"),await E(0)}catch(N){if(!S){if(J.hasOpenThinking()&&q==="text")u.stderr.write(`
6
- `);B.error(`Error: ${HK(N)}`)}return await E(1)}finally{G?.(),j?.();try{await W?.dispose()}finally{F.close(),P.dispose()}}}async function uK(){if(!process.argv.slice(2).includes("--headless"))return!1;let{headless:Q,"output-format":q,"system-prompt":J,"append-system-prompt":K,"max-turns":W,...G}=SH,j=pJ(vJ(process.argv)).scriptName("blade").strict(!1).options(G).middleware([yH,TH,IH]);return nJ(j),await j.parse(),!0}export{VK as runHeadless,uK as handleHeadlessMode,sJ as HeadlessOptionsSchema};
@@ -1,10 +0,0 @@
1
- import{a as T,b as W,c as X,d as Y}from"./chunk-ms0wve9g.js";import"./chunk-1beqtjsw.js";import"./chunk-8sth12hd.js";import"./chunk-sa9fxss4.js";import"./chunk-v1k6nvth.js";import"./chunk-30p7aff1.js";import"./chunk-25s0c8km.js";import"./chunk-f6hc7t65.js";import"./chunk-pm5ssr7m.js";import"./chunk-xseh3f4m.js";import"./chunk-7vzz3rsx.js";import"./chunk-9qxch6sy.js";import"./chunk-hmw99nm1.js";import"./chunk-a731hdwa.js";import"./chunk-dxq7462e.js";import"./chunk-tqt5c2f5.js";import{Df as R}from"./chunk-447ps2te.js";import"./chunk-0b83mt1c.js";import{Zf as Q}from"./chunk-7eset766.js";import"./chunk-5yyp6njq.js";import"./chunk-v508x7cg.js";import"./chunk-xcy45yxx.js";import"./chunk-5bc4hwt9.js";import"./chunk-h8w3ahnk.js";import"./chunk-zfxcef0z.js";import"./chunk-g0hhqxpg.js";import"./chunk-8n3jythp.js";import"./chunk-3kszepm6.js";import"./chunk-wcps5gjm.js";import"./chunk-vbjgcn49.js";import"./chunk-06hkf59s.js";import"./chunk-xzva8y4e.js";import"./chunk-3y2x6fb6.js";import"./chunk-yrr9mdjn.js";import"./chunk-m30qwpe9.js";import"./chunk-n8qg68y2.js";import"./chunk-hrtf7dba.js";import"./chunk-9ydrwcpy.js";import"./chunk-0wcnkxe8.js";import"./chunk-4cdk4mds.js";import{Xj as M}from"./chunk-a1tt14a2.js";import"./chunk-zjezws85.js";import"./chunk-gzbb747a.js";import"./chunk-f552hzcx.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,17 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/MarkdownRenderer-d7DdyYdx.js","assets/rolldown-runtime-hePW80VL.js","assets/session-events-CvFfHkFA.js","assets/vendor-radix-CHeA_3Pt.js","assets/preload-helper-BC9Zf9qO.js","assets/copy-C-KvzjCC.js","assets/index-D-oma3Je.js","assets/vendor-react-hNfZDUf2.js","assets/index-BVEiHNFk.css"])))=>i.map(i=>d[i]);
2
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{O as t,_ as n,a as r,c as i,d as a,dt as o,g as s,i as c,s as l,u,v as d,y as f}from"./session-events-CvFfHkFA.js";import{C as p,T as m,i as h,n as g,r as _,t as v}from"./vendor-radix-CHeA_3Pt.js";import{c as y,l as b,r as x,s as S,t as C}from"./preload-helper-BC9Zf9qO.js";import{n as w,t as T}from"./team-qGS2kixH.js";import{i as E,n as D,r as O,t as k}from"./message-square-plus-CKu9bFq3.js";import{t as A}from"./chevron-right-6ZTOJE0p.js";import{t as j}from"./clock-3-P2q6i6vm.js";import{t as M}from"./copy-C-KvzjCC.js";import{n as N,t as P}from"./triangle-alert-Detl9fRQ.js";import{t as F}from"./pause-D2FxNG-w.js";import{t as ee}from"./pencil-D6HI7KC8.js";import{t as I}from"./play-4jKCDYR-.js";import{t as te}from"./plus-C4p8E1Nk.js";import{A as ne,B as re,D as ie,E as L,G as ae,I as oe,K as R,L as se,O as ce,P as z,R as B,T as V,U as H,V as le,W as U,X as ue,Z as de,_ as fe,_t as W,at as pe,c as me,ct as he,et as ge,gt as _e,ht as ve,it as ye,j as G,l as be,lt as xe,nt as Se,ot as Ce,pt as we,q as Te,rt as Ee,s as De,st as K,tt as Oe,vt as ke,y as q,yt as Ae,z as je}from"./index-D-oma3Je.js";import{t as Me}from"./ScrollArea-D1tPWHKZ.js";import{t as Ne}from"./teamService-DfIvlI2_.js";var Pe={name:`circle-question-mark`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]],aliases:[`help-circle`,`circle-help`]};Pe.node;var Fe=b(Pe),Ie={name:`corner-down-left`,size:24,node:[[`path`,{d:`M20 4v7a4 4 0 0 1-4 4H4`,key:`6o5b7l`}],[`path`,{d:`m9 10-5 5 5 5`,key:`1kshq7`}]]};Ie.node;var Le=b(Ie),Re={name:`files`,size:24,node:[[`path`,{d:`M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8`,key:`14sh0y`}],[`path`,{d:`M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z`,key:`1970lx`}],[`path`,{d:`M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1`,key:`l4dndm`}]]};Re.node;var ze=b(Re),Be={name:`gauge`,size:24,node:[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]};Be.node;var Ve=b(Be),He={name:`list-ordered`,size:24,node:[[`path`,{d:`M11 5h10`,key:`1cz7ny`}],[`path`,{d:`M11 12h10`,key:`1438ji`}],[`path`,{d:`M11 19h10`,key:`11t30w`}],[`path`,{d:`M4 4h1v5`,key:`10yrso`}],[`path`,{d:`M4 9h2`,key:`r1h2o0`}],[`path`,{d:`M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02`,key:`xtkcd5`}]]};He.node;var Ue=b(He),We={name:`lock-keyhole`,size:24,node:[[`circle`,{cx:`12`,cy:`16`,r:`1`,key:`1au0dj`}],[`rect`,{x:`3`,y:`10`,width:`18`,height:`12`,rx:`2`,key:`6s8ecr`}],[`path`,{d:`M7 10V7a5 5 0 0 1 10 0v3`,key:`1pqi11`}]]};We.node;var Ge=b(We),Ke={name:`message-circle-question-mark`,size:24,node:[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]],aliases:[`message-circle-question`]};Ke.node;var qe=b(Ke),Je={name:`target`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]};Je.node;var Ye=b(Je),Xe={name:`timer`,size:24,node:[[`line`,{x1:`10`,x2:`14`,y1:`2`,y2:`2`,key:`14vaq8`}],[`line`,{x1:`12`,x2:`15`,y1:`14`,y2:`11`,key:`17fdiu`}],[`circle`,{cx:`12`,cy:`14`,r:`8`,key:`1e1u0o`}]]};Xe.node;var Ze=b(Xe),Qe={name:`users`,size:24,node:[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]};Qe.node;var $e=b(Qe),J=e(o(),1),Y=p();function et(e){return e.split(`/`).filter(Boolean).at(-1)||e}function tt(){let e=y(),t=q(e=>e.sessions),n=q(e=>e.currentSessionRef),r=q(e=>e.historySurfaceSelection),i=q(e=>e.taskDeliveryActions),o=q(e=>e.deliverTask),s=c(e=>e.openFilePreview),[l,d]=(0,J.useState)(!1),f=t.find(e=>ce({sessionId:e.sessionId,projectPath:e.projectPath},n));if(u(r)||!f?.taskIsolation)return null;let p=f.taskDiffStat,m=f.taskIsolation===`worktree`,h=ne(f),g=i[G(h)],_=f.taskDelivery,v=_?.status===`conflicted`,b=!!(p&&(p.changedFiles>0||p.commits>0)),x=![`queued`,`running`].includes(f.taskStatus),S=_?.status===`applied`||_?.status===`discarded`,C=m&&b&&x&&!S,w=p?p.additions+p.deletions:0,T=w>0&&p?p.additions/w*100:0,E=e=>{a(q.getState())||o(h,e).catch(()=>void 0)};return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`flex min-h-10 flex-wrap items-center gap-x-3 gap-y-1.5 border-b border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))]/60 px-3 py-1.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink-muted))] backdrop-blur-sm sm:px-5`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5`,children:[(0,Y.jsx)(he,{className:`h-3 w-3 shrink-0 text-[hsl(var(--deck-ink-faint))]`}),(0,Y.jsx)(`span`,{className:`truncate text-[hsl(var(--deck-ink))]`,children:et(f.taskSourceProjectPath||f.projectPath)})]}),(0,Y.jsx)(`span`,{className:`text-[hsl(var(--deck-ink-faint))]/60`,children:`/`}),(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5`,children:[m?(0,Y.jsx)(ye,{className:`h-3 w-3 shrink-0 text-[hsl(var(--deck-accent))]`}):(0,Y.jsx)(he,{className:`h-3 w-3 shrink-0`}),(0,Y.jsx)(`span`,{className:m?`text-[hsl(var(--deck-accent))]`:void 0,children:e(m?`artifact.env.isolated`:`artifact.env.local`)})]}),f.taskWorktreeBranch&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`text-[hsl(var(--deck-ink-faint))]/60`,children:`/`}),(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5 truncate`,title:f.taskWorktreeBranch,children:[(0,Y.jsx)(xe,{className:`h-3 w-3 shrink-0 text-[hsl(var(--deck-ink-faint))]`}),(0,Y.jsx)(`span`,{className:`truncate`,children:f.taskWorktreeBranch})]})]})]}),p&&(0,Y.jsxs)(`div`,{className:`ml-auto flex max-w-full items-center gap-2`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-[hsl(var(--deck-ink-muted))]`,children:[(0,Y.jsx)(ze,{className:`h-3 w-3 text-[hsl(var(--deck-ink-faint))]`}),(0,Y.jsx)(`span`,{className:`tabular-nums`,children:p.changedFiles})]}),w>0&&(0,Y.jsxs)(`span`,{className:`relative hidden h-1.5 w-14 overflow-hidden rounded-sm border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] sm:inline-flex`,"aria-hidden":`true`,children:[(0,Y.jsx)(`span`,{className:`h-full bg-[hsl(var(--deck-accent))]`,style:{width:`${T}%`}}),(0,Y.jsx)(`span`,{className:`h-full bg-red-500/80`,style:{width:`${100-T}%`}})]}),(0,Y.jsxs)(`span`,{className:`tabular-nums text-[hsl(var(--deck-accent))]`,children:[`+`,p.additions]}),(0,Y.jsxs)(`span`,{className:`tabular-nums text-red-600 dark:text-red-400`,children:[`-`,p.deletions]}),p.commits>0&&(0,Y.jsx)(`span`,{className:`hidden tabular-nums text-[hsl(var(--deck-ink-faint))] sm:inline`,children:e(`artifact.commits`,{count:p.commits})}),b&&_?.status!==`discarded`&&(0,Y.jsx)(`button`,{type:`button`,onClick:()=>{a(q.getState())||s({tab:`diff`})},className:`inline-flex items-center gap-1 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-2 py-1 text-[hsl(var(--deck-ink))] transition hover:border-[hsl(var(--deck-accent)/0.55)] hover:text-[hsl(var(--deck-accent))]`,children:e(`artifact.review`)}),C&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`button`,{type:`button`,disabled:!!g,onClick:()=>E(`apply`),className:`inline-flex items-center gap-1 rounded-md bg-[hsl(var(--deck-accent))] px-2 py-1 font-semibold text-white transition hover:brightness-95 disabled:cursor-wait disabled:opacity-65`,children:[g===`apply`?(0,Y.jsx)(K,{className:`h-3 w-3 animate-spin`}):(0,Y.jsx)(de,{className:`h-3 w-3`}),e(g===`apply`?`artifact.applying`:v?`artifact.retryApply`:`artifact.apply`)]}),(0,Y.jsx)(`button`,{type:`button`,disabled:!!g,onClick:()=>d(!0),className:`inline-flex items-center gap-1 rounded-md px-1.5 py-1 text-[hsl(var(--deck-ink-faint))] transition hover:bg-red-500/10 hover:text-red-600 disabled:cursor-wait disabled:opacity-50 dark:hover:text-red-400`,"aria-label":e(`artifact.discard`),title:e(`artifact.discard`),children:g===`discard`?(0,Y.jsx)(K,{className:`h-3 w-3 animate-spin`}):(0,Y.jsx)(R,{className:`h-3 w-3`})})]}),_?.status===`applied`&&(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-md bg-emerald-500/10 px-2 py-1 font-semibold text-emerald-700 dark:text-emerald-300`,children:[(0,Y.jsx)(ke,{className:`h-3 w-3`}),e(`artifact.applied`)]}),_?.status===`discarded`&&(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-md bg-[hsl(var(--deck-surface-2))] px-2 py-1 text-[hsl(var(--deck-ink-faint))]`,children:[(0,Y.jsx)(R,{className:`h-3 w-3`}),e(`artifact.discarded`)]})]}),_?.status===`conflicted`&&(0,Y.jsxs)(`div`,{className:`flex w-full items-start gap-1.5 border-t border-amber-500/20 pt-1.5 text-amber-700 dark:text-amber-300`,role:`alert`,children:[(0,Y.jsx)(P,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,Y.jsx)(`span`,{className:`block`,children:_.message||e(`artifact.conflict`)}),(0,Y.jsx)(`span`,{className:`block text-[hsl(var(--deck-ink-faint))]`,children:e(`artifact.conflictHint`)})]})]})]}),(0,Y.jsx)(oe,{open:l,onOpenChange:d,children:(0,Y.jsxs)(se,{className:`w-[calc(100%_-_2rem)] max-w-md border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] text-[hsl(var(--deck-ink))]`,children:[(0,Y.jsxs)(re,{children:[(0,Y.jsx)(le,{children:e(`artifact.discardDialog.title`)}),(0,Y.jsx)(B,{className:`text-[hsl(var(--deck-ink-muted))]`,children:e(`artifact.discardDialog.description`,{project:et(f.taskSourceProjectPath||f.projectPath),count:p?.changedFiles??0})})]}),(0,Y.jsx)(`div`,{className:`rounded-lg border border-red-500/20 bg-red-500/5 px-3 py-2 text-xs leading-relaxed text-red-700 dark:text-red-300`,children:e(`artifact.discardDialog.warning`)}),(0,Y.jsxs)(je,{className:`gap-2 sm:space-x-0`,children:[(0,Y.jsx)(`button`,{type:`button`,onClick:()=>d(!1),className:`rounded-md border border-[hsl(var(--deck-border))] px-3 py-2 text-sm hover:bg-[hsl(var(--deck-surface-2))]`,children:e(`artifact.discardDialog.cancel`)}),(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>{d(!1),E(`discard`)},className:`inline-flex items-center justify-center gap-1.5 rounded-md bg-red-600 px-3 py-2 text-sm font-semibold text-white hover:bg-red-700`,children:[(0,Y.jsx)(R,{className:`h-3.5 w-3.5`}),e(`artifact.discardDialog.confirm`)]})]})]})})]})}var nt=1600,rt=new WeakMap;function it(e,t,n){let r=e.findIndex(e=>e.id===t);return r<0?null:Math.max(n,e.length-r)}function at(e,t){return e?[...e.querySelectorAll(`[data-chat-message-id]`)].find(e=>e.dataset.chatMessageId===t)??null:null}function ot(e,t){let n=at(e,t);if(!n)return!1;n.scrollIntoView({behavior:`smooth`,block:`center`});let r=rt.get(n);r&&clearTimeout(r),n.dataset.chatMessageHighlighted=`true`;let i=setTimeout(()=>{delete n.dataset.chatMessageHighlighted,rt.delete(n)},nt);return rt.set(n,i),!0}function st(e){return!!(e.metadata?.codeReview||e.metadata?.structuredOutput)}function ct(e){let t=e.agentContent;return!(e.role!==`assistant`||!t||st(e)||t.tasks.length!==0||n(t).length!==0||t.confirmation||t.question||t.elicitation)}function lt(e,t){return t.map((t,n)=>({...t,id:`${e}:${n}:${t.id}`}))}function ut(e){return!ct(e)||!e.agentContent?e:{...e,displaySourceMessageIds:[e.id],agentContent:{...e.agentContent,timeline:lt(e.id,s(e.agentContent))}}}function dt(e,t){let n=e.map(e=>({...e})),r=new Map(n.map((e,t)=>[e.toolCallId,t]));for(let e of t){let t=r.get(e.toolCallId);t===void 0?(r.set(e.toolCallId,n.length),n.push({...e})):n[t]={...n[t],...e}}return n}function ft(e,t){return[e,t].filter(Boolean).join(`
3
-
4
- `)}function pt(e,t){let n=e.agentContent,r=t.agentContent,i=new Set(n.toolCalls.map(e=>e.toolCallId)),a=s(r).flatMap(e=>{if(e.type!==`tool_group`)return[e];let t=e.toolCallIds.filter(e=>!i.has(e)&&(i.add(e),!0));return t.length>0?[{...e,toolCallIds:t}]:[]});return{...e,...e.metadata||t.metadata?{metadata:{...e.metadata,...t.metadata}}:{},displaySourceMessageIds:[...e.displaySourceMessageIds??[e.id],...t.displaySourceMessageIds??[t.id]],agentContent:{...n,timeline:[...s(n),...a],textBefore:ft(n.textBefore,r.textBefore),toolCalls:dt(n.toolCalls,r.toolCalls),textAfter:ft(n.textAfter,r.textAfter),thinkingContent:ft(n.thinkingContent,r.thinkingContent),tasks:[],subagent:null,subagents:[],confirmation:null,question:null,elicitation:null}}}function mt(e){let t=[];for(let n of e){let e=ut(n),r=t[t.length-1];r&&ct(r)&&ct(e)?t[t.length-1]=pt(r,e):t.push(e)}return t}var ht=new Set([`completed`,`stale`,`failed`,`aborted`,`interrupted`]),gt={completed:`chat.review.status.completed`,stale:`chat.review.status.stale`,failed:`chat.review.status.failed`,aborted:`chat.review.status.aborted`,interrupted:`chat.review.status.interrupted`},_t={completed:`bg-emerald-500/10 text-emerald-700 dark:text-emerald-300 border-emerald-500/20`,stale:`bg-amber-500/10 text-amber-700 dark:text-amber-300 border-amber-500/20`,failed:`bg-red-500/10 text-red-700 dark:text-red-300 border-red-500/20`,aborted:`bg-zinc-500/10 text-zinc-700 dark:text-zinc-300 border-zinc-500/20`,interrupted:`bg-amber-500/10 text-amber-700 dark:text-amber-300 border-amber-500/20`};function vt(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:void 0}function yt(e){let t=vt(e),n=vt(t?.codeLocation),r=t?.priority,i=t?.confidenceScore,a=n?.lineStart,o=n?.lineEnd;if(typeof t?.title==`string`&&typeof t.body==`string`&&(r===0||r===1||r===2||r===3)&&typeof i==`number`&&Number.isFinite(i)&&typeof n?.path==`string`&&Number.isInteger(a)&&Number.isInteger(o))return{title:t.title,body:t.body,priority:r,confidenceScore:i,codeLocation:{path:n.path,lineStart:a,lineEnd:o}}}function bt(e){let t=vt(e),n=vt(t?.target);if(t?.phase!==`completed`||typeof t.status!=`string`||!ht.has(t.status)||typeof n?.label!=`string`||n.kind!==`uncommitted`&&n.kind!==`base`&&n.kind!==`commit`||typeof t.overallExplanation!=`string`||!Array.isArray(t.findings))return;let r=t.findings.map(yt);if(!r.some(e=>e===void 0))return{status:t.status,target:{kind:n.kind,label:n.label,...typeof n.reference==`string`?{reference:n.reference}:{}},overallExplanation:t.overallExplanation,findings:r,...typeof t.error==`string`?{error:t.error}:{}}}function xt(e){let{path:t,lineStart:n,lineEnd:r}=e.codeLocation;return n===r?`${t}:L${n}`:`${t}:L${n}-${r}`}function St({report:e}){let t=y(),n=e.target.kind===`uncommitted`?t(`chat.review.target.uncommitted`):e.target.kind===`base`?t(`chat.review.target.base`,{ref:e.target.reference??e.target.label}):t(`chat.review.target.commit`,{ref:e.target.reference??e.target.label});return(0,Y.jsxs)(`section`,{"data-code-review-report":!0,className:`overflow-hidden rounded-xl border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]`,children:[(0,Y.jsxs)(`header`,{className:`flex flex-wrap items-center justify-between gap-3 border-b border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-surface-2))]/60 px-4 py-3`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h3`,{className:`text-[13px] font-semibold text-[hsl(var(--deck-ink))]`,children:t(`chat.review.title`)}),(0,Y.jsxs)(`p`,{className:`mt-0.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]`,children:[t(`chat.review.target`),`: `,n]})]}),(0,Y.jsxs)(`span`,{className:H(`rounded-full border px-2.5 py-1 font-mono text-[10.5px] font-medium`,_t[e.status]),children:[t(`chat.review.status`),`: `,t(gt[e.status])]})]}),(0,Y.jsxs)(`div`,{className:`space-y-4 px-4 py-3.5`,children:[(0,Y.jsx)(`p`,{className:`whitespace-pre-wrap text-[13px] leading-6 text-[hsl(var(--deck-ink-muted))]`,children:e.overallExplanation}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,Y.jsx)(`h4`,{className:`deck-eyebrow text-[hsl(var(--deck-ink-faint))]`,children:t(`chat.review.findings`)}),(0,Y.jsx)(`span`,{className:`font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]`,children:e.findings.length})]}),e.findings.length===0?(0,Y.jsx)(`div`,{className:`rounded-lg bg-[hsl(var(--deck-surface-2))] px-3 py-2.5 text-[12px] text-[hsl(var(--deck-ink-muted))]`,children:t(`chat.review.noFindings`)}):(0,Y.jsx)(`ol`,{className:`space-y-2`,children:e.findings.map((e,n)=>(0,Y.jsxs)(`li`,{className:`rounded-lg border border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))] px-3 py-2.5`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-2`,children:[(0,Y.jsx)(`h5`,{className:`text-[12.5px] font-medium leading-5 text-[hsl(var(--deck-ink))]`,children:e.title}),(0,Y.jsx)(`span`,{className:`shrink-0 font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]`,children:t(`chat.review.confidence`,{value:e.confidenceScore.toFixed(2)})})]}),(0,Y.jsx)(`code`,{className:`mt-1 block text-[10.5px] text-[hsl(var(--deck-accent))]`,children:xt(e)}),(0,Y.jsx)(`p`,{className:`mt-1.5 whitespace-pre-wrap text-[12px] leading-5 text-[hsl(var(--deck-ink-muted))]`,children:e.body})]},`${e.codeLocation.path}:${e.codeLocation.lineStart}:${n}`))})]}),e.error&&(0,Y.jsxs)(`div`,{className:`rounded-lg border border-red-500/20 bg-red-500/5 px-3 py-2 text-[11px] text-red-700 dark:text-red-300`,children:[(0,Y.jsxs)(`span`,{className:`font-medium`,children:[t(`chat.review.error`),`:`]}),` `,e.error]})]})]})}function Ct({elicitation:e,messageId:t}){let n=y(),r=q(e=>e.currentSessionRef),i=q(e=>e.setElicitation),[o,s]=(0,J.useState)(()=>Tt(e.details.fields??[])),[c,l]=(0,J.useState)(()=>Et(e.details.fields??[])),[u,d]=(0,J.useState)(!1),[f,p]=(0,J.useState)(),m=e.details.fields??[],h=(0,J.useMemo)(()=>m.every(e=>{if(!e.required)return!0;if(kt(e))return!!(c[e.name]?.trim()||e.defaultValue!==void 0);let t=o[e.name]??e.defaultValue;return Array.isArray(t)?t.length>0:t!==void 0}),[m,c,o]);if(e.status!==`pending`)return(0,Y.jsx)(`div`,{className:`rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] px-3 py-2 font-mono text-[12px] text-[hsl(var(--deck-ink-muted))]`,children:n(e.status===`cancelled`?`interaction.elicitation.cancelled`:`interaction.elicitation.responded`)});let g=async(o,s)=>{if(!a(q.getState())&&r&&!u){d(!0),p(void 0);try{await z.respondToElicitation(r,e.toolCallId,{action:o,...s?{content:s}:{}}),i(t,{...e,status:`responded`})}catch(e){p(e instanceof Error?e.message:n(`interaction.elicitation.failed`))}finally{d(!1)}}},_=async()=>{try{await g(`accept`,Dt(m,o,c))}catch(e){p(e instanceof Error?e.message:String(e))}};return(0,Y.jsxs)(`div`,{"data-pending-interaction":`elicitation`,tabIndex:-1,role:`alert`,className:`space-y-4 rounded-lg border border-amber-300/70 bg-amber-50/70 p-4 outline-none focus-visible:ring-2 focus-visible:ring-amber-500 dark:border-amber-800/70 dark:bg-amber-950/25`,children:[(0,Y.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,Y.jsx)(ue,{className:`mt-0.5 h-4 w-4 shrink-0 text-amber-600 dark:text-amber-400`}),(0,Y.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,Y.jsxs)(`div`,{className:`font-mono text-[12px] font-semibold text-[hsl(var(--deck-ink))]`,children:[n(`interaction.elicitation.title`),` · `,e.details.serverName]}),(0,Y.jsx)(`div`,{className:`font-mono text-[12px] text-[hsl(var(--deck-ink-muted))]`,children:e.details.message}),(0,Y.jsx)(`div`,{className:`font-mono text-[11px] text-amber-700 dark:text-amber-300`,children:n(`interaction.elicitation.warning`)})]})]}),e.details.mode===`url`?(0,Y.jsxs)(`div`,{className:`space-y-3`,children:[(0,Y.jsxs)(`div`,{className:`rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] p-3 font-mono text-[11px]`,children:[(0,Y.jsx)(`div`,{className:`text-[hsl(var(--deck-ink-muted))]`,children:e.details.domain}),(0,Y.jsx)(`div`,{className:`mt-1 break-all text-[hsl(var(--deck-ink))]`,children:e.details.url})]}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,Y.jsx)(X,{onClick:()=>{if(a(q.getState()))return;let t=e.details.url;if(!t){p(`MCP URL is unavailable`);return}if(!window.open(t,`_blank`,`noopener,noreferrer`)){p(`The browser blocked the external window`);return}g(`accept`)},disabled:u,primary:!0,label:n(`interaction.elicitation.open`),icon:(0,Y.jsx)(N,{className:`h-3.5 w-3.5`})}),(0,Y.jsx)(X,{onClick:()=>void g(`decline`),disabled:u,label:n(`interaction.elicitation.decline`)}),(0,Y.jsx)(X,{onClick:()=>void g(`cancel`),disabled:u,label:n(`interaction.elicitation.cancel`)})]})]}):(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[m.map(e=>(0,Y.jsx)(wt,{field:e,value:o[e.name],rawValue:c[e.name]??``,onValueChange:t=>s(n=>({...n,[e.name]:t})),onRawChange:t=>l(n=>({...n,[e.name]:t}))},e.name)),(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,Y.jsx)(X,{onClick:()=>void _(),disabled:u||!h,primary:!0,label:n(`interaction.elicitation.submit`),icon:u?(0,Y.jsx)(K,{className:`h-3.5 w-3.5 animate-spin`}):null}),(0,Y.jsx)(X,{onClick:()=>void g(`decline`),disabled:u,label:n(`interaction.elicitation.decline`)}),(0,Y.jsx)(X,{onClick:()=>void g(`cancel`),disabled:u,label:n(`interaction.elicitation.cancel`)})]})]}),f&&(0,Y.jsx)(`div`,{className:`rounded-md border border-red-300/70 bg-red-50 px-2.5 py-2 font-mono text-[11px] text-red-700 dark:border-red-900/70 dark:bg-red-950/35 dark:text-red-300`,children:f})]})}function wt({field:e,value:t,rawValue:n,onValueChange:r,onRawChange:i}){return(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsxs)(`label`,{htmlFor:`mcp-elicitation-${e.name}`,className:`block font-mono text-[12px] font-medium text-[hsl(var(--deck-ink))]`,children:[e.title,e.required?` *`:``]}),e.description&&(0,Y.jsx)(`div`,{className:`font-mono text-[11px] text-[hsl(var(--deck-ink-faint))]`,children:e.description}),e.type===`select`||e.type===`multi-select`||e.type===`boolean`?(0,Y.jsx)(`div`,{id:`mcp-elicitation-${e.name}`,className:`flex flex-wrap gap-2`,children:Ot(e).map(n=>{let i=Array.isArray(t)?t.includes(n.value):t===n.typedValue;return(0,Y.jsx)(`button`,{type:`button`,"aria-pressed":i,onClick:()=>{if(e.type===`multi-select`){let e=Array.isArray(t)?t:[];r(e.includes(n.value)?e.filter(e=>e!==n.value):[...e,n.value])}else r(n.typedValue)},className:H(`rounded-md border px-3 py-2 font-mono text-[12px] transition-colors`,i?`border-emerald-500 bg-emerald-50 text-emerald-800 dark:bg-emerald-950/40 dark:text-emerald-200`:`border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] text-[hsl(var(--deck-ink-muted))] hover:text-[hsl(var(--deck-ink))]`),children:n.label},n.value)})}):(0,Y.jsx)(`input`,{id:`mcp-elicitation-${e.name}`,type:At(e),value:n,onChange:e=>i(e.target.value),min:e.minimum,max:e.maximum,minLength:e.minLength,maxLength:e.maxLength,required:e.required,placeholder:e.defaultValue===void 0?e.required?`Required`:`Optional`:String(e.defaultValue),className:`w-full rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] px-3 py-2 font-mono text-[12px] text-[hsl(var(--deck-ink))] outline-none transition-colors focus:border-amber-500 focus:ring-1 focus:ring-amber-500`})]})}function X({onClick:e,disabled:t,primary:n=!1,label:r,icon:i}){return(0,Y.jsxs)(`button`,{type:`button`,onClick:e,disabled:t,className:H(`inline-flex min-h-8 items-center gap-1.5 rounded-md px-3 py-1.5 font-mono text-[12px] transition-colors disabled:cursor-wait disabled:opacity-50`,n?`bg-amber-600 text-white hover:bg-amber-700`:`border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] text-[hsl(var(--deck-ink-muted))] hover:text-[hsl(var(--deck-ink))]`),children:[i,r]})}function Tt(e){return Object.fromEntries(e.filter(e=>!kt(e)&&e.defaultValue!==void 0).map(e=>[e.name,Array.isArray(e.defaultValue)?[...e.defaultValue]:e.defaultValue]))}function Et(e){return Object.fromEntries(e.filter(e=>kt(e)&&e.defaultValue!==void 0).map(e=>[e.name,String(e.defaultValue)]))}function Dt(e,t,n){let r={};for(let i of e){if(kt(i)){let e=n[i.name]?.trim()??``;if(!e){if(i.defaultValue!==void 0)r[i.name]=i.defaultValue;else if(i.required)throw Error(`${i.title} is required`);continue}if(i.type===`number`||i.type===`integer`){let t=Number(e);if(!Number.isFinite(t))throw Error(`${i.title} must be a finite number`);if(i.type===`integer`&&!Number.isSafeInteger(t))throw Error(`${i.title} must be a safe integer`);r[i.name]=t}else r[i.name]=e;continue}let e=t[i.name]??i.defaultValue;if(e===void 0){if(i.required)throw Error(`${i.title} is required`);continue}if(Array.isArray(e)){if(i.minItems!==void 0&&e.length<i.minItems)throw Error(`${i.title} requires at least ${i.minItems} choices`);if(i.maxItems!==void 0&&e.length>i.maxItems)throw Error(`${i.title} allows at most ${i.maxItems} choices`)}r[i.name]=e}return r}function Ot(e){return e.type===`boolean`?[{value:`true`,label:`Yes`,typedValue:!0},{value:`false`,label:`No`,typedValue:!1}]:(e.options??[]).map(e=>({...e,typedValue:e.value}))}function kt(e){return e.type===`string`||e.type===`number`||e.type===`integer`}function At(e){return e.type===`number`||e.type===`integer`?`number`:e.format===`email`?`email`:e.format===`uri`?`url`:e.format===`date`?`date`:e.format===`date-time`?`datetime-local`:`text`}function jt(e){if(!e||typeof e!=`object`||Array.isArray(e))return;let t=e;if(t.output&&typeof t.output==`object`&&!Array.isArray(t.output))return{output:t.output,...typeof t.schemaDigest==`string`?{schemaDigest:t.schemaDigest}:{}}}function Mt({report:e}){let t=y(),[n,r]=(0,J.useState)(!1),i=JSON.stringify(e.output,null,2);return(0,Y.jsxs)(`section`,{"data-structured-output":!0,className:`overflow-hidden rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]`,children:[(0,Y.jsxs)(`header`,{className:`flex min-h-9 items-center justify-between gap-3 border-b border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] px-3`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(Ae,{className:`h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-accent))]`}),(0,Y.jsx)(`span`,{className:`font-mono text-[11px] font-semibold text-[hsl(var(--deck-ink))]`,children:t(`chat.structuredOutput.title`)}),e.schemaDigest&&(0,Y.jsxs)(`span`,{title:e.schemaDigest,className:`truncate font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]`,children:[`sha256:`,e.schemaDigest.slice(0,10)]})]}),(0,Y.jsx)(`button`,{type:`button`,onClick:async()=>{try{await navigator.clipboard.writeText(i),r(!0),window.setTimeout(()=>r(!1),1400)}catch{}},"aria-label":t(`chat.structuredOutput.copy`),title:t(`chat.structuredOutput.copy`),className:`flex h-6 w-6 shrink-0 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:n?(0,Y.jsx)(ke,{className:`h-3.5 w-3.5 text-[hsl(var(--deck-accent))]`}):(0,Y.jsx)(M,{className:`h-3.5 w-3.5`})})]}),(0,Y.jsx)(`pre`,{className:`max-h-[440px] overflow-auto whitespace-pre p-3 font-mono text-[11px] leading-5 text-[hsl(var(--deck-ink))]`,children:i})]})}var Nt=(0,J.createContext)(null);function Pt(e,t){let n=(0,J.useContext)(Nt),[r,i]=(0,J.useState)(()=>n?.get(t)?.has(e)??!1);return{expanded:r,toggle:()=>{let a=!r;if(n){let r=n.get(t)??new Set;a?r.add(e):r.delete(e),r.size>0?n.set(t,r):n.delete(t)}i(a)}}}var Ft=(0,J.lazy)(()=>C(()=>import(`./MarkdownRenderer-d7DdyYdx.js`).then(e=>({default:e.MarkdownRenderer})),__vite__mapDeps([0,1,2,3,4,5,6,7,8])));function It({text:e,label:t}){let[n,r]=(0,J.useState)(!1);return e.trim()?(0,Y.jsx)(`button`,{type:`button`,"aria-label":t,title:t,onClick:async()=>{try{await navigator.clipboard.writeText(e),r(!0),window.setTimeout(()=>r(!1),1400)}catch{}},className:`flex h-6 w-6 items-center justify-center rounded-md text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:n?(0,Y.jsx)(ke,{className:`h-3.5 w-3.5 text-[hsl(var(--deck-accent))]`}):(0,Y.jsx)(M,{className:`h-3.5 w-3.5`})}):null}function Lt(){return(0,Y.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 select-none items-center justify-center rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] shadow-[0_1px_0_hsl(var(--deck-hairline))]`,children:(0,Y.jsx)(De,{size:20,pulse:!1})})}function Rt(){return(0,Y.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 select-none items-center justify-center rounded-full border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas-veil))]`,children:(0,Y.jsx)(`span`,{className:`font-mono text-[11px] font-medium text-[hsl(var(--deck-ink))]`,children:`U`})})}function zt(e){let t=e;return t=t.replace(/<system-reminder>[\s\S]*?<\/system-reminder>/g,``),t=t.replace(/<file path="[^"]*">[\s\S]*?<\/file>/g,``),t=t.replace(/<attached_files>[\s\S]*?<\/attached_files>/g,``),t=t.trim(),t}function Bt(e){if(typeof e==`string`)return{text:zt(e),images:[]};let t=e.filter(e=>e.type===`text`).map(e=>e.text).join(`
5
- `),n=e.filter(e=>e.type===`image_url`).map(e=>e.image_url.url);return{text:zt(t),images:n}}function Vt(e){return typeof e==`string`?e:e.filter(e=>e.type===`text`).map(e=>e.text).join(`
6
- `)}function Ht(e){let t=e.agentContent;return t?d(t):Vt(e.content)}function Ut({content:e,syntaxHighlight:t=!0}){return(0,Y.jsx)(J.Suspense,{fallback:(0,Y.jsx)(`pre`,{className:`text-[14px] text-[hsl(var(--deck-ink))] font-mono whitespace-pre-wrap`,children:e}),children:(0,Y.jsx)(Ft,{content:e,syntaxHighlight:t})})}function Wt({status:e}){return e?(0,Y.jsx)(`span`,{className:H(`text-[11px] px-2 py-0.5 rounded-full font-mono`,{running:`bg-[#FEF3C7] text-[#92400E] dark:bg-[#F59E0B]/20 dark:text-[#FBBF24]`,success:`bg-[#DCFCE7] text-[#15803D] dark:bg-[#22C55E]/20 dark:text-[#22C55E]`,error:`bg-[#FEE2E2] text-[#b91c1c] dark:bg-[#EF4444]/20 dark:text-[#fca5a5]`,pending:`bg-[#E5E7EB] text-[#6B7280] dark:bg-[#27272a] dark:text-[#a1a1aa]`,info:`bg-[#DBEAFE] text-[#1D4ED8] dark:bg-[#3B82F6]/20 dark:text-[#60A5FA]`}[e]),children:{running:`Running`,success:`Success`,error:`Error`,pending:`Pending`,info:`Info`}[e]}):null}function Gt(e){if(!e)return``;if(typeof e==`string`)try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}return JSON.stringify(e,null,2)}var Kt=500;function qt(e,t){if(e.length<=t)return e;let n=Math.max(0,t);return n>0&&/[\uD800-\uDBFF]/.test(e.charAt(n-1))&&--n,e.slice(0,n)}function Jt(e,t){if(e.length<=t)return e;let n=Math.max(0,e.length-t);return/[\uDC00-\uDFFF]/.test(e.charAt(n))&&(n+=1),e.slice(n)}function Yt(e,t){if(e.length<=t)return e;if(t<=0)return``;let n=t-27;if(n<=0)return Jt(e,t);let r=Math.floor(n/3);return`${qt(e,r)}
7
- ... (display clipped) ...
8
- ${Jt(e,n-r)}`}function Xt(e){let t=e.split(`
9
- `),n=t.at(-1),r=n?.startsWith(`Output truncated`)?n:void 0,i=r?t.slice(0,-1).join(`
10
- `):e,a=r?`\n${r}`:``,o=Math.max(0,Kt-a.length),s=i.indexOf(`
11
- stderr:
12
- `),c;if(s>=0&&i.includes(`
13
- stdout:
14
- `)){let e=i.slice(0,s),t=i.slice(s+1),n=Math.max(0,o-1),r=Math.floor(n/2);c=`${Yt(e,r)}\n${Yt(t,n-r)}`}else c=Yt(i,o);return{body:qt(c,o),...r?{notice:r}:{},truncated:!!r||e.length>Kt}}function Zt({tool:e}){let{expanded:t,toggle:n}=Pt(`detail`,e.toolCallId),r=Gt(e.arguments),i=e.output?Xt(e.output):void 0;return(0,Y.jsxs)(`div`,{"data-tool-name":e.toolName,"data-tool-status":e.status,"data-tool-truncated":i?.truncated?`true`:`false`,className:`bg-white dark:bg-[#18181b] border border-[hsl(var(--deck-border))] rounded-lg overflow-hidden`,children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":t,"data-tool-call-id":e.toolCallId,onClick:n,className:`w-full flex items-center justify-between px-3 py-2 bg-[hsl(var(--deck-surface-2))] hover:bg-[hsl(var(--deck-surface))] transition-colors`,children:[(0,Y.jsxs)(`div`,{className:`flex gap-2 items-center min-w-0`,children:[t?(0,Y.jsx)(W,{className:`h-4 w-4 text-[hsl(var(--deck-ink-faint))] shrink-0`}):(0,Y.jsx)(A,{className:`h-4 w-4 text-[hsl(var(--deck-ink-faint))] shrink-0`}),(0,Y.jsx)(`span`,{className:`text-[12px] text-[hsl(var(--deck-ink))] font-mono shrink-0`,children:e.toolName}),e.summary&&(0,Y.jsx)(`span`,{className:`text-[11px] text-[hsl(var(--deck-ink-muted))] font-mono truncate`,children:e.summary})]}),(0,Y.jsx)(Wt,{status:e.status})]}),e.status===`running`&&e.progressMessage&&(0,Y.jsxs)(`div`,{className:`border-t border-[hsl(var(--deck-border))] px-3 py-2 space-y-1.5`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-3 font-mono text-[10px] text-[hsl(var(--deck-ink-muted))]`,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:e.progressMessage}),e.progressTotal!==void 0&&e.progress!==void 0&&(0,Y.jsxs)(`span`,{className:`shrink-0`,children:[Math.max(0,Math.min(100,Math.round(e.progress/e.progressTotal*100))),`%`]})]}),e.progressTotal!==void 0&&e.progress!==void 0&&(0,Y.jsx)(`div`,{role:`progressbar`,"aria-label":`${e.toolName} progress`,"aria-valuemin":0,"aria-valuemax":e.progressTotal,"aria-valuenow":Math.min(e.progress,e.progressTotal),className:`h-1 overflow-hidden rounded-full bg-[hsl(var(--deck-border))]`,children:(0,Y.jsx)(`div`,{className:`h-full rounded-full bg-amber-500 transition-[width] duration-150`,style:{width:`${Math.max(0,Math.min(100,e.progress/e.progressTotal*100))}%`}})})]}),t&&(0,Y.jsxs)(`div`,{className:`px-3 py-2 space-y-2 border-t border-[hsl(var(--deck-border))]`,children:[r&&(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[(0,Y.jsx)(`div`,{className:`text-[11px] text-[hsl(var(--deck-ink-muted))] font-mono`,children:`Arguments`}),(0,Y.jsx)(`pre`,{className:`text-[11px] text-[hsl(var(--deck-ink))] bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-md p-2 overflow-x-auto whitespace-pre-wrap font-mono max-h-[120px] overflow-y-auto`,children:r})]}),i&&(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[(0,Y.jsx)(`div`,{className:`text-[11px] text-[hsl(var(--deck-ink-muted))] font-mono`,children:`Output`}),(0,Y.jsxs)(`pre`,{"data-tool-output":!0,className:`text-[11px] text-[hsl(var(--deck-ink))] bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-md p-2 overflow-x-auto whitespace-pre-wrap font-mono max-h-[120px] overflow-y-auto`,children:[i.body,i.notice&&(0,Y.jsxs)(Y.Fragment,{children:[`
15
- `,(0,Y.jsx)(`span`,{"data-tool-truncation-notice":!0,children:i.notice})]})]})]})]})]})}function Qt({toolCalls:e}){return e.length===0?null:(0,Y.jsx)(`div`,{className:`space-y-2`,children:e.map(e=>(0,Y.jsx)(Zt,{tool:e},e.toolCallId))})}function $t({toolCalls:e,toolCallIds:t}){let n=y(),{expanded:r,toggle:i}=Pt(`group`,t[0]),a=(0,J.useMemo)(()=>new Map(e.map(e=>[e.toolCallId,e])),[e]),o=t.flatMap(e=>{let t=a.get(e);return t?[t]:[]});if(o.length===0)return null;let s=o.filter(e=>e.status===`running`).length,c=o.filter(e=>e.status===`error`).length,l=[...o].reverse().find(e=>e.status===`running`&&!!e.progressMessage),u=s>0?n(o.length===1?`chat.timeline.tools.runningOne`:`chat.timeline.tools.running`,{count:o.length}):c>0?n(o.length===1?`chat.timeline.tools.completedOneWithError`:`chat.timeline.tools.completedWithErrors`,{count:o.length,errors:c}):n(o.length===1?`chat.timeline.tools.completedOne`:`chat.timeline.tools.completed`,{count:o.length});return(0,Y.jsxs)(`div`,{"data-agent-tool-group":!0,className:`py-0.5`,children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":r,onClick:i,className:`group flex min-h-7 w-full items-center gap-1.5 rounded-md px-1.5 text-left font-mono text-[11.5px] text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))]/65 hover:text-[hsl(var(--deck-ink-muted))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:[r?(0,Y.jsx)(W,{className:`h-3.5 w-3.5 shrink-0`}):(0,Y.jsx)(A,{className:`h-3.5 w-3.5 shrink-0`}),s>0&&(0,Y.jsx)(K,{className:`h-3 w-3 shrink-0 animate-spin text-[hsl(var(--deck-accent))]`}),(0,Y.jsx)(`span`,{children:u}),l?.progressMessage&&(0,Y.jsxs)(`span`,{className:`min-w-0 truncate text-[10.5px] text-[hsl(var(--deck-ink-muted))]`,children:[l.progressMessage,l.progress!==void 0&&l.progressTotal!==void 0&&` · ${Math.max(0,Math.min(100,Math.round(l.progress/l.progressTotal*100)))}%`]})]}),l?.progress!==void 0&&l.progressTotal!==void 0&&(0,Y.jsx)(`div`,{role:`progressbar`,"aria-label":`${l.toolName} progress`,"aria-valuemin":0,"aria-valuemax":l.progressTotal,"aria-valuenow":Math.min(l.progress,l.progressTotal),className:`mx-1.5 h-0.5 overflow-hidden rounded-full bg-[hsl(var(--deck-border))]`,children:(0,Y.jsx)(`div`,{className:`h-full rounded-full bg-amber-500 transition-[width] duration-150`,style:{width:`${Math.max(0,Math.min(100,l.progress/l.progressTotal*100))}%`}})}),r&&(0,Y.jsx)(`div`,{"data-agent-tool-group-details":!0,className:`pl-1 mt-2 space-y-2`,children:(0,Y.jsx)(Qt,{toolCalls:o})})]})}function en({content:e}){let t=y(),[n,r]=(0,J.useState)(!1);return e?(0,Y.jsxs)(`div`,{"data-agent-thinking":!0,className:`py-0.5`,children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":n,onClick:()=>r(e=>!e),className:`flex min-h-7 w-full items-center gap-1.5 rounded-md px-1.5 text-left font-mono text-[11.5px] text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))]/65 hover:text-[hsl(var(--deck-ink-muted))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:[n?(0,Y.jsx)(W,{className:`h-4 w-4 text-[hsl(var(--deck-ink-faint))]`}):(0,Y.jsx)(A,{className:`h-4 w-4 text-[hsl(var(--deck-ink-faint))]`}),(0,Y.jsx)(`span`,{children:t(`chat.timeline.thinking`)})]}),n&&(0,Y.jsx)(`div`,{className:`ml-1 mt-1 border-l border-[hsl(var(--deck-border))] py-1 pl-3`,children:(0,Y.jsx)(`pre`,{className:`whitespace-pre-wrap font-mono text-[11px] leading-5 text-[hsl(var(--deck-ink-muted))]`,children:e})})]}):null}function tn({tasks:e}){if(e.length===0)return null;let t=e.filter(e=>e.status===`completed`).length,n=t===e.length;return(0,Y.jsx)(`div`,{className:`bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-lg px-3 py-2`,children:(0,Y.jsx)(`div`,{className:`flex gap-2 items-center`,children:(0,Y.jsx)(`span`,{className:`text-[12px] text-[hsl(var(--deck-ink-muted))] font-mono`,children:n?`✓ All tasks done`:`Tasks: ${t}/${e.length}`})})})}function nn({toolCalls:e}){let t=c(e=>e.openFilePreview),n=q(e=>u(e.historySurfaceSelection)),r=(0,J.useMemo)(()=>{let t=new Map,n=[`Write`,`SearchReplace`,`Edit`,`ApplyPatch`];for(let r of e){if(r.status!==`success`)continue;let e=r.metadata;if(r.toolName===`ApplyPatch`&&Array.isArray(e?.changes)){for(let n of e.changes)n&&typeof n==`object`&&`path`in n&&typeof n.path==`string`&&t.set(n.path,{path:n.path,toolName:r.toolName});continue}let i=e?.file_path;i&&n.includes(r.toolName)&&t.set(i,{path:i,toolName:r.toolName})}return Array.from(t.values())},[e]);if(n||r.length===0)return null;let i=e=>{a(q.getState())||t({tab:`diff`,targetPath:e})};return(0,Y.jsxs)(`div`,{className:`bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-lg px-3 py-2`,children:[(0,Y.jsxs)(`div`,{className:`text-[11px] text-[hsl(var(--deck-ink-muted))] font-mono mb-1.5`,children:[`Changed files (`,r.length,`)`]}),(0,Y.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:r.map(({path:e})=>{let t=e.split(`/`).pop()||e;return(0,Y.jsxs)(`button`,{onClick:()=>i(e),className:`flex items-center gap-1 px-2 py-1 text-[11px] font-mono bg-[#E5E7EB] dark:bg-[#27272a] text-[hsl(var(--deck-ink))] rounded hover:bg-[#D1D5DB] dark:hover:bg-[#3f3f46] transition-colors`,title:e,children:[(0,Y.jsx)(we,{className:`w-3 h-3`}),t]},e)})})]})}function rn({subagent:e}){let t=y(),[n,i]=(0,J.useState)(null),[o,s]=(0,J.useState)(!1),[c,l]=(0,J.useState)(null),[d,f]=(0,J.useState)(!1),[p,m]=(0,J.useState)(``),[h,g]=(0,J.useState)(!1),[_,v]=(0,J.useState)(null),[b,x]=(0,J.useState)(null),[S,C]=(0,J.useState)(null),w=q(e=>e.currentSessionRef),T=q(e=>e.isStreaming),E=q(e=>e.isTemporarySession),D=q(e=>u(e.historySurfaceSelection));if(!e)return null;let O=e.status===`running`,k=n===null?O:n,A=e.toolCalls||c||[],j=e.output||e.thinking||A.length>0||e.sessionId,M=b&&b.status!==`running`?b:S,N=M?.id??e.sessionId,P=M?.restartRecovery?.outcome===`failed`,F=!O&&!T&&!E&&!D&&!P&&b?.status!==`running`&&!!(N&&w);(0,J.useEffect)(()=>{if(D||!k||O||!e.sessionId||!w?.projectPath||c!==null||e.toolCalls&&e.toolCalls.length>0)return;let t=!0;return s(!0),z.getMessages({sessionId:e.sessionId,projectPath:w.projectPath}).then(e=>{if(!t)return;let n=r(e),i=new Map;for(let e of n)if(e.agentContent?.toolCalls?.length)for(let t of e.agentContent.toolCalls)i.has(t.toolCallId)||i.set(t.toolCallId,t);l(Array.from(i.values()))}).finally(()=>{t&&s(!1)}),()=>{t=!1}},[k,D,O,e.sessionId,e.toolCalls,c,w?.projectPath]),(0,J.useEffect)(()=>{if(D||!e.sessionId||!w)return;let t=!0,n=e.rootAgentId??e.sessionId,r=e.resumeDepth??0;return z.listSubagents(w).then(i=>{if(!t)return;C(i.find(t=>t.id===e.sessionId)??null);let a=i.filter(t=>t.id!==e.sessionId&&t.rootAgentId===n&&t.resumeDepth>r).sort((e,t)=>t.resumeDepth-e.resumeDepth||t.lastActiveAt-e.lastActiveAt)[0];a&&x(a)}).catch(()=>void 0),()=>{t=!1}},[w?.sessionId,w?.projectPath,D,e.sessionId,e.rootAgentId,e.resumeDepth]),(0,J.useEffect)(()=>{if(D||!b||b.status!==`running`||!w)return;let e=!0,t=async()=>{try{let t=(await z.listSubagents(w)).find(e=>e.id===b.id);e&&t&&x(t)}catch{}},n=window.setInterval(()=>{t()},1e3);return()=>{e=!1,window.clearInterval(n)}},[w,D,b?.id,b?.status]);let ee=async()=>{if(!a(q.getState())&&w&&N&&p.trim()&&!h){g(!0),v(null);try{let e=await z.resumeSubagent(w,N,p.trim());x(e.session),m(``),f(!1),i(!0)}catch(e){v(e instanceof Error?e.message:t(`chat.subagent.resumeFailed`))}finally{g(!1)}}};return(0,Y.jsxs)(`div`,{"data-subagent-id":e.id,"data-subagent-session-id":e.sessionId,className:`bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-lg px-3 py-2`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>i(!k),className:`flex gap-2 justify-between items-center w-full transition-opacity cursor-pointer hover:opacity-80`,children:[(0,Y.jsxs)(`div`,{className:`flex gap-2 items-center`,children:[O&&(0,Y.jsx)(K,{className:`h-3 w-3 animate-spin text-[hsl(var(--deck-ink-muted))]`}),(0,Y.jsxs)(`span`,{className:`text-[12px] text-[hsl(var(--deck-ink-muted))] font-mono`,children:[e.type,`: `,e.description]}),(0,Y.jsx)(Wt,{status:e.status===`completed`?`success`:e.status===`failed`?`error`:`running`}),e.type===`verification`&&e.verificationVerdict&&(0,Y.jsx)(`span`,{"data-verification-verdict":e.verificationVerdict,className:H(`rounded px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide`,e.verificationVerdict===`pass`?`bg-emerald-500/10 text-emerald-600 dark:text-emerald-400`:e.verificationVerdict===`fail`?`bg-red-500/10 text-red-600 dark:text-red-400`:`bg-amber-500/10 text-amber-600 dark:text-amber-400`),children:e.verificationVerdict}),e.resumedFrom&&(0,Y.jsx)(`span`,{className:`rounded bg-[#EDE9FE] px-1.5 py-0.5 text-[10px] font-mono text-[#6D28D9] dark:bg-[#2E1065] dark:text-[#C4B5FD]`,title:t(`chat.subagent.resumedFromTitle`,{id:e.resumedFrom}),children:t(`chat.subagent.resumedDepth`,{depth:e.resumeDepth??1})})]}),j&&(0,Y.jsx)(W,{className:H(`h-3.5 w-3.5 text-[hsl(var(--deck-ink-muted))] transition-transform`,k&&`rotate-180`)})]}),!k&&!O&&e.output&&(0,Y.jsx)(`div`,{"data-subagent-output-summary":!0,className:`mt-2 max-h-10 overflow-hidden whitespace-pre-wrap break-words font-mono text-[11px] text-[hsl(var(--deck-ink))]`,children:e.output}),k&&(0,Y.jsxs)(`div`,{className:`mt-2 space-y-2`,children:[(e.output||e.thinking)&&(0,Y.jsxs)(Y.Fragment,{children:[e.output&&(0,Y.jsx)(`pre`,{className:`text-[11px] text-[hsl(var(--deck-ink))] bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-md p-2 overflow-x-auto whitespace-pre-wrap font-mono max-h-[160px] overflow-y-auto`,children:e.output}),e.thinking&&(0,Y.jsx)(`pre`,{className:`text-[11px] text-[hsl(var(--deck-ink-muted))] bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-md p-2 overflow-x-auto whitespace-pre-wrap font-mono max-h-[120px] overflow-y-auto`,children:e.thinking})]}),o&&(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] text-[hsl(var(--deck-ink-muted))] font-mono`,children:[(0,Y.jsx)(K,{className:`w-3 h-3 animate-spin`}),t(`chat.subagent.loadingLogs`)]}),!o&&A.length>0&&(0,Y.jsx)(Nt.Provider,{value:null,children:(0,Y.jsx)(Qt,{toolCalls:A})}),b&&(0,Y.jsxs)(`div`,{className:`rounded-md border border-[#DDD6FE] bg-[#F5F3FF] p-2 text-[11px] font-mono text-[#5B21B6] dark:border-[#4C1D95] dark:bg-[#1E1B4B] dark:text-[#C4B5FD]`,children:[(0,Y.jsx)(`div`,{children:t(`chat.subagent.resumedAs`,{id:b.id,status:b.status,depth:b.resumeDepth??1})}),(b.result?.message||b.result?.error)&&(0,Y.jsx)(`div`,{className:`mt-1 whitespace-pre-wrap text-[hsl(var(--deck-ink))]`,children:b.result.message||b.result.error})]}),P&&M?.result?.error&&(0,Y.jsx)(`div`,{role:`alert`,className:`text-[11px] text-red-600`,children:M.result.error}),F&&(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[d?(0,Y.jsxs)(`div`,{className:`space-y-2 rounded-md border border-[#E5E7EB] bg-white p-2 dark:border-[#27272a] dark:bg-[#111113]`,children:[(0,Y.jsx)(`textarea`,{"aria-label":t(`chat.subagent.followUpAria`),value:p,onChange:e=>m(e.target.value),placeholder:t(`chat.subagent.followUpPlaceholder`),rows:3,className:`w-full resize-y rounded border border-[#D1D5DB] bg-white p-2 text-[11px] text-[#111827] outline-none focus:border-[#8B5CF6] dark:border-[#3f3f46] dark:bg-[#18181b] dark:text-[#f4f4f5]`}),(0,Y.jsxs)(`div`,{className:`flex gap-2 justify-end`,children:[(0,Y.jsx)(`button`,{type:`button`,onClick:()=>{f(!1),v(null)},className:`rounded px-2 py-1 text-[11px] text-[#6B7280] hover:bg-[#F3F4F6] dark:hover:bg-[#27272a]`,children:t(`chat.subagent.cancel`)}),(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>void ee(),disabled:!p.trim()||h,className:`flex items-center gap-1 rounded bg-[#7C3AED] px-2 py-1 text-[11px] font-medium text-white disabled:opacity-50`,children:[h&&(0,Y.jsx)(K,{className:`w-3 h-3 animate-spin`}),t(`chat.subagent.resumeAgent`)]})]})]}):(0,Y.jsxs)(`button`,{type:`button`,"aria-label":t(`chat.subagent.resumeAria`),onClick:()=>f(!0),className:`flex items-center gap-1.5 rounded-md border border-[#D1D5DB] px-2 py-1 text-[11px] font-medium text-[#374151] transition-colors hover:bg-[#F3F4F6] dark:border-[#3f3f46] dark:text-[#d4d4d8] dark:hover:bg-[#27272a]`,children:[(0,Y.jsx)(ge,{className:`w-3 h-3`}),t(`chat.subagent.resume`)]}),_&&(0,Y.jsx)(`div`,{role:`alert`,className:`text-[11px] text-red-600`,children:_})]})]})]})}function an({confirmation:e,messageId:t}){let n=y(),[r,i]=(0,J.useState)(!1),[o,s]=(0,J.useState)(null),c=q(e=>e.currentSessionRef),l=q(e=>e.setConfirmation);if(!e)return null;let u=async(o,u)=>{if(!a(q.getState())&&c&&!r){i(!0),s(null);try{await z.respondPermission(c,e.toolCallId,{approved:o,scope:u}),l(t,{...e,status:o?`approved`:`denied`})}catch(e){s(e instanceof Error?e.message:n(`interaction.permission.failed`))}finally{i(!1)}}};return e.status===`pending`?(0,Y.jsxs)(`div`,{"data-pending-interaction":`permission`,tabIndex:-1,role:`alert`,className:`p-4 space-y-3 rounded-lg border outline-none border-amber-300/70 bg-amber-50/70 focus-visible:ring-2 focus-visible:ring-amber-500 dark:border-amber-800/70 dark:bg-amber-950/25`,children:[(0,Y.jsx)(`div`,{className:`text-[13px] text-[hsl(var(--deck-ink))] font-mono`,children:n(`interaction.permission.title`,{tool:e.toolName})}),(0,Y.jsx)(`div`,{className:`text-[12px] text-[hsl(var(--deck-ink-muted))] font-mono`,children:e.description}),e.diff&&(0,Y.jsx)(`pre`,{className:`text-[11px] text-[hsl(var(--deck-ink))] bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-md p-2 overflow-x-auto whitespace-pre-wrap font-mono max-h-[200px] overflow-y-auto`,children:e.diff}),o&&(0,Y.jsx)(`div`,{role:`alert`,className:`rounded-md border border-red-300/70 bg-red-50 px-2.5 py-2 font-mono text-[11px] text-red-700 dark:border-red-900/70 dark:bg-red-950/35 dark:text-red-300`,children:o}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void u(!0,`once`),disabled:r,className:`min-h-8 px-3 py-1.5 text-[12px] font-mono bg-[#22C55E] text-white rounded-md hover:bg-[#16A34A] disabled:cursor-wait disabled:opacity-50`,children:r?(0,Y.jsx)(K,{className:`h-3.5 w-3.5 animate-spin`}):n(`interaction.permission.once`)}),e.allowRemember!==!1&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void u(!0,`session`),disabled:r,className:`min-h-8 px-3 py-1.5 text-[12px] font-mono bg-[#3B82F6] text-white rounded-md hover:bg-[#2563EB] disabled:cursor-wait disabled:opacity-50`,children:n(`interaction.permission.session`)}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void u(!0,`project`),disabled:r,className:`min-h-8 px-3 py-1.5 text-[12px] font-mono bg-[#6366F1] text-white rounded-md hover:bg-[#4F46E5] disabled:cursor-wait disabled:opacity-50`,children:n(`interaction.permission.project`)})]}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void u(!1),disabled:r,className:`min-h-8 px-3 py-1.5 text-[12px] font-mono bg-[#EF4444] text-white rounded-md hover:bg-[#DC2626] disabled:cursor-wait disabled:opacity-50`,children:n(`interaction.permission.deny`)})]})]}):null}function on({question:e,messageId:t}){let n=y(),[r,i]=(0,J.useState)({}),[o,s]=(0,J.useState)({}),[c,l]=(0,J.useState)(!1),[u,d]=(0,J.useState)(null),f=q(e=>e.currentSessionRef),p=q(e=>e.setQuestion),m=(0,J.useMemo)(()=>e?e.questions.reduce((e,t)=>{let n=o[t.header]?.trim(),i=r[t.header];if(t.multiSelect){let r=Array.isArray(i)?[...i]:[];return n&&r.push(n),r.length>0&&(e[t.header]=r),e}let a=n||(typeof i==`string`?i:``);return a&&(e[t.header]=a),e},{}):{},[r,o,e]),h=e?.questions.every(e=>e.header in m)??!1;if(!e)return null;let g=async()=>{if(!a(q.getState())&&f&&!c&&h){l(!0),d(null);try{await z.respondToQuestion(f,e.toolCallId,m),p(t,{...e,status:`answered`,answers:m})}catch(e){d(e instanceof Error?e.message:n(`interaction.question.failed`))}finally{l(!1)}}};return e.status===`pending`?(0,Y.jsxs)(`div`,{"data-pending-interaction":`question`,tabIndex:-1,role:`alert`,className:`p-4 space-y-4 rounded-lg border outline-none border-amber-300/70 bg-amber-50/70 focus-visible:ring-2 focus-visible:ring-amber-500 dark:border-amber-800/70 dark:bg-amber-950/25`,children:[e.questions.map((e,t)=>(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(`div`,{className:`text-[13px] text-[hsl(var(--deck-ink))] font-mono`,children:e.question}),(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[e.options.map((t,n)=>(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>{if(e.multiSelect){let n=r[e.header]||[],a=n.includes(t.label)?n.filter(e=>e!==t.label):[...n,t.label];i({...r,[e.header]:a})}else i({...r,[e.header]:t.label}),s({...o,[e.header]:``})},className:H(`w-full text-left px-3 py-2 rounded-md border text-[12px] font-mono transition-colors`,`border-[hsl(var(--deck-border))]`,(e.multiSelect?(r[e.header]||[]).includes(t.label):r[e.header]===t.label)?`bg-[#DCFCE7] text-[#166534] dark:bg-[#22C55E]/20 dark:text-[#E5E5E5]`:`bg-[hsl(var(--deck-surface-2))] text-[hsl(var(--deck-ink-muted))]`),children:[(0,Y.jsx)(`div`,{children:t.label}),(0,Y.jsx)(`div`,{className:`text-[11px] text-[hsl(var(--deck-ink-faint))] mt-1`,children:t.description})]},n)),(0,Y.jsx)(`input`,{"aria-label":`${e.header} other response`,value:o[e.header]??``,onChange:t=>s({...o,[e.header]:t.target.value}),placeholder:n(`interaction.question.other`),className:`w-full rounded-md border border-[#E5E7EB] bg-white px-3 py-2 text-[12px] text-[#111827] outline-none focus:border-[#22C55E] dark:border-[#27272a] dark:bg-[#111113] dark:text-[#E5E5E5]`})]})]},t)),u&&(0,Y.jsx)(`div`,{role:`alert`,className:`rounded-md border border-red-300/70 bg-red-50 px-2.5 py-2 font-mono text-[11px] text-red-700 dark:border-red-900/70 dark:bg-red-950/35 dark:text-red-300`,children:u}),(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>void g(),disabled:c||!h,className:`inline-flex min-h-8 items-center gap-1.5 px-3 py-1.5 text-[12px] font-mono bg-[#22C55E] text-white rounded-md hover:bg-[#16A34A] disabled:cursor-wait disabled:opacity-50`,children:[c&&(0,Y.jsx)(K,{className:`h-3.5 w-3.5 animate-spin`}),n(`interaction.question.submit`)]})]}):(0,Y.jsx)(`div`,{className:`bg-[hsl(var(--deck-surface-2))] border border-[hsl(var(--deck-border))] rounded-lg px-3 py-2`,children:(0,Y.jsx)(`div`,{className:`text-[12px] text-[hsl(var(--deck-ink-muted))] font-mono`,children:n(`interaction.question.answered`)})})}function sn({message:e}){let t=e.agentContent,r=q(t=>t.isStreaming&&!!(t.currentAssistantMessageId&&(e.displaySourceMessageIds?.includes(t.currentAssistantMessageId)??t.currentAssistantMessageId===e.id)));if(!t){let t=Vt(e.content);return t?(0,Y.jsx)(Ut,{content:t}):null}let{toolCalls:i,tasks:a,confirmation:o,question:c,elicitation:l}=t,u=n(t),d=f(s(t));if(!(d.length>0||a.length>0||u.length>0||o||c||l)&&r)return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-[hsl(var(--deck-ink-muted))]`,children:[(0,Y.jsx)(K,{className:`w-4 h-4 animate-spin`}),(0,Y.jsx)(`span`,{className:`text-[12px] font-mono`,children:`Thinking...`})]});let p=i.length>0&&i.every(e=>e.status===`success`||e.status===`error`)&&!r,m=!r;return(0,Y.jsxs)(`div`,{className:`space-y-3`,children:[d.map(e=>e.type===`thinking`?(0,Y.jsx)(`div`,{"data-agent-timeline-block":`thinking`,children:(0,Y.jsx)(en,{content:e.content})},e.id):e.type===`text`?(0,Y.jsx)(`div`,{"data-agent-timeline-block":`text`,children:(0,Y.jsx)(Ut,{content:e.content,syntaxHighlight:m})},e.id):(0,Y.jsx)(`div`,{"data-agent-timeline-block":`tool_group`,children:(0,Y.jsx)($t,{toolCalls:i,toolCallIds:e.toolCallIds})},e.id)),a.length>0&&(0,Y.jsx)(tn,{tasks:a}),u.map(e=>(0,Y.jsx)(rn,{subagent:e},e.id)),o&&(0,Y.jsx)(an,{confirmation:o,messageId:e.id}),c&&(0,Y.jsx)(on,{question:c,messageId:e.id}),l&&(0,Y.jsx)(Ct,{elicitation:l,messageId:e.id}),p&&(0,Y.jsx)(nn,{toolCalls:i})]})}function cn({message:e,showAvatar:t=!0,onNavigateToMessage:n}){let r=y(),i=e.role===`user`;if(e.role===`system`){let t=Vt(e.content);return(0,Y.jsx)(`div`,{"data-chat-message-id":e.id,"data-chat-role":`system`,className:`flex justify-center p-2 w-full`,children:(0,Y.jsx)(`div`,{className:`text-xs text-[hsl(var(--deck-ink-muted))] bg-[#F3F4F6] dark:bg-[#18181b] px-3 py-1 rounded-full font-mono`,children:t})})}if(i){let t=e.metadata?.userShellCommand&&typeof e.metadata.userShellCommand==`object`?e.metadata.userShellCommand:e.metadata?.userShellExecution&&typeof e.metadata.userShellExecution==`object`?e.metadata.userShellExecution:void 0;if(t){let n=typeof t.command==`string`?t.command:``,r=t.status===`running`?`running`:t.status===`completed`?`success`:`error`,i=typeof t.output==`string`?t.output:[typeof t.stdout==`string`?t.stdout:``,typeof t.stderr==`string`&&t.stderr?`stderr:\n${t.stderr}`:``].filter(Boolean).join(`
16
- `);return(0,Y.jsx)(`div`,{"data-chat-message-id":e.id,"data-chat-role":`user`,"data-user-shell-command":!0,className:`flex justify-end p-4 w-full`,children:(0,Y.jsxs)(`div`,{className:`w-full max-w-[85%] overflow-hidden rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] px-3 py-2`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0 truncate font-mono text-[12px] text-[hsl(var(--deck-ink))]`,children:[(0,Y.jsx)(`span`,{className:`mr-2 text-amber-600 dark:text-amber-400`,children:`$`}),n]}),(0,Y.jsx)(Wt,{status:r})]}),(0,Y.jsx)(`pre`,{className:`max-h-64 overflow-auto whitespace-pre-wrap px-3 py-2 font-mono text-[11px] text-[hsl(var(--deck-ink-muted))]`,children:i||`(no output)`}),typeof t.exitCode==`number`&&(0,Y.jsxs)(`div`,{className:`border-t border-[hsl(var(--deck-border))] px-3 py-1.5 font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]`,children:[`exit `,t.exitCode,typeof t.durationMs==`number`?` · ${(t.durationMs/1e3).toFixed(3)}s`:``,t.truncated===!0?` · truncated`:``]})]})})}let{text:i,images:a}=Bt(e.content),o=L(e.metadata);return(0,Y.jsxs)(`div`,{"data-chat-message-id":e.id,"data-chat-role":`user`,className:`flex gap-2 justify-end items-start p-4 w-full group`,children:[(0,Y.jsx)(`div`,{className:`flex mt-1 opacity-0 transition-opacity shrink-0 group-hover:opacity-100 group-focus-within:opacity-100`,children:(0,Y.jsx)(It,{text:i,label:`Copy message`})}),(0,Y.jsxs)(`div`,{className:`bg-[hsl(var(--deck-surface-2))] rounded-lg px-4 py-3 max-w-[85%]`,children:[o.length>0&&(0,Y.jsxs)(`details`,{"data-user-message-annotations":!0,className:`mb-2`,children:[(0,Y.jsxs)(`summary`,{className:`inline-flex min-h-7 cursor-pointer list-none items-center gap-1.5 rounded-md border border-[hsl(var(--deck-border-strong))] bg-[hsl(var(--deck-surface))] px-2.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink-muted))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:[(0,Y.jsx)(pe,{"aria-hidden":!0,className:`h-3.5 w-3.5`}),r(o.length===1?`chat.input.annotation.one`:`chat.input.annotation.many`,{count:o.length})]}),(0,Y.jsx)(`div`,{className:`mt-2 space-y-2`,children:o.map((e,t)=>(0,Y.jsxs)(`div`,{className:`border-l-2 border-[hsl(var(--deck-accent)/0.45)] pl-2`,children:[(0,Y.jsx)(`div`,{className:`font-mono text-[9.5px] uppercase text-[hsl(var(--deck-ink-faint))]`,children:r(`chat.input.annotation.item`,{index:t+1})}),(0,Y.jsx)(`blockquote`,{className:`mt-0.5 whitespace-pre-wrap text-[11px] leading-4 text-[hsl(var(--deck-ink-muted))]`,children:e.text}),e.comment&&(0,Y.jsx)(`p`,{className:`mt-1 text-[11px] leading-4 text-[hsl(var(--deck-ink))]`,children:e.comment}),n&&(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>n(e.sourceMessageId),className:`mt-1.5 inline-flex min-h-7 items-center gap-1.5 rounded-md px-2 text-[10.5px] font-medium text-[hsl(var(--deck-accent))] transition-colors hover:bg-[hsl(var(--deck-accent-soft))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:[(0,Y.jsx)(Ce,{"aria-hidden":!0,className:`h-3.5 w-3.5`}),r(`chat.input.annotation.jump`)]})]},e.id))})]}),i&&(0,Y.jsx)(`p`,{className:`text-[14px] text-[hsl(var(--deck-ink))] font-mono leading-relaxed whitespace-pre-wrap`,children:i}),a.length>0&&(0,Y.jsx)(`div`,{className:H(`grid gap-2`,a.length===1?`grid-cols-1 mt-0`:`grid-cols-2 mt-3`),children:a.map((e,t)=>(0,Y.jsx)(`img`,{src:e,alt:`attachment-${t+1}`,className:`object-cover w-full max-h-64 rounded-md`},`${e}-${t}`))})]}),(0,Y.jsx)(Rt,{})]})}let a=Ht(e),o=bt(e.metadata?.codeReview),s=jt(e.metadata?.structuredOutput);return(0,Y.jsxs)(`div`,{"data-chat-message-id":e.id,"data-chat-role":`assistant`,className:H(`flex gap-4 justify-start w-full group`,t?`p-4`:`px-4 pt-0 pb-3`),children:[t?(0,Y.jsx)(Lt,{}):(0,Y.jsx)(`div`,{className:`w-8 shrink-0`}),(0,Y.jsxs)(`div`,{className:`overflow-hidden flex-1 min-w-0`,children:[o?(0,Y.jsx)(St,{report:o}):s?(0,Y.jsx)(Mt,{report:s}):(0,Y.jsx)(sn,{message:e}),!s&&a.trim()&&(0,Y.jsx)(`div`,{className:`mt-1.5 flex opacity-0 transition-opacity group-hover:opacity-100 group-focus-within:opacity-100`,children:(0,Y.jsx)(It,{text:a,label:`Copy response`})})]})]})}var ln=(0,J.memo)(cn),un=e(m(),1),dn=8,fn=10;function pn(e){return e instanceof HTMLElement&&!!e.closest(`input, textarea, select, [contenteditable="true"], [role="textbox"]`)}function mn(){let e=window.visualViewport;return{left:e?.offsetLeft??0,top:e?.offsetTop??0,width:e?.width??window.innerWidth,height:e?.height??window.innerHeight}}function hn(e,t,n){let r=mn(),i=r.left+dn,a=r.left+r.width-t-dn,o=e.left+e.width/2-t/2,s=Math.max(i,Math.min(Math.max(i,a),o)),c=e.bottom+fn,l=e.top-n-fn,u=r.top+r.height-n-dn;return{left:s,top:c<=u?c:Math.max(r.top+dn,Math.min(u,l))}}function gn({rootRef:e,draftKey:n,canAskSideConversation:r,onOpenSideConversation:i}){let a=y(),o=(0,J.useRef)(null),s=(0,J.useRef)(null),c=(0,J.useRef)(!1),l=(0,J.useRef)(`actions`),[u,d]=(0,J.useState)(null),[f,p]=(0,J.useState)(`actions`),[m,h]=(0,J.useState)(``),[g,_]=(0,J.useState)(null),v=(0,J.useCallback)(e=>{c.current=!1,l.current=e,p(e),h(``)},[]),b=(0,J.useCallback)(()=>{c.current=!1,l.current=`actions`,p(`actions`),h(``),d(null),_(null),window.getSelection()?.removeAllRanges()},[]),x=(0,J.useCallback)(e=>{if(!u||u.tooLarge)return;let t=globalThis.crypto?.randomUUID?.()??`selection-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,r=e?.trim();be(n,{id:t,text:u.text,sourceMessageId:u.messageId,sourceRole:u.role,...r?{comment:r}:{}})&&b()},[b,n,u]),S=(0,J.useCallback)(()=>{u&&!u.tooLarge&&r&&i(u.text)&&b()},[r,b,i,u]),C=(0,J.useCallback)(()=>{if(l.current!==`actions`)return;let t=e.current;if(!t)return;let n=V(t,window.getSelection());d(n),_(null)},[e]);if((0,J.useEffect)(()=>{let e=0,t=()=>{window.cancelAnimationFrame(e),e=window.requestAnimationFrame(C)},n=e=>{o.current?.contains(e.target)||u&&(c.current=!1,l.current=`actions`,p(`actions`),h(``),d(null))},r=e=>{o.current?.contains(e.target)||b()},i=e=>{if(!(!u||c.current||e.isComposing||e.keyCode===229)){if(e.key===`Escape`){e.preventDefault(),b();return}if(!(l.current!==`actions`||pn(e.target))){if((e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`j`){e.preventDefault(),v(`comment`);return}e.key===`Enter`&&(e.preventDefault(),x())}}};return document.addEventListener(`selectionchange`,t),document.addEventListener(`pointerup`,t),document.addEventListener(`pointerdown`,n),document.addEventListener(`keydown`,i),document.addEventListener(`scroll`,r,!0),window.addEventListener(`resize`,b),window.visualViewport?.addEventListener(`resize`,b),()=>{window.cancelAnimationFrame(e),document.removeEventListener(`selectionchange`,t),document.removeEventListener(`pointerup`,t),document.removeEventListener(`pointerdown`,n),document.removeEventListener(`keydown`,i),document.removeEventListener(`scroll`,r,!0),window.removeEventListener(`resize`,b),window.visualViewport?.removeEventListener(`resize`,b)}},[x,C,b,u,v]),(0,J.useLayoutEffect)(()=>{if(!u||!o.current)return;let e=o.current.getBoundingClientRect();_(hn(u.rect,e.width,e.height))},[f,u]),(0,J.useEffect)(()=>{f!==`actions`&&requestAnimationFrame(()=>s.current?.focus())},[f]),!u||typeof document>`u`)return null;let w=typeof navigator<`u`&&/Mac|iPhone|iPad|iPod/u.test(navigator.userAgent)?`⌘ J`:`Ctrl J`,T=u.tooLarge?a(`chat.selection.tooLarge`):r?void 0:a(`chat.selection.sideUnavailable`),E={left:g?.left??0,top:g?.top??0,visibility:g?`visible`:`hidden`};return(0,un.createPortal)((0,Y.jsx)(`div`,{ref:o,"data-chat-selection-overlay":!0,style:E,className:`fixed z-50 max-w-[calc(100vw-1rem)]`,onPointerDown:e=>e.stopPropagation(),onPointerUp:e=>e.stopPropagation(),children:f===`actions`?(0,Y.jsxs)(`div`,{role:`toolbar`,"aria-label":a(`chat.selection.toolbar`),className:`grid min-w-[250px] overflow-hidden rounded-lg border border-[hsl(var(--deck-border-strong))] bg-[hsl(var(--deck-surface))]/98 text-[hsl(var(--deck-ink))] shadow-xl backdrop-blur-md divide-y divide-[hsl(var(--deck-border))] sm:flex sm:min-w-0 sm:divide-x sm:divide-y-0`,onPointerDown:e=>e.preventDefault(),children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-keyshortcuts":`Meta+J Control+J`,disabled:u.tooLarge,onClick:()=>v(`comment`),className:`flex min-h-11 items-center gap-2 whitespace-nowrap px-3 text-left text-[12px] transition-colors hover:bg-[hsl(var(--deck-surface-2))] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-45`,children:[(0,Y.jsx)(pe,{"aria-hidden":!0,className:`h-4 w-4 shrink-0`}),(0,Y.jsx)(`span`,{children:a(`chat.selection.comment`)}),(0,Y.jsx)(`kbd`,{className:`ml-auto font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]`,children:w})]}),(0,Y.jsxs)(`button`,{type:`button`,"aria-keyshortcuts":`Enter`,disabled:u.tooLarge,onClick:()=>x(),className:`flex min-h-11 items-center gap-2 whitespace-nowrap px-3 text-left text-[12px] transition-colors hover:bg-[hsl(var(--deck-surface-2))] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-45`,children:[(0,Y.jsx)(k,{"aria-hidden":!0,className:`h-4 w-4 shrink-0`}),(0,Y.jsx)(`span`,{children:a(`chat.selection.add`)}),(0,Y.jsx)(`kbd`,{className:`ml-auto font-mono text-[11px] text-[hsl(var(--deck-ink-faint))]`,children:`↵`})]}),(0,Y.jsxs)(`button`,{type:`button`,disabled:!!T,title:T,onClick:S,className:`flex min-h-11 items-center gap-2 whitespace-nowrap px-3 text-left text-[12px] transition-colors hover:bg-[hsl(var(--deck-surface-2))] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-45`,children:[(0,Y.jsx)(qe,{"aria-hidden":!0,className:`h-4 w-4 shrink-0`}),(0,Y.jsx)(`span`,{children:a(`chat.selection.askSide`)})]})]}):(0,Y.jsxs)(`form`,{role:`dialog`,"aria-label":a(`chat.selection.commentDialog`),className:`w-[min(360px,calc(100vw-1rem))] rounded-lg border border-[hsl(var(--deck-border-strong))] bg-[hsl(var(--deck-surface))] p-2 shadow-xl`,onSubmit:e=>{e.preventDefault(),x(m)},children:[(0,Y.jsx)(`div`,{className:`mb-2 line-clamp-2 border-l-2 border-[hsl(var(--deck-accent)/0.55)] pl-2 font-mono text-[10.5px] leading-4 text-[hsl(var(--deck-ink-muted))]`,children:u.text}),(0,Y.jsx)(`textarea`,{ref:s,name:`selected-conversation-comment`,maxLength:t,rows:3,value:m,onChange:e=>h(e.target.value),onCompositionStart:()=>{c.current=!0},onCompositionEnd:()=>{c.current=!1},onBlur:()=>{c.current=!1},onKeyDown:e=>{if(!(c.current||e.nativeEvent.isComposing||e.keyCode===229)){if((e.metaKey||e.ctrlKey)&&e.key.toLocaleLowerCase()===`a`){e.preventDefault(),e.stopPropagation(),e.currentTarget.select();return}if(e.key===`Escape`){e.preventDefault(),b();return}e.key!==`Enter`||e.shiftKey||(e.preventDefault(),x(m))}},"aria-label":a(`chat.selection.commentInput`),placeholder:a(`chat.selection.commentPlaceholder`),className:`block max-h-32 min-h-[72px] w-full resize-none rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] px-2.5 py-2 text-[12px] leading-5 text-[hsl(var(--deck-ink))] placeholder:text-[hsl(var(--deck-ink-faint))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`}),(0,Y.jsxs)(`div`,{className:`mt-2 flex items-center justify-end gap-2`,children:[(0,Y.jsx)(`button`,{type:`button`,onClick:b,className:`h-8 rounded-md px-2.5 text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:a(`chat.selection.cancel`)}),(0,Y.jsxs)(`button`,{type:`submit`,className:`inline-flex h-8 items-center gap-1.5 rounded-md bg-[hsl(var(--deck-accent))] px-3 text-[11px] font-medium text-white transition-opacity hover:opacity-90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[hsl(var(--deck-accent))] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-45`,children:[a(`chat.selection.add`),(0,Y.jsx)(Le,{"aria-hidden":!0,className:`h-3 w-3`})]})]})]})}),document.body)}function _n(e,t,n){return Math.max(0,e+(n-t))}function vn(e,t,n){return Math.min(t,Math.max(0,e)+Math.max(0,n))}function yn(e,t,n,r){let i=new Map(e.filter(e=>!!e.id).map(e=>[e.id,e])),a=new Set(n);for(let e of t){if(!e.id)continue;let t=i.get(e.id);t!==e&&(!t||!r||r(t)!==r(e))&&a.add(e.id)}return a}function bn(e,t){return e?e.querySelector(`[data-chat-message-id="${CSS.escape(t)}"]`):null}function xn({turns:e,viewportRef:t,containerRef:n,onRevealTurn:r}){let i=y(),[a,o]=(0,J.useState)(null),[s,c]=(0,J.useState)(!1),l=(0,J.useRef)(null),u=(0,J.useCallback)(()=>{let r=t.current,i=n.current;if(!r||!i||e.length===0)return;let a=r.getBoundingClientRect().top,s=e[0]?.id??null;for(let t of e){let e=bn(i,t.id);if(e){if(e.getBoundingClientRect().top-a<=24)s=t.id;else break}}o(s)},[e,t,n]);(0,J.useEffect)(()=>{let e=t.current;if(!e)return;let n=()=>{l.current===null&&(l.current=window.requestAnimationFrame(()=>{l.current=null,u()}))};return u(),e.addEventListener(`scroll`,n,{passive:!0}),()=>{e.removeEventListener(`scroll`,n),l.current!==null&&(window.cancelAnimationFrame(l.current),l.current=null)}},[u,t]);let d=(0,J.useCallback)(e=>{let t=()=>{let t=bn(n.current,e.id);t&&(t.scrollIntoView({behavior:`smooth`,block:`start`}),o(e.id))};r(e.index)?t():window.requestAnimationFrame(()=>window.requestAnimationFrame(t))},[n,r]);return e.length<2?null:(0,Y.jsx)(`nav`,{"aria-label":i(`chat.turns.aria`),className:`absolute right-1 top-1/2 z-20 hidden -translate-y-1/2 sm:block`,onMouseEnter:()=>c(!0),onMouseLeave:()=>c(!1),onFocusCapture:()=>c(!0),onBlurCapture:e=>{e.currentTarget.contains(e.relatedTarget)||c(!1)},children:(0,Y.jsxs)(`div`,{className:`relative flex items-center justify-end`,children:[(0,Y.jsx)(`ul`,{className:H(`flex flex-col items-center gap-2 py-2 transition-opacity`,s?`opacity-0`:`opacity-100`),"aria-hidden":s,children:e.map(e=>(0,Y.jsx)(`li`,{children:(0,Y.jsx)(`span`,{className:H(`block rounded-full transition-all`,e.id===a?`h-2 w-2 bg-[hsl(var(--deck-accent))]`:`h-1.5 w-1.5 bg-[hsl(var(--deck-ink-faint))]/40`)})},e.id))}),(0,Y.jsx)(`div`,{className:H(`absolute right-0 max-h-[min(70vh,520px)] w-[280px] overflow-y-auto rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]/95 p-1 shadow-xl backdrop-blur transition-all`,s?`pointer-events-auto translate-x-0 opacity-100`:`pointer-events-none translate-x-2 opacity-0`),children:e.map((e,t)=>(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>d(e),className:H(`flex w-full items-start gap-2 rounded-md px-2 py-1.5 text-left transition-colors`,e.id===a?`bg-[hsl(var(--deck-hairline))]/70 text-[hsl(var(--deck-ink))]`:`text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-hairline))]/50 hover:text-[hsl(var(--deck-ink))]`),children:[(0,Y.jsx)(`span`,{className:H(`mt-1 h-1.5 w-1.5 shrink-0 rounded-full`,e.id===a?`bg-[hsl(var(--deck-accent))]`:`bg-[hsl(var(--deck-ink-faint))]/40`)}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`span`,{className:`block font-mono text-[9.5px] uppercase tracking-[0.12em] text-[hsl(var(--deck-ink-faint))]`,children:i(`chat.turns.label`,{n:t+1})}),(0,Y.jsx)(`span`,{className:`line-clamp-2 text-[12px] leading-4`,children:e.preview})]})]},e.id))})]})})}var Sn=80;function Cn(e){return typeof e==`string`?e:Array.isArray(e)?e.filter(e=>e.type===`text`).map(e=>e.text).join(` `):``}function wn(e){let t=Cn(e).replace(/\s+/g,` `).trim();return t?t.length>Sn?`${t.slice(0,79)}…`:t:``}function Tn(e){let t=[];for(let n=0;n<e.length;n+=1){let r=e[n];if(r.role!==`user`||!r.id)continue;let i=wn(r.content);i&&t.push({id:r.id,index:n,preview:i})}return t}var En=120,Dn=80,On=96;function Z(e){return e?.querySelector(`[data-radix-scroll-area-viewport]`)??null}function kn(e){return JSON.stringify([e.role,e.content,e.metadata,e.agentContent])}function An({messages:e,isLoading:t,selectionDraftKey:n,canAskSideConversation:r=!1,onOpenSideConversation:i,navigationRequest:a}){let o=y(),s=(0,J.useMemo)(()=>mt(e),[e]),c=(0,J.useRef)(new Map);(0,J.useEffect)(()=>{if(t)return;let n=new Set(e.flatMap(e=>e.agentContent?.toolCalls.map(e=>e.toolCallId)??[]));for(let e of c.current.keys())n.has(e)||c.current.delete(e)},[e,t]);let l=(0,J.useRef)(null),u=(0,J.useRef)(null),d=(0,J.useRef)(!0),f=(0,J.useRef)(!1),p=(0,J.useRef)(s),m=(0,J.useRef)(s),h=(0,J.useRef)(new Set),g=(0,J.useRef)(s.length),_=(0,J.useRef)(null),v=(0,J.useRef)(null),b=(0,J.useRef)(null),[x,S]=(0,J.useState)(En),[C,w]=(0,J.useState)(!1),[T,D]=(0,J.useState)(0),O=s.length>0;p.current=s,(0,J.useEffect)(()=>{let e=Z(l.current);if(!e||f.current&&!d.current)return;let t=window.requestAnimationFrame(()=>{e.scrollTop=e.scrollHeight,f.current=!0,d.current=!0,h.current=new Set,D(0),w(!1)});return()=>window.cancelAnimationFrame(t)},[s]),(0,J.useEffect)(()=>{let e=Z(l.current);if(!e)return;u.current=e;let t=()=>{if(!f.current)return;let t=e.scrollHeight-e.scrollTop-e.clientHeight<=On,n=d.current;d.current=t,w(!t),t?(h.current=new Set,D(0)):n&&(m.current=p.current,h.current=new Set,D(0))};return t(),e.addEventListener(`scroll`,t,{passive:!0}),()=>e.removeEventListener(`scroll`,t)},[O,t]),(0,J.useEffect)(()=>{let e=m.current;if(m.current=s,d.current){h.current.size>0&&(h.current=new Set,D(0));return}let t=yn(e,s,h.current,kn);h.current=t,D(t.size)},[s]),(0,J.useEffect)(()=>{let e=g.current;g.current=s.length,S(t=>t>=e&&s.length>e?s.length:Math.min(Math.max(t,En),s.length||En))},[s.length]);let k=Math.max(s.length-x,0),A=k,j=(0,J.useMemo)(()=>s.slice(A),[s,A]),M=(0,J.useMemo)(()=>Tn(s),[s]),N=(0,J.useCallback)(e=>{let t=it(s,e,x);if(t!==null){if(t>x){v.current=e,S(t);return}ot(l.current,e)}},[s,x]);if((0,J.useLayoutEffect)(()=>{let e=_.current;if(!e)return;let t=Z(l.current);if(_.current=null,t){if(e.element?.isConnected){let n=e.element.getBoundingClientRect().top-e.viewportTop;t.scrollTop+=n;return}t.scrollTop=_n(e.scrollTop,e.scrollHeight,t.scrollHeight)}},[x]),(0,J.useLayoutEffect)(()=>{let e=v.current;e&&(v.current=null,window.requestAnimationFrame(()=>{ot(l.current,e)}))},[x]),(0,J.useEffect)(()=>{a&&b.current!==a.requestId&&(b.current=a.requestId,N(a.messageId))},[N,a]),t)return(0,Y.jsx)(`div`,{role:`status`,"aria-live":`polite`,"aria-busy":`true`,className:`flex overflow-hidden flex-1 justify-center items-center px-5 py-8 min-h-0`,children:(0,Y.jsxs)(`div`,{className:`w-full max-w-[560px]`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-col items-center text-center`,children:[(0,Y.jsxs)(`div`,{className:`relative`,children:[(0,Y.jsx)(`div`,{className:`absolute inset-0 animate-pulse rounded-full bg-[hsl(var(--deck-accent-soft))] blur-xl`}),(0,Y.jsx)(De,{size:42,className:`relative`})]}),(0,Y.jsxs)(`div`,{className:`mt-4 inline-flex items-center gap-1.5 font-mono text-[10px] uppercase tracking-[0.16em] text-[hsl(var(--deck-accent))]`,children:[(0,Y.jsx)(Oe,{className:`w-3 h-3`}),o(`chat.list.loading.eyebrow`)]}),(0,Y.jsx)(`h2`,{className:`mt-2 text-[15px] font-medium text-[hsl(var(--deck-ink))]`,children:o(`chat.list.loading.title`)}),(0,Y.jsx)(`p`,{className:`mt-1 max-w-sm text-[11.5px] leading-5 text-[hsl(var(--deck-ink-faint))]`,children:o(`chat.list.loading.hint`)})]}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`mt-7 space-y-4 rounded-xl border border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-surface))]/45 px-4 py-5`,children:[72,88,64].map((e,t)=>(0,Y.jsxs)(`div`,{className:H(`flex gap-3`,t%2==1&&`flex-row-reverse`),children:[(0,Y.jsx)(`span`,{className:`h-7 w-7 shrink-0 animate-pulse rounded-md bg-[hsl(var(--deck-surface-2))]`}),(0,Y.jsx)(`span`,{className:`h-10 animate-pulse rounded-lg bg-[hsl(var(--deck-surface-2))]`,style:{width:`${e}%`,animationDelay:`${t*120}ms`}})]},e))})]})});if(s.length===0&&!t)return(0,Y.jsx)(`div`,{className:`flex flex-1 justify-center items-center`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4 items-center text-center`,children:[(0,Y.jsx)(De,{size:44}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`div`,{className:`deck-eyebrow text-[hsl(var(--deck-accent))]`,children:o(`chat.list.empty.eyebrow`)}),(0,Y.jsx)(`div`,{className:`mt-2 text-[15px] font-medium text-[hsl(var(--deck-ink))]`,children:o(`chat.list.empty.title`)}),(0,Y.jsx)(`div`,{className:`mt-1 max-w-xs text-[12px] text-[hsl(var(--deck-ink-muted))]`,children:o(`chat.list.empty.hint`)})]})]})});let P=()=>{let e=Z(l.current);e&&(e.scrollTop=e.scrollHeight,d.current=!0,f.current=!0,h.current=new Set,D(0),w(!1))},F=()=>{let e=Z(l.current);if(e){let t=l.current?.querySelector(`[data-chat-message-id]`)??null;_.current={element:t,viewportTop:t?.getBoundingClientRect().top??0,scrollHeight:e.scrollHeight,scrollTop:e.scrollTop}}S(e=>vn(e,s.length,Dn))},ee=e=>e>=A||(S(s.length),!1),I=T===1?o(`chat.list.unreadMessage`):o(`chat.list.unreadMessages`,{count:T});return(0,Y.jsxs)(`div`,{ref:l,className:`relative flex-1 min-h-0`,children:[(0,Y.jsx)(Me,{className:`h-full`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col px-4 pb-4 w-full md:px-6`,children:[k>0&&(0,Y.jsx)(`div`,{className:`flex justify-center py-3`,children:(0,Y.jsx)(`button`,{type:`button`,onClick:F,"aria-label":o(`chat.list.showEarlierWithRemaining`,{count:Math.min(k,Dn),remaining:k}),className:`rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 py-1.5 font-mono text-[12px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))]`,children:o(`chat.list.showEarlier`,{count:Math.min(k,Dn)})})}),j.map((e,t)=>{let n=A+t,r=n>0?s[n-1]:null,i=!r||r.role!==e.role||r.role===`user`;return(0,Y.jsx)(Nt.Provider,{value:c.current,children:(0,Y.jsx)(ln,{message:e,showAvatar:i,onNavigateToMessage:N})},e.id||`msg-${n}`)})]})}),(0,Y.jsx)(xn,{turns:M,viewportRef:u,containerRef:l,onRevealTurn:ee}),n&&i&&(0,Y.jsx)(gn,{rootRef:l,draftKey:n,canAskSideConversation:r,onOpenSideConversation:i}),C&&(0,Y.jsxs)(`button`,{type:`button`,onClick:P,"aria-live":`polite`,"aria-label":T>0?I:o(`chat.list.jumpLatest`),className:`absolute bottom-4 left-1/2 z-10 inline-flex -translate-x-1/2 items-center gap-1.5 rounded-full border border-[hsl(var(--deck-border-strong))] bg-[hsl(var(--deck-surface))]/95 px-3 py-1.5 font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] shadow-lg backdrop-blur transition-colors hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:[(0,Y.jsx)(E,{className:`h-3.5 w-3.5 text-[hsl(var(--deck-accent))]`}),T>0?I:o(`chat.list.jumpLatest`)]})]})}var jn=(0,J.memo)(An);function Mn({queue:e,mutation:t,onMutate:n,onRefresh:r}){let i=y(),[a,o]=(0,J.useState)(!1),s=(0,J.useRef)(null),c=(0,J.useRef)(null),l=(0,J.useRef)(null);(0,J.useLayoutEffect)(()=>{if(t.pending||!s.current)return;let e=s.current;s.current=null,(Array.from(c.current?.querySelectorAll(`[data-follow-up-focus-id]`)??[]).find(t=>t.dataset.followUpFocusId===e)??c.current?.querySelector(`button`))?.focus()},[t.pending,e?.version]);let u=(0,J.useCallback)(async e=>{s.current=e.messageId,await n(e)},[n]),d=(0,J.useCallback)((e,t)=>{u({type:`move`,messageId:e,toPosition:t})},[u]);return!e||e.pending===0&&!t.errorMessage?null:(0,Y.jsxs)(`section`,{ref:c,"data-blade-follow-up-queue":!0,className:`mx-4 mb-2 overflow-hidden rounded-lg border border-amber-300/70 bg-amber-50/70 shadow-sm dark:border-amber-900/60 dark:bg-amber-950/25 md:mx-6`,"aria-label":i(`chat.followUpQueue.title`),children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-label":i(a?`chat.followUpQueue.hide`:`chat.followUpQueue.show`),"aria-expanded":a,onClick:()=>o(e=>!e),className:`flex min-h-10 w-full items-center gap-2 px-3 text-left font-mono text-[11px] text-amber-950 transition-colors hover:bg-amber-100/70 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-amber-500 dark:text-amber-100 dark:hover:bg-amber-900/35`,children:[(0,Y.jsx)(Ue,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`font-semibold`,children:i(`chat.followUpQueue.count`,{count:e.pending})}),e.locked>0&&(0,Y.jsx)(`span`,{className:`text-amber-700/80 dark:text-amber-300/75`,children:i(`chat.followUpQueue.lockedCount`,{count:e.locked})}),(0,Y.jsx)(A,{className:`ml-auto h-3.5 w-3.5 transition-transform ${a?`rotate-90`:``}`,"aria-hidden":!0})]}),a&&(0,Y.jsxs)(`div`,{className:`border-t border-amber-300/60 px-2 py-2 dark:border-amber-900/50`,children:[t.errorMessage&&(0,Y.jsxs)(`div`,{role:`alert`,className:`mb-2 flex items-center gap-2 rounded-md border border-red-200 bg-red-50 px-2.5 py-2 text-[11px] text-red-700 dark:border-red-900/60 dark:bg-red-950/35 dark:text-red-300`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 flex-1`,children:t.errorCode===`revision_conflict`?i(`chat.followUpQueue.stale`):t.errorMessage}),r&&(0,Y.jsx)(`button`,{type:`button`,"aria-label":i(`chat.followUpQueue.refresh`),onClick:()=>void r(),className:`rounded p-1 hover:bg-red-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 dark:hover:bg-red-900/60`,children:(0,Y.jsx)(Se,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]}),(0,Y.jsx)(`ol`,{className:`space-y-1.5`,children:e.items.map((n,r)=>{let a=e.items[r-1],o=e.items[r+1],s=n.mutable&&a?.mutable===!0,c=n.mutable&&o?.mutable===!0,f=t.pending;return(0,Y.jsxs)(`li`,{"data-follow-up-id":n.id,"data-follow-up-state":n.state,"data-follow-up-focus-id":n.id,tabIndex:-1,draggable:n.mutable&&!t.pending,onDragStart:()=>{l.current=n.mutable?n.id:null},onDragOver:t=>{let r=l.current;e.items.find(e=>e.id===r)?.mutable&&n.mutable&&t.preventDefault()},onDrop:t=>{t.preventDefault();let r=l.current;l.current=null;let i=e.items.find(e=>e.id===r);if(!i?.mutable||!n.mutable||i.id===n.id)return;let a=Math.min(i.position,n.position),o=Math.max(i.position,n.position);e.items.slice(a,o+1).some(e=>!e.mutable)||d(i.id,n.position)},onDragEnd:()=>{l.current=null},className:`flex min-w-0 items-center gap-2 rounded-md border border-amber-200/70 bg-white/75 px-2.5 py-2 dark:border-amber-900/50 dark:bg-zinc-950/45`,children:[(0,Y.jsx)(`span`,{className:`w-5 shrink-0 text-center font-mono text-[10px] text-amber-700 dark:text-amber-400`,children:r+1}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`div`,{className:`truncate text-xs text-[hsl(var(--deck-ink))]`,children:n.kind===`internal`?i(`chat.followUpQueue.internal`):n.preview||i(`chat.followUpQueue.attachmentOnly`)}),(0,Y.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-2 font-mono text-[9px] uppercase tracking-[0.08em] text-[hsl(var(--deck-ink-faint))]`,children:[(0,Y.jsx)(`span`,{children:i(`chat.followUpQueue.delivery.${n.delivery}`)}),!n.mutable&&(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,Y.jsx)(Ge,{className:`h-2.5 w-2.5`,"aria-hidden":!0}),i(`chat.followUpQueue.locked`)]}),n.attachmentCount>0&&(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,Y.jsx)(Ee,{className:`h-2.5 w-2.5`,"aria-hidden":!0}),n.attachmentCount]})]})]}),f&&t.messageId===n.id?(0,Y.jsx)(K,{className:`h-3.5 w-3.5 shrink-0 animate-spin text-amber-600`}):(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[(0,Y.jsx)(`button`,{type:`button`,"aria-label":i(`chat.followUpQueue.moveUp`,{id:n.id}),disabled:f||!s,onClick:()=>d(n.id,r-1),className:`rounded p-1 text-amber-800 transition-colors hover:bg-amber-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-amber-500 disabled:opacity-30 dark:text-amber-300 dark:hover:bg-amber-900/50`,children:(0,Y.jsx)(O,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":i(`chat.followUpQueue.moveDown`,{id:n.id}),disabled:f||!c,onClick:()=>d(n.id,r+1),className:`rounded p-1 text-amber-800 transition-colors hover:bg-amber-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-amber-500 disabled:opacity-30 dark:text-amber-300 dark:hover:bg-amber-900/50`,children:(0,Y.jsx)(E,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":i(`chat.followUpQueue.remove`,{id:n.id}),disabled:f||!n.mutable,onClick:()=>void u({type:`remove`,messageId:n.id}),className:`rounded p-1 text-red-600 transition-colors hover:bg-red-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 disabled:opacity-30 dark:text-red-400 dark:hover:bg-red-950/60`,children:(0,Y.jsx)(R,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]})]},n.id)})})]})]})}var Nn=g,Pn=_,Fn=h,In=J.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,Y.jsx)(v,{ref:r,sideOffset:t,className:H(`z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]`,e),...n}));In.displayName=v.displayName;var Ln={active:{labelKey:`goal.status.active`,dot:`bg-[hsl(var(--deck-accent))] shadow-[0_0_6px_hsl(var(--deck-accent-glow)/0.5)]`,accent:`text-[hsl(var(--deck-accent))]`},verifying:{labelKey:`goal.status.active`,dot:`animate-pulse bg-sky-400`,accent:`text-sky-600 dark:text-sky-300`},paused:{labelKey:`goal.status.paused`,dot:`bg-amber-400`,accent:`text-amber-600 dark:text-amber-300`},blocked:{labelKey:`goal.status.blocked`,dot:`bg-rose-500`,accent:`text-rose-600 dark:text-rose-300`},usage_limited:{labelKey:`goal.status.usageLimited`,dot:`bg-orange-500`,accent:`text-orange-600 dark:text-orange-300`},budget_limited:{labelKey:`goal.status.budgetLimited`,dot:`bg-orange-500`,accent:`text-orange-600 dark:text-orange-300`},complete:{labelKey:`goal.status.complete`,dot:`bg-emerald-500`,accent:`text-emerald-600 dark:text-emerald-300`}};function Rn(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)}function zn(e){if(e<60)return`${e}s`;let t=Math.floor(e/60),n=e%60;return n===0?`${t}m`:`${t}m ${n}s`}function Bn(){let e=y(),{locale:t}=S(),n=q(e=>e.goal),r=q(e=>e.pauseGoal),i=q(e=>e.resumeGoal),o=q(e=>e.editGoal),s=q(e=>e.clearGoal),c=q(e=>u(e.historySurfaceSelection)),[l,d]=(0,J.useState)(!1),[f,p]=(0,J.useState)(!1),[m,h]=(0,J.useState)(``),[g,_]=(0,J.useState)(null),[v,b]=(0,J.useState)(!1);if((0,J.useEffect)(()=>{d(!1),p(!1),h(n?.objective??``),b(!1)},[n?.goalId]),c||!n)return null;let x=Ln[n.status],C=[`active`,`verifying`,`paused`,`blocked`].includes(n.status),w=n.status===`active`||n.status===`verifying`,T=n.status===`paused`||n.status===`blocked`,E=g!==null,O=async(e,t)=>{if(!a(q.getState())){_(e);try{await t()}finally{_(null)}}},k=()=>{h(n.objective),p(!0),d(!0)},A=async e=>{e.preventDefault();let t=m.trim();if(!t||t===n.objective){p(!1);return}await O(`edit`,()=>o(t)),p(!1)},j=async()=>{await O(`delete`,s),b(!1)};return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Nn,{delayDuration:250,children:(0,Y.jsxs)(`section`,{"aria-label":e(`goal.aria.section`),className:`mx-3 mb-1 shrink-0`,"data-blade-goal-status":n.status,"data-blade-goal-recovery":n.prematureStop?.consecutiveCount,"data-blade-goal-recovery-pattern":n.prematureStop?.pattern,"data-blade-goal-verification-stall":n.verificationStall?.consecutiveCount,"data-blade-goal-frontier-task-list":n.executionFrontier?.taskListId,"data-blade-goal-frontier-total":n.executionFrontier?.total,"data-blade-goal-frontier-completed":n.executionFrontier?.completed,"data-blade-goal-frontier-in-progress":n.executionFrontier?.inProgress,"data-blade-goal-frontier-pending":n.executionFrontier?.pending,"data-blade-goal-frontier-blocked":n.executionFrontier?.blocked,"data-blade-goal-frontier-next-task":n.executionFrontier?.nextTask?.id,"data-blade-goal-frontier-digest":n.executionFrontier?.digestSha256.slice(0,16),"data-blade-goal-frontier-stall":n.frontierStall?.category,"data-blade-goal-frontier-stall-count":n.frontierStall?.consecutiveCount,"data-blade-goal-execution-host-failure":n.executionHostFailure?.category,"data-blade-goal-execution-host-failure-count":n.executionHostFailure?.consecutiveCount,"data-blade-goal-root-turn":n.turnLineage?.rootTurnId,"data-blade-goal-current-turn":n.turnLineage?.currentTurnId,"data-blade-goal-parent-turn":n.turnLineage?.parentTurnId,children:[(0,Y.jsxs)(`div`,{className:H(`flex h-9 items-center gap-2 rounded-lg border px-3 transition-colors`,`border-[hsl(var(--deck-border))]/60 bg-[hsl(var(--deck-surface))]/80 backdrop-blur-sm`,l&&`rounded-b-none border-b-0`),children:[n.status===`complete`?(0,Y.jsx)(ve,{className:`h-3.5 w-3.5 shrink-0 text-emerald-500`}):(0,Y.jsx)(Ye,{className:H(`h-3.5 w-3.5 shrink-0`,x.accent)}),(0,Y.jsx)(`span`,{className:H(`h-1.5 w-1.5 shrink-0 rounded-full`,x.dot)}),(0,Y.jsx)(`span`,{className:H(`shrink-0 text-[10px] font-medium leading-none`,x.accent),children:n.status===`verifying`?t===`zh`?`验证中`:`Verifying`:e(x.labelKey)}),(0,Y.jsx)(`span`,{className:`h-3 w-px shrink-0 bg-[hsl(var(--deck-hairline))]`}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":e(l?`goal.action.collapse`:`goal.action.expand`),className:`min-w-0 flex-1 truncate text-left text-[12px] leading-5 text-[hsl(var(--deck-ink))]/85 outline-none transition-colors hover:text-[hsl(var(--deck-ink))]`,onClick:()=>d(e=>!e),"aria-expanded":l,title:n.objective,children:n.objective}),n.tokensUsed>0&&(0,Y.jsxs)(`span`,{className:`hidden shrink-0 text-[10px] tabular-nums text-[hsl(var(--deck-ink-muted))] sm:inline`,children:[Rn(n.tokensUsed),n.tokenBudget!==void 0&&`/${Rn(n.tokenBudget)}`]}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center`,children:[w&&(0,Y.jsx)(Vn,{label:e(`goal.action.pause`),disabled:E,onClick:()=>void O(`pause`,r),children:g===`pause`?(0,Y.jsx)(K,{className:`animate-spin`}):(0,Y.jsx)(F,{})}),T&&(0,Y.jsx)(Vn,{label:e(`goal.action.resume`),disabled:E,onClick:()=>void O(`resume`,i),children:g===`resume`?(0,Y.jsx)(K,{className:`animate-spin`}):(0,Y.jsx)(I,{})}),(0,Y.jsx)(Vn,{label:e(C?`goal.action.edit`:`goal.action.expand`),disabled:!C&&!l,onClick:C?k:()=>d(e=>!e),children:C?(0,Y.jsx)(ee,{}):(0,Y.jsx)(D,{})}),(0,Y.jsx)(Vn,{label:e(`goal.action.delete`),disabled:E,destructive:!0,onClick:()=>b(!0),children:(0,Y.jsx)(R,{})})]})]}),l&&(0,Y.jsx)(`div`,{className:`rounded-b-lg border border-t-0 border-[hsl(var(--deck-border))]/60 bg-[hsl(var(--deck-surface))]/80 px-4 py-3 backdrop-blur-sm`,children:f?(0,Y.jsxs)(`form`,{onSubmit:A,children:[(0,Y.jsx)(`textarea`,{id:`goal-objective`,value:m,onChange:e=>h(e.target.value),onKeyDown:e=>{e.key===`Escape`&&p(!1)},rows:3,autoFocus:!0,className:`w-full resize-none rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] px-3 py-2 text-[12px] leading-5 text-[hsl(var(--deck-ink))] outline-none transition-shadow focus:border-[hsl(var(--deck-accent))] focus:ring-1 focus:ring-[hsl(var(--deck-accent-glow))]`}),(0,Y.jsxs)(`div`,{className:`mt-2 flex items-center justify-end gap-2`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>p(!1),className:`inline-flex h-7 items-center gap-1 rounded-md px-2.5 text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-hairline))]/60`,children:[(0,Y.jsx)(U,{className:`h-3 w-3`}),e(`goal.action.cancel`)]}),(0,Y.jsxs)(`button`,{type:`submit`,disabled:!m.trim()||g===`edit`,className:`inline-flex h-7 items-center gap-1 rounded-md bg-[hsl(var(--deck-accent))] px-2.5 text-[11px] font-medium text-white transition-colors hover:bg-[hsl(var(--deck-accent))]/90 disabled:cursor-not-allowed disabled:opacity-50`,children:[g===`edit`?(0,Y.jsx)(K,{className:`h-3 w-3 animate-spin`}):(0,Y.jsx)(ke,{className:`h-3 w-3`}),e(`goal.action.save`)]})]})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`p`,{className:`whitespace-pre-wrap text-[12px] leading-5 text-[hsl(var(--deck-ink))]/90`,children:n.objective}),(0,Y.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-x-4 gap-y-1.5 text-[10px] text-[hsl(var(--deck-ink-muted))]`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,Y.jsx)(Ve,{className:`h-3 w-3`}),Rn(n.tokensUsed),n.tokenBudget!==void 0&&` / ${Rn(n.tokenBudget)}`,` `,e(`goal.metrics.tokens`)]}),(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,Y.jsx)(Ze,{className:`h-3 w-3`}),zn(n.timeUsedSeconds)]}),(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,Y.jsx)(ge,{className:`h-3 w-3`}),n.continuationCount===1?e(`goal.metrics.continuationOne`,{n:n.continuationCount}):e(`goal.metrics.continuationMany`,{n:n.continuationCount})]})]}),n.turnLineage&&(0,Y.jsxs)(`div`,{className:`mt-2 grid grid-cols-[auto_1fr] gap-x-3 gap-y-1 rounded-md border border-[hsl(var(--deck-border))]/50 bg-[hsl(var(--deck-canvas))]/45 px-2.5 py-2 font-mono text-[10px] text-[hsl(var(--deck-ink-muted))]`,children:[(0,Y.jsx)(`span`,{children:e(`goal.lineage.origin`)}),(0,Y.jsx)(`span`,{className:`truncate`,children:n.turnLineage.rootTurnId??`?`}),(0,Y.jsx)(`span`,{children:e(`goal.lineage.current`)}),(0,Y.jsx)(`span`,{className:`truncate`,children:n.turnLineage.currentTurnId}),(0,Y.jsx)(`span`,{children:e(`goal.lineage.parent`)}),(0,Y.jsx)(`span`,{className:`truncate`,children:n.turnLineage.parentTurnId??`?`})]}),n.prematureStop&&(0,Y.jsxs)(`div`,{className:`mt-2 inline-flex items-center gap-1.5 font-mono text-[10px] text-amber-700 dark:text-amber-300`,children:[(0,Y.jsx)(ge,{className:`h-3 w-3`}),t===`zh`?`恢复提示`:`Recovery nudge`,` `,n.prematureStop.consecutiveCount,` ·`,` `,n.prematureStop.pattern.replaceAll(`_`,` `)]}),n.executionHostFailure&&(0,Y.jsxs)(`div`,{className:`mt-2 rounded-md border border-amber-200/50 bg-amber-50/60 px-2.5 py-2 text-[11px] text-amber-900 dark:border-amber-400/15 dark:bg-amber-400/[0.05] dark:text-amber-100`,children:[(0,Y.jsx)(`p`,{className:`font-medium`,children:e(`goal.executionHostFailure.title`)}),(0,Y.jsxs)(`p`,{className:`mt-1 font-mono opacity-80`,children:[e(`goal.executionHostFailure.category.${n.executionHostFailure.category}`),` `,`· `,n.executionHostFailure.consecutiveCount,`/3`]})]}),n.completionVerification&&(0,Y.jsxs)(`div`,{"data-goal-verification":n.completionVerification.status,className:`mt-2 rounded-md border border-sky-200/50 bg-sky-50/60 px-2.5 py-2 text-[11px] text-sky-900 dark:border-sky-400/15 dark:bg-sky-400/[0.05] dark:text-sky-100`,children:[(0,Y.jsxs)(`p`,{className:`font-mono font-medium`,children:[`#`,n.completionVerification.attempt,` ·`,` `,n.completionVerification.status.toUpperCase(),` ·`,` `,n.completionVerification.verifierSessionId?.slice(0,12)??`-`,n.verificationStall?t===`zh`?` · 重复 ${n.verificationStall.consecutiveCount}/3`:` · repeat ${n.verificationStall.consecutiveCount}/3`:``]}),n.completionVerification.summary&&(0,Y.jsx)(`p`,{className:`mt-1 line-clamp-3 whitespace-pre-wrap opacity-80`,children:n.completionVerification.summary}),n.completionVerification.evidenceSha256&&(0,Y.jsxs)(`p`,{className:`mt-1 font-mono text-[10px] opacity-60`,children:[`sha256:`,n.completionVerification.evidenceSha256.slice(0,12)]})]}),n.statusReason&&(0,Y.jsx)(`div`,{className:`mt-2 rounded-md border border-amber-200/50 bg-amber-50/60 px-2.5 py-1.5 text-[11px] text-amber-800 dark:border-amber-400/15 dark:bg-amber-400/[0.05] dark:text-amber-200`,children:n.statusReason})]})})]})}),(0,Y.jsx)(oe,{open:v,onOpenChange:b,children:(0,Y.jsxs)(se,{className:`max-w-[400px] border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]`,children:[(0,Y.jsx)(le,{children:e(`goal.dialog.title`)}),(0,Y.jsx)(B,{children:e(`goal.dialog.description`)}),(0,Y.jsxs)(je,{className:`mt-2`,children:[(0,Y.jsx)(`button`,{type:`button`,onClick:()=>b(!1),className:`inline-flex h-8 items-center justify-center rounded-md border border-[hsl(var(--deck-border))] px-3 text-[12px] text-[hsl(var(--deck-ink))] hover:bg-[hsl(var(--deck-hairline))]/60`,children:e(`goal.action.cancel`)}),(0,Y.jsxs)(`button`,{type:`button`,disabled:g===`delete`,onClick:()=>void j(),className:`inline-flex gap-1.5 justify-center items-center px-3 h-8 text-[12px] font-medium text-white bg-rose-600 rounded-md hover:bg-rose-500 disabled:opacity-50`,children:[g===`delete`&&(0,Y.jsx)(K,{className:`w-3.5 h-3.5 animate-spin`}),e(`goal.action.delete`)]})]})]})})]})}function Vn({label:e,children:t,disabled:n,destructive:r,onClick:i}){return(0,Y.jsxs)(Pn,{children:[(0,Y.jsx)(Fn,{asChild:!0,children:(0,Y.jsx)(`button`,{type:`button`,"aria-label":e,disabled:n,onClick:i,className:H(`flex h-6 w-6 items-center justify-center rounded-md text-[hsl(var(--deck-ink-muted))] outline-none transition-colors focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent-glow))]/50 disabled:cursor-not-allowed disabled:opacity-35 [&_svg]:h-3.5 [&_svg]:w-3.5`,r?`hover:bg-rose-500/10 hover:text-rose-500`:`hover:bg-[hsl(var(--deck-hairline))]/60 hover:text-[hsl(var(--deck-ink))]`),children:t})}),(0,Y.jsx)(In,{side:`top`,className:`text-[10px]`,children:e})]})}function Hn(){let e=y(),t=q(e=>e.currentSessionRef),n=q(e=>e.sessions),r=q(e=>e.messages),i=q(e=>u(e.historySurfaceSelection)),a=(0,J.useMemo)(()=>{let e=t?ie(n,t)?.pendingInteraction:void 0;if(e)return e.type;for(let e=r.length-1;e>=0;--e){let t=r[e]?.agentContent;if(t?.confirmation?.status===`pending`)return`permission`;if(t?.question?.status===`pending`)return`question`;if(t?.elicitation?.status===`pending`)return`elicitation`}return null},[t,r,n]);if(i||!a)return null;let o=()=>{let e=document.querySelector(`[data-pending-interaction="${a}"]`);e?.scrollIntoView({block:`center`,behavior:`smooth`}),window.setTimeout(()=>e?.focus(),250)},s=a===`question`,c=a===`elicitation`;return(0,Y.jsxs)(`div`,{role:`alert`,className:`mx-3 mb-2 flex flex-wrap items-center gap-2 rounded-lg border border-amber-300/80 bg-amber-50/95 px-3 py-2 font-mono text-amber-950 shadow-sm backdrop-blur dark:border-amber-800/80 dark:bg-amber-950/90 dark:text-amber-100 sm:mx-5`,children:[(0,Y.jsx)(_e,{className:`h-4 w-4 shrink-0 text-amber-600 dark:text-amber-400`}),(0,Y.jsxs)(`div`,{className:`min-w-[180px] flex-1`,children:[(0,Y.jsx)(`div`,{className:`text-[11.5px] font-semibold`,children:e(s?`interaction.bar.questionTitle`:c?`interaction.bar.elicitationTitle`:`interaction.bar.permissionTitle`)}),(0,Y.jsx)(`div`,{className:`mt-0.5 text-[10px] leading-4 text-amber-800 dark:text-amber-300`,children:e(s?`interaction.bar.questionHint`:c?`interaction.bar.elicitationHint`:`interaction.bar.permissionHint`)})]}),(0,Y.jsxs)(`button`,{type:`button`,onClick:o,className:`inline-flex min-h-8 shrink-0 items-center gap-1.5 rounded-md border border-amber-400/80 bg-white/80 px-2.5 text-[10.5px] font-medium transition-colors hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500 dark:border-amber-700 dark:bg-amber-950/70 dark:hover:bg-amber-900`,children:[(0,Y.jsx)(E,{className:`h-3 w-3`}),e(`interaction.bar.review`)]})]})}function Q(e){return Math.max(0,Math.ceil((e??0)/1e3))}function Un(e,t=Date.now()){let n=e.snapshot?.nextActionAt;return n===void 0?void 0:Q(n-t)}function Wn(e,t=Date.now()){let n=e?.snapshot;if(!n)return null;let r=Un(e,t)??0,i=n.retry,a=n.admission,o=n.stall,s=n.fallback,c={seconds:r,attempt:i?.attempt??0,maxRetries:i?.maxRetries??0,budgetSeconds:Q(i?.recoveryRemainingMs),position:a?.queuePosition??0,depth:a?Math.max(a.queueDepth,a.queuePosition):0,scope:a?.scope??``,waitSeconds:Q(a?.waitMs),stallSeconds:Q(o?.durationMs),timeoutSeconds:Q(o?.timeoutMs),from:s?.from.model??``,to:s?.to.model??``,candidate:s?.candidate??0,candidateCount:s?.candidateCount??0};switch(n.activity){case`admission_wait`:return{titleKey:`chat.providerRecovery.admission`,detailKey:`chat.providerRecovery.admissionDetail`,compactKey:`chat.providerRecovery.admissionCompact`,params:c};case`retry_wait`:return{titleKey:n.reason===`rate_limit`?`chat.providerRecovery.rateLimit`:`chat.providerRecovery.retryWait`,detailKey:`chat.providerRecovery.retryDetail`,compactKey:`chat.providerRecovery.retryCompact`,params:c};case`retry_attempt`:return{titleKey:`chat.providerRecovery.retryAttempt`,detailKey:`chat.providerRecovery.retryDetail`,compactKey:`chat.providerRecovery.retryCompact`,params:c};case`circuit_open`:return{titleKey:n.reason===`rate_limit`?`chat.providerRecovery.rateLimitCircuit`:`chat.providerRecovery.circuit`,detailKey:`chat.providerRecovery.circuitDetail`,compactKey:n.reason===`rate_limit`?`chat.providerRecovery.rateLimitCircuitCompact`:`chat.providerRecovery.circuitCompact`,params:c};case`circuit_probe`:return{titleKey:`chat.providerRecovery.probe`,detailKey:`chat.providerRecovery.probeDetail`,compactKey:`chat.providerRecovery.probeCompact`,params:c};case`stream_stall`:return{titleKey:o?.outputStarted?`chat.providerRecovery.stallAfterOutput`:`chat.providerRecovery.stall`,detailKey:`chat.providerRecovery.stallDetail`,compactKey:`chat.providerRecovery.stallCompact`,params:c};case`fallback`:return{titleKey:`chat.providerRecovery.fallback`,detailKey:`chat.providerRecovery.fallbackDetail`,compactKey:`chat.providerRecovery.fallbackCompact`,params:c}}}function Gn({recovery:e,stopping:t,onStop:n}){let r=y(),[i,a]=(0,J.useState)(Date.now()),o=e?.snapshot?.nextActionAt;(0,J.useEffect)(()=>{if(o===void 0)return;a(Date.now());let e=window.setInterval(()=>a(Date.now()),1e3);return()=>window.clearInterval(e)},[o]);let s=Wn(e,i);return s?(0,Y.jsxs)(`section`,{role:`status`,"aria-live":`polite`,"data-provider-recovery-banner":!0,className:`mx-4 mb-2 flex min-h-12 items-center gap-3 rounded-lg border border-amber-300/70 bg-amber-50/80 px-3 py-2 text-amber-950 shadow-sm dark:border-amber-800/60 dark:bg-amber-950/35 dark:text-amber-100 md:mx-6`,children:[(0,Y.jsx)(K,{className:`h-4 w-4 shrink-0 animate-spin`,"aria-hidden":!0}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`div`,{className:`text-xs font-semibold`,children:r(s.titleKey,s.params)}),(0,Y.jsx)(`div`,{className:`mt-0.5 truncate font-mono text-[10px] opacity-80`,children:r(s.detailKey,s.params)})]}),(0,Y.jsxs)(`button`,{type:`button`,"data-provider-recovery-stop":!0,onClick:n,disabled:t,className:`inline-flex min-h-8 shrink-0 items-center gap-1.5 rounded-md border border-amber-400/70 bg-white/70 px-2.5 text-xs font-medium transition-colors hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500 disabled:cursor-wait disabled:opacity-60 dark:border-amber-700 dark:bg-amber-950/50 dark:hover:bg-amber-900/50`,children:[t?(0,Y.jsx)(K,{className:`h-3.5 w-3.5 animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(Te,{className:`h-3 w-3 fill-current`,"aria-hidden":!0}),r(t?`chat.input.action.stopping`:`chat.providerRecovery.stop`)]})]}):null}var Kn=(0,J.lazy)(()=>C(()=>import(`./MarkdownRenderer-d7DdyYdx.js`).then(e=>({default:e.MarkdownRenderer})),__vite__mapDeps([0,1,2,3,4,5,6,7,8])));function qn(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function Jn(e,t){return e?[{id:`legacy-user`,role:`user`,content:e},...t?[{id:`legacy-assistant`,role:`assistant`,content:t}]:[]]:[]}function Yn(e){return e?JSON.stringify([e.sessionRef.projectPath,e.sessionRef.sessionId,e.requestId]):null}function Xn(){let e=y(),t=q(e=>e.sideConversation),n=q(e=>e.askSideConversation),r=q(e=>e.openSideConversation),i=q(e=>e.dismissSideConversation),a=Yn(t),[o,s]=(0,J.useState)({owner:a,text:``}),c=o.owner===a?o.text:``;o.owner!==a&&s({owner:a,text:``});let l=e=>s({owner:a,text:e}),u=(0,J.useRef)(null),d=(0,J.useRef)(!1),f=(0,J.useRef)(null),p=(0,J.useMemo)(()=>t?.messages??Jn(t?.question??``,t?.response),[t?.messages,t?.question,t?.response]);if((0,J.useEffect)(()=>{if(d.current=!1,!t||t.status===`loading`)return;let e=document.activeElement;if(t.status!==`idle`&&e instanceof HTMLElement&&e!==u.current&&e.matches(`input, textarea, select, [contenteditable="true"]`))return;let n=requestAnimationFrame(()=>{document.activeElement===e&&u.current?.focus()});return()=>cancelAnimationFrame(n)},[t?.sessionRef,t?.selectedText,t?.status]),(0,J.useEffect)(()=>{f.current?.scrollIntoView?.({block:`nearest`})},[p.length,t?.status]),!t)return null;let m=()=>{let e=c.trim();if(!e||t.status===`loading`)return;l(``);let r=n(e),i=Yn(q.getState().sideConversation);r.then(t=>{!t&&i!==null&&Yn(q.getState().sideConversation)===i&&s({owner:i,text:e})})};return(0,Y.jsxs)(`aside`,{"aria-label":e(`chat.side.title`),"data-blade-side-conversation":!0,"data-status":t.status,className:`absolute inset-0 z-30 flex min-h-0 flex-col bg-[hsl(var(--deck-canvas))] md:relative md:inset-auto md:w-[min(420px,42vw)] md:shrink-0 md:border-l md:border-[hsl(var(--deck-hairline))]`,children:[(0,Y.jsxs)(`header`,{className:`flex h-12 shrink-0 items-center gap-2 border-b border-[hsl(var(--deck-hairline))] px-3`,children:[(0,Y.jsx)(qe,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-[hsl(var(--deck-accent))]`}),(0,Y.jsx)(`h2`,{className:`min-w-0 flex-1 truncate text-[13px] font-medium text-[hsl(var(--deck-ink))]`,children:e(`chat.side.title`)}),t.durationMs!==void 0&&(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 font-mono text-[9.5px] text-[hsl(var(--deck-ink-faint))]`,children:[(0,Y.jsx)(j,{"aria-hidden":!0,className:`h-3 w-3`}),qn(t.durationMs)]}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>{l(``),r()},"aria-label":e(`chat.side.new`),title:e(`chat.side.new`),className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:(0,Y.jsx)(te,{"aria-hidden":!0,className:`h-4 w-4`})}),(0,Y.jsx)(`button`,{type:`button`,onClick:i,"aria-label":e(`chat.side.dismiss`),title:e(`chat.side.dismiss`),className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:(0,Y.jsx)(U,{"aria-hidden":!0,className:`h-4 w-4`})})]}),(0,Y.jsxs)(`div`,{"aria-live":`polite`,"aria-busy":t.status===`loading`,className:`min-h-0 flex-1 space-y-4 overflow-y-auto px-4 py-4`,children:[t.selectedText&&(0,Y.jsxs)(`details`,{className:`group`,children:[(0,Y.jsxs)(`summary`,{className:`inline-flex min-h-8 cursor-pointer list-none items-center gap-1.5 rounded-md border border-[hsl(var(--deck-border-strong))] bg-[hsl(var(--deck-surface))] px-2.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink-muted))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]`,children:[(0,Y.jsx)(qe,{"aria-hidden":!0,className:`h-3.5 w-3.5`}),e(`chat.side.selectedText`)]}),(0,Y.jsx)(`blockquote`,{className:`mt-2 whitespace-pre-wrap border-l-2 border-[hsl(var(--deck-accent)/0.45)] pl-3 font-mono text-[11px] leading-5 text-[hsl(var(--deck-ink-muted))]`,children:t.selectedText})]}),p.map(e=>e.role===`user`?(0,Y.jsx)(`div`,{className:`flex justify-end`,children:(0,Y.jsx)(`div`,{className:`max-w-[88%] rounded-lg bg-[hsl(var(--deck-surface-2))] px-3 py-2 text-[12px] leading-5 text-[hsl(var(--deck-ink))]`,children:e.content})},e.id):(0,Y.jsx)(`div`,{className:`min-w-0`,children:(0,Y.jsx)(J.Suspense,{fallback:(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap break-words text-[12px] leading-5 text-[hsl(var(--deck-ink))]`,children:e.content}),children:(0,Y.jsx)(Kn,{content:e.content,className:`text-[12px] leading-5 [&_h1]:text-[14px] [&_h2]:text-[13px] [&_h3]:text-[12px]`})})},e.id)),t.status===`loading`&&(0,Y.jsxs)(`div`,{role:`status`,className:`flex min-h-9 items-center gap-2 text-[11px] text-[hsl(var(--deck-ink-muted))]`,children:[(0,Y.jsx)(K,{"aria-hidden":!0,className:`h-3.5 w-3.5 animate-spin text-[hsl(var(--deck-accent))]`}),e(`chat.side.loading`)]}),t.status===`error`&&(0,Y.jsxs)(`div`,{role:`alert`,className:`flex min-h-9 items-start gap-2 text-[11px] leading-5 text-red-700 dark:text-red-300`,children:[(0,Y.jsx)(_e,{"aria-hidden":!0,className:`mt-0.5 h-3.5 w-3.5 shrink-0`}),(0,Y.jsx)(`span`,{className:`break-words`,children:t.error??e(`chat.side.failed`)})]}),(0,Y.jsx)(`div`,{ref:f})]}),(0,Y.jsx)(`div`,{className:`shrink-0 border-t border-[hsl(var(--deck-hairline))] p-3`,children:(0,Y.jsxs)(`div`,{className:`rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] focus-within:border-[hsl(var(--deck-border-strong))] focus-within:ring-1 focus-within:ring-[hsl(var(--deck-border-strong))]`,children:[(0,Y.jsx)(`textarea`,{ref:u,name:`side-conversation-composer`,value:c,onChange:e=>l(e.target.value),onCompositionStart:()=>{d.current=!0},onCompositionEnd:()=>{d.current=!1},onBlur:()=>{d.current=!1},onKeyDown:e=>{if(!(d.current||e.nativeEvent.isComposing||e.keyCode===229)){if((e.metaKey||e.ctrlKey)&&e.key.toLocaleLowerCase()===`a`){e.preventDefault(),e.stopPropagation(),e.currentTarget.select();return}if(e.key===`Escape`){e.preventDefault(),i();return}e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),m())}},rows:3,disabled:t.status===`loading`,"aria-label":e(`chat.side.input`),placeholder:e(`chat.side.placeholder`),className:`block max-h-40 min-h-[88px] w-full resize-none bg-transparent px-3 py-2.5 text-[13px] leading-5 text-[hsl(var(--deck-ink))] placeholder:text-[hsl(var(--deck-ink-faint))] focus:outline-none disabled:cursor-wait disabled:opacity-60`}),(0,Y.jsx)(`div`,{className:`flex items-center justify-end px-2 pb-2`,children:(0,Y.jsx)(`button`,{type:`button`,onClick:m,disabled:!c.trim()||t.status===`loading`,"aria-label":e(`chat.side.send`),title:e(`chat.side.send`),className:`flex h-8 w-8 items-center justify-center rounded-md bg-[hsl(var(--deck-ink))] text-[hsl(var(--deck-canvas))] transition-opacity hover:opacity-90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[hsl(var(--deck-accent))] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-35`,children:(0,Y.jsx)(de,{"aria-hidden":!0,className:`h-3.5 w-3.5`})})})]})})]})}function Zn(e){return Number.isFinite(e)?Math.max(0,e):0}function Qn(e){let t=Zn(e.totalInputTokens),n=Zn(e.cacheReadTokens),r=Zn(e.cacheWriteTokens),i=Math.min(n,t),a=Math.min(r,Math.max(0,t-i));return{totalInputTokens:t,cacheReadTokens:i,cacheWriteTokens:a,uncachedInputTokens:Math.max(0,t-i-a),...t>0&&(n>0||r>0)?{hitRate:i/t}:{}}}function $n(e){return e===void 0||!Number.isFinite(e)?`—`:`${Math.round(Math.max(0,Math.min(1,e))*100)}%`}var er={running:`status.phase.running`,compacting:`status.phase.compacting`,recovering_context:`status.phase.recoveringContext`,switching_model:`status.phase.switchingModel`,waiting_permission:`status.phase.waitingPermission`,error:`status.phase.error`,idle:``},tr={model_changed:`status.cacheBreak.model`,system_prompt_changed:`status.cacheBreak.system`,tools_changed:`status.cacheBreak.tools`,request_policy_changed:`status.cacheBreak.policy`,ttl_expired:`status.cacheBreak.ttl`,server_side:`status.cacheBreak.server`},$=e=>e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:e.toString(),nr=e=>{let t=Math.max(0,Math.ceil(e/1e3)),n=Math.floor(t/60),r=t%60;return n>0?`${n}m ${r}s`:`${r}s`};function rr(){let e=y(),t=q(e=>e.tokenUsage),n=q(e=>e.isStreaming),r=q(e=>e.agentPhase),i=q(e=>e.providerRecovery),a=q(e=>e.turnActivity),o=q(e=>e.pendingResume),s=q(e=>e.actionStationarity),c=q(e=>e.turnRecovery),l=er[r]??``,u=Wn(i),d=o?.delayMs===void 0?``:` · retry in ${nr(o.delayMs)}`,f=c?.state===`requires_attention`?e(`status.recovery.review`):``,p=c?.state===`requires_attention`?e(c.reason===`interrupted_tool_call`?`status.recovery.interruptedTool`:`status.recovery.successfulTool`):``,m=f||(s?`${e(s.phase===`halted`?`status.phase.actionStationarityStopped`:`status.phase.actionStationarityRecovering`)} · ${s.toolName} · ${s.runLength}/${s.haltThreshold}`:u?e(u.compactKey,u.params):o?`Recovery attempt ${o.attempt}/${o.maxAttempts}${d}`:l?e(l):``),h=t.maxContextTokens>0?Math.round(t.totalTokens/t.maxContextTokens*100):0,g=Qn(t),_=$n(g.hitRate),v=Math.min(h,100),b=h>95?`danger`:h>80?`warn`:`safe`;return(0,Y.jsxs)(`div`,{"data-chat-status-bar":!0,className:`flex items-center gap-2 border-t border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))]/70 px-3 py-2 font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] backdrop-blur-sm sm:gap-4 sm:px-5`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 sm:gap-3`,children:[(0,Y.jsx)(`span`,{className:`deck-eyebrow text-[hsl(var(--deck-ink-faint))]`,children:e(`status.context`)}),(0,Y.jsxs)(`span`,{className:`flex gap-1 items-baseline tabular-nums`,children:[(0,Y.jsx)(`span`,{className:H(`text-[12px] font-medium`,b===`safe`&&`text-[hsl(var(--deck-ink))]`,b===`warn`&&`text-amber-600 dark:text-amber-400`,b===`danger`&&`text-red-600 dark:text-red-400`),children:$(t.totalTokens)}),(0,Y.jsxs)(`span`,{className:`text-[hsl(var(--deck-ink-faint))]`,children:[`/ `,$(t.maxContextTokens)]})]}),t.isDefaultMaxTokens&&(0,Y.jsx)(Nn,{children:(0,Y.jsxs)(Pn,{children:[(0,Y.jsx)(Fn,{asChild:!0,children:(0,Y.jsx)(Fe,{className:`h-3 w-3 cursor-help text-[hsl(var(--deck-ink-faint))]`})}),(0,Y.jsx)(In,{side:`top`,className:`max-w-[220px]`,children:(0,Y.jsx)(`p`,{className:`text-xs`,children:e(`status.tokenLimitTooltip`)})})]})}),(0,Y.jsxs)(`div`,{className:`relative hidden h-2 w-32 overflow-hidden rounded-sm border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] sm:block`,"aria-hidden":`true`,children:[(0,Y.jsx)(`div`,{className:H(`absolute inset-y-0 left-0 transition-[width] duration-300`,b===`safe`&&`bg-[hsl(var(--deck-accent))]`,b===`warn`&&`bg-amber-500`,b===`danger`&&`bg-red-500`),style:{width:`${v}%`}}),(0,Y.jsx)(`div`,{className:`flex absolute inset-0 pointer-events-none`,children:[25,50,75].map(e=>(0,Y.jsx)(`span`,{className:`absolute inset-y-0 w-px bg-[hsl(var(--deck-canvas-veil))]/60`,style:{left:`${e}%`}},e))})]}),(0,Y.jsxs)(`span`,{className:H(`w-10 text-right tabular-nums text-[hsl(var(--deck-ink-faint))]`,b===`warn`&&`text-amber-600 dark:text-amber-400`,b===`danger`&&`text-red-600 dark:text-red-400`),children:[h,`%`]})]}),(0,Y.jsx)(Nn,{children:(0,Y.jsxs)(Pn,{children:[(0,Y.jsx)(Fn,{asChild:!0,children:(0,Y.jsxs)(`div`,{className:`flex shrink-0 cursor-help items-baseline gap-2 border-l border-[hsl(var(--deck-hairline))] pl-2 sm:pl-4`,"data-testid":`prompt-cache-hit-rate`,"aria-label":`${e(`status.cache`)} ${_}`,children:[(0,Y.jsx)(`span`,{className:`deck-eyebrow text-[hsl(var(--deck-ink-faint))]`,children:e(`status.cache`)}),(0,Y.jsx)(`span`,{className:H(`tabular-nums`,g.hitRate===void 0?`text-[hsl(var(--deck-ink-faint))]`:`font-medium text-[hsl(var(--deck-accent))]`),children:_})]})}),(0,Y.jsx)(In,{side:`top`,className:`max-w-[280px]`,children:g.hitRate===void 0?(0,Y.jsx)(`p`,{className:`text-xs`,children:e(`status.cacheUnavailable`)}):(0,Y.jsxs)(`div`,{className:`space-y-1 text-xs`,children:[(0,Y.jsx)(`p`,{children:e(`status.cacheTooltip`)}),(0,Y.jsx)(`p`,{className:`font-mono tabular-nums`,children:e(`status.cacheDetails`,{read:$(g.cacheReadTokens),write:$(g.cacheWriteTokens),uncached:$(g.uncachedInputTokens)})}),t.cacheBreak&&(0,Y.jsx)(`p`,{className:`text-[hsl(var(--deck-accent))]`,children:e(`status.cacheBreak`,{reason:e(tr[t.cacheBreak.reason]??`status.cacheBreak.server`),previous:$(t.cacheBreak.previousCacheReadTokens),current:$(t.cacheBreak.cacheReadTokens)})})]})})]})}),(0,Y.jsx)(`div`,{className:`flex-1`}),(f||o||n&&m&&(!a?.snapshot||s))&&(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(`span`,{className:H(`shrink-0`,f?`h-2 w-2 rounded-sm bg-amber-500`:`deck-pulse-dot`)}),(0,Y.jsxs)(`span`,{className:H(`truncate`,f?`text-amber-600 dark:text-amber-400`:`text-[hsl(var(--deck-accent))]`),children:[m,p?(0,Y.jsxs)(`span`,{className:`hidden sm:inline`,children:[` · `,p]}):null]})]})]})}function ir(){let{locale:e}=S(),t=x(e=>e.agentTeamsEnabled),n=q(e=>e.teams),r=q(e=>e.currentSessionRef),i=q(e=>u(e.historySurfaceSelection)),o=q(e=>e.loadTeams),[s,c]=(0,J.useState)({}),[l,d]=(0,J.useState)({}),[f,p]=(0,J.useState)({}),[m,h]=(0,J.useState)(null),[g,_]=(0,J.useState)(null),[v,y]=(0,J.useState)(null);if((0,J.useEffect)(()=>{i||o(r??void 0)},[t,r,i,o]),i||!t||!r||n.length===0)return null;let b=async t=>{if(a(q.getState()))return;let n=f[t]?.trim();if(n&&!m){h(t),y(null);try{await Ne.sendMessage(r,t,l[t]??`*`,n),p(e=>({...e,[t]:``})),await o(r)}catch(t){y(t instanceof Error?t.message:T(e,`actionFailed`))}finally{h(null)}}},C=async t=>{if(!a(q.getState())&&!g){_(t),y(null);try{await Ne.delete(r,t),await o(r)}catch(t){y(t instanceof Error?t.message:T(e,`actionFailed`))}finally{_(null)}}};return(0,Y.jsxs)(`section`,{"aria-label":T(e,`title`),"data-blade-team-panel":!0,className:`shrink-0 border-y border-emerald-300/50 bg-emerald-50/55 dark:border-emerald-800/55 dark:bg-emerald-950/20`,children:[v&&(0,Y.jsx)(`div`,{role:`alert`,className:`border-b border-red-200 bg-red-50 px-4 py-2 font-mono text-[10px] text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300 md:px-6`,children:v}),n.filter(e=>e.status!==`deleted`).map(t=>{let n=s[t.name]??t.status===`running`,r=t.tasks.filter(e=>e.status===`completed`).length;return(0,Y.jsxs)(`div`,{className:`border-b border-emerald-200/40 last:border-0 dark:border-emerald-900/40`,children:[(0,Y.jsxs)(`div`,{className:`flex min-h-11 items-center gap-2 px-4 py-2 md:px-6`,children:[(0,Y.jsx)(`button`,{type:`button`,onClick:()=>c(e=>({...e,[t.name]:!n})),"aria-label":n?T(e,`collapse`):T(e,`expand`),className:`flex h-7 w-7 items-center justify-center rounded-md text-emerald-700 hover:bg-emerald-100 dark:text-emerald-300 dark:hover:bg-emerald-900/50`,children:n?(0,Y.jsx)(W,{className:`h-4 w-4`}):(0,Y.jsx)(A,{className:`h-4 w-4`})}),(0,Y.jsx)($e,{className:`h-4 w-4 shrink-0 text-emerald-700 dark:text-emerald-300`}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-baseline gap-2`,children:[(0,Y.jsx)(`h2`,{className:`truncate font-mono text-[11px] font-semibold uppercase text-emerald-800 dark:text-emerald-200`,children:t.name}),(0,Y.jsxs)(`span`,{className:`font-mono text-[9.5px] text-[hsl(var(--deck-ink-faint))]`,children:[t.status,` · `,t.members.length-1,` `,T(e,`members`),` · `,r,`/`,t.tasks.length,` `,T(e,`tasks`)]})]}),t.description&&(0,Y.jsx)(`p`,{className:`truncate font-mono text-[10px] text-[hsl(var(--deck-ink-muted))]`,children:t.description})]}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void C(t.name),disabled:g===t.name,"aria-label":T(e,`delete`),title:T(e,`delete`),className:`flex h-7 w-7 items-center justify-center rounded-md text-[hsl(var(--deck-ink-faint))] hover:bg-red-50 hover:text-red-600 disabled:opacity-40 dark:hover:bg-red-950/40`,children:(0,Y.jsx)(R,{className:`h-3.5 w-3.5`})})]}),n&&(0,Y.jsxs)(`div`,{className:`max-h-[min(40vh,360px)] overflow-y-auto border-t border-emerald-200/40 px-4 py-3 md:px-6 dark:border-emerald-900/40`,children:[(0,Y.jsxs)(`div`,{className:`grid gap-x-6 gap-y-2 lg:grid-cols-2`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h3`,{className:`mb-1 font-mono text-[9.5px] font-semibold uppercase text-[hsl(var(--deck-ink-faint))]`,children:T(e,`members`)}),t.members.map(t=>(0,Y.jsxs)(`div`,{className:`flex min-h-7 items-center gap-2 border-b border-[hsl(var(--deck-hairline)/0.55)] py-1 last:border-0`,children:[(0,Y.jsx)(`span`,{"aria-label":t.status,className:`h-1.5 w-1.5 shrink-0 rounded-full ${t.status===`running`?`bg-emerald-500`:t.status===`completed`||t.status===`leader`?`bg-sky-500`:t.status===`failed`?`bg-red-500`:`bg-zinc-400`}`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-[10.5px] text-[hsl(var(--deck-ink))]`,children:t.name}),(0,Y.jsx)(`span`,{className:`font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]`,children:t.subagentType}),t.worktreePath&&(0,Y.jsx)(xe,{className:`h-3 w-3 text-[hsl(var(--deck-ink-faint))]`,"aria-label":T(e,`worktree`)})]},t.id))]}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h3`,{className:`mb-1 font-mono text-[9.5px] font-semibold uppercase text-[hsl(var(--deck-ink-faint))]`,children:T(e,`tasks`)}),t.tasks.length===0?(0,Y.jsx)(`p`,{className:`font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]`,children:T(e,`noTasks`)}):t.tasks.map(e=>(0,Y.jsxs)(`div`,{className:`flex min-h-7 items-center gap-2 border-b border-[hsl(var(--deck-hairline)/0.55)] py-1 last:border-0`,children:[(0,Y.jsxs)(`span`,{className:`w-5 shrink-0 font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]`,children:[`#`,e.id]}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-[10.5px] text-[hsl(var(--deck-ink))]`,children:e.subject}),(0,Y.jsx)(`span`,{className:`font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]`,children:e.status})]},e.id))]})]}),t.peerMessagingEnabled&&(0,Y.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 border-t border-emerald-200/40 pt-3 dark:border-emerald-900/40`,children:[(0,Y.jsxs)(`select`,{"aria-label":T(e,`recipient`),value:l[t.name]??`*`,onChange:e=>d(n=>({...n,[t.name]:e.target.value})),className:`h-8 max-w-32 rounded-md border border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-surface))] px-2 font-mono text-[10px]`,children:[(0,Y.jsx)(`option`,{value:`*`,children:T(e,`broadcast`)}),t.members.filter(e=>e.status!==`leader`).map(e=>(0,Y.jsx)(`option`,{value:e.name,children:e.name},e.id))]}),(0,Y.jsx)(`input`,{value:f[t.name]??``,onChange:e=>p(n=>({...n,[t.name]:e.target.value})),onKeyDown:e=>{e.key===`Enter`&&b(t.name)},placeholder:T(e,`messagePlaceholder`),className:`h-8 min-w-0 flex-1 rounded-md border border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-surface))] px-2 font-mono text-[10.5px] outline-none focus:border-emerald-500`}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void b(t.name),disabled:!f[t.name]?.trim()||m===t.name,"aria-label":T(e,`send`),title:T(e,`send`),className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-emerald-700 text-white hover:bg-emerald-800 disabled:opacity-40 dark:bg-emerald-600`,children:(0,Y.jsx)(de,{className:`h-3.5 w-3.5`})})]})]})]},t.name)})]})}var ar={starting:`chat.turnActivity.starting`,thinking:`chat.turnActivity.thinking`,responding:`chat.turnActivity.responding`,executing_tools:`chat.turnActivity.executingTools`,compacting:`chat.turnActivity.compacting`,continuing:`chat.turnActivity.continuing`};function or(e){let t=Math.max(0,Math.floor(e/1e3));if(t<60)return`${t}s`;let n=Math.floor(t/60),r=t%60;return n<60?`${n}m ${r}s`:`${Math.floor(n/60)}h ${n%60}m ${r}s`}function sr(e,t=Date.now()){let n=e?.snapshot;if(!n)return null;let r=n.activeTools.length+n.activeToolOverflow,i=n.activeTools.slice(0,2).map(e=>e.progress!==void 0&&e.total!==void 0?`${e.name} ${e.progress}/${e.total}`:e.name),a=Math.max(0,n.activeTools.length-i.length+n.activeToolOverflow);return{phaseKey:ar[n.phase],phaseParams:{count:r},tools:i,hiddenTools:a,completedTools:n.toolCallsCompleted,startedTools:n.toolCallsStarted,turn:n.turn,maxTurns:n.maxTurns,elapsed:or(t-n.startedAt)}}function cr({activity:e,memory:t=null}){let n=y(),[r,i]=(0,J.useState)(Date.now()),a=e?.snapshot?.startedAt;(0,J.useEffect)(()=>{if(a===void 0)return;i(Date.now());let e=window.setInterval(()=>i(Date.now()),1e3);return()=>window.clearInterval(e)},[a]);let o=sr(e,r);if(!o)return t?.outcome===`written`?(0,Y.jsxs)(`section`,{role:`status`,"aria-live":`polite`,"data-memory-consolidation-notice":!0,className:`mx-4 mb-2 flex min-h-10 items-center gap-3 rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]/80 px-3 py-2 text-[hsl(var(--deck-ink))] shadow-sm md:mx-6`,children:[(0,Y.jsx)(w,{className:`h-4 w-4 shrink-0 text-[hsl(var(--deck-accent))]`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`text-xs font-semibold`,children:n(`chat.memoryConsolidation.saved`,{count:t.entries})})]}):null;let s=[t?.outcome===`written`?n(`chat.memoryConsolidation.saved`,{count:t.entries}):void 0,...o.tools,o.hiddenTools>0?`+${o.hiddenTools}`:void 0,o.startedTools>0?n(`chat.turnActivity.toolCount`,{completed:o.completedTools,started:o.startedTools}):void 0,o.turn>0?o.maxTurns===null?n(`chat.turnActivity.turn`,{turn:o.turn}):n(`chat.turnActivity.turnBounded`,{turn:o.turn,maxTurns:o.maxTurns}):void 0].filter(e=>e!==void 0);return(0,Y.jsxs)(`section`,{role:`status`,"aria-live":`polite`,"data-turn-activity-strip":!0,className:`mx-4 mb-2 flex min-h-10 items-center gap-3 rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]/80 px-3 py-2 text-[hsl(var(--deck-ink))] shadow-sm md:mx-6`,children:[(0,Y.jsx)(w,{className:`h-4 w-4 shrink-0 text-[hsl(var(--deck-accent))] motion-safe:animate-pulse`,"aria-hidden":!0}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`div`,{className:`text-xs font-semibold`,children:n(o.phaseKey,o.phaseParams)}),s.length>0&&(0,Y.jsx)(`div`,{className:`mt-0.5 truncate font-mono text-[10px] text-[hsl(var(--deck-ink-muted))]`,children:s.join(` · `)})]}),(0,Y.jsx)(`span`,{className:`shrink-0 font-mono text-[10px] tabular-nums text-[hsl(var(--deck-ink-muted))]`,children:o.elapsed})]})}function lr(e){let t=[...e].reverse().find(e=>e.role===`user`);return t?typeof t.content==`string`?{content:t.content,attachments:[]}:{content:t.content.filter(e=>e.type===`text`).map(e=>e.text).join(`
17
- `),attachments:t.content.filter(e=>e.type===`image_url`).map((e,n)=>{let r=e.image_url.url.match(/^data:([^;,]+)[;,]/)?.[1]??`application/octet-stream`;return{id:`recovery-${t.id}-${n}`,name:`attachment-${n+1}`,mimeType:r,dataUrl:e.image_url.url}})}:null}function ur({messages:e,isLoading:t,isStreaming:n,isStopping:r,errorMessage:i}){let a=y(),[o,s]=(0,J.useState)(!1),c=a(i?`status.phase.error`:r?`chat.input.action.stopping`:n?`status.phase.running`:`preview.files.status.ready`);return(0,Y.jsxs)(`details`,{"data-preview-status-disclosure":!0,open:o,onToggle:e=>s(e.currentTarget.open),className:`group hidden`,children:[(0,Y.jsxs)(`summary`,{className:`flex h-9 cursor-pointer list-none items-center gap-2 px-3 font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[hsl(var(--deck-accent))]`,children:[n&&(0,Y.jsx)(`span`,{className:`deck-pulse-dot`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:c}),(0,Y.jsx)(A,{className:`h-3.5 w-3.5 shrink-0 transition-transform group-open:rotate-90`})]}),o&&(0,Y.jsxs)(`div`,{"data-preview-activity-details":!0,className:`flex h-[min(44vh,420px)] min-h-0 flex-col border-t border-[hsl(var(--deck-hairline))]`,children:[i&&(0,Y.jsx)(`div`,{role:`alert`,className:`border-b border-red-200/60 bg-red-50/80 px-3 py-2 font-mono text-[11px] text-red-700 dark:border-red-900/50 dark:bg-red-950/30 dark:text-red-300`,children:i}),(0,Y.jsx)(jn,{messages:e,isLoading:t}),(0,Y.jsx)(rr,{})]})]})}function dr(){let e=y(),t=q(e=>e.messages),n=q(e=>e.currentSessionRef),r=q(e=>e.isStreaming),o=q(e=>e.isStopping),s=q(e=>e.providerRecovery),u=q(e=>e.turnActivity),d=q(e=>e.memoryConsolidation),f=q(e=>e.actionStationarity),p=q(e=>e.sessionEventConnectionState),m=q(e=>e.pendingSteeringCount),h=q(e=>e.pendingInputDelivery),g=q(e=>e.recoveredSteeringCount),_=q(e=>e.followUpQueue),v=q(e=>e.followUpQueueMutation),b=q(e=>e.mutateFollowUpQueue),x=q(e=>e.refreshFollowUpQueue),S=q(e=>!!e.historySurfaceSelection),C=q(e=>e.isLoading),w=q(e=>e.error),T=q(e=>e.errorContext),E=q(e=>e.sessions),D=q(e=>e.sendMessage),O=q(e=>e.openSideConversation),k=q(e=>e.abortSession),A=q(e=>e.retryTask),j=q(e=>e.retryingTaskKeys),M=c(e=>e.openSettings),N=q(e=>e.reconnectSessionEvents),P=q(e=>e.clearError),[F,I]=(0,J.useState)(null),[te,ne]=(0,J.useState)(null),re=n?E.find(e=>e.sessionId===n.sessionId&&e.projectPath===n.projectPath):void 0,ie=!!w&&(T?.kind===`navigation`||!T?.sessionRef||ce(T.sessionRef,n)),L=T?.failureCode??re?.taskFailure?.code,oe=(T?.kind===`execution`||T?.failureCode)&&L?e(i(L)):w===`queue_full`?e(`chat.error.queueFull`):w===`turn_unavailable`||w===`turn_active`?e(`chat.error.turnChanged`):w,R=p===`connecting`||p===`reconnecting`,se=r&&p!==`connected`,z=n?`session:${G(n)}`:`session:temporary`,B=(0,J.useMemo)(()=>lr(t),[t]),V=n?G(n):`temporary-session`,H=!(!n||!re?.taskRetryAvailable||L&&!l(L))&&(T?.kind===`execution`||T?.kind===`task_action`),le=T?.kind===`execution`&&(L===`authentication`||L===`permission`||L===`model_unavailable`),U=n?j.includes(G(n)):!1;(0,J.useEffect)(()=>{I(null),ne(null)},[V]);let ue=(0,J.useCallback)(e=>{ne(t=>({messageId:e,requestId:(t?.requestId??0)+1,sessionKey:V}))},[V]),de=async e=>!a(q.getState())&&D({content:e.content,modelId:e.modelId,reasoningEffort:e.reasoningEffort,serviceTier:e.serviceTier,responseVerbosity:e.responseVerbosity,communicationStyle:e.communicationStyle,...e.annotations?{annotations:e.annotations}:{},...e.outputSchema?{outputSchema:e.outputSchema}:{},attachments:e.attachments.map(e=>({type:`image`,content:e.dataUrl,mimeType:e.mimeType,name:e.name}))}),W=()=>{if(!a(q.getState()))return k()},pe=async()=>{if(!a(q.getState())){if(le){P(),M(`models`);return}if(H&&n){P(),await A(n).catch(()=>void 0);return}if(T?.kind===`execution`&&B){I({...B,revision:Date.now()}),P();return}P(),requestAnimationFrame(()=>fe())}},he=H?e(U?`chat.error.action.retryingTask`:`chat.error.action.retryTask`):le?e(`chat.error.action.checkModels`):T?.kind===`execution`&&B?e(`chat.error.action.editResend`):T?.kind===`submission`?e(`chat.error.action.returnDraft`):null;return(0,Y.jsxs)(`div`,{"data-chat-view":!0,className:`relative flex h-full min-h-0 overflow-hidden bg-[hsl(var(--deck-canvas))]`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsxs)(`div`,{"data-chat-history":!0,className:`contents`,children:[ie&&(0,Y.jsxs)(`div`,{role:`alert`,"data-blade-session-error":!0,className:`flex min-h-11 flex-wrap items-center gap-2 border-b border-red-200/60 bg-red-50/80 px-4 py-2 font-mono text-[11px] text-red-700 dark:border-red-900/50 dark:bg-red-950/30 dark:text-red-300 sm:px-5`,children:[(0,Y.jsx)(_e,{className:`h-3.5 w-3.5 shrink-0`}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1 break-words`,children:[(0,Y.jsx)(`span`,{className:`font-semibold`,children:e(T?.kind===`submission`?`chat.error.title.submission`:T?.kind===`execution`?`chat.error.title.execution`:T?.kind===`navigation`?`chat.error.title.navigation`:`chat.error.title.generic`)}),` `,oe]}),he&&(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>void pe(),disabled:U,className:`inline-flex min-h-7 shrink-0 items-center gap-1.5 rounded-md border border-red-300/70 bg-white/65 px-2.5 font-medium transition-colors hover:bg-white focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 disabled:cursor-wait disabled:opacity-60 dark:border-red-800 dark:bg-red-950/45 dark:hover:bg-red-900/60`,children:[H?U?(0,Y.jsx)(K,{className:`h-3 w-3 animate-spin`}):(0,Y.jsx)(ge,{className:`h-3 w-3`}):(0,Y.jsx)(ee,{className:`h-3 w-3`}),he]}),(0,Y.jsx)(`button`,{type:`button`,onClick:P,"aria-label":e(`chat.error.dismiss`),className:`p-1 text-red-500 rounded transition-colors hover:bg-red-100/60 hover:text-red-700 dark:hover:bg-red-950/60 dark:hover:text-red-100`,children:`✕`})]}),(R||p===`offline`)&&(0,Y.jsxs)(`div`,{role:p===`offline`?`alert`:`status`,"aria-live":`polite`,className:`flex min-h-10 flex-wrap items-center gap-2 border-b border-amber-300/60 bg-amber-50/80 px-4 py-2 font-mono text-[11px] text-amber-900 dark:border-amber-800/60 dark:bg-amber-950/35 dark:text-amber-200 sm:px-5`,children:[R?(0,Y.jsx)(K,{className:`h-3.5 w-3.5 shrink-0 animate-spin`}):(0,Y.jsx)(ae,{className:`h-3.5 w-3.5 shrink-0`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1`,children:e(R?`chat.connection.reconnecting`:`chat.connection.offline`)}),p===`offline`&&(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>{a(q.getState())||N().catch(()=>void 0)},className:`inline-flex min-h-7 items-center gap-1.5 rounded-md border border-amber-400/70 bg-white/60 px-2.5 font-medium transition-colors hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500 dark:border-amber-700 dark:bg-amber-950/50 dark:hover:bg-amber-900/50`,children:[(0,Y.jsx)(Se,{className:`h-3 w-3`}),e(`chat.connection.retry`)]})]}),(0,Y.jsx)(tt,{}),(0,Y.jsx)(jn,{messages:t,isLoading:C,selectionDraftKey:S?void 0:z,canAskSideConversation:!(!n||S),onOpenSideConversation:O,navigationRequest:te?.sessionKey===V?te:null},n?G(n):`temporary-session`),(0,Y.jsx)(ir,{})]}),(0,Y.jsxs)(`div`,{"data-chat-composer-dock":!0,className:`contents`,children:[(0,Y.jsx)(ur,{messages:t,isLoading:C,isStreaming:r,isStopping:o,errorMessage:ie?oe:null},V),(0,Y.jsx)(Hn,{}),(0,Y.jsx)(Bn,{}),(0,Y.jsx)(Mn,{queue:S?null:_,mutation:v,onMutate:b,onRefresh:x}),(0,Y.jsx)(Gn,{recovery:S?null:s,stopping:o,onStop:W}),(0,Y.jsx)(cr,{activity:S||s?.snapshot||f||re?.pendingInteraction?null:u,memory:S?null:d}),(0,Y.jsx)(me,{draftKey:z,draft:F?.content,draftAttachments:F?.attachments,draftRevision:F?.revision,onSend:de,onAbort:W,disabled:C||se,isStreaming:r,isStopping:o,pendingSteeringCount:m,pendingInputDelivery:h,recoveredSteeringCount:g,workspacePath:n?.projectPath,onNavigateToMessage:ue},z),(0,Y.jsx)(`div`,{"data-chat-primary-status":!0,className:`contents`,children:(0,Y.jsx)(rr,{})})]})]}),(0,Y.jsx)(Xn,{})]})}export{dr as ChatView};