@crewx/sdk 0.9.0-rc.216 → 0.9.0-rc.218

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.
@@ -63,7 +63,7 @@ ${r.join(`
63
63
  `).filter(o=>o.trim()),n=[],r=null;for(let o of e)try{let s=JSON.parse(o);if(s.type==="assistant.message"&&typeof s.data?.content=="string"){let i=s.data.content;i.trim()&&n.push(i.trim());}s.type==="result"&&typeof s.result=="string"&&(r=s.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}var ju,Xr=k(()=>{d();zt();tn();Tt();It();At();Ye();Dn();ct();ju=new Set(["interactive","plan","autopilot"]);({command:"copilot",meta:{displayName:"Copilot",models:pi()},buildArgs(t,e,n){let r=e.additionalArgs?[...e.additionalArgs]:[];return e.model&&r.push("--model",e.model),e.mode&&ju.has(e.mode)&&r.push("--mode",e.mode),e.effort&&(vn.copilot??[]).includes(e.effort)&&r.push("--effort",e.effort),{args:r,stdinMessage:t}},extractText(t){let e=Di(t);if(e)return e;let n=t.trim();return at(n,"copilot")?"":n},extractPartialText(t){return Di(t)},parseResultMeta(t){let e=en(t);return e?{usage:{inputTokens:e.inputTokens,outputTokens:e.outputTokens,cachedInputTokens:e.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(t,e){let n;try{n=JSON.parse(t);}catch{return []}let r=n.type;if(!r)return [];if(!r.startsWith("tool.execution")&&!r.startsWith("assistant.")&&r!=="user.message")return [];let o=n.data;if(!o)return [];let s=$e(n,e??new Date().toISOString()),i=o.toolCallId;if(r==="tool.execution_start"){let a=String(o.toolName||""),c=o.arguments,u=Le(c);return (a==="bash"||a==="Bash")&&De(u)?[Pe(s,u,i)]:[{timestamp:s,type:"tool_use",toolName:a,toolInput:u,...i&&{toolUseId:i}}]}if(r==="tool.execution_complete"){let a=o.error;if(a)return [{timestamp:s,type:"tool_result",...i&&{toolUseId:i},...xe(String(a.message||""),true)}];let c=o.result,u=String(c?.content||"");return [{timestamp:s,type:"tool_result",...i&&{toolUseId:i},...xe(u,false)}]}if(r==="assistant.message"){let a=String(o.content||"");return a?[{timestamp:s,type:"text",content:a}]:[]}return []}});});function Vu(t){let e=[],n=0,r=false,o=false,s=0;for(let a=0;a<t.length;a++){let c=t[a];if(o){o=false;continue}if(c==="\\"&&r){o=true;continue}if(c==='"'){r=!r;continue}if(!r){if(c==="{")n++;else if(c==="}"&&(n--,n===0)){let u=t.slice(s,a+1).trim();u&&e.push(u),s=a+1;}}}let i=t.slice(s).trim();return i&&e.push(i),e}function Yu(t){return t[0]==="exec"?t.slice(1):t}function xi(t){let e=t.split(`
64
64
  `).map(o=>o.trim()).filter(Boolean),n=[],r=null;for(let o of e)try{let s=JSON.parse(o);if(s.type==="item.completed"&&(s.item?.type==="message"||s.item?.type==="agent_message")&&typeof s.item?.text=="string"){let i=s.item.text;i.trim()&&n.push(i.trim());}s.type==="result"&&typeof s.result=="string"&&(r=s.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}function ze(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Mi(t){return t.type==="turn.failed"?true:t.type!=="error"?false:typeof t.message=="string"||typeof t.errorMessage=="string"||typeof t.error=="string"||ze(t.error)}function Fi(t){let e=ze(t.error)?t.error:void 0,n=[t.message,t.errorMessage,e?.message,e?.detail,typeof t.error=="string"?t.error:void 0];for(let r of n)if(typeof r=="string"&&r.trim())return r;return t.type==="turn.failed"?"Codex turn failed.":"Codex CLI reported an error."}function zu(t){for(let e of t.split(/\r?\n/)){if(!e.trim())continue;let n;try{n=JSON.parse(e);}catch{continue}if(ze(n)&&Mi(n))return Fi(n)}}function Li(t,e,n,r){if(!n||t.type!=="command_execution"&&t.type!=="mcp_tool_call"||typeof t.id!="string"||!t.id.trim()||t.type==="mcp_tool_call"&&e==="item.started"&&(typeof t.server!="string"||typeof t.tool!="string"))return;let o=n.state.get("codex.pending");o||(o=new Map,n.state.set("codex.pending",o));let s=JSON.stringify([t.type,t.id]);if(e==="item.started"){let c=`codex:${JSON.stringify(t.id)}#${n.rowIndex}:${r}`,u=o.get(s)??[];return u.push(c),o.set(s,u),c}let i=o.get(s),a=i?.pop();return i?.length||o.delete(s),a}function Ju(t,e,n){let r=e.type;if(r==="command_execution"){let o=String(e.command||"");return De(o)?[Pe(t,o,n)]:[{timestamp:t,type:"tool_use",toolName:"Bash",toolInput:o,...n?{toolUseId:n}:{}}]}return r==="mcp_tool_call"?typeof e.server!="string"||typeof e.tool!="string"?[]:[{timestamp:t,type:"tool_use",toolName:`${e.server}/${e.tool}`,toolInput:Le(e.arguments),...n?{toolUseId:n}:{}}]:[]}function Xu(t,e,n){let r=e.type;if(r==="message"||r==="text"){let o=e.content;if(Array.isArray(o))for(let s of o){let i=Qu(t,s);if(i)return i}if(typeof e.text=="string")return {timestamp:t,type:"text",content:e.text}}if(r==="agent_message"&&typeof e.text=="string")return {timestamp:t,type:"text",content:e.text};if(r==="reasoning"){let o=typeof e.text=="string"?e.text.trim():"";return o?{timestamp:t,type:"thinking",content:o}:null}if(r==="command_execution"){let o=String(e.aggregated_output||e.output||""),s=!!e.is_error;return {timestamp:t,type:"tool_result",...xe(o,s),...n?{toolUseId:n}:{}}}if(r==="mcp_tool_call"){let o=ze(e.result)?e.result:void 0,i=(Array.isArray(o?.content)?o.content:[]).filter(c=>ze(c)&&c.type==="text"&&typeof c.text=="string").map(c=>c.text).join(`
65
65
  `),a=typeof e.error=="string"?e.error:ze(e.error)&&typeof e.error.message=="string"?e.error.message:"";return {timestamp:t,type:"tool_result",resultPreview:i||a,isError:e.status==="failed"||e.status==="error"||e.is_error===true||e.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let o=String(e.name||e.tool_name||""),s=e.input,i=Le(s);return o==="Bash"&&De(i)?Pe(t,i):{timestamp:t,type:"tool_use",toolName:o,toolInput:i}}if(r==="tool_result"){let o=!!e.is_error,s=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...xe(s,o)}}if(r==="web_search"){let o=e.action,s;if(o?.type==="search"){let i=o.queries;s=String(o.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else s=e.query?"open: "+String(e.query):"";return !s&&!(ze(o)&&o.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:s}}if(r==="file_change"){let o=e.changes;if(!Array.isArray(o)||o.length===0)return null;let s=o.map(a=>String(a.path||"")).filter(Boolean);if(s.length===0)return null;let i=s.length===1?s[0]:`${s.slice(0,2).join(", ")}${s.length>2?` (+${s.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function Qu(t,e){let n=e.type;if(n==="text")return {timestamp:t,type:"text",content:String(e.text||"")};if(n==="tool_use"){let r=String(e.name||""),o=e.input,s=Le(o);return r==="Bash"&&De(s)?Pe(t,s):{timestamp:t,type:"tool_use",toolName:r,toolInput:s}}return null}var Wu,Ku,Qr=k(()=>{d();Ke();zt();tn();Tt();It();$r();At();Zt();Ye();ct();Wu=new Set(["turn.started","turn.completed","item.updated"]),Ku="cli/codex";({command:"codex",meta:{displayName:"Codex",models:li(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:o}=dt(e.model),s=e.effort??o,i=e.resumeSessionId?mi(e.mode):hi(e.mode),a=yi(s),c=r?["-m",r]:[],u=Yu(e.additionalArgs??[]),g=u.includes("--json")||u.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...g,...i,...a,...c,...u,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...g,...i,...a,...c,...u],stdinMessage:t}},extractText(t){let e=zu(t);if(e)throw new G(e,Ku);let n=xi(t);if(n)return n;let r=t.trim();return at(r,"codex")?"":r},extractPartialText(t){return xi(t)},parseResultMeta(t){let e=en(t);return e?{usage:{inputTokens:e.inputTokens,outputTokens:e.outputTokens,cachedInputTokens:e.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(t,e,n){let r=e??new Date().toISOString(),o=[],s;try{JSON.parse(t),s=[t];}catch{s=Vu(t),s.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,a]of s.entries()){let c;try{c=JSON.parse(a);}catch{continue}if(!ze(c))continue;let u=c.type;if(!u)continue;let p=$e(c,r);if(Mi(c)){let _=Fi(c);o.push({timestamp:p,type:"error",content:_,errorMessage:_});continue}if(!u.startsWith("item.")&&!u.startsWith("turn.")&&!u.startsWith("thread.")||Hr(c))continue;u==="thread.started"&&n&&n.state.delete("codex.pending");let g=c.item;if(g){if(u==="item.started"){o.push(...Ju(p,g,Li(g,u,n,i)));continue}if(u==="item.completed"){let _=Xu(p,g,Li(g,u,n,i));_&&o.push(_);continue}}}return o},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Wu.has(r):!1}catch{return false}}});});var qi=k(()=>{d();});var Hi=k(()=>{d();});function el(t){let e=t.match(/(?:^|[^0-9])([0-9]{1,5})(?![0-9])/);if(!e)return null;let n=Number(e[1]);return Number.isInteger(n)&&n>0&&n<=65535?n:null}function tl(){return new Promise(t=>{let e=false,n,r=o=>{e||(e=true,n&&clearTimeout(n),t(o));};n=setTimeout(()=>r(null),$i),n.unref();try{child_process.execFile("chcp.com",[],{encoding:"ascii",timeout:$i,windowsHide:!0},(s,i)=>{if(s){r(null);return}r(el(String(i)));}).once("error",()=>r(null));}catch{r(null);}})}function nl(){return process.platform!=="win32"?Promise.resolve(null):(xn||(xn=tl(),xn.then(t=>{},()=>{})),xn)}function rl(){process.platform==="win32"&&nl();}var $i,xn,Gi=k(()=>{d();$i=1e3;rl();});var Zr=k(()=>{d();});var ji=k(()=>{d();});var eo=k(()=>{d();Ke();Zr();ji();});var Wi=k(()=>{d();to();Hi();Gi();Zr();eo();Ye();});var no=k(()=>{d();Ke();qi();tn();It();ct();Wi();eo();});var Ki=k(()=>{d();});function Ln(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function _l(t,e){let n=[];for(let r=0;r<t.length;r+=1){let o=t[r],s=[...e].find(i=>o===i||o.startsWith(`${i}=`));s?o===s&&r+1<t.length&&(r+=1):n.push(o);}return n}function gl(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],o=r.indexOf("="),s=o>0?r.slice(0,o):r;if(!ll.has(s)){e.push(r);continue}r===s&&n+1<t.length&&!t[n+1].startsWith("-")&&(n+=1);}return e}function he(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function fl(t,e){if(!(t?ul.has(t)||Ve(ro).some(s=>s.id===t):false)||!t)return e;let r=Qt(ro,t),o=Vr(ro)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:o&&r.includes(o)?o:void 0:o}function Be(t){return typeof t=="number"&&Number.isSafeInteger(t)&&t>=0?t:void 0}function io(t){return t.kind==="step_update"?typeof t.step.conversation_id=="string"?t.step.conversation_id:void 0:typeof t.envelope.conversation_id=="string"?t.envelope.conversation_id:void 0}function ao(t){return t.step.step_index}function H(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&Cn(e)?.slice(0,500).trim()||void 0}function hl(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&pl.has(n))return n;let r=`${n} ${e??""}`.toLowerCase();return /quota|resource_exhausted|usage[ _-]?limit|credits?.{0,20}exhaust/.test(r)?"QUOTA_EXHAUSTED":/rate[ _-]?limit|throttl/.test(r)?"RATE_LIMITED":/auth|sign[ _-]?in|log(?:ged)?[ _-]?in|unauthori[sz]ed|credential/.test(r)?"AUTH_REQUIRED":[/unknown (?:flag|option)/,/flag provided but not defined/,/unrecognized (?:flag|option)/,/invalid value for (?:flag|option)/,/invalid (?:flag|option)/].some(s=>s.test(r))?"INVALID_PROVIDER_FORMAT":/invalid.{0,24}model|model.{0,24}(unknown|unavailable|not found|not recognized)|config/.test(r)?"MODEL_UNAVAILABLE":"UNKNOWN"}function ml(t){return t==="AUTH_REQUIRED"||t==="TIMEOUT_IDLE"||t==="TIMEOUT_TOTAL"||t==="TIMEOUT_RESUME"||t==="PROVIDER_CRASHED"?"permanent":t==="MODEL_UNAVAILABLE"||t==="INVALID_PROVIDER_FORMAT"||t==="PROVIDER_NOT_FOUND"?"config":"transient"}function zi(t){let e=he(t)?t:void 0,n=e&&he(e.error)?e.error:void 0,r=e?H(e.code)??H(e.error_code)??H(n?.code)??H(n?.error_code):void 0,o=typeof t=="string"?H(t):e?H(e.message)??H(e.error)??H(e.reason)??H(n?.message)??H(n?.error)??H(n?.reason):void 0,s=hl(r,o),i=e?Be(e.retry_after_ms)??Be(e.retryAfterMs)??Be(n?.retry_after_ms)??Be(n?.retryAfterMs):void 0;return {code:s,kind:ml(s),message:o??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function Fn(t){let e=zi(t);return new G(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function co(t){return new G(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function yl(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=so))throw new G(`Input is too large: final provider initial input is ${e} UTF-8 bytes; budget is ${so} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function oo(){return new G("Antigravity CLI returned empty output with exit code 0. agy may have hidden an auth/quota/model error in its log file; inspect ~/.gemini/antigravity-cli/log for details.","cli/antigravity",{code:"EMPTY_OUTPUT",kind:"transient"})}function Un(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function qn(t){for(let e=t.length-1;e>=0;e-=1){let n=t[e];if(n&&(n.kind==="result"||n.kind==="legacy_result"||n.kind==="agy_error"))return {event:n,index:e}}}function kl(t){let e=qn(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||Un(e.event)?.status!=="SUCCESS"||Mn(t))return false;let r=new Map;for(let o of t){if(o.kind!=="step_update"||o.step.step_type!=="agent_response")continue;let s=io(o),i=ao(o);!s||!Number.isSafeInteger(i)||r.set(JSON.stringify([s,i]),o.step);}if(r.size===0)return false;for(let o of r.values())if(o.state!=="DONE"||!he(o.usage)||Be(o.usage.input_tokens)===void 0||Be(o.usage.output_tokens)===void 0)return false;return true}function Sl(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function wl(t,e){return he(t)&&he(e)?{...e,...t}:he(t)&&typeof e=="string"?{...t,message:e}:typeof t=="string"&&he(e)?{...e,message:t}:t??e}function El(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let s of e){let i=he(s)?s:void 0,a=typeof s=="string"?H(s):H(i?.display_name)??H(i?.action);a&&!n.includes(a)&&n.length<5&&n.push(a.slice(0,80));}let r=Math.max(0,e.length-n.length),o=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new G(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${o}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Mn(t){let e=qn(t);if(!e)return;if(e.event.kind==="agy_error")return Fn(e.event.error);let n=Un(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return El(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return co("Antigravity returned a result with an unsupported status.");let r=n.error,o=wl(r==null||r===""?n:r,Sl(t,e.index));return Fn(o)}function Ji(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function Rl(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function Tl(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function Xi(t){let e=Ji(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function Al(t){let e=he(t)?t:void 0,n=e&&he(e.error)?e.error:void 0,r=typeof t=="string"?t.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,o=(H(e?.type)??H(e?.code)??H(e?.error_type)??H(n?.type)??H(n?.code)??H(n?.error_type)??H(r)??"TOOL_ERROR").slice(0,60),s=zi(t).message.slice(0,250);return Xi({type:o,message:s})??"Antigravity reported a tool error."}function Vi(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function Yi(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var ro,ul,ll,so,pl,uo=k(()=>{d();Ke();Ki();Ur();Jt();Ye();Zt();On();ro="antigravity",ul=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),ll=new Set(["--conversation","--resume","--continue"]),so=18e4,pl=new Set(["QUOTA_EXHAUSTED","RATE_LIMITED","EMPTY_OUTPUT","AUTH_REQUIRED","MODEL_UNAVAILABLE","TIMEOUT_IDLE","TIMEOUT_TOTAL","TIMEOUT_RESUME","PROVIDER_NOT_FOUND","INVALID_PROVIDER_FORMAT","PROVIDER_CRASHED","UNKNOWN"]);({command:"agy",maxInitialInputBytes:so,meta:{displayName:"Antigravity",models:_i(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=Yt(t);if(e?.kind!=="init")return null;let n=e.envelope.conversation_id;return typeof n=="string"&&n.trim().length>0?n.trim():null},buildArgs(t,e,n){yl(t);let{model:r,effort:o}=dt(e.model),s=Wr(r),i=s.model,a=e.effort??o??s.effort,c=fl(i,a),u=e.additionalArgs??[],p=gl(_l(u,new Set(["--input-format","--output-format"]))),g=i&&!Ln(u,"--model")?["--model",i]:[],_=Ln(u,"--effort")?[]:Ei(c),S=Ln(u,"--mode")||Ln(u,"--dangerously-skip-permissions")?[]:wi(e.mode),w=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...g,..._,...S,...w,...p],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
66
- `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(t){let e=Rt(t),n=qn(e)?.event,r=Mn(e);if(r)throw r;let o=n?Un(n):void 0;if(o){if(o.status!=="SUCCESS")throw co("Antigravity returned a result with an unsupported status.");if(typeof o.response!="string")throw co("Antigravity returned a successful result without a response string.");if(!o.response.trim())throw oo();return o.response}if(e.length>0)throw oo();let s=t.trim();if(!s)throw oo();return s},extractPartialText(t){let e=Rt(t),n=qn(e)?.event;if(!n||n.kind==="agy_error")return;let r=Un(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(t,e,n){let r=Rt(n??""),o=Mn(r);return o||(t!==0&&e.trim()?Fn(e):null)},parseResultMeta(t){let e=Rt(t),n=0,r=0,o=0,s=0,i=new Set;for(let c of e){if(c.kind!=="step_update"||c.step.state!=="DONE"||!he(c.step.usage))continue;let u=io(c),p=ao(c);if(!u||!Number.isSafeInteger(p))continue;let g=JSON.stringify([u,p]);if(i.has(g))continue;let _=c.step.usage,S=Be(_.input_tokens),w=Be(_.output_tokens);S===void 0||w===void 0||(i.add(g),n+=S,r+=w,o+=Be(_.cache_read_tokens)??0,s+=1);}return {usage:s===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:o,costUsd:0,complete:kl(e)},model:null}},parseEvent(t,e,n){let r=Yt(t);if(!r)return [];let o=e??new Date().toISOString();if(r.kind==="agy_error")return [Yi(o,Fn(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let S=Mn([r]);return S?[Yi(o,S)]:[]}if(r.kind!=="step_update")return [];let{step:s}=r,i=io(r)??"unknown",a=ao(r),c=`${i}:${a}`;if((s.state==="DONE"||s.state==="ERROR")&&Vi(n,`antigravity:terminal:${c}`))return [];if(s.step_type==="agent_response")return typeof s.text_delta=="string"&&s.text_delta.length>0?[{timestamp:o,type:"text",content:s.text_delta}]:[];if(s.step_type!=="tool")return [];let u=he(s.tool_info)?s.tool_info:void 0,p=Tl(s,u);if(!p)return [];let g=Rl(s);if(s.state==="ACTIVE"){if(Vi(n,`antigravity:active:${c}`))return [];let S=Ji(u?.parameters);return [{timestamp:o,type:"tool_use",toolName:p,toolUseId:g,...S===void 0?{}:{toolInput:S}}]}let _=s.state==="ERROR"?Al(u?.error):Xi(u?.output);return [{timestamp:o,type:"tool_result",toolName:p,toolUseId:g,..._===void 0?{}:{resultPreview:_},...s.state==="ERROR"?{isError:true}:{}}]}});});var Zi=k(()=>{d();Tt();It();At();ct();});var lo=k(()=>{d();Ke();Fr();Ye();At();Zt();ct();});var to=k(()=>{d();Jr();Xr();Qr();no();uo();Zi();lo();Jr();Xr();Qr();no();uo();lo();Tt();});var ea=k(()=>{d();Zs();to();});var po=k(()=>{d();ea();In();});var nn,Ct=k(()=>{d();nn=["success","completed","done","failed","error","stopped","runner_lost"];});var rn=k(()=>{d();});var go=k(()=>{d();Mr();rn();});var Hl,Nt=k(()=>{d();P();F();q();M();U();St();In();Lr();Mr();bn();vr();po();Ct();rn();go();rn();St();Hl="0.8.9-rc.13",parseInt(Hl.split("rc.")[1]),new Set(nn);});d();d();d();var T="workout-log",Je="workout-log.records.v1",ut=500,Bn=100,Gn=4096,vt=6e4,jn=200,Dt=20,on=6e4;d();var Pt=class{epoch=0;activeSession=null;grantControllers=new Map;get activeAccountKey(){return this.activeSession?.accountKey??null}get activeSessionEpoch(){let e=this.activeSession;return e&&!e.controller.signal.aborted?e.epoch:null}currentToken(e){let n=this.activeSession;return !n||n.accountKey!==e||n.controller.signal.aborted?null:this.toSessionToken(n)}activate(e){if(!/^[0-9a-f]{64}$/.test(e))throw new Error("INVALID_ACCOUNT_KEY");if(this.activeSession?.accountKey===e&&!this.activeSession.controller.signal.aborted)return this.toSessionToken(this.activeSession);this.abortActiveSession();let n={accountKey:e,epoch:++this.epoch,controller:new AbortController};return this.activeSession=n,this.toSessionToken(n)}captureGrant(e,n,r){if(!this.isCurrent(e))throw new Error("APP_SYNC_SESSION_STALE");if(!n||!Number.isSafeInteger(r)||r<1)throw new Error("INVALID_GRANT_FENCE");let o=new AbortController,s=this.grantKey(e.accountKey,n,r),i=()=>o.abort(e.signal.reason);e.signal.aborted?i():e.signal.addEventListener("abort",i,{once:true});let a=this.grantControllers.get(s)??new Set;return a.add({controller:o,sessionSignal:e.signal,onSessionAbort:i}),this.grantControllers.set(s,a),{accountKey:e.accountKey,epoch:e.epoch,grantId:n,generation:r,signal:o.signal}}isCurrent(e){let n=this.activeSession;return n!==null&&n.accountKey===e.accountKey&&n.epoch===e.epoch&&!n.controller.signal.aborted&&!e.signal.aborted}release(e){let n=this.grantKey(e.accountKey,e.grantId,e.generation),r=this.grantControllers.get(n);if(r){for(let o of r)o.controller.signal===e.signal&&(o.sessionSignal.removeEventListener("abort",o.onSessionAbort),r.delete(o));r.size===0&&this.grantControllers.delete(n);}}cancelGrant(e,n,r){let o=this.grantKey(e,n,r),s=this.grantControllers.get(o);if(s){for(let i of s)i.sessionSignal.removeEventListener("abort",i.onSessionAbort),i.controller.abort("grant_invalidated");this.grantControllers.delete(o);}}suspend(e){this.activeSession&&(e===void 0||this.activeSession.accountKey===e)&&(this.abortActiveSession(),this.epoch+=1);}toSessionToken(e){return {accountKey:e.accountKey,epoch:e.epoch,signal:e.controller.signal}}abortActiveSession(){let e=this.activeSession;if(e){e.controller.abort("session_suspended");for(let[n,r]of this.grantControllers)if(n.startsWith(`${e.accountKey}:${e.epoch}:`)){for(let o of r)o.sessionSignal.removeEventListener("abort",o.onSessionAbort),o.controller.abort("session_suspended");this.grantControllers.delete(n);}this.activeSession=null;}}grantKey(e,n,r){return `${e}:${this.activeSession?.epoch??this.epoch}:${n}:${r}`}};d();var ka=Je,pe=Object.freeze({root:"docs/apps/workout-log",include:Object.freeze(["exercises.md","routines/<id>.md","workouts/<YYYY-MM-DD>-<id>.md"]),idPattern:"^[A-Za-z0-9_-]{1,40}$",exclude:Object.freeze(["migration/**","*.json","app-state/**",".*","*~","*.tmp","*.swp","*.part",".env*","auth.json","*.key","*.pem"])}),Wn=Object.freeze({exactFiles:Object.freeze(["exercises.md"]),directFolders:Object.freeze(["routines","workouts"]),suffix:".md",maxDepth:1}),Sa=/^[A-Za-z0-9_-]{1,40}$/,To=["root","include","idPattern","exclude"];function Ao(t,e){return Array.isArray(t)&&t.length===e.length&&t.every((n,r)=>n===e[r])}function wa(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Ea(t){if(t==="exercises.md")return "exercises";if(/^routines\/[A-Za-z0-9_-]{1,40}\.md$/.test(t))return "routine";let e=/^workouts\/(\d{4})-(\d{2})-(\d{2})-([A-Za-z0-9_-]{1,40})\.md$/.exec(t);if(!e||!Sa.test(e[4]))return null;let[,n,r,o]=e,s=Number(n),i=Number(r),a=Number(o);if(s<1||i<1||i>12||a<1||a>31)return null;let c=new Date(0);return c.setUTCHours(0,0,0,0),c.setUTCFullYear(s,i-1,a),c.getUTCFullYear()!==s||c.getUTCMonth()!==i-1||c.getUTCDate()!==a?null:"workout"}function Ra(t){let n=t.trim().replace(/[ \t]+#.*$/,"").trim();return /^[A-Za-z0-9_-]+$/.test(n)?n:/^"[A-Za-z0-9_-]+"$/.test(n)||/^'[A-Za-z0-9_-]+'$/.test(n)?n.slice(1,-1):null}function Ta(t){if(typeof t!="string")return null;let e=t.indexOf(`
66
+ `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(t){let e=Rt(t),n=qn(e)?.event,r=Mn(e);if(r)throw r;let o=n?Un(n):void 0;if(o){if(o.status!=="SUCCESS")throw co("Antigravity returned a result with an unsupported status.");if(typeof o.response!="string")throw co("Antigravity returned a successful result without a response string.");if(!o.response.trim())throw oo();return o.response}if(e.length>0)throw oo();let s=t.trim();if(!s)throw oo();return s},extractPartialText(t){let e=Rt(t),n=qn(e)?.event;if(!n||n.kind==="agy_error")return;let r=Un(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(t,e,n){let r=Rt(n??""),o=Mn(r);return o||(t!==0&&e.trim()?Fn(e):null)},parseResultMeta(t){let e=Rt(t),n=0,r=0,o=0,s=0,i=new Set;for(let c of e){if(c.kind!=="step_update"||c.step.state!=="DONE"||!he(c.step.usage))continue;let u=io(c),p=ao(c);if(!u||!Number.isSafeInteger(p))continue;let g=JSON.stringify([u,p]);if(i.has(g))continue;let _=c.step.usage,S=Be(_.input_tokens),w=Be(_.output_tokens);if(S===void 0||w===void 0)continue;i.add(g);let R=Be(_.cache_read_tokens)??0;n+=S+R,r+=w,o+=R,s+=1;}return {usage:s===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:o,costUsd:0,complete:kl(e)},model:null}},parseEvent(t,e,n){let r=Yt(t);if(!r)return [];let o=e??new Date().toISOString();if(r.kind==="agy_error")return [Yi(o,Fn(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let S=Mn([r]);return S?[Yi(o,S)]:[]}if(r.kind!=="step_update")return [];let{step:s}=r,i=io(r)??"unknown",a=ao(r),c=`${i}:${a}`;if((s.state==="DONE"||s.state==="ERROR")&&Vi(n,`antigravity:terminal:${c}`))return [];if(s.step_type==="agent_response")return typeof s.text_delta=="string"&&s.text_delta.length>0?[{timestamp:o,type:"text",content:s.text_delta}]:[];if(s.step_type!=="tool")return [];let u=he(s.tool_info)?s.tool_info:void 0,p=Tl(s,u);if(!p)return [];let g=Rl(s);if(s.state==="ACTIVE"){if(Vi(n,`antigravity:active:${c}`))return [];let S=Ji(u?.parameters);return [{timestamp:o,type:"tool_use",toolName:p,toolUseId:g,...S===void 0?{}:{toolInput:S}}]}let _=s.state==="ERROR"?Al(u?.error):Xi(u?.output);return [{timestamp:o,type:"tool_result",toolName:p,toolUseId:g,..._===void 0?{}:{resultPreview:_},...s.state==="ERROR"?{isError:true}:{}}]}});});var Zi=k(()=>{d();Tt();It();At();ct();});var lo=k(()=>{d();Ke();Fr();Ye();At();Zt();ct();});var to=k(()=>{d();Jr();Xr();Qr();no();uo();Zi();lo();Jr();Xr();Qr();no();uo();lo();Tt();});var ea=k(()=>{d();Zs();to();});var po=k(()=>{d();ea();In();});var nn,Ct=k(()=>{d();nn=["success","completed","done","failed","error","stopped","runner_lost"];});var rn=k(()=>{d();});var go=k(()=>{d();Mr();rn();});var Hl,Nt=k(()=>{d();P();F();q();M();U();St();In();Lr();Mr();bn();vr();po();Ct();rn();go();rn();St();Hl="0.8.9-rc.13",parseInt(Hl.split("rc.")[1]),new Set(nn);});d();d();d();var T="workout-log",Je="workout-log.records.v1",ut=500,Bn=100,Gn=4096,vt=6e4,jn=200,Dt=20,on=6e4;d();var Pt=class{epoch=0;activeSession=null;grantControllers=new Map;get activeAccountKey(){return this.activeSession?.accountKey??null}get activeSessionEpoch(){let e=this.activeSession;return e&&!e.controller.signal.aborted?e.epoch:null}currentToken(e){let n=this.activeSession;return !n||n.accountKey!==e||n.controller.signal.aborted?null:this.toSessionToken(n)}activate(e){if(!/^[0-9a-f]{64}$/.test(e))throw new Error("INVALID_ACCOUNT_KEY");if(this.activeSession?.accountKey===e&&!this.activeSession.controller.signal.aborted)return this.toSessionToken(this.activeSession);this.abortActiveSession();let n={accountKey:e,epoch:++this.epoch,controller:new AbortController};return this.activeSession=n,this.toSessionToken(n)}captureGrant(e,n,r){if(!this.isCurrent(e))throw new Error("APP_SYNC_SESSION_STALE");if(!n||!Number.isSafeInteger(r)||r<1)throw new Error("INVALID_GRANT_FENCE");let o=new AbortController,s=this.grantKey(e.accountKey,n,r),i=()=>o.abort(e.signal.reason);e.signal.aborted?i():e.signal.addEventListener("abort",i,{once:true});let a=this.grantControllers.get(s)??new Set;return a.add({controller:o,sessionSignal:e.signal,onSessionAbort:i}),this.grantControllers.set(s,a),{accountKey:e.accountKey,epoch:e.epoch,grantId:n,generation:r,signal:o.signal}}isCurrent(e){let n=this.activeSession;return n!==null&&n.accountKey===e.accountKey&&n.epoch===e.epoch&&!n.controller.signal.aborted&&!e.signal.aborted}release(e){let n=this.grantKey(e.accountKey,e.grantId,e.generation),r=this.grantControllers.get(n);if(r){for(let o of r)o.controller.signal===e.signal&&(o.sessionSignal.removeEventListener("abort",o.onSessionAbort),r.delete(o));r.size===0&&this.grantControllers.delete(n);}}cancelGrant(e,n,r){let o=this.grantKey(e,n,r),s=this.grantControllers.get(o);if(s){for(let i of s)i.sessionSignal.removeEventListener("abort",i.onSessionAbort),i.controller.abort("grant_invalidated");this.grantControllers.delete(o);}}suspend(e){this.activeSession&&(e===void 0||this.activeSession.accountKey===e)&&(this.abortActiveSession(),this.epoch+=1);}toSessionToken(e){return {accountKey:e.accountKey,epoch:e.epoch,signal:e.controller.signal}}abortActiveSession(){let e=this.activeSession;if(e){e.controller.abort("session_suspended");for(let[n,r]of this.grantControllers)if(n.startsWith(`${e.accountKey}:${e.epoch}:`)){for(let o of r)o.sessionSignal.removeEventListener("abort",o.onSessionAbort),o.controller.abort("session_suspended");this.grantControllers.delete(n);}this.activeSession=null;}}grantKey(e,n,r){return `${e}:${this.activeSession?.epoch??this.epoch}:${n}:${r}`}};d();var ka=Je,pe=Object.freeze({root:"docs/apps/workout-log",include:Object.freeze(["exercises.md","routines/<id>.md","workouts/<YYYY-MM-DD>-<id>.md"]),idPattern:"^[A-Za-z0-9_-]{1,40}$",exclude:Object.freeze(["migration/**","*.json","app-state/**",".*","*~","*.tmp","*.swp","*.part",".env*","auth.json","*.key","*.pem"])}),Wn=Object.freeze({exactFiles:Object.freeze(["exercises.md"]),directFolders:Object.freeze(["routines","workouts"]),suffix:".md",maxDepth:1}),Sa=/^[A-Za-z0-9_-]{1,40}$/,To=["root","include","idPattern","exclude"];function Ao(t,e){return Array.isArray(t)&&t.length===e.length&&t.every((n,r)=>n===e[r])}function wa(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Ea(t){if(t==="exercises.md")return "exercises";if(/^routines\/[A-Za-z0-9_-]{1,40}\.md$/.test(t))return "routine";let e=/^workouts\/(\d{4})-(\d{2})-(\d{2})-([A-Za-z0-9_-]{1,40})\.md$/.exec(t);if(!e||!Sa.test(e[4]))return null;let[,n,r,o]=e,s=Number(n),i=Number(r),a=Number(o);if(s<1||i<1||i>12||a<1||a>31)return null;let c=new Date(0);return c.setUTCHours(0,0,0,0),c.setUTCFullYear(s,i-1,a),c.getUTCFullYear()!==s||c.getUTCMonth()!==i-1||c.getUTCDate()!==a?null:"workout"}function Ra(t){let n=t.trim().replace(/[ \t]+#.*$/,"").trim();return /^[A-Za-z0-9_-]+$/.test(n)?n:/^"[A-Za-z0-9_-]+"$/.test(n)||/^'[A-Za-z0-9_-]+'$/.test(n)?n.slice(1,-1):null}function Ta(t){if(typeof t!="string")return null;let e=t.indexOf(`
67
67
  `);if((e<0?t:t.slice(0,e)).replace(/\r$/,"")!=="---")return null;let r=new Map,o=e<0?t.length:e+1;for(;o<=t.length;){let s=t.indexOf(`
68
68
  `,o),i=s<0?t.length:s,a=t.slice(o,i);a.endsWith("\r")&&(a=a.slice(0,-1));let c=s<0?i:s+1;if(Buffer.byteLength(t.slice(0,c),"utf8")>4096)return null;if(a==="---")return r.has("crewx_app")&&r.has("kind")?r:null;let u=/^(crewx_app|kind):[ \t]*(.*)$/.exec(a);if(u){let p=u[1];if(r.has(p))return null;let g=Ra(u[2]);if(g===null)return null;r.set(p,g);}if(s<0)break;o=s+1;}return null}var xt=class{scopeVersion=Je;definition=pe;matchesDefinition(e,n){return e!==ka||!wa(n)||Object.keys(n).length!==To.length||!To.every(r=>Object.hasOwn(n,r))?false:n.root===pe.root&&n.idPattern===pe.idPattern&&Ao(n.include,pe.include)&&Ao(n.exclude,pe.exclude)}validateRef(e){if(typeof e!="string"||e.length===0||e.length>256)return {valid:false,reason:"out_of_scope"};if(e.includes("\0")||e.includes("\\")||e.startsWith("/")||e.startsWith("~"))return {valid:false,reason:"out_of_scope"};if(e.split("/").some(o=>o===""||o==="."||o===".."))return {valid:false,reason:"out_of_scope"};if(e.startsWith(".")||/(?:^|\/)\./.test(e)||/(?:^|\/)[^/]*(?:~|\.tmp|\.swp|\.part)$/.test(e))return {valid:false,reason:"out_of_scope"};if(/(?:^|\/)(?:auth\.json|[^/]*\.key|[^/]*\.pem)$/.test(e)||/\.env[^/]*$/.test(e))return {valid:false,reason:"out_of_scope"};let r=Ea(e);return r===null?{valid:false,reason:"out_of_scope"}:{valid:true,kind:r}}validateFrontMatter(e,n){let r=this.validateRef(e);if(!r.valid)return {valid:false,reason:"invalid_front_matter"};let o=Ta(n);return o?o.get("crewx_app")!==T?{valid:false,reason:"app_mismatch"}:o.get("kind")!==r.kind?{valid:false,reason:"kind_mismatch"}:{valid:true,kind:r.kind}:{valid:false,reason:"invalid_front_matter"}}};function L(t){return `sha256:${crypto.createHash("sha256").update(t,"utf8").digest("hex")}`}function lt(t){if(!Array.isArray(t)||t.length===0||t.length>64)return null;let e=[];for(let n of t){if(typeof n!="string"||n.length===0)return null;let r=n.normalize("NFC");if(r==="."||r===".."||r.includes("/")||r.includes("\\")||r.includes("\0")||/^[A-Za-z]:$/.test(r)||r.startsWith("~"))return null;e.push(r);}return e}d();d();var Ia=10*6e4,ba=5e3,Ge=class extends Error{constructor(n){if(!Number.isSafeInteger(n)||n<0)throw new Error("INVALID_APP_SYNC_BUDGET_RETRY_AT");super("APP_SYNC_BUDGET_DEFERRED");this.retryAt=n;this.name="AppSyncBudgetDeferredError";}retryAt;code="APP_SYNC_BUDGET_DEFERRED"},Kn=class{constructor(e){this.sqlite=e;if(!e||typeof e.prepare!="function"||typeof e.transaction!="function")throw new Error("INVALID_DOC_CREATE_LEDGER_DATABASE")}sqlite;peek(e,n){Vn(e),sn(n),this.deleteExpired(n);let r=this.readWindow(e,n);return r.count<20?{available:true,remaining:20-r.count}:{available:false,retryAt:Io(r,n)}}reserve(e){return bo(e),this.sqlite.transaction(r=>{this.deleteExpired(r.now);let o=this.readWindow(r.accountKey,r.now);return o.count>=20?{ok:false,retryAt:Io(o,r.now)}:(this.insert(r),{ok:true})}).immediate(e)}reserveForced(e){bo(e),this.deleteExpired(e.now),this.insert(e);}prune(e){return sn(e),this.deleteExpired(e)}readWindow(e,n){let r=this.sqlite.prepare(`
69
69
  SELECT COUNT(*) AS count, MIN(dispatched_at) AS oldest
@@ -63,7 +63,7 @@ ${r.join(`
63
63
  `).filter(o=>o.trim()),n=[],r=null;for(let o of e)try{let s=JSON.parse(o);if(s.type==="assistant.message"&&typeof s.data?.content=="string"){let i=s.data.content;i.trim()&&n.push(i.trim());}s.type==="result"&&typeof s.result=="string"&&(r=s.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}var zu,Qr=S(()=>{d();Jt();nn();At();bt();It();ze();Pn();ut();zu=new Set(["interactive","plan","autopilot"]);({command:"copilot",meta:{displayName:"Copilot",models:_i()},buildArgs(t,e,n){let r=e.additionalArgs?[...e.additionalArgs]:[];return e.model&&r.push("--model",e.model),e.mode&&zu.has(e.mode)&&r.push("--mode",e.mode),e.effort&&(Dn.copilot??[]).includes(e.effort)&&r.push("--effort",e.effort),{args:r,stdinMessage:t}},extractText(t){let e=Pi(t);if(e)return e;let n=t.trim();return dt(n,"copilot")?"":n},extractPartialText(t){return Pi(t)},parseResultMeta(t){let e=tn(t);return e?{usage:{inputTokens:e.inputTokens,outputTokens:e.outputTokens,cachedInputTokens:e.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(t,e){let n;try{n=JSON.parse(t);}catch{return []}let r=n.type;if(!r)return [];if(!r.startsWith("tool.execution")&&!r.startsWith("assistant.")&&r!=="user.message")return [];let o=n.data;if(!o)return [];let s=Be(n,e??new Date().toISOString()),i=o.toolCallId;if(r==="tool.execution_start"){let a=String(o.toolName||""),c=o.arguments,u=Me(c);return (a==="bash"||a==="Bash")&&Pe(u)?[xe(s,u,i)]:[{timestamp:s,type:"tool_use",toolName:a,toolInput:u,...i&&{toolUseId:i}}]}if(r==="tool.execution_complete"){let a=o.error;if(a)return [{timestamp:s,type:"tool_result",...i&&{toolUseId:i},...Le(String(a.message||""),true)}];let c=o.result,u=String(c?.content||"");return [{timestamp:s,type:"tool_result",...i&&{toolUseId:i},...Le(u,false)}]}if(r==="assistant.message"){let a=String(o.content||"");return a?[{timestamp:s,type:"text",content:a}]:[]}return []}});});function Qu(t){let e=[],n=0,r=false,o=false,s=0;for(let a=0;a<t.length;a++){let c=t[a];if(o){o=false;continue}if(c==="\\"&&r){o=true;continue}if(c==='"'){r=!r;continue}if(!r){if(c==="{")n++;else if(c==="}"&&(n--,n===0)){let u=t.slice(s,a+1).trim();u&&e.push(u),s=a+1;}}}let i=t.slice(s).trim();return i&&e.push(i),e}function Zu(t){return t[0]==="exec"?t.slice(1):t}function Li(t){let e=t.split(`
64
64
  `).map(o=>o.trim()).filter(Boolean),n=[],r=null;for(let o of e)try{let s=JSON.parse(o);if(s.type==="item.completed"&&(s.item?.type==="message"||s.item?.type==="agent_message")&&typeof s.item?.text=="string"){let i=s.item.text;i.trim()&&n.push(i.trim());}s.type==="result"&&typeof s.result=="string"&&(r=s.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}function Je(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Fi(t){return t.type==="turn.failed"?true:t.type!=="error"?false:typeof t.message=="string"||typeof t.errorMessage=="string"||typeof t.error=="string"||Je(t.error)}function Ui(t){let e=Je(t.error)?t.error:void 0,n=[t.message,t.errorMessage,e?.message,e?.detail,typeof t.error=="string"?t.error:void 0];for(let r of n)if(typeof r=="string"&&r.trim())return r;return t.type==="turn.failed"?"Codex turn failed.":"Codex CLI reported an error."}function el(t){for(let e of t.split(/\r?\n/)){if(!e.trim())continue;let n;try{n=JSON.parse(e);}catch{continue}if(Je(n)&&Fi(n))return Ui(n)}}function Mi(t,e,n,r){if(!n||t.type!=="command_execution"&&t.type!=="mcp_tool_call"||typeof t.id!="string"||!t.id.trim()||t.type==="mcp_tool_call"&&e==="item.started"&&(typeof t.server!="string"||typeof t.tool!="string"))return;let o=n.state.get("codex.pending");o||(o=new Map,n.state.set("codex.pending",o));let s=JSON.stringify([t.type,t.id]);if(e==="item.started"){let c=`codex:${JSON.stringify(t.id)}#${n.rowIndex}:${r}`,u=o.get(s)??[];return u.push(c),o.set(s,u),c}let i=o.get(s),a=i?.pop();return i?.length||o.delete(s),a}function tl(t,e,n){let r=e.type;if(r==="command_execution"){let o=String(e.command||"");return Pe(o)?[xe(t,o,n)]:[{timestamp:t,type:"tool_use",toolName:"Bash",toolInput:o,...n?{toolUseId:n}:{}}]}return r==="mcp_tool_call"?typeof e.server!="string"||typeof e.tool!="string"?[]:[{timestamp:t,type:"tool_use",toolName:`${e.server}/${e.tool}`,toolInput:Me(e.arguments),...n?{toolUseId:n}:{}}]:[]}function nl(t,e,n){let r=e.type;if(r==="message"||r==="text"){let o=e.content;if(Array.isArray(o))for(let s of o){let i=rl(t,s);if(i)return i}if(typeof e.text=="string")return {timestamp:t,type:"text",content:e.text}}if(r==="agent_message"&&typeof e.text=="string")return {timestamp:t,type:"text",content:e.text};if(r==="reasoning"){let o=typeof e.text=="string"?e.text.trim():"";return o?{timestamp:t,type:"thinking",content:o}:null}if(r==="command_execution"){let o=String(e.aggregated_output||e.output||""),s=!!e.is_error;return {timestamp:t,type:"tool_result",...Le(o,s),...n?{toolUseId:n}:{}}}if(r==="mcp_tool_call"){let o=Je(e.result)?e.result:void 0,i=(Array.isArray(o?.content)?o.content:[]).filter(c=>Je(c)&&c.type==="text"&&typeof c.text=="string").map(c=>c.text).join(`
65
65
  `),a=typeof e.error=="string"?e.error:Je(e.error)&&typeof e.error.message=="string"?e.error.message:"";return {timestamp:t,type:"tool_result",resultPreview:i||a,isError:e.status==="failed"||e.status==="error"||e.is_error===true||e.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let o=String(e.name||e.tool_name||""),s=e.input,i=Me(s);return o==="Bash"&&Pe(i)?xe(t,i):{timestamp:t,type:"tool_use",toolName:o,toolInput:i}}if(r==="tool_result"){let o=!!e.is_error,s=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...Le(s,o)}}if(r==="web_search"){let o=e.action,s;if(o?.type==="search"){let i=o.queries;s=String(o.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else s=e.query?"open: "+String(e.query):"";return !s&&!(Je(o)&&o.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:s}}if(r==="file_change"){let o=e.changes;if(!Array.isArray(o)||o.length===0)return null;let s=o.map(a=>String(a.path||"")).filter(Boolean);if(s.length===0)return null;let i=s.length===1?s[0]:`${s.slice(0,2).join(", ")}${s.length>2?` (+${s.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function rl(t,e){let n=e.type;if(n==="text")return {timestamp:t,type:"text",content:String(e.text||"")};if(n==="tool_use"){let r=String(e.name||""),o=e.input,s=Me(o);return r==="Bash"&&Pe(s)?xe(t,s):{timestamp:t,type:"tool_use",toolName:r,toolInput:s}}return null}var Ju,Xu,Zr=S(()=>{d();Ve();Jt();nn();At();bt();Br();It();en();ze();ut();Ju=new Set(["turn.started","turn.completed","item.updated"]),Xu="cli/codex";({command:"codex",meta:{displayName:"Codex",models:pi(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:o}=ct(e.model),s=e.effort??o,i=e.resumeSessionId?yi(e.mode):mi(e.mode),a=ki(s),c=r?["-m",r]:[],u=Zu(e.additionalArgs??[]),f=u.includes("--json")||u.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...f,...i,...a,...c,...u,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...f,...i,...a,...c,...u],stdinMessage:t}},extractText(t){let e=el(t);if(e)throw new j(e,Xu);let n=Li(t);if(n)return n;let r=t.trim();return dt(r,"codex")?"":r},extractPartialText(t){return Li(t)},parseResultMeta(t){let e=tn(t);return e?{usage:{inputTokens:e.inputTokens,outputTokens:e.outputTokens,cachedInputTokens:e.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(t,e,n){let r=e??new Date().toISOString(),o=[],s;try{JSON.parse(t),s=[t];}catch{s=Qu(t),s.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,a]of s.entries()){let c;try{c=JSON.parse(a);}catch{continue}if(!Je(c))continue;let u=c.type;if(!u)continue;let _=Be(c,r);if(Fi(c)){let g=Ui(c);o.push({timestamp:_,type:"error",content:g,errorMessage:g});continue}if(!u.startsWith("item.")&&!u.startsWith("turn.")&&!u.startsWith("thread.")||$r(c))continue;u==="thread.started"&&n&&n.state.delete("codex.pending");let f=c.item;if(f){if(u==="item.started"){o.push(...tl(_,f,Mi(f,u,n,i)));continue}if(u==="item.completed"){let g=nl(_,f,Mi(f,u,n,i));g&&o.push(g);continue}}}return o},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Ju.has(r):!1}catch{return false}}});});var Hi=S(()=>{d();});var $i=S(()=>{d();});function sl(t){let e=t.match(/(?:^|[^0-9])([0-9]{1,5})(?![0-9])/);if(!e)return null;let n=Number(e[1]);return Number.isInteger(n)&&n>0&&n<=65535?n:null}function il(){return new Promise(t=>{let e=false,n,r=o=>{e||(e=true,n&&clearTimeout(n),t(o));};n=setTimeout(()=>r(null),Bi),n.unref();try{execFile("chcp.com",[],{encoding:"ascii",timeout:Bi,windowsHide:!0},(s,i)=>{if(s){r(null);return}r(sl(String(i)));}).once("error",()=>r(null));}catch{r(null);}})}function al(){return process.platform!=="win32"?Promise.resolve(null):(Ln||(Ln=il(),Ln.then(t=>{},()=>{})),Ln)}function dl(){process.platform==="win32"&&al();}var Bi,Ln,ji=S(()=>{d();Bi=1e3;dl();});var eo=S(()=>{d();});var Wi=S(()=>{d();});var to=S(()=>{d();Ve();eo();Wi();});var Ki=S(()=>{d();no();$i();ji();eo();to();ze();});var ro=S(()=>{d();Ve();Hi();nn();bt();ut();Ki();to();});var Vi=S(()=>{d();});function Mn(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function yl(t,e){let n=[];for(let r=0;r<t.length;r+=1){let o=t[r],s=[...e].find(i=>o===i||o.startsWith(`${i}=`));s?o===s&&r+1<t.length&&(r+=1):n.push(o);}return n}function kl(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],o=r.indexOf("="),s=o>0?r.slice(0,o):r;if(!hl.has(s)){e.push(r);continue}r===s&&n+1<t.length&&!t[n+1].startsWith("-")&&(n+=1);}return e}function me(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Sl(t,e){if(!(t?fl.has(t)||Ye(oo).some(s=>s.id===t):false)||!t)return e;let r=Zt(oo,t),o=Yr(oo)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:o&&r.includes(o)?o:void 0:o}function Ge(t){return typeof t=="number"&&Number.isSafeInteger(t)&&t>=0?t:void 0}function ao(t){return t.kind==="step_update"?typeof t.step.conversation_id=="string"?t.step.conversation_id:void 0:typeof t.envelope.conversation_id=="string"?t.envelope.conversation_id:void 0}function co(t){return t.step.step_index}function $(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&Nn(e)?.slice(0,500).trim()||void 0}function wl(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&ml.has(n))return n;let r=`${n} ${e??""}`.toLowerCase();return /quota|resource_exhausted|usage[ _-]?limit|credits?.{0,20}exhaust/.test(r)?"QUOTA_EXHAUSTED":/rate[ _-]?limit|throttl/.test(r)?"RATE_LIMITED":/auth|sign[ _-]?in|log(?:ged)?[ _-]?in|unauthori[sz]ed|credential/.test(r)?"AUTH_REQUIRED":[/unknown (?:flag|option)/,/flag provided but not defined/,/unrecognized (?:flag|option)/,/invalid value for (?:flag|option)/,/invalid (?:flag|option)/].some(s=>s.test(r))?"INVALID_PROVIDER_FORMAT":/invalid.{0,24}model|model.{0,24}(unknown|unavailable|not found|not recognized)|config/.test(r)?"MODEL_UNAVAILABLE":"UNKNOWN"}function El(t){return t==="AUTH_REQUIRED"||t==="TIMEOUT_IDLE"||t==="TIMEOUT_TOTAL"||t==="TIMEOUT_RESUME"||t==="PROVIDER_CRASHED"?"permanent":t==="MODEL_UNAVAILABLE"||t==="INVALID_PROVIDER_FORMAT"||t==="PROVIDER_NOT_FOUND"?"config":"transient"}function Ji(t){let e=me(t)?t:void 0,n=e&&me(e.error)?e.error:void 0,r=e?$(e.code)??$(e.error_code)??$(n?.code)??$(n?.error_code):void 0,o=typeof t=="string"?$(t):e?$(e.message)??$(e.error)??$(e.reason)??$(n?.message)??$(n?.error)??$(n?.reason):void 0,s=wl(r,o),i=e?Ge(e.retry_after_ms)??Ge(e.retryAfterMs)??Ge(n?.retry_after_ms)??Ge(n?.retryAfterMs):void 0;return {code:s,kind:El(s),message:o??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function Un(t){let e=Ji(t);return new j(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function uo(t){return new j(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function Rl(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=io))throw new j(`Input is too large: final provider initial input is ${e} UTF-8 bytes; budget is ${io} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function so(){return new j("Antigravity CLI returned empty output with exit code 0. agy may have hidden an auth/quota/model error in its log file; inspect ~/.gemini/antigravity-cli/log for details.","cli/antigravity",{code:"EMPTY_OUTPUT",kind:"transient"})}function qn(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function Hn(t){for(let e=t.length-1;e>=0;e-=1){let n=t[e];if(n&&(n.kind==="result"||n.kind==="legacy_result"||n.kind==="agy_error"))return {event:n,index:e}}}function Tl(t){let e=Hn(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||qn(e.event)?.status!=="SUCCESS"||Fn(t))return false;let r=new Map;for(let o of t){if(o.kind!=="step_update"||o.step.step_type!=="agent_response")continue;let s=ao(o),i=co(o);!s||!Number.isSafeInteger(i)||r.set(JSON.stringify([s,i]),o.step);}if(r.size===0)return false;for(let o of r.values())if(o.state!=="DONE"||!me(o.usage)||Ge(o.usage.input_tokens)===void 0||Ge(o.usage.output_tokens)===void 0)return false;return true}function Al(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function Il(t,e){return me(t)&&me(e)?{...e,...t}:me(t)&&typeof e=="string"?{...t,message:e}:typeof t=="string"&&me(e)?{...e,message:t}:t??e}function bl(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let s of e){let i=me(s)?s:void 0,a=typeof s=="string"?$(s):$(i?.display_name)??$(i?.action);a&&!n.includes(a)&&n.length<5&&n.push(a.slice(0,80));}let r=Math.max(0,e.length-n.length),o=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new j(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${o}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Fn(t){let e=Hn(t);if(!e)return;if(e.event.kind==="agy_error")return Un(e.event.error);let n=qn(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return bl(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return uo("Antigravity returned a result with an unsupported status.");let r=n.error,o=Il(r==null||r===""?n:r,Al(t,e.index));return Un(o)}function Xi(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function Cl(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function Nl(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function Qi(t){let e=Xi(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function Ol(t){let e=me(t)?t:void 0,n=e&&me(e.error)?e.error:void 0,r=typeof t=="string"?t.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,o=($(e?.type)??$(e?.code)??$(e?.error_type)??$(n?.type)??$(n?.code)??$(n?.error_type)??$(r)??"TOOL_ERROR").slice(0,60),s=Ji(t).message.slice(0,250);return Qi({type:o,message:s})??"Antigravity reported a tool error."}function Yi(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function zi(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var oo,fl,hl,io,ml,lo=S(()=>{d();Ve();Vi();qr();Xt();ze();en();vn();oo="antigravity",fl=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),hl=new Set(["--conversation","--resume","--continue"]),io=18e4,ml=new Set(["QUOTA_EXHAUSTED","RATE_LIMITED","EMPTY_OUTPUT","AUTH_REQUIRED","MODEL_UNAVAILABLE","TIMEOUT_IDLE","TIMEOUT_TOTAL","TIMEOUT_RESUME","PROVIDER_NOT_FOUND","INVALID_PROVIDER_FORMAT","PROVIDER_CRASHED","UNKNOWN"]);({command:"agy",maxInitialInputBytes:io,meta:{displayName:"Antigravity",models:gi(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=zt(t);if(e?.kind!=="init")return null;let n=e.envelope.conversation_id;return typeof n=="string"&&n.trim().length>0?n.trim():null},buildArgs(t,e,n){Rl(t);let{model:r,effort:o}=ct(e.model),s=Kr(r),i=s.model,a=e.effort??o??s.effort,c=Sl(i,a),u=e.additionalArgs??[],_=kl(yl(u,new Set(["--input-format","--output-format"]))),f=i&&!Mn(u,"--model")?["--model",i]:[],g=Mn(u,"--effort")?[]:Ri(c),w=Mn(u,"--mode")||Mn(u,"--dangerously-skip-permissions")?[]:Ei(e.mode),E=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...f,...g,...w,...E,..._],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
66
- `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(t){let e=Tt(t),n=Hn(e)?.event,r=Fn(e);if(r)throw r;let o=n?qn(n):void 0;if(o){if(o.status!=="SUCCESS")throw uo("Antigravity returned a result with an unsupported status.");if(typeof o.response!="string")throw uo("Antigravity returned a successful result without a response string.");if(!o.response.trim())throw so();return o.response}if(e.length>0)throw so();let s=t.trim();if(!s)throw so();return s},extractPartialText(t){let e=Tt(t),n=Hn(e)?.event;if(!n||n.kind==="agy_error")return;let r=qn(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(t,e,n){let r=Tt(n??""),o=Fn(r);return o||(t!==0&&e.trim()?Un(e):null)},parseResultMeta(t){let e=Tt(t),n=0,r=0,o=0,s=0,i=new Set;for(let c of e){if(c.kind!=="step_update"||c.step.state!=="DONE"||!me(c.step.usage))continue;let u=ao(c),_=co(c);if(!u||!Number.isSafeInteger(_))continue;let f=JSON.stringify([u,_]);if(i.has(f))continue;let g=c.step.usage,w=Ge(g.input_tokens),E=Ge(g.output_tokens);w===void 0||E===void 0||(i.add(f),n+=w,r+=E,o+=Ge(g.cache_read_tokens)??0,s+=1);}return {usage:s===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:o,costUsd:0,complete:Tl(e)},model:null}},parseEvent(t,e,n){let r=zt(t);if(!r)return [];let o=e??new Date().toISOString();if(r.kind==="agy_error")return [zi(o,Un(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let w=Fn([r]);return w?[zi(o,w)]:[]}if(r.kind!=="step_update")return [];let{step:s}=r,i=ao(r)??"unknown",a=co(r),c=`${i}:${a}`;if((s.state==="DONE"||s.state==="ERROR")&&Yi(n,`antigravity:terminal:${c}`))return [];if(s.step_type==="agent_response")return typeof s.text_delta=="string"&&s.text_delta.length>0?[{timestamp:o,type:"text",content:s.text_delta}]:[];if(s.step_type!=="tool")return [];let u=me(s.tool_info)?s.tool_info:void 0,_=Nl(s,u);if(!_)return [];let f=Cl(s);if(s.state==="ACTIVE"){if(Yi(n,`antigravity:active:${c}`))return [];let w=Xi(u?.parameters);return [{timestamp:o,type:"tool_use",toolName:_,toolUseId:f,...w===void 0?{}:{toolInput:w}}]}let g=s.state==="ERROR"?Ol(u?.error):Qi(u?.output);return [{timestamp:o,type:"tool_result",toolName:_,toolUseId:f,...g===void 0?{}:{resultPreview:g},...s.state==="ERROR"?{isError:true}:{}}]}});});var ea=S(()=>{d();At();bt();It();ut();});var po=S(()=>{d();Ve();Ur();ze();It();en();ut();});var no=S(()=>{d();Xr();Qr();Zr();ro();lo();ea();po();Xr();Qr();Zr();ro();lo();po();At();});var ta=S(()=>{d();ei();no();});var _o=S(()=>{d();ta();bn();});var rn,Nt=S(()=>{d();rn=["success","completed","done","failed","error","stopped","runner_lost"];});var on=S(()=>{d();});var fo=S(()=>{d();Fr();on();});var Wl,Ot=S(()=>{d();x();U();H();F();q();wt();bn();Mr();Fr();Cn();Dr();_o();Nt();on();fo();on();wt();Wl="0.8.9-rc.13",parseInt(Wl.split("rc.")[1]),new Set(rn);});d();d();d();var A="workout-log",Xe="workout-log.records.v1",lt=500,Gn=100,jn=4096,Dt=6e4,Wn=200,Pt=20,sn=6e4;d();var xt=class{epoch=0;activeSession=null;grantControllers=new Map;get activeAccountKey(){return this.activeSession?.accountKey??null}get activeSessionEpoch(){let e=this.activeSession;return e&&!e.controller.signal.aborted?e.epoch:null}currentToken(e){let n=this.activeSession;return !n||n.accountKey!==e||n.controller.signal.aborted?null:this.toSessionToken(n)}activate(e){if(!/^[0-9a-f]{64}$/.test(e))throw new Error("INVALID_ACCOUNT_KEY");if(this.activeSession?.accountKey===e&&!this.activeSession.controller.signal.aborted)return this.toSessionToken(this.activeSession);this.abortActiveSession();let n={accountKey:e,epoch:++this.epoch,controller:new AbortController};return this.activeSession=n,this.toSessionToken(n)}captureGrant(e,n,r){if(!this.isCurrent(e))throw new Error("APP_SYNC_SESSION_STALE");if(!n||!Number.isSafeInteger(r)||r<1)throw new Error("INVALID_GRANT_FENCE");let o=new AbortController,s=this.grantKey(e.accountKey,n,r),i=()=>o.abort(e.signal.reason);e.signal.aborted?i():e.signal.addEventListener("abort",i,{once:true});let a=this.grantControllers.get(s)??new Set;return a.add({controller:o,sessionSignal:e.signal,onSessionAbort:i}),this.grantControllers.set(s,a),{accountKey:e.accountKey,epoch:e.epoch,grantId:n,generation:r,signal:o.signal}}isCurrent(e){let n=this.activeSession;return n!==null&&n.accountKey===e.accountKey&&n.epoch===e.epoch&&!n.controller.signal.aborted&&!e.signal.aborted}release(e){let n=this.grantKey(e.accountKey,e.grantId,e.generation),r=this.grantControllers.get(n);if(r){for(let o of r)o.controller.signal===e.signal&&(o.sessionSignal.removeEventListener("abort",o.onSessionAbort),r.delete(o));r.size===0&&this.grantControllers.delete(n);}}cancelGrant(e,n,r){let o=this.grantKey(e,n,r),s=this.grantControllers.get(o);if(s){for(let i of s)i.sessionSignal.removeEventListener("abort",i.onSessionAbort),i.controller.abort("grant_invalidated");this.grantControllers.delete(o);}}suspend(e){this.activeSession&&(e===void 0||this.activeSession.accountKey===e)&&(this.abortActiveSession(),this.epoch+=1);}toSessionToken(e){return {accountKey:e.accountKey,epoch:e.epoch,signal:e.controller.signal}}abortActiveSession(){let e=this.activeSession;if(e){e.controller.abort("session_suspended");for(let[n,r]of this.grantControllers)if(n.startsWith(`${e.accountKey}:${e.epoch}:`)){for(let o of r)o.sessionSignal.removeEventListener("abort",o.onSessionAbort),o.controller.abort("session_suspended");this.grantControllers.delete(n);}this.activeSession=null;}}grantKey(e,n,r){return `${e}:${this.activeSession?.epoch??this.epoch}:${n}:${r}`}};d();var Ta=Xe,_e=Object.freeze({root:"docs/apps/workout-log",include:Object.freeze(["exercises.md","routines/<id>.md","workouts/<YYYY-MM-DD>-<id>.md"]),idPattern:"^[A-Za-z0-9_-]{1,40}$",exclude:Object.freeze(["migration/**","*.json","app-state/**",".*","*~","*.tmp","*.swp","*.part",".env*","auth.json","*.key","*.pem"])}),Kn=Object.freeze({exactFiles:Object.freeze(["exercises.md"]),directFolders:Object.freeze(["routines","workouts"]),suffix:".md",maxDepth:1}),Aa=/^[A-Za-z0-9_-]{1,40}$/,Ao=["root","include","idPattern","exclude"];function Io(t,e){return Array.isArray(t)&&t.length===e.length&&t.every((n,r)=>n===e[r])}function Ia(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ba(t){if(t==="exercises.md")return "exercises";if(/^routines\/[A-Za-z0-9_-]{1,40}\.md$/.test(t))return "routine";let e=/^workouts\/(\d{4})-(\d{2})-(\d{2})-([A-Za-z0-9_-]{1,40})\.md$/.exec(t);if(!e||!Aa.test(e[4]))return null;let[,n,r,o]=e,s=Number(n),i=Number(r),a=Number(o);if(s<1||i<1||i>12||a<1||a>31)return null;let c=new Date(0);return c.setUTCHours(0,0,0,0),c.setUTCFullYear(s,i-1,a),c.getUTCFullYear()!==s||c.getUTCMonth()!==i-1||c.getUTCDate()!==a?null:"workout"}function Ca(t){let n=t.trim().replace(/[ \t]+#.*$/,"").trim();return /^[A-Za-z0-9_-]+$/.test(n)?n:/^"[A-Za-z0-9_-]+"$/.test(n)||/^'[A-Za-z0-9_-]+'$/.test(n)?n.slice(1,-1):null}function Na(t){if(typeof t!="string")return null;let e=t.indexOf(`
66
+ `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(t){let e=Tt(t),n=Hn(e)?.event,r=Fn(e);if(r)throw r;let o=n?qn(n):void 0;if(o){if(o.status!=="SUCCESS")throw uo("Antigravity returned a result with an unsupported status.");if(typeof o.response!="string")throw uo("Antigravity returned a successful result without a response string.");if(!o.response.trim())throw so();return o.response}if(e.length>0)throw so();let s=t.trim();if(!s)throw so();return s},extractPartialText(t){let e=Tt(t),n=Hn(e)?.event;if(!n||n.kind==="agy_error")return;let r=qn(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(t,e,n){let r=Tt(n??""),o=Fn(r);return o||(t!==0&&e.trim()?Un(e):null)},parseResultMeta(t){let e=Tt(t),n=0,r=0,o=0,s=0,i=new Set;for(let c of e){if(c.kind!=="step_update"||c.step.state!=="DONE"||!me(c.step.usage))continue;let u=ao(c),_=co(c);if(!u||!Number.isSafeInteger(_))continue;let f=JSON.stringify([u,_]);if(i.has(f))continue;let g=c.step.usage,w=Ge(g.input_tokens),E=Ge(g.output_tokens);if(w===void 0||E===void 0)continue;i.add(f);let T=Ge(g.cache_read_tokens)??0;n+=w+T,r+=E,o+=T,s+=1;}return {usage:s===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:o,costUsd:0,complete:Tl(e)},model:null}},parseEvent(t,e,n){let r=zt(t);if(!r)return [];let o=e??new Date().toISOString();if(r.kind==="agy_error")return [zi(o,Un(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let w=Fn([r]);return w?[zi(o,w)]:[]}if(r.kind!=="step_update")return [];let{step:s}=r,i=ao(r)??"unknown",a=co(r),c=`${i}:${a}`;if((s.state==="DONE"||s.state==="ERROR")&&Yi(n,`antigravity:terminal:${c}`))return [];if(s.step_type==="agent_response")return typeof s.text_delta=="string"&&s.text_delta.length>0?[{timestamp:o,type:"text",content:s.text_delta}]:[];if(s.step_type!=="tool")return [];let u=me(s.tool_info)?s.tool_info:void 0,_=Nl(s,u);if(!_)return [];let f=Cl(s);if(s.state==="ACTIVE"){if(Yi(n,`antigravity:active:${c}`))return [];let w=Xi(u?.parameters);return [{timestamp:o,type:"tool_use",toolName:_,toolUseId:f,...w===void 0?{}:{toolInput:w}}]}let g=s.state==="ERROR"?Ol(u?.error):Qi(u?.output);return [{timestamp:o,type:"tool_result",toolName:_,toolUseId:f,...g===void 0?{}:{resultPreview:g},...s.state==="ERROR"?{isError:true}:{}}]}});});var ea=S(()=>{d();At();bt();It();ut();});var po=S(()=>{d();Ve();Ur();ze();It();en();ut();});var no=S(()=>{d();Xr();Qr();Zr();ro();lo();ea();po();Xr();Qr();Zr();ro();lo();po();At();});var ta=S(()=>{d();ei();no();});var _o=S(()=>{d();ta();bn();});var rn,Nt=S(()=>{d();rn=["success","completed","done","failed","error","stopped","runner_lost"];});var on=S(()=>{d();});var fo=S(()=>{d();Fr();on();});var Wl,Ot=S(()=>{d();x();U();H();F();q();wt();bn();Mr();Fr();Cn();Dr();_o();Nt();on();fo();on();wt();Wl="0.8.9-rc.13",parseInt(Wl.split("rc.")[1]),new Set(rn);});d();d();d();var A="workout-log",Xe="workout-log.records.v1",lt=500,Gn=100,jn=4096,Dt=6e4,Wn=200,Pt=20,sn=6e4;d();var xt=class{epoch=0;activeSession=null;grantControllers=new Map;get activeAccountKey(){return this.activeSession?.accountKey??null}get activeSessionEpoch(){let e=this.activeSession;return e&&!e.controller.signal.aborted?e.epoch:null}currentToken(e){let n=this.activeSession;return !n||n.accountKey!==e||n.controller.signal.aborted?null:this.toSessionToken(n)}activate(e){if(!/^[0-9a-f]{64}$/.test(e))throw new Error("INVALID_ACCOUNT_KEY");if(this.activeSession?.accountKey===e&&!this.activeSession.controller.signal.aborted)return this.toSessionToken(this.activeSession);this.abortActiveSession();let n={accountKey:e,epoch:++this.epoch,controller:new AbortController};return this.activeSession=n,this.toSessionToken(n)}captureGrant(e,n,r){if(!this.isCurrent(e))throw new Error("APP_SYNC_SESSION_STALE");if(!n||!Number.isSafeInteger(r)||r<1)throw new Error("INVALID_GRANT_FENCE");let o=new AbortController,s=this.grantKey(e.accountKey,n,r),i=()=>o.abort(e.signal.reason);e.signal.aborted?i():e.signal.addEventListener("abort",i,{once:true});let a=this.grantControllers.get(s)??new Set;return a.add({controller:o,sessionSignal:e.signal,onSessionAbort:i}),this.grantControllers.set(s,a),{accountKey:e.accountKey,epoch:e.epoch,grantId:n,generation:r,signal:o.signal}}isCurrent(e){let n=this.activeSession;return n!==null&&n.accountKey===e.accountKey&&n.epoch===e.epoch&&!n.controller.signal.aborted&&!e.signal.aborted}release(e){let n=this.grantKey(e.accountKey,e.grantId,e.generation),r=this.grantControllers.get(n);if(r){for(let o of r)o.controller.signal===e.signal&&(o.sessionSignal.removeEventListener("abort",o.onSessionAbort),r.delete(o));r.size===0&&this.grantControllers.delete(n);}}cancelGrant(e,n,r){let o=this.grantKey(e,n,r),s=this.grantControllers.get(o);if(s){for(let i of s)i.sessionSignal.removeEventListener("abort",i.onSessionAbort),i.controller.abort("grant_invalidated");this.grantControllers.delete(o);}}suspend(e){this.activeSession&&(e===void 0||this.activeSession.accountKey===e)&&(this.abortActiveSession(),this.epoch+=1);}toSessionToken(e){return {accountKey:e.accountKey,epoch:e.epoch,signal:e.controller.signal}}abortActiveSession(){let e=this.activeSession;if(e){e.controller.abort("session_suspended");for(let[n,r]of this.grantControllers)if(n.startsWith(`${e.accountKey}:${e.epoch}:`)){for(let o of r)o.sessionSignal.removeEventListener("abort",o.onSessionAbort),o.controller.abort("session_suspended");this.grantControllers.delete(n);}this.activeSession=null;}}grantKey(e,n,r){return `${e}:${this.activeSession?.epoch??this.epoch}:${n}:${r}`}};d();var Ta=Xe,_e=Object.freeze({root:"docs/apps/workout-log",include:Object.freeze(["exercises.md","routines/<id>.md","workouts/<YYYY-MM-DD>-<id>.md"]),idPattern:"^[A-Za-z0-9_-]{1,40}$",exclude:Object.freeze(["migration/**","*.json","app-state/**",".*","*~","*.tmp","*.swp","*.part",".env*","auth.json","*.key","*.pem"])}),Kn=Object.freeze({exactFiles:Object.freeze(["exercises.md"]),directFolders:Object.freeze(["routines","workouts"]),suffix:".md",maxDepth:1}),Aa=/^[A-Za-z0-9_-]{1,40}$/,Ao=["root","include","idPattern","exclude"];function Io(t,e){return Array.isArray(t)&&t.length===e.length&&t.every((n,r)=>n===e[r])}function Ia(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ba(t){if(t==="exercises.md")return "exercises";if(/^routines\/[A-Za-z0-9_-]{1,40}\.md$/.test(t))return "routine";let e=/^workouts\/(\d{4})-(\d{2})-(\d{2})-([A-Za-z0-9_-]{1,40})\.md$/.exec(t);if(!e||!Aa.test(e[4]))return null;let[,n,r,o]=e,s=Number(n),i=Number(r),a=Number(o);if(s<1||i<1||i>12||a<1||a>31)return null;let c=new Date(0);return c.setUTCHours(0,0,0,0),c.setUTCFullYear(s,i-1,a),c.getUTCFullYear()!==s||c.getUTCMonth()!==i-1||c.getUTCDate()!==a?null:"workout"}function Ca(t){let n=t.trim().replace(/[ \t]+#.*$/,"").trim();return /^[A-Za-z0-9_-]+$/.test(n)?n:/^"[A-Za-z0-9_-]+"$/.test(n)||/^'[A-Za-z0-9_-]+'$/.test(n)?n.slice(1,-1):null}function Na(t){if(typeof t!="string")return null;let e=t.indexOf(`
67
67
  `);if((e<0?t:t.slice(0,e)).replace(/\r$/,"")!=="---")return null;let r=new Map,o=e<0?t.length:e+1;for(;o<=t.length;){let s=t.indexOf(`
68
68
  `,o),i=s<0?t.length:s,a=t.slice(o,i);a.endsWith("\r")&&(a=a.slice(0,-1));let c=s<0?i:s+1;if(Buffer.byteLength(t.slice(0,c),"utf8")>4096)return null;if(a==="---")return r.has("crewx_app")&&r.has("kind")?r:null;let u=/^(crewx_app|kind):[ \t]*(.*)$/.exec(a);if(u){let _=u[1];if(r.has(_))return null;let f=Ca(u[2]);if(f===null)return null;r.set(_,f);}if(s<0)break;o=s+1;}return null}var Lt=class{scopeVersion=Xe;definition=_e;matchesDefinition(e,n){return e!==Ta||!Ia(n)||Object.keys(n).length!==Ao.length||!Ao.every(r=>Object.hasOwn(n,r))?false:n.root===_e.root&&n.idPattern===_e.idPattern&&Io(n.include,_e.include)&&Io(n.exclude,_e.exclude)}validateRef(e){if(typeof e!="string"||e.length===0||e.length>256)return {valid:false,reason:"out_of_scope"};if(e.includes("\0")||e.includes("\\")||e.startsWith("/")||e.startsWith("~"))return {valid:false,reason:"out_of_scope"};if(e.split("/").some(o=>o===""||o==="."||o===".."))return {valid:false,reason:"out_of_scope"};if(e.startsWith(".")||/(?:^|\/)\./.test(e)||/(?:^|\/)[^/]*(?:~|\.tmp|\.swp|\.part)$/.test(e))return {valid:false,reason:"out_of_scope"};if(/(?:^|\/)(?:auth\.json|[^/]*\.key|[^/]*\.pem)$/.test(e)||/\.env[^/]*$/.test(e))return {valid:false,reason:"out_of_scope"};let r=ba(e);return r===null?{valid:false,reason:"out_of_scope"}:{valid:true,kind:r}}validateFrontMatter(e,n){let r=this.validateRef(e);if(!r.valid)return {valid:false,reason:"invalid_front_matter"};let o=Na(n);return o?o.get("crewx_app")!==A?{valid:false,reason:"app_mismatch"}:o.get("kind")!==r.kind?{valid:false,reason:"kind_mismatch"}:{valid:true,kind:r.kind}:{valid:false,reason:"invalid_front_matter"}}};function M(t){return `sha256:${createHash("sha256").update(t,"utf8").digest("hex")}`}function pt(t){if(!Array.isArray(t)||t.length===0||t.length>64)return null;let e=[];for(let n of t){if(typeof n!="string"||n.length===0)return null;let r=n.normalize("NFC");if(r==="."||r===".."||r.includes("/")||r.includes("\\")||r.includes("\0")||/^[A-Za-z]:$/.test(r)||r.startsWith("~"))return null;e.push(r);}return e}d();d();var va=10*6e4,Da=5e3,je=class extends Error{constructor(n){if(!Number.isSafeInteger(n)||n<0)throw new Error("INVALID_APP_SYNC_BUDGET_RETRY_AT");super("APP_SYNC_BUDGET_DEFERRED");this.retryAt=n;this.name="AppSyncBudgetDeferredError";}retryAt;code="APP_SYNC_BUDGET_DEFERRED"},Vn=class{constructor(e){this.sqlite=e;if(!e||typeof e.prepare!="function"||typeof e.transaction!="function")throw new Error("INVALID_DOC_CREATE_LEDGER_DATABASE")}sqlite;peek(e,n){Yn(e),an(n),this.deleteExpired(n);let r=this.readWindow(e,n);return r.count<20?{available:true,remaining:20-r.count}:{available:false,retryAt:bo(r,n)}}reserve(e){return Co(e),this.sqlite.transaction(r=>{this.deleteExpired(r.now);let o=this.readWindow(r.accountKey,r.now);return o.count>=20?{ok:false,retryAt:bo(o,r.now)}:(this.insert(r),{ok:true})}).immediate(e)}reserveForced(e){Co(e),this.deleteExpired(e.now),this.insert(e);}prune(e){return an(e),this.deleteExpired(e)}readWindow(e,n){let r=this.sqlite.prepare(`
69
69
  SELECT COUNT(*) AS count, MIN(dispatched_at) AS oldest
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import*as Vt from'path';import Vt__default,{join,isAbsolute,dirname,resolve,basename,normalize,win32,relative,sep}from'path';import {fileURLToPath}from'url';import*as nU from'os';import nU__default,{homedir,tmpdir,hostname}from'os';import*as mr from'fs';import {promises,realpath,readFileSync,mkdirSync,chmodSync,existsSync,unlinkSync,renameSync,lstatSync,rmSync,openSync,fsyncSync,closeSync,writeSync,constants,fstatSync,readSync,createReadStream,writeFileSync,statSync,readdirSync,realpathSync,linkSync,appendFileSync}from'fs';import {execFile,spawn,execFileSync,spawnSync}from'child_process';import {StringDecoder}from'string_decoder';import*as EP from'crypto';import {randomBytes,createHash,randomUUID}from'crypto';import {realpath as realpath$1,stat,readdir,readFile,access,mkdtemp,open,rm as rm$1,lstat,mkdir,chmod,link,unlink,rename}from'fs/promises';import {Unzip,UnzipInflate,UnzipPassThrough}from'fflate';import {ndJsonStream,ClientSideConnection}from'@agentclientprotocol/sdk';import {sqliteTable,text,integer,index,check,primaryKey,uniqueIndex,real,unique,foreignKey}from'drizzle-orm/sqlite-core';import {sql,and,eq as eq$1,desc,asc,inArray,or as or$1,isNull,ne,lt as lt$1,like,gte as gte$1,isNotNull,notLike,getTableColumns,gt as gt$1,lte as lte$1}from'drizzle-orm';import {Socket,isIP}from'net';import {AGENT_METHODS,CLIENT_METHODS}from'@agentclientprotocol/sdk/dist/schema/index.js';import {zAgentRequest,zAgentNotification,zSessionNotification,zAgentResponse,zClientRequest,zClientNotification,zClientResponse,zError,zPromptResponse,zPromptRequest,zSetSessionModelResponse,zSetSessionModelRequest,zSetSessionConfigOptionResponse,zSetSessionConfigOptionRequest,zSetSessionModeResponse,zSetSessionModeRequest,zResumeSessionResponse,zResumeSessionRequest,zNewSessionResponse,zNewSessionRequest,zLogoutResponse,zLogoutRequest,zAuthenticateResponse,zAuthenticateRequest,zInitializeResponse,zInitializeRequest,zCancelNotification,zRequestPermissionResponse,zRequestPermissionRequest,zCompleteElicitationNotification}from'@agentclientprotocol/sdk/dist/schema/zod.gen.js';import*as VW from'js-yaml';import {load,dump}from'js-yaml';import {getEncoding}from'js-tiktoken';import {Tiktoken}from'js-tiktoken/lite';import Cw from'js-tiktoken/ranks/o200k_base';import {z}from'zod';import {createRequire}from'module';import*as hs from'handlebars';import hs__default from'handlebars';import {EventEmitter}from'events';import {AsyncLocalStorage}from'async_hooks';import {McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import {WebStandardStreamableHTTPServerTransport}from'@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js';import {promisify}from'util';import'console';import'stream';import*as ZW from'tar';import {gunzipSync,gzipSync}from'zlib';import {performance as performance$1}from'perf_hooks';import {parse}from'dotenv';var yw=Object.defineProperty;var _J=Object.getOwnPropertyDescriptor;var AJ=Object.getOwnPropertyNames;var IJ=Object.prototype.hasOwnProperty;var Gn=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var U=(e,t)=>()=>(e&&(t=e(e=0)),t);var bf=(e,t)=>{for(var n in t)yw(e,n,{get:t[n],enumerable:true});},EJ=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of AJ(t))!IJ.call(e,o)&&o!==n&&yw(e,o,{get:()=>t[o],enumerable:!(r=_J(t,o))||r.enumerable});return e};var TJ=e=>EJ(yw({},"__esModule",{value:true}),e);var xN,kJ,k,S,m=U(()=>{xN=()=>fileURLToPath(import.meta.url),kJ=()=>Vt__default.dirname(xN()),k=kJ(),S=xN();});var DN,rc,vf,Cf,Zh,Ga=U(()=>{m();DN=["flagship","balanced","speed"],rc=["none","minimal","low","medium","high","xhigh","max","ultra"],vf={claude:["low","medium","high","xhigh","max"],codex:["none","minimal","low","medium","high","xhigh","max","ultra"],opencode:[],copilot:["none","low","medium","high","xhigh","max"],antigravity:["low","medium","high"],grok:["low","medium","high","xhigh"]},Cf={claude:{models:[{id:"claude-fable-5-1",name:"Claude Fable 5.1",contextWindowTokens:1e6,tier:"flagship",recommended:true},{id:"claude-fable-5",name:"Claude Fable 5",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-5-5",name:"Claude Opus 5.5",contextWindowTokens:1e6,tier:"flagship",recommended:true},{id:"claude-opus-5",name:"Claude Opus 5",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-sonnet-5-5",name:"Claude Sonnet 5.5",contextWindowTokens:1e6,tier:"balanced",recommended:true},{id:"claude-sonnet-5",name:"Claude Sonnet 5",contextWindowTokens:1e6,tier:"balanced"},{id:"claude-opus-4-8[1m]",name:"Claude Opus 4.8",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-4-7[1m]",name:"Claude Opus 4.7",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-4-6[1m]",name:"Claude Opus 4.6",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-sonnet-4-6[1m]",name:"Claude Sonnet 4.6",contextWindowTokens:1e6,tier:"balanced"},{id:"claude-haiku-5-5",name:"Claude Haiku 5.5",contextWindowTokens:1e6,tier:"speed"},{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindowTokens:2e5,tier:"speed"}],modes:[{id:"default",name:"Default",description:"Uses Claude's default permission handling with normal approval prompts."},{id:"acceptEdits",name:"Accept Edits",description:"Allows file edits without approval; other permission checks remain in place."},{id:"plan",name:"Plan",description:"Keeps Claude in plan mode so it can inspect and propose changes without applying them."},{id:"dontAsk",name:"Don't Ask",description:"Does not ask for permissions; only pre-approved tool actions can proceed."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Bypasses Claude permission checks so tools can run without approval prompts."}],effort:["low","medium","high"],modelOverrides:{"claude-fable-5-1":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-fable-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"medium"},"claude-opus-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-sonnet-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-sonnet-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-8[1m]":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-7[1m]":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-6[1m]":{effort:["low","medium","high","max"],defaultEffort:"high"},"claude-sonnet-4-6[1m]":{effort:["low","medium","high","max"],defaultEffort:"high"},"claude-haiku-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"medium"},"claude-haiku-4-5":{effort:[]}},providerOptions:[]},codex:{models:[{id:"gpt-6-astra",name:"GPT-6 Astra",contextWindowTokens:105e4,tier:"flagship"},{id:"gpt-6.1-sol",name:"GPT-6.1 Sol",contextWindowTokens:105e4,tier:"balanced",recommended:true},{id:"gpt-6.1-terra",name:"GPT-6.1 Terra",contextWindowTokens:5e5,tier:"balanced"},{id:"gpt-6-sol",name:"GPT-6 Sol",contextWindowTokens:105e4,tier:"balanced"},{id:"gpt-6-luna",name:"GPT-6 Luna",contextWindowTokens:105e4,tier:"speed",recommended:true},{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",contextWindowTokens:105e4,tier:"flagship"},{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",contextWindowTokens:105e4,tier:"balanced"},{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",contextWindowTokens:105e4,tier:"speed"}],modes:[{id:"agent",name:"Agent",description:"Uses the workspace-write sandbox; can read and modify workspace files without full machine access."},{id:"read-only",name:"Read Only",description:"Uses the read-only sandbox; can inspect files but cannot write to the workspace."},{id:"plan",name:"Plan",description:"Uses the read-only sandbox for planning and inspection; cannot write to the workspace."},{id:"agent-full-access",name:"Agent Full Access",description:"Bypasses approvals and the sandbox; can access and modify files beyond the workspace."},{id:"yolo",name:"YOLO",description:"Bypasses approvals and the sandbox for unrestricted execution and full filesystem access."}],effort:["minimal","low","medium","high"],modelOverrides:{"gpt-6-astra":{effort:["low","medium","high","xhigh","max"],defaultEffort:"xhigh"},"gpt-6.1-sol":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"gpt-6.1-terra":{effort:["low","medium","high","xhigh","max","ultra"],defaultEffort:"max"},"gpt-6-sol":{effort:["none","low","medium","high","xhigh","max"],defaultEffort:"max"},"gpt-6-luna":{effort:["none","low","medium","high","xhigh","max"],defaultEffort:"medium"},"gpt-5.6-sol":{effort:["low","medium","high","xhigh","max","ultra"],defaultEffort:"xhigh"},"gpt-5.6-terra":{effort:["low","medium","high","xhigh","max","ultra"],defaultEffort:"high"},"gpt-5.6-luna":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"gpt-5.5":{effort:["low","medium","high","xhigh"],defaultEffort:"high"}},providerOptions:[]},opencode:{models:[],suggestedModels:[{id:"opencode-go/glm-5.3-flash",name:"GLM-5.3 Flash",contextWindowTokens:1e6,tier:"speed",recommended:true},{id:"opencode-go/qwen3.8-flash",name:"Qwen3.8 Flash",contextWindowTokens:1e6,tier:"speed",recommended:true},{id:"opencode-go/minimax-m3",name:"MiniMax M3",contextWindowTokens:1e6,tier:"balanced",recommended:true},{id:"opencode-go/kimi-k2.7-code",name:"Kimi K2.7 Code",contextWindowTokens:262144,tier:"balanced",recommended:true}],modes:[{id:"plan",name:"Plan",description:"Uses the plan agent without --auto; planning follows standard approval behavior."},{id:"plan-auto",name:"Plan \xB7 Auto",description:"Uses the plan agent with --auto; planning uses automatic approvals."},{id:"build",name:"Build",description:"Uses the build agent without --auto; work follows standard approval behavior."},{id:"build-auto",name:"Build \xB7 Auto",description:"Uses the build agent with --auto; work uses automatic approvals."}],effort:[],modelOverrides:{},providerOptions:[]},copilot:{models:[{id:"auto",name:"Auto"},{id:"claude-sonnet-5",name:"Claude Sonnet 5",contextWindowTokens:1e6,tier:"balanced"}],modes:[{id:"interactive",name:"Interactive",description:"Passes --mode interactive; tool access follows Copilot's interactive mode behavior."},{id:"plan",name:"Plan",description:"Passes --mode plan; planning and permission behavior follow Copilot's plan mode."},{id:"autopilot",name:"Autopilot",description:"Passes --mode autopilot; execution behavior follows Copilot's autonomous mode."}],effort:["none","low","medium","high","xhigh","max"],modelOverrides:{},providerOptions:[]},antigravity:{models:[{id:"gemini-3.8-flash",name:"Gemini 3.8 Flash",tier:"balanced"},{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",contextWindowTokens:1048576,tier:"balanced"},{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",contextWindowTokens:1048576,tier:"balanced"},{id:"gemini-3.1-pro",name:"Gemini 3.1 Pro",contextWindowTokens:1048576,tier:"flagship"},{id:"claude-sonnet-5-5-medium",name:"Claude Sonnet 5.5",tier:"balanced"},{id:"claude-opus-5-5-medium",name:"Claude Opus 5.5",tier:"flagship"},{id:"gemini-4-argon",name:"Gemini 4 Argon",tier:"flagship"}],modes:[{id:"default",name:"Default",description:"Uses Antigravity's default permission handling. No extra permission flags are passed."},{id:"plan",name:"Plan",description:"Passes --mode plan. This turns on /plan; it is not a Claude-style permission mode."},{id:"acceptEdits",name:"Accept Edits",description:"Passes --mode accept-edits."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Passes --dangerously-skip-permissions so tools can run without approval prompts."}],effort:["low","medium","high"],modelOverrides:{"gemini-3.8-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.7-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.6-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.5-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.1-pro":{effort:["low","high"],defaultEffort:"high"},"claude-sonnet-5-5-medium":{effort:["low","medium","high"],defaultEffort:"medium"},"claude-opus-5-5-medium":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-4-argon":{effort:["low","medium","high"],defaultEffort:"high"},"claude-sonnet-4-6":{effort:[]},"claude-opus-4-6-thinking":{effort:[]},"gpt-oss-120b":{effort:["medium"],defaultEffort:"medium"}},providerOptions:[]},grok:{models:[{id:"grok-4.7",name:"Grok 4.7",contextWindowTokens:5e5,tier:"flagship",recommended:true},{id:"grok-4.6",name:"Grok 4.6",contextWindowTokens:5e5,tier:"flagship"},{id:"grok-4.5",name:"Grok 4.5",contextWindowTokens:5e5,tier:"flagship"}],modes:[{id:"default",name:"Default",description:"Uses Grok's default permission handling."},{id:"acceptEdits",name:"Accept Edits",description:"Allows file edits without changing the selected sandbox profile."},{id:"auto",name:"Auto",description:"Uses Grok automatic permission handling."},{id:"dontAsk",name:"Don't Ask",description:"Does not ask for permission before tool execution."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Bypasses Grok permission checks for tool execution."},{id:"plan",name:"Plan",description:"Keeps Grok in planning mode without applying changes."}],effort:["low","medium","high"],modelOverrides:{"grok-4.7":{effort:["low","medium","high","xhigh"],defaultEffort:"high"},"grok-4.6":{effort:["low","medium","high","xhigh"],defaultEffort:"high"},"grok-4.5":{effort:["low","medium","high"],defaultEffort:"high"}},providerOptions:[{key:"alwaysApprove",type:"boolean"},{key:"sandbox",type:"enum",values:["workspace","read-only","off"]}]}},Zh={version:1,providers:{"cli/codex":{model:"gpt-6.1-sol",query:{mode:"agent",effort:"high"},execute:{mode:"agent-full-access",effort:"high"}},"cli/claude":{model:"claude-opus-5-5",query:{mode:"default",effort:"high"},execute:{mode:"bypassPermissions",effort:"xhigh"}},"cli/grok":{model:"grok-4.7",query:{mode:"default",effort:"high",providerOptions:{alwaysApprove:true,sandbox:"off"}},execute:{mode:"bypassPermissions",effort:"xhigh",providerOptions:{alwaysApprove:true,sandbox:"off"}}},"cli/antigravity":{model:"gemini-3.8-flash",query:{mode:"default",effort:"medium"},execute:{mode:"bypassPermissions",effort:"medium"}}}},Object.fromEntries(Object.entries(Cf).map(([e,t])=>[e,t.models]));});var oc,Iw,LN,Ew=U(()=>{m();oc={"claude-fable-5-1":{input:10,cachedInput:.25,output:50},"claude-fable-5":{input:10,cachedInput:1,output:50},"claude-opus-5-5":{input:4,cachedInput:.2,output:20},"claude-opus-5-5-medium":{input:4,cachedInput:.2,output:20},"claude-opus-5":{input:5,cachedInput:.5,output:25},"claude-opus-4-8":{input:5,cachedInput:.5,output:25},"claude-opus-4-7":{input:5,cachedInput:.5,output:25},"claude-opus-4-6":{input:5,cachedInput:.5,output:25},"claude-sonnet-5-5":{input:2,cachedInput:.1,output:10},"claude-sonnet-5-5-medium":{input:2,cachedInput:.1,output:10},"claude-sonnet-5":{input:2,cachedInput:.2,output:10},"claude-sonnet-4-6":{input:3,cachedInput:.3,output:15},"claude-haiku-5-5":{input:.1,cachedInput:.01,output:.5},"claude-haiku-4-5":{input:1,cachedInput:.1,output:5},"gpt-6-astra":{input:10,cachedInput:1,output:50},"gpt-6.1-sol":{input:2,cachedInput:.1,output:10},"gpt-6.1-terra":{input:1,cachedInput:.05,output:5},"gpt-6-sol":{input:2,cachedInput:.2,output:10},"gpt-6-luna":{input:.1,cachedInput:.01,output:.5},"gpt-5.6-sol":{input:4,cachedInput:.4,output:20},"gpt-5.6-terra":{input:2,cachedInput:.2,output:12},"gpt-5.6-luna":{input:.2,cachedInput:.02,output:1.2},"gpt-5.5":{input:5,cachedInput:.5,output:30},"gpt-5.4":{input:2.5,cachedInput:.25,output:15},"gpt-5.4-mini":{input:.75,cachedInput:.075,output:4.5},"gpt-5.3-codex":{input:1.75,cachedInput:.175,output:14},"gpt-5-mini":{input:.4,cachedInput:.1,output:1.6},"gpt-4.1":{input:2,cachedInput:.5,output:8},"gpt-4o":{input:2.5,cachedInput:1.25,output:10},"glm-5.3-flash":{input:.15,cachedInput:.03,output:.5},"glm-5.2":{input:1.4,cachedInput:.26,output:4.4},"glm-5.1":{input:1.4,cachedInput:.26,output:4.4},"deepseek-v4.1-flash":{input:.3,cachedInput:.006,output:1.2},"qwen3.8-flash":{input:.164,cachedInput:.018,output:.514},"minimax-m3":{input:.3,cachedInput:.06,output:1.2},"kimi-k2.7-code":{input:.95,cachedInput:.19,output:4},"gemini-3.7-flash":{input:1.5,cachedInput:.15,output:7.5},"gemini-3.6-flash":{input:1.5,cachedInput:.15,output:7.5},"grok-4.7":{input:2,cachedInput:.5,output:6},"grok-4.6":{input:2,cachedInput:.5,output:6},"grok-4.5":{input:2,cachedInput:.3,output:6}},Iw=new Set(["gpt-5.3-codex-spark","claude-opus-4-6-thinking","gpt-oss-120b","glm-5.3-flash-free","deepseek-v4.1-flash-free"]),LN=new Set(["auto","claude-fable-5","claude-fable-5-1","claude-haiku-4-5","claude-haiku-5-5","claude-opus-4-6","claude-opus-4-6-thinking","claude-opus-4-6[1m]","claude-opus-4-7","claude-opus-4-7[1m]","claude-opus-4-8","claude-opus-4-8[1m]","claude-opus-5","claude-opus-5-5","claude-opus-5-5-medium","claude-sonnet-4-6","claude-sonnet-4-6[1m]","claude-sonnet-5","claude-sonnet-5-5","claude-sonnet-5-5-medium","deepseek-v4.1-flash","deepseek-v4.1-flash-free","gemini-3.1-pro","gemini-3.6-flash","gemini-3.7-flash","gemini-3.8-flash","gemini-4-argon","glm-5.1","glm-5.2","glm-5.3-flash","glm-5.3-flash-free","gpt-4.1","gpt-4o","gpt-5-mini","gpt-5.3-codex","gpt-5.3-codex-spark","gpt-5.4","gpt-5.4-mini","gpt-5.5","gpt-5.6-luna","gpt-5.6-sol","gpt-5.6-terra","gpt-6-astra","gpt-6-luna","gpt-6-sol","gpt-6.1-sol","gpt-6.1-terra","gpt-oss-120b","grok-4.5","grok-4.6","grok-4.7","kimi-k2.7-code","minimax-m3","qwen3.8-flash"]);});function UN(e){Pf=e;}function FN(e){MN=Object.fromEntries(Object.entries(e).map(([t,n])=>[t,{...n}]));}function Tw(e){let t=e.toLowerCase().trim();t=t.replace(/\[[^\]]*\]$/g,"");let n=t.lastIndexOf("/");return n>=0&&(t=t.slice(n+1)),t=t.replace(/-\d{8}$/,""),t}function CJ(e){if(!e)return;let t="inputPerMillionTokensUsd"in e?e.inputPerMillionTokensUsd:e.input,n="outputPerMillionTokensUsd"in e?e.outputPerMillionTokensUsd:e.output;if(!(!Number.isFinite(t)||t<=0||!Number.isFinite(n)||n<=0))return {inputPerMillionTokensUsd:t,outputPerMillionTokensUsd:n}}function BN(e){if(!e)return;let t=e.replace(/\[[^\]]*\]$/g,"");return CJ(MN[t]??oc[t])}function OJ(e){if(!e)return console.warn("[pricing] missing model id; cost is being recorded as 0"),Of;let t=Tw(e),n=vJ[t];if(n)return Pf[n]??oc[n]??Of;if(Pf[t])return Pf[t];if(oc[t])return oc[t];if(Iw.has(t))return console.warn(`[pricing] unpublished model pricing: ${e}, cost_usd=0`),Of;if(LN.has(t))return console.warn(`[pricing] missing catalog pricing: ${e}, cost_usd=0`),Of;let r={...oc,...Pf};for(let o of Object.keys(r))if(t.includes(o))return r[o];return console.warn(`[pricing] Unknown model: ${e}, cost_usd=0`),Of}function PJ(e,t,n,r=0,o){let i=OJ(n),s=Math.min(r,e),d=(e-s)*i.input/1e6,c=s*i.cachedInput/1e6,l=t*i.output/1e6;return d+c+l}function ey(e,t,n,r,o,i){return e&&e>0?e:!t&&!n?0:PJ(t??0,n??0,o,r??0)}var vJ,Of,Pf,MN,ic=U(()=>{m();Ew();Ew();vJ={opus:"claude-opus-4-8",sonnet:"claude-sonnet-4-6",haiku:"claude-haiku-4-5","codex-mini":"gpt-5.3-codex",codex:"gpt-5.3-codex"},Of={input:0,cachedInput:0,output:0},Pf={},MN={};});function ty(e){return DJ[e]??e}function jN(e){return LJ.get(e)??e}function ru(e){if(!e)return {};let t=MJ.get(e);return t?{...t}:{model:e}}function os(e,t){return e==="antigravity"||e==="cli/antigravity"?ru(t):t===void 0?{}:{model:jN(t)}}var NJ,xJ,HN,DJ,LJ,$N,MJ,zs=U(()=>{m();NJ="claude-opus-4-8",xJ="claude-opus-4-8[1m]",HN=[{baseModelId:"claude-opus-4-8",catalogModelId:"claude-opus-4-8[1m]"},{baseModelId:"claude-opus-4-7",catalogModelId:"claude-opus-4-7[1m]"},{baseModelId:"claude-opus-4-6",catalogModelId:"claude-opus-4-6[1m]"},{baseModelId:"claude-sonnet-4-6",catalogModelId:"claude-sonnet-4-6[1m]"}],DJ={"accept-edits":"acceptEdits",yolo:"bypassPermissions","agent-full-access":"bypassPermissions"};LJ=new Map(HN.map(({baseModelId:e,catalogModelId:t})=>[e,t]));$N=[{legacyId:"Gemini 3.7 Flash (High)",model:"gemini-3.7-flash",effort:"high"},{legacyId:"Gemini 3.7 Flash (Medium)",model:"gemini-3.7-flash",effort:"medium"},{legacyId:"Gemini 3.7 Flash (Low)",model:"gemini-3.7-flash",effort:"low"},{legacyId:"Gemini 3.6 Flash (High)",model:"gemini-3.6-flash",effort:"high"},{legacyId:"Gemini 3.6 Flash (Medium)",model:"gemini-3.6-flash",effort:"medium"},{legacyId:"Gemini 3.6 Flash (Low)",model:"gemini-3.6-flash",effort:"low"},{legacyId:"Gemini 3.5 Flash (Medium)",model:"gemini-3.5-flash",effort:"medium"},{legacyId:"Gemini 3.5 Flash (High)",model:"gemini-3.5-flash",effort:"high"},{legacyId:"Gemini 3.5 Flash (Low)",model:"gemini-3.5-flash",effort:"low"},{legacyId:"Gemini 3.1 Pro (Low)",model:"gemini-3.1-pro",effort:"low"},{legacyId:"Gemini 3.1 Pro (High)",model:"gemini-3.1-pro",effort:"high"},{legacyId:"Claude Sonnet 4.6 (Thinking)",model:"claude-sonnet-4-6"},{legacyId:"Claude Opus 4.6 (Thinking)",model:"claude-opus-4-6-thinking"},{legacyId:"GPT-OSS 120B (Medium)",model:"gpt-oss-120b",effort:"medium"},{legacyId:"gemini-3.7-flash-high",model:"gemini-3.7-flash",effort:"high"},{legacyId:"gemini-3.7-flash-medium",model:"gemini-3.7-flash",effort:"medium"},{legacyId:"gemini-3.7-flash-low",model:"gemini-3.7-flash",effort:"low"},{legacyId:"gemini-3.6-flash-high",model:"gemini-3.6-flash",effort:"high"},{legacyId:"gemini-3.6-flash-medium",model:"gemini-3.6-flash",effort:"medium"},{legacyId:"gemini-3.6-flash-low",model:"gemini-3.6-flash",effort:"low"},{legacyId:"gemini-3.5-flash-high",model:"gemini-3.5-flash",effort:"high"},{legacyId:"gemini-3.5-flash-medium",model:"gemini-3.5-flash",effort:"medium"},{legacyId:"gemini-3.5-flash-low",model:"gemini-3.5-flash",effort:"low"},{legacyId:"gemini-3.1-pro-high",model:"gemini-3.1-pro",effort:"high"},{legacyId:"gemini-3.1-pro-low",model:"gemini-3.1-pro",effort:"low"},{legacyId:"gpt-oss-120b-medium",model:"gpt-oss-120b",effort:"medium"}],MJ=new Map($N.map(({legacyId:e,model:t,effort:n})=>[e,n===void 0?{model:t}:{model:t,effort:n}]));});function qN(){return {models:[],modes:[],effort:[],modelOverrides:{},providerOptions:[]}}function UJ(e){return Array.isArray(e)?{models:e,modes:[],effort:[],modelOverrides:{},providerOptions:[]}:e?{models:e.models??[],...e.suggestedModels!==void 0?{suggestedModels:e.suggestedModels}:{},modes:e.modes??[],effort:e.effort??[],modelOverrides:e.modelOverrides??{},providerOptions:e.providerOptions??[]}:qN()}function ny(e){ww=Object.fromEntries(Object.entries(e).map(([t,n])=>[t,UJ(n)]));}function FJ(){ww={};}function ou(e){VN={...e};}function mi(e){return no(e).models}function no(e){let t=ww[e],n=Cf[e];return t?t.suggestedModels!==void 0||n?.suggestedModels===void 0?t:{...t,suggestedModels:n.suggestedModels}:n??qN()}function za(e){return VN[e]??Zh.providers[e]}function sc(e){return no(e).modes}function jr(e,t){let n=no(e);if(t){if(Object.prototype.hasOwnProperty.call(n.modelOverrides,t))return n.modelOverrides[t]?.effort??n.effort;let r=os(e,t);return r.model===void 0?n.effort:n.modelOverrides[r.model]?.effort??n.effort}return n.effort}function Ja(e){return no(e).modelOverrides}function Nf(){return mi("claude")}function Rw(){return mi("codex")}function kw(){return mi("copilot")}function Sw(){return mi("antigravity")}function xf(e,t){let n=new Map;for(let r of [...e,...t]){let o=n.get(r.id);if(!o){let{apiPricing:i,recommended:s,...a}=r;n.set(r.id,{...a,...s===true?{recommended:true}:{},...i!=null?{apiPricing:{...i}}:{}});continue}!o.name&&r.name&&(o.name=r.name),o.description==null&&r.description!=null&&(o.description=r.description),o.contextWindowTokens==null&&r.contextWindowTokens!=null&&(o.contextWindowTokens=r.contextWindowTokens),o.tier==null&&r.tier!=null&&(o.tier=r.tier),o.recommended!==true&&r.recommended===true&&(o.recommended=true),o.apiPricing==null&&r.apiPricing!=null&&(o.apiPricing={...r.apiPricing});}return Array.from(n.values())}function Df(e){return e.map(t=>{let{apiPricing:n,...r}=t,o=BN(t.id);return o?{...r,apiPricing:o}:r})}var ww,VN,ro=U(()=>{m();Ga();ic();zs();ww={},VN={};});var Ye,BJ,Js=U(()=>{m();Ye={crewxSystemPrompt:"crewx_system_prompt",systemPrompt:"system_prompt",threadContext:"crewx_thread_context",threadState:"thread_state",apps:"apps",appsGuidance:"apps_guidance",availableApps:"available_apps",crewxUiState:"crewx_ui_state",highlights:"highlights",highlight:"highlight",omittedTurns:"omitted_turns",messages:"messages",message:"message",userQuery:"user_query",execOutput:"exec_output"},BJ={conversationHistory:"conversation_history",semanticContinuity:"semantic_continuity",execOutput:"exec-output"};});function Ft(){if(process.env.CREWX_HOME){let e=Vt.resolve(process.env.CREWX_HOME);try{return mr.realpathSync(e)}catch(t){if(t instanceof Error&&"code"in t&&t.code==="ENOENT")return e;throw t}}return process.platform!=="win32"&&process.env.XDG_CONFIG_HOME?Vt.join(process.env.XDG_CONFIG_HOME,"crewx"):Vt.join(nU.homedir(),".crewx")}var Vo=U(()=>{m();});function mx(e,t){let n={};for(let[r,o]of Object.entries(e))o!==void 0&&(t.includes(r)||(n[r]=o));return n}function ar(e){return mx(e,gx)}function BK(e){return mx(e,FK)}var gx,FK,ss=U(()=>{m();gx=["CREWX_ASSIGNED_TASK_ID","CREWX_DETACHED_RUNNER"],FK=["CREWX_AGENT_ID","CREWX_PARENT_TASK_ID","CREWX_CALLER_AGENT_ID"];});function yy(e){return typeof e!="string"?void 0:e.trim()||void 0}function _y(e){return yy(e)?.toLowerCase()??""}function lu(e){try{return statSync(e).isFile()}catch{return false}}function jK(e,t){if(e===t)return true;let n=Vt__default.relative(e,t);return n!==""&&!n.startsWith("..")&&!Vt__default.isAbsolute(n)}function $K(e,t){if(Vt__default.basename(e)!==".bin")return false;let n=Vt__default.dirname(e);if(Vt__default.basename(n)!=="node_modules")return false;let r=Vt__default.dirname(n);return jK(r,t)}function uu(e,t={}){if(e.includes("/")||e.includes("\\")||Vt__default.isAbsolute(e))return e;let n=t.platform??process.platform,r=t.env??process.env,o=Vt__default.resolve(t.cwd??process.cwd()),i=(t.resolution??"global_first")==="global_first",s=r.PATH??r.Path??process.env.PATH??process.env.Path??"",a=n==="win32"?";":":",d=s.split(a).map(p=>p.trim()).filter(Boolean),c=Vt__default.extname(e).length>0,l=r.PATHEXT??r.Pathext??process.env.PATHEXT??process.env.Pathext??".EXE;.CMD;.BAT;.COM",u=n==="win32"?c?[""]:l.split(";").map(p=>p.trim()).filter(Boolean).map(p=>p.startsWith(".")?p:`.${p}`):[""];for(let p of d){let f=Vt__default.resolve(o,p);if(!(i&&$K(f,o)))for(let g of u){let y=_y(g),_=g.toUpperCase();for(let A of [g,y,_]){let E=Vt__default.join(f,`${e}${A}`);if(lu(E))return E}}}return e}function VK(e,t){return uu(e,{env:t,platform:"win32",resolution:"local_first"})}function qK(e){if(!lu(e))return null;try{let t=readFileSync(e,"utf8"),n=Vt__default.dirname(e),r=[];for(let a of t.matchAll(/"([^"\r\n]*)"/g)){let l=(a[1]??"").match(/%~?dp0%?\s*[\\/]*(.*)$/i)?.[1]?.trim();if(!l)continue;let u=l.replace(/[\\/]+/g,Vt__default.sep).replace(/^[\\/]+/,""),p=Vt__default.resolve(n,u);lu(p)&&r.push(p);}let o=[],i=new Map;for(let a of t.matchAll(/SET\s+"(\w+)=%~?dp0%?[\\/]?([^"]+)"/gi)){let d=a[1].toUpperCase(),c=a[2].trim().replace(/[\\/]+/g,Vt__default.sep).replace(/^[\\/]+/,"");i.set(d,Vt__default.resolve(n,c));}for(let a of t.split(/\r?\n/))if(a.includes("%*"))for(let d of a.matchAll(/"%(\w+)%"/g)){let c=i.get(d[1].toUpperCase());c&&lu(c)&&o.push(c);}let s=a=>a.find(d=>{let c=_y(Vt__default.basename(d));return c!=="node.exe"&&c!=="node"})??null;return s(o)??s(r)}catch{return null}}function WK(e,t){if(typeof t=="string")return yy(t)||null;if(!t||typeof t!="object")return null;if(e){let n=t[e],r=typeof n=="string"?yy(n):void 0;if(r)return r}for(let n of Object.values(t)){let r=typeof n=="string"?yy(n):void 0;if(r)return r}return null}function GK(e,t){if(!t)return null;let n=Vt__default.dirname(e),r=[Vt__default.resolve(n,"..",t),Vt__default.resolve(n,"node_modules",t)];for(let o of r){let i=Vt__default.join(o,"package.json");if(lu(i))try{let s=JSON.parse(readFileSync(i,"utf8")),a=WK(t,s.bin);if(!a)continue;let d=Vt__default.resolve(o,a);if(lu(d))return d}catch{}}return null}function zK(e){let t=e.platform??process.platform,n=e.env??process.env,r=e.execPath??process.execPath,o=e.cwd,i=e.resolution;if(t!=="win32")return {command:uu(e.command,{cwd:o,env:n,platform:t,resolution:i}),leadingArgv:[],resolution:"direct"};let s=uu(e.command,{cwd:o,env:n,platform:t,resolution:i}),a=_y(Vt__default.extname(s));if(a===".js"||a===".cjs"||a===".mjs")return {command:r,leadingArgv:[s],resolution:"node-entrypoint",windowsHide:true};if(a===".cmd"||a===".bat"){let d=qK(s)??GK(s,e.packageName);return d?_y(Vt__default.extname(d))===".exe"?{command:d,leadingArgv:[],resolution:"exe-entrypoint",windowsHide:true}:{command:r,leadingArgv:[d],resolution:"node-entrypoint",windowsHide:true}:{command:s,leadingArgv:[],resolution:"unresolved-wrapper"}}return {command:s,leadingArgv:[],resolution:"direct",windowsHide:true}}function JK(e){if(e.candidate.resolution!=="unresolved-wrapper")return {command:e.candidate.command,leadingArgv:e.candidate.leadingArgv,resolution:e.candidate.resolution,windowsHide:e.candidate.windowsHide};if(e.allowShellFallback===true)return {command:e.candidate.command,leadingArgv:[],resolution:"shell-fallback",shell:true,windowsHide:true};throw new Error(`${Vt__default.basename(e.candidate.command)} wrapper resolved, but no executable/Node entrypoint could be resolved without shell execution.`)}function gc(e){let t=zK(e);return JK({candidate:t,allowShellFallback:e.allowShellFallback})}function mc(e,t){return {command:e.command,argv:[...e.leadingArgv,...t],resolution:e.resolution,shell:e.shell,windowsHide:e.windowsHide}}var pu=U(()=>{m();});function $w(e){let t=0;for(let n of e)n===$f&&(t+=1);return t}function Iy(e,t){return $w(t)<$w(e)?t:e}function Ix(e){let t=e.match(/(?:^|[^0-9])([0-9]{1,5})(?![0-9])/);if(!t)return null;let n=Number(t[1]);return Number.isInteger(n)&&n>0&&n<=65535?n:null}function YK(e){if(e!==65001)return XK.get(e)}function Ex(e){let t=YK(e);if(!t)return null;try{return new TextDecoder(t)}catch{return null}}function QK(){return new Promise(e=>{let t=false,n,r=o=>{t||(t=true,n&&clearTimeout(n),e(o));};n=setTimeout(()=>r(null),_x),n.unref();try{execFile("chcp.com",[],{encoding:"ascii",timeout:_x,windowsHide:!0},(i,s)=>{if(i){r(null);return}r(Ix(String(s)));}).once("error",()=>r(null));}catch{r(null);}})}function Vw(){return process.platform!=="win32"?Promise.resolve(null):(Ay||(Ay=QK(),Ay.then(e=>{jw=e;},()=>{jw=null;})),Ay)}function hc(){process.platform==="win32"&&Vw();}function ZK(){return jw}function Ax(e,t){if(t.length>=Hw)return t.subarray(t.length-Hw);let n=Hw-t.length,r=e.length>n?e.subarray(e.length-n):e;return Buffer.concat([r,t])}function Vf(e,t={}){let n=Buffer.from(e),r=n.toString("utf8");if((t.platform??process.platform)!=="win32"||!r.includes($f))return r;let i=t.codePage===void 0?ZK():t.codePage;if(i==null)return hc(),r;let s=Ex(i);return s?Iy(r,s.decode(n)):r}async function qw(e,t={}){let n=new qo(t);return `${await n.write(e)}${await n.end()}`}var $f,Hw,_x,XK,Ay,jw,qo,Qa=U(()=>{m();$f="\uFFFD",Hw=8,_x=1e3,XK=new Map([[437,"ibm437"],[720,"ibm720"],[737,"ibm737"],[775,"ibm775"],[850,"ibm850"],[852,"ibm852"],[855,"ibm855"],[857,"ibm857"],[858,"ibm858"],[862,"ibm862"],[864,"ibm864"],[932,"shift_jis"],[936,"gb18030"],[949,"euc-kr"],[950,"big5"],[866,"ibm866"],[869,"ibm869"],[1250,"windows-1250"],[1251,"windows-1251"],[1252,"windows-1252"],[1253,"windows-1253"],[1254,"windows-1254"],[1255,"windows-1255"],[1256,"windows-1256"],[1257,"windows-1257"],[1258,"windows-1258"]]);qo=class{platform;detectCodePage;utf8Decoder=new StringDecoder("utf8");codePage;fallbackDecoder;replayTail=Buffer.alloc(0);pendingUtf8="";pendingFallback="";pendingBytes=Buffer.alloc(0);queue=Promise.resolve();ended=false;constructor(t={}){this.platform=t.platform??process.platform,this.detectCodePage=t.detectCodePage??Vw,this.codePage=t.codePage;}write(t){let n=Buffer.from(t);return this.enqueue(()=>this.decodeChunk(n))}end(){return this.enqueue(()=>this.finish())}enqueue(t){let n=this.queue.then(t);return this.queue=n.then(()=>{},()=>{}),n}clearPendingCandidate(){this.pendingUtf8="",this.pendingFallback="",this.pendingBytes=Buffer.alloc(0);}async resolveCodePage(){if(this.codePage!==void 0)return this.codePage;try{this.codePage=await this.detectCodePage();}catch{this.codePage=null;}return this.codePage}async getFallbackDecoder(){if(this.fallbackDecoder!==void 0)return this.fallbackDecoder;let t=await this.resolveCodePage();return this.fallbackDecoder=t===null?null:Ex(t),this.fallbackDecoder}async decodeChunk(t){if(this.ended)return "";let n=this.utf8Decoder.write(t),r=n.includes($f);if(r&&(this.utf8Decoder=new StringDecoder("utf8")),this.platform!=="win32")return n;if(this.fallbackDecoder){let d=this.fallbackDecoder.decode(t,{stream:true}),c=Ax(this.pendingBytes,t);if(r){let l=this.pendingUtf8+n,u=this.pendingFallback+d;return this.clearPendingCandidate(),Iy(l,u)}if($w(d)>0){let l=this.pendingUtf8+n;return this.clearPendingCandidate(),this.fallbackDecoder=void 0,this.replayTail=c,l}if(this.pendingUtf8||this.pendingFallback){if(this.pendingUtf8+=n,this.pendingFallback+=d,this.pendingBytes=c,n.length===0||d.length===0)return "";let l=this.pendingUtf8;return this.clearPendingCandidate(),l}return n.length===0&&d.length>0?(this.pendingUtf8=n,this.pendingFallback=d,this.pendingBytes=c,""):n}let o=this.replayTail;if(this.fallbackDecoder===void 0&&(this.replayTail=Ax(this.replayTail,t)),!r)return n;let i=this.fallbackDecoder===void 0,s=await this.getFallbackDecoder();if(!s)return this.replayTail=Buffer.alloc(0),n;i&&o.length>0&&s.decode(o,{stream:true}),this.replayTail=Buffer.alloc(0);let a=s.decode(t,{stream:true});return Iy(n,a)}async finish(){if(this.ended)return "";this.ended=true;let t=this.utf8Decoder.end();if(this.platform!=="win32")return t;if(this.fallbackDecoder===void 0&&t.includes($f)){let i=await this.getFallbackDecoder();i&&this.replayTail.length>0&&(i.decode(this.replayTail,{stream:true}),this.replayTail=Buffer.alloc(0));}let n=this.pendingUtf8+t,r=this.fallbackDecoder?.decode()??"",o=this.pendingFallback+r;return this.clearPendingCandidate(),n.includes($f)?Iy(n,o):n}};hc();});function e2(e){if(e.type!=="usage"||!("input_tokens"in e))return null;let t=Number(e.input_tokens??0),n=Number(e.output_tokens??0),o="cache_read_input_tokens"in e?Number(e.cache_read_input_tokens):void 0,i="cached_input_tokens"in e?Number(e.cached_input_tokens):void 0,s=o!==void 0?o:i??0;return {inputTokens:o!==void 0?t+o:t,outputTokens:n,cachedInputTokens:s}}function t2(e){let t=e.usage;if(!t||typeof t!="object"||Array.isArray(t))return null;let n=t;if(!("input_tokens"in n))return null;let r=Number(n.input_tokens??0),o=Number(n.output_tokens??0),s="cache_read_input_tokens"in n?Number(n.cache_read_input_tokens):void 0,a="cached_input_tokens"in n?Number(n.cached_input_tokens):void 0,d=s!==void 0?s:a??0;return {inputTokens:s!==void 0?r+s:r,outputTokens:o,cachedInputTokens:d}}function n2(e){if(e.type!=="step_finish")return null;let n=e.part?.tokens;if(!n)return null;let r=Number(n.input??0),o=Number(n.output??0)+Number(n.reasoning??0),i=n.cache,s=i?Number(i.read??0):0;return {inputTokens:r+s,outputTokens:o,cachedInputTokens:s}}function Tx(e){let t=new Map,n;for(let i of e.split(`
1
+ import*as Vt from'path';import Vt__default,{join,isAbsolute,dirname,resolve,basename,normalize,win32,relative,sep}from'path';import {fileURLToPath}from'url';import*as nU from'os';import nU__default,{homedir,tmpdir,hostname}from'os';import*as mr from'fs';import {promises,realpath,readFileSync,mkdirSync,chmodSync,existsSync,unlinkSync,renameSync,lstatSync,rmSync,openSync,fsyncSync,closeSync,writeSync,constants,fstatSync,readSync,createReadStream,writeFileSync,statSync,readdirSync,realpathSync,linkSync,appendFileSync}from'fs';import {execFile,spawn,execFileSync,spawnSync}from'child_process';import {StringDecoder}from'string_decoder';import*as EP from'crypto';import {randomBytes,createHash,randomUUID}from'crypto';import {realpath as realpath$1,stat,readdir,readFile,access,mkdtemp,open,rm as rm$1,lstat,mkdir,chmod,link,unlink,rename}from'fs/promises';import {Unzip,UnzipInflate,UnzipPassThrough}from'fflate';import {ndJsonStream,ClientSideConnection}from'@agentclientprotocol/sdk';import {sqliteTable,text,integer,index,check,primaryKey,uniqueIndex,real,unique,foreignKey}from'drizzle-orm/sqlite-core';import {sql,and,eq as eq$1,desc,asc,inArray,or as or$1,isNull,ne,lt as lt$1,like,gte as gte$1,isNotNull,notLike,getTableColumns,gt as gt$1,lte as lte$1}from'drizzle-orm';import {Socket,isIP}from'net';import {AGENT_METHODS,CLIENT_METHODS}from'@agentclientprotocol/sdk/dist/schema/index.js';import {zAgentRequest,zAgentNotification,zSessionNotification,zAgentResponse,zClientRequest,zClientNotification,zClientResponse,zError,zPromptResponse,zPromptRequest,zSetSessionModelResponse,zSetSessionModelRequest,zSetSessionConfigOptionResponse,zSetSessionConfigOptionRequest,zSetSessionModeResponse,zSetSessionModeRequest,zResumeSessionResponse,zResumeSessionRequest,zNewSessionResponse,zNewSessionRequest,zLogoutResponse,zLogoutRequest,zAuthenticateResponse,zAuthenticateRequest,zInitializeResponse,zInitializeRequest,zCancelNotification,zRequestPermissionResponse,zRequestPermissionRequest,zCompleteElicitationNotification}from'@agentclientprotocol/sdk/dist/schema/zod.gen.js';import*as VW from'js-yaml';import {load,dump}from'js-yaml';import {getEncoding}from'js-tiktoken';import {Tiktoken}from'js-tiktoken/lite';import Cw from'js-tiktoken/ranks/o200k_base';import {z}from'zod';import {createRequire}from'module';import*as hs from'handlebars';import hs__default from'handlebars';import {EventEmitter}from'events';import {AsyncLocalStorage}from'async_hooks';import {McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import {WebStandardStreamableHTTPServerTransport}from'@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js';import {promisify}from'util';import'console';import'stream';import*as ZW from'tar';import {gunzipSync,gzipSync}from'zlib';import {performance as performance$1}from'perf_hooks';import {parse}from'dotenv';var yw=Object.defineProperty;var _J=Object.getOwnPropertyDescriptor;var AJ=Object.getOwnPropertyNames;var IJ=Object.prototype.hasOwnProperty;var Gn=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var U=(e,t)=>()=>(e&&(t=e(e=0)),t);var bf=(e,t)=>{for(var n in t)yw(e,n,{get:t[n],enumerable:true});},EJ=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of AJ(t))!IJ.call(e,o)&&o!==n&&yw(e,o,{get:()=>t[o],enumerable:!(r=_J(t,o))||r.enumerable});return e};var TJ=e=>EJ(yw({},"__esModule",{value:true}),e);var xN,kJ,k,S,m=U(()=>{xN=()=>fileURLToPath(import.meta.url),kJ=()=>Vt__default.dirname(xN()),k=kJ(),S=xN();});var DN,rc,vf,Cf,Zh,Ga=U(()=>{m();DN=["flagship","balanced","speed"],rc=["none","minimal","low","medium","high","xhigh","max","ultra"],vf={claude:["low","medium","high","xhigh","max"],codex:["none","minimal","low","medium","high","xhigh","max","ultra"],opencode:[],copilot:["none","low","medium","high","xhigh","max"],antigravity:["low","medium","high"],grok:["low","medium","high","xhigh"]},Cf={claude:{models:[{id:"claude-fable-5-1",name:"Claude Fable 5.1",contextWindowTokens:1e6,tier:"flagship",recommended:true},{id:"claude-fable-5",name:"Claude Fable 5",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-5-5",name:"Claude Opus 5.5",contextWindowTokens:1e6,tier:"flagship",recommended:true},{id:"claude-opus-5",name:"Claude Opus 5",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-sonnet-5-5",name:"Claude Sonnet 5.5",contextWindowTokens:1e6,tier:"balanced",recommended:true},{id:"claude-sonnet-5",name:"Claude Sonnet 5",contextWindowTokens:1e6,tier:"balanced"},{id:"claude-opus-4-8[1m]",name:"Claude Opus 4.8",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-4-7[1m]",name:"Claude Opus 4.7",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-opus-4-6[1m]",name:"Claude Opus 4.6",contextWindowTokens:1e6,tier:"flagship"},{id:"claude-sonnet-4-6[1m]",name:"Claude Sonnet 4.6",contextWindowTokens:1e6,tier:"balanced"},{id:"claude-haiku-5-5",name:"Claude Haiku 5.5",contextWindowTokens:1e6,tier:"speed"},{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindowTokens:2e5,tier:"speed"}],modes:[{id:"default",name:"Default",description:"Uses Claude's default permission handling with normal approval prompts."},{id:"acceptEdits",name:"Accept Edits",description:"Allows file edits without approval; other permission checks remain in place."},{id:"plan",name:"Plan",description:"Keeps Claude in plan mode so it can inspect and propose changes without applying them."},{id:"dontAsk",name:"Don't Ask",description:"Does not ask for permissions; only pre-approved tool actions can proceed."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Bypasses Claude permission checks so tools can run without approval prompts."}],effort:["low","medium","high"],modelOverrides:{"claude-fable-5-1":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-fable-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"medium"},"claude-opus-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-sonnet-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-sonnet-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-8[1m]":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-7[1m]":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"claude-opus-4-6[1m]":{effort:["low","medium","high","max"],defaultEffort:"high"},"claude-sonnet-4-6[1m]":{effort:["low","medium","high","max"],defaultEffort:"high"},"claude-haiku-5-5":{effort:["low","medium","high","xhigh","max"],defaultEffort:"medium"},"claude-haiku-4-5":{effort:[]}},providerOptions:[]},codex:{models:[{id:"gpt-6-astra",name:"GPT-6 Astra",contextWindowTokens:105e4,tier:"flagship"},{id:"gpt-6.1-sol",name:"GPT-6.1 Sol",contextWindowTokens:105e4,tier:"balanced",recommended:true},{id:"gpt-6.1-terra",name:"GPT-6.1 Terra",contextWindowTokens:5e5,tier:"balanced"},{id:"gpt-6-sol",name:"GPT-6 Sol",contextWindowTokens:105e4,tier:"balanced"},{id:"gpt-6-luna",name:"GPT-6 Luna",contextWindowTokens:105e4,tier:"speed",recommended:true},{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",contextWindowTokens:105e4,tier:"flagship"},{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",contextWindowTokens:105e4,tier:"balanced"},{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",contextWindowTokens:105e4,tier:"speed"}],modes:[{id:"agent",name:"Agent",description:"Uses the workspace-write sandbox; can read and modify workspace files without full machine access."},{id:"read-only",name:"Read Only",description:"Uses the read-only sandbox; can inspect files but cannot write to the workspace."},{id:"plan",name:"Plan",description:"Uses the read-only sandbox for planning and inspection; cannot write to the workspace."},{id:"agent-full-access",name:"Agent Full Access",description:"Bypasses approvals and the sandbox; can access and modify files beyond the workspace."},{id:"yolo",name:"YOLO",description:"Bypasses approvals and the sandbox for unrestricted execution and full filesystem access."}],effort:["minimal","low","medium","high"],modelOverrides:{"gpt-6-astra":{effort:["low","medium","high","xhigh","max"],defaultEffort:"xhigh"},"gpt-6.1-sol":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"gpt-6.1-terra":{effort:["low","medium","high","xhigh","max","ultra"],defaultEffort:"max"},"gpt-6-sol":{effort:["none","low","medium","high","xhigh","max"],defaultEffort:"max"},"gpt-6-luna":{effort:["none","low","medium","high","xhigh","max"],defaultEffort:"medium"},"gpt-5.6-sol":{effort:["low","medium","high","xhigh","max","ultra"],defaultEffort:"xhigh"},"gpt-5.6-terra":{effort:["low","medium","high","xhigh","max","ultra"],defaultEffort:"high"},"gpt-5.6-luna":{effort:["low","medium","high","xhigh","max"],defaultEffort:"high"},"gpt-5.5":{effort:["low","medium","high","xhigh"],defaultEffort:"high"}},providerOptions:[]},opencode:{models:[],suggestedModels:[{id:"opencode-go/glm-5.3-flash",name:"GLM-5.3 Flash",contextWindowTokens:1e6,tier:"speed",recommended:true},{id:"opencode-go/qwen3.8-flash",name:"Qwen3.8 Flash",contextWindowTokens:1e6,tier:"speed",recommended:true},{id:"opencode-go/minimax-m3",name:"MiniMax M3",contextWindowTokens:1e6,tier:"balanced",recommended:true},{id:"opencode-go/kimi-k2.7-code",name:"Kimi K2.7 Code",contextWindowTokens:262144,tier:"balanced",recommended:true}],modes:[{id:"plan",name:"Plan",description:"Uses the plan agent without --auto; planning follows standard approval behavior."},{id:"plan-auto",name:"Plan \xB7 Auto",description:"Uses the plan agent with --auto; planning uses automatic approvals."},{id:"build",name:"Build",description:"Uses the build agent without --auto; work follows standard approval behavior."},{id:"build-auto",name:"Build \xB7 Auto",description:"Uses the build agent with --auto; work uses automatic approvals."}],effort:[],modelOverrides:{},providerOptions:[]},copilot:{models:[{id:"auto",name:"Auto"},{id:"claude-sonnet-5",name:"Claude Sonnet 5",contextWindowTokens:1e6,tier:"balanced"}],modes:[{id:"interactive",name:"Interactive",description:"Passes --mode interactive; tool access follows Copilot's interactive mode behavior."},{id:"plan",name:"Plan",description:"Passes --mode plan; planning and permission behavior follow Copilot's plan mode."},{id:"autopilot",name:"Autopilot",description:"Passes --mode autopilot; execution behavior follows Copilot's autonomous mode."}],effort:["none","low","medium","high","xhigh","max"],modelOverrides:{},providerOptions:[]},antigravity:{models:[{id:"gemini-3.8-flash",name:"Gemini 3.8 Flash",tier:"balanced"},{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",contextWindowTokens:1048576,tier:"balanced"},{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",contextWindowTokens:1048576,tier:"balanced"},{id:"gemini-3.1-pro",name:"Gemini 3.1 Pro",contextWindowTokens:1048576,tier:"flagship"},{id:"claude-sonnet-5-5-medium",name:"Claude Sonnet 5.5",tier:"balanced"},{id:"claude-opus-5-5-medium",name:"Claude Opus 5.5",tier:"flagship"},{id:"gemini-4-argon",name:"Gemini 4 Argon",tier:"flagship"}],modes:[{id:"default",name:"Default",description:"Uses Antigravity's default permission handling. No extra permission flags are passed."},{id:"plan",name:"Plan",description:"Passes --mode plan. This turns on /plan; it is not a Claude-style permission mode."},{id:"acceptEdits",name:"Accept Edits",description:"Passes --mode accept-edits."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Passes --dangerously-skip-permissions so tools can run without approval prompts."}],effort:["low","medium","high"],modelOverrides:{"gemini-3.8-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.7-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.6-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.5-flash":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-3.1-pro":{effort:["low","high"],defaultEffort:"high"},"claude-sonnet-5-5-medium":{effort:["low","medium","high"],defaultEffort:"medium"},"claude-opus-5-5-medium":{effort:["low","medium","high"],defaultEffort:"medium"},"gemini-4-argon":{effort:["low","medium","high"],defaultEffort:"high"},"claude-sonnet-4-6":{effort:[]},"claude-opus-4-6-thinking":{effort:[]},"gpt-oss-120b":{effort:["medium"],defaultEffort:"medium"}},providerOptions:[]},grok:{models:[{id:"grok-4.7",name:"Grok 4.7",contextWindowTokens:5e5,tier:"flagship",recommended:true},{id:"grok-4.6",name:"Grok 4.6",contextWindowTokens:5e5,tier:"flagship"},{id:"grok-4.5",name:"Grok 4.5",contextWindowTokens:5e5,tier:"flagship"}],modes:[{id:"default",name:"Default",description:"Uses Grok's default permission handling."},{id:"acceptEdits",name:"Accept Edits",description:"Allows file edits without changing the selected sandbox profile."},{id:"auto",name:"Auto",description:"Uses Grok automatic permission handling."},{id:"dontAsk",name:"Don't Ask",description:"Does not ask for permission before tool execution."},{id:"bypassPermissions",name:"Bypass Permissions",description:"Bypasses Grok permission checks for tool execution."},{id:"plan",name:"Plan",description:"Keeps Grok in planning mode without applying changes."}],effort:["low","medium","high"],modelOverrides:{"grok-4.7":{effort:["low","medium","high","xhigh"],defaultEffort:"high"},"grok-4.6":{effort:["low","medium","high","xhigh"],defaultEffort:"high"},"grok-4.5":{effort:["low","medium","high"],defaultEffort:"high"}},providerOptions:[{key:"alwaysApprove",type:"boolean"},{key:"sandbox",type:"enum",values:["workspace","read-only","off"]}]}},Zh={version:1,providers:{"cli/codex":{model:"gpt-6.1-sol",query:{mode:"agent",effort:"high"},execute:{mode:"agent-full-access",effort:"high"}},"cli/claude":{model:"claude-opus-5-5",query:{mode:"default",effort:"high"},execute:{mode:"bypassPermissions",effort:"xhigh"}},"cli/grok":{model:"grok-4.7",query:{mode:"default",effort:"high",providerOptions:{alwaysApprove:true,sandbox:"off"}},execute:{mode:"bypassPermissions",effort:"xhigh",providerOptions:{alwaysApprove:true,sandbox:"off"}}},"cli/antigravity":{model:"gemini-3.8-flash",query:{mode:"default",effort:"medium"},execute:{mode:"bypassPermissions",effort:"medium"}}}},Object.fromEntries(Object.entries(Cf).map(([e,t])=>[e,t.models]));});var oc,Iw,LN,Ew=U(()=>{m();oc={"claude-fable-5-1":{input:10,cachedInput:.25,output:50},"claude-fable-5":{input:10,cachedInput:1,output:50},"claude-opus-5-5":{input:4,cachedInput:.2,output:20},"claude-opus-5-5-medium":{input:4,cachedInput:.2,output:20},"claude-opus-5":{input:5,cachedInput:.5,output:25},"claude-opus-4-8":{input:5,cachedInput:.5,output:25},"claude-opus-4-7":{input:5,cachedInput:.5,output:25},"claude-opus-4-6":{input:5,cachedInput:.5,output:25},"claude-sonnet-5-5":{input:2,cachedInput:.1,output:10},"claude-sonnet-5-5-medium":{input:2,cachedInput:.1,output:10},"claude-sonnet-5":{input:2,cachedInput:.2,output:10},"claude-sonnet-4-6":{input:3,cachedInput:.3,output:15},"claude-haiku-5-5":{input:.1,cachedInput:.01,output:.5},"claude-haiku-4-5":{input:1,cachedInput:.1,output:5},"gpt-6-astra":{input:10,cachedInput:1,output:50},"gpt-6.1-sol":{input:2,cachedInput:.1,output:10},"gpt-6.1-terra":{input:1,cachedInput:.05,output:5},"gpt-6-sol":{input:2,cachedInput:.2,output:10},"gpt-6-luna":{input:.1,cachedInput:.01,output:.5},"gpt-5.6-sol":{input:4,cachedInput:.4,output:20},"gpt-5.6-terra":{input:2,cachedInput:.2,output:12},"gpt-5.6-luna":{input:.2,cachedInput:.02,output:1.2},"gpt-5.5":{input:5,cachedInput:.5,output:30},"gpt-5.4":{input:2.5,cachedInput:.25,output:15},"gpt-5.4-mini":{input:.75,cachedInput:.075,output:4.5},"gpt-5.3-codex":{input:1.75,cachedInput:.175,output:14},"gpt-5-mini":{input:.4,cachedInput:.1,output:1.6},"gpt-4.1":{input:2,cachedInput:.5,output:8},"gpt-4o":{input:2.5,cachedInput:1.25,output:10},"glm-5.3-flash":{input:.15,cachedInput:.03,output:.5},"glm-5.2":{input:1.4,cachedInput:.26,output:4.4},"glm-5.1":{input:1.4,cachedInput:.26,output:4.4},"deepseek-v4.1-flash":{input:.3,cachedInput:.006,output:1.2},"qwen3.8-flash":{input:.164,cachedInput:.018,output:.514},"minimax-m3":{input:.3,cachedInput:.06,output:1.2},"kimi-k2.7-code":{input:.95,cachedInput:.19,output:4},"gemini-3.8-flash":{input:1.5,cachedInput:.15,output:7.5},"gemini-4-argon":{input:4,cachedInput:.2,output:20},"gemini-3.7-flash":{input:1.5,cachedInput:.15,output:7.5},"gemini-3.6-flash":{input:1.5,cachedInput:.15,output:7.5},"grok-4.7":{input:2,cachedInput:.5,output:6},"grok-4.6":{input:2,cachedInput:.5,output:6},"grok-4.5":{input:2,cachedInput:.3,output:6}},Iw=new Set(["gpt-5.3-codex-spark","claude-opus-4-6-thinking","gpt-oss-120b","glm-5.3-flash-free","deepseek-v4.1-flash-free"]),LN=new Set(["auto","claude-fable-5","claude-fable-5-1","claude-haiku-4-5","claude-haiku-5-5","claude-opus-4-6","claude-opus-4-6-thinking","claude-opus-4-6[1m]","claude-opus-4-7","claude-opus-4-7[1m]","claude-opus-4-8","claude-opus-4-8[1m]","claude-opus-5","claude-opus-5-5","claude-opus-5-5-medium","claude-sonnet-4-6","claude-sonnet-4-6[1m]","claude-sonnet-5","claude-sonnet-5-5","claude-sonnet-5-5-medium","deepseek-v4.1-flash","deepseek-v4.1-flash-free","gemini-3.1-pro","gemini-3.6-flash","gemini-3.7-flash","gemini-3.8-flash","gemini-4-argon","glm-5.1","glm-5.2","glm-5.3-flash","glm-5.3-flash-free","gpt-4.1","gpt-4o","gpt-5-mini","gpt-5.3-codex","gpt-5.3-codex-spark","gpt-5.4","gpt-5.4-mini","gpt-5.5","gpt-5.6-luna","gpt-5.6-sol","gpt-5.6-terra","gpt-6-astra","gpt-6-luna","gpt-6-sol","gpt-6.1-sol","gpt-6.1-terra","gpt-oss-120b","grok-4.5","grok-4.6","grok-4.7","kimi-k2.7-code","minimax-m3","qwen3.8-flash"]);});function UN(e){Pf=e;}function FN(e){MN=Object.fromEntries(Object.entries(e).map(([t,n])=>[t,{...n}]));}function Tw(e){let t=e.toLowerCase().trim();t=t.replace(/\[[^\]]*\]$/g,"");let n=t.lastIndexOf("/");return n>=0&&(t=t.slice(n+1)),t=t.replace(/-\d{8}$/,""),t}function CJ(e){if(!e)return;let t="inputPerMillionTokensUsd"in e?e.inputPerMillionTokensUsd:e.input,n="outputPerMillionTokensUsd"in e?e.outputPerMillionTokensUsd:e.output;if(!(!Number.isFinite(t)||t<=0||!Number.isFinite(n)||n<=0))return {inputPerMillionTokensUsd:t,outputPerMillionTokensUsd:n}}function BN(e){if(!e)return;let t=e.replace(/\[[^\]]*\]$/g,"");return CJ(MN[t]??oc[t])}function OJ(e){if(!e)return console.warn("[pricing] missing model id; cost is being recorded as 0"),Of;let t=Tw(e),n=vJ[t];if(n)return Pf[n]??oc[n]??Of;if(Pf[t])return Pf[t];if(oc[t])return oc[t];if(Iw.has(t))return console.warn(`[pricing] unpublished model pricing: ${e}, cost_usd=0`),Of;if(LN.has(t))return console.warn(`[pricing] missing catalog pricing: ${e}, cost_usd=0`),Of;let r={...oc,...Pf};for(let o of Object.keys(r))if(t.includes(o))return r[o];return console.warn(`[pricing] Unknown model: ${e}, cost_usd=0`),Of}function PJ(e,t,n,r=0,o){let i=OJ(n),s=Math.min(r,e),d=(e-s)*i.input/1e6,c=s*i.cachedInput/1e6,l=t*i.output/1e6;return d+c+l}function ey(e,t,n,r,o,i){return e&&e>0?e:!t&&!n?0:PJ(t??0,n??0,o,r??0)}var vJ,Of,Pf,MN,ic=U(()=>{m();Ew();Ew();vJ={opus:"claude-opus-4-8",sonnet:"claude-sonnet-4-6",haiku:"claude-haiku-4-5","codex-mini":"gpt-5.3-codex",codex:"gpt-5.3-codex"},Of={input:0,cachedInput:0,output:0},Pf={},MN={};});function ty(e){return DJ[e]??e}function jN(e){return LJ.get(e)??e}function ru(e){if(!e)return {};let t=MJ.get(e);return t?{...t}:{model:e}}function os(e,t){return e==="antigravity"||e==="cli/antigravity"?ru(t):t===void 0?{}:{model:jN(t)}}var NJ,xJ,HN,DJ,LJ,$N,MJ,zs=U(()=>{m();NJ="claude-opus-4-8",xJ="claude-opus-4-8[1m]",HN=[{baseModelId:"claude-opus-4-8",catalogModelId:"claude-opus-4-8[1m]"},{baseModelId:"claude-opus-4-7",catalogModelId:"claude-opus-4-7[1m]"},{baseModelId:"claude-opus-4-6",catalogModelId:"claude-opus-4-6[1m]"},{baseModelId:"claude-sonnet-4-6",catalogModelId:"claude-sonnet-4-6[1m]"}],DJ={"accept-edits":"acceptEdits",yolo:"bypassPermissions","agent-full-access":"bypassPermissions"};LJ=new Map(HN.map(({baseModelId:e,catalogModelId:t})=>[e,t]));$N=[{legacyId:"Gemini 3.7 Flash (High)",model:"gemini-3.7-flash",effort:"high"},{legacyId:"Gemini 3.7 Flash (Medium)",model:"gemini-3.7-flash",effort:"medium"},{legacyId:"Gemini 3.7 Flash (Low)",model:"gemini-3.7-flash",effort:"low"},{legacyId:"Gemini 3.6 Flash (High)",model:"gemini-3.6-flash",effort:"high"},{legacyId:"Gemini 3.6 Flash (Medium)",model:"gemini-3.6-flash",effort:"medium"},{legacyId:"Gemini 3.6 Flash (Low)",model:"gemini-3.6-flash",effort:"low"},{legacyId:"Gemini 3.5 Flash (Medium)",model:"gemini-3.5-flash",effort:"medium"},{legacyId:"Gemini 3.5 Flash (High)",model:"gemini-3.5-flash",effort:"high"},{legacyId:"Gemini 3.5 Flash (Low)",model:"gemini-3.5-flash",effort:"low"},{legacyId:"Gemini 3.1 Pro (Low)",model:"gemini-3.1-pro",effort:"low"},{legacyId:"Gemini 3.1 Pro (High)",model:"gemini-3.1-pro",effort:"high"},{legacyId:"Claude Sonnet 4.6 (Thinking)",model:"claude-sonnet-4-6"},{legacyId:"Claude Opus 4.6 (Thinking)",model:"claude-opus-4-6-thinking"},{legacyId:"GPT-OSS 120B (Medium)",model:"gpt-oss-120b",effort:"medium"},{legacyId:"gemini-3.7-flash-high",model:"gemini-3.7-flash",effort:"high"},{legacyId:"gemini-3.7-flash-medium",model:"gemini-3.7-flash",effort:"medium"},{legacyId:"gemini-3.7-flash-low",model:"gemini-3.7-flash",effort:"low"},{legacyId:"gemini-3.6-flash-high",model:"gemini-3.6-flash",effort:"high"},{legacyId:"gemini-3.6-flash-medium",model:"gemini-3.6-flash",effort:"medium"},{legacyId:"gemini-3.6-flash-low",model:"gemini-3.6-flash",effort:"low"},{legacyId:"gemini-3.5-flash-high",model:"gemini-3.5-flash",effort:"high"},{legacyId:"gemini-3.5-flash-medium",model:"gemini-3.5-flash",effort:"medium"},{legacyId:"gemini-3.5-flash-low",model:"gemini-3.5-flash",effort:"low"},{legacyId:"gemini-3.1-pro-high",model:"gemini-3.1-pro",effort:"high"},{legacyId:"gemini-3.1-pro-low",model:"gemini-3.1-pro",effort:"low"},{legacyId:"gpt-oss-120b-medium",model:"gpt-oss-120b",effort:"medium"}],MJ=new Map($N.map(({legacyId:e,model:t,effort:n})=>[e,n===void 0?{model:t}:{model:t,effort:n}]));});function qN(){return {models:[],modes:[],effort:[],modelOverrides:{},providerOptions:[]}}function UJ(e){return Array.isArray(e)?{models:e,modes:[],effort:[],modelOverrides:{},providerOptions:[]}:e?{models:e.models??[],...e.suggestedModels!==void 0?{suggestedModels:e.suggestedModels}:{},modes:e.modes??[],effort:e.effort??[],modelOverrides:e.modelOverrides??{},providerOptions:e.providerOptions??[]}:qN()}function ny(e){ww=Object.fromEntries(Object.entries(e).map(([t,n])=>[t,UJ(n)]));}function FJ(){ww={};}function ou(e){VN={...e};}function mi(e){return no(e).models}function no(e){let t=ww[e],n=Cf[e];return t?t.suggestedModels!==void 0||n?.suggestedModels===void 0?t:{...t,suggestedModels:n.suggestedModels}:n??qN()}function za(e){return VN[e]??Zh.providers[e]}function sc(e){return no(e).modes}function jr(e,t){let n=no(e);if(t){if(Object.prototype.hasOwnProperty.call(n.modelOverrides,t))return n.modelOverrides[t]?.effort??n.effort;let r=os(e,t);return r.model===void 0?n.effort:n.modelOverrides[r.model]?.effort??n.effort}return n.effort}function Ja(e){return no(e).modelOverrides}function Nf(){return mi("claude")}function Rw(){return mi("codex")}function kw(){return mi("copilot")}function Sw(){return mi("antigravity")}function xf(e,t){let n=new Map;for(let r of [...e,...t]){let o=n.get(r.id);if(!o){let{apiPricing:i,recommended:s,...a}=r;n.set(r.id,{...a,...s===true?{recommended:true}:{},...i!=null?{apiPricing:{...i}}:{}});continue}!o.name&&r.name&&(o.name=r.name),o.description==null&&r.description!=null&&(o.description=r.description),o.contextWindowTokens==null&&r.contextWindowTokens!=null&&(o.contextWindowTokens=r.contextWindowTokens),o.tier==null&&r.tier!=null&&(o.tier=r.tier),o.recommended!==true&&r.recommended===true&&(o.recommended=true),o.apiPricing==null&&r.apiPricing!=null&&(o.apiPricing={...r.apiPricing});}return Array.from(n.values())}function Df(e){return e.map(t=>{let{apiPricing:n,...r}=t,o=BN(t.id);return o?{...r,apiPricing:o}:r})}var ww,VN,ro=U(()=>{m();Ga();ic();zs();ww={},VN={};});var Ye,BJ,Js=U(()=>{m();Ye={crewxSystemPrompt:"crewx_system_prompt",systemPrompt:"system_prompt",threadContext:"crewx_thread_context",threadState:"thread_state",apps:"apps",appsGuidance:"apps_guidance",availableApps:"available_apps",crewxUiState:"crewx_ui_state",highlights:"highlights",highlight:"highlight",omittedTurns:"omitted_turns",messages:"messages",message:"message",userQuery:"user_query",execOutput:"exec_output"},BJ={conversationHistory:"conversation_history",semanticContinuity:"semantic_continuity",execOutput:"exec-output"};});function Ft(){if(process.env.CREWX_HOME){let e=Vt.resolve(process.env.CREWX_HOME);try{return mr.realpathSync(e)}catch(t){if(t instanceof Error&&"code"in t&&t.code==="ENOENT")return e;throw t}}return process.platform!=="win32"&&process.env.XDG_CONFIG_HOME?Vt.join(process.env.XDG_CONFIG_HOME,"crewx"):Vt.join(nU.homedir(),".crewx")}var Vo=U(()=>{m();});function mx(e,t){let n={};for(let[r,o]of Object.entries(e))o!==void 0&&(t.includes(r)||(n[r]=o));return n}function ar(e){return mx(e,gx)}function BK(e){return mx(e,FK)}var gx,FK,ss=U(()=>{m();gx=["CREWX_ASSIGNED_TASK_ID","CREWX_DETACHED_RUNNER"],FK=["CREWX_AGENT_ID","CREWX_PARENT_TASK_ID","CREWX_CALLER_AGENT_ID"];});function yy(e){return typeof e!="string"?void 0:e.trim()||void 0}function _y(e){return yy(e)?.toLowerCase()??""}function lu(e){try{return statSync(e).isFile()}catch{return false}}function jK(e,t){if(e===t)return true;let n=Vt__default.relative(e,t);return n!==""&&!n.startsWith("..")&&!Vt__default.isAbsolute(n)}function $K(e,t){if(Vt__default.basename(e)!==".bin")return false;let n=Vt__default.dirname(e);if(Vt__default.basename(n)!=="node_modules")return false;let r=Vt__default.dirname(n);return jK(r,t)}function uu(e,t={}){if(e.includes("/")||e.includes("\\")||Vt__default.isAbsolute(e))return e;let n=t.platform??process.platform,r=t.env??process.env,o=Vt__default.resolve(t.cwd??process.cwd()),i=(t.resolution??"global_first")==="global_first",s=r.PATH??r.Path??process.env.PATH??process.env.Path??"",a=n==="win32"?";":":",d=s.split(a).map(p=>p.trim()).filter(Boolean),c=Vt__default.extname(e).length>0,l=r.PATHEXT??r.Pathext??process.env.PATHEXT??process.env.Pathext??".EXE;.CMD;.BAT;.COM",u=n==="win32"?c?[""]:l.split(";").map(p=>p.trim()).filter(Boolean).map(p=>p.startsWith(".")?p:`.${p}`):[""];for(let p of d){let f=Vt__default.resolve(o,p);if(!(i&&$K(f,o)))for(let g of u){let y=_y(g),_=g.toUpperCase();for(let A of [g,y,_]){let E=Vt__default.join(f,`${e}${A}`);if(lu(E))return E}}}return e}function VK(e,t){return uu(e,{env:t,platform:"win32",resolution:"local_first"})}function qK(e){if(!lu(e))return null;try{let t=readFileSync(e,"utf8"),n=Vt__default.dirname(e),r=[];for(let a of t.matchAll(/"([^"\r\n]*)"/g)){let l=(a[1]??"").match(/%~?dp0%?\s*[\\/]*(.*)$/i)?.[1]?.trim();if(!l)continue;let u=l.replace(/[\\/]+/g,Vt__default.sep).replace(/^[\\/]+/,""),p=Vt__default.resolve(n,u);lu(p)&&r.push(p);}let o=[],i=new Map;for(let a of t.matchAll(/SET\s+"(\w+)=%~?dp0%?[\\/]?([^"]+)"/gi)){let d=a[1].toUpperCase(),c=a[2].trim().replace(/[\\/]+/g,Vt__default.sep).replace(/^[\\/]+/,"");i.set(d,Vt__default.resolve(n,c));}for(let a of t.split(/\r?\n/))if(a.includes("%*"))for(let d of a.matchAll(/"%(\w+)%"/g)){let c=i.get(d[1].toUpperCase());c&&lu(c)&&o.push(c);}let s=a=>a.find(d=>{let c=_y(Vt__default.basename(d));return c!=="node.exe"&&c!=="node"})??null;return s(o)??s(r)}catch{return null}}function WK(e,t){if(typeof t=="string")return yy(t)||null;if(!t||typeof t!="object")return null;if(e){let n=t[e],r=typeof n=="string"?yy(n):void 0;if(r)return r}for(let n of Object.values(t)){let r=typeof n=="string"?yy(n):void 0;if(r)return r}return null}function GK(e,t){if(!t)return null;let n=Vt__default.dirname(e),r=[Vt__default.resolve(n,"..",t),Vt__default.resolve(n,"node_modules",t)];for(let o of r){let i=Vt__default.join(o,"package.json");if(lu(i))try{let s=JSON.parse(readFileSync(i,"utf8")),a=WK(t,s.bin);if(!a)continue;let d=Vt__default.resolve(o,a);if(lu(d))return d}catch{}}return null}function zK(e){let t=e.platform??process.platform,n=e.env??process.env,r=e.execPath??process.execPath,o=e.cwd,i=e.resolution;if(t!=="win32")return {command:uu(e.command,{cwd:o,env:n,platform:t,resolution:i}),leadingArgv:[],resolution:"direct"};let s=uu(e.command,{cwd:o,env:n,platform:t,resolution:i}),a=_y(Vt__default.extname(s));if(a===".js"||a===".cjs"||a===".mjs")return {command:r,leadingArgv:[s],resolution:"node-entrypoint",windowsHide:true};if(a===".cmd"||a===".bat"){let d=qK(s)??GK(s,e.packageName);return d?_y(Vt__default.extname(d))===".exe"?{command:d,leadingArgv:[],resolution:"exe-entrypoint",windowsHide:true}:{command:r,leadingArgv:[d],resolution:"node-entrypoint",windowsHide:true}:{command:s,leadingArgv:[],resolution:"unresolved-wrapper"}}return {command:s,leadingArgv:[],resolution:"direct",windowsHide:true}}function JK(e){if(e.candidate.resolution!=="unresolved-wrapper")return {command:e.candidate.command,leadingArgv:e.candidate.leadingArgv,resolution:e.candidate.resolution,windowsHide:e.candidate.windowsHide};if(e.allowShellFallback===true)return {command:e.candidate.command,leadingArgv:[],resolution:"shell-fallback",shell:true,windowsHide:true};throw new Error(`${Vt__default.basename(e.candidate.command)} wrapper resolved, but no executable/Node entrypoint could be resolved without shell execution.`)}function gc(e){let t=zK(e);return JK({candidate:t,allowShellFallback:e.allowShellFallback})}function mc(e,t){return {command:e.command,argv:[...e.leadingArgv,...t],resolution:e.resolution,shell:e.shell,windowsHide:e.windowsHide}}var pu=U(()=>{m();});function $w(e){let t=0;for(let n of e)n===$f&&(t+=1);return t}function Iy(e,t){return $w(t)<$w(e)?t:e}function Ix(e){let t=e.match(/(?:^|[^0-9])([0-9]{1,5})(?![0-9])/);if(!t)return null;let n=Number(t[1]);return Number.isInteger(n)&&n>0&&n<=65535?n:null}function YK(e){if(e!==65001)return XK.get(e)}function Ex(e){let t=YK(e);if(!t)return null;try{return new TextDecoder(t)}catch{return null}}function QK(){return new Promise(e=>{let t=false,n,r=o=>{t||(t=true,n&&clearTimeout(n),e(o));};n=setTimeout(()=>r(null),_x),n.unref();try{execFile("chcp.com",[],{encoding:"ascii",timeout:_x,windowsHide:!0},(i,s)=>{if(i){r(null);return}r(Ix(String(s)));}).once("error",()=>r(null));}catch{r(null);}})}function Vw(){return process.platform!=="win32"?Promise.resolve(null):(Ay||(Ay=QK(),Ay.then(e=>{jw=e;},()=>{jw=null;})),Ay)}function hc(){process.platform==="win32"&&Vw();}function ZK(){return jw}function Ax(e,t){if(t.length>=Hw)return t.subarray(t.length-Hw);let n=Hw-t.length,r=e.length>n?e.subarray(e.length-n):e;return Buffer.concat([r,t])}function Vf(e,t={}){let n=Buffer.from(e),r=n.toString("utf8");if((t.platform??process.platform)!=="win32"||!r.includes($f))return r;let i=t.codePage===void 0?ZK():t.codePage;if(i==null)return hc(),r;let s=Ex(i);return s?Iy(r,s.decode(n)):r}async function qw(e,t={}){let n=new qo(t);return `${await n.write(e)}${await n.end()}`}var $f,Hw,_x,XK,Ay,jw,qo,Qa=U(()=>{m();$f="\uFFFD",Hw=8,_x=1e3,XK=new Map([[437,"ibm437"],[720,"ibm720"],[737,"ibm737"],[775,"ibm775"],[850,"ibm850"],[852,"ibm852"],[855,"ibm855"],[857,"ibm857"],[858,"ibm858"],[862,"ibm862"],[864,"ibm864"],[932,"shift_jis"],[936,"gb18030"],[949,"euc-kr"],[950,"big5"],[866,"ibm866"],[869,"ibm869"],[1250,"windows-1250"],[1251,"windows-1251"],[1252,"windows-1252"],[1253,"windows-1253"],[1254,"windows-1254"],[1255,"windows-1255"],[1256,"windows-1256"],[1257,"windows-1257"],[1258,"windows-1258"]]);qo=class{platform;detectCodePage;utf8Decoder=new StringDecoder("utf8");codePage;fallbackDecoder;replayTail=Buffer.alloc(0);pendingUtf8="";pendingFallback="";pendingBytes=Buffer.alloc(0);queue=Promise.resolve();ended=false;constructor(t={}){this.platform=t.platform??process.platform,this.detectCodePage=t.detectCodePage??Vw,this.codePage=t.codePage;}write(t){let n=Buffer.from(t);return this.enqueue(()=>this.decodeChunk(n))}end(){return this.enqueue(()=>this.finish())}enqueue(t){let n=this.queue.then(t);return this.queue=n.then(()=>{},()=>{}),n}clearPendingCandidate(){this.pendingUtf8="",this.pendingFallback="",this.pendingBytes=Buffer.alloc(0);}async resolveCodePage(){if(this.codePage!==void 0)return this.codePage;try{this.codePage=await this.detectCodePage();}catch{this.codePage=null;}return this.codePage}async getFallbackDecoder(){if(this.fallbackDecoder!==void 0)return this.fallbackDecoder;let t=await this.resolveCodePage();return this.fallbackDecoder=t===null?null:Ex(t),this.fallbackDecoder}async decodeChunk(t){if(this.ended)return "";let n=this.utf8Decoder.write(t),r=n.includes($f);if(r&&(this.utf8Decoder=new StringDecoder("utf8")),this.platform!=="win32")return n;if(this.fallbackDecoder){let d=this.fallbackDecoder.decode(t,{stream:true}),c=Ax(this.pendingBytes,t);if(r){let l=this.pendingUtf8+n,u=this.pendingFallback+d;return this.clearPendingCandidate(),Iy(l,u)}if($w(d)>0){let l=this.pendingUtf8+n;return this.clearPendingCandidate(),this.fallbackDecoder=void 0,this.replayTail=c,l}if(this.pendingUtf8||this.pendingFallback){if(this.pendingUtf8+=n,this.pendingFallback+=d,this.pendingBytes=c,n.length===0||d.length===0)return "";let l=this.pendingUtf8;return this.clearPendingCandidate(),l}return n.length===0&&d.length>0?(this.pendingUtf8=n,this.pendingFallback=d,this.pendingBytes=c,""):n}let o=this.replayTail;if(this.fallbackDecoder===void 0&&(this.replayTail=Ax(this.replayTail,t)),!r)return n;let i=this.fallbackDecoder===void 0,s=await this.getFallbackDecoder();if(!s)return this.replayTail=Buffer.alloc(0),n;i&&o.length>0&&s.decode(o,{stream:true}),this.replayTail=Buffer.alloc(0);let a=s.decode(t,{stream:true});return Iy(n,a)}async finish(){if(this.ended)return "";this.ended=true;let t=this.utf8Decoder.end();if(this.platform!=="win32")return t;if(this.fallbackDecoder===void 0&&t.includes($f)){let i=await this.getFallbackDecoder();i&&this.replayTail.length>0&&(i.decode(this.replayTail,{stream:true}),this.replayTail=Buffer.alloc(0));}let n=this.pendingUtf8+t,r=this.fallbackDecoder?.decode()??"",o=this.pendingFallback+r;return this.clearPendingCandidate(),n.includes($f)?Iy(n,o):n}};hc();});function e2(e){if(e.type!=="usage"||!("input_tokens"in e))return null;let t=Number(e.input_tokens??0),n=Number(e.output_tokens??0),o="cache_read_input_tokens"in e?Number(e.cache_read_input_tokens):void 0,i="cached_input_tokens"in e?Number(e.cached_input_tokens):void 0,s=o!==void 0?o:i??0;return {inputTokens:o!==void 0?t+o:t,outputTokens:n,cachedInputTokens:s}}function t2(e){let t=e.usage;if(!t||typeof t!="object"||Array.isArray(t))return null;let n=t;if(!("input_tokens"in n))return null;let r=Number(n.input_tokens??0),o=Number(n.output_tokens??0),s="cache_read_input_tokens"in n?Number(n.cache_read_input_tokens):void 0,a="cached_input_tokens"in n?Number(n.cached_input_tokens):void 0,d=s!==void 0?s:a??0;return {inputTokens:s!==void 0?r+s:r,outputTokens:o,cachedInputTokens:d}}function n2(e){if(e.type!=="step_finish")return null;let n=e.part?.tokens;if(!n)return null;let r=Number(n.input??0),o=Number(n.output??0)+Number(n.reasoning??0),i=n.cache,s=i?Number(i.read??0):0;return {inputTokens:r+s,outputTokens:o,cachedInputTokens:s}}function Tx(e){let t=new Map,n;for(let i of e.split(`
2
2
  `))if(i.trim())try{let s=JSON.parse(i);if(s.type!=="assistant")continue;let a=s.message,d=a?.id,c=a?.usage;if(typeof d!="string"||!c)continue;let l=Number(c.input_tokens??0),u=Number(c.cache_read_input_tokens??0);t.set(d,{inputTokens:l+u,cachedInputTokens:u});let p=a?.model;typeof p=="string"&&p&&(n=p);}catch{}if(t.size===0)return;let r=0,o=0;for(let i of t.values())r+=i.inputTokens,o+=i.cachedInputTokens;return {inputTokens:r,cachedInputTokens:o,model:n}}function Xs(e){if(!e||!e.trim())return;let t=null,n=null;for(let r of e.split(`
3
3
  `))if(r.trim())try{let o=JSON.parse(r),i=n2(o);if(i){n||(n={inputTokens:0,outputTokens:0,cachedInputTokens:0}),n.inputTokens+=i.inputTokens,n.outputTokens+=i.outputTokens,n.cachedInputTokens+=i.cachedInputTokens;continue}let s=e2(o)??t2(o);s&&(t=s);}catch{}return n||(t??void 0)}var yc=U(()=>{m();});var r2,W,_c,Ac,qf,as=U(()=>{m();r2=new Set(["ACCOUNT_SETTING_REQUIRED","MODEL_RETIRED","SUBSCRIPTION_REQUIRED"]),W=class extends Error{constructor(n,r,o){super(n);this.providerStr=r;this.name="ProviderError",this.code=o?.code??"UNKNOWN",this.kind=r2.has(this.code)?"config":o?.kind??(this.code==="UNKNOWN"?"transient":void 0),this.retryAfterMs=o?.retryAfterMs,this.settingReason=o?.settingReason,this.replacementModel=o?.replacementModel,this.providerReason=o?.providerReason;}providerStr;code;kind;retryAfterMs;settingReason;replacementModel;providerReason;stdout},_c=class extends W{constructor(t,n){super(t,n,{code:"TIMEOUT_IDLE",kind:"permanent"}),this.name="IdleTimeoutError";}},Ac=class extends W{constructor(t,n){super(t,n,{code:"TIMEOUT_TOTAL",kind:"permanent"}),this.name="TotalTimeoutError";}},qf=class extends W{constructor(t,n){super(t,n,{code:"TIMEOUT_RESUME",kind:"transient"}),this.name="ResumeTimeoutError";}};});var Za,Ey=U(()=>{m();as();Za=class extends W{name="RateLimitError";constructor(t,n="cli/claude"){super(t,n,{code:"QUOTA_EXHAUSTED",kind:"transient"});}};});function Ic(e){if(typeof e!="string")return;let t=e.trim();if(t)return t=t.replace(/^\s*at\s+[^\r\n]+(?:\r?\n|$)/gim,""),t=t.replace(/(^|[\r\n])\s*(?:authorization|proxy-authorization|x-api-key|x-goog-api-key|x-auth-token|cookie|set-cookie)\s*:\s*[^\r\n]*/gim,`$1[HTTP HEADER ${$r}]`),t=i2(t),t=t.replace(/\b(?:Bearer|Basic)\s+[A-Za-z0-9._~+\-/]+=*/gi,`${$r}`),t=t.replace(/\bsk-[A-Za-z0-9][A-Za-z0-9_-]*/g,$r),t=t.replace(/\bghp_[A-Za-z0-9][A-Za-z0-9_-]*/g,$r),t=t.replace(/\bxoxb-[A-Za-z0-9-]+/g,$r),t=t.replace(/\bxoxp-[A-Za-z0-9-]+/g,$r),t=t.replace(/\bAKIA[0-9A-Z]{12,}\b/g,$r),t=t.replace(/\bgithub_pat_[A-Za-z0-9_]+/g,$r),t=t.replace(/\bgho_[A-Za-z0-9_]+/g,$r),t=t.replace(/\bAIza[A-Za-z0-9_-]{20,}\b/g,$r),t=t.replace(/\beyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\b/g,$r),t=t.replace(/\b(?:authorization|api[_ -]?key|access[_ -]?token|auth[_ -]?token|refresh[_ -]?token|token|secret|password)\s*([:=])\s*["']?[^\s,;&"']+/gi,(n,r)=>`${$r}${r}${$r}`),t=t.replace(/([?&](?:api[_-]?key|access[_-]?token|token)=)[^&\s]+/gi,`$1${$r}`),t=t.replace(/(?:\/(?:Users|home|private|var\/folders|tmp|workspace|workspaces|Volumes|opt|etc|srv|Applications)\/[^\s"'`),;]+)/g,wx),t=t.replace(/\b[A-Z]:\\(?:Users|home|Windows|Program Files|workspace|workspaces)\\[^\s"'`),;]*/gi,wx),t=t.replace(/[\r\n]{3,}/g,`
4
4
 
@@ -39,7 +39,7 @@ import*as Vt from'path';import Vt__default,{join,isAbsolute,dirname,resolve,base
39
39
  `);r.transaction(s=>{for(let a of s)o.run(a);})(n);}finally{r.close();}}function TX(e){if(!e)return [];let t=[];for(let n=0;n<e.length;n+=1){let r=e[n];if(r==="-s"||r==="--session"){let o=e[n+1],i=o!==void 0&&!o.startsWith("-");t.push({sessionId:i?o:void 0}),i&&(n+=1);continue}(r.startsWith("--session=")||r.startsWith("-s="))&&t.push({sessionId:r.slice(r.indexOf("=")+1)||void 0});}return t}function wX(e){if(!e)return;let t=[];for(let n=0;n<e.length;n+=1){let r=e[n];if(r==="-s"||r==="--session"){e[n+1]!==void 0&&!e[n+1].startsWith("-")&&(n+=1);continue}r.startsWith("--session=")||r.startsWith("-s=")||t.push(r);}return t}function Ly(e){let t=wX(e.additionalArgs);return {...e,...t===void 0?{}:{additionalArgs:t},resumeSessionId:void 0}}function RX(e,t){try{return !!e.prepare("SELECT id FROM session_v2 WHERE id = ?").get(t)}catch(n){if(n instanceof Error&&/no such table: session_v2/i.test(n.message))return false;throw n}}function kX(e,t,n){let r=new e(t,{readonly:true,fileMustExist:true});try{return RX(r,n)}finally{r.close();}}async function My(e,t={}){let n;try{n=await(t.loadSqlite??mX)();}catch{throw new W("OpenCode isolation requires the optional better-sqlite3 dependency. Install it and retry.","cli/opencode",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}let r=t.crewxHome??Ft(),o=kc(r),i=wu(r),s=hX(i),a=yX(t.userDataHome),d=AX(n,a);if(d.length>0){if(!sD(n,s))try{await(t.initializeDatabase??IX)(o);}catch{throw new W("Could not initialize the isolated OpenCode credential database.","cli/opencode",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}if(!sD(n,s))throw new W("The isolated OpenCode credential database is unavailable.","cli/opencode",{code:"INVALID_PROVIDER_FORMAT",kind:"config"});try{EX(n,s,d);}catch{throw new W("Could not copy API-key credentials into the isolated OpenCode database.","cli/opencode",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}}let c=TX(e.additionalArgs),l=c.map(p=>p.sessionId),u=c.length>0?l[l.length-1]:e.resumeSessionId;if(!u)return c.length>0?Ly(e):e;if(l.some(p=>p!==u)||!existsSync(s))return Ly(e);try{return kX(n,s,u)?{...e,resumeSessionId:u}:Ly(e)}catch{throw new W("Could not read the isolated OpenCode session database safely.","cli/opencode",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}}var Uy=U(()=>{m();as();ss();Vo();});function vX(e){return e.charAt(0).toUpperCase()+e.slice(1)}function iR(e){if(typeof e!="object"||e===null)return "execution_failed";let t=e;return t.code==="ENOENT"?"command_not_found":t.code==="ERR_CHILD_PROCESS_STDIO_MAXBUFFER"?"execution_failed":t.code==="ETIMEDOUT"||t.killed===true?"timeout":typeof t.code=="number"&&t.code!==0?"nonzero_exit":"execution_failed"}function dD(e){let t=new Fy(e);return console.warn("[opencode] model query failed",{code:t.code,reason:t.reason,stage:t.stage}),t}function OX(e,t){let n=dD(t);if(e)throw n;return []}async function cD(e={}){let t=e.throwOnError===true;try{await My({});}catch{return OX(t,"preparation_failed")}return new Promise((n,r)=>{let o=false,i=s=>{if(o)return;o=true;let a=dD(s);t?r(a):n([]);};try{execFile("opencode",["models","--standalone"],{timeout:5e3,maxBuffer:1048576,encoding:null,env:{...ar(process.env),...kc()}},(a,d)=>{if(!o){if(a){i(iR(a));return}Promise.resolve().then(()=>qw(d)).then(c=>{if(o)return;let l=c.split(`
40
40
  `).map(u=>u.trim()).filter(u=>u.length>0).map(u=>({id:u}));o=!0,n(l);}).catch(()=>i("decode_failed"));}}).on("error",a=>i(iR(a)));}catch(s){i(iR(s));}})}function Sc(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}async function By(){let e;try{let n=(await import('better-sqlite3')).default,r=join(wu(),"opencode.db");e=new n(r,{readonly:!0,fileMustExist:!0});let o=e.prepare("SELECT value FROM kv WHERE key = ?").get("models-dev:v2:catalog");if(!o||typeof o.value!="string")throw new Error("OpenCode model catalog row is unavailable");let i=JSON.parse(o.value);if(!Sc(i))throw new Error("OpenCode model catalog shape is unavailable");let s=typeof i.body=="string"?JSON.parse(i.body):i.body;if(!Sc(s))throw new Error("OpenCode model catalog body shape is unavailable");let a=new Map;for(let[d,c]of Object.entries(s)){if(!d||!Sc(c)||!Sc(c.models))throw new Error("OpenCode model provider shape is unavailable");for(let[l,u]of Object.entries(c.models)){if(!l||!Sc(u))throw new Error("OpenCode model shape is unavailable");let p=u.capabilities;if(p===void 0)continue;if(!Sc(p))throw new Error("OpenCode model capability shape is unavailable");let f=p.reasoning;if(f===void 0)continue;if(!Sc(f))throw new Error("OpenCode reasoning capability shape is unavailable");let g=f.effort;(g===void 0||Array.isArray(g)&&g.every(y=>typeof y=="string"))&&a.set(`${d}/${l}`,Array.isArray(g)?g:[]);}}return a}catch{return console.debug("[opencode] could not read private model effort catalog; omitting effort choices"),new Map}finally{try{e?.close();}catch{}}}function PX(e,t,n){if(!t.meta)return null;let r=t.meta.capabilities??{},o=mi(e),i=o.length>0?o:t.meta.models??[],s=n!==void 0?xf(n,i):i,a=za(`cli/${e}`),d=no(e).providerOptions??[];return {id:`cli/${e}`,name:t.meta.displayName??vX(e),modes:sc(e),effort:jr(e),models:Df(s),modelOverrides:Ja(e),...d.length>0?{providerOptions:d}:{},...a!==void 0?{defaults:a}:{},capabilities:{loadSession:r.loadSession??false,resume:r.resume??false,image:r.image??false,audio:r.audio??false,mcp:r.mcp??false}}}async function NX(e={}){let t=e.includeOpencodeRuntimeModels?await cD():void 0,n=[];for(let[r,o]of Object.entries(Ko)){let s=PX(r,o,r==="opencode"?t:void 0);s&&n.push(s);}return n.sort((r,o)=>Jf(r.id,o.id))}var CX,Fy,sR=U(()=>{m();od();Dy();Qa();ss();Uy();ro();CX={preparation_failed:{code:"OPENCODE_MODELS_PREPARATION_FAILED",stage:"prepare",message:"OpenCode model query preparation failed."},command_not_found:{code:"OPENCODE_MODELS_COMMAND_NOT_FOUND",stage:"execute",message:"OpenCode CLI could not be started."},timeout:{code:"OPENCODE_MODELS_TIMEOUT",stage:"execute",message:"OpenCode model query timed out."},nonzero_exit:{code:"OPENCODE_MODELS_EXECUTION_FAILED",stage:"execute",message:"OpenCode model query failed."},execution_failed:{code:"OPENCODE_MODELS_EXECUTION_FAILED",stage:"execute",message:"OpenCode model query failed."},decode_failed:{code:"OPENCODE_MODELS_DECODE_FAILED",stage:"decode",message:"OpenCode model output could not be decoded."}},Fy=class extends Error{code;reason;stage;constructor(t){let n=CX[t];super(n.message),this.name="OpenCodeModelQueryError",this.code=n.code,this.reason=t,this.stage=n.stage;}};});function FX(e){return e?UX[e]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Xo(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function cR(){let e;try{e=wu();}catch{return By().catch(()=>new Map)}let t=Date.now();if(lD===e&&Hy&&Hy.expiresAt>t)return Hy.result;lD=e;let n=By().catch(()=>new Map);return Hy={expiresAt:t+MX,result:n},n}async function BX(e){let t=await My(e),n=e.additionalArgs??[],r=Xo(n,"--model")||Xo(n,"-m");if(!e.model||!e.effort||r)return t;let o=(await cR()).get(e.model);return !o||o.includes(e.effort)?t:(console.debug("[opencode] requested effort is not listed for this model; using OpenCode default"),{...t,effort:void 0})}function mD(e){let t=[],n=0,r=false,o=false,i=0;for(let a=0;a<e.length;a++){let d=e[a];if(o){o=false;continue}if(d==="\\"&&r){o=true;continue}if(d==='"'){r=!r;continue}if(!r){if(d==="{")n++;else if(d==="}"&&(n--,n===0)){let c=e.slice(i,a+1).trim();c&&t.push(c),i=a+1;}}}let s=e.slice(i).trim();return s&&t.push(s),t}function kn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function hD(e){let t=kn(e.part)?e.part:void 0;return e.type==="reasoning"||t?.type==="reasoning"}function HX(e){let t=kn(e.part)?e.part:void 0;return (typeof t?.text=="string"?t.text:typeof e.text=="string"?e.text:void 0)?.trim()||void 0}function jX(e){let t=[],n=false;for(let r of e.split(/\r?\n/)){let o=r.trim();if(!o)continue;try{let s=JSON.parse(o);kn(s)?t.push(s):n=!0;continue}catch{}let i=mD(o);i.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let s of i)try{let a=JSON.parse(s);kn(a)?t.push(a):n=!0;}catch{n=true;}}return {events:t,malformed:n}}function lR(e){let t=kn(e.error)?e.error:void 0,n=t&&kn(t.data)?t.data:void 0,r=yD(t),o=Jo(t?.name),i=Jo(n?.message)??Jo(t?.message)??aR(r)??Jo(e.message)??Jo(e.errorMessage)??Jo(e.error),s=Jo(e.ref),a=o&&i&&o!==i?`${o}: ${i}`:o??i??gD;return (s?`${a} (ref: ${s})`:a).slice(0,DX)}function uD(e){let t=kn(e.error)?e.error:void 0,n=typeof t?.type=="string"?t.type:void 0,r=typeof t?.status=="number"?t.status:Number(t?.status),o=lR(e),i=yD(t),s=i&&kn(i.error)?i.error:void 0,a=typeof s?.type=="string"?s.type:void 0,d=[o,aR(i)].filter(Boolean).join(`
41
41
  `);if(r===402||$X(d))return new W(`OpenCode subscription is required: ${o}`,wo,{code:"SUBSCRIPTION_REQUIRED",kind:"config",providerReason:wc(o)});if(r===403&&(a==="RegionError"||a==="FreeTierError"))return new W(`OpenCode account settings are required: ${o}`,wo,{code:"ACCOUNT_SETTING_REQUIRED",kind:"config",settingReason:"access",providerReason:wc(o)});if(n==="provider.auth"||r===401||r===403)return new W(`OpenCode authentication is required: ${o}`,wo,{code:"AUTH_REQUIRED",kind:"config"});if(r===410||a==="ModelDeprecated")return new W(`OpenCode model has been retired: ${o}`,wo,{code:"MODEL_RETIRED",kind:"config",replacementModel:VX(i,t,e),providerReason:wc(o)});if(n==="provider.free-limit"||r===429){let c=qX(t);return new W(`OpenCode rate limit reached: ${o}`,wo,{code:"RATE_LIMITED",kind:"transient",...c===void 0?{}:{retryAfterMs:c}})}if(n==="provider.no-route")return new W(`OpenCode model or variant unavailable: ${o}`,wo,{code:"MODEL_UNAVAILABLE",kind:"config"});if(n==="provider.invalid-request"&&r===400){let c=[o,aR(i)].filter(f=>f!==void 0),l=c.find(f=>/requires global regions/i.test(f)),u=c.find(f=>/trains on request data/i.test(f)),p=l?"region":u?"training_consent":void 0;if(p)return new W(`OpenCode account settings are required: ${o}`,wo,{code:"ACCOUNT_SETTING_REQUIRED",kind:"config",settingReason:p,providerReason:wc(l??u)})}return new W(`OpenCode error: ${o}`,wo,{code:"PROVIDER_CRASHED",kind:"transient"})}function yD(e){let n=(e&&kn(e.response)?e.response:void 0)?.body;if(kn(n))return n;if(typeof n=="string")try{let r=JSON.parse(n);return kn(r)?r:void 0}catch{return}}function aR(e){let t=e&&kn(e.error)?e.error:void 0;return Jo(t?.message)??Jo(e?.message)}function $X(e){return /insufficient\s+(?:balance|account funds)|credit\s+limit\s+exceeded|payment\s+required|account invoice is overdue|billing_error|please add or update your payment method|(?:GLM Coding Plan|enterprise) package has expired|your current subscription plan does not yet include access to/i.test(e)}function VX(e,t,n){let r=e&&kn(e.metadata)?e.metadata:void 0,o=typeof r?.replacement=="string"?r.replacement.trim():void 0;if(!o)return;let i=[r?.model,t?.model,n.model,n.modelID].find(d=>typeof d=="string"&&d.trim().length>0)?.trim(),s=i&&i.includes("/")?i.slice(0,i.indexOf("/")):"opencode-go",a=o.includes("/")?o:`${s}/${o}`;return /^[A-Za-z0-9._/-]{1,128}$/.test(a)?a:void 0}function qX(e){let t=e?.retryAfterMs;if(typeof t=="number"&&Number.isFinite(t)&&t>=0)return t;let r=(e&&kn(e.response)?e.response:void 0)?.body,o=typeof r=="string"?WX(r):kn(r)?r:void 0;if(o){let i=dR(o);if(i)return pD(i.value,i.key==="retryafterms")}if(typeof r=="string"){let i=r.match(/retry[-_]after(?:\s*[:=]\s*|\s+)["']?([^"'\s,;}]+)/i);if(i?.[1])return pD(i[1],false)}}function WX(e){try{let t=JSON.parse(e);return kn(t)?t:void 0}catch{return}}function dR(e){if(Array.isArray(e)){for(let t of e){let n=dR(t);if(n)return n}return}if(kn(e)){for(let[t,n]of Object.entries(e)){let r=t.toLowerCase().replace(/[-_]/g,"");if(r==="retryafterms"||r==="retryafter")return {value:n,key:r}}for(let t of Object.values(e)){let n=dR(t);if(n)return n}}}function pD(e,t){if(typeof e=="number"&&Number.isFinite(e)&&e>=0)return t?e:Math.round(e*1e3);if(typeof e!="string"||!e.trim())return;let n=Number(e);if(Number.isFinite(n)&&n>=0)return t?n:Math.round(n*1e3);if(t)return;let r=Date.parse(e);return Number.isFinite(r)?Math.max(0,r-Date.now()):void 0}function fD(e){let t=jX(e),n=[],r=null,o=0,i=[],s=[],a,d=false;for(let c of t.events){if(hD(c))continue;let l=typeof c.type=="string"?c.type:void 0;if(l){if(l==="text"){let u=kn(c.part)?c.part:void 0,p=typeof u?.text=="string"?u.text:void 0;p?.trim()&&n.push(p.trim());continue}if(l==="result"){typeof c.result=="string"&&(r=c.result);continue}if(l==="tool_use"){o++;continue}if(l==="error"){i.push(c),s.push(lR(c));continue}if(l==="step_finish"){d=true;let u=kn(c.part)?c.part:void 0;a=typeof u?.reason=="string"?u.reason:void 0;}}}return {...t,texts:n,resultText:r,toolUseCount:o,errorEvents:i,errorMessages:s,terminalReason:a,hasTerminal:d}}function _D(e){return (e??"unknown").trim().toLowerCase().replace(/_/g,"-")}function GX(){return new W("OpenCode returned no assistant output.",wo,{code:"EMPTY_OUTPUT",kind:"transient"})}function zX(){return new W("OpenCode emitted malformed JSON output.",wo,{code:"PROVIDER_CRASHED",kind:"transient"})}function JX(e,t){switch(_D(e)){case "length":return new W("OpenCode stopped because the context window was exceeded.",wo,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new W("OpenCode stopped because the content filter blocked the response.",wo,{code:"UNKNOWN",kind:"permanent"});case "error":return new W(`${gD} while generating a response.`,wo,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var xX,wo,gD,DX,LX,MX,lD,Hy,UX,jy,$y=U(()=>{m();as();tR();yc();Au();nd();sR();Uy();xX=new Set(["step_start","step_finish"]),wo="cli/opencode",gD="OpenCode provider error",DX=240,LX="Follow the instructions provided on standard input.",MX=3e5,UX={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};jy={command:"opencode",prepare:BX,meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(e,t,n){let r=t.additionalArgs,o=r!==void 0?[...r]:["run"];Xo(o,"--format")||o.push("--format","json"),Xo(o,"--thinking")||o.push("--thinking"),!Xo(o,"--standalone")&&!Xo(o,"--server")&&o.push("--standalone"),t.resumeSessionId&&!Xo(o,"-s")&&!Xo(o,"--session")&&o.push("-s",t.resumeSessionId);let{agent:i,autoApprove:s}=FX(t.mode);Xo(o,"--agent")||i!==void 0&&o.push("--agent",i),s&&!Xo(o,"--auto")&&o.push("--auto");let a=Xo(o,"--model")||Xo(o,"-m");if(t.model&&!a){let d=t.effort?`${t.model}#${t.effort}`:t.model;o.push("--model",d);}else t.effort&&!t.model&&!a&&console.debug("[opencode] ignoring effort because no model is configured");return o.push(LX),{args:o,stdinMessage:e,env:kc()}},extractText(e){let t=fD(e),n=t.errorEvents[0];if(n)throw uD(n);let r=JX(t.terminalReason??"");if(r)throw r;let o=t.texts.length>0?t.texts[t.texts.length-1]:void 0;if(o!==void 0)return o;if(t.resultText?.trim())return t.resultText;if(t.malformed)throw zX();let i=_D(t.terminalReason);if(t.hasTerminal&&i==="tool-calls"&&t.toolUseCount>0)return "";throw GX()},interpretExit(e,t,n=""){if(e===0)return null;let o=fD(n).errorEvents[0];return o?uD(o):null},parseResultMeta(e){let t=Xs(e);return t?{usage:{inputTokens:t.inputTokens,outputTokens:t.outputTokens,cachedInputTokens:t.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(e,t,n){let r=t??new Date().toISOString(),o=[],i=new Map,s;try{JSON.parse(e),s=[e];}catch{s=mD(e),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let a of s){let d;try{d=JSON.parse(a);}catch{continue}let c=io(d,r),l=d.type;if(hD(d)){let u=HX(d);if(!u)continue;let p=kn(d.part)?d.part:void 0,f=typeof p?.id=="string"?p.id:typeof d.id=="string"?d.id:void 0,g=u;if(f){let y=`opencode.reasoning:${f}`,_=n?.state.get(y),A=typeof _=="string"?_:i.get(f);if(typeof A=="string"&&(A===u||A.startsWith(u))||typeof A=="string"&&u.startsWith(A)&&(g=u.slice(A.length).trim(),!g))continue;i.set(f,u),n?.state.set(y,u);}o.push({timestamp:c,type:"thinking",content:g});continue}if(l){if(l==="text"){let p=d.part?.text;p&&o.push({timestamp:c,type:"text",content:p});continue}if(l==="tool_use"){let u=d.part;if(!u)continue;let p=String(u.tool||""),f=String(u.callID||u.id||""),g=u.state,y=String(g?.status||""),_=g?.input,A=zo(_);if(o.push({timestamp:c,type:"tool_use",toolName:p,toolUseId:f,toolInput:A}),y==="completed"&&g?.output!==void 0){let E=g.output,w=typeof E=="string"?E:JSON.stringify(E);o.push({timestamp:c,type:"tool_result",toolUseId:f,resultPreview:w,isError:false});}else y==="error"&&o.push({timestamp:c,type:"tool_result",toolUseId:f,resultPreview:String(g?.error||"tool error"),isError:true});continue}if(l==="error"){let u=lR(d);o.push({timestamp:c,type:"error",content:u,errorMessage:u});continue}}}return o},suppressOutputLine(e){let t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return false;try{let r=JSON.parse(t).type;return r?xX.has(r):!1}catch{return false}}};});function AD(e,t){if(e===void 0||e==="")return t;let n=parseInt(e,10);return Number.isNaN(n)?t:n}function uR(e=process.env){let t=e.CREWX_TIMEOUT_IDLE;if(t===void 0||t==="")return;let n=parseInt(t,10);if(!(!Number.isFinite(n)||n<=0))return n}function ID(e=process.env){return {queryMs:AD(e.CREWX_TIMEOUT_QUERY,288e5),executeMs:AD(e.CREWX_TIMEOUT_EXECUTE,288e5),idleMs:uR(e)??6e5}}var Kf=U(()=>{m();});function Vy(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function QX(e,t){let n=[];for(let r=0;r<e.length;r+=1){let o=e[r],i=[...t].find(s=>o===s||o.startsWith(`${s}=`));i?o===i&&r+1<e.length&&(r+=1):n.push(o);}return n}function ZX(e){let t=[];for(let n=0;n<e.length;n+=1){let r=e[n],o=r.indexOf("="),i=o>0?r.slice(0,o):r;if(!XX.has(i)){t.push(r);continue}r===i&&n+1<e.length&&!e[n+1].startsWith("-")&&(n+=1);}return t}function Yo(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function eY(e,t){if(!(e?KX.has(e)||mi(pR).some(i=>i.id===e):false)||!e)return t;let r=jr(pR,e),o=Ja(pR)[e]?.defaultEffort;if(r.length!==0)return t?r.includes(t)?t:o&&r.includes(o)?o:void 0:o}function Ys(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>=0?e:void 0}function mR(e){return e.kind==="step_update"?typeof e.step.conversation_id=="string"?e.step.conversation_id:void 0:typeof e.envelope.conversation_id=="string"?e.envelope.conversation_id:void 0}function hR(e){return e.step.step_index}function In(e){if(typeof e!="string")return;let t=e.split(/\r?\n/,1)[0]?.trim();return t&&Ic(t)?.slice(0,500).trim()||void 0}function tY(e,t){let n=(e??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&YX.has(n))return n;let r=`${n} ${t??""}`.toLowerCase();return /quota|resource_exhausted|usage[ _-]?limit|credits?.{0,20}exhaust/.test(r)?"QUOTA_EXHAUSTED":/rate[ _-]?limit|throttl/.test(r)?"RATE_LIMITED":/auth|sign[ _-]?in|log(?:ged)?[ _-]?in|unauthori[sz]ed|credential/.test(r)?"AUTH_REQUIRED":[/unknown (?:flag|option)/,/flag provided but not defined/,/unrecognized (?:flag|option)/,/invalid value for (?:flag|option)/,/invalid (?:flag|option)/].some(i=>i.test(r))?"INVALID_PROVIDER_FORMAT":/invalid.{0,24}model|model.{0,24}(unknown|unavailable|not found|not recognized)|config/.test(r)?"MODEL_UNAVAILABLE":"UNKNOWN"}function nY(e){return e==="AUTH_REQUIRED"||e==="TIMEOUT_IDLE"||e==="TIMEOUT_TOTAL"||e==="TIMEOUT_RESUME"||e==="PROVIDER_CRASHED"?"permanent":e==="MODEL_UNAVAILABLE"||e==="INVALID_PROVIDER_FORMAT"||e==="PROVIDER_NOT_FOUND"?"config":"transient"}function wD(e){let t=Yo(e)?e:void 0,n=t&&Yo(t.error)?t.error:void 0,r=t?In(t.code)??In(t.error_code)??In(n?.code)??In(n?.error_code):void 0,o=typeof e=="string"?In(e):t?In(t.message)??In(t.error)??In(t.reason)??In(n?.message)??In(n?.error)??In(n?.reason):void 0,i=tY(r,o),s=t?Ys(t.retry_after_ms)??Ys(t.retryAfterMs)??Ys(n?.retry_after_ms)??Ys(n?.retryAfterMs):void 0;return {code:i,kind:nY(i),message:o??"Antigravity reported a terminal error.",...s===void 0?{}:{retryAfterMs:s}}}function Wy(e){let t=wD(e);return new W(t.message,"cli/antigravity",{code:t.code,kind:t.kind,...t.retryAfterMs===void 0?{}:{retryAfterMs:t.retryAfterMs}})}function yR(e){return new W(e,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function rY(e){let t=new TextEncoder().encode(e).byteLength;if(!(t<=gR))throw new W(`Input is too large: final provider initial input is ${t} UTF-8 bytes; budget is ${gR} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function fR(){return new W("Antigravity CLI returned empty output with exit code 0. agy may have hidden an auth/quota/model error in its log file; inspect ~/.gemini/antigravity-cli/log for details.","cli/antigravity",{code:"EMPTY_OUTPUT",kind:"transient"})}function Gy(e){if(e.kind==="result"||e.kind==="legacy_result")return e.result}function zy(e){for(let t=e.length-1;t>=0;t-=1){let n=e[t];if(n&&(n.kind==="result"||n.kind==="legacy_result"||n.kind==="agy_error"))return {event:n,index:t}}}function oY(e){let t=zy(e);if(!t||t.event.kind==="agy_error"||t.index!==e.length-1||Gy(t.event)?.status!=="SUCCESS"||qy(e))return false;let r=new Map;for(let o of e){if(o.kind!=="step_update"||o.step.step_type!=="agent_response")continue;let i=mR(o),s=hR(o);!i||!Number.isSafeInteger(s)||r.set(JSON.stringify([i,s]),o.step);}if(r.size===0)return false;for(let o of r.values())if(o.state!=="DONE"||!Yo(o.usage)||Ys(o.usage.input_tokens)===void 0||Ys(o.usage.output_tokens)===void 0)return false;return true}function iY(e,t){for(let n=t-1;n>=0;n-=1){let r=e[n];if(r?.kind==="agy_error")return r.error}}function sY(e,t){return Yo(e)&&Yo(t)?{...t,...e}:Yo(e)&&typeof t=="string"?{...e,message:t}:typeof e=="string"&&Yo(t)?{...t,message:e}:e??t}function aY(e){let t=Array.isArray(e.denied_actions)?e.denied_actions:[],n=[];for(let i of t){let s=Yo(i)?i:void 0,a=typeof i=="string"?In(i):In(s?.display_name)??In(s?.action);a&&!n.includes(a)&&n.length<5&&n.push(a.slice(0,80));}let r=Math.max(0,t.length-n.length),o=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new W(`Permission denied: Antigravity blocked ${t.length} requested action${t.length===1?"":"s"}${o}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function qy(e){let t=zy(e);if(!t)return;if(t.event.kind==="agy_error")return Wy(t.event.error);let n=Gy(t.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return aY(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return yR("Antigravity returned a result with an unsupported status.");let r=n.error,o=sY(r==null||r===""?n:r,iY(e,t.index));return Wy(o)}function RD(e){if(typeof e=="string")return e;if(e!=null)try{return JSON.stringify(e)}catch{return}}function dY(e){return `agy:${String(e.conversation_id)}:${String(e.step_index)}`}function cY(e,t){let n=typeof t?.name=="string"?t.name:e.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function kD(e){let t=RD(e);if(t)return t.length<=2e3?t:`${t.slice(0,1999)}\u2026`}function lY(e){let t=Yo(e)?e:void 0,n=t&&Yo(t.error)?t.error:void 0,r=typeof e=="string"?e.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,o=(In(t?.type)??In(t?.code)??In(t?.error_type)??In(n?.type)??In(n?.code)??In(n?.error_type)??In(r)??"TOOL_ERROR").slice(0,60),i=wD(e).message.slice(0,250);return kD({type:o,message:i})??"Antigravity reported a tool error."}function ED(e,t){return e?e.state.has(t)?true:(e.state.set(t,true),false):false}function TD(e,t){return {timestamp:e,type:"error",content:t.message,errorMessage:t.message,isError:true}}var pR,KX,XX,gR,YX,_R,AR=U(()=>{m();as();Kf();Wf();zs();ro();Iu();Ry();pR="antigravity",KX=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),XX=new Set(["--conversation","--resume","--continue"]),gR=18e4,YX=new Set(["QUOTA_EXHAUSTED","RATE_LIMITED","EMPTY_OUTPUT","AUTH_REQUIRED","MODEL_UNAVAILABLE","TIMEOUT_IDLE","TIMEOUT_TOTAL","TIMEOUT_RESUME","PROVIDER_NOT_FOUND","INVALID_PROVIDER_FORMAT","PROVIDER_CRASHED","UNKNOWN"]);_R={command:"agy",maxInitialInputBytes:gR,meta:{displayName:"Antigravity",models:Sw(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(e){let t=mu(e);if(t?.kind!=="init")return null;let n=t.envelope.conversation_id;return typeof n=="string"&&n.trim().length>0?n.trim():null},buildArgs(e,t,n){rY(e);let{model:r,effort:o}=cs(t.model),i=ru(r),s=i.model,a=t.effort??o??i.effort,d=eY(s,a),c=t.additionalArgs??[],l=ZX(QX(c,new Set(["--input-format","--output-format"]))),u=s&&!Vy(c,"--model")?["--model",s]:[],p=Vy(c,"--effort")?[]:zx(d),f=Vy(c,"--mode")||Vy(c,"--dangerously-skip-permissions")?[]:Gx(t.mode),g=typeof t.resumeSessionId=="string"&&t.resumeSessionId.trim().length>0?["--conversation",t.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...u,...p,...f,...g,...l],stdinMessage:`${JSON.stringify({event:"user",message:{content:e}})}
42
- `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(e){let t=hu(e),n=zy(t)?.event,r=qy(t);if(r)throw r;let o=n?Gy(n):void 0;if(o){if(o.status!=="SUCCESS")throw yR("Antigravity returned a result with an unsupported status.");if(typeof o.response!="string")throw yR("Antigravity returned a successful result without a response string.");if(!o.response.trim())throw fR();return o.response}if(t.length>0)throw fR();let i=e.trim();if(!i)throw fR();return i},extractPartialText(e){let t=hu(e),n=zy(t)?.event;if(!n||n.kind==="agy_error")return;let r=Gy(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(e,t,n){let r=hu(n??""),o=qy(r);return o||(e!==0&&t.trim()?Wy(t):null)},parseResultMeta(e){let t=hu(e),n=0,r=0,o=0,i=0,s=new Set;for(let d of t){if(d.kind!=="step_update"||d.step.state!=="DONE"||!Yo(d.step.usage))continue;let c=mR(d),l=hR(d);if(!c||!Number.isSafeInteger(l))continue;let u=JSON.stringify([c,l]);if(s.has(u))continue;let p=d.step.usage,f=Ys(p.input_tokens),g=Ys(p.output_tokens);f===void 0||g===void 0||(s.add(u),n+=f,r+=g,o+=Ys(p.cache_read_tokens)??0,i+=1);}return {usage:i===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:o,costUsd:0,complete:oY(t)},model:null}},parseEvent(e,t,n){let r=mu(e);if(!r)return [];let o=t??new Date().toISOString();if(r.kind==="agy_error")return [TD(o,Wy(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let f=qy([r]);return f?[TD(o,f)]:[]}if(r.kind!=="step_update")return [];let{step:i}=r,s=mR(r)??"unknown",a=hR(r),d=`${s}:${a}`;if((i.state==="DONE"||i.state==="ERROR")&&ED(n,`antigravity:terminal:${d}`))return [];if(i.step_type==="agent_response")return typeof i.text_delta=="string"&&i.text_delta.length>0?[{timestamp:o,type:"text",content:i.text_delta}]:[];if(i.step_type!=="tool")return [];let c=Yo(i.tool_info)?i.tool_info:void 0,l=cY(i,c);if(!l)return [];let u=dY(i);if(i.state==="ACTIVE"){if(ED(n,`antigravity:active:${d}`))return [];let f=RD(c?.parameters);return [{timestamp:o,type:"tool_use",toolName:l,toolUseId:u,...f===void 0?{}:{toolInput:f}}]}let p=i.state==="ERROR"?lY(c?.error):kD(c?.output);return [{timestamp:o,type:"tool_result",toolName:l,toolUseId:u,...p===void 0?{}:{resultPreview:p},...i.state==="ERROR"?{isError:true}:{}}]}};});var SD,bD=U(()=>{m();_u();Au();td();nd();SD={parseEvent(e,t){let n;try{n=JSON.parse(e);}catch{return []}let r=n.type;if(!r)return [];if(r!=="message"&&r!=="tool_use"&&r!=="tool_result")return [];let o=io(n,t??new Date().toISOString());if(r==="message"){if(n.role!=="assistant")return [];let s=n.content;return s?[{timestamp:o,type:"text",content:s}]:[]}if(r==="tool_use"){let i=String(n.tool_name||""),s=n.tool_id,a=n.parameters,d=zo(a);return /^bash$/i.test(i)&&hi(d)?[yi(o,d,s)]:[{timestamp:o,type:"tool_use",toolName:i,toolUseId:s,toolInput:d}]}if(r==="tool_result"){let i=n.tool_id,s=String(n.output??""),a=n.status!=="success";return [{timestamp:o,type:"tool_result",toolUseId:i,...To(s,a)}]}return []}};});function Ru(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ku(e){return Ru(e)?e:void 0}function so(e){return typeof e=="string"?e:void 0}function Cc(e){let t=typeof e=="number"?e:Number(e??0);return Number.isFinite(t)?t:0}function AY(e){let t=[],n=-1,r=0,o=false,i=false;for(let s=0;s<e.length;s+=1){let a=e[s];if(n===-1){(a==="{"||a==="[")&&(n=s,r=1);continue}if(i){i=false;continue}if(a==="\\"&&o){i=true;continue}if(a==='"'){o=!o;continue}o||(a==="{"||a==="["?r+=1:(a==="}"||a==="]")&&(r-=1,r===0&&(t.push(e.slice(n,s+1)),n=-1)));}return n!==-1&&t.push(e.slice(n)),t}function Xf(e){let t=e.trim();if(!t)return [];try{let n=JSON.parse(t);return Ru(n)?[n]:[]}catch{return AY(t).flatMap(n=>{try{let r=JSON.parse(n);return Ru(r)?[r]:[]}catch{return []}})}}function DD(e){let t=JSON.stringify(e);return t===void 0?String(e):t}function vc(e){if(typeof e=="string")return e;if(Array.isArray(e)){let t=e.map(vc).filter(n=>n!==void 0);return t.length>0?t.join(`
42
+ `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(e){let t=hu(e),n=zy(t)?.event,r=qy(t);if(r)throw r;let o=n?Gy(n):void 0;if(o){if(o.status!=="SUCCESS")throw yR("Antigravity returned a result with an unsupported status.");if(typeof o.response!="string")throw yR("Antigravity returned a successful result without a response string.");if(!o.response.trim())throw fR();return o.response}if(t.length>0)throw fR();let i=e.trim();if(!i)throw fR();return i},extractPartialText(e){let t=hu(e),n=zy(t)?.event;if(!n||n.kind==="agy_error")return;let r=Gy(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(e,t,n){let r=hu(n??""),o=qy(r);return o||(e!==0&&t.trim()?Wy(t):null)},parseResultMeta(e){let t=hu(e),n=0,r=0,o=0,i=0,s=new Set;for(let d of t){if(d.kind!=="step_update"||d.step.state!=="DONE"||!Yo(d.step.usage))continue;let c=mR(d),l=hR(d);if(!c||!Number.isSafeInteger(l))continue;let u=JSON.stringify([c,l]);if(s.has(u))continue;let p=d.step.usage,f=Ys(p.input_tokens),g=Ys(p.output_tokens);if(f===void 0||g===void 0)continue;s.add(u);let y=Ys(p.cache_read_tokens)??0;n+=f+y,r+=g,o+=y,i+=1;}return {usage:i===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:o,costUsd:0,complete:oY(t)},model:null}},parseEvent(e,t,n){let r=mu(e);if(!r)return [];let o=t??new Date().toISOString();if(r.kind==="agy_error")return [TD(o,Wy(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let f=qy([r]);return f?[TD(o,f)]:[]}if(r.kind!=="step_update")return [];let{step:i}=r,s=mR(r)??"unknown",a=hR(r),d=`${s}:${a}`;if((i.state==="DONE"||i.state==="ERROR")&&ED(n,`antigravity:terminal:${d}`))return [];if(i.step_type==="agent_response")return typeof i.text_delta=="string"&&i.text_delta.length>0?[{timestamp:o,type:"text",content:i.text_delta}]:[];if(i.step_type!=="tool")return [];let c=Yo(i.tool_info)?i.tool_info:void 0,l=cY(i,c);if(!l)return [];let u=dY(i);if(i.state==="ACTIVE"){if(ED(n,`antigravity:active:${d}`))return [];let f=RD(c?.parameters);return [{timestamp:o,type:"tool_use",toolName:l,toolUseId:u,...f===void 0?{}:{toolInput:f}}]}let p=i.state==="ERROR"?lY(c?.error):kD(c?.output);return [{timestamp:o,type:"tool_result",toolName:l,toolUseId:u,...p===void 0?{}:{resultPreview:p},...i.state==="ERROR"?{isError:true}:{}}]}};});var SD,bD=U(()=>{m();_u();Au();td();nd();SD={parseEvent(e,t){let n;try{n=JSON.parse(e);}catch{return []}let r=n.type;if(!r)return [];if(r!=="message"&&r!=="tool_use"&&r!=="tool_result")return [];let o=io(n,t??new Date().toISOString());if(r==="message"){if(n.role!=="assistant")return [];let s=n.content;return s?[{timestamp:o,type:"text",content:s}]:[]}if(r==="tool_use"){let i=String(n.tool_name||""),s=n.tool_id,a=n.parameters,d=zo(a);return /^bash$/i.test(i)&&hi(d)?[yi(o,d,s)]:[{timestamp:o,type:"tool_use",toolName:i,toolUseId:s,toolInput:d}]}if(r==="tool_result"){let i=n.tool_id,s=String(n.output??""),a=n.status!=="success";return [{timestamp:o,type:"tool_result",toolUseId:i,...To(s,a)}]}return []}};});function Ru(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ku(e){return Ru(e)?e:void 0}function so(e){return typeof e=="string"?e:void 0}function Cc(e){let t=typeof e=="number"?e:Number(e??0);return Number.isFinite(t)?t:0}function AY(e){let t=[],n=-1,r=0,o=false,i=false;for(let s=0;s<e.length;s+=1){let a=e[s];if(n===-1){(a==="{"||a==="[")&&(n=s,r=1);continue}if(i){i=false;continue}if(a==="\\"&&o){i=true;continue}if(a==='"'){o=!o;continue}o||(a==="{"||a==="["?r+=1:(a==="}"||a==="]")&&(r-=1,r===0&&(t.push(e.slice(n,s+1)),n=-1)));}return n!==-1&&t.push(e.slice(n)),t}function Xf(e){let t=e.trim();if(!t)return [];try{let n=JSON.parse(t);return Ru(n)?[n]:[]}catch{return AY(t).flatMap(n=>{try{let r=JSON.parse(n);return Ru(r)?[r]:[]}catch{return []}})}}function DD(e){let t=JSON.stringify(e);return t===void 0?String(e):t}function vc(e){if(typeof e=="string")return e;if(Array.isArray(e)){let t=e.map(vc).filter(n=>n!==void 0);return t.length>0?t.join(`
43
43
  `):void 0}if(Ru(e)){if(typeof e.text=="string")return e.text;if(typeof e.message=="string")return e.message;if(typeof e.error=="string")return e.error;if(e.type==="text"&&typeof e.data=="string")return e.data;for(let t of ["content","FileContent","rawOutput"]){let n=vc(e[t]);if(n!==void 0)return n}}}function IY(e){let t=s=>Array.isArray(s)&&s.every(a=>Number.isInteger(a)&&a>=0&&a<=255),n=s=>typeof s=="string"&&s.trim().length>0?s:void 0,r=s=>new TextDecoder("utf-8",{fatal:false}).decode(Uint8Array.from(s)),o=s=>{let a=JSON.stringify(s,(d,c)=>t(c)?`<bytes:${c.length}>`:c);return a===void 0?String(s):a},i=e.rawOutput;if(i!=null){let s=ku(i);if(!s)return n(vc(i))??o(i);let a;if(t(s.output)&&s.output.length>0&&(a=n(r(s.output))),!a&&t(s.stdout)&&s.stdout.length>0&&(a=n(r(s.stdout))),!a){let l=ku(s.Result);a=n(s.output)??n(l?.output)??n(vc(i));}let d=t(s.stderr)&&s.stderr.length>0?r(s.stderr):void 0;if(d!==void 0)if(a){let l=a.endsWith(`
44
44
  `)||a.endsWith("\r")?"":`
45
45
  `;a=`${a}${l}${d}`;}else a=n(d);if(a)return a;let c=n(s.summary)??n(vc(e.content))??n(s.output_for_prompt);return c!==void 0?c:o(i)}if(e.content!==null&&e.content!==void 0)return vc(e.content)??o(e.content);if(e.result!==null&&e.result!==void 0)return vc(e.result)??o(e.result)}function LD(e){let t=ku(e.error),n=[e.message,e.errorMessage,t?.message,t?.detail,typeof e.error=="string"?e.error:void 0].find(r=>typeof r=="string"&&r.trim().length>0);return n?MD(n):"Grok CLI reported an error."}function MD(e){return (e.replace(_Y,"").split(/\r?\n/).map(n=>n.trim()).filter(Boolean)[0]??e.trim()).slice(0,500)}function ND(e){return yY.test(e)}function EY(e){let t=ku(e.modelUsage);return t?Object.keys(t)[0]??null:null}function TY(e){let t=ku(e.usage);if(!t)return null;let n=Cc(t.cache_read_input_tokens);return {inputTokens:Cc(t.input_tokens)+n,cachedInputTokens:n,outputTokens:Cc(t.output_tokens),costUsd:Cc(e.total_cost_usd)}}function wY(e){let t=0,n=0,r=0,o=false,i=new Set;for(let s of e.split(`