blade-code 0.10.109 → 0.10.111

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 (62) hide show
  1. package/dist/blade.js +2 -2
  2. package/dist/{chunk-z38a3vvk.js → chunk-1n23f3qb.js} +1 -1
  3. package/dist/{chunk-qxa90mwt.js → chunk-2hmc9pr9.js} +1 -1
  4. package/dist/{chunk-pa8pkt00.js → chunk-32zgv9dx.js} +1 -1
  5. package/dist/{chunk-e2mcqkgv.js → chunk-3y8qp69k.js} +1 -1
  6. package/dist/{chunk-m3w413zt.js → chunk-4je46cyf.js} +3 -3
  7. package/dist/{chunk-f8f96dca.js → chunk-4k61tkpp.js} +1 -1
  8. package/dist/{chunk-m8k3j75k.js → chunk-50prvxfw.js} +1 -1
  9. package/dist/{chunk-dzsjjhqy.js → chunk-541h9the.js} +1 -1
  10. package/dist/chunk-6pp5945x.js +1 -0
  11. package/dist/{chunk-jdx7c2pd.js → chunk-8pr55zfw.js} +1 -1
  12. package/dist/{chunk-k359hejz.js → chunk-agpbarbx.js} +1 -1
  13. package/dist/{chunk-21z1cm7p.js → chunk-ahjh8y56.js} +1 -1
  14. package/dist/{chunk-kdrn84pk.js → chunk-bq9cg7pa.js} +1 -1
  15. package/dist/chunk-ceaee099.js +1 -0
  16. package/dist/{chunk-rqmaqthv.js → chunk-cv20apqr.js} +1 -1
  17. package/dist/{chunk-aydxzp31.js → chunk-d7ytnvqy.js} +1 -1
  18. package/dist/{chunk-kckkqtyj.js → chunk-e99c1t8e.js} +1 -1
  19. package/dist/{chunk-jvedgz9x.js → chunk-ep657gs0.js} +1 -1
  20. package/dist/{chunk-7wnx6fq5.js → chunk-exv2prhq.js} +1 -1
  21. package/dist/{chunk-9metwvwb.js → chunk-fymsjr4x.js} +1 -1
  22. package/dist/{chunk-nshgwxk5.js → chunk-g4ftk610.js} +1 -1
  23. package/dist/{chunk-18metkce.js → chunk-gner6fka.js} +1 -1
  24. package/dist/{chunk-nehwxpq2.js → chunk-h25qd3d7.js} +1 -1
  25. package/dist/{chunk-ta43te9m.js → chunk-j7bdnptp.js} +1 -1
  26. package/dist/{chunk-ynjqrans.js → chunk-k7980hzm.js} +2 -2
  27. package/dist/{chunk-gbbtksvv.js → chunk-kx05z7sx.js} +1 -1
  28. package/dist/{chunk-hwzwjfvc.js → chunk-s6xw42mr.js} +1 -1
  29. package/dist/{chunk-2cdys9m5.js → chunk-snj119c2.js} +1 -1
  30. package/dist/{chunk-y5fet3r6.js → chunk-t30jd4wg.js} +1 -1
  31. package/dist/{chunk-gc3qqxhf.js → chunk-tk7yfgay.js} +1 -1
  32. package/dist/{chunk-dx95g6sa.js → chunk-vvhnv7ng.js} +1 -1
  33. package/dist/{chunk-q0x3jwz1.js → chunk-wkvh3xrp.js} +1 -1
  34. package/dist/{chunk-5yvqbshs.js → chunk-xgbnb37n.js} +1 -1
  35. package/dist/{chunk-zjgfvqjk.js → chunk-z1da8k2d.js} +1 -1
  36. package/dist/{chunk-88rbkzqr.js → chunk-zgw04ttb.js} +1 -1
  37. package/dist/{chunk-mvr12g3x.js → chunk-zh2vrkyt.js} +1 -1
  38. package/dist/{chunk-2jhj3462.js → chunk-zkrtn8b1.js} +1 -1
  39. package/dist/web/assets/{ChatView-p9tMKcFw.js → ChatView-DCHnicTP.js} +11 -11
  40. package/dist/web/assets/{CodeBlockHighlighter-DD7FIfcr.js → CodeBlockHighlighter-0VOa5Mes.js} +1 -1
  41. package/dist/web/assets/{FilePreview-DDpZFwlq.js → FilePreview-C_3KHzzj.js} +1 -1
  42. package/dist/web/assets/{KanbanBoard-1Bkr6fIi.js → KanbanBoard-D_NTkUnD.js} +1 -1
  43. package/dist/web/assets/{MarkdownRenderer-hkB9aVVA.js → MarkdownRenderer-3g4TPTeI.js} +3 -3
  44. package/dist/web/assets/{SettingsModal-KpvOJhBi.js → SettingsModal-3GMy6V-E.js} +1 -1
  45. package/dist/web/assets/{TaskSwitcher-2FU_n9lh.js → TaskSwitcher-eCdxu5Eo.js} +1 -1
  46. package/dist/web/assets/{TerminalPanel-C-LpIqOw.js → TerminalPanel-9q9Trmv9.js} +1 -1
  47. package/dist/web/assets/{arrow-left-Bf8UJl0b.js → arrow-left-03GxbYI7.js} +1 -1
  48. package/dist/web/assets/{calendar-clock-BTAxrL8A.js → calendar-clock-8W4ostX1.js} +1 -1
  49. package/dist/web/assets/{chevrons-up-down-CTzVylwH.js → chevrons-up-down-BboZzEAk.js} +1 -1
  50. package/dist/web/assets/{clock-3-Cm6_vdYx.js → clock-3-aXgeptZP.js} +1 -1
  51. package/dist/web/assets/{external-link-DJln2WFN.js → external-link-UkIIC2ds.js} +1 -1
  52. package/dist/web/assets/{folder-BXj3pohP.js → folder-BOCc5dv2.js} +1 -1
  53. package/dist/web/assets/{index-DQL9otjm.js → index-DaiT-mmo.js} +15 -15
  54. package/dist/web/assets/{pause-W092j5bW.js → pause-DVIT6IIr.js} +1 -1
  55. package/dist/web/assets/{play-OpsbZ_PE.js → play-DsdF5dji.js} +1 -1
  56. package/dist/web/assets/session-events-CWzF04l4.js +22 -0
  57. package/dist/web/assets/{teamService-Aj-8ajEO.js → teamService-BliaDj1Z.js} +1 -1
  58. package/dist/web/index.html +1 -1
  59. package/package.json +1 -1
  60. package/dist/chunk-9xa0mdxg.js +0 -1
  61. package/dist/chunk-cdtwwc9v.js +0 -1
  62. package/dist/web/assets/session-events-BuugneNw.js +0 -22
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-DQL9otjm.js";/**
1
+ import{c as e}from"./index-DaiT-mmo.js";/**
2
2
  * @license lucide-react v0.300.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as o}from"./index-DQL9otjm.js";/**
1
+ import{c as o}from"./index-DaiT-mmo.js";/**
2
2
  * @license lucide-react v0.300.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -0,0 +1,22 @@
1
+ var xe=Object.defineProperty;var je=(e,t,n)=>t in e?xe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var J=(e,t,n)=>je(e,typeof t!="symbol"?t+"":t,n);import{R as D}from"./vendor-react-DofNRwfy.js";const ce=e=>{let t;const n=new Set,o=(d,c)=>{const l=typeof d=="function"?d(t):d;if(!Object.is(l,t)){const g=t;t=c??(typeof l!="object"||l===null)?l:Object.assign({},t,l),n.forEach(f=>f(t,g))}},s=()=>t,a={setState:o,getState:s,getInitialState:()=>u,subscribe:d=>(n.add(d),()=>n.delete(d))},u=t=e(o,s,a);return a},De=e=>e?ce(e):ce,Oe=e=>e;function Fe(e,t=Oe){const n=D.useSyncExternalStore(e.subscribe,D.useCallback(()=>t(e.getState()),[e,t]),D.useCallback(()=>t(e.getInitialState()),[e,t]));return D.useDebugValue(n),n}const ge=e=>{const t=De(e),n=o=>Fe(t,o);return Object.assign(n,t),n},ye=e=>e?ge(e):ge;function N(){return{timeline:[],textBefore:"",toolCalls:[],textAfter:"",thinkingContent:"",tasks:[],subagent:null,subagents:[],confirmation:null,question:null,elicitation:null}}function R(e){return e?e.subagents&&e.subagents.length>0?e.subagents:e.subagent?[e.subagent]:[]:[]}function H(e,t,n){const o=(n?t.find(s=>s.id===n||s.sessionId===n):void 0)??t[t.length-1]??null;return{...e,subagents:t,subagent:o}}function he(e,t){const n=[...R(e)];let o=n.findIndex(i=>i.id===t.id||!!(i.sessionId&&t.sessionId&&i.sessionId===t.sessionId));if(o===-1&&t.sessionId&&(o=n.findIndex(i=>!i.sessionId&&i.status==="running"&&i.type===t.type&&i.description===t.description)),o===-1)return n.push(t),H(e,n,t.id);const s=n[o],r={...s,...t,id:s.id};return n[o]=r,H(e,n,r.id)}function Y(e,t){return`${t}-${e.length}`}function qe(e,t){if(!t)return e;const n=[...E(e)],o=n[n.length-1];return(o==null?void 0:o.type)==="text"?n[n.length-1]={...o,content:o.content+t}:n.push({id:Y(n,"text"),type:"text",content:t}),{...e,timeline:n}}function Ee(e,t){if(!t)return e;const n=[...E(e)],o=n[n.length-1];return(o==null?void 0:o.type)==="thinking"?n[n.length-1]={...o,content:o.content+t}:n.push({id:Y(n,"thinking"),type:"thinking",content:t}),{...e,timeline:n}}function me(e,t){const n=e.toolCalls.some(i=>i.toolCallId===t.toolCallId),o=n?e.toolCalls:[...e.toolCalls,t];if(n)return{...e,toolCalls:o};const s=[...E(e)],r=s[s.length-1];return(r==null?void 0:r.type)==="tool_group"?s[s.length-1]={...r,toolCallIds:[...r.toolCallIds,t.toolCallId]}:s.push({id:Y(s,"tool_group"),type:"tool_group",toolCallIds:[t.toolCallId]}),{...e,timeline:s,toolCalls:o}}function E(e){if(e.timeline&&e.timeline.length>0)return e.timeline;const t=[];return e.thinkingContent&&t.push({id:"legacy-thinking",type:"thinking",content:e.thinkingContent}),e.textBefore&&t.push({id:"legacy-text-before",type:"text",content:e.textBefore}),e.toolCalls.length>0&&t.push({id:"legacy-tool-group",type:"tool_group",toolCallIds:e.toolCalls.map(n=>n.toolCallId)}),e.textAfter&&t.push({id:"legacy-text-after",type:"text",content:e.textAfter}),t}function Be(e){return E(e).filter(t=>t.type==="text").map(t=>t.content).filter(Boolean).join(`
2
+
3
+ `)}const Ve=2166136261,pe=16777619;function G(e){return e==null?"":typeof e=="string"?e:typeof e=="number"||typeof e=="boolean"?String(e):Array.isArray(e)?`[${e.map(t=>G(t)).join(",")}]`:typeof e=="object"?`{${Object.entries(e).sort(([n],[o])=>n.localeCompare(o)).map(([n,o])=>`${JSON.stringify(n)}:${G(o)}`).join(",")}}`:JSON.stringify(e)}function be(e){let t=Ve>>>0;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,pe);return(t>>>0).toString(16)}function Ce(e){return typeof e=="string"?e:G(e??{})}function z(e){return e==="completed"?"completed":e==="failed"||e==="cancelled"?"failed":"running"}function Q({explicitId:e,messageId:t,toolName:n,argumentsValue:o,toolKind:s,output:r}){if(e)return e;const i=[t||"unknown-message",n||"Unknown",Ce(o),s||"",r||""].join("|");return`tool-${be(i)}`}function B({explicitId:e,sessionId:t,messageId:n,agentType:o,description:s,summary:r}){if(e)return e;if(t)return t;const i=[n||"unknown-message",o||"subagent",s||"",r||""].join("|");return`subagent-${be(i)}`}const Ke=(e,t)=>{if(!t||typeof t!="object")return null;const n=z(t.status),o=typeof t.summary=="string"?t.summary:void 0;return{id:B({explicitId:typeof t.subagentId=="string"?t.subagentId:void 0,sessionId:t.childSessionId,messageId:e,agentType:t.agentType,description:t.description,summary:t.summary}),type:t.agentType||"subagent",description:t.description||t.summary||"",status:n,startTime:Date.now(),sessionId:t.childSessionId,resumedFrom:t.resumedFrom,rootAgentId:t.rootAgentId,resumeDepth:typeof t.resumeDepth=="number"?t.resumeDepth:void 0,verificationVerdict:t.verificationVerdict==="pass"||t.verificationVerdict==="fail"||t.verificationVerdict==="partial"?t.verificationVerdict:void 0,output:n==="running"?void 0:o}},Ue=(e,t)=>!t||typeof t!="object"?[]:(Array.isArray(t.subtaskRefs)?t.subtaskRefs:t.subtaskRef&&typeof t.subtaskRef=="object"?[t.subtaskRef]:[]).map(o=>Ke(e,o)).filter(o=>o!==null);function _(e){return typeof e=="string"?e:e.filter(t=>t.type==="text").map(t=>t.text).join(`
4
+ `)}function W(e){if(!e.agentContent)return e;let t=e.agentContent;for(const n of Ue(e.id,e.metadata))t=he(t,n);return{...e,agentContent:t}}function Je(e){var o,s,r;const t=[];let n=null;for(const i of e)if(i.role!=="system"){if(i.role==="user")n&&(t.push(W(n)),n=null),t.push({id:i.id,role:i.role,content:i.content,timestamp:i.timestamp||Date.now(),metadata:i.metadata});else if(i.role==="assistant"){n&&t.push(W(n));const a=i.metadata;let u=N();i.thinkingContent&&(u=Ee(u,i.thinkingContent),u.thinkingContent=i.thinkingContent);const d=_(i.content);if(d&&(u=qe(u,d),u.textBefore=d),i.tool_calls&&Array.isArray(i.tool_calls))for(const c of i.tool_calls){const l=((o=c.function)==null?void 0:o.name)||"Unknown",g=Ce((s=c.function)==null?void 0:s.arguments);if(l==="Task"){let m={};try{m=JSON.parse(g)}catch{}const S=typeof m.subagent_type=="string"?m.subagent_type:"subagent",h=typeof m.description=="string"?m.description:S;u=he(u,{id:B({explicitId:c.id,sessionId:typeof m.subagent_session_id=="string"?m.subagent_session_id:void 0,messageId:i.id,agentType:S,description:h}),type:S,description:h,status:"running",startTime:Date.now(),sessionId:typeof m.subagent_session_id=="string"?m.subagent_session_id:void 0,resumedFrom:typeof m.resume_from=="string"?m.resume_from:typeof m.resume=="string"?m.resume:void 0});continue}const f={toolCallId:Q({explicitId:c.id,messageId:i.id,toolName:l,argumentsValue:(r=c.function)==null?void 0:r.arguments}),toolName:l,arguments:g,status:"running",startTime:Date.now()};u=me(u,f)}n={id:i.id,role:"assistant",content:_(i.content),timestamp:i.timestamp||Date.now(),metadata:a,agentContent:u}}else if(i.role==="tool"&&n&&n.agentContent){const a=i,u=i.metadata,d=a.tool_call_id||(u==null?void 0:u.toolCallId),c=a.name||(u==null?void 0:u.toolName)||"Tool",l=u!=null&&u.metadata&&typeof u.metadata=="object"&&!Array.isArray(u.metadata)?u.metadata:u,g=u!=null&&u.independentVerification&&typeof u.independentVerification=="object"&&!Array.isArray(u.independentVerification)?u.independentVerification:void 0,f=(u==null?void 0:u.status)==="failed"||(u==null?void 0:u.status)==="error"||typeof(u==null?void 0:u.error)=="string"&&u.error.length>0,m=R(n.agentContent),S=m.findIndex(y=>y.id===d);if(S>=0){const y=m[S],I=typeof(l==null?void 0:l.subagentStatus)=="string"?z(l.subagentStatus):f?"failed":"completed";m[S]={...y,sessionId:typeof(l==null?void 0:l.subagentSessionId)=="string"?l.subagentSessionId:y.sessionId,type:typeof(l==null?void 0:l.subagentType)=="string"?l.subagentType:y.type,status:I,resumedFrom:typeof(l==null?void 0:l.subagentResumedFrom)=="string"?l.subagentResumedFrom:y.resumedFrom,rootAgentId:typeof(l==null?void 0:l.subagentRootId)=="string"?l.subagentRootId:y.rootAgentId,resumeDepth:typeof(l==null?void 0:l.subagentResumeDepth)=="number"?l.subagentResumeDepth:y.resumeDepth,verificationVerdict:(l==null?void 0:l.verificationVerdict)==="pass"||(l==null?void 0:l.verificationVerdict)==="fail"||(l==null?void 0:l.verificationVerdict)==="partial"?l.verificationVerdict:(g==null?void 0:g.verificationVerdict)==="pass"||(g==null?void 0:g.verificationVerdict)==="fail"||(g==null?void 0:g.verificationVerdict)==="partial"?g.verificationVerdict:y.verificationVerdict,output:typeof(l==null?void 0:l.subagentSummary)=="string"?l.subagentSummary:_(i.content)||y.output},n.agentContent=H(n.agentContent,m,y.id);continue}const h=n.agentContent.toolCalls.find(y=>y.toolCallId===d);h?(h.output=_(i.content),h.status=f?"error":"success",h.metadata=l,h.summary=typeof(l==null?void 0:l.summary)=="string"?l.summary:h.summary,(!h.toolName||h.toolName==="Unknown")&&(h.toolName=c)):n.agentContent=me(n.agentContent,{toolCallId:Q({explicitId:d,messageId:n.id,toolName:c,output:_(i.content)}),toolName:c,output:_(i.content),status:f?"error":"success",startTime:Date.now(),metadata:l,summary:typeof(l==null?void 0:l.summary)=="string"?l.summary:void 0})}}return n&&t.push(W(n)),t}const ve={authentication:"task.failure.authentication",permission:"task.failure.permission",rate_limit:"task.failure.rateLimit",timeout:"task.failure.timeout",network:"task.failure.network",model_unavailable:"task.failure.modelUnavailable",context_limit:"task.failure.contextLimit",unsupported_input:"task.failure.unsupportedInput",workspace_unavailable:"task.failure.workspaceUnavailable",capacity:"task.failure.capacity",runtime:"task.failure.runtime"},We={authentication:!1,permission:!1,rate_limit:!0,timeout:!0,network:!0,model_unavailable:!0,context_limit:!1,unsupported_input:!1,workspace_unavailable:!1,capacity:!0,runtime:!0};function X(e){if(typeof e=="string"&&Object.keys(ve).includes(e))return e}function Rn(e){return ve[e]}function Pn(e){return We[e]}const Ae="blade.sidebar.view",ke="blade.preview.width",L=640,Le=360,He=960,Ge=()=>{if(typeof localStorage>"u")return"project";const e=localStorage.getItem(Ae);return e==="status"||e==="project"?e:"project"},Te=e=>Math.min(He,Math.max(Le,Math.round(e))),Qe=()=>{if(typeof localStorage>"u")return L;const e=localStorage.getItem(ke);if(!e)return L;const t=Number(e);return Number.isFinite(t)?Te(t):L},Ye=ye(e=>({mainView:"workspace",setMainView:t=>e(n=>({mainView:t,isSettingsOpen:!1,isFilePreviewOpen:t==="board"?!1:n.isFilePreviewOpen})),boardProjectPath:null,setBoardProjectPath:t=>e({boardProjectPath:t}),isSidebarOpen:!0,toggleSidebar:()=>e(t=>({isSidebarOpen:!t.isSidebarOpen})),setSidebarOpen:t=>e({isSidebarOpen:t}),sidebarView:Ge(),setSidebarView:t=>{typeof localStorage<"u"&&localStorage.setItem(Ae,t),e({sidebarView:t})},isFilePreviewOpen:!1,toggleFilePreview:()=>e(t=>({isFilePreviewOpen:!t.isFilePreviewOpen})),setFilePreviewOpen:t=>e({isFilePreviewOpen:t}),previewWidth:Qe(),setPreviewWidth:t=>{const n=Te(t);typeof localStorage<"u"&&localStorage.setItem(ke,String(n)),e({previewWidth:n})},previewTab:"diff",setPreviewTab:t=>e({previewTab:t}),previewTargetPath:null,previewRequestId:0,openFilePreview:t=>e(n=>({isFilePreviewOpen:!0,previewTab:(t==null?void 0:t.tab)??n.previewTab,previewTargetPath:(t==null?void 0:t.targetPath)??null,previewRequestId:n.previewRequestId+1})),isSettingsOpen:!1,settingsSection:"general",toggleSettings:()=>e(t=>({isSettingsOpen:!t.isSettingsOpen,...t.isSettingsOpen?{}:{settingsSection:"general"}})),openSettings:(t="general")=>e({isSettingsOpen:!0,settingsSection:t}),isTerminalOpen:!1,toggleTerminal:()=>e(t=>({isTerminalOpen:!t.isTerminalOpen})),isTaskSwitcherOpen:!1,taskSwitcherMode:"tasks",setTaskSwitcherOpen:(t,n)=>e(o=>({isTaskSwitcherOpen:t,taskSwitcherMode:n??o.taskSwitcherMode})),setTaskSwitcherMode:t=>e({taskSwitcherMode:t})})),ze=new Set(["BrowserNavigate","BrowserSnapshot","BrowserInteract","BrowserWait","BrowserInspect","BrowserPage"]),Xe=new Set(["click","click_at","hover","fill","type","press","select","check","uncheck","scroll"]);function fe(e,t){return(e==null?void 0:e.sessionId)===t.sessionId&&e.projectPath===t.projectPath}function P(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function we(e){return typeof e=="string"&&Xe.has(e)?e:void 0}function Ze(e){const t=P(e),n=we(t==null?void 0:t.action);if(!t||!n)return;const o=P(t.viewport),s=P(t.targetBox),r=i=>typeof i=="number"&&Number.isFinite(i);return{action:n,...typeof t.ref=="string"?{ref:t.ref}:{},...o&&r(o.width)&&r(o.height)?{viewport:{width:o.width,height:o.height}}:{},...s&&r(s.x)&&r(s.y)&&r(s.width)&&r(s.height)?{targetBox:{x:s.x,y:s.y,width:s.width,height:s.height}}:{}}}function et(e){if(typeof e!="string")return P(e);try{return P(JSON.parse(e))}catch{return}}function tt(e){return typeof e=="string"&&ze.has(e)}const nt=ye(e=>({agentActivity:null,beginAgentActivity:(t,n)=>e(o=>{var a,u;const s=fe((a=o.agentActivity)==null?void 0:a.sessionRef,t)?o.agentActivity:null,r=et(n.argumentsValue),i=n.toolName==="BrowserInteract"?we((u=P(r==null?void 0:r.action))==null?void 0:u.kind):void 0;return{agentActivity:{sessionRef:t,toolCallId:n.toolCallId,toolName:n.toolName,phase:"running",revision:((s==null?void 0:s.revision)??0)+1,frameRevision:(s==null?void 0:s.frameRevision)??0,pointerRevision:(s==null?void 0:s.pointerRevision)??0,...s!=null&&s.pageId?{pageId:s.pageId}:{},...s!=null&&s.origin?{origin:s.origin}:{},...s!=null&&s.url?{url:s.url}:{},...s!=null&&s.title?{title:s.title}:{},...i?{pendingAction:{action:i,...typeof(r==null?void 0:r.ref)=="string"?{ref:r.ref}:{}}}:{},...n.toolName!=="BrowserNavigate"&&(s!=null&&s.interaction)?{interaction:s.interaction}:{}}}}),completeAgentActivity:(t,n)=>e(o=>{var c,l;const s=fe((c=o.agentActivity)==null?void 0:c.sessionRef,t)?o.agentActivity:null,r=P((l=P(n.metadata))==null?void 0:l.browser),i=Ze(r==null?void 0:r.interaction),a=typeof(r==null?void 0:r.pageId)=="string"?r.pageId:s==null?void 0:s.pageId,u=typeof(r==null?void 0:r.origin)=="string"?r.origin:s==null?void 0:s.origin,d=n.toolName!=="BrowserNavigate"&&n.toolName!=="BrowserPage";return{agentActivity:{sessionRef:t,toolCallId:n.toolCallId,toolName:n.toolName,phase:n.success?"ready":"error",revision:((s==null?void 0:s.revision)??0)+1,frameRevision:a&&u?((s==null?void 0:s.frameRevision)??0)+1:(s==null?void 0:s.frameRevision)??0,pointerRevision:i!=null&&i.targetBox?((s==null?void 0:s.pointerRevision)??0)+1:(s==null?void 0:s.pointerRevision)??0,...a?{pageId:a}:{},...u?{origin:u}:{},...typeof(r==null?void 0:r.url)=="string"?{url:r.url}:s!=null&&s.url?{url:s.url}:{},...typeof(r==null?void 0:r.title)=="string"?{title:r.title}:s!=null&&s.title?{title:s.title}:{},...typeof(r==null?void 0:r.errorCode)=="string"?{errorCode:r.errorCode}:{},...i?{interaction:i}:d&&(s!=null&&s.interaction)?{interaction:s.interaction}:{}}}}),clearAgentActivity:()=>e({agentActivity:null})})),st={flushTimeout:80};class it{constructor(t){J(this,"config");J(this,"channels",new Map);this.config={...st,...t}}append(t,n,o){let s=this.channels.get(t);s||(s={buffer:"",timer:null,flushFn:null},this.channels.set(t,s)),s.buffer+=n,s.flushFn=o,s.timer||(s.timer=setTimeout(()=>{this.flushChannel(t)},this.config.flushTimeout))}flushChannel(t){const n=this.channels.get(t);if(!n||!n.buffer)return;const o=n.buffer,s=n.flushFn;n.buffer="",n.timer&&(clearTimeout(n.timer),n.timer=null),s==null||s(o)}drainAll(){for(const[t]of this.channels)this.flushChannel(t);this.channels.clear()}drainAllExcept(t){for(const[n]of this.channels)n!==t&&this.flushChannel(n);for(const[n,o]of this.channels)n!==t&&!o.buffer&&this.channels.delete(n)}reset(){for(const[,t]of this.channels)t.timer&&clearTimeout(t.timer);this.channels.clear()}}const w=new it,ot=100,C=(e,t,n)=>{if(t)for(const o of e){const s=R(o.agentContent).find(r=>r.id===t||r.sessionId===t);if(s)return{messageId:o.id,subagent:s}}if(n){const o=e.find(i=>i.id===n),s=R(o==null?void 0:o.agentContent),r=s.find(i=>i.status==="running")??s[s.length-1];if(r)return{messageId:n,subagent:r}}for(const o of[...e].reverse()){const s=R(o.agentContent),r=s.find(i=>i.status==="running")??s[s.length-1];if(r)return{messageId:o.id,subagent:r}}};function at(e,t,n){n(o=>{const s={...o.pendingSubagentCompletions??{}};if(s[e]===void 0&&Object.keys(s).length>=ot){const r=Object.keys(s)[0];r&&delete s[r]}return s[e]={...t},{pendingSubagentCompletions:s}})}function Z(e,t,n){var r;if(!e)return;const o=(r=t().pendingSubagentCompletions)==null?void 0:r[e];!o||!C(t().messages,e,t().currentAssistantMessageId)||(te({...o,subagentSessionId:e,success:o.status==="completed"},t),n(i=>{const a={...i.pendingSubagentCompletions??{}};return delete a[e],{pendingSubagentCompletions:a}}))}const v=(e,t,n,o=!1)=>{const{currentAssistantMessageId:s,messages:r,addMessage:i,startAgentResponse:a}=e();if(n&&o){const l=r.find(f=>f.id===n&&f.role==="assistant");if(l)return a(l.id),l.id;const g={id:n,role:"assistant",content:"",timestamp:Date.now(),agentContent:N()};return i(g),a(n),n}if(s&&!s.startsWith("call_")&&r.some(l=>l.id===s&&l.role==="assistant"))return s;if(n){const l=r.find(g=>g.id===n&&g.role==="assistant");if(l)return a(l.id),l.id}const u=r[r.length-1];if((u==null?void 0:u.role)==="assistant")return u.id;const d=n||`assistant-${Date.now()}`,c={id:d,role:"assistant",content:"",timestamp:Date.now(),agentContent:N()};return i(c),a(d),t(l=>({messages:l.messages.map(g=>g.id===d?{...g,agentContent:{...g.agentContent||N()}}:g)})),d},rt=(e,t,n)=>{const{currentSessionId:o,addMessage:s,startAgentResponse:r,messages:i,updateMessage:a}=t();if(e.sessionId!==o)return;const u=e.messageId,d=e.role||"assistant",c=i.find(g=>g.id===u),l={id:u,role:d,content:e.content||"",timestamp:Date.now(),agentContent:d==="assistant"?N():void 0};c?a(u,{role:d,content:l.content,agentContent:d==="assistant"?{...c.agentContent||N()}:void 0}):s(l),d==="user"?n({pendingResume:null}):r(u)},ut=(e,t,n)=>{const{currentSessionId:o,appendDelta:s,currentAssistantMessageId:r,hasToolCalls:i,addMessage:a,startAgentResponse:u}=t();if(e.sessionId!==o)return;const d=e.messageId,c=e.delta;if(!r){const g={id:d,role:"assistant",content:"",timestamp:Date.now(),agentContent:N()};a(g),u(d),t().appendDelta(d,c,"before");return}s(r,c,i?"after":"before")},dt=(e,t)=>{const{currentSessionId:n,updateMessage:o,messages:s}=t();if(e.sessionId!==n)return;const r=e.messageId,i=s.find(a=>a.id===r);i!=null&&i.agentContent&&o(r,{content:Be(i.agentContent)})},lt=(e,t,n)=>{var u;const{currentSessionId:o}=t();if(e.sessionId!==o)return;const s=e.output;if(!s||typeof s!="object"||Array.isArray(s))return;const r=v(t,n,e.messageId);if(!r)return;const i=t().messages.find(d=>d.id===r);if(!i)return;const a=JSON.stringify(s,null,2);t().updateMessage(r,{content:a,metadata:{...i.metadata,structuredOutput:{output:s,schemaDigest:e.schemaDigest}},agentContent:i.agentContent?{...i.agentContent,textBefore:"",textAfter:"",timeline:(u=i.agentContent.timeline)==null?void 0:u.filter(d=>d.type!=="text")}:void 0})},ct=(e,t,n)=>{const{currentSessionId:o,appendThinking:s}=t();if(e.sessionId!==o)return;const r=v(t,n,e.messageId);r&&s(r,e.delta)},gt=()=>{},Re=(e,t,n)=>{const{currentSessionId:o,appendToolCall:s,setHasToolCalls:r,setSubagent:i}=t();if(e.sessionId!==o)return;const a=v(t,n,e.messageId||e.toolCallId,typeof e.messageId=="string");if(!a)return;r(!0);const u=e.toolName||"Unknown",d=e.arguments;let c,l="",g,f;if(u==="Task")try{const S=JSON.parse(d);c=S.subagent_type,l=S.description||S.query||c||"",g=S.subagent_session_id,f=S.resume_from||S.resume}catch{}if(c){i(a,{id:B({explicitId:e.toolCallId,sessionId:g,messageId:a,agentType:c,description:l}),type:c,description:l,status:"running",startTime:Date.now(),sessionId:g,resumedFrom:f,output:"",thinking:""}),Z(g,t,n);return}const m={toolCallId:Q({explicitId:e.toolCallId,messageId:a,toolName:u,argumentsValue:d,toolKind:e.toolKind}),toolName:u,arguments:d,toolKind:e.toolKind,status:"running",startTime:Date.now()};s(a,m)};function Pe(e){if(!e||typeof e!="object"||Array.isArray(e))return;const t=e;if(!(t.kind!=="readonly"&&t.kind!=="write"&&t.kind!=="execute")&&!(t.scope!=="global"&&t.scope!=="session")&&!(!Number.isSafeInteger(t.queuePosition)||t.queuePosition<=0||!Number.isSafeInteger(t.inFlight)||t.inFlight<0||!Number.isSafeInteger(t.limit)||t.limit<=0))return{kind:t.kind,scope:t.scope,queuePosition:t.queuePosition,inFlight:t.inFlight,limit:t.limit}}const Ne=(e,t)=>{const{currentSessionId:n,updateToolCall:o,messages:s}=t();if(e.sessionId!==n)return;const r=e.toolCallId;if(!r)return;const i=s.find(a=>{var u;return(u=a.agentContent)==null?void 0:u.toolCalls.some(d=>d.toolCallId===r)});i&&o(i.id,r,{summary:e.message,progress:typeof e.progress=="number"?e.progress:void 0,progressTotal:typeof e.total=="number"?e.total:void 0,progressMessage:e.message,admission:Pe(e.admission)})},$e=(e,t,n)=>{var de;const{currentSessionId:o,appendToolCall:s,setHasToolCalls:r,updateToolCall:i,updateSubagent:a,messages:u}=t();if(e.sessionId!==o)return;const d=e.toolCallId;if(!d)return;const c=u.find(A=>{var T;return(T=A.agentContent)==null?void 0:T.toolCalls.some(M=>M.toolCallId===d)}),l=u.find(A=>R(A.agentContent).some(T=>T.id===d)),g=(c==null?void 0:c.id)||(l==null?void 0:l.id)||v(t,n,e.messageId,!0);if(!g)return;const f=typeof e.output=="string"?e.output:"",m=e.success===!0||e.status==="completed",S=e.summary||(f&&f.trim()?f.trim().split(`
5
+ `)[0].slice(0,120):m?"执行成功":"执行失败"),h=(de=c==null?void 0:c.agentContent)==null?void 0:de.toolCalls.find(A=>A.toolCallId===d),y=typeof e.toolName=="string"?e.toolName:(h==null?void 0:h.toolName)??"Unknown",I=e.metadata;c?i(g,d,{status:m?"success":"error",summary:S,output:f,metadata:I}):l||(r(!0),s(g,{toolCallId:d,toolName:y,status:m?"success":"error",summary:S,output:f,startTime:Date.now(),metadata:I}));const V=t().messages.find(A=>A.id===g),k=R(V==null?void 0:V.agentContent).find(A=>A.id===d),$=I&&typeof I.subagentSessionId=="string"?I.subagentSessionId:void 0,x=I&&typeof I.subagentStatus=="string"?I.subagentStatus:void 0,se=I&&typeof I.subagentType=="string"?I.subagentType:void 0,ie=I&&typeof I.subagentSummary=="string"?I.subagentSummary:void 0,oe=I&&typeof I.subagentResumedFrom=="string"?I.subagentResumedFrom:void 0,ae=I&&typeof I.subagentRootId=="string"?I.subagentRootId:void 0,re=I&&typeof I.subagentResumeDepth=="number"?I.subagentResumeDepth:void 0,ue=(I==null?void 0:I.verificationVerdict)==="pass"||(I==null?void 0:I.verificationVerdict)==="fail"||(I==null?void 0:I.verificationVerdict)==="partial"?I.verificationVerdict:void 0;if(k){const A=x?z(x):e.success?"completed":"failed",T=k.status!=="running"&&A==="running";a(g,k.id,{sessionId:k.sessionId||$,type:se||k.type,status:T?k.status:A,resumedFrom:oe||k.resumedFrom,rootAgentId:ae||k.rootAgentId,resumeDepth:re??k.resumeDepth,verificationVerdict:ue??k.verificationVerdict,output:T?k.output:ie||k.output})}$&&x&&n(A=>({messages:A.messages.map(T=>{if(T.id!==g)return T;const M=T.metadata??{},p=Array.isArray(M.subtaskRefs)?M.subtaskRefs:[],j=p.findIndex(le=>le.childSessionId===$||le.subagentId===d),b=j>=0?p[j]:M.subtaskRef??{},K={...b,subagentId:d,childSessionId:$,agentType:se||(typeof(b==null?void 0:b.agentType)=="string"?b.agentType:"subagent"),status:x,summary:ie||(typeof(b==null?void 0:b.summary)=="string"?b.summary:""),resumedFrom:oe||(typeof(b==null?void 0:b.resumedFrom)=="string"?b.resumedFrom:void 0),rootAgentId:ae||(typeof(b==null?void 0:b.rootAgentId)=="string"?b.rootAgentId:$),resumeDepth:re??(typeof(b==null?void 0:b.resumeDepth)=="number"?b.resumeDepth:0),verificationVerdict:ue||(typeof(b==null?void 0:b.verificationVerdict)=="string"?b.verificationVerdict:void 0)},U=[...p];return j>=0?U[j]=K:U.push(K),{...T,metadata:{...M,subtaskRef:K,subtaskRefs:U}}})})),Z($,t,n)},mt=(e,t,n)=>{const{currentSessionId:o,appendToolCall:s}=t();if(e.sessionId!==o)return;const r=v(t,n,e.messageId||`mcp-catalog-${String(e.revision)}`);if(!r)return;const i=Array.isArray(e.added)?e.added.map(String):[],a=Array.isArray(e.removed)?e.removed.map(String):[],u=Array.isArray(e.updated)?e.updated.map(String):[],d=`MCP catalog r${String(e.revision)}: +${i.length} -${a.length} ~${u.length}`;s(r,{toolCallId:`mcp-catalog:${String(e.revision)}`,toolName:"MCP Catalog",arguments:JSON.stringify({serverName:e.serverName,added:i,removed:a,updated:u}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:d,output:[i.length>0?`Added: ${i.join(", ")}`:"",a.length>0?`Removed: ${a.join(", ")}`:"",u.length>0?`Updated: ${u.join(", ")}`:""].filter(Boolean).join(`
6
+ `)})},ft=(e,t,n)=>{const{currentSessionId:o,appendToolCall:s}=t();if(e.sessionId!==o)return;const r=v(t,n,e.messageId||`mcp-content-${String(e.revision)}`);if(!r)return;const i=Array.isArray(e.added)?e.added.map(String):[],a=Array.isArray(e.removed)?e.removed.map(String):[],u=Array.isArray(e.updated)?e.updated.map(String):[],d=`MCP ${String(e.contentKind)} r${String(e.revision)}: +${i.length} -${a.length} ~${u.length}`;s(r,{toolCallId:`mcp-content:${String(e.revision)}`,toolName:"MCP Content",arguments:JSON.stringify({serverName:e.serverName,contentKind:e.contentKind,added:i,removed:a,updated:u}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:d,output:[i.length>0?`Added: ${i.join(", ")}`:"",a.length>0?`Removed: ${a.join(", ")}`:"",u.length>0?`Updated: ${u.join(", ")}`:""].filter(Boolean).join(`
7
+ `)})},It=(e,t,n)=>{const{currentSessionId:o,appendToolCall:s}=t();if(e.sessionId!==o)return;const r=v(t,n,e.messageId||`mcp-resource-${String(e.revision)}`);r&&s(r,{toolCallId:`mcp-resource:${String(e.revision)}`,toolName:"MCP Resource",arguments:JSON.stringify({serverName:e.serverName,uri:e.uri}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP resource updated: ${String(e.uri)}`,output:`${String(e.serverName)} · revision ${String(e.revision)}`})},St=(e,t,n)=>{const{currentSessionId:o,appendToolCall:s}=t();if(e.sessionId!==o)return;const r=v(t,n,e.messageId||`mcp-connection-${String(e.revision)}`);if(!r)return;const i=String(e.phase),a=`MCP ${String(e.serverName)} ${i}`+(i==="reconnecting"?` (${String(e.attempt)}/${String(e.maxAttempts)})`:"");s(r,{toolCallId:`mcp-connection:${String(e.revision)}`,toolName:"MCP Connection",arguments:JSON.stringify({serverName:e.serverName,phase:i,reason:e.reason,attempt:e.attempt,maxAttempts:e.maxAttempts}),toolKind:"readonly",status:i==="failed"?"error":"success",startTime:Date.now(),summary:a,output:[`Reason: ${String(e.reason)}`,e.error?`Error: ${String(e.error)}`:""].filter(Boolean).join(`
8
+ `)})},yt=(e,t,n)=>{const{currentSessionId:o,appendToolCall:s}=t();if(e.sessionId!==o)return;const r=v(t,n,e.messageId||`mcp-log-${String(e.revision)}`);if(!r)return;const i=String(e.level),a=typeof e.logger=="string"?e.logger:void 0,u=`MCP ${i} · ${String(e.serverName)}`+(a?` · ${a}`:"");s(r,{toolCallId:`mcp-log:${String(e.revision)}`,toolName:"MCP Log",arguments:JSON.stringify({serverName:e.serverName,level:i,logger:a}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:u,output:[String(e.message),`SHA-256: ${String(e.dataSha256)}`,e.truncated===!0?"Truncated":"",e.detailsOmitted===!0?"Details omitted by runtime policy":""].filter(Boolean).join(`
9
+ `)})},ht=(e,t,n)=>{const{currentSessionId:o,appendToolCall:s}=t();if(e.sessionId!==o)return;const r=String(e.serverName),i=String(e.action),a=v(t,n,e.messageId||`mcp-instructions-${String(e.revision)}-${r}`);if(!a)return;const u=`MCP instructions ${i}: ${r}`+(e.truncated===!0?" (truncated)":"");s(a,{toolCallId:`mcp-instructions:${String(e.revision)}:${r}:${i}`,toolName:"MCP Instructions",arguments:JSON.stringify({serverName:r,action:i,reason:e.reason}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:u,output:[typeof e.text=="string"?e.text:"",e.sha256?`SHA-256: ${String(e.sha256)}`:"",e.detailsOmitted===!0?"Details omitted by runtime policy":""].filter(Boolean).join(`
10
+ `)})},bt=(e,t,n)=>{var f,m;const{currentSessionId:o,appendToolCall:s,updateToolCall:r}=t();if(e.sessionId!==o)return;const i=String(e.taskId),a=String(e.status),u=`mcp-task:${i}`,d=v(t,n,e.messageId||`mcp-task-${i}`);if(!d)return;const c=`MCP task ${a}: ${i} · ${String(e.serverName)}/${String(e.toolName)}`,l={status:a==="failed"||a==="cancelled"?"error":a==="completed"?"success":"running",summary:c,output:[typeof e.statusMessage=="string"?e.statusMessage:"",e.hasResult===!0?"Result available via TaskOutput":"",typeof e.error=="string"?`Error: ${e.error}`:""].filter(Boolean).join(`
11
+ `)};if((m=(f=t().messages.find(S=>S.id===d))==null?void 0:f.agentContent)==null?void 0:m.toolCalls.some(S=>S.toolCallId===u)){r(d,u,l);return}s(d,{toolCallId:u,toolName:"MCP Task",arguments:JSON.stringify({taskId:i,serverName:e.serverName,toolName:e.toolName}),toolKind:"readonly",status:l.status,startTime:Number(e.createdAt)||Date.now(),summary:l.summary,output:l.output})},Ct=(e,t,n)=>{const{currentSessionId:o,appendToolCall:s}=t();if(e.sessionId!==o)return;const r=Array.isArray(e.files)?e.files.filter(d=>!!d&&typeof d=="object"&&!Array.isArray(d)):[],i=v(t,n,e.messageId||`project-rules-${Date.now()}`);if(!i)return;const a=e.blockedWrite===!0,u=`Project rules loaded: ${r.length}`+(a?" (write retry required)":"");s(i,{toolCallId:`project-rules:${r.map(d=>String(d.id)).join(",")}`,toolName:"Project Rules",arguments:JSON.stringify({triggerPaths:e.triggerPaths,blockedWrite:a}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:u,output:r.map(d=>`${String(d.relativePath)} ${String(d.source)} SHA-256: ${String(d.contentSha256)}`).join(`
12
+ `)})},ee=e=>`user-shell-${e}`,vt=(e,t,n)=>{const{currentSessionId:o,addMessage:s,messages:r,updateMessage:i}=t();if(e.sessionId!==o||typeof e.executionId!="string"||typeof e.command!="string")return;const a=ee(e.executionId),u={id:a,role:"user",content:`! ${e.command}`,timestamp:Date.now(),metadata:{userShellExecution:{executionId:e.executionId,command:e.command,status:"running",output:""}}};r.some(d=>d.id===a)?i(a,u):s(u),e.auxiliary!==!0&&n({isStreaming:!0,agentPhase:"running",error:null,errorContext:null})},At=(e,t)=>{var d;const{currentSessionId:n,messages:o,updateMessage:s}=t();if(e.sessionId!==n||typeof e.executionId!="string"||typeof e.chunk!="string")return;const r=ee(e.executionId),i=o.find(c=>c.id===r);if(!i)return;const a=(d=i.metadata)!=null&&d.userShellExecution&&typeof i.metadata.userShellExecution=="object"?i.metadata.userShellExecution:{},u=`${typeof a.output=="string"?a.output:""}${e.chunk}`;s(r,{content:`! ${String(a.command??"")}
13
+ ${u}`,metadata:{...i.metadata,userShellExecution:{...a,output:u,streamTruncated:e.streamTruncated===!0}}})},kt=(e,t,n)=>{const{currentSessionId:o,messages:s,addMessage:r,updateMessage:i}=t();if(e.sessionId!==o||typeof e.executionId!="string"||!e.record||typeof e.record!="object"||Array.isArray(e.record))return;const a=e.record,u=typeof a.command=="string"?a.command:"",d=typeof a.stdout=="string"?a.stdout:"",c=typeof a.stderr=="string"?a.stderr:"",l=[d,c?`stderr:
14
+ ${c}`:""].filter(Boolean).join(`
15
+ `),g=ee(e.executionId),f={role:"user",content:[`! ${u}`,l||"(no output)"].join(`
16
+ `),metadata:{userShellCommand:a}};s.some(m=>m.id===g)?i(g,f):r({id:g,...f,timestamp:Date.now()}),e.auxiliary!==!0&&n({isStreaming:!1,isStopping:!1,agentPhase:"idle"}),(e.delivery==="current_turn"||e.delivery==="next_turn")&&n({pendingSteeringCount:typeof e.queued=="number"?Math.max(0,e.queued):0,pendingInputDelivery:e.delivery==="current_turn"?"current_turn":"next_turn"})},Tt=(e,t)=>{const{currentSessionId:n,updateTokenUsage:o,setMaxContextTokens:s}=t();e.sessionId===n&&(o({inputTokens:e.inputTokens,outputTokens:e.outputTokens,totalTokens:e.totalTokens,cacheReadTokens:e.cacheReadTokens??0,cacheWriteTokens:e.cacheWriteTokens??0,...e.cacheBreak?{cacheBreak:e.cacheBreak}:{},costUsd:e.costUsd}),e.maxContextTokens&&s(e.maxContextTokens,!1))},wt=(e,t)=>{const{currentSessionId:n,setTasks:o,currentAssistantMessageId:s}=t();if(e.sessionId!==n||!s)return;const r=e.tasks||[];o(s,r)},Rt=(e,t,n)=>{const{currentSessionId:o,setSubagent:s,currentAssistantMessageId:r}=t();if(e.sessionId!==o||!r)return;const i={id:B({explicitId:e.subagentId,sessionId:e.subagentSessionId,messageId:r,agentType:e.type,description:e.description}),type:e.type||"unknown",description:e.description||"",status:"running",startTime:Date.now(),sessionId:e.subagentSessionId,resumedFrom:e.resumedFrom,rootAgentId:e.rootAgentId,resumeDepth:typeof e.resumeDepth=="number"?e.resumeDepth:void 0};s(r,i),Z(i.sessionId,t,n)},Pt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.subagentSessionId,a=C(s,i,o);a&&r(a.messageId,a.subagent.id,{sessionId:a.subagent.sessionId||i,currentTool:e.toolName})},Nt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.delta;if(!i)return;const a=e.subagentSessionId,u=C(s,a,o);u&&r(u.messageId,u.subagent.id,d=>({sessionId:d.sessionId||a,output:(d.output||"")+i}))},$t=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.delta;if(!i)return;const a=e.subagentSessionId,u=C(s,a,o);u&&r(u.messageId,u.subagent.id,d=>({sessionId:d.sessionId||a,thinking:(d.thinking||"")+i}))},te=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.subagentSessionId,a=C(s,i,o);if(!a)return;const u=e.status==="completed"?"completed":e.status==="failed"||e.status==="cancelled"?"failed":e.success?"completed":"failed";r(a.messageId,a.subagent.id,{sessionId:a.subagent.sessionId||i,type:typeof e.type=="string"?e.type:a.subagent.type,description:typeof e.description=="string"?e.description:a.subagent.description,status:u,currentTool:void 0,output:typeof e.summary=="string"?e.summary:a.subagent.output,resumedFrom:typeof e.resumedFrom=="string"?e.resumedFrom:a.subagent.resumedFrom,rootAgentId:typeof e.rootAgentId=="string"?e.rootAgentId:a.subagent.rootAgentId,resumeDepth:typeof e.resumeDepth=="number"?e.resumeDepth:a.subagent.resumeDepth,verificationVerdict:e.verificationVerdict==="pass"||e.verificationVerdict==="fail"||e.verificationVerdict==="partial"?e.verificationVerdict:a.subagent.verificationVerdict})},Mt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.toolCallId,a=e.toolName;if(!i||!a)return;const u=e.subagentSessionId,d=C(s,u,o);if(!d)return;const c={toolCallId:i,toolName:a,arguments:e.arguments,toolKind:e.toolKind,status:"running",startTime:Date.now()};r(d.messageId,d.subagent.id,l=>{const g=l.toolCalls||[];return{sessionId:l.sessionId||u,currentTool:a,toolCalls:g.some(f=>f.toolCallId===i)?g:[...g,c]}})},_t=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.toolCallId;if(!i)return;const a=e.toolName,u=e.subagentSessionId,d=C(s,u,o);if(!d)return;const c=e.output,l=e.success===!0,g=l?"success":"error",f=e.summary||(c&&c.trim()?c.trim().split(`
17
+ `)[0].slice(0,120):l?"执行成功":"执行失败");r(d.messageId,d.subagent.id,m=>({sessionId:m.sessionId||u,currentTool:m.currentTool===a?void 0:m.currentTool,toolCalls:(m.toolCalls||[]).map(S=>S.toolCallId===i?{...S,status:g,summary:f,output:c,metadata:e.metadata}:S)}))},xt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.toolCallId;if(!i)return;const a=C(s,e.subagentSessionId,o);a&&r(a.messageId,a.subagent.id,u=>({toolCalls:(u.toolCalls||[]).map(d=>d.toolCallId===i?{...d,summary:e.message,progress:typeof e.progress=="number"?e.progress:void 0,progressTotal:typeof e.total=="number"?e.total:void 0,progressMessage:e.message,admission:Pe(e.admission)}:d)}))},jt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,o);if(!i)return;const a=Array.isArray(e.added)?e.added.map(String):[],u=Array.isArray(e.removed)?e.removed.map(String):[],d=Array.isArray(e.updated)?e.updated.map(String):[],c=`mcp-catalog:${String(e.revision)}`;r(i.messageId,i.subagent.id,l=>({toolCalls:[...(l.toolCalls||[]).filter(g=>g.toolCallId!==c),{toolCallId:c,toolName:"MCP Catalog",arguments:JSON.stringify({serverName:e.serverName,added:a,removed:u,updated:d}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP catalog r${String(e.revision)}: +${a.length} -${u.length} ~${d.length}`,output:[a.length>0?`Added: ${a.join(", ")}`:"",u.length>0?`Removed: ${u.join(", ")}`:"",d.length>0?`Updated: ${d.join(", ")}`:""].filter(Boolean).join(`
18
+ `)}]}))},Dt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,o);if(!i)return;const a=Array.isArray(e.added)?e.added.map(String):[],u=Array.isArray(e.removed)?e.removed.map(String):[],d=Array.isArray(e.updated)?e.updated.map(String):[],c=`mcp-content:${String(e.revision)}`;r(i.messageId,i.subagent.id,l=>({toolCalls:[...(l.toolCalls||[]).filter(g=>g.toolCallId!==c),{toolCallId:c,toolName:"MCP Content",arguments:JSON.stringify({serverName:e.serverName,contentKind:e.contentKind,added:a,removed:u,updated:d}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP ${String(e.contentKind)} r${String(e.revision)}: +${a.length} -${u.length} ~${d.length}`}]}))},Ot=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,o);if(!i)return;const a=`mcp-resource:${String(e.revision)}`;r(i.messageId,i.subagent.id,u=>({toolCalls:[...(u.toolCalls||[]).filter(d=>d.toolCallId!==a),{toolCallId:a,toolName:"MCP Resource",arguments:JSON.stringify({serverName:e.serverName,uri:e.uri}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP resource updated: ${String(e.uri)}`}]}))},Ft=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,o);if(!i)return;const a=String(e.phase),u=`mcp-connection:${String(e.revision)}`;r(i.messageId,i.subagent.id,d=>({toolCalls:[...(d.toolCalls||[]).filter(c=>c.toolCallId!==u),{toolCallId:u,toolName:"MCP Connection",arguments:JSON.stringify({serverName:e.serverName,phase:a,reason:e.reason,attempt:e.attempt,maxAttempts:e.maxAttempts}),toolKind:"readonly",status:a==="failed"?"error":"success",startTime:Date.now(),summary:`MCP ${String(e.serverName)} ${a}`+(a==="reconnecting"?` (${String(e.attempt)}/${String(e.maxAttempts)})`:""),output:e.error?`Error: ${String(e.error)}`:void 0}]}))},qt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,o);if(!i)return;const a=String(e.level),u=typeof e.logger=="string"?e.logger:void 0,d=`mcp-log:${String(e.revision)}`;r(i.messageId,i.subagent.id,c=>({toolCalls:[...(c.toolCalls||[]).filter(l=>l.toolCallId!==d),{toolCallId:d,toolName:"MCP Log",arguments:JSON.stringify({serverName:e.serverName,level:a,logger:u}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP ${a} · ${String(e.serverName)}`+(u?` · ${u}`:""),output:[String(e.message),`SHA-256: ${String(e.dataSha256)}`,e.truncated===!0?"Truncated":"",e.detailsOmitted===!0?"Details omitted by runtime policy":""].filter(Boolean).join(`
19
+ `)}]}))},Et=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,o);if(!i)return;const a=String(e.serverName),u=String(e.action),d=`mcp-instructions:${String(e.revision)}:${a}:${u}`;r(i.messageId,i.subagent.id,c=>({toolCalls:[...(c.toolCalls||[]).filter(l=>l.toolCallId!==d),{toolCallId:d,toolName:"MCP Instructions",arguments:JSON.stringify({serverName:a,action:u,reason:e.reason}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP instructions ${u}: ${a}`+(e.truncated===!0?" (truncated)":""),output:[typeof e.text=="string"?e.text:"",e.sha256?`SHA-256: ${String(e.sha256)}`:"",e.detailsOmitted===!0?"Details omitted by runtime policy":""].filter(Boolean).join(`
20
+ `)}]}))},Bt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,o);if(!i)return;const a=String(e.taskId),u=String(e.status),d=`mcp-task:${a}`;r(i.messageId,i.subagent.id,c=>({toolCalls:[...(c.toolCalls||[]).filter(l=>l.toolCallId!==d),{toolCallId:d,toolName:"MCP Task",arguments:JSON.stringify({taskId:a,serverName:e.serverName,toolName:e.toolName}),toolKind:"readonly",status:u==="failed"||u==="cancelled"?"error":u==="completed"?"success":"running",startTime:Number(e.createdAt)||Date.now(),summary:`MCP task ${u}: ${a} · ${String(e.serverName)}/${String(e.toolName)}`,output:[typeof e.statusMessage=="string"?e.statusMessage:"",e.hasResult===!0?"Result available via TaskOutput":"",typeof e.error=="string"?`Error: ${e.error}`:""].filter(Boolean).join(`
21
+ `)}]}))},Vt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:o,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,o);if(!i)return;const a=Array.isArray(e.files)?e.files.filter(d=>!!d&&typeof d=="object"&&!Array.isArray(d)):[],u=`project-rules:${a.map(d=>String(d.id)).join(",")}`;r(i.messageId,i.subagent.id,d=>({toolCalls:[...(d.toolCalls||[]).filter(c=>c.toolCallId!==u),{toolCallId:u,toolName:"Project Rules",arguments:JSON.stringify({triggerPaths:e.triggerPaths,blockedWrite:e.blockedWrite}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`Project rules loaded: ${a.length}`,output:a.map(c=>`${String(c.relativePath)} ${String(c.source)} SHA-256: ${String(c.contentSha256)}`).join(`
22
+ `)}]}))},pt=(e,t,n)=>{const{currentSessionId:o,setConfirmation:s}=t();if(e.sessionId!==o)return;const r=e.requestId||"",i=v(t,n,r?`assistant-permission-${r}`:void 0);if(!i)return;const a=e.details,u=e.toolName||(a==null?void 0:a.toolName)||"Tool";s(i,{toolCallId:r,toolName:u,description:e.description,diff:(a==null?void 0:a.details)||(a==null?void 0:a.diff)||"",allowRemember:(a==null?void 0:a.type)!=="mcpSampling",status:"pending"}),n(d=>({agentPhase:"waiting_permission",isStreaming:!0,sessions:d.sessions.map(c=>c.sessionId===e.sessionId&&c.projectPath===e.projectPath?{...c,pendingInteraction:{type:"permission",requestId:r}}:c)}))},Kt=(e,t,n)=>{var f,m;const{currentSessionId:o,currentSessionRef:s,messages:r,setConfirmation:i,setElicitation:a}=t();if(e.sessionId!==o)return;const u=e.requestId,d=r.find(S=>{var h,y;return((y=(h=S.agentContent)==null?void 0:h.confirmation)==null?void 0:y.toolCallId)===u}),c=(f=d==null?void 0:d.agentContent)==null?void 0:f.confirmation;d&&(c==null?void 0:c.status)==="pending"&&i(d.id,{...c,status:"denied"});const l=r.find(S=>{var h,y;return((y=(h=S.agentContent)==null?void 0:h.elicitation)==null?void 0:y.toolCallId)===u}),g=(m=l==null?void 0:l.agentContent)==null?void 0:m.elicitation;l&&(g==null?void 0:g.status)==="pending"&&a(l.id,{...g,status:"cancelled"}),n({agentPhase:"running",error:"Permission request timed out",errorContext:{kind:"interaction",...s?{sessionRef:s}:{}}})},Ie=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",isStreaming:!0,turnRecovery:null})};function Ut(e){if(!e||typeof e!="object"||Array.isArray(e))return null;const t=e;if(typeof t.turnId!="string"||!t.turnId||!Number.isSafeInteger(t.inputMessageCount)||t.inputMessageCount<0)return null;const n={turnId:t.turnId,inputMessageCount:t.inputMessageCount};return t.state==="completed"||t.state==="resumable"?{state:t.state,...n}:t.state==="requires_attention"&&(t.reason==="successful_tool_result"||t.reason==="interrupted_tool_call")?{state:t.state,...n,reason:t.reason}:null}const Jt=(e,t,n)=>{const o=t(),s=o.currentSessionRef;if(e.sessionId!==o.currentSessionId||!s||e.projectPath!==s.projectPath)return;const r=Ut(e.assessment);r&&(n({turnRecovery:r}),o.resyncSessionMessages(s))},Wt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:e.reason==="context_limit"?"recovering_context":"compacting"})},Lt=(e,t,n)=>{e.sessionId===t().currentSessionId&&(t().resetContextUsage(),n({agentPhase:"running"}))},Ht=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"switching_model",providerAdmission:null,providerCircuit:null,providerRetry:null,pendingResume:null,providerStall:null,actionStationarity:null})},Gt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",providerAdmission:e.phase==="queued"?e:null})},Qt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",providerCircuit:e.phase==="closed"?null:e})},Yt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",providerRetry:e.phase==="recovered"?null:e})},F=e=>typeof e=="number"&&Number.isFinite(e)&&e>=0,q=e=>typeof e=="number"&&Number.isInteger(e)&&e>0,zt=e=>{if(e.phase!=="retry_scheduled"||e.kind!=="pending_input"||!q(e.attempt)||!q(e.maxAttempts)||e.attempt>e.maxAttempts||e.delayMs!==void 0&&!F(e.delayMs)||e.nextRetryAt!==void 0&&!F(e.nextRetryAt))return null;let t;if(e.failure!==void 0){if(!e.failure||typeof e.failure!="object"||Array.isArray(e.failure))return null;const n=e.failure,o=X(n.code),s=n.resource;if(!o||typeof n.retryable!="boolean"||s!==void 0&&s!=="pending_count"&&s!=="pending_bytes"&&s!=="resident_runtimes")return null;t={code:o,retryable:n.retryable,...s===void 0?{}:{resource:s}}}return{phase:"retry_scheduled",kind:"pending_input",attempt:e.attempt,maxAttempts:e.maxAttempts,...e.delayMs===void 0?{}:{delayMs:e.delayMs},...e.nextRetryAt===void 0?{}:{nextRetryAt:e.nextRetryAt},...t?{failure:t}:{}}},Xt=(e,t,n)=>{if(!(e.kind!=="pending_input"||!q(e.attempt)||!q(e.maxAttempts)||e.attempt>e.maxAttempts)){if(e.phase==="retry_scheduled"){const o=zt(e);o&&n({pendingResume:o,agentPhase:"running"});return}if(!(e.phase!=="recovered"&&e.phase!=="failed"&&e.phase!=="exhausted")&&!(e.delayMs!==void 0&&!F(e.delayMs)||e.nextRetryAt!==void 0&&!F(e.nextRetryAt))){if(e.failure!==void 0){if(!e.failure||typeof e.failure!="object"||Array.isArray(e.failure))return;const o=e.failure;if(!X(o.code)||typeof o.retryable!="boolean"||o.resource!==void 0&&o.resource!=="pending_count"&&o.resource!=="pending_bytes"&&o.resource!=="resident_runtimes")return}n({pendingResume:null})}}},Zt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",providerStall:e.phase==="detected"?e:null})},en=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",actionStationarity:e.phase==="recovered"?null:e})},tn=(e,t,n)=>{const{currentSessionId:o,setQuestion:s}=t();if(e.sessionId!==o)return;const r=e.requestId||e.toolCallId||"",i=v(t,n,r?`assistant-question-${r}`:void 0);i&&(s(i,{toolCallId:r,questions:e.questions,status:"pending"}),n(a=>({agentPhase:"waiting_permission",isStreaming:!0,sessions:a.sessions.map(u=>u.sessionId===e.sessionId&&u.projectPath===e.projectPath?{...u,pendingInteraction:{type:"question",requestId:r}}:u)})))},nn=(e,t,n)=>{const{currentSessionId:o,setElicitation:s}=t();if(e.sessionId!==o)return;const r=e.requestId||e.toolCallId||"",i=v(t,n,r?`assistant-elicitation-${r}`:void 0),a=e.elicitation;!i||!a||(s(i,{toolCallId:r,details:a,status:"pending"}),n(u=>({agentPhase:"waiting_permission",isStreaming:!0,sessions:u.sessions.map(d=>d.sessionId===e.sessionId&&d.projectPath===e.projectPath?{...d,pendingInteraction:{type:"elicitation",requestId:r}}:d)})))},sn=(e,t,n)=>{const{currentSessionId:o}=t();if(e.sessionId!==o)return;const s=e.requestId;n(r=>({agentPhase:"running",sessions:r.sessions.map(i=>{var a;return i.sessionId===e.sessionId&&i.projectPath===e.projectPath&&((a=i.pendingInteraction)==null?void 0:a.requestId)===s?{...i,pendingInteraction:void 0}:i})}))},ne=(e,t)=>{const n=t().currentSessionRef;n&&e.sessionId===n.sessionId&&e.projectPath===n.projectPath&&t().resyncSessionMessages(n)},on=(e,t)=>{const{currentSessionId:n,currentSessionRef:o,endAgentResponse:s}=t();e.sessionId!==n||!o||e.projectPath!==o.projectPath||(s(),ne(e,t))},Se=(e,t)=>{const n=t().currentSessionRef;!n||e.sessionId!==n.sessionId||e.projectPath!==n.projectPath||t().endAgentResponse()},an=(e,t,n)=>{const{currentSessionId:o,currentSessionRef:s,endAgentResponse:r}=t();if(e.sessionId!==o)return;const i=e.taskFailure&&typeof e.taskFailure=="object"&&!Array.isArray(e.taskFailure)?e.taskFailure:void 0,a=X(i==null?void 0:i.code);n({agentPhase:"error",error:e.error||"An error occurred",errorContext:{kind:"execution",...s?{sessionRef:s}:{},...a?{failureCode:a}:{}}}),r(),ne(e,t)},rn=(e,t,n)=>{const{currentSessionId:o}=t();if(e.sessionId===o)if(e.status==="idle")n({isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,pendingResume:null,providerStall:null,actionStationarity:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0}),ne(e,t);else if(e.status==="queued"||e.status==="running"||e.status==="waiting_permission"){const s=typeof e.queued=="number"?Math.max(0,e.queued):0;n({isStreaming:!0,agentPhase:e.status==="waiting_permission"?"waiting_permission":"running",currentRunId:typeof e.runId=="string"?e.runId:t().currentRunId,pendingSteeringCount:s,pendingInputDelivery:s>0&&(e.pendingInputDelivery==="current_turn"||e.pendingInputDelivery==="next_turn")?e.pendingInputDelivery:null,recoveredSteeringCount:typeof e.recovered=="number"?Math.max(0,e.recovered):t().recoveredSteeringCount})}else e.status==="error"&&n({isStreaming:!1,isStopping:!1,agentPhase:"error",providerAdmission:null,providerCircuit:null,providerRetry:null,pendingResume:null,providerStall:null,actionStationarity:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null})},un=(e,t,n)=>{const{currentSessionId:o,endAgentResponse:s,messages:r,updateSubagent:i}=t();if(e.sessionId===o){n(a=>({isStreaming:!1,agentPhase:"idle",pendingResume:null,messages:a.messages.map(u=>{var c;const d=(c=u.agentContent)==null?void 0:c.elicitation;return(d==null?void 0:d.status)!=="pending"||!u.agentContent?u:{...u,agentContent:{...u.agentContent,elicitation:{...d,status:"cancelled"}}}})}));for(const a of r)for(const u of R(a.agentContent))u.status==="running"&&i(a.id,u.id,{status:"failed"});s()}},Me=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({pendingSteeringCount:typeof e.queued=="number"?Math.max(0,e.queued):1,pendingInputDelivery:"current_turn"})},_e=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({pendingSteeringCount:typeof e.queued=="number"?Math.max(0,e.queued):1,pendingInputDelivery:"next_turn"})},dn=(e,t,n)=>{if(typeof e.childSessionId=="string"){const o={...e,subagentSessionId:e.childSessionId,success:e.status==="completed"};C(t().messages,e.childSessionId,t().currentAssistantMessageId)?te(o,t):at(e.childSessionId,o,n)}e.delivery==="current_turn"?Me(e,t,n):_e(e,t,n)},ln=(e,t,n)=>{if(e.sessionId!==t().currentSessionId)return;const o=typeof e.queued=="number"?Math.max(0,e.queued):0;n({pendingSteeringCount:o,pendingInputDelivery:o>0?t().pendingInputDelivery:null,recoveredSteeringCount:typeof e.recovered=="number"?Math.max(0,e.recovered):t().recoveredSteeringCount})},cn=(e,t,n)=>{if(e.sessionId!==t().currentSessionId)return;const o=typeof e.queued=="number"?Math.max(0,e.queued):0;n({agentPhase:"running",pendingSteeringCount:o,pendingInputDelivery:o>0?"current_turn":null,recoveredSteeringCount:typeof e.recovered=="number"?Math.max(0,e.recovered):t().recoveredSteeringCount})},gn=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({goal:e.goal??null})},mn=(e,t,n)=>{if(e.sessionId!==t().currentSessionId)return;const o=t().goal;!o||o.goalId!==e.goalId||n({goal:{...o,executionFrontier:e.frontier,frontierStall:e.stall}})},fn=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({goal:null})},In=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({goal:e.goal??t().goal,isStreaming:!0,agentPhase:"running"})},Sn=(e,t,n)=>{if(e.sessionId!==t().currentSessionId||!Array.isArray(e.messages))return;const o=Date.now(),s=e.messages.flatMap((r,i)=>{if(typeof r!="object"||r===null)return[];const a=r;return!["user","assistant","system","tool"].includes(String(a.role))||!Array.isArray(a.content)&&typeof a.content!="string"?[]:[{id:`rewind-${i}-${o}`,role:a.role,content:a.content,timestamp:o+i,metadata:typeof a.metadata=="object"&&a.metadata!==null?a.metadata:void 0,thinkingContent:typeof a.thinkingContent=="string"?a.thinkingContent:typeof a.reasoningContent=="string"?a.reasoningContent:void 0,tool_call_id:typeof a.tool_call_id=="string"?a.tool_call_id:void 0,name:typeof a.name=="string"?a.name:void 0,tool_calls:a.tool_calls}]});n({messages:Je(s),isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,pendingResume:null,providerStall:null,actionStationarity:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,currentAssistantMessageId:null,hasToolCalls:!1})},yn=(e,t,n)=>{const o=t().currentSessionRef;if(!o||e.sessionId!==o.sessionId||e.projectPath!==o.projectPath)return;const s=e.status,r=s==="completed"||s==="stale"?"completed":s==="aborted"?"cancelled":s==="interrupted"?"interrupted":"failed";n(i=>({sessions:i.sessions.map(a=>a.sessionId===o.sessionId&&a.projectPath===o.projectPath?{...a,taskStatus:r,taskStatusReason:void 0,taskFailure:void 0,taskCompletedAt:new Date().toISOString()}:a)})),t().selectSession(o)},hn=(e,t,n)=>{Re({...e,messageId:`review-${String(e.reviewId??"active")}`,arguments:"{}"},t,n)},bn=(e,t,n)=>{Ne(e,t)},Cn=(e,t,n)=>{$e(e,t,n)},vn=(e,t)=>{const n=t().currentSessionRef;n&&queueMicrotask(()=>void t().loadTeams(n))},O={"message.created":rt,"message.delta":ut,"message.complete":dt,"structured.output":lt,"thinking.delta":ct,"thinking.completed":gt,"tool.start":Re,"tool.progress":Ne,"tool.result":$e,"mcp.catalog.changed":mt,"mcp.content.changed":ft,"mcp.resource.updated":It,"mcp.connection.changed":St,"mcp.log":yt,"mcp.instructions.changed":ht,"mcp.task.changed":bt,"project.rules.loaded":Ct,"user.shell.started":vt,"user.shell.output":At,"user.shell.completed":kt,"token.usage":Tt,"task.updated":wt,"subagent.start":Rt,"subagent.update":Pt,"subagent.delta":Nt,"subagent.thinking.delta":$t,"subagent.tool.start":Mt,"subagent.tool.progress":xt,"subagent.tool.result":_t,"subagent.mcp.catalog.changed":jt,"subagent.mcp.content.changed":Dt,"subagent.mcp.resource.updated":Ot,"subagent.mcp.connection.changed":Ft,"subagent.mcp.log":qt,"subagent.mcp.instructions.changed":Et,"subagent.mcp.task.changed":Bt,"subagent.project.rules.loaded":Vt,"subagent.complete":te,"subagent.completion.queued":dn,"permission.asked":pt,"permission.timeout":Kt,"turn.started":Ie,"turn.recovery":Jt,"committed.turn_started":Ie,"committed.turn_completed":Se,"committed.turn_aborted":Se,"provider.admission":Gt,"provider.circuit":Qt,"provider.retry":Yt,"pending.resume":Xt,"provider.stall":Zt,"action.stationarity":en,"compaction.started":Wt,"compaction.completed":Lt,"model.fallback":Ht,"question.required":tn,"elicitation.required":nn,"interaction.resolved":sn,"session.completed":on,"session.error":an,"session.status":rn,"run.cancelled":un,"steering.queued":Me,"follow_up.queued":_e,"follow_up.started":cn,"steering.applied":ln,"goal.updated":gn,"goal.frontier.updated":mn,"goal.cleared":fn,"goal.continuation.started":In,"session.rewound":Sn,"review.tool.started":hn,"review.tool.progress":bn,"review.tool.completed":Cn,"review.completed":yn},An=new Set(["message.complete","thinking.completed","session.completed","session.error","run.cancelled","committed.turn_completed","committed.turn_aborted"]);function kn(e,t){if(e.seq!==void 0||e.type!=="tool.start"&&e.type!=="tool.result")return;const n=t().currentSessionRef,o=e.properties.toolName,s=e.properties.toolCallId;if(!n||!tt(o)||typeof s!="string")return;const r=nt.getState();e.type==="tool.start"?r.beginAgentActivity(n,{toolCallId:s,toolName:o,argumentsValue:e.properties.arguments}):r.completeAgentActivity(n,{toolCallId:s,toolName:o,success:e.properties.success===!0||e.properties.status==="completed",metadata:e.properties.metadata}),Ye.getState().openFilePreview({tab:"browser"})}const Nn=(e,t)=>n=>{const o=e().currentSessionRef,s=n.properties;if(!o||s.sessionId!==o.sessionId||s.projectPath!==o.projectPath)return;if(kn(n,e),n.type.startsWith("team.")){vn(s,e);return}if(An.has(n.type)){w.drainAll();const i=O[n.type];i&&i(n.properties,e,t);return}if(n.type==="tool.start"&&w.drainAll(),n.type==="message.delta"){const{currentSessionId:i,currentAssistantMessageId:a,hasToolCalls:u}=e();if(s.sessionId!==i)return;const d=s.messageId||a,c=s.delta;if(!a){const f=O["message.delta"];f&&f(s,e,t);return}const l=u?"after":"before",g=`content:${d}:${l}`;w.drainAllExcept(g),w.append(g,c,f=>{const{appendDelta:m}=e();d&&m(d,f,l)});return}if(n.type==="thinking.delta"){const{currentSessionId:i,currentAssistantMessageId:a}=e();if(s.sessionId!==i)return;if(!a){const l=O["thinking.delta"];l&&l(s,e,t);return}const u=s.delta,d=s.messageId||a,c=`thinking:${d}`;w.drainAllExcept(c),w.append(c,u,l=>{const{appendThinking:g}=e();d&&g(d,l)});return}if(n.type==="subagent.delta"){const{currentSessionId:i}=e();if(s.sessionId!==i)return;const a=s.delta;if(!a)return;const u=s.subagentSessionId||"",d=`subagent:${u}`,{currentAssistantMessageId:c,messages:l}=e(),g=C(l,u||void 0,c);w.append(d,a,f=>{const{currentAssistantMessageId:m,messages:S,updateSubagent:h}=e(),y=g||C(S,u||void 0,m);y&&h(y.messageId,y.subagent.id,I=>({sessionId:I.sessionId||u,output:(I.output||"")+f}))});return}if(n.type==="subagent.thinking.delta"){const{currentSessionId:i}=e();if(s.sessionId!==i)return;const a=s.delta;if(!a)return;const u=s.subagentSessionId||"",d=`subagent-thinking:${u}`,{currentAssistantMessageId:c,messages:l}=e(),g=C(l,u||void 0,c);w.append(d,a,f=>{const{currentAssistantMessageId:m,messages:S,updateSubagent:h}=e(),y=g||C(S,u||void 0,m);y&&h(y.messageId,y.subagent.id,I=>({sessionId:I.sessionId||u,thinking:(I.thinking||"")+f}))});return}const r=O[n.type];r&&r(n.properties,e,t)};export{Ee as a,me as b,N as c,qe as d,ye as e,Je as f,R as g,Nn as h,w as i,X as j,Pn as k,Ye as l,Be as m,E as n,nt as o,Rn as t,he as u,H as w};
@@ -1 +1 @@
1
- import{at as e,au as t,av as a,a3 as s,aw as m}from"./index-DQL9otjm.js";import"./vendor-react-DofNRwfy.js";import"./vendor-radix-Bc1_Q9tz.js";import"./session-events-BuugneNw.js";const p=e(t.Object({id:t.String(),name:t.String(),subagentType:t.String(),description:t.String(),agentId:t.Optional(t.String()),status:a(["leader","running","completed","failed","cancelled","unknown"]),result:t.Optional(t.Unknown()),stats:t.Optional(t.Unknown()),worktreePath:t.Optional(t.String())})),d=e(t.Object({id:t.String(),subject:t.String(),description:t.String(),status:a(["pending","blocked","running","completed"]),owner:t.Optional(t.String()),priority:a(["high","medium","low"]),dependsOn:t.Array(t.String()),blocks:t.Array(t.String()),result:t.Optional(t.String()),createdAt:t.String(),startedAt:t.Optional(t.String()),completedAt:t.Optional(t.String())})),o=e(t.Object({name:t.String(),description:t.Optional(t.String()),status:a(["idle","running","completed","failed","deleted"]),leadAgentId:t.String(),leadSessionId:t.Optional(t.String()),workspaceRoot:t.Optional(t.String()),peerMessagingEnabled:t.Boolean(),createdAt:t.Number(),updatedAt:t.Number(),deletedAt:t.Optional(t.Number()),members:t.Array(p),tasks:t.Array(d)}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),name:t.String({minLength:1}),description:t.Optional(t.String()),leadAgentType:t.Optional(t.String()),peerMessagingEnabled:t.Optional(t.Boolean()),members:t.Array(t.Object({name:t.String({minLength:1}),subagentType:t.String({minLength:1}),description:t.Optional(t.String()),prompt:t.String({minLength:10,maxLength:32*1024})}),{maxItems:32}),tasks:t.Optional(t.Array(t.Object({subject:t.String({minLength:1}),description:t.String({minLength:1}),dependsOn:t.Optional(t.Array(t.String())),assignedTo:t.Optional(t.String()),priority:t.Optional(a(["high","medium","low"]))}),{maxItems:256}))}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),to:t.String({minLength:1}),message:t.String({minLength:1,maxLength:32*1024})}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),memberId:t.String({minLength:1})}));const S=t.Array(o),u={list:async n=>{const i=new URLSearchParams({sessionId:n.sessionId,projectPath:n.projectPath});return m(S,await s(`/teams?${i.toString()}`))},sendMessage:async(n,i,r,g)=>{await s(`/teams/${encodeURIComponent(i)}/messages`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:n.sessionId,projectPath:n.projectPath,to:r,message:g})})},delete:async(n,i)=>{const r=new URLSearchParams({sessionId:n.sessionId,projectPath:n.projectPath});return o.parse(await s(`/teams/${encodeURIComponent(i)}?${r.toString()}`,{method:"DELETE"}))}};export{u as teamService};
1
+ import{at as e,au as t,av as a,a3 as s,aw as m}from"./index-DaiT-mmo.js";import"./vendor-react-DofNRwfy.js";import"./vendor-radix-Bc1_Q9tz.js";import"./session-events-CWzF04l4.js";const p=e(t.Object({id:t.String(),name:t.String(),subagentType:t.String(),description:t.String(),agentId:t.Optional(t.String()),status:a(["leader","running","completed","failed","cancelled","unknown"]),result:t.Optional(t.Unknown()),stats:t.Optional(t.Unknown()),worktreePath:t.Optional(t.String())})),d=e(t.Object({id:t.String(),subject:t.String(),description:t.String(),status:a(["pending","blocked","running","completed"]),owner:t.Optional(t.String()),priority:a(["high","medium","low"]),dependsOn:t.Array(t.String()),blocks:t.Array(t.String()),result:t.Optional(t.String()),createdAt:t.String(),startedAt:t.Optional(t.String()),completedAt:t.Optional(t.String())})),o=e(t.Object({name:t.String(),description:t.Optional(t.String()),status:a(["idle","running","completed","failed","deleted"]),leadAgentId:t.String(),leadSessionId:t.Optional(t.String()),workspaceRoot:t.Optional(t.String()),peerMessagingEnabled:t.Boolean(),createdAt:t.Number(),updatedAt:t.Number(),deletedAt:t.Optional(t.Number()),members:t.Array(p),tasks:t.Array(d)}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),name:t.String({minLength:1}),description:t.Optional(t.String()),leadAgentType:t.Optional(t.String()),peerMessagingEnabled:t.Optional(t.Boolean()),members:t.Array(t.Object({name:t.String({minLength:1}),subagentType:t.String({minLength:1}),description:t.Optional(t.String()),prompt:t.String({minLength:10,maxLength:32*1024})}),{maxItems:32}),tasks:t.Optional(t.Array(t.Object({subject:t.String({minLength:1}),description:t.String({minLength:1}),dependsOn:t.Optional(t.Array(t.String())),assignedTo:t.Optional(t.String()),priority:t.Optional(a(["high","medium","low"]))}),{maxItems:256}))}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),to:t.String({minLength:1}),message:t.String({minLength:1,maxLength:32*1024})}));e(t.Object({sessionId:t.String({minLength:1}),projectPath:t.String({minLength:1}),memberId:t.String({minLength:1})}));const S=t.Array(o),u={list:async n=>{const i=new URLSearchParams({sessionId:n.sessionId,projectPath:n.projectPath});return m(S,await s(`/teams?${i.toString()}`))},sendMessage:async(n,i,r,g)=>{await s(`/teams/${encodeURIComponent(i)}/messages`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:n.sessionId,projectPath:n.projectPath,to:r,message:g})})},delete:async(n,i)=>{const r=new URLSearchParams({sessionId:n.sessionId,projectPath:n.projectPath});return o.parse(await s(`/teams/${encodeURIComponent(i)}?${r.toString()}`,{method:"DELETE"}))}};export{u as teamService};
@@ -5,7 +5,7 @@
5
5
  <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
6
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
7
  <title>BladeCode</title>
8
- <script type="module" crossorigin src="/assets/index-DQL9otjm.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-DaiT-mmo.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/vendor-react-DofNRwfy.js">
10
10
  <link rel="modulepreload" crossorigin href="/assets/vendor-radix-Bc1_Q9tz.js">
11
11
  <link rel="stylesheet" crossorigin href="/assets/index-DGf6Z2kM.css">
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blade-code",
3
- "version": "0.10.109",
3
+ "version": "0.10.111",
4
4
  "private": false,
5
5
  "description": "🗡️ Blade Code - 智能代码助手命令行工具",
6
6
  "type": "module",
@@ -1 +0,0 @@
1
- import{re as a,se as b}from"./chunk-z38a3vvk.js";import"./chunk-hwzwjfvc.js";import"./chunk-tf7ezqew.js";export{a as globalOptions,b as cliConfig};
@@ -1 +0,0 @@
1
- import{h as a,i as b,j as c,k as d,l as e}from"./chunk-18metkce.js";import"./chunk-hwzwjfvc.js";import"./chunk-tf7ezqew.js";export{b as setSkipUntilVersion,d as performUpgrade,c as getUpgradeCommand,e as checkVersionOnStartup,a as checkVersion};
@@ -1,22 +0,0 @@
1
- var Re=Object.defineProperty;var Me=(e,t,n)=>t in e?Re(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var K=(e,t,n)=>Me(e,typeof t!="symbol"?t+"":t,n);import{R as D}from"./vendor-react-DofNRwfy.js";const ue=e=>{let t;const n=new Set,a=(d,c)=>{const l=typeof d=="function"?d(t):d;if(!Object.is(l,t)){const g=t;t=c??(typeof l!="object"||l===null)?l:Object.assign({},t,l),n.forEach(f=>f(t,g))}},s=()=>t,o={setState:a,getState:s,getInitialState:()=>u,subscribe:d=>(n.add(d),()=>n.delete(d))},u=t=e(a,s,o);return o},_e=e=>e?ue(e):ue,xe=e=>e;function je(e,t=xe){const n=D.useSyncExternalStore(e.subscribe,D.useCallback(()=>t(e.getState()),[e,t]),D.useCallback(()=>t(e.getInitialState()),[e,t]));return D.useDebugValue(n),n}const de=e=>{const t=_e(e),n=a=>je(t,a);return Object.assign(n,t),n},fe=e=>e?de(e):de;function $(){return{timeline:[],textBefore:"",toolCalls:[],textAfter:"",thinkingContent:"",tasks:[],subagent:null,subagents:[],confirmation:null,question:null,elicitation:null}}function P(e){return e?e.subagents&&e.subagents.length>0?e.subagents:e.subagent?[e.subagent]:[]:[]}function W(e,t,n){const a=(n?t.find(s=>s.id===n||s.sessionId===n):void 0)??t[t.length-1]??null;return{...e,subagents:t,subagent:a}}function Ie(e,t){const n=[...P(e)];let a=n.findIndex(i=>i.id===t.id||!!(i.sessionId&&t.sessionId&&i.sessionId===t.sessionId));if(a===-1&&t.sessionId&&(a=n.findIndex(i=>!i.sessionId&&i.status==="running"&&i.type===t.type&&i.description===t.description)),a===-1)return n.push(t),W(e,n,t.id);const s=n[a],r={...s,...t,id:s.id};return n[a]=r,W(e,n,r.id)}function G(e,t){return`${t}-${e.length}`}function De(e,t){if(!t)return e;const n=[...p(e)],a=n[n.length-1];return(a==null?void 0:a.type)==="text"?n[n.length-1]={...a,content:a.content+t}:n.push({id:G(n,"text"),type:"text",content:t}),{...e,timeline:n}}function Oe(e,t){if(!t)return e;const n=[...p(e)],a=n[n.length-1];return(a==null?void 0:a.type)==="thinking"?n[n.length-1]={...a,content:a.content+t}:n.push({id:G(n,"thinking"),type:"thinking",content:t}),{...e,timeline:n}}function le(e,t){const n=e.toolCalls.some(i=>i.toolCallId===t.toolCallId),a=n?e.toolCalls:[...e.toolCalls,t];if(n)return{...e,toolCalls:a};const s=[...p(e)],r=s[s.length-1];return(r==null?void 0:r.type)==="tool_group"?s[s.length-1]={...r,toolCallIds:[...r.toolCallIds,t.toolCallId]}:s.push({id:G(s,"tool_group"),type:"tool_group",toolCallIds:[t.toolCallId]}),{...e,timeline:s,toolCalls:a}}function p(e){if(e.timeline&&e.timeline.length>0)return e.timeline;const t=[];return e.thinkingContent&&t.push({id:"legacy-thinking",type:"thinking",content:e.thinkingContent}),e.textBefore&&t.push({id:"legacy-text-before",type:"text",content:e.textBefore}),e.toolCalls.length>0&&t.push({id:"legacy-tool-group",type:"tool_group",toolCallIds:e.toolCalls.map(n=>n.toolCallId)}),e.textAfter&&t.push({id:"legacy-text-after",type:"text",content:e.textAfter}),t}function pe(e){return p(e).filter(t=>t.type==="text").map(t=>t.content).filter(Boolean).join(`
2
-
3
- `)}const Fe=2166136261,qe=16777619;function L(e){return e==null?"":typeof e=="string"?e:typeof e=="number"||typeof e=="boolean"?String(e):Array.isArray(e)?`[${e.map(t=>L(t)).join(",")}]`:typeof e=="object"?`{${Object.entries(e).sort(([n],[a])=>n.localeCompare(a)).map(([n,a])=>`${JSON.stringify(n)}:${L(a)}`).join(",")}}`:JSON.stringify(e)}function Se(e){let t=Fe>>>0;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,qe);return(t>>>0).toString(16)}function he(e){return typeof e=="string"?e:L(e??{})}function Q(e){return e==="completed"?"completed":e==="failed"||e==="cancelled"?"failed":"running"}function H({explicitId:e,messageId:t,toolName:n,argumentsValue:a,toolKind:s,output:r}){if(e)return e;const i=[t||"unknown-message",n||"Unknown",he(a),s||"",r||""].join("|");return`tool-${Se(i)}`}function F({explicitId:e,sessionId:t,messageId:n,agentType:a,description:s,summary:r}){if(e)return e;if(t)return t;const i=[n||"unknown-message",a||"subagent",s||"",r||""].join("|");return`subagent-${Se(i)}`}const Ee=(e,t)=>{if(!t||typeof t!="object")return null;const n=Q(t.status),a=typeof t.summary=="string"?t.summary:void 0;return{id:F({explicitId:typeof t.subagentId=="string"?t.subagentId:void 0,sessionId:t.childSessionId,messageId:e,agentType:t.agentType,description:t.description,summary:t.summary}),type:t.agentType||"subagent",description:t.description||t.summary||"",status:n,startTime:Date.now(),sessionId:t.childSessionId,resumedFrom:t.resumedFrom,rootAgentId:t.rootAgentId,resumeDepth:typeof t.resumeDepth=="number"?t.resumeDepth:void 0,verificationVerdict:t.verificationVerdict==="pass"||t.verificationVerdict==="fail"||t.verificationVerdict==="partial"?t.verificationVerdict:void 0,output:n==="running"?void 0:a}},Be=(e,t)=>!t||typeof t!="object"?[]:(Array.isArray(t.subtaskRefs)?t.subtaskRefs:t.subtaskRef&&typeof t.subtaskRef=="object"?[t.subtaskRef]:[]).map(a=>Ee(e,a)).filter(a=>a!==null);function _(e){return typeof e=="string"?e:e.filter(t=>t.type==="text").map(t=>t.text).join(`
4
- `)}function U(e){if(!e.agentContent)return e;let t=e.agentContent;for(const n of Be(e.id,e.metadata))t=Ie(t,n);return{...e,agentContent:t}}function Ve(e){var a,s,r;const t=[];let n=null;for(const i of e)if(i.role!=="system"){if(i.role==="user")n&&(t.push(U(n)),n=null),t.push({id:i.id,role:i.role,content:i.content,timestamp:i.timestamp||Date.now(),metadata:i.metadata});else if(i.role==="assistant"){n&&t.push(U(n));const o=i.metadata;let u=$();i.thinkingContent&&(u=Oe(u,i.thinkingContent),u.thinkingContent=i.thinkingContent);const d=_(i.content);if(d&&(u=De(u,d),u.textBefore=d),i.tool_calls&&Array.isArray(i.tool_calls))for(const c of i.tool_calls){const l=((a=c.function)==null?void 0:a.name)||"Unknown",g=he((s=c.function)==null?void 0:s.arguments);if(l==="Task"){let m={};try{m=JSON.parse(g)}catch{}const S=typeof m.subagent_type=="string"?m.subagent_type:"subagent",y=typeof m.description=="string"?m.description:S;u=Ie(u,{id:F({explicitId:c.id,sessionId:typeof m.subagent_session_id=="string"?m.subagent_session_id:void 0,messageId:i.id,agentType:S,description:y}),type:S,description:y,status:"running",startTime:Date.now(),sessionId:typeof m.subagent_session_id=="string"?m.subagent_session_id:void 0,resumedFrom:typeof m.resume_from=="string"?m.resume_from:typeof m.resume=="string"?m.resume:void 0});continue}const f={toolCallId:H({explicitId:c.id,messageId:i.id,toolName:l,argumentsValue:(r=c.function)==null?void 0:r.arguments}),toolName:l,arguments:g,status:"running",startTime:Date.now()};u=le(u,f)}n={id:i.id,role:"assistant",content:_(i.content),timestamp:i.timestamp||Date.now(),metadata:o,agentContent:u}}else if(i.role==="tool"&&n&&n.agentContent){const o=i,u=i.metadata,d=o.tool_call_id||(u==null?void 0:u.toolCallId),c=o.name||(u==null?void 0:u.toolName)||"Tool",l=u!=null&&u.metadata&&typeof u.metadata=="object"&&!Array.isArray(u.metadata)?u.metadata:u,g=u!=null&&u.independentVerification&&typeof u.independentVerification=="object"&&!Array.isArray(u.independentVerification)?u.independentVerification:void 0,f=(u==null?void 0:u.status)==="failed"||(u==null?void 0:u.status)==="error"||typeof(u==null?void 0:u.error)=="string"&&u.error.length>0,m=P(n.agentContent),S=m.findIndex(h=>h.id===d);if(S>=0){const h=m[S],I=typeof(l==null?void 0:l.subagentStatus)=="string"?Q(l.subagentStatus):f?"failed":"completed";m[S]={...h,sessionId:typeof(l==null?void 0:l.subagentSessionId)=="string"?l.subagentSessionId:h.sessionId,type:typeof(l==null?void 0:l.subagentType)=="string"?l.subagentType:h.type,status:I,resumedFrom:typeof(l==null?void 0:l.subagentResumedFrom)=="string"?l.subagentResumedFrom:h.resumedFrom,rootAgentId:typeof(l==null?void 0:l.subagentRootId)=="string"?l.subagentRootId:h.rootAgentId,resumeDepth:typeof(l==null?void 0:l.subagentResumeDepth)=="number"?l.subagentResumeDepth:h.resumeDepth,verificationVerdict:(l==null?void 0:l.verificationVerdict)==="pass"||(l==null?void 0:l.verificationVerdict)==="fail"||(l==null?void 0:l.verificationVerdict)==="partial"?l.verificationVerdict:(g==null?void 0:g.verificationVerdict)==="pass"||(g==null?void 0:g.verificationVerdict)==="fail"||(g==null?void 0:g.verificationVerdict)==="partial"?g.verificationVerdict:h.verificationVerdict,output:typeof(l==null?void 0:l.subagentSummary)=="string"?l.subagentSummary:_(i.content)||h.output},n.agentContent=W(n.agentContent,m,h.id);continue}const y=n.agentContent.toolCalls.find(h=>h.toolCallId===d);y?(y.output=_(i.content),y.status=f?"error":"success",y.metadata=l,y.summary=typeof(l==null?void 0:l.summary)=="string"?l.summary:y.summary,(!y.toolName||y.toolName==="Unknown")&&(y.toolName=c)):n.agentContent=le(n.agentContent,{toolCallId:H({explicitId:d,messageId:n.id,toolName:c,output:_(i.content)}),toolName:c,output:_(i.content),status:f?"error":"success",startTime:Date.now(),metadata:l,summary:typeof(l==null?void 0:l.summary)=="string"?l.summary:void 0})}}return n&&t.push(U(n)),t}const ye={authentication:"task.failure.authentication",permission:"task.failure.permission",rate_limit:"task.failure.rateLimit",timeout:"task.failure.timeout",network:"task.failure.network",model_unavailable:"task.failure.modelUnavailable",context_limit:"task.failure.contextLimit",unsupported_input:"task.failure.unsupportedInput",workspace_unavailable:"task.failure.workspaceUnavailable",capacity:"task.failure.capacity",runtime:"task.failure.runtime"},Ke={authentication:!1,permission:!1,rate_limit:!0,timeout:!0,network:!0,model_unavailable:!0,context_limit:!1,unsupported_input:!1,workspace_unavailable:!1,capacity:!0,runtime:!0};function Ue(e){if(typeof e=="string"&&Object.keys(ye).includes(e))return e}function An(e){return ye[e]}function kn(e){return Ke[e]}const be="blade.sidebar.view",Ce="blade.preview.width",J=640,Je=360,We=960,Le=()=>{if(typeof localStorage>"u")return"project";const e=localStorage.getItem(be);return e==="status"||e==="project"?e:"project"},ve=e=>Math.min(We,Math.max(Je,Math.round(e))),He=()=>{if(typeof localStorage>"u")return J;const e=localStorage.getItem(Ce);if(!e)return J;const t=Number(e);return Number.isFinite(t)?ve(t):J},Ge=fe(e=>({mainView:"workspace",setMainView:t=>e(n=>({mainView:t,isSettingsOpen:!1,isFilePreviewOpen:t==="board"?!1:n.isFilePreviewOpen})),boardProjectPath:null,setBoardProjectPath:t=>e({boardProjectPath:t}),isSidebarOpen:!0,toggleSidebar:()=>e(t=>({isSidebarOpen:!t.isSidebarOpen})),setSidebarOpen:t=>e({isSidebarOpen:t}),sidebarView:Le(),setSidebarView:t=>{typeof localStorage<"u"&&localStorage.setItem(be,t),e({sidebarView:t})},isFilePreviewOpen:!1,toggleFilePreview:()=>e(t=>({isFilePreviewOpen:!t.isFilePreviewOpen})),setFilePreviewOpen:t=>e({isFilePreviewOpen:t}),previewWidth:He(),setPreviewWidth:t=>{const n=ve(t);typeof localStorage<"u"&&localStorage.setItem(Ce,String(n)),e({previewWidth:n})},previewTab:"diff",setPreviewTab:t=>e({previewTab:t}),previewTargetPath:null,previewRequestId:0,openFilePreview:t=>e(n=>({isFilePreviewOpen:!0,previewTab:(t==null?void 0:t.tab)??n.previewTab,previewTargetPath:(t==null?void 0:t.targetPath)??null,previewRequestId:n.previewRequestId+1})),isSettingsOpen:!1,settingsSection:"general",toggleSettings:()=>e(t=>({isSettingsOpen:!t.isSettingsOpen,...t.isSettingsOpen?{}:{settingsSection:"general"}})),openSettings:(t="general")=>e({isSettingsOpen:!0,settingsSection:t}),isTerminalOpen:!1,toggleTerminal:()=>e(t=>({isTerminalOpen:!t.isTerminalOpen})),isTaskSwitcherOpen:!1,taskSwitcherMode:"tasks",setTaskSwitcherOpen:(t,n)=>e(a=>({isTaskSwitcherOpen:t,taskSwitcherMode:n??a.taskSwitcherMode})),setTaskSwitcherMode:t=>e({taskSwitcherMode:t})})),Qe=new Set(["BrowserNavigate","BrowserSnapshot","BrowserInteract","BrowserWait","BrowserInspect","BrowserPage"]),Ye=new Set(["click","click_at","hover","fill","type","press","select","check","uncheck","scroll"]);function ce(e,t){return(e==null?void 0:e.sessionId)===t.sessionId&&e.projectPath===t.projectPath}function N(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function Ae(e){return typeof e=="string"&&Ye.has(e)?e:void 0}function ze(e){const t=N(e),n=Ae(t==null?void 0:t.action);if(!t||!n)return;const a=N(t.viewport),s=N(t.targetBox),r=i=>typeof i=="number"&&Number.isFinite(i);return{action:n,...typeof t.ref=="string"?{ref:t.ref}:{},...a&&r(a.width)&&r(a.height)?{viewport:{width:a.width,height:a.height}}:{},...s&&r(s.x)&&r(s.y)&&r(s.width)&&r(s.height)?{targetBox:{x:s.x,y:s.y,width:s.width,height:s.height}}:{}}}function Xe(e){if(typeof e!="string")return N(e);try{return N(JSON.parse(e))}catch{return}}function Ze(e){return typeof e=="string"&&Qe.has(e)}const et=fe(e=>({agentActivity:null,beginAgentActivity:(t,n)=>e(a=>{var o,u;const s=ce((o=a.agentActivity)==null?void 0:o.sessionRef,t)?a.agentActivity:null,r=Xe(n.argumentsValue),i=n.toolName==="BrowserInteract"?Ae((u=N(r==null?void 0:r.action))==null?void 0:u.kind):void 0;return{agentActivity:{sessionRef:t,toolCallId:n.toolCallId,toolName:n.toolName,phase:"running",revision:((s==null?void 0:s.revision)??0)+1,frameRevision:(s==null?void 0:s.frameRevision)??0,pointerRevision:(s==null?void 0:s.pointerRevision)??0,...s!=null&&s.pageId?{pageId:s.pageId}:{},...s!=null&&s.origin?{origin:s.origin}:{},...s!=null&&s.url?{url:s.url}:{},...s!=null&&s.title?{title:s.title}:{},...i?{pendingAction:{action:i,...typeof(r==null?void 0:r.ref)=="string"?{ref:r.ref}:{}}}:{},...n.toolName!=="BrowserNavigate"&&(s!=null&&s.interaction)?{interaction:s.interaction}:{}}}}),completeAgentActivity:(t,n)=>e(a=>{var c,l;const s=ce((c=a.agentActivity)==null?void 0:c.sessionRef,t)?a.agentActivity:null,r=N((l=N(n.metadata))==null?void 0:l.browser),i=ze(r==null?void 0:r.interaction),o=typeof(r==null?void 0:r.pageId)=="string"?r.pageId:s==null?void 0:s.pageId,u=typeof(r==null?void 0:r.origin)=="string"?r.origin:s==null?void 0:s.origin,d=n.toolName!=="BrowserNavigate"&&n.toolName!=="BrowserPage";return{agentActivity:{sessionRef:t,toolCallId:n.toolCallId,toolName:n.toolName,phase:n.success?"ready":"error",revision:((s==null?void 0:s.revision)??0)+1,frameRevision:o&&u?((s==null?void 0:s.frameRevision)??0)+1:(s==null?void 0:s.frameRevision)??0,pointerRevision:i!=null&&i.targetBox?((s==null?void 0:s.pointerRevision)??0)+1:(s==null?void 0:s.pointerRevision)??0,...o?{pageId:o}:{},...u?{origin:u}:{},...typeof(r==null?void 0:r.url)=="string"?{url:r.url}:s!=null&&s.url?{url:s.url}:{},...typeof(r==null?void 0:r.title)=="string"?{title:r.title}:s!=null&&s.title?{title:s.title}:{},...typeof(r==null?void 0:r.errorCode)=="string"?{errorCode:r.errorCode}:{},...i?{interaction:i}:d&&(s!=null&&s.interaction)?{interaction:s.interaction}:{}}}}),clearAgentActivity:()=>e({agentActivity:null})})),tt={flushTimeout:80};class nt{constructor(t){K(this,"config");K(this,"channels",new Map);this.config={...tt,...t}}append(t,n,a){let s=this.channels.get(t);s||(s={buffer:"",timer:null,flushFn:null},this.channels.set(t,s)),s.buffer+=n,s.flushFn=a,s.timer||(s.timer=setTimeout(()=>{this.flushChannel(t)},this.config.flushTimeout))}flushChannel(t){const n=this.channels.get(t);if(!n||!n.buffer)return;const a=n.buffer,s=n.flushFn;n.buffer="",n.timer&&(clearTimeout(n.timer),n.timer=null),s==null||s(a)}drainAll(){for(const[t]of this.channels)this.flushChannel(t);this.channels.clear()}drainAllExcept(t){for(const[n]of this.channels)n!==t&&this.flushChannel(n);for(const[n,a]of this.channels)n!==t&&!a.buffer&&this.channels.delete(n)}reset(){for(const[,t]of this.channels)t.timer&&clearTimeout(t.timer);this.channels.clear()}}const w=new nt,st=100,C=(e,t,n)=>{if(t)for(const a of e){const s=P(a.agentContent).find(r=>r.id===t||r.sessionId===t);if(s)return{messageId:a.id,subagent:s}}if(n){const a=e.find(i=>i.id===n),s=P(a==null?void 0:a.agentContent),r=s.find(i=>i.status==="running")??s[s.length-1];if(r)return{messageId:n,subagent:r}}for(const a of[...e].reverse()){const s=P(a.agentContent),r=s.find(i=>i.status==="running")??s[s.length-1];if(r)return{messageId:a.id,subagent:r}}};function it(e,t,n){n(a=>{const s={...a.pendingSubagentCompletions??{}};if(s[e]===void 0&&Object.keys(s).length>=st){const r=Object.keys(s)[0];r&&delete s[r]}return s[e]={...t},{pendingSubagentCompletions:s}})}function Y(e,t,n){var r;if(!e)return;const a=(r=t().pendingSubagentCompletions)==null?void 0:r[e];!a||!C(t().messages,e,t().currentAssistantMessageId)||(X({...a,subagentSessionId:e,success:a.status==="completed"},t),n(i=>{const o={...i.pendingSubagentCompletions??{}};return delete o[e],{pendingSubagentCompletions:o}}))}const v=(e,t,n,a=!1)=>{const{currentAssistantMessageId:s,messages:r,addMessage:i,startAgentResponse:o}=e();if(n&&a){const l=r.find(f=>f.id===n&&f.role==="assistant");if(l)return o(l.id),l.id;const g={id:n,role:"assistant",content:"",timestamp:Date.now(),agentContent:$()};return i(g),o(n),n}if(s&&!s.startsWith("call_")&&r.some(l=>l.id===s&&l.role==="assistant"))return s;if(n){const l=r.find(g=>g.id===n&&g.role==="assistant");if(l)return o(l.id),l.id}const u=r[r.length-1];if((u==null?void 0:u.role)==="assistant")return u.id;const d=n||`assistant-${Date.now()}`,c={id:d,role:"assistant",content:"",timestamp:Date.now(),agentContent:$()};return i(c),o(d),t(l=>({messages:l.messages.map(g=>g.id===d?{...g,agentContent:{...g.agentContent||$()}}:g)})),d},ot=(e,t,n)=>{const{currentSessionId:a,addMessage:s,startAgentResponse:r,messages:i,updateMessage:o}=t();if(e.sessionId!==a)return;const u=e.messageId,d=e.role||"assistant",c=i.find(g=>g.id===u),l={id:u,role:d,content:e.content||"",timestamp:Date.now(),agentContent:d==="assistant"?$():void 0};c?o(u,{role:d,content:l.content,agentContent:d==="assistant"?{...c.agentContent||$()}:void 0}):s(l),d==="assistant"&&r(u)},at=(e,t,n)=>{const{currentSessionId:a,appendDelta:s,currentAssistantMessageId:r,hasToolCalls:i,addMessage:o,startAgentResponse:u}=t();if(e.sessionId!==a)return;const d=e.messageId,c=e.delta;if(!r){const g={id:d,role:"assistant",content:"",timestamp:Date.now(),agentContent:$()};o(g),u(d),t().appendDelta(d,c,"before");return}s(r,c,i?"after":"before")},rt=(e,t)=>{const{currentSessionId:n,updateMessage:a,messages:s}=t();if(e.sessionId!==n)return;const r=e.messageId,i=s.find(o=>o.id===r);i!=null&&i.agentContent&&a(r,{content:pe(i.agentContent)})},ut=(e,t,n)=>{var u;const{currentSessionId:a}=t();if(e.sessionId!==a)return;const s=e.output;if(!s||typeof s!="object"||Array.isArray(s))return;const r=v(t,n,e.messageId);if(!r)return;const i=t().messages.find(d=>d.id===r);if(!i)return;const o=JSON.stringify(s,null,2);t().updateMessage(r,{content:o,metadata:{...i.metadata,structuredOutput:{output:s,schemaDigest:e.schemaDigest}},agentContent:i.agentContent?{...i.agentContent,textBefore:"",textAfter:"",timeline:(u=i.agentContent.timeline)==null?void 0:u.filter(d=>d.type!=="text")}:void 0})},dt=(e,t,n)=>{const{currentSessionId:a,appendThinking:s}=t();if(e.sessionId!==a)return;const r=v(t,n,e.messageId);r&&s(r,e.delta)},lt=()=>{},ke=(e,t,n)=>{const{currentSessionId:a,appendToolCall:s,setHasToolCalls:r,setSubagent:i}=t();if(e.sessionId!==a)return;const o=v(t,n,e.messageId||e.toolCallId,typeof e.messageId=="string");if(!o)return;r(!0);const u=e.toolName||"Unknown",d=e.arguments;let c,l="",g,f;if(u==="Task")try{const S=JSON.parse(d);c=S.subagent_type,l=S.description||S.query||c||"",g=S.subagent_session_id,f=S.resume_from||S.resume}catch{}if(c){i(o,{id:F({explicitId:e.toolCallId,sessionId:g,messageId:o,agentType:c,description:l}),type:c,description:l,status:"running",startTime:Date.now(),sessionId:g,resumedFrom:f,output:"",thinking:""}),Y(g,t,n);return}const m={toolCallId:H({explicitId:e.toolCallId,messageId:o,toolName:u,argumentsValue:d,toolKind:e.toolKind}),toolName:u,arguments:d,toolKind:e.toolKind,status:"running",startTime:Date.now()};s(o,m)};function Te(e){if(!e||typeof e!="object"||Array.isArray(e))return;const t=e;if(!(t.kind!=="readonly"&&t.kind!=="write"&&t.kind!=="execute")&&!(t.scope!=="global"&&t.scope!=="session")&&!(!Number.isSafeInteger(t.queuePosition)||t.queuePosition<=0||!Number.isSafeInteger(t.inFlight)||t.inFlight<0||!Number.isSafeInteger(t.limit)||t.limit<=0))return{kind:t.kind,scope:t.scope,queuePosition:t.queuePosition,inFlight:t.inFlight,limit:t.limit}}const we=(e,t)=>{const{currentSessionId:n,updateToolCall:a,messages:s}=t();if(e.sessionId!==n)return;const r=e.toolCallId;if(!r)return;const i=s.find(o=>{var u;return(u=o.agentContent)==null?void 0:u.toolCalls.some(d=>d.toolCallId===r)});i&&a(i.id,r,{summary:e.message,progress:typeof e.progress=="number"?e.progress:void 0,progressTotal:typeof e.total=="number"?e.total:void 0,progressMessage:e.message,admission:Te(e.admission)})},Pe=(e,t,n)=>{var ae;const{currentSessionId:a,appendToolCall:s,setHasToolCalls:r,updateToolCall:i,updateSubagent:o,messages:u}=t();if(e.sessionId!==a)return;const d=e.toolCallId;if(!d)return;const c=u.find(A=>{var T;return(T=A.agentContent)==null?void 0:T.toolCalls.some(M=>M.toolCallId===d)}),l=u.find(A=>P(A.agentContent).some(T=>T.id===d)),g=(c==null?void 0:c.id)||(l==null?void 0:l.id)||v(t,n,e.messageId,!0);if(!g)return;const f=typeof e.output=="string"?e.output:"",m=e.success===!0||e.status==="completed",S=e.summary||(f&&f.trim()?f.trim().split(`
5
- `)[0].slice(0,120):m?"执行成功":"执行失败"),y=(ae=c==null?void 0:c.agentContent)==null?void 0:ae.toolCalls.find(A=>A.toolCallId===d),h=typeof e.toolName=="string"?e.toolName:(y==null?void 0:y.toolName)??"Unknown",I=e.metadata;c?i(g,d,{status:m?"success":"error",summary:S,output:f,metadata:I}):l||(r(!0),s(g,{toolCallId:d,toolName:h,status:m?"success":"error",summary:S,output:f,startTime:Date.now(),metadata:I}));const q=t().messages.find(A=>A.id===g),k=P(q==null?void 0:q.agentContent).find(A=>A.id===d),R=I&&typeof I.subagentSessionId=="string"?I.subagentSessionId:void 0,x=I&&typeof I.subagentStatus=="string"?I.subagentStatus:void 0,ee=I&&typeof I.subagentType=="string"?I.subagentType:void 0,te=I&&typeof I.subagentSummary=="string"?I.subagentSummary:void 0,ne=I&&typeof I.subagentResumedFrom=="string"?I.subagentResumedFrom:void 0,se=I&&typeof I.subagentRootId=="string"?I.subagentRootId:void 0,ie=I&&typeof I.subagentResumeDepth=="number"?I.subagentResumeDepth:void 0,oe=(I==null?void 0:I.verificationVerdict)==="pass"||(I==null?void 0:I.verificationVerdict)==="fail"||(I==null?void 0:I.verificationVerdict)==="partial"?I.verificationVerdict:void 0;if(k){const A=x?Q(x):e.success?"completed":"failed",T=k.status!=="running"&&A==="running";o(g,k.id,{sessionId:k.sessionId||R,type:ee||k.type,status:T?k.status:A,resumedFrom:ne||k.resumedFrom,rootAgentId:se||k.rootAgentId,resumeDepth:ie??k.resumeDepth,verificationVerdict:oe??k.verificationVerdict,output:T?k.output:te||k.output})}R&&x&&n(A=>({messages:A.messages.map(T=>{if(T.id!==g)return T;const M=T.metadata??{},E=Array.isArray(M.subtaskRefs)?M.subtaskRefs:[],j=E.findIndex(re=>re.childSessionId===R||re.subagentId===d),b=j>=0?E[j]:M.subtaskRef??{},B={...b,subagentId:d,childSessionId:R,agentType:ee||(typeof(b==null?void 0:b.agentType)=="string"?b.agentType:"subagent"),status:x,summary:te||(typeof(b==null?void 0:b.summary)=="string"?b.summary:""),resumedFrom:ne||(typeof(b==null?void 0:b.resumedFrom)=="string"?b.resumedFrom:void 0),rootAgentId:se||(typeof(b==null?void 0:b.rootAgentId)=="string"?b.rootAgentId:R),resumeDepth:ie??(typeof(b==null?void 0:b.resumeDepth)=="number"?b.resumeDepth:0),verificationVerdict:oe||(typeof(b==null?void 0:b.verificationVerdict)=="string"?b.verificationVerdict:void 0)},V=[...E];return j>=0?V[j]=B:V.push(B),{...T,metadata:{...M,subtaskRef:B,subtaskRefs:V}}})})),Y(R,t,n)},ct=(e,t,n)=>{const{currentSessionId:a,appendToolCall:s}=t();if(e.sessionId!==a)return;const r=v(t,n,e.messageId||`mcp-catalog-${String(e.revision)}`);if(!r)return;const i=Array.isArray(e.added)?e.added.map(String):[],o=Array.isArray(e.removed)?e.removed.map(String):[],u=Array.isArray(e.updated)?e.updated.map(String):[],d=`MCP catalog r${String(e.revision)}: +${i.length} -${o.length} ~${u.length}`;s(r,{toolCallId:`mcp-catalog:${String(e.revision)}`,toolName:"MCP Catalog",arguments:JSON.stringify({serverName:e.serverName,added:i,removed:o,updated:u}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:d,output:[i.length>0?`Added: ${i.join(", ")}`:"",o.length>0?`Removed: ${o.join(", ")}`:"",u.length>0?`Updated: ${u.join(", ")}`:""].filter(Boolean).join(`
6
- `)})},gt=(e,t,n)=>{const{currentSessionId:a,appendToolCall:s}=t();if(e.sessionId!==a)return;const r=v(t,n,e.messageId||`mcp-content-${String(e.revision)}`);if(!r)return;const i=Array.isArray(e.added)?e.added.map(String):[],o=Array.isArray(e.removed)?e.removed.map(String):[],u=Array.isArray(e.updated)?e.updated.map(String):[],d=`MCP ${String(e.contentKind)} r${String(e.revision)}: +${i.length} -${o.length} ~${u.length}`;s(r,{toolCallId:`mcp-content:${String(e.revision)}`,toolName:"MCP Content",arguments:JSON.stringify({serverName:e.serverName,contentKind:e.contentKind,added:i,removed:o,updated:u}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:d,output:[i.length>0?`Added: ${i.join(", ")}`:"",o.length>0?`Removed: ${o.join(", ")}`:"",u.length>0?`Updated: ${u.join(", ")}`:""].filter(Boolean).join(`
7
- `)})},mt=(e,t,n)=>{const{currentSessionId:a,appendToolCall:s}=t();if(e.sessionId!==a)return;const r=v(t,n,e.messageId||`mcp-resource-${String(e.revision)}`);r&&s(r,{toolCallId:`mcp-resource:${String(e.revision)}`,toolName:"MCP Resource",arguments:JSON.stringify({serverName:e.serverName,uri:e.uri}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP resource updated: ${String(e.uri)}`,output:`${String(e.serverName)} · revision ${String(e.revision)}`})},ft=(e,t,n)=>{const{currentSessionId:a,appendToolCall:s}=t();if(e.sessionId!==a)return;const r=v(t,n,e.messageId||`mcp-connection-${String(e.revision)}`);if(!r)return;const i=String(e.phase),o=`MCP ${String(e.serverName)} ${i}`+(i==="reconnecting"?` (${String(e.attempt)}/${String(e.maxAttempts)})`:"");s(r,{toolCallId:`mcp-connection:${String(e.revision)}`,toolName:"MCP Connection",arguments:JSON.stringify({serverName:e.serverName,phase:i,reason:e.reason,attempt:e.attempt,maxAttempts:e.maxAttempts}),toolKind:"readonly",status:i==="failed"?"error":"success",startTime:Date.now(),summary:o,output:[`Reason: ${String(e.reason)}`,e.error?`Error: ${String(e.error)}`:""].filter(Boolean).join(`
8
- `)})},It=(e,t,n)=>{const{currentSessionId:a,appendToolCall:s}=t();if(e.sessionId!==a)return;const r=v(t,n,e.messageId||`mcp-log-${String(e.revision)}`);if(!r)return;const i=String(e.level),o=typeof e.logger=="string"?e.logger:void 0,u=`MCP ${i} · ${String(e.serverName)}`+(o?` · ${o}`:"");s(r,{toolCallId:`mcp-log:${String(e.revision)}`,toolName:"MCP Log",arguments:JSON.stringify({serverName:e.serverName,level:i,logger:o}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:u,output:[String(e.message),`SHA-256: ${String(e.dataSha256)}`,e.truncated===!0?"Truncated":"",e.detailsOmitted===!0?"Details omitted by runtime policy":""].filter(Boolean).join(`
9
- `)})},St=(e,t,n)=>{const{currentSessionId:a,appendToolCall:s}=t();if(e.sessionId!==a)return;const r=String(e.serverName),i=String(e.action),o=v(t,n,e.messageId||`mcp-instructions-${String(e.revision)}-${r}`);if(!o)return;const u=`MCP instructions ${i}: ${r}`+(e.truncated===!0?" (truncated)":"");s(o,{toolCallId:`mcp-instructions:${String(e.revision)}:${r}:${i}`,toolName:"MCP Instructions",arguments:JSON.stringify({serverName:r,action:i,reason:e.reason}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:u,output:[typeof e.text=="string"?e.text:"",e.sha256?`SHA-256: ${String(e.sha256)}`:"",e.detailsOmitted===!0?"Details omitted by runtime policy":""].filter(Boolean).join(`
10
- `)})},ht=(e,t,n)=>{var f,m;const{currentSessionId:a,appendToolCall:s,updateToolCall:r}=t();if(e.sessionId!==a)return;const i=String(e.taskId),o=String(e.status),u=`mcp-task:${i}`,d=v(t,n,e.messageId||`mcp-task-${i}`);if(!d)return;const c=`MCP task ${o}: ${i} · ${String(e.serverName)}/${String(e.toolName)}`,l={status:o==="failed"||o==="cancelled"?"error":o==="completed"?"success":"running",summary:c,output:[typeof e.statusMessage=="string"?e.statusMessage:"",e.hasResult===!0?"Result available via TaskOutput":"",typeof e.error=="string"?`Error: ${e.error}`:""].filter(Boolean).join(`
11
- `)};if((m=(f=t().messages.find(S=>S.id===d))==null?void 0:f.agentContent)==null?void 0:m.toolCalls.some(S=>S.toolCallId===u)){r(d,u,l);return}s(d,{toolCallId:u,toolName:"MCP Task",arguments:JSON.stringify({taskId:i,serverName:e.serverName,toolName:e.toolName}),toolKind:"readonly",status:l.status,startTime:Number(e.createdAt)||Date.now(),summary:l.summary,output:l.output})},yt=(e,t,n)=>{const{currentSessionId:a,appendToolCall:s}=t();if(e.sessionId!==a)return;const r=Array.isArray(e.files)?e.files.filter(d=>!!d&&typeof d=="object"&&!Array.isArray(d)):[],i=v(t,n,e.messageId||`project-rules-${Date.now()}`);if(!i)return;const o=e.blockedWrite===!0,u=`Project rules loaded: ${r.length}`+(o?" (write retry required)":"");s(i,{toolCallId:`project-rules:${r.map(d=>String(d.id)).join(",")}`,toolName:"Project Rules",arguments:JSON.stringify({triggerPaths:e.triggerPaths,blockedWrite:o}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:u,output:r.map(d=>`${String(d.relativePath)} ${String(d.source)} SHA-256: ${String(d.contentSha256)}`).join(`
12
- `)})},z=e=>`user-shell-${e}`,bt=(e,t,n)=>{const{currentSessionId:a,addMessage:s,messages:r,updateMessage:i}=t();if(e.sessionId!==a||typeof e.executionId!="string"||typeof e.command!="string")return;const o=z(e.executionId),u={id:o,role:"user",content:`! ${e.command}`,timestamp:Date.now(),metadata:{userShellExecution:{executionId:e.executionId,command:e.command,status:"running",output:""}}};r.some(d=>d.id===o)?i(o,u):s(u),e.auxiliary!==!0&&n({isStreaming:!0,agentPhase:"running",error:null,errorContext:null})},Ct=(e,t)=>{var d;const{currentSessionId:n,messages:a,updateMessage:s}=t();if(e.sessionId!==n||typeof e.executionId!="string"||typeof e.chunk!="string")return;const r=z(e.executionId),i=a.find(c=>c.id===r);if(!i)return;const o=(d=i.metadata)!=null&&d.userShellExecution&&typeof i.metadata.userShellExecution=="object"?i.metadata.userShellExecution:{},u=`${typeof o.output=="string"?o.output:""}${e.chunk}`;s(r,{content:`! ${String(o.command??"")}
13
- ${u}`,metadata:{...i.metadata,userShellExecution:{...o,output:u,streamTruncated:e.streamTruncated===!0}}})},vt=(e,t,n)=>{const{currentSessionId:a,messages:s,addMessage:r,updateMessage:i}=t();if(e.sessionId!==a||typeof e.executionId!="string"||!e.record||typeof e.record!="object"||Array.isArray(e.record))return;const o=e.record,u=typeof o.command=="string"?o.command:"",d=typeof o.stdout=="string"?o.stdout:"",c=typeof o.stderr=="string"?o.stderr:"",l=[d,c?`stderr:
14
- ${c}`:""].filter(Boolean).join(`
15
- `),g=z(e.executionId),f={role:"user",content:[`! ${u}`,l||"(no output)"].join(`
16
- `),metadata:{userShellCommand:o}};s.some(m=>m.id===g)?i(g,f):r({id:g,...f,timestamp:Date.now()}),e.auxiliary!==!0&&n({isStreaming:!1,isStopping:!1,agentPhase:"idle"}),(e.delivery==="current_turn"||e.delivery==="next_turn")&&n({pendingSteeringCount:typeof e.queued=="number"?Math.max(0,e.queued):0,pendingInputDelivery:e.delivery==="current_turn"?"current_turn":"next_turn"})},At=(e,t)=>{const{currentSessionId:n,updateTokenUsage:a,setMaxContextTokens:s}=t();e.sessionId===n&&(a({inputTokens:e.inputTokens,outputTokens:e.outputTokens,totalTokens:e.totalTokens,cacheReadTokens:e.cacheReadTokens??0,cacheWriteTokens:e.cacheWriteTokens??0,...e.cacheBreak?{cacheBreak:e.cacheBreak}:{},costUsd:e.costUsd}),e.maxContextTokens&&s(e.maxContextTokens,!1))},kt=(e,t)=>{const{currentSessionId:n,setTasks:a,currentAssistantMessageId:s}=t();if(e.sessionId!==n||!s)return;const r=e.tasks||[];a(s,r)},Tt=(e,t,n)=>{const{currentSessionId:a,setSubagent:s,currentAssistantMessageId:r}=t();if(e.sessionId!==a||!r)return;const i={id:F({explicitId:e.subagentId,sessionId:e.subagentSessionId,messageId:r,agentType:e.type,description:e.description}),type:e.type||"unknown",description:e.description||"",status:"running",startTime:Date.now(),sessionId:e.subagentSessionId,resumedFrom:e.resumedFrom,rootAgentId:e.rootAgentId,resumeDepth:typeof e.resumeDepth=="number"?e.resumeDepth:void 0};s(r,i),Y(i.sessionId,t,n)},wt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.subagentSessionId,o=C(s,i,a);o&&r(o.messageId,o.subagent.id,{sessionId:o.subagent.sessionId||i,currentTool:e.toolName})},Pt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.delta;if(!i)return;const o=e.subagentSessionId,u=C(s,o,a);u&&r(u.messageId,u.subagent.id,d=>({sessionId:d.sessionId||o,output:(d.output||"")+i}))},Nt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.delta;if(!i)return;const o=e.subagentSessionId,u=C(s,o,a);u&&r(u.messageId,u.subagent.id,d=>({sessionId:d.sessionId||o,thinking:(d.thinking||"")+i}))},X=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.subagentSessionId,o=C(s,i,a);if(!o)return;const u=e.status==="completed"?"completed":e.status==="failed"||e.status==="cancelled"?"failed":e.success?"completed":"failed";r(o.messageId,o.subagent.id,{sessionId:o.subagent.sessionId||i,type:typeof e.type=="string"?e.type:o.subagent.type,description:typeof e.description=="string"?e.description:o.subagent.description,status:u,currentTool:void 0,output:typeof e.summary=="string"?e.summary:o.subagent.output,resumedFrom:typeof e.resumedFrom=="string"?e.resumedFrom:o.subagent.resumedFrom,rootAgentId:typeof e.rootAgentId=="string"?e.rootAgentId:o.subagent.rootAgentId,resumeDepth:typeof e.resumeDepth=="number"?e.resumeDepth:o.subagent.resumeDepth,verificationVerdict:e.verificationVerdict==="pass"||e.verificationVerdict==="fail"||e.verificationVerdict==="partial"?e.verificationVerdict:o.subagent.verificationVerdict})},$t=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.toolCallId,o=e.toolName;if(!i||!o)return;const u=e.subagentSessionId,d=C(s,u,a);if(!d)return;const c={toolCallId:i,toolName:o,arguments:e.arguments,toolKind:e.toolKind,status:"running",startTime:Date.now()};r(d.messageId,d.subagent.id,l=>{const g=l.toolCalls||[];return{sessionId:l.sessionId||u,currentTool:o,toolCalls:g.some(f=>f.toolCallId===i)?g:[...g,c]}})},Rt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.toolCallId;if(!i)return;const o=e.toolName,u=e.subagentSessionId,d=C(s,u,a);if(!d)return;const c=e.output,l=e.success===!0,g=l?"success":"error",f=e.summary||(c&&c.trim()?c.trim().split(`
17
- `)[0].slice(0,120):l?"执行成功":"执行失败");r(d.messageId,d.subagent.id,m=>({sessionId:m.sessionId||u,currentTool:m.currentTool===o?void 0:m.currentTool,toolCalls:(m.toolCalls||[]).map(S=>S.toolCallId===i?{...S,status:g,summary:f,output:c,metadata:e.metadata}:S)}))},Mt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=e.toolCallId;if(!i)return;const o=C(s,e.subagentSessionId,a);o&&r(o.messageId,o.subagent.id,u=>({toolCalls:(u.toolCalls||[]).map(d=>d.toolCallId===i?{...d,summary:e.message,progress:typeof e.progress=="number"?e.progress:void 0,progressTotal:typeof e.total=="number"?e.total:void 0,progressMessage:e.message,admission:Te(e.admission)}:d)}))},_t=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,a);if(!i)return;const o=Array.isArray(e.added)?e.added.map(String):[],u=Array.isArray(e.removed)?e.removed.map(String):[],d=Array.isArray(e.updated)?e.updated.map(String):[],c=`mcp-catalog:${String(e.revision)}`;r(i.messageId,i.subagent.id,l=>({toolCalls:[...(l.toolCalls||[]).filter(g=>g.toolCallId!==c),{toolCallId:c,toolName:"MCP Catalog",arguments:JSON.stringify({serverName:e.serverName,added:o,removed:u,updated:d}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP catalog r${String(e.revision)}: +${o.length} -${u.length} ~${d.length}`,output:[o.length>0?`Added: ${o.join(", ")}`:"",u.length>0?`Removed: ${u.join(", ")}`:"",d.length>0?`Updated: ${d.join(", ")}`:""].filter(Boolean).join(`
18
- `)}]}))},xt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,a);if(!i)return;const o=Array.isArray(e.added)?e.added.map(String):[],u=Array.isArray(e.removed)?e.removed.map(String):[],d=Array.isArray(e.updated)?e.updated.map(String):[],c=`mcp-content:${String(e.revision)}`;r(i.messageId,i.subagent.id,l=>({toolCalls:[...(l.toolCalls||[]).filter(g=>g.toolCallId!==c),{toolCallId:c,toolName:"MCP Content",arguments:JSON.stringify({serverName:e.serverName,contentKind:e.contentKind,added:o,removed:u,updated:d}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP ${String(e.contentKind)} r${String(e.revision)}: +${o.length} -${u.length} ~${d.length}`}]}))},jt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,a);if(!i)return;const o=`mcp-resource:${String(e.revision)}`;r(i.messageId,i.subagent.id,u=>({toolCalls:[...(u.toolCalls||[]).filter(d=>d.toolCallId!==o),{toolCallId:o,toolName:"MCP Resource",arguments:JSON.stringify({serverName:e.serverName,uri:e.uri}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP resource updated: ${String(e.uri)}`}]}))},Dt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,a);if(!i)return;const o=String(e.phase),u=`mcp-connection:${String(e.revision)}`;r(i.messageId,i.subagent.id,d=>({toolCalls:[...(d.toolCalls||[]).filter(c=>c.toolCallId!==u),{toolCallId:u,toolName:"MCP Connection",arguments:JSON.stringify({serverName:e.serverName,phase:o,reason:e.reason,attempt:e.attempt,maxAttempts:e.maxAttempts}),toolKind:"readonly",status:o==="failed"?"error":"success",startTime:Date.now(),summary:`MCP ${String(e.serverName)} ${o}`+(o==="reconnecting"?` (${String(e.attempt)}/${String(e.maxAttempts)})`:""),output:e.error?`Error: ${String(e.error)}`:void 0}]}))},Ot=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,a);if(!i)return;const o=String(e.level),u=typeof e.logger=="string"?e.logger:void 0,d=`mcp-log:${String(e.revision)}`;r(i.messageId,i.subagent.id,c=>({toolCalls:[...(c.toolCalls||[]).filter(l=>l.toolCallId!==d),{toolCallId:d,toolName:"MCP Log",arguments:JSON.stringify({serverName:e.serverName,level:o,logger:u}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP ${o} · ${String(e.serverName)}`+(u?` · ${u}`:""),output:[String(e.message),`SHA-256: ${String(e.dataSha256)}`,e.truncated===!0?"Truncated":"",e.detailsOmitted===!0?"Details omitted by runtime policy":""].filter(Boolean).join(`
19
- `)}]}))},pt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,a);if(!i)return;const o=String(e.serverName),u=String(e.action),d=`mcp-instructions:${String(e.revision)}:${o}:${u}`;r(i.messageId,i.subagent.id,c=>({toolCalls:[...(c.toolCalls||[]).filter(l=>l.toolCallId!==d),{toolCallId:d,toolName:"MCP Instructions",arguments:JSON.stringify({serverName:o,action:u,reason:e.reason}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`MCP instructions ${u}: ${o}`+(e.truncated===!0?" (truncated)":""),output:[typeof e.text=="string"?e.text:"",e.sha256?`SHA-256: ${String(e.sha256)}`:"",e.detailsOmitted===!0?"Details omitted by runtime policy":""].filter(Boolean).join(`
20
- `)}]}))},Ft=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,a);if(!i)return;const o=String(e.taskId),u=String(e.status),d=`mcp-task:${o}`;r(i.messageId,i.subagent.id,c=>({toolCalls:[...(c.toolCalls||[]).filter(l=>l.toolCallId!==d),{toolCallId:d,toolName:"MCP Task",arguments:JSON.stringify({taskId:o,serverName:e.serverName,toolName:e.toolName}),toolKind:"readonly",status:u==="failed"||u==="cancelled"?"error":u==="completed"?"success":"running",startTime:Number(e.createdAt)||Date.now(),summary:`MCP task ${u}: ${o} · ${String(e.serverName)}/${String(e.toolName)}`,output:[typeof e.statusMessage=="string"?e.statusMessage:"",e.hasResult===!0?"Result available via TaskOutput":"",typeof e.error=="string"?`Error: ${e.error}`:""].filter(Boolean).join(`
21
- `)}]}))},qt=(e,t)=>{const{currentSessionId:n,currentAssistantMessageId:a,messages:s,updateSubagent:r}=t();if(e.sessionId!==n)return;const i=C(s,e.subagentSessionId,a);if(!i)return;const o=Array.isArray(e.files)?e.files.filter(d=>!!d&&typeof d=="object"&&!Array.isArray(d)):[],u=`project-rules:${o.map(d=>String(d.id)).join(",")}`;r(i.messageId,i.subagent.id,d=>({toolCalls:[...(d.toolCalls||[]).filter(c=>c.toolCallId!==u),{toolCallId:u,toolName:"Project Rules",arguments:JSON.stringify({triggerPaths:e.triggerPaths,blockedWrite:e.blockedWrite}),toolKind:"readonly",status:"success",startTime:Date.now(),summary:`Project rules loaded: ${o.length}`,output:o.map(c=>`${String(c.relativePath)} ${String(c.source)} SHA-256: ${String(c.contentSha256)}`).join(`
22
- `)}]}))},Et=(e,t,n)=>{const{currentSessionId:a,setConfirmation:s}=t();if(e.sessionId!==a)return;const r=e.requestId||"",i=v(t,n,r?`assistant-permission-${r}`:void 0);if(!i)return;const o=e.details,u=e.toolName||(o==null?void 0:o.toolName)||"Tool";s(i,{toolCallId:r,toolName:u,description:e.description,diff:(o==null?void 0:o.details)||(o==null?void 0:o.diff)||"",allowRemember:(o==null?void 0:o.type)!=="mcpSampling",status:"pending"}),n(d=>({agentPhase:"waiting_permission",isStreaming:!0,sessions:d.sessions.map(c=>c.sessionId===e.sessionId&&c.projectPath===e.projectPath?{...c,pendingInteraction:{type:"permission",requestId:r}}:c)}))},Bt=(e,t,n)=>{var f,m;const{currentSessionId:a,currentSessionRef:s,messages:r,setConfirmation:i,setElicitation:o}=t();if(e.sessionId!==a)return;const u=e.requestId,d=r.find(S=>{var y,h;return((h=(y=S.agentContent)==null?void 0:y.confirmation)==null?void 0:h.toolCallId)===u}),c=(f=d==null?void 0:d.agentContent)==null?void 0:f.confirmation;d&&(c==null?void 0:c.status)==="pending"&&i(d.id,{...c,status:"denied"});const l=r.find(S=>{var y,h;return((h=(y=S.agentContent)==null?void 0:y.elicitation)==null?void 0:h.toolCallId)===u}),g=(m=l==null?void 0:l.agentContent)==null?void 0:m.elicitation;l&&(g==null?void 0:g.status)==="pending"&&o(l.id,{...g,status:"cancelled"}),n({agentPhase:"running",error:"Permission request timed out",errorContext:{kind:"interaction",...s?{sessionRef:s}:{}}})},ge=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",isStreaming:!0,turnRecovery:null})};function Vt(e){if(!e||typeof e!="object"||Array.isArray(e))return null;const t=e;if(typeof t.turnId!="string"||!t.turnId||!Number.isSafeInteger(t.inputMessageCount)||t.inputMessageCount<0)return null;const n={turnId:t.turnId,inputMessageCount:t.inputMessageCount};return t.state==="completed"||t.state==="resumable"?{state:t.state,...n}:t.state==="requires_attention"&&(t.reason==="successful_tool_result"||t.reason==="interrupted_tool_call")?{state:t.state,...n,reason:t.reason}:null}const Kt=(e,t,n)=>{const a=t(),s=a.currentSessionRef;if(e.sessionId!==a.currentSessionId||!s||e.projectPath!==s.projectPath)return;const r=Vt(e.assessment);r&&(n({turnRecovery:r}),a.resyncSessionMessages(s))},Ut=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:e.reason==="context_limit"?"recovering_context":"compacting"})},Jt=(e,t,n)=>{e.sessionId===t().currentSessionId&&(t().resetContextUsage(),n({agentPhase:"running"}))},Wt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"switching_model",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null})},Lt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",providerAdmission:e.phase==="queued"?e:null})},Ht=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",providerCircuit:e.phase==="closed"?null:e})},Gt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",providerRetry:e.phase==="recovered"?null:e})},Qt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",providerStall:e.phase==="detected"?e:null})},Yt=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({agentPhase:"running",actionStationarity:e.phase==="recovered"?null:e})},zt=(e,t,n)=>{const{currentSessionId:a,setQuestion:s}=t();if(e.sessionId!==a)return;const r=e.requestId||e.toolCallId||"",i=v(t,n,r?`assistant-question-${r}`:void 0);i&&(s(i,{toolCallId:r,questions:e.questions,status:"pending"}),n(o=>({agentPhase:"waiting_permission",isStreaming:!0,sessions:o.sessions.map(u=>u.sessionId===e.sessionId&&u.projectPath===e.projectPath?{...u,pendingInteraction:{type:"question",requestId:r}}:u)})))},Xt=(e,t,n)=>{const{currentSessionId:a,setElicitation:s}=t();if(e.sessionId!==a)return;const r=e.requestId||e.toolCallId||"",i=v(t,n,r?`assistant-elicitation-${r}`:void 0),o=e.elicitation;!i||!o||(s(i,{toolCallId:r,details:o,status:"pending"}),n(u=>({agentPhase:"waiting_permission",isStreaming:!0,sessions:u.sessions.map(d=>d.sessionId===e.sessionId&&d.projectPath===e.projectPath?{...d,pendingInteraction:{type:"elicitation",requestId:r}}:d)})))},Zt=(e,t,n)=>{const{currentSessionId:a}=t();if(e.sessionId!==a)return;const s=e.requestId;n(r=>({agentPhase:"running",sessions:r.sessions.map(i=>{var o;return i.sessionId===e.sessionId&&i.projectPath===e.projectPath&&((o=i.pendingInteraction)==null?void 0:o.requestId)===s?{...i,pendingInteraction:void 0}:i})}))},Z=(e,t)=>{const n=t().currentSessionRef;n&&e.sessionId===n.sessionId&&e.projectPath===n.projectPath&&t().resyncSessionMessages(n)},en=(e,t)=>{const{currentSessionId:n,currentSessionRef:a,endAgentResponse:s}=t();e.sessionId!==n||!a||e.projectPath!==a.projectPath||(s(),Z(e,t))},me=(e,t)=>{const n=t().currentSessionRef;!n||e.sessionId!==n.sessionId||e.projectPath!==n.projectPath||t().endAgentResponse()},tn=(e,t,n)=>{const{currentSessionId:a,currentSessionRef:s,endAgentResponse:r}=t();if(e.sessionId!==a)return;const i=e.taskFailure&&typeof e.taskFailure=="object"&&!Array.isArray(e.taskFailure)?e.taskFailure:void 0,o=Ue(i==null?void 0:i.code);n({agentPhase:"error",error:e.error||"An error occurred",errorContext:{kind:"execution",...s?{sessionRef:s}:{},...o?{failureCode:o}:{}}}),r(),Z(e,t)},nn=(e,t,n)=>{const{currentSessionId:a}=t();if(e.sessionId===a)if(e.status==="idle")n({isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0}),Z(e,t);else if(e.status==="queued"||e.status==="running"||e.status==="waiting_permission"){const s=typeof e.queued=="number"?Math.max(0,e.queued):0;n({isStreaming:!0,agentPhase:e.status==="waiting_permission"?"waiting_permission":"running",currentRunId:typeof e.runId=="string"?e.runId:t().currentRunId,pendingSteeringCount:s,pendingInputDelivery:s>0&&(e.pendingInputDelivery==="current_turn"||e.pendingInputDelivery==="next_turn")?e.pendingInputDelivery:null,recoveredSteeringCount:typeof e.recovered=="number"?Math.max(0,e.recovered):t().recoveredSteeringCount})}else e.status==="error"&&n({isStreaming:!1,isStopping:!1,agentPhase:"error",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null})},sn=(e,t,n)=>{const{currentSessionId:a,endAgentResponse:s,messages:r,updateSubagent:i}=t();if(e.sessionId===a){n(o=>({isStreaming:!1,agentPhase:"idle",messages:o.messages.map(u=>{var c;const d=(c=u.agentContent)==null?void 0:c.elicitation;return(d==null?void 0:d.status)!=="pending"||!u.agentContent?u:{...u,agentContent:{...u.agentContent,elicitation:{...d,status:"cancelled"}}}})}));for(const o of r)for(const u of P(o.agentContent))u.status==="running"&&i(o.id,u.id,{status:"failed"});s()}},Ne=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({pendingSteeringCount:typeof e.queued=="number"?Math.max(0,e.queued):1,pendingInputDelivery:"current_turn"})},$e=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({pendingSteeringCount:typeof e.queued=="number"?Math.max(0,e.queued):1,pendingInputDelivery:"next_turn"})},on=(e,t,n)=>{if(typeof e.childSessionId=="string"){const a={...e,subagentSessionId:e.childSessionId,success:e.status==="completed"};C(t().messages,e.childSessionId,t().currentAssistantMessageId)?X(a,t):it(e.childSessionId,a,n)}e.delivery==="current_turn"?Ne(e,t,n):$e(e,t,n)},an=(e,t,n)=>{if(e.sessionId!==t().currentSessionId)return;const a=typeof e.queued=="number"?Math.max(0,e.queued):0;n({pendingSteeringCount:a,pendingInputDelivery:a>0?t().pendingInputDelivery:null,recoveredSteeringCount:typeof e.recovered=="number"?Math.max(0,e.recovered):t().recoveredSteeringCount})},rn=(e,t,n)=>{if(e.sessionId!==t().currentSessionId)return;const a=typeof e.queued=="number"?Math.max(0,e.queued):0;n({agentPhase:"running",pendingSteeringCount:a,pendingInputDelivery:a>0?"current_turn":null,recoveredSteeringCount:typeof e.recovered=="number"?Math.max(0,e.recovered):t().recoveredSteeringCount})},un=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({goal:e.goal??null})},dn=(e,t,n)=>{if(e.sessionId!==t().currentSessionId)return;const a=t().goal;!a||a.goalId!==e.goalId||n({goal:{...a,executionFrontier:e.frontier,frontierStall:e.stall}})},ln=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({goal:null})},cn=(e,t,n)=>{e.sessionId===t().currentSessionId&&n({goal:e.goal??t().goal,isStreaming:!0,agentPhase:"running"})},gn=(e,t,n)=>{if(e.sessionId!==t().currentSessionId||!Array.isArray(e.messages))return;const a=Date.now(),s=e.messages.flatMap((r,i)=>{if(typeof r!="object"||r===null)return[];const o=r;return!["user","assistant","system","tool"].includes(String(o.role))||!Array.isArray(o.content)&&typeof o.content!="string"?[]:[{id:`rewind-${i}-${a}`,role:o.role,content:o.content,timestamp:a+i,metadata:typeof o.metadata=="object"&&o.metadata!==null?o.metadata:void 0,thinkingContent:typeof o.thinkingContent=="string"?o.thinkingContent:typeof o.reasoningContent=="string"?o.reasoningContent:void 0,tool_call_id:typeof o.tool_call_id=="string"?o.tool_call_id:void 0,name:typeof o.name=="string"?o.name:void 0,tool_calls:o.tool_calls}]});n({messages:Ve(s),isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,currentAssistantMessageId:null,hasToolCalls:!1})},mn=(e,t,n)=>{const a=t().currentSessionRef;if(!a||e.sessionId!==a.sessionId||e.projectPath!==a.projectPath)return;const s=e.status,r=s==="completed"||s==="stale"?"completed":s==="aborted"?"cancelled":s==="interrupted"?"interrupted":"failed";n(i=>({sessions:i.sessions.map(o=>o.sessionId===a.sessionId&&o.projectPath===a.projectPath?{...o,taskStatus:r,taskStatusReason:void 0,taskFailure:void 0,taskCompletedAt:new Date().toISOString()}:o)})),t().selectSession(a)},fn=(e,t,n)=>{ke({...e,messageId:`review-${String(e.reviewId??"active")}`,arguments:"{}"},t,n)},In=(e,t,n)=>{we(e,t)},Sn=(e,t,n)=>{Pe(e,t,n)},hn=(e,t)=>{const n=t().currentSessionRef;n&&queueMicrotask(()=>void t().loadTeams(n))},O={"message.created":ot,"message.delta":at,"message.complete":rt,"structured.output":ut,"thinking.delta":dt,"thinking.completed":lt,"tool.start":ke,"tool.progress":we,"tool.result":Pe,"mcp.catalog.changed":ct,"mcp.content.changed":gt,"mcp.resource.updated":mt,"mcp.connection.changed":ft,"mcp.log":It,"mcp.instructions.changed":St,"mcp.task.changed":ht,"project.rules.loaded":yt,"user.shell.started":bt,"user.shell.output":Ct,"user.shell.completed":vt,"token.usage":At,"task.updated":kt,"subagent.start":Tt,"subagent.update":wt,"subagent.delta":Pt,"subagent.thinking.delta":Nt,"subagent.tool.start":$t,"subagent.tool.progress":Mt,"subagent.tool.result":Rt,"subagent.mcp.catalog.changed":_t,"subagent.mcp.content.changed":xt,"subagent.mcp.resource.updated":jt,"subagent.mcp.connection.changed":Dt,"subagent.mcp.log":Ot,"subagent.mcp.instructions.changed":pt,"subagent.mcp.task.changed":Ft,"subagent.project.rules.loaded":qt,"subagent.complete":X,"subagent.completion.queued":on,"permission.asked":Et,"permission.timeout":Bt,"turn.started":ge,"turn.recovery":Kt,"committed.turn_started":ge,"committed.turn_completed":me,"committed.turn_aborted":me,"provider.admission":Lt,"provider.circuit":Ht,"provider.retry":Gt,"provider.stall":Qt,"action.stationarity":Yt,"compaction.started":Ut,"compaction.completed":Jt,"model.fallback":Wt,"question.required":zt,"elicitation.required":Xt,"interaction.resolved":Zt,"session.completed":en,"session.error":tn,"session.status":nn,"run.cancelled":sn,"steering.queued":Ne,"follow_up.queued":$e,"follow_up.started":rn,"steering.applied":an,"goal.updated":un,"goal.frontier.updated":dn,"goal.cleared":ln,"goal.continuation.started":cn,"session.rewound":gn,"review.tool.started":fn,"review.tool.progress":In,"review.tool.completed":Sn,"review.completed":mn},yn=new Set(["message.complete","thinking.completed","session.completed","session.error","run.cancelled","committed.turn_completed","committed.turn_aborted"]);function bn(e,t){if(e.seq!==void 0||e.type!=="tool.start"&&e.type!=="tool.result")return;const n=t().currentSessionRef,a=e.properties.toolName,s=e.properties.toolCallId;if(!n||!Ze(a)||typeof s!="string")return;const r=et.getState();e.type==="tool.start"?r.beginAgentActivity(n,{toolCallId:s,toolName:a,argumentsValue:e.properties.arguments}):r.completeAgentActivity(n,{toolCallId:s,toolName:a,success:e.properties.success===!0||e.properties.status==="completed",metadata:e.properties.metadata}),Ge.getState().openFilePreview({tab:"browser"})}const Tn=(e,t)=>n=>{const a=e().currentSessionRef,s=n.properties;if(!a||s.sessionId!==a.sessionId||s.projectPath!==a.projectPath)return;if(bn(n,e),n.type.startsWith("team.")){hn(s,e);return}if(yn.has(n.type)){w.drainAll();const i=O[n.type];i&&i(n.properties,e,t);return}if(n.type==="tool.start"&&w.drainAll(),n.type==="message.delta"){const{currentSessionId:i,currentAssistantMessageId:o,hasToolCalls:u}=e();if(s.sessionId!==i)return;const d=s.messageId||o,c=s.delta;if(!o){const f=O["message.delta"];f&&f(s,e,t);return}const l=u?"after":"before",g=`content:${d}:${l}`;w.drainAllExcept(g),w.append(g,c,f=>{const{appendDelta:m}=e();d&&m(d,f,l)});return}if(n.type==="thinking.delta"){const{currentSessionId:i,currentAssistantMessageId:o}=e();if(s.sessionId!==i)return;if(!o){const l=O["thinking.delta"];l&&l(s,e,t);return}const u=s.delta,d=s.messageId||o,c=`thinking:${d}`;w.drainAllExcept(c),w.append(c,u,l=>{const{appendThinking:g}=e();d&&g(d,l)});return}if(n.type==="subagent.delta"){const{currentSessionId:i}=e();if(s.sessionId!==i)return;const o=s.delta;if(!o)return;const u=s.subagentSessionId||"",d=`subagent:${u}`,{currentAssistantMessageId:c,messages:l}=e(),g=C(l,u||void 0,c);w.append(d,o,f=>{const{currentAssistantMessageId:m,messages:S,updateSubagent:y}=e(),h=g||C(S,u||void 0,m);h&&y(h.messageId,h.subagent.id,I=>({sessionId:I.sessionId||u,output:(I.output||"")+f}))});return}if(n.type==="subagent.thinking.delta"){const{currentSessionId:i}=e();if(s.sessionId!==i)return;const o=s.delta;if(!o)return;const u=s.subagentSessionId||"",d=`subagent-thinking:${u}`,{currentAssistantMessageId:c,messages:l}=e(),g=C(l,u||void 0,c);w.append(d,o,f=>{const{currentAssistantMessageId:m,messages:S,updateSubagent:y}=e(),h=g||C(S,u||void 0,m);h&&y(h.messageId,h.subagent.id,I=>({sessionId:I.sessionId||u,thinking:(I.thinking||"")+f}))});return}const r=O[n.type];r&&r(n.properties,e,t)};export{Oe as a,le as b,$ as c,De as d,fe as e,Ve as f,P as g,Tn as h,w as i,Ue as j,kn as k,Ge as l,pe as m,p as n,et as o,An as t,Ie as u,W as w};