| 3135 | [Binary content (${H}, ${m4(M??O)}) also saved to ${J}]`;return{data:{bytes:O,code:w,codeText:j,result:P,durationMs:Date.now()-Y,url:q}}},mapToolResultToToolResultBlockParam({result:q},K){return{tool_use_id:K,type:"tool_result",content:q}}})});import{readdir as c8Y,stat as l8Y}from"fs/promises";import{basename as zJw,join as n8Y}from"path";async function wjK(q,K,_){let z;try{z=await c8Y(q)}catch{return[]}return(await Promise.all(z.map(async($)=>{if(!$.endsWith(".jsonl"))return null;let A=wR7($.slice(0,-6));if(!A)return null;let O=n8Y(q,$);if(!K)return{sessionId:A,filePath:O,mtime:0,projectPath:_};try{let w=await l8Y(O);return{sessionId:A,filePath:O,mtime:w.mtime.getTime(),projectPath:_}}catch{return null}}))).filter(($)=>$!==null)}var jjK=y(()=>{m$8();QW6()});import{mkdir as i8Y,readFile as HjK,stat as JjK,unlink as r8Y,utimes as o8Y,writeFile as MjK}from"fs/promises";import{join as a8Y}from"path";function Ge1(){return a8Y(Vj(),s8Y)}async function Am8(){try{return(await JjK(Ge1())).mtimeMs}catch{return 0}}async function XjK(){let q=Ge1(),K,_;try{let[Y,$]=await Promise.all([JjK(q),HjK(q,"utf8")]);K=Y.mtimeMs;let A=parseInt($.trim(),10);_=Number.isFinite(A)?A:void 0}catch{}if(K!==void 0&&Date.now()-K<t8Y){if(_!==void 0&&QG6(_))return N(`[autoDream] lock held by live PID ${_} (mtime ${Math.round((Date.now()-K)/1000)}s ago)`),null}await i8Y(Vj(),{recursive:!0}),await MjK(q,String(process.pid));let z;try{z=await HjK(q,"utf8")}catch{return null}if(parseInt(z.trim(),10)!==process.pid)return null;return K??0}async function Om8(q){let K=Ge1();try{if(q===0){await r8Y(K);return}await MjK(K,"");let _=q/1000;await o8Y(K,_,_)}catch(_){N(`[autoDream] rollback failed: ${_.message} — next trigger delayed to minHours`)}}async function PjK(q){let K=_2(r1());return(await wjK(K,!0)).filter((z)=>z.mtime>q).map((z)=>z.sessionId)}var s8Y=".consolidate-lock",t8Y=3600000;var wm8=y(()=>{v8();rw();_8();u$6();jjK();_K()});function WjK(q){return typeof q==="object"&&q!==null&&"type"in q&&q.type==="dream"}function DjK(q,K){let _=aL("dream"),z={...C0(_,"dream","dreaming"),type:"dream",status:"running",phase:"starting",sessionsReviewing:K.sessionsReviewing,filesTouched:[],turns:[],abortController:K.abortController,priorMtime:K.priorMtime};return H0(z,q),_}function fjK(q,K,_,z){A3(q,z,(Y)=>{let $=new Set(Y.filesTouched),A=_.filter((O)=>!$.has(O)&&$.add(O));if(K.text===""&&K.toolUseCount===0&&A.length===0)return Y;return{...Y,phase:A.length>0?"updating":Y.phase,filesTouched:A.length>0?[...Y.filesTouched,...A]:Y.filesTouched,turns:Y.turns.slice(-(e8Y-1)).concat(K)}})}function ZjK(q,K){A3(q,K,(_)=>({..._,status:"completed",endTime:Date.now(),notified:!0,abortController:void 0}))}function GjK(q,K){A3(q,K,(_)=>({..._,status:"failed",endTime:Date.now(),notified:!0,abortController:void 0}))}var e8Y=30,jm8;var Hm8=y(()=>{wm8();GN();J0();jm8={name:"DreamTask",type:"dream",async kill(q,K){let _;if(A3(q,K,(z)=>{if(z.status!=="running")return z;return z.abortController?.abort(),_=z.priorMtime,{...z,status:"killed",endTime:Date.now(),notified:!0,abortController:void 0}}),_!==void 0)await Om8(_)}}});function K1Y(){let q=[Mm8,Jm8,AL6,jm8];if(TjK)q.push(TjK);if(vjK)q.push(vjK);return q}function kjK(q){return K1Y().find((K)=>K.type===q)}var TjK=null,vjK=null;var VjK=y(()=>{Hm8();gP();vK6();PK6()});async function Pm8(q,K){let{getAppState:_,setAppState:z}=K,$=_().tasks?.[q];if(!$)throw new Xm8(`No task found with ID: ${q}`,"not_found");if($.status!=="running")throw new Xm8(`Task ${q} is not running (status: ${$.status})`,"not_running");let A=kjK($.type);if(!A)throw new Xm8(`Unsupported task type: ${$.type}`,"unsupported_type");if(await A.kill(q,z),sv($)){let w=!1;if(z((j)=>{let H=j.tasks[q];if(!H||H.notified)return j;return w=!0,{...j,tasks:{...j.tasks,[q]:{...H,notified:!0}}}}),w)ZN(q,"stopped",{toolUseId:$.toolUseId,summary:$.description})}let O=sv($)?$.command:$.description;return{taskId:q,taskType:$.type,command:O}}var Xm8;var Te1=y(()=>{VjK();pC();Xm8=class Xm8 extends Error{code;constructor(q,K){super(q);this.code=K;this.name="StopTaskError"}}});function EjK(){return""}function _1Y(q){let K=q.split(` |
| 3137 | `);if(O1(_)>yjK)_=H96(_,yjK);return _.trim()}function LjK(q,K,{verbose:_}){let z=q.command??"",Y=_?z:_1Y(z);return ve1.default.createElement(s8,null,ve1.default.createElement(k,null,Y,Y!==z?"… · stopped":" · stopped"))}var ve1,NjK=2,yjK=160;var RjK=y(()=>{gK();Q5();s6();U7();ve1=O6(D6(),1)});var z1Y,Y1Y,Wm8;var ke1=y(()=>{x7();Bq();Te1();l8();RjK();z1Y=B6(()=>L.strictObject({task_id:L.string().optional().describe("The ID of the background task to stop"),shell_id:L.string().optional().describe("Deprecated: use task_id instead")})),Y1Y=B6(()=>L.object({message:L.string().describe("Status message about the operation"),task_id:L.string().describe("The ID of the task that was stopped"),task_type:L.string().describe("The type of the task that was stopped"),command:L.string().optional().describe("The command or description of the stopped task")})),Wm8=sq({name:zI,searchHint:"kill a running background task",aliases:["KillShell"],maxResultSizeChars:1e5,userFacingName:()=>"Stop Task",get inputSchema(){return z1Y()},get outputSchema(){return Y1Y()},shouldDefer:!0,isConcurrencySafe(){return!0},toAutoClassifierInput(q){return q.task_id??q.shell_id??""},async validateInput({task_id:q,shell_id:K},{getAppState:_}){let z=q??K;if(!z)return{result:!1,message:"Missing required parameter: task_id",errorCode:1};let $=_().tasks?.[z];if(!$)return{result:!1,message:`No task found with ID: ${z}`,errorCode:1};if($.status!=="running")return{result:!1,message:`Task ${z} is not running (status: ${$.status})`,errorCode:3};return{result:!0}},async description(){return"Stop a running background task by ID"},async prompt(){return _S7},mapToolResultToToolResultBlockParam(q,K){return{tool_use_id:K,type:"tool_result",content:g6(q)}},renderToolUseMessage:EjK,renderToolResultMessage:LjK,async call({task_id:q,shell_id:K},{getAppState:_,setAppState:z,abortController:Y}){let $=q??K;if(!$)throw Error("Missing required parameter: task_id");let A=await Pm8($,{getAppState:_,setAppState:z});return{data:{message:`Successfully stopped task: ${A.taskId} (${A.command})`,task_id:A.taskId,task_type:A.taskType,command:A.command}}}})});var Ve1={};T8(Ve1,{getBridgeTokenOverride:()=>DR6,getBridgeBaseUrlOverride:()=>xK6,getBridgeBaseUrl:()=>E88,getBridgeAccessToken:()=>Ay});function DR6(){return}function xK6(){return}function Ay(){return DR6()??Kq()?.accessToken}function E88(){return xK6()??u7().BASE_API_URL}var Ea=y(()=>{H3();G7()});var SjK={};T8(SjK,{uploadBriefAttachment:()=>P1Y});import{randomUUID as $1Y}from"crypto";import{readFile as A1Y}from"fs/promises";import{basename as O1Y,extname as w1Y}from"path";function J1Y(q){let K=w1Y(q).toLowerCase();return H1Y[K]??"application/octet-stream"}function qH6(q){N(`[brief:upload] ${q}`)}function M1Y(){return xK6()??process.env.ANTHROPIC_BASE_URL??u7().BASE_API_URL}async function P1Y(q,K,_){{if(!_.replBridgeEnabled)return;if(K>hjK){qH6(`skip ${q}: ${K} bytes exceeds ${hjK} limit`);return}let z=Ay();if(!z){qH6("skip: no oauth token");return}let Y;try{Y=await A1Y(q)}catch(J){qH6(`read failed for ${q}: ${J}`);return}let A=`${M1Y()}/api/oauth/file_upload`,O=O1Y(q),w=J1Y(O),j=`----FormBoundary${$1Y()}`,H=Buffer.concat([Buffer.from(`--${j}\r |