@crewx/sdk 0.9.0-rc.192 → 0.9.0-rc.194

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.
package/dist/esm/index.js CHANGED
@@ -18,7 +18,7 @@ import*as bt from'path';import bt__default,{join,isAbsolute,dirname,resolve,rela
18
18
  `);for(let r of t)if(r.trim())try{let o=JSON.parse(r);if(o.type==="result"){let i=o.usage,s=i?{inputTokens:Number(i.input_tokens??0)+Number(i.cache_read_input_tokens??0),outputTokens:Number(i.output_tokens??0),cachedInputTokens:Number(i.cache_read_input_tokens??0),costUsd:Number(o.total_cost_usd??0)}:null,a=o.modelUsage,d=a?Object.keys(a)[0]??null:null;return {usage:s,model:d}}}catch{}let n=QO(e);return n?{usage:{inputTokens:n.inputTokens,outputTokens:0,cachedInputTokens:n.cachedInputTokens,costUsd:0},model:n.model??null}:{usage:null,model:null}},parseEvent(e,t){let n;try{n=JSON.parse(e);}catch{return []}let r=n.type;if(!r)return [];let o=Lr(n,t??new Date().toISOString()),i=PJ(n);if(i)return [{timestamp:o,type:"error",content:i,errorMessage:i}];let s=n.output_file,a=n.summary;if(r==="system"&&n.subtype==="task_notification"&&n.status==="completed"&&typeof s=="string"&&s.trim().length>0&&typeof a=="string"&&a.trim().length>0)return [{timestamp:o,type:"text",content:a}];if(r!=="assistant"&&r!=="user")return [];let c=n.message?.content;if(!Array.isArray(c))return [];let l=[];for(let u of c){let p=DJ(o,u);p&&l.push(p);}return l},suppressOutputLine(e){let t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return false;try{let r=JSON.parse(t).type;return r?SJ.has(r):!1}catch{return false}}};vN=200;});function ON(e){let t=e.split(`
19
19
  `).filter(o=>o.trim()),n=[],r=null;for(let o of t)try{let i=JSON.parse(o);if(i.type==="assistant.message"&&typeof i.data?.content=="string"){let s=i.data.content;s.trim()&&n.push(s.trim());}i.type==="result"&&typeof i.result=="string"&&(r=i.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}var LJ,qm,XT=B(()=>{m();$d();Bd();Ul();Bl();_a();Jr();wd();Aa();LJ=new Set(["interactive","plan","autopilot"]);qm={command:"copilot",meta:{displayName:"Copilot",models:wT()},buildArgs(e,t,n){let r=t.additionalArgs?[...t.additionalArgs]:[];return t.model&&r.push("--model",t.model),t.mode&&LJ.has(t.mode)&&r.push("--mode",t.mode),t.effort&&(Wp.copilot??[]).includes(t.effort)&&r.push("--effort",t.effort),{args:r,stdinMessage:e}},extractText(e){let t=ON(e);if(t)return t;let n=e.trim();return wo(n,"copilot")?"":n},extractPartialText(e){return ON(e)},parseResultMeta(e){let t=ys(e);return t?{usage:{inputTokens:t.inputTokens,outputTokens:t.outputTokens,cachedInputTokens:t.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(e,t){let n;try{n=JSON.parse(e);}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 i=Lr(n,t??new Date().toISOString()),s=o.toolCallId;if(r==="tool.execution_start"){let a=String(o.toolName||""),d=o.arguments,c=ko(d);return (a==="bash"||a==="Bash")&&Go(c)?[zo(i,c,s)]:[{timestamp:i,type:"tool_use",toolName:a,toolInput:c,...s&&{toolUseId:s}}]}if(r==="tool.execution_complete"){let a=o.error;if(a)return [{timestamp:i,type:"tool_result",...s&&{toolUseId:s},...Qr(String(a.message||""),true)}];let d=o.result,c=String(d?.content||"");return [{timestamp:i,type:"tool_result",...s&&{toolUseId:s},...Qr(c,false)}]}if(r==="assistant.message"){let a=String(o.content||"");return a?[{timestamp:i,type:"text",content:a}]:[]}return []}};});function BJ(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 FJ(e){return e[0]==="exec"?e.slice(1):e}function NN(e){let t=e.split(`
20
20
  `).map(o=>o.trim()).filter(Boolean),n=[],r=null;for(let o of t)try{let i=JSON.parse(o);if(i.type==="item.completed"&&(i.item?.type==="message"||i.item?.type==="agent_message")&&typeof i.item?.text=="string"){let s=i.item.text;s.trim()&&n.push(s.trim());}i.type==="result"&&typeof i.result=="string"&&(r=i.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}function Ia(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function DN(e){return e.type==="turn.failed"?true:e.type!=="error"?false:typeof e.message=="string"||typeof e.errorMessage=="string"||typeof e.error=="string"||Ia(e.error)}function LN(e){let t=Ia(e.error)?e.error:void 0,n=[e.message,e.errorMessage,t?.message,t?.detail,typeof e.error=="string"?e.error:void 0];for(let r of n)if(typeof r=="string"&&r.trim())return r;return e.type==="turn.failed"?"Codex turn failed.":"Codex CLI reported an error."}function HJ(e){for(let t of e.split(/\r?\n/)){if(!t.trim())continue;let n;try{n=JSON.parse(t);}catch{continue}if(Ia(n)&&DN(n))return LN(n)}}function xN(e,t,n,r){if(!n||e.type!=="command_execution"&&e.type!=="mcp_tool_call"||typeof e.id!="string"||!e.id.trim()||e.type==="mcp_tool_call"&&t==="item.started"&&(typeof e.server!="string"||typeof e.tool!="string"))return;let o=n.state.get("codex.pending");o||(o=new Map,n.state.set("codex.pending",o));let i=JSON.stringify([e.type,e.id]);if(t==="item.started"){let d=`codex:${JSON.stringify(e.id)}#${n.rowIndex}:${r}`,c=o.get(i)??[];return c.push(d),o.set(i,c),d}let s=o.get(i),a=s?.pop();return s?.length||o.delete(i),a}function jJ(e,t,n){let r=t.type;if(r==="command_execution"){let o=String(t.command||"");return Go(o)?[zo(e,o,n)]:[{timestamp:e,type:"tool_use",toolName:"Bash",toolInput:o,...n?{toolUseId:n}:{}}]}return r==="mcp_tool_call"?typeof t.server!="string"||typeof t.tool!="string"?[]:[{timestamp:e,type:"tool_use",toolName:`${t.server}/${t.tool}`,toolInput:ko(t.arguments),...n?{toolUseId:n}:{}}]:[]}function $J(e,t,n){let r=t.type;if(r==="message"||r==="text"){let o=t.content;if(Array.isArray(o))for(let i of o){let s=VJ(e,i);if(s)return s}if(typeof t.text=="string")return {timestamp:e,type:"text",content:t.text}}if(r==="agent_message"&&typeof t.text=="string")return {timestamp:e,type:"text",content:t.text};if(r==="reasoning"){let o=typeof t.text=="string"?t.text.trim():"";return o?{timestamp:e,type:"thinking",content:o}:null}if(r==="command_execution"){let o=String(t.aggregated_output||t.output||""),i=!!t.is_error;return {timestamp:e,type:"tool_result",...Qr(o,i),...n?{toolUseId:n}:{}}}if(r==="mcp_tool_call"){let o=Ia(t.result)?t.result:void 0,s=(Array.isArray(o?.content)?o.content:[]).filter(d=>Ia(d)&&d.type==="text"&&typeof d.text=="string").map(d=>d.text).join(`
21
- `),a=typeof t.error=="string"?t.error:Ia(t.error)&&typeof t.error.message=="string"?t.error.message:"";return {timestamp:e,type:"tool_result",resultPreview:s||a,isError:t.status==="failed"||t.status==="error"||t.is_error===true||t.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let o=String(t.name||t.tool_name||""),i=t.input,s=ko(i);return o==="Bash"&&Go(s)?zo(e,s):{timestamp:e,type:"tool_use",toolName:o,toolInput:s}}if(r==="tool_result"){let o=!!t.is_error,i=String(t.output||t.content||"");return {timestamp:e,type:"tool_result",...Qr(i,o)}}if(r==="web_search"){let o=t.action,i;if(o?.type==="search"){let s=o.queries;i=String(o.query||"")||(s?.length?s.join(", "):"")||String(t.query||"");}else i=t.query?"open: "+String(t.query):"";return !i&&!(Ia(o)&&o.type==="other"&&t.query==="")?null:{timestamp:e,type:"tool_use",toolName:"WebSearch",toolInput:i}}if(r==="file_change"){let o=t.changes;if(!Array.isArray(o)||o.length===0)return null;let i=o.map(a=>String(a.path||"")).filter(Boolean);if(i.length===0)return null;let s=i.length===1?i[0]:`${i.slice(0,2).join(", ")}${i.length>2?` (+${i.length-2})`:""}`;return {timestamp:e,type:"tool_use",toolName:"Edit",toolInput:s}}return null}function VJ(e,t){let n=t.type;if(n==="text")return {timestamp:e,type:"text",content:String(t.text||"")};if(n==="tool_use"){let r=String(t.name||""),o=t.input,i=ko(o);return r==="Bash"&&Go(i)?zo(e,i):{timestamp:e,type:"tool_use",toolName:r,toolInput:i}}return null}var MJ,UJ,Wm,YT=B(()=>{m();_s();$d();Bd();Ul();Bl();VT();_a();Fl();Jr();Aa();MJ=new Set(["turn.started","turn.completed","item.updated"]),UJ="cli/codex";Wm={command:"codex",meta:{displayName:"Codex",models:TT(),capabilities:{resume:true}},buildArgs(e,t,n){let{model:r,effort:o}=Ni(t.model),i=t.effort??o,s=t.resumeSessionId?gN(t.mode):fN(t.mode),a=hN(i),d=r?["-m",r]:[],c=FJ(t.additionalArgs??[]),u=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return t.resumeSessionId?{args:["exec","resume",...u,...s,...a,...d,...c,t.resumeSessionId,"-"],stdinMessage:e}:{args:["exec",...u,...s,...a,...d,...c],stdinMessage:e}},extractText(e){let t=HJ(e);if(t)throw new z(t,UJ);let n=NN(e);if(n)return n;let r=e.trim();return wo(r,"codex")?"":r},extractPartialText(e){return NN(e)},parseResultMeta(e){let t=ys(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;try{JSON.parse(e),i=[e];}catch{i=BJ(e),i.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[s,a]of i.entries()){let d;try{d=JSON.parse(a);}catch{continue}if(!Ia(d))continue;let c=d.type;if(!c)continue;let l=Lr(d,r);if(DN(d)){let p=LN(d);o.push({timestamp:l,type:"error",content:p,errorMessage:p});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||Lm(d))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let u=d.item;if(u){if(c==="item.started"){o.push(...jJ(l,u,xN(u,c,n,s)));continue}if(c==="item.completed"){let p=$J(l,u,xN(u,c,n,s));p&&o.push(p);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?MJ.has(r):!1}catch{return false}}};});function GJ(e){return e?WJ[e]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Gm(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function HN(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 Vl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function zJ(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);Vl(s)?t.push(s):n=!0;continue}catch{}let i=HN(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);Vl(a)?t.push(a):n=!0;}catch{n=true;}}return {events:t,malformed:n}}function qd(e){if(typeof e!="string")return;let t=e.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(t)return t.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,FN).trim()}function jN(e){let t=Vl(e.error)?e.error:void 0,n=t&&Vl(t.data)?t.data:void 0,r=qd(t?.name),o=qd(n?.message)??qd(t?.message)??qd(e.message)??qd(e.errorMessage)??qd(e.error),i=qd(e.ref),s=r&&o&&r!==o?`${r}: ${o}`:r??o??BN;return (i?`${s} (ref: ${i})`:s).slice(0,FN)}function MN(e){let t=zJ(e),n=[],r=null,o=0,i=[],s,a=false;for(let d of t.events){let c=typeof d.type=="string"?d.type:void 0;if(c){if(c==="text"){let l=Vl(d.part)?d.part:void 0,u=typeof l?.text=="string"?l.text:void 0;u?.trim()&&n.push(u.trim());continue}if(c==="result"){typeof d.result=="string"&&(r=d.result);continue}if(c==="tool_use"){o++;continue}if(c==="error"){i.push(jN(d));continue}if(c==="step_finish"){a=true;let l=Vl(d.part)?d.part:void 0;s=typeof l?.reason=="string"?l.reason:void 0;}}}return {...t,texts:n,resultText:r,toolUseCount:o,errorMessages:i,terminalReason:s,hasTerminal:a}}function $N(e){return (e??"unknown").trim().toLowerCase().replace(/_/g,"-")}function zm(){return new z("OpenCode returned no assistant output.",$l,{code:"EMPTY_OUTPUT",kind:"transient"})}function JJ(){return new z("OpenCode emitted malformed JSON output.",$l,{code:"PROVIDER_CRASHED",kind:"transient"})}function UN(e,t){switch($N(e)){case "length":return new z("OpenCode stopped because the context window was exceeded.",$l,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new z("OpenCode stopped because the content filter blocked the response.",$l,{code:"UNKNOWN",kind:"permanent"});case "error":return new z(t?`OpenCode error: ${t}`:`${BN} while generating a response.`,$l,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var qJ,$l,BN,FN,WJ,Jm,QT=B(()=>{m();_s();Bd();Bl();Aa();qJ=new Set(["step_start","step_finish"]),$l="cli/opencode",BN="OpenCode provider error",FN=240,WJ={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};Jm={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(e,t,n){let r=t.additionalArgs,o=r!==void 0?[...r]:["run"];Gm(o,"--format")||o.push("--format","json"),t.resumeSessionId&&!o.includes("-s")&&!o.includes("--session")&&o.push("-s",t.resumeSessionId);let{agent:i,autoApprove:s}=GJ(t.mode);Gm(o,"--agent")||i!==void 0&&o.push("--agent",i),s&&!Gm(o,"--auto")&&o.push("--auto"),t.effort!==void 0&&!Gm(o,"--variant")&&o.push("--variant",t.effort),t.model&&o.push("--model",t.model);let a;return !n&&!s&&!t.env?.OPENCODE_PERMISSION&&(a={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:o,stdinMessage:e,env:a}},extractText(e){let t=MN(e),n=t.errorMessages[0];if(n){let s=UN("error",n);if(s)throw s}let r=UN(t.terminalReason??"",void 0);if(r)throw r;let o=t.texts.length>0?t.texts[t.texts.length-1]:void 0;if(o!==void 0){if(!t.hasTerminal)throw zm();return o}if(t.resultText?.trim()){if(!t.hasTerminal)throw zm();return t.resultText}if(t.malformed)throw JJ();if(!t.hasTerminal)throw zm();let i=$N(t.terminalReason);if((i==="stop"||i==="tool-calls")&&t.toolUseCount>0)return "";throw zm()},interpretExit(e,t,n=""){if(e===0)return null;let o=MN(n).errorMessages[0];return o?new z(`OpenCode error: ${o}`,$l,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(e){let t=ys(e);return t?{usage:{inputTokens:t.inputTokens,outputTokens:t.outputTokens,cachedInputTokens:t.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(e,t){let n=t??new Date().toISOString(),r=[],o;try{JSON.parse(e),o=[e];}catch{o=HN(e),o.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let i of o){let s;try{s=JSON.parse(i);}catch{continue}let a=Lr(s,n),d=s.type;if(d){if(d==="text"){let l=s.part?.text;l&&r.push({timestamp:a,type:"text",content:l});continue}if(d==="tool_use"){let c=s.part;if(!c)continue;let l=String(c.tool||""),u=String(c.callID||""),p=c.state,f=String(p?.status||""),g=p?.input,y=ko(g);if(r.push({timestamp:a,type:"tool_use",toolName:l,toolUseId:u,toolInput:y}),f==="completed"&&p?.output!==void 0){let _=p.output,A=typeof _=="string"?_:JSON.stringify(_);r.push({timestamp:a,type:"tool_result",toolUseId:u,resultPreview:A,isError:false});}else f==="error"&&r.push({timestamp:a,type:"tool_result",toolUseId:u,resultPreview:String(p?.error||"tool error"),isError:true});continue}if(d==="error"){let c=jN(s);r.push({timestamp:a,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(e){let t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return false;try{let r=JSON.parse(t).type;return r?qJ.has(r):!1}catch{return false}}};});function VN(e,t){if(e===void 0||e==="")return t;let n=parseInt(e,10);return Number.isNaN(n)?t:n}function ZT(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 qN(e=process.env){return {queryMs:VN(e.CREWX_TIMEOUT_QUERY,288e5),executeMs:VN(e.CREWX_TIMEOUT_EXECUTE,288e5),idleMs:ZT(e)??6e5}}var uf=B(()=>{m();});function Km(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function QJ(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 ZJ(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(!XJ.has(i)){t.push(r);continue}r===i&&n+1<e.length&&!e[n+1].startsWith("-")&&(n+=1);}return t}function Ro(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function eK(e,t){if(!(e?KJ.has(e)||$o(ew).some(i=>i.id===e):false)||!e)return t;let r=qo(ew,e),o=wl(ew)[e]?.defaultEffort;if(r.length!==0)return t?r.includes(t)?t:o&&r.includes(o)?o:void 0:o}function As(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>=0?e:void 0}function rw(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 ow(e){return e.step.step_index}function tn(e){if(typeof e!="string")return;let t=e.split(/\r?\n/,1)[0]?.trim();return t&&jd(t)?.slice(0,500).trim()||void 0}function tK(e,t){let n=(e??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&YJ.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|argument)/].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 nK(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 zN(e){let t=Ro(e)?e:void 0,n=t&&Ro(t.error)?t.error:void 0,r=t?tn(t.code)??tn(t.error_code)??tn(n?.code)??tn(n?.error_code):void 0,o=typeof e=="string"?tn(e):t?tn(t.message)??tn(t.error)??tn(t.reason)??tn(n?.message)??tn(n?.error)??tn(n?.reason):void 0,i=tK(r,o),s=t?As(t.retry_after_ms)??As(t.retryAfterMs)??As(n?.retry_after_ms)??As(n?.retryAfterMs):void 0;return {code:i,kind:nK(i),message:o??"Antigravity reported a terminal error.",...s===void 0?{}:{retryAfterMs:s}}}function Ym(e){let t=zN(e);return new z(t.message,"cli/antigravity",{code:t.code,kind:t.kind,...t.retryAfterMs===void 0?{}:{retryAfterMs:t.retryAfterMs}})}function iw(e){return new z(e,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function rK(e){let t=new TextEncoder().encode(e).byteLength;if(!(t<=nw))throw new z(`Input is too large: final provider initial input is ${t} UTF-8 bytes; budget is ${nw} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function tw(){return new z("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 Qm(e){if(e.kind==="result"||e.kind==="legacy_result")return e.result}function Zm(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 oK(e){let t=Zm(e);if(!t||t.event.kind==="agy_error"||t.index!==e.length-1||Qm(t.event)?.status!=="SUCCESS"||Xm(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=rw(o),s=ow(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"||!Ro(o.usage)||As(o.usage.input_tokens)===void 0||As(o.usage.output_tokens)===void 0)return false;return true}function iK(e,t){for(let n=t-1;n>=0;n-=1){let r=e[n];if(r?.kind==="agy_error")return r.error}}function sK(e,t){return Ro(e)&&Ro(t)?{...t,...e}:Ro(e)&&typeof t=="string"?{...e,message:t}:typeof e=="string"&&Ro(t)?{...t,message:e}:e??t}function aK(e){let t=Array.isArray(e.denied_actions)?e.denied_actions:[],n=[];for(let i of t){let s=Ro(i)?i:void 0,a=typeof i=="string"?tn(i):tn(s?.display_name)??tn(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 z(`Permission denied: Antigravity blocked ${t.length} requested action${t.length===1?"":"s"}${o}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Xm(e){let t=Zm(e);if(!t)return;if(t.event.kind==="agy_error")return Ym(t.event.error);let n=Qm(t.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return aK(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return iw("Antigravity returned a result with an unsupported status.");let r=n.error,o=sK(r==null||r===""?n:r,iK(e,t.index));return Ym(o)}function JN(e){if(typeof e=="string")return e;if(e!=null)try{return JSON.stringify(e)}catch{return}}function dK(e){return `agy:${String(e.conversation_id)}:${String(e.step_index)}`}function cK(e,t){let n=typeof t?.name=="string"?t.name:e.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function KN(e){let t=JN(e);if(t)return t.length<=2e3?t:`${t.slice(0,1999)}\u2026`}function lK(e){let t=Ro(e)?e:void 0,n=t&&Ro(t.error)?t.error:void 0,r=typeof e=="string"?e.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,o=(tn(t?.type)??tn(t?.code)??tn(t?.error_type)??tn(n?.type)??tn(n?.code)??tn(n?.error_type)??tn(r)??"TOOL_ERROR").slice(0,60),i=zN(e).message.slice(0,250);return KN({type:o,message:i})??"Antigravity reported a tool error."}function WN(e,t){return e?e.state.has(t)?true:(e.state.set(t,true),false):false}function GN(e,t){return {timestamp:e,type:"error",content:t.message,errorMessage:t.message,isError:true}}var ew,KJ,XJ,nw,YJ,sw,aw=B(()=>{m();_s();uf();df();ua();Jr();Fl();Mm();ew="antigravity",KJ=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),XJ=new Set(["--conversation","--resume","--continue"]),nw=18e4,YJ=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"]);sw={command:"agy",maxInitialInputBytes:nw,meta:{displayName:"Antigravity",models:kT(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(e){let t=Dl(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){rK(e);let{model:r,effort:o}=Ni(t.model),i=El(r),s=i.model,a=t.effort??o??i.effort,d=eK(s,a),c=t.additionalArgs??[],l=ZJ(QJ(c,new Set(["--input-format","--output-format"]))),u=s&&!Km(c,"--model")?["--model",s]:[],p=Km(c,"--effort")?[]:wN(d),f=Km(c,"--mode")||Km(c,"--dangerously-skip-permissions")?[]:TN(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}})}
21
+ `),a=typeof t.error=="string"?t.error:Ia(t.error)&&typeof t.error.message=="string"?t.error.message:"";return {timestamp:e,type:"tool_result",resultPreview:s||a,isError:t.status==="failed"||t.status==="error"||t.is_error===true||t.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let o=String(t.name||t.tool_name||""),i=t.input,s=ko(i);return o==="Bash"&&Go(s)?zo(e,s):{timestamp:e,type:"tool_use",toolName:o,toolInput:s}}if(r==="tool_result"){let o=!!t.is_error,i=String(t.output||t.content||"");return {timestamp:e,type:"tool_result",...Qr(i,o)}}if(r==="web_search"){let o=t.action,i;if(o?.type==="search"){let s=o.queries;i=String(o.query||"")||(s?.length?s.join(", "):"")||String(t.query||"");}else i=t.query?"open: "+String(t.query):"";return !i&&!(Ia(o)&&o.type==="other"&&t.query==="")?null:{timestamp:e,type:"tool_use",toolName:"WebSearch",toolInput:i}}if(r==="file_change"){let o=t.changes;if(!Array.isArray(o)||o.length===0)return null;let i=o.map(a=>String(a.path||"")).filter(Boolean);if(i.length===0)return null;let s=i.length===1?i[0]:`${i.slice(0,2).join(", ")}${i.length>2?` (+${i.length-2})`:""}`;return {timestamp:e,type:"tool_use",toolName:"Edit",toolInput:s}}return null}function VJ(e,t){let n=t.type;if(n==="text")return {timestamp:e,type:"text",content:String(t.text||"")};if(n==="tool_use"){let r=String(t.name||""),o=t.input,i=ko(o);return r==="Bash"&&Go(i)?zo(e,i):{timestamp:e,type:"tool_use",toolName:r,toolInput:i}}return null}var MJ,UJ,Wm,YT=B(()=>{m();_s();$d();Bd();Ul();Bl();VT();_a();Fl();Jr();Aa();MJ=new Set(["turn.started","turn.completed","item.updated"]),UJ="cli/codex";Wm={command:"codex",meta:{displayName:"Codex",models:TT(),capabilities:{resume:true}},buildArgs(e,t,n){let{model:r,effort:o}=Ni(t.model),i=t.effort??o,s=t.resumeSessionId?gN(t.mode):fN(t.mode),a=hN(i),d=r?["-m",r]:[],c=FJ(t.additionalArgs??[]),u=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return t.resumeSessionId?{args:["exec","resume",...u,...s,...a,...d,...c,t.resumeSessionId,"-"],stdinMessage:e}:{args:["exec",...u,...s,...a,...d,...c],stdinMessage:e}},extractText(e){let t=HJ(e);if(t)throw new z(t,UJ);let n=NN(e);if(n)return n;let r=e.trim();return wo(r,"codex")?"":r},extractPartialText(e){return NN(e)},parseResultMeta(e){let t=ys(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;try{JSON.parse(e),i=[e];}catch{i=BJ(e),i.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[s,a]of i.entries()){let d;try{d=JSON.parse(a);}catch{continue}if(!Ia(d))continue;let c=d.type;if(!c)continue;let l=Lr(d,r);if(DN(d)){let p=LN(d);o.push({timestamp:l,type:"error",content:p,errorMessage:p});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||Lm(d))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let u=d.item;if(u){if(c==="item.started"){o.push(...jJ(l,u,xN(u,c,n,s)));continue}if(c==="item.completed"){let p=$J(l,u,xN(u,c,n,s));p&&o.push(p);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?MJ.has(r):!1}catch{return false}}};});function GJ(e){return e?WJ[e]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Gm(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function HN(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 Vl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function zJ(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);Vl(s)?t.push(s):n=!0;continue}catch{}let i=HN(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);Vl(a)?t.push(a):n=!0;}catch{n=true;}}return {events:t,malformed:n}}function qd(e){if(typeof e!="string")return;let t=e.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(t)return t.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,FN).trim()}function jN(e){let t=Vl(e.error)?e.error:void 0,n=t&&Vl(t.data)?t.data:void 0,r=qd(t?.name),o=qd(n?.message)??qd(t?.message)??qd(e.message)??qd(e.errorMessage)??qd(e.error),i=qd(e.ref),s=r&&o&&r!==o?`${r}: ${o}`:r??o??BN;return (i?`${s} (ref: ${i})`:s).slice(0,FN)}function MN(e){let t=zJ(e),n=[],r=null,o=0,i=[],s,a=false;for(let d of t.events){let c=typeof d.type=="string"?d.type:void 0;if(c){if(c==="text"){let l=Vl(d.part)?d.part:void 0,u=typeof l?.text=="string"?l.text:void 0;u?.trim()&&n.push(u.trim());continue}if(c==="result"){typeof d.result=="string"&&(r=d.result);continue}if(c==="tool_use"){o++;continue}if(c==="error"){i.push(jN(d));continue}if(c==="step_finish"){a=true;let l=Vl(d.part)?d.part:void 0;s=typeof l?.reason=="string"?l.reason:void 0;}}}return {...t,texts:n,resultText:r,toolUseCount:o,errorMessages:i,terminalReason:s,hasTerminal:a}}function $N(e){return (e??"unknown").trim().toLowerCase().replace(/_/g,"-")}function zm(){return new z("OpenCode returned no assistant output.",$l,{code:"EMPTY_OUTPUT",kind:"transient"})}function JJ(){return new z("OpenCode emitted malformed JSON output.",$l,{code:"PROVIDER_CRASHED",kind:"transient"})}function UN(e,t){switch($N(e)){case "length":return new z("OpenCode stopped because the context window was exceeded.",$l,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new z("OpenCode stopped because the content filter blocked the response.",$l,{code:"UNKNOWN",kind:"permanent"});case "error":return new z(t?`OpenCode error: ${t}`:`${BN} while generating a response.`,$l,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var qJ,$l,BN,FN,WJ,Jm,QT=B(()=>{m();_s();Bd();Bl();Aa();qJ=new Set(["step_start","step_finish"]),$l="cli/opencode",BN="OpenCode provider error",FN=240,WJ={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};Jm={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(e,t,n){let r=t.additionalArgs,o=r!==void 0?[...r]:["run"];Gm(o,"--format")||o.push("--format","json"),t.resumeSessionId&&!o.includes("-s")&&!o.includes("--session")&&o.push("-s",t.resumeSessionId);let{agent:i,autoApprove:s}=GJ(t.mode);Gm(o,"--agent")||i!==void 0&&o.push("--agent",i),s&&!Gm(o,"--auto")&&o.push("--auto"),t.effort!==void 0&&!Gm(o,"--variant")&&o.push("--variant",t.effort),t.model&&o.push("--model",t.model);let a;return !n&&!s&&!t.env?.OPENCODE_PERMISSION&&(a={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:o,stdinMessage:e,env:a}},extractText(e){let t=MN(e),n=t.errorMessages[0];if(n){let s=UN("error",n);if(s)throw s}let r=UN(t.terminalReason??"",void 0);if(r)throw r;let o=t.texts.length>0?t.texts[t.texts.length-1]:void 0;if(o!==void 0){if(!t.hasTerminal)throw zm();return o}if(t.resultText?.trim()){if(!t.hasTerminal)throw zm();return t.resultText}if(t.malformed)throw JJ();if(!t.hasTerminal)throw zm();let i=$N(t.terminalReason);if((i==="stop"||i==="tool-calls")&&t.toolUseCount>0)return "";throw zm()},interpretExit(e,t,n=""){if(e===0)return null;let o=MN(n).errorMessages[0];return o?new z(`OpenCode error: ${o}`,$l,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(e){let t=ys(e);return t?{usage:{inputTokens:t.inputTokens,outputTokens:t.outputTokens,cachedInputTokens:t.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(e,t){let n=t??new Date().toISOString(),r=[],o;try{JSON.parse(e),o=[e];}catch{o=HN(e),o.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let i of o){let s;try{s=JSON.parse(i);}catch{continue}let a=Lr(s,n),d=s.type;if(d){if(d==="text"){let l=s.part?.text;l&&r.push({timestamp:a,type:"text",content:l});continue}if(d==="tool_use"){let c=s.part;if(!c)continue;let l=String(c.tool||""),u=String(c.callID||""),p=c.state,f=String(p?.status||""),g=p?.input,y=ko(g);if(r.push({timestamp:a,type:"tool_use",toolName:l,toolUseId:u,toolInput:y}),f==="completed"&&p?.output!==void 0){let _=p.output,A=typeof _=="string"?_:JSON.stringify(_);r.push({timestamp:a,type:"tool_result",toolUseId:u,resultPreview:A,isError:false});}else f==="error"&&r.push({timestamp:a,type:"tool_result",toolUseId:u,resultPreview:String(p?.error||"tool error"),isError:true});continue}if(d==="error"){let c=jN(s);r.push({timestamp:a,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(e){let t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return false;try{let r=JSON.parse(t).type;return r?qJ.has(r):!1}catch{return false}}};});function VN(e,t){if(e===void 0||e==="")return t;let n=parseInt(e,10);return Number.isNaN(n)?t:n}function ZT(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 qN(e=process.env){return {queryMs:VN(e.CREWX_TIMEOUT_QUERY,288e5),executeMs:VN(e.CREWX_TIMEOUT_EXECUTE,288e5),idleMs:ZT(e)??6e5}}var uf=B(()=>{m();});function Km(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function QJ(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 ZJ(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(!XJ.has(i)){t.push(r);continue}r===i&&n+1<e.length&&!e[n+1].startsWith("-")&&(n+=1);}return t}function Ro(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function eK(e,t){if(!(e?KJ.has(e)||$o(ew).some(i=>i.id===e):false)||!e)return t;let r=qo(ew,e),o=wl(ew)[e]?.defaultEffort;if(r.length!==0)return t?r.includes(t)?t:o&&r.includes(o)?o:void 0:o}function As(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>=0?e:void 0}function rw(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 ow(e){return e.step.step_index}function tn(e){if(typeof e!="string")return;let t=e.split(/\r?\n/,1)[0]?.trim();return t&&jd(t)?.slice(0,500).trim()||void 0}function tK(e,t){let n=(e??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&YJ.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 nK(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 zN(e){let t=Ro(e)?e:void 0,n=t&&Ro(t.error)?t.error:void 0,r=t?tn(t.code)??tn(t.error_code)??tn(n?.code)??tn(n?.error_code):void 0,o=typeof e=="string"?tn(e):t?tn(t.message)??tn(t.error)??tn(t.reason)??tn(n?.message)??tn(n?.error)??tn(n?.reason):void 0,i=tK(r,o),s=t?As(t.retry_after_ms)??As(t.retryAfterMs)??As(n?.retry_after_ms)??As(n?.retryAfterMs):void 0;return {code:i,kind:nK(i),message:o??"Antigravity reported a terminal error.",...s===void 0?{}:{retryAfterMs:s}}}function Ym(e){let t=zN(e);return new z(t.message,"cli/antigravity",{code:t.code,kind:t.kind,...t.retryAfterMs===void 0?{}:{retryAfterMs:t.retryAfterMs}})}function iw(e){return new z(e,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function rK(e){let t=new TextEncoder().encode(e).byteLength;if(!(t<=nw))throw new z(`Input is too large: final provider initial input is ${t} UTF-8 bytes; budget is ${nw} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function tw(){return new z("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 Qm(e){if(e.kind==="result"||e.kind==="legacy_result")return e.result}function Zm(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 oK(e){let t=Zm(e);if(!t||t.event.kind==="agy_error"||t.index!==e.length-1||Qm(t.event)?.status!=="SUCCESS"||Xm(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=rw(o),s=ow(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"||!Ro(o.usage)||As(o.usage.input_tokens)===void 0||As(o.usage.output_tokens)===void 0)return false;return true}function iK(e,t){for(let n=t-1;n>=0;n-=1){let r=e[n];if(r?.kind==="agy_error")return r.error}}function sK(e,t){return Ro(e)&&Ro(t)?{...t,...e}:Ro(e)&&typeof t=="string"?{...e,message:t}:typeof e=="string"&&Ro(t)?{...t,message:e}:e??t}function aK(e){let t=Array.isArray(e.denied_actions)?e.denied_actions:[],n=[];for(let i of t){let s=Ro(i)?i:void 0,a=typeof i=="string"?tn(i):tn(s?.display_name)??tn(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 z(`Permission denied: Antigravity blocked ${t.length} requested action${t.length===1?"":"s"}${o}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Xm(e){let t=Zm(e);if(!t)return;if(t.event.kind==="agy_error")return Ym(t.event.error);let n=Qm(t.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return aK(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return iw("Antigravity returned a result with an unsupported status.");let r=n.error,o=sK(r==null||r===""?n:r,iK(e,t.index));return Ym(o)}function JN(e){if(typeof e=="string")return e;if(e!=null)try{return JSON.stringify(e)}catch{return}}function dK(e){return `agy:${String(e.conversation_id)}:${String(e.step_index)}`}function cK(e,t){let n=typeof t?.name=="string"?t.name:e.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function KN(e){let t=JN(e);if(t)return t.length<=2e3?t:`${t.slice(0,1999)}\u2026`}function lK(e){let t=Ro(e)?e:void 0,n=t&&Ro(t.error)?t.error:void 0,r=typeof e=="string"?e.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,o=(tn(t?.type)??tn(t?.code)??tn(t?.error_type)??tn(n?.type)??tn(n?.code)??tn(n?.error_type)??tn(r)??"TOOL_ERROR").slice(0,60),i=zN(e).message.slice(0,250);return KN({type:o,message:i})??"Antigravity reported a tool error."}function WN(e,t){return e?e.state.has(t)?true:(e.state.set(t,true),false):false}function GN(e,t){return {timestamp:e,type:"error",content:t.message,errorMessage:t.message,isError:true}}var ew,KJ,XJ,nw,YJ,sw,aw=B(()=>{m();_s();uf();df();ua();Jr();Fl();Mm();ew="antigravity",KJ=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),XJ=new Set(["--conversation","--resume","--continue"]),nw=18e4,YJ=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"]);sw={command:"agy",maxInitialInputBytes:nw,meta:{displayName:"Antigravity",models:kT(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(e){let t=Dl(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){rK(e);let{model:r,effort:o}=Ni(t.model),i=El(r),s=i.model,a=t.effort??o??i.effort,d=eK(s,a),c=t.additionalArgs??[],l=ZJ(QJ(c,new Set(["--input-format","--output-format"]))),u=s&&!Km(c,"--model")?["--model",s]:[],p=Km(c,"--effort")?[]:wN(d),f=Km(c,"--mode")||Km(c,"--dangerously-skip-permissions")?[]:TN(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}})}
22
22
  `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(e){let t=Ll(e),n=Zm(t)?.event,r=Xm(t);if(r)throw r;let o=n?Qm(n):void 0;if(o){if(o.status!=="SUCCESS")throw iw("Antigravity returned a result with an unsupported status.");if(typeof o.response!="string")throw iw("Antigravity returned a successful result without a response string.");if(!o.response.trim())throw tw();return o.response}if(t.length>0)throw tw();let i=e.trim();if(!i)throw tw();return i},extractPartialText(e){let t=Ll(e),n=Zm(t)?.event;if(!n||n.kind==="agy_error")return;let r=Qm(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(e,t,n){let r=Ll(n??""),o=Xm(r);return o||(e!==0&&t.trim()?Ym(t):null)},parseResultMeta(e){let t=Ll(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"||!Ro(d.step.usage))continue;let c=rw(d),l=ow(d);if(!c||!Number.isSafeInteger(l))continue;let u=JSON.stringify([c,l]);if(s.has(u))continue;let p=d.step.usage,f=As(p.input_tokens),g=As(p.output_tokens);f===void 0||g===void 0||(s.add(u),n+=f,r+=g,o+=As(p.cache_read_tokens)??0,i+=1);}return {usage:i===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:o,costUsd:0,complete:oK(t)},model:null}},parseEvent(e,t,n){let r=Dl(e);if(!r)return [];let o=t??new Date().toISOString();if(r.kind==="agy_error")return [GN(o,Ym(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let f=Xm([r]);return f?[GN(o,f)]:[]}if(r.kind!=="step_update")return [];let{step:i}=r,s=rw(r)??"unknown",a=ow(r),d=`${s}:${a}`;if((i.state==="DONE"||i.state==="ERROR")&&WN(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=Ro(i.tool_info)?i.tool_info:void 0,l=cK(i,c);if(!l)return [];let u=dK(i);if(i.state==="ACTIVE"){if(WN(n,`antigravity:active:${d}`))return [];let f=JN(c?.parameters);return [{timestamp:o,type:"tool_use",toolName:l,toolUseId:u,...f===void 0?{}:{toolInput:f}}]}let p=i.state==="ERROR"?lK(c?.error):KN(c?.output);return [{timestamp:o,type:"tool_result",toolName:l,toolUseId:u,...p===void 0?{}:{resultPreview:p},...i.state==="ERROR"?{isError:true}:{}}]}};});var XN,YN=B(()=>{m();Ul();Bl();_a();Aa();XN={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=Lr(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=ko(a);return /^bash$/i.test(i)&&Go(d)?[zo(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,...Qr(s,a)}]}return []}};});function ql(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Wl(e){return ql(e)?e:void 0}function Mr(e){return typeof e=="string"?e:void 0}function zd(e){let t=typeof e=="number"?e:Number(e??0);return Number.isFinite(t)?t:0}function hK(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 pf(e){let t=e.trim();if(!t)return [];try{let n=JSON.parse(t);return ql(n)?[n]:[]}catch{return hK(t).flatMap(n=>{try{let r=JSON.parse(n);return ql(r)?[r]:[]}catch{return []}})}}function nx(e){let t=JSON.stringify(e);return t===void 0?String(e):t}function Gd(e){if(typeof e=="string")return e;if(Array.isArray(e)){let t=e.map(Gd).filter(n=>n!==void 0);return t.length>0?t.join(`
23
23
  `):void 0}if(ql(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=Gd(e[t]);if(n!==void 0)return n}}}function mK(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=Wl(i);if(!s)return n(Gd(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=Wl(s.Result);a=n(s.output)??n(l?.output)??n(Gd(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(`
24
24
  `)||a.endsWith("\r")?"":`
@@ -49,7 +49,7 @@ ${r.join(`
49
49
  `);for(let r of e)if(r.trim())try{let s=JSON.parse(r);if(s.type==="result"){let o=s.usage,i=o?{inputTokens:Number(o.input_tokens??0)+Number(o.cache_read_input_tokens??0),outputTokens:Number(o.output_tokens??0),cachedInputTokens:Number(o.cache_read_input_tokens??0),costUsd:Number(s.total_cost_usd??0)}:null,u=s.modelUsage,d=u?Object.keys(u)[0]??null:null;return {usage:i,model:d}}}catch{}let n=zd(t);return n?{usage:{inputTokens:n.inputTokens,outputTokens:0,cachedInputTokens:n.cachedInputTokens,costUsd:0},model:n.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 [];let s=ze(n,e??new Date().toISOString()),o=jf(n);if(o)return [{timestamp:s,type:"error",content:o,errorMessage:o}];let i=n.output_file,u=n.summary;if(r==="system"&&n.subtype==="task_notification"&&n.status==="completed"&&typeof i=="string"&&i.trim().length>0&&typeof u=="string"&&u.trim().length>0)return [{timestamp:s,type:"text",content:u}];if(r!=="assistant"&&r!=="user")return [];let c=n.message?.content;if(!Array.isArray(c))return [];let l=[];for(let p of c){let f=Vf(s,p);f&&l.push(f);}return l},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?qf.has(r):!1}catch{return false}}};Qd=200;});function tu(t){let e=t.split(`
50
50
  `).filter(s=>s.trim()),n=[],r=null;for(let s of e)try{let o=JSON.parse(s);if(o.type==="assistant.message"&&typeof o.data?.content=="string"){let i=o.data.content;i.trim()&&n.push(i.trim());}o.type==="result"&&typeof o.result=="string"&&(r=o.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}var Xf,mo,ko=v(()=>{_();un();Vn();cn();pn();ln();jt();jr();zt();Xf=new Set(["interactive","plan","autopilot"]);mo={command:"copilot",meta:{displayName:"Copilot",models:xd()},buildArgs(t,e,n){let r=e.additionalArgs?[...e.additionalArgs]:[];return e.model&&r.push("--model",e.model),e.mode&&Xf.has(e.mode)&&r.push("--mode",e.mode),e.effort&&(Gr.copilot??[]).includes(e.effort)&&r.push("--effort",e.effort),{args:r,stdinMessage:t}},extractText(t){let e=tu(t);if(e)return e;let n=t.trim();return at(n,"copilot")?"":n},extractPartialText(t){return tu(t)},parseResultMeta(t){let e=fn(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 s=n.data;if(!s)return [];let o=ze(n,e??new Date().toISOString()),i=s.toolCallId;if(r==="tool.execution_start"){let u=String(s.toolName||""),d=s.arguments,c=je(d);return (u==="bash"||u==="Bash")&&dt(c)?[ut(o,c,i)]:[{timestamp:o,type:"tool_use",toolName:u,toolInput:c,...i&&{toolUseId:i}}]}if(r==="tool.execution_complete"){let u=s.error;if(u)return [{timestamp:o,type:"tool_result",...i&&{toolUseId:i},...Ge(String(u.message||""),true)}];let d=s.result,c=String(d?.content||"");return [{timestamp:o,type:"tool_result",...i&&{toolUseId:i},...Ge(c,false)}]}if(r==="assistant.message"){let u=String(s.content||"");return u?[{timestamp:o,type:"text",content:u}]:[]}return []}};});function Zf(t){let e=[],n=0,r=false,s=false,o=0;for(let u=0;u<t.length;u++){let d=t[u];if(s){s=false;continue}if(d==="\\"&&r){s=true;continue}if(d==='"'){r=!r;continue}if(!r){if(d==="{")n++;else if(d==="}"&&(n--,n===0)){let c=t.slice(o,u+1).trim();c&&e.push(c),o=u+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function eg(t){return t[0]==="exec"?t.slice(1):t}function nu(t){let e=t.split(`
51
51
  `).map(s=>s.trim()).filter(Boolean),n=[],r=null;for(let s of e)try{let o=JSON.parse(s);if(o.type==="item.completed"&&(o.item?.type==="message"||o.item?.type==="agent_message")&&typeof o.item?.text=="string"){let i=o.item.text;i.trim()&&n.push(i.trim());}o.type==="result"&&typeof o.result=="string"&&(r=o.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}function Ot(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function su(t){return t.type==="turn.failed"?true:t.type!=="error"?false:typeof t.message=="string"||typeof t.errorMessage=="string"||typeof t.error=="string"||Ot(t.error)}function ou(t){let e=Ot(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 tg(t){for(let e of t.split(/\r?\n/)){if(!e.trim())continue;let n;try{n=JSON.parse(e);}catch{continue}if(Ot(n)&&su(n))return ou(n)}}function ru(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 s=n.state.get("codex.pending");s||(s=new Map,n.state.set("codex.pending",s));let o=JSON.stringify([t.type,t.id]);if(e==="item.started"){let d=`codex:${JSON.stringify(t.id)}#${n.rowIndex}:${r}`,c=s.get(o)??[];return c.push(d),s.set(o,c),d}let i=s.get(o),u=i?.pop();return i?.length||s.delete(o),u}function ng(t,e,n){let r=e.type;if(r==="command_execution"){let s=String(e.command||"");return dt(s)?[ut(t,s,n)]:[{timestamp:t,type:"tool_use",toolName:"Bash",toolInput:s,...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:je(e.arguments),...n?{toolUseId:n}:{}}]:[]}function rg(t,e,n){let r=e.type;if(r==="message"||r==="text"){let s=e.content;if(Array.isArray(s))for(let o of s){let i=sg(t,o);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 s=typeof e.text=="string"?e.text.trim():"";return s?{timestamp:t,type:"thinking",content:s}:null}if(r==="command_execution"){let s=String(e.aggregated_output||e.output||""),o=!!e.is_error;return {timestamp:t,type:"tool_result",...Ge(s,o),...n?{toolUseId:n}:{}}}if(r==="mcp_tool_call"){let s=Ot(e.result)?e.result:void 0,i=(Array.isArray(s?.content)?s.content:[]).filter(d=>Ot(d)&&d.type==="text"&&typeof d.text=="string").map(d=>d.text).join(`
52
- `),u=typeof e.error=="string"?e.error:Ot(e.error)&&typeof e.error.message=="string"?e.error.message:"";return {timestamp:t,type:"tool_result",resultPreview:i||u,isError:e.status==="failed"||e.status==="error"||e.is_error===true||e.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let s=String(e.name||e.tool_name||""),o=e.input,i=je(o);return s==="Bash"&&dt(i)?ut(t,i):{timestamp:t,type:"tool_use",toolName:s,toolInput:i}}if(r==="tool_result"){let s=!!e.is_error,o=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...Ge(o,s)}}if(r==="web_search"){let s=e.action,o;if(s?.type==="search"){let i=s.queries;o=String(s.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else o=e.query?"open: "+String(e.query):"";return !o&&!(Ot(s)&&s.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:o}}if(r==="file_change"){let s=e.changes;if(!Array.isArray(s)||s.length===0)return null;let o=s.map(u=>String(u.path||"")).filter(Boolean);if(o.length===0)return null;let i=o.length===1?o[0]:`${o.slice(0,2).join(", ")}${o.length>2?` (+${o.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function sg(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||""),s=e.input,o=je(s);return r==="Bash"&&dt(o)?ut(t,o):{timestamp:t,type:"tool_use",toolName:r,toolInput:o}}return null}var Yf,Qf,To,yo=v(()=>{_();Wt();un();Vn();cn();pn();uo();ln();Jn();jt();zt();Yf=new Set(["turn.started","turn.completed","item.updated"]),Qf="cli/codex";To={command:"codex",meta:{displayName:"Codex",models:vd(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:s}=At(e.model),o=e.effort??s,i=e.resumeSessionId?Md(e.mode):Ld(e.mode),u=$d(o),d=r?["-m",r]:[],c=eg(e.additionalArgs??[]),p=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...p,...i,...u,...d,...c,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...p,...i,...u,...d,...c],stdinMessage:t}},extractText(t){let e=tg(t);if(e)throw new V(e,Qf);let n=nu(t);if(n)return n;let r=t.trim();return at(r,"codex")?"":r},extractPartialText(t){return nu(t)},parseResultMeta(t){let e=fn(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(),s=[],o;try{JSON.parse(t),o=[t];}catch{o=Zf(t),o.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,u]of o.entries()){let d;try{d=JSON.parse(u);}catch{continue}if(!Ot(d))continue;let c=d.type;if(!c)continue;let l=ze(d,r);if(su(d)){let f=ou(d);s.push({timestamp:l,type:"error",content:f,errorMessage:f});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||ao(d))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let p=d.item;if(p){if(c==="item.started"){s.push(...ng(l,p,ru(p,c,n,i)));continue}if(c==="item.completed"){let f=rg(l,p,ru(p,c,n,i));f&&s.push(f);continue}}}return s},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Yf.has(r):!1}catch{return false}}};});function ag(t){return t?ig[t]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Xr(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function cu(t){let e=[],n=0,r=false,s=false,o=0;for(let u=0;u<t.length;u++){let d=t[u];if(s){s=false;continue}if(d==="\\"&&r){s=true;continue}if(d==='"'){r=!r;continue}if(!r){if(d==="{")n++;else if(d==="}"&&(n--,n===0)){let c=t.slice(o,u+1).trim();c&&e.push(c),o=u+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function hn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function dg(t){let e=[],n=false;for(let r of t.split(/\r?\n/)){let s=r.trim();if(!s)continue;try{let i=JSON.parse(s);hn(i)?e.push(i):n=!0;continue}catch{}let o=cu(s);o.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let i of o)try{let u=JSON.parse(i);hn(u)?e.push(u):n=!0;}catch{n=true;}}return {events:e,malformed:n}}function Kt(t){if(typeof t!="string")return;let e=t.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(e)return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,uu).trim()}function lu(t){let e=hn(t.error)?t.error:void 0,n=e&&hn(e.data)?e.data:void 0,r=Kt(e?.name),s=Kt(n?.message)??Kt(e?.message)??Kt(t.message)??Kt(t.errorMessage)??Kt(t.error),o=Kt(t.ref),i=r&&s&&r!==s?`${r}: ${s}`:r??s??du;return (o?`${i} (ref: ${o})`:i).slice(0,uu)}function iu(t){let e=dg(t),n=[],r=null,s=0,o=[],i,u=false;for(let d of e.events){let c=typeof d.type=="string"?d.type:void 0;if(c){if(c==="text"){let l=hn(d.part)?d.part:void 0,p=typeof l?.text=="string"?l.text:void 0;p?.trim()&&n.push(p.trim());continue}if(c==="result"){typeof d.result=="string"&&(r=d.result);continue}if(c==="tool_use"){s++;continue}if(c==="error"){o.push(lu(d));continue}if(c==="step_finish"){u=true;let l=hn(d.part)?d.part:void 0;i=typeof l?.reason=="string"?l.reason:void 0;}}}return {...e,texts:n,resultText:r,toolUseCount:s,errorMessages:o,terminalReason:i,hasTerminal:u}}function pu(t){return (t??"unknown").trim().toLowerCase().replace(/_/g,"-")}function Yr(){return new V("OpenCode returned no assistant output.",_n,{code:"EMPTY_OUTPUT",kind:"transient"})}function ug(){return new V("OpenCode emitted malformed JSON output.",_n,{code:"PROVIDER_CRASHED",kind:"transient"})}function au(t,e){switch(pu(t)){case "length":return new V("OpenCode stopped because the context window was exceeded.",_n,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new V("OpenCode stopped because the content filter blocked the response.",_n,{code:"UNKNOWN",kind:"permanent"});case "error":return new V(e?`OpenCode error: ${e}`:`${du} while generating a response.`,_n,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var og,_n,du,uu,ig,wo,Eo=v(()=>{_();Wt();Vn();pn();zt();og=new Set(["step_start","step_finish"]),_n="cli/opencode",du="OpenCode provider error",uu=240,ig={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};wo={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(t,e,n){let r=e.additionalArgs,s=r!==void 0?[...r]:["run"];Xr(s,"--format")||s.push("--format","json"),e.resumeSessionId&&!s.includes("-s")&&!s.includes("--session")&&s.push("-s",e.resumeSessionId);let{agent:o,autoApprove:i}=ag(e.mode);Xr(s,"--agent")||o!==void 0&&s.push("--agent",o),i&&!Xr(s,"--auto")&&s.push("--auto"),e.effort!==void 0&&!Xr(s,"--variant")&&s.push("--variant",e.effort),e.model&&s.push("--model",e.model);let u;return !n&&!i&&!e.env?.OPENCODE_PERMISSION&&(u={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:s,stdinMessage:t,env:u}},extractText(t){let e=iu(t),n=e.errorMessages[0];if(n){let i=au("error",n);if(i)throw i}let r=au(e.terminalReason??"",void 0);if(r)throw r;let s=e.texts.length>0?e.texts[e.texts.length-1]:void 0;if(s!==void 0){if(!e.hasTerminal)throw Yr();return s}if(e.resultText?.trim()){if(!e.hasTerminal)throw Yr();return e.resultText}if(e.malformed)throw ug();if(!e.hasTerminal)throw Yr();let o=pu(e.terminalReason);if((o==="stop"||o==="tool-calls")&&e.toolUseCount>0)return "";throw Yr()},interpretExit(t,e,n=""){if(t===0)return null;let s=iu(n).errorMessages[0];return s?new V(`OpenCode error: ${s}`,_n,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(t){let e=fn(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=e??new Date().toISOString(),r=[],s;try{JSON.parse(t),s=[t];}catch{s=cu(t),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let o of s){let i;try{i=JSON.parse(o);}catch{continue}let u=ze(i,n),d=i.type;if(d){if(d==="text"){let l=i.part?.text;l&&r.push({timestamp:u,type:"text",content:l});continue}if(d==="tool_use"){let c=i.part;if(!c)continue;let l=String(c.tool||""),p=String(c.callID||""),f=c.state,h=String(f?.status||""),m=f?.input,k=je(m);if(r.push({timestamp:u,type:"tool_use",toolName:l,toolUseId:p,toolInput:k}),h==="completed"&&f?.output!==void 0){let E=f.output,x=typeof E=="string"?E:JSON.stringify(E);r.push({timestamp:u,type:"tool_result",toolUseId:p,resultPreview:x,isError:false});}else h==="error"&&r.push({timestamp:u,type:"tool_result",toolUseId:p,resultPreview:String(f?.error||"tool error"),isError:true});continue}if(d==="error"){let c=lu(i);r.push({timestamp:u,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?og.has(r):!1}catch{return false}}};});var fu=v(()=>{_();});function Qr(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function gg(t,e){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r],o=[...e].find(i=>s===i||s.startsWith(`${i}=`));o?s===o&&r+1<t.length&&(r+=1):n.push(s);}return n}function _g(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],s=r.indexOf("="),o=s>0?r.slice(0,s):r;if(!pg.has(o)){e.push(r);continue}r===o&&n+1<t.length&&!t[n+1].startsWith("-")&&(n+=1);}return e}function $e(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function hg(t,e){if(!(t?lg.has(t)||It(Ro).some(o=>o.id===t):false)||!t)return e;let r=Kn(Ro,t),s=Nd(Ro)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:s&&r.includes(s)?s:void 0:s}function ft(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 Oo(t){return t.step.step_index}function ee(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&Br(e)?.slice(0,500).trim()||void 0}function mg(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&fg.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|argument)/].some(o=>o.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 kg(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 hu(t){let e=$e(t)?t:void 0,n=e&&$e(e.error)?e.error:void 0,r=e?ee(e.code)??ee(e.error_code)??ee(n?.code)??ee(n?.error_code):void 0,s=typeof t=="string"?ee(t):e?ee(e.message)??ee(e.error)??ee(e.reason)??ee(n?.message)??ee(n?.error)??ee(n?.reason):void 0,o=mg(r,s),i=e?ft(e.retry_after_ms)??ft(e.retryAfterMs)??ft(n?.retry_after_ms)??ft(n?.retryAfterMs):void 0;return {code:o,kind:kg(o),message:s??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function es(t){let e=hu(t);return new V(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function No(t){return new V(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function Tg(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=Io))throw new V(`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 V("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 ts(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function ns(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 yg(t){let e=ns(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||ts(e.event)?.status!=="SUCCESS"||Zr(t))return false;let r=new Map;for(let s of t){if(s.kind!=="step_update"||s.step.step_type!=="agent_response")continue;let o=Ao(s),i=Oo(s);!o||!Number.isSafeInteger(i)||r.set(JSON.stringify([o,i]),s.step);}if(r.size===0)return false;for(let s of r.values())if(s.state!=="DONE"||!$e(s.usage)||ft(s.usage.input_tokens)===void 0||ft(s.usage.output_tokens)===void 0)return false;return true}function wg(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function Eg(t,e){return $e(t)&&$e(e)?{...e,...t}:$e(t)&&typeof e=="string"?{...t,message:e}:typeof t=="string"&&$e(e)?{...e,message:t}:t??e}function Rg(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let o of e){let i=$e(o)?o:void 0,u=typeof o=="string"?ee(o):ee(i?.display_name)??ee(i?.action);u&&!n.includes(u)&&n.length<5&&n.push(u.slice(0,80));}let r=Math.max(0,e.length-n.length),s=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new V(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${s}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Zr(t){let e=ns(t);if(!e)return;if(e.event.kind==="agy_error")return es(e.event.error);let n=ts(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return Rg(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return No("Antigravity returned a result with an unsupported status.");let r=n.error,s=Eg(r==null||r===""?n:r,wg(t,e.index));return es(s)}function mu(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function Sg(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function Ig(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function ku(t){let e=mu(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function Ag(t){let e=$e(t)?t:void 0,n=e&&$e(e.error)?e.error:void 0,r=typeof t=="string"?t.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,s=(ee(e?.type)??ee(e?.code)??ee(e?.error_type)??ee(n?.type)??ee(n?.code)??ee(n?.error_type)??ee(r)??"TOOL_ERROR").slice(0,60),o=hu(t).message.slice(0,250);return ku({type:s,message:o})??"Antigravity reported a tool error."}function gu(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function _u(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var Ro,lg,pg,Io,fg,bo,vo=v(()=>{_();Wt();fu();oo();zn();jt();Jn();lo();Ro="antigravity",lg=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),pg=new Set(["--conversation","--resume","--continue"]),Io=18e4,fg=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"]);bo={command:"agy",maxInitialInputBytes:Io,meta:{displayName:"Antigravity",models:Cd(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=Gn(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){Tg(t);let{model:r,effort:s}=At(e.model),o=go(r),i=o.model,u=e.effort??s??o.effort,d=hg(i,u),c=e.additionalArgs??[],l=_g(gg(c,new Set(["--input-format","--output-format"]))),p=i&&!Qr(c,"--model")?["--model",i]:[],f=Qr(c,"--effort")?[]:jd(d),h=Qr(c,"--mode")||Qr(c,"--dangerously-skip-permissions")?[]:Gd(e.mode),m=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...p,...f,...h,...m,...l],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
52
+ `),u=typeof e.error=="string"?e.error:Ot(e.error)&&typeof e.error.message=="string"?e.error.message:"";return {timestamp:t,type:"tool_result",resultPreview:i||u,isError:e.status==="failed"||e.status==="error"||e.is_error===true||e.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let s=String(e.name||e.tool_name||""),o=e.input,i=je(o);return s==="Bash"&&dt(i)?ut(t,i):{timestamp:t,type:"tool_use",toolName:s,toolInput:i}}if(r==="tool_result"){let s=!!e.is_error,o=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...Ge(o,s)}}if(r==="web_search"){let s=e.action,o;if(s?.type==="search"){let i=s.queries;o=String(s.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else o=e.query?"open: "+String(e.query):"";return !o&&!(Ot(s)&&s.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:o}}if(r==="file_change"){let s=e.changes;if(!Array.isArray(s)||s.length===0)return null;let o=s.map(u=>String(u.path||"")).filter(Boolean);if(o.length===0)return null;let i=o.length===1?o[0]:`${o.slice(0,2).join(", ")}${o.length>2?` (+${o.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function sg(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||""),s=e.input,o=je(s);return r==="Bash"&&dt(o)?ut(t,o):{timestamp:t,type:"tool_use",toolName:r,toolInput:o}}return null}var Yf,Qf,To,yo=v(()=>{_();Wt();un();Vn();cn();pn();uo();ln();Jn();jt();zt();Yf=new Set(["turn.started","turn.completed","item.updated"]),Qf="cli/codex";To={command:"codex",meta:{displayName:"Codex",models:vd(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:s}=At(e.model),o=e.effort??s,i=e.resumeSessionId?Md(e.mode):Ld(e.mode),u=$d(o),d=r?["-m",r]:[],c=eg(e.additionalArgs??[]),p=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...p,...i,...u,...d,...c,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...p,...i,...u,...d,...c],stdinMessage:t}},extractText(t){let e=tg(t);if(e)throw new V(e,Qf);let n=nu(t);if(n)return n;let r=t.trim();return at(r,"codex")?"":r},extractPartialText(t){return nu(t)},parseResultMeta(t){let e=fn(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(),s=[],o;try{JSON.parse(t),o=[t];}catch{o=Zf(t),o.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,u]of o.entries()){let d;try{d=JSON.parse(u);}catch{continue}if(!Ot(d))continue;let c=d.type;if(!c)continue;let l=ze(d,r);if(su(d)){let f=ou(d);s.push({timestamp:l,type:"error",content:f,errorMessage:f});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||ao(d))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let p=d.item;if(p){if(c==="item.started"){s.push(...ng(l,p,ru(p,c,n,i)));continue}if(c==="item.completed"){let f=rg(l,p,ru(p,c,n,i));f&&s.push(f);continue}}}return s},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Yf.has(r):!1}catch{return false}}};});function ag(t){return t?ig[t]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Xr(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function cu(t){let e=[],n=0,r=false,s=false,o=0;for(let u=0;u<t.length;u++){let d=t[u];if(s){s=false;continue}if(d==="\\"&&r){s=true;continue}if(d==='"'){r=!r;continue}if(!r){if(d==="{")n++;else if(d==="}"&&(n--,n===0)){let c=t.slice(o,u+1).trim();c&&e.push(c),o=u+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function hn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function dg(t){let e=[],n=false;for(let r of t.split(/\r?\n/)){let s=r.trim();if(!s)continue;try{let i=JSON.parse(s);hn(i)?e.push(i):n=!0;continue}catch{}let o=cu(s);o.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let i of o)try{let u=JSON.parse(i);hn(u)?e.push(u):n=!0;}catch{n=true;}}return {events:e,malformed:n}}function Kt(t){if(typeof t!="string")return;let e=t.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(e)return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,uu).trim()}function lu(t){let e=hn(t.error)?t.error:void 0,n=e&&hn(e.data)?e.data:void 0,r=Kt(e?.name),s=Kt(n?.message)??Kt(e?.message)??Kt(t.message)??Kt(t.errorMessage)??Kt(t.error),o=Kt(t.ref),i=r&&s&&r!==s?`${r}: ${s}`:r??s??du;return (o?`${i} (ref: ${o})`:i).slice(0,uu)}function iu(t){let e=dg(t),n=[],r=null,s=0,o=[],i,u=false;for(let d of e.events){let c=typeof d.type=="string"?d.type:void 0;if(c){if(c==="text"){let l=hn(d.part)?d.part:void 0,p=typeof l?.text=="string"?l.text:void 0;p?.trim()&&n.push(p.trim());continue}if(c==="result"){typeof d.result=="string"&&(r=d.result);continue}if(c==="tool_use"){s++;continue}if(c==="error"){o.push(lu(d));continue}if(c==="step_finish"){u=true;let l=hn(d.part)?d.part:void 0;i=typeof l?.reason=="string"?l.reason:void 0;}}}return {...e,texts:n,resultText:r,toolUseCount:s,errorMessages:o,terminalReason:i,hasTerminal:u}}function pu(t){return (t??"unknown").trim().toLowerCase().replace(/_/g,"-")}function Yr(){return new V("OpenCode returned no assistant output.",_n,{code:"EMPTY_OUTPUT",kind:"transient"})}function ug(){return new V("OpenCode emitted malformed JSON output.",_n,{code:"PROVIDER_CRASHED",kind:"transient"})}function au(t,e){switch(pu(t)){case "length":return new V("OpenCode stopped because the context window was exceeded.",_n,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new V("OpenCode stopped because the content filter blocked the response.",_n,{code:"UNKNOWN",kind:"permanent"});case "error":return new V(e?`OpenCode error: ${e}`:`${du} while generating a response.`,_n,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var og,_n,du,uu,ig,wo,Eo=v(()=>{_();Wt();Vn();pn();zt();og=new Set(["step_start","step_finish"]),_n="cli/opencode",du="OpenCode provider error",uu=240,ig={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};wo={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(t,e,n){let r=e.additionalArgs,s=r!==void 0?[...r]:["run"];Xr(s,"--format")||s.push("--format","json"),e.resumeSessionId&&!s.includes("-s")&&!s.includes("--session")&&s.push("-s",e.resumeSessionId);let{agent:o,autoApprove:i}=ag(e.mode);Xr(s,"--agent")||o!==void 0&&s.push("--agent",o),i&&!Xr(s,"--auto")&&s.push("--auto"),e.effort!==void 0&&!Xr(s,"--variant")&&s.push("--variant",e.effort),e.model&&s.push("--model",e.model);let u;return !n&&!i&&!e.env?.OPENCODE_PERMISSION&&(u={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:s,stdinMessage:t,env:u}},extractText(t){let e=iu(t),n=e.errorMessages[0];if(n){let i=au("error",n);if(i)throw i}let r=au(e.terminalReason??"",void 0);if(r)throw r;let s=e.texts.length>0?e.texts[e.texts.length-1]:void 0;if(s!==void 0){if(!e.hasTerminal)throw Yr();return s}if(e.resultText?.trim()){if(!e.hasTerminal)throw Yr();return e.resultText}if(e.malformed)throw ug();if(!e.hasTerminal)throw Yr();let o=pu(e.terminalReason);if((o==="stop"||o==="tool-calls")&&e.toolUseCount>0)return "";throw Yr()},interpretExit(t,e,n=""){if(t===0)return null;let s=iu(n).errorMessages[0];return s?new V(`OpenCode error: ${s}`,_n,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(t){let e=fn(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=e??new Date().toISOString(),r=[],s;try{JSON.parse(t),s=[t];}catch{s=cu(t),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let o of s){let i;try{i=JSON.parse(o);}catch{continue}let u=ze(i,n),d=i.type;if(d){if(d==="text"){let l=i.part?.text;l&&r.push({timestamp:u,type:"text",content:l});continue}if(d==="tool_use"){let c=i.part;if(!c)continue;let l=String(c.tool||""),p=String(c.callID||""),f=c.state,h=String(f?.status||""),m=f?.input,k=je(m);if(r.push({timestamp:u,type:"tool_use",toolName:l,toolUseId:p,toolInput:k}),h==="completed"&&f?.output!==void 0){let E=f.output,x=typeof E=="string"?E:JSON.stringify(E);r.push({timestamp:u,type:"tool_result",toolUseId:p,resultPreview:x,isError:false});}else h==="error"&&r.push({timestamp:u,type:"tool_result",toolUseId:p,resultPreview:String(f?.error||"tool error"),isError:true});continue}if(d==="error"){let c=lu(i);r.push({timestamp:u,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?og.has(r):!1}catch{return false}}};});var fu=v(()=>{_();});function Qr(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function gg(t,e){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r],o=[...e].find(i=>s===i||s.startsWith(`${i}=`));o?s===o&&r+1<t.length&&(r+=1):n.push(s);}return n}function _g(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],s=r.indexOf("="),o=s>0?r.slice(0,s):r;if(!pg.has(o)){e.push(r);continue}r===o&&n+1<t.length&&!t[n+1].startsWith("-")&&(n+=1);}return e}function $e(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function hg(t,e){if(!(t?lg.has(t)||It(Ro).some(o=>o.id===t):false)||!t)return e;let r=Kn(Ro,t),s=Nd(Ro)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:s&&r.includes(s)?s:void 0:s}function ft(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 Oo(t){return t.step.step_index}function ee(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&Br(e)?.slice(0,500).trim()||void 0}function mg(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&fg.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(o=>o.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 kg(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 hu(t){let e=$e(t)?t:void 0,n=e&&$e(e.error)?e.error:void 0,r=e?ee(e.code)??ee(e.error_code)??ee(n?.code)??ee(n?.error_code):void 0,s=typeof t=="string"?ee(t):e?ee(e.message)??ee(e.error)??ee(e.reason)??ee(n?.message)??ee(n?.error)??ee(n?.reason):void 0,o=mg(r,s),i=e?ft(e.retry_after_ms)??ft(e.retryAfterMs)??ft(n?.retry_after_ms)??ft(n?.retryAfterMs):void 0;return {code:o,kind:kg(o),message:s??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function es(t){let e=hu(t);return new V(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function No(t){return new V(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function Tg(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=Io))throw new V(`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 V("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 ts(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function ns(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 yg(t){let e=ns(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||ts(e.event)?.status!=="SUCCESS"||Zr(t))return false;let r=new Map;for(let s of t){if(s.kind!=="step_update"||s.step.step_type!=="agent_response")continue;let o=Ao(s),i=Oo(s);!o||!Number.isSafeInteger(i)||r.set(JSON.stringify([o,i]),s.step);}if(r.size===0)return false;for(let s of r.values())if(s.state!=="DONE"||!$e(s.usage)||ft(s.usage.input_tokens)===void 0||ft(s.usage.output_tokens)===void 0)return false;return true}function wg(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function Eg(t,e){return $e(t)&&$e(e)?{...e,...t}:$e(t)&&typeof e=="string"?{...t,message:e}:typeof t=="string"&&$e(e)?{...e,message:t}:t??e}function Rg(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let o of e){let i=$e(o)?o:void 0,u=typeof o=="string"?ee(o):ee(i?.display_name)??ee(i?.action);u&&!n.includes(u)&&n.length<5&&n.push(u.slice(0,80));}let r=Math.max(0,e.length-n.length),s=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new V(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${s}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Zr(t){let e=ns(t);if(!e)return;if(e.event.kind==="agy_error")return es(e.event.error);let n=ts(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return Rg(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return No("Antigravity returned a result with an unsupported status.");let r=n.error,s=Eg(r==null||r===""?n:r,wg(t,e.index));return es(s)}function mu(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function Sg(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function Ig(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function ku(t){let e=mu(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function Ag(t){let e=$e(t)?t:void 0,n=e&&$e(e.error)?e.error:void 0,r=typeof t=="string"?t.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,s=(ee(e?.type)??ee(e?.code)??ee(e?.error_type)??ee(n?.type)??ee(n?.code)??ee(n?.error_type)??ee(r)??"TOOL_ERROR").slice(0,60),o=hu(t).message.slice(0,250);return ku({type:s,message:o})??"Antigravity reported a tool error."}function gu(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function _u(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var Ro,lg,pg,Io,fg,bo,vo=v(()=>{_();Wt();fu();oo();zn();jt();Jn();lo();Ro="antigravity",lg=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),pg=new Set(["--conversation","--resume","--continue"]),Io=18e4,fg=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"]);bo={command:"agy",maxInitialInputBytes:Io,meta:{displayName:"Antigravity",models:Cd(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=Gn(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){Tg(t);let{model:r,effort:s}=At(e.model),o=go(r),i=o.model,u=e.effort??s??o.effort,d=hg(i,u),c=e.additionalArgs??[],l=_g(gg(c,new Set(["--input-format","--output-format"]))),p=i&&!Qr(c,"--model")?["--model",i]:[],f=Qr(c,"--effort")?[]:jd(d),h=Qr(c,"--mode")||Qr(c,"--dangerously-skip-permissions")?[]:Gd(e.mode),m=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...p,...f,...h,...m,...l],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
53
53
  `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(t){let e=jn(t),n=ns(e)?.event,r=Zr(e);if(r)throw r;let s=n?ts(n):void 0;if(s){if(s.status!=="SUCCESS")throw No("Antigravity returned a result with an unsupported status.");if(typeof s.response!="string")throw No("Antigravity returned a successful result without a response string.");if(!s.response.trim())throw So();return s.response}if(e.length>0)throw So();let o=t.trim();if(!o)throw So();return o},extractPartialText(t){let e=jn(t),n=ns(e)?.event;if(!n||n.kind==="agy_error")return;let r=ts(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(t,e,n){let r=jn(n??""),s=Zr(r);return s||(t!==0&&e.trim()?es(e):null)},parseResultMeta(t){let e=jn(t),n=0,r=0,s=0,o=0,i=new Set;for(let d of e){if(d.kind!=="step_update"||d.step.state!=="DONE"||!$e(d.step.usage))continue;let c=Ao(d),l=Oo(d);if(!c||!Number.isSafeInteger(l))continue;let p=JSON.stringify([c,l]);if(i.has(p))continue;let f=d.step.usage,h=ft(f.input_tokens),m=ft(f.output_tokens);h===void 0||m===void 0||(i.add(p),n+=h,r+=m,s+=ft(f.cache_read_tokens)??0,o+=1);}return {usage:o===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:s,costUsd:0,complete:yg(e)},model:null}},parseEvent(t,e,n){let r=Gn(t);if(!r)return [];let s=e??new Date().toISOString();if(r.kind==="agy_error")return [_u(s,es(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let h=Zr([r]);return h?[_u(s,h)]:[]}if(r.kind!=="step_update")return [];let{step:o}=r,i=Ao(r)??"unknown",u=Oo(r),d=`${i}:${u}`;if((o.state==="DONE"||o.state==="ERROR")&&gu(n,`antigravity:terminal:${d}`))return [];if(o.step_type==="agent_response")return typeof o.text_delta=="string"&&o.text_delta.length>0?[{timestamp:s,type:"text",content:o.text_delta}]:[];if(o.step_type!=="tool")return [];let c=$e(o.tool_info)?o.tool_info:void 0,l=Ig(o,c);if(!l)return [];let p=Sg(o);if(o.state==="ACTIVE"){if(gu(n,`antigravity:active:${d}`))return [];let h=mu(c?.parameters);return [{timestamp:s,type:"tool_use",toolName:l,toolUseId:p,...h===void 0?{}:{toolInput:h}}]}let f=o.state==="ERROR"?Ag(c?.error):ku(c?.output);return [{timestamp:s,type:"tool_result",toolName:l,toolUseId:p,...f===void 0?{}:{resultPreview:f},...o.state==="ERROR"?{isError:true}:{}}]}};});var Tu=v(()=>{_();cn();pn();ln();zt();});function mn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function kn(t){return mn(t)?t:void 0}function Ie(t){return typeof t=="string"?t:void 0}function Vt(t){let e=typeof t=="number"?t:Number(t??0);return Number.isFinite(e)?e:0}function xg(t){let e=[],n=-1,r=0,s=false,o=false;for(let i=0;i<t.length;i+=1){let u=t[i];if(n===-1){(u==="{"||u==="[")&&(n=i,r=1);continue}if(o){o=false;continue}if(u==="\\"&&s){o=true;continue}if(u==='"'){s=!s;continue}s||(u==="{"||u==="["?r+=1:(u==="}"||u==="]")&&(r-=1,r===0&&(e.push(t.slice(n,i+1)),n=-1)));}return n!==-1&&e.push(t.slice(n)),e}function Xn(t){let e=t.trim();if(!e)return [];try{let n=JSON.parse(e);return mn(n)?[n]:[]}catch{return xg(e).flatMap(n=>{try{let r=JSON.parse(n);return mn(r)?[r]:[]}catch{return []}})}}function Su(t){let e=JSON.stringify(t);return e===void 0?String(t):e}function Jt(t){if(typeof t=="string")return t;if(Array.isArray(t)){let e=t.map(Jt).filter(n=>n!==void 0);return e.length>0?e.join(`
54
54
  `):void 0}if(mn(t)){if(typeof t.text=="string")return t.text;if(typeof t.message=="string")return t.message;if(typeof t.error=="string")return t.error;if(t.type==="text"&&typeof t.data=="string")return t.data;for(let e of ["content","FileContent","rawOutput"]){let n=Jt(t[e]);if(n!==void 0)return n}}}function Cg(t){let e=i=>Array.isArray(i)&&i.every(u=>Number.isInteger(u)&&u>=0&&u<=255),n=i=>typeof i=="string"&&i.trim().length>0?i:void 0,r=i=>new TextDecoder("utf-8",{fatal:false}).decode(Uint8Array.from(i)),s=i=>{let u=JSON.stringify(i,(d,c)=>e(c)?`<bytes:${c.length}>`:c);return u===void 0?String(i):u},o=t.rawOutput;if(o!=null){let i=kn(o);if(!i)return n(Jt(o))??s(o);let u;if(e(i.output)&&i.output.length>0&&(u=n(r(i.output))),!u&&e(i.stdout)&&i.stdout.length>0&&(u=n(r(i.stdout))),!u){let l=kn(i.Result);u=n(i.output)??n(l?.output)??n(Jt(o));}let d=e(i.stderr)&&i.stderr.length>0?r(i.stderr):void 0;if(d!==void 0)if(u){let l=u.endsWith(`
55
55
  `)||u.endsWith("\r")?"":`
@@ -49,7 +49,7 @@ ${r.join(`
49
49
  `);for(let r of e)if(r.trim())try{let s=JSON.parse(r);if(s.type==="result"){let o=s.usage,i=o?{inputTokens:Number(o.input_tokens??0)+Number(o.cache_read_input_tokens??0),outputTokens:Number(o.output_tokens??0),cachedInputTokens:Number(o.cache_read_input_tokens??0),costUsd:Number(s.total_cost_usd??0)}:null,a=s.modelUsage,u=a?Object.keys(a)[0]??null:null;return {usage:i,model:u}}}catch{}let n=Ol(t);return n?{usage:{inputTokens:n.inputTokens,outputTokens:0,cachedInputTokens:n.cachedInputTokens,costUsd:0},model:n.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 [];let s=Ot(n,e??new Date().toISOString()),o=xk(n);if(o)return [{timestamp:s,type:"error",content:o,errorMessage:o}];let i=n.output_file,a=n.summary;if(r==="system"&&n.subtype==="task_notification"&&n.status==="completed"&&typeof i=="string"&&i.trim().length>0&&typeof a=="string"&&a.trim().length>0)return [{timestamp:s,type:"text",content:a}];if(r!=="assistant"&&r!=="user")return [];let c=n.message?.content;if(!Array.isArray(c))return [];let p=[];for(let l of c){let g=$k(s,l);g&&p.push(g);}return p},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Nk.has(r):!1}catch{return false}}};Ll=200;});function $l(t){let e=t.split(`
50
50
  `).filter(s=>s.trim()),n=[],r=null;for(let s of e)try{let o=JSON.parse(s);if(o.type==="assistant.message"&&typeof o.data?.content=="string"){let i=o.data.content;i.trim()&&n.push(i.trim());}o.type==="result"&&typeof o.result=="string"&&(r=o.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}var Hk,pa,fa=D(()=>{h();ns();is();dr();cr();ur();vn();lo();Cn();Hk=new Set(["interactive","plan","autopilot"]);pa={command:"copilot",meta:{displayName:"Copilot",models:fl()},buildArgs(t,e,n){let r=e.additionalArgs?[...e.additionalArgs]:[];return e.model&&r.push("--model",e.model),e.mode&&Hk.has(e.mode)&&r.push("--mode",e.mode),e.effort&&(co.copilot??[]).includes(e.effort)&&r.push("--effort",e.effort),{args:r,stdinMessage:t}},extractText(t){let e=$l(t);if(e)return e;let n=t.trim();return Yt(n,"copilot")?"":n},extractPartialText(t){return $l(t)},parseResultMeta(t){let e=lr(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 s=n.data;if(!s)return [];let o=Ot(n,e??new Date().toISOString()),i=s.toolCallId;if(r==="tool.execution_start"){let a=String(s.toolName||""),u=s.arguments,c=At(u);return (a==="bash"||a==="Bash")&&Ft(c)?[qt(o,c,i)]:[{timestamp:o,type:"tool_use",toolName:a,toolInput:c,...i&&{toolUseId:i}}]}if(r==="tool.execution_complete"){let a=s.error;if(a)return [{timestamp:o,type:"tool_result",...i&&{toolUseId:i},...It(String(a.message||""),true)}];let u=s.result,c=String(u?.content||"");return [{timestamp:o,type:"tool_result",...i&&{toolUseId:i},...It(c,false)}]}if(r==="assistant.message"){let a=String(s.content||"");return a?[{timestamp:o,type:"text",content:a}]:[]}return []}};});function Fk(t){let e=[],n=0,r=false,s=false,o=0;for(let a=0;a<t.length;a++){let u=t[a];if(s){s=false;continue}if(u==="\\"&&r){s=true;continue}if(u==='"'){r=!r;continue}if(!r){if(u==="{")n++;else if(u==="}"&&(n--,n===0)){let c=t.slice(o,a+1).trim();c&&e.push(c),o=a+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function qk(t){return t[0]==="exec"?t.slice(1):t}function Hl(t){let e=t.split(`
51
51
  `).map(s=>s.trim()).filter(Boolean),n=[],r=null;for(let s of e)try{let o=JSON.parse(s);if(o.type==="item.completed"&&(o.item?.type==="message"||o.item?.type==="agent_message")&&typeof o.item?.text=="string"){let i=o.item.text;i.trim()&&n.push(i.trim());}o.type==="result"&&typeof o.result=="string"&&(r=o.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}function cn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Bl(t){return t.type==="turn.failed"?true:t.type!=="error"?false:typeof t.message=="string"||typeof t.errorMessage=="string"||typeof t.error=="string"||cn(t.error)}function Fl(t){let e=cn(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 jk(t){for(let e of t.split(/\r?\n/)){if(!e.trim())continue;let n;try{n=JSON.parse(e);}catch{continue}if(cn(n)&&Bl(n))return Fl(n)}}function Ul(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 s=n.state.get("codex.pending");s||(s=new Map,n.state.set("codex.pending",s));let o=JSON.stringify([t.type,t.id]);if(e==="item.started"){let u=`codex:${JSON.stringify(t.id)}#${n.rowIndex}:${r}`,c=s.get(o)??[];return c.push(u),s.set(o,c),u}let i=s.get(o),a=i?.pop();return i?.length||s.delete(o),a}function Wk(t,e,n){let r=e.type;if(r==="command_execution"){let s=String(e.command||"");return Ft(s)?[qt(t,s,n)]:[{timestamp:t,type:"tool_use",toolName:"Bash",toolInput:s,...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:At(e.arguments),...n?{toolUseId:n}:{}}]:[]}function Gk(t,e,n){let r=e.type;if(r==="message"||r==="text"){let s=e.content;if(Array.isArray(s))for(let o of s){let i=zk(t,o);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 s=typeof e.text=="string"?e.text.trim():"";return s?{timestamp:t,type:"thinking",content:s}:null}if(r==="command_execution"){let s=String(e.aggregated_output||e.output||""),o=!!e.is_error;return {timestamp:t,type:"tool_result",...It(s,o),...n?{toolUseId:n}:{}}}if(r==="mcp_tool_call"){let s=cn(e.result)?e.result:void 0,i=(Array.isArray(s?.content)?s.content:[]).filter(u=>cn(u)&&u.type==="text"&&typeof u.text=="string").map(u=>u.text).join(`
52
- `),a=typeof e.error=="string"?e.error:cn(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 s=String(e.name||e.tool_name||""),o=e.input,i=At(o);return s==="Bash"&&Ft(i)?qt(t,i):{timestamp:t,type:"tool_use",toolName:s,toolInput:i}}if(r==="tool_result"){let s=!!e.is_error,o=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...It(o,s)}}if(r==="web_search"){let s=e.action,o;if(s?.type==="search"){let i=s.queries;o=String(s.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else o=e.query?"open: "+String(e.query):"";return !o&&!(cn(s)&&s.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:o}}if(r==="file_change"){let s=e.changes;if(!Array.isArray(s)||s.length===0)return null;let o=s.map(a=>String(a.path||"")).filter(Boolean);if(o.length===0)return null;let i=o.length===1?o[0]:`${o.slice(0,2).join(", ")}${o.length>2?` (+${o.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function zk(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||""),s=e.input,o=At(s);return r==="Bash"&&Ft(o)?qt(t,o):{timestamp:t,type:"tool_use",toolName:r,toolInput:o}}return null}var Uk,Bk,ga,_a=D(()=>{h();An();ns();is();dr();cr();oa();ur();os();vn();Cn();Uk=new Set(["turn.started","turn.completed","item.updated"]),Bk="cli/codex";ga={command:"codex",meta:{displayName:"Codex",models:pl(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:s}=un(e.model),o=e.effort??s,i=e.resumeSessionId?kl(e.mode):ml(e.mode),a=Tl(o),u=r?["-m",r]:[],c=qk(e.additionalArgs??[]),l=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...l,...i,...a,...u,...c,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...l,...i,...a,...u,...c],stdinMessage:t}},extractText(t){let e=jk(t);if(e)throw new ie(e,Bk);let n=Hl(t);if(n)return n;let r=t.trim();return Yt(r,"codex")?"":r},extractPartialText(t){return Hl(t)},parseResultMeta(t){let e=lr(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(),s=[],o;try{JSON.parse(t),o=[t];}catch{o=Fk(t),o.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,a]of o.entries()){let u;try{u=JSON.parse(a);}catch{continue}if(!cn(u))continue;let c=u.type;if(!c)continue;let p=Ot(u,r);if(Bl(u)){let g=Fl(u);s.push({timestamp:p,type:"error",content:g,errorMessage:g});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||sa(u))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let l=u.item;if(l){if(c==="item.started"){s.push(...Wk(p,l,Ul(l,c,n,i)));continue}if(c==="item.completed"){let g=Gk(p,l,Ul(l,c,n,i));g&&s.push(g);continue}}}return s},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Uk.has(r):!1}catch{return false}}};});function Jk(t){return t?Vk[t]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function ho(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function zl(t){let e=[],n=0,r=false,s=false,o=0;for(let a=0;a<t.length;a++){let u=t[a];if(s){s=false;continue}if(u==="\\"&&r){s=true;continue}if(u==='"'){r=!r;continue}if(!r){if(u==="{")n++;else if(u==="}"&&(n--,n===0)){let c=t.slice(o,a+1).trim();c&&e.push(c),o=a+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function gr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Xk(t){let e=[],n=false;for(let r of t.split(/\r?\n/)){let s=r.trim();if(!s)continue;try{let i=JSON.parse(s);gr(i)?e.push(i):n=!0;continue}catch{}let o=zl(s);o.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let i of o)try{let a=JSON.parse(i);gr(a)?e.push(a):n=!0;}catch{n=true;}}return {events:e,malformed:n}}function Dn(t){if(typeof t!="string")return;let e=t.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(e)return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,Gl).trim()}function Kl(t){let e=gr(t.error)?t.error:void 0,n=e&&gr(e.data)?e.data:void 0,r=Dn(e?.name),s=Dn(n?.message)??Dn(e?.message)??Dn(t.message)??Dn(t.errorMessage)??Dn(t.error),o=Dn(t.ref),i=r&&s&&r!==s?`${r}: ${s}`:r??s??Wl;return (o?`${i} (ref: ${o})`:i).slice(0,Gl)}function ql(t){let e=Xk(t),n=[],r=null,s=0,o=[],i,a=false;for(let u of e.events){let c=typeof u.type=="string"?u.type:void 0;if(c){if(c==="text"){let p=gr(u.part)?u.part:void 0,l=typeof p?.text=="string"?p.text:void 0;l?.trim()&&n.push(l.trim());continue}if(c==="result"){typeof u.result=="string"&&(r=u.result);continue}if(c==="tool_use"){s++;continue}if(c==="error"){o.push(Kl(u));continue}if(c==="step_finish"){a=true;let p=gr(u.part)?u.part:void 0;i=typeof p?.reason=="string"?p.reason:void 0;}}}return {...e,texts:n,resultText:r,toolUseCount:s,errorMessages:o,terminalReason:i,hasTerminal:a}}function Vl(t){return (t??"unknown").trim().toLowerCase().replace(/_/g,"-")}function mo(){return new ie("OpenCode returned no assistant output.",fr,{code:"EMPTY_OUTPUT",kind:"transient"})}function Yk(){return new ie("OpenCode emitted malformed JSON output.",fr,{code:"PROVIDER_CRASHED",kind:"transient"})}function jl(t,e){switch(Vl(t)){case "length":return new ie("OpenCode stopped because the context window was exceeded.",fr,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new ie("OpenCode stopped because the content filter blocked the response.",fr,{code:"UNKNOWN",kind:"permanent"});case "error":return new ie(e?`OpenCode error: ${e}`:`${Wl} while generating a response.`,fr,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var Kk,fr,Wl,Gl,Vk,ha,ma=D(()=>{h();An();is();cr();Cn();Kk=new Set(["step_start","step_finish"]),fr="cli/opencode",Wl="OpenCode provider error",Gl=240,Vk={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};ha={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(t,e,n){let r=e.additionalArgs,s=r!==void 0?[...r]:["run"];ho(s,"--format")||s.push("--format","json"),e.resumeSessionId&&!s.includes("-s")&&!s.includes("--session")&&s.push("-s",e.resumeSessionId);let{agent:o,autoApprove:i}=Jk(e.mode);ho(s,"--agent")||o!==void 0&&s.push("--agent",o),i&&!ho(s,"--auto")&&s.push("--auto"),e.effort!==void 0&&!ho(s,"--variant")&&s.push("--variant",e.effort),e.model&&s.push("--model",e.model);let a;return !n&&!i&&!e.env?.OPENCODE_PERMISSION&&(a={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:s,stdinMessage:t,env:a}},extractText(t){let e=ql(t),n=e.errorMessages[0];if(n){let i=jl("error",n);if(i)throw i}let r=jl(e.terminalReason??"",void 0);if(r)throw r;let s=e.texts.length>0?e.texts[e.texts.length-1]:void 0;if(s!==void 0){if(!e.hasTerminal)throw mo();return s}if(e.resultText?.trim()){if(!e.hasTerminal)throw mo();return e.resultText}if(e.malformed)throw Yk();if(!e.hasTerminal)throw mo();let o=Vl(e.terminalReason);if((o==="stop"||o==="tool-calls")&&e.toolUseCount>0)return "";throw mo()},interpretExit(t,e,n=""){if(t===0)return null;let s=ql(n).errorMessages[0];return s?new ie(`OpenCode error: ${s}`,fr,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(t){let e=lr(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=e??new Date().toISOString(),r=[],s;try{JSON.parse(t),s=[t];}catch{s=zl(t),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let o of s){let i;try{i=JSON.parse(o);}catch{continue}let a=Ot(i,n),u=i.type;if(u){if(u==="text"){let p=i.part?.text;p&&r.push({timestamp:a,type:"text",content:p});continue}if(u==="tool_use"){let c=i.part;if(!c)continue;let p=String(c.tool||""),l=String(c.callID||""),g=c.state,_=String(g?.status||""),m=g?.input,k=At(m);if(r.push({timestamp:a,type:"tool_use",toolName:p,toolUseId:l,toolInput:k}),_==="completed"&&g?.output!==void 0){let y=g.output,A=typeof y=="string"?y:JSON.stringify(y);r.push({timestamp:a,type:"tool_result",toolUseId:l,resultPreview:A,isError:false});}else _==="error"&&r.push({timestamp:a,type:"tool_result",toolUseId:l,resultPreview:String(g?.error||"tool error"),isError:true});continue}if(u==="error"){let c=Kl(i);r.push({timestamp:a,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Kk.has(r):!1}catch{return false}}};});var Jl=D(()=>{h();});function ko(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function nT(t,e){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r],o=[...e].find(i=>s===i||s.startsWith(`${i}=`));o?s===o&&r+1<t.length&&(r+=1):n.push(s);}return n}function rT(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],s=r.indexOf("="),o=s>0?r.slice(0,s):r;if(!eT.has(o)){e.push(r);continue}r===o&&n+1<t.length&&!t[n+1].startsWith("-")&&(n+=1);}return e}function ht(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function sT(t,e){if(!(t?Zk.has(t)||dn(ka).some(o=>o.id===t):false)||!t)return e;let r=ss(ka,t),s=cl(ka)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:s&&r.includes(s)?s:void 0:s}function Qt(t){return typeof t=="number"&&Number.isSafeInteger(t)&&t>=0?t:void 0}function wa(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 Ra(t){return t.step.step_index}function ke(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&io(e)?.slice(0,500).trim()||void 0}function oT(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&tT.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|argument)/].some(o=>o.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 iT(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 Ql(t){let e=ht(t)?t:void 0,n=e&&ht(e.error)?e.error:void 0,r=e?ke(e.code)??ke(e.error_code)??ke(n?.code)??ke(n?.error_code):void 0,s=typeof t=="string"?ke(t):e?ke(e.message)??ke(e.error)??ke(e.reason)??ke(n?.message)??ke(n?.error)??ke(n?.reason):void 0,o=oT(r,s),i=e?Qt(e.retry_after_ms)??Qt(e.retryAfterMs)??Qt(n?.retry_after_ms)??Qt(n?.retryAfterMs):void 0;return {code:o,kind:iT(o),message:s??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function yo(t){let e=Ql(t);return new ie(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function Ea(t){return new ie(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function aT(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=ya))throw new ie(`Input is too large: final provider initial input is ${e} UTF-8 bytes; budget is ${ya} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function Ta(){return new ie("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 wo(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function Ro(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 dT(t){let e=Ro(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||wo(e.event)?.status!=="SUCCESS"||To(t))return false;let r=new Map;for(let s of t){if(s.kind!=="step_update"||s.step.step_type!=="agent_response")continue;let o=wa(s),i=Ra(s);!o||!Number.isSafeInteger(i)||r.set(JSON.stringify([o,i]),s.step);}if(r.size===0)return false;for(let s of r.values())if(s.state!=="DONE"||!ht(s.usage)||Qt(s.usage.input_tokens)===void 0||Qt(s.usage.output_tokens)===void 0)return false;return true}function uT(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function cT(t,e){return ht(t)&&ht(e)?{...e,...t}:ht(t)&&typeof e=="string"?{...t,message:e}:typeof t=="string"&&ht(e)?{...e,message:t}:t??e}function lT(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let o of e){let i=ht(o)?o:void 0,a=typeof o=="string"?ke(o):ke(i?.display_name)??ke(i?.action);a&&!n.includes(a)&&n.length<5&&n.push(a.slice(0,80));}let r=Math.max(0,e.length-n.length),s=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new ie(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${s}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function To(t){let e=Ro(t);if(!e)return;if(e.event.kind==="agy_error")return yo(e.event.error);let n=wo(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return lT(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return Ea("Antigravity returned a result with an unsupported status.");let r=n.error,s=cT(r==null||r===""?n:r,uT(t,e.index));return yo(s)}function Zl(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function pT(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function fT(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function ep(t){let e=Zl(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function gT(t){let e=ht(t)?t:void 0,n=e&&ht(e.error)?e.error:void 0,r=typeof t=="string"?t.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,s=(ke(e?.type)??ke(e?.code)??ke(e?.error_type)??ke(n?.type)??ke(n?.code)??ke(n?.error_type)??ke(r)??"TOOL_ERROR").slice(0,60),o=Ql(t).message.slice(0,250);return ep({type:s,message:o})??"Antigravity reported a tool error."}function Xl(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function Yl(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var ka,Zk,eT,ya,tT,Sa,ba=D(()=>{h();An();Jl();na();rs();vn();os();uo();ka="antigravity",Zk=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),eT=new Set(["--conversation","--resume","--continue"]),ya=18e4,tT=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"]);Sa={command:"agy",maxInitialInputBytes:ya,meta:{displayName:"Antigravity",models:gl(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=ts(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){aT(t);let{model:r,effort:s}=un(e.model),o=ua(r),i=o.model,a=e.effort??s??o.effort,u=sT(i,a),c=e.additionalArgs??[],p=rT(nT(c,new Set(["--input-format","--output-format"]))),l=i&&!ko(c,"--model")?["--model",i]:[],g=ko(c,"--effort")?[]:Al(u),_=ko(c,"--mode")||ko(c,"--dangerously-skip-permissions")?[]:Il(e.mode),m=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...l,...g,..._,...m,...p],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
52
+ `),a=typeof e.error=="string"?e.error:cn(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 s=String(e.name||e.tool_name||""),o=e.input,i=At(o);return s==="Bash"&&Ft(i)?qt(t,i):{timestamp:t,type:"tool_use",toolName:s,toolInput:i}}if(r==="tool_result"){let s=!!e.is_error,o=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...It(o,s)}}if(r==="web_search"){let s=e.action,o;if(s?.type==="search"){let i=s.queries;o=String(s.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else o=e.query?"open: "+String(e.query):"";return !o&&!(cn(s)&&s.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:o}}if(r==="file_change"){let s=e.changes;if(!Array.isArray(s)||s.length===0)return null;let o=s.map(a=>String(a.path||"")).filter(Boolean);if(o.length===0)return null;let i=o.length===1?o[0]:`${o.slice(0,2).join(", ")}${o.length>2?` (+${o.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function zk(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||""),s=e.input,o=At(s);return r==="Bash"&&Ft(o)?qt(t,o):{timestamp:t,type:"tool_use",toolName:r,toolInput:o}}return null}var Uk,Bk,ga,_a=D(()=>{h();An();ns();is();dr();cr();oa();ur();os();vn();Cn();Uk=new Set(["turn.started","turn.completed","item.updated"]),Bk="cli/codex";ga={command:"codex",meta:{displayName:"Codex",models:pl(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:s}=un(e.model),o=e.effort??s,i=e.resumeSessionId?kl(e.mode):ml(e.mode),a=Tl(o),u=r?["-m",r]:[],c=qk(e.additionalArgs??[]),l=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...l,...i,...a,...u,...c,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...l,...i,...a,...u,...c],stdinMessage:t}},extractText(t){let e=jk(t);if(e)throw new ie(e,Bk);let n=Hl(t);if(n)return n;let r=t.trim();return Yt(r,"codex")?"":r},extractPartialText(t){return Hl(t)},parseResultMeta(t){let e=lr(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(),s=[],o;try{JSON.parse(t),o=[t];}catch{o=Fk(t),o.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,a]of o.entries()){let u;try{u=JSON.parse(a);}catch{continue}if(!cn(u))continue;let c=u.type;if(!c)continue;let p=Ot(u,r);if(Bl(u)){let g=Fl(u);s.push({timestamp:p,type:"error",content:g,errorMessage:g});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||sa(u))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let l=u.item;if(l){if(c==="item.started"){s.push(...Wk(p,l,Ul(l,c,n,i)));continue}if(c==="item.completed"){let g=Gk(p,l,Ul(l,c,n,i));g&&s.push(g);continue}}}return s},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Uk.has(r):!1}catch{return false}}};});function Jk(t){return t?Vk[t]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function ho(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function zl(t){let e=[],n=0,r=false,s=false,o=0;for(let a=0;a<t.length;a++){let u=t[a];if(s){s=false;continue}if(u==="\\"&&r){s=true;continue}if(u==='"'){r=!r;continue}if(!r){if(u==="{")n++;else if(u==="}"&&(n--,n===0)){let c=t.slice(o,a+1).trim();c&&e.push(c),o=a+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function gr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Xk(t){let e=[],n=false;for(let r of t.split(/\r?\n/)){let s=r.trim();if(!s)continue;try{let i=JSON.parse(s);gr(i)?e.push(i):n=!0;continue}catch{}let o=zl(s);o.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let i of o)try{let a=JSON.parse(i);gr(a)?e.push(a):n=!0;}catch{n=true;}}return {events:e,malformed:n}}function Dn(t){if(typeof t!="string")return;let e=t.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(e)return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,Gl).trim()}function Kl(t){let e=gr(t.error)?t.error:void 0,n=e&&gr(e.data)?e.data:void 0,r=Dn(e?.name),s=Dn(n?.message)??Dn(e?.message)??Dn(t.message)??Dn(t.errorMessage)??Dn(t.error),o=Dn(t.ref),i=r&&s&&r!==s?`${r}: ${s}`:r??s??Wl;return (o?`${i} (ref: ${o})`:i).slice(0,Gl)}function ql(t){let e=Xk(t),n=[],r=null,s=0,o=[],i,a=false;for(let u of e.events){let c=typeof u.type=="string"?u.type:void 0;if(c){if(c==="text"){let p=gr(u.part)?u.part:void 0,l=typeof p?.text=="string"?p.text:void 0;l?.trim()&&n.push(l.trim());continue}if(c==="result"){typeof u.result=="string"&&(r=u.result);continue}if(c==="tool_use"){s++;continue}if(c==="error"){o.push(Kl(u));continue}if(c==="step_finish"){a=true;let p=gr(u.part)?u.part:void 0;i=typeof p?.reason=="string"?p.reason:void 0;}}}return {...e,texts:n,resultText:r,toolUseCount:s,errorMessages:o,terminalReason:i,hasTerminal:a}}function Vl(t){return (t??"unknown").trim().toLowerCase().replace(/_/g,"-")}function mo(){return new ie("OpenCode returned no assistant output.",fr,{code:"EMPTY_OUTPUT",kind:"transient"})}function Yk(){return new ie("OpenCode emitted malformed JSON output.",fr,{code:"PROVIDER_CRASHED",kind:"transient"})}function jl(t,e){switch(Vl(t)){case "length":return new ie("OpenCode stopped because the context window was exceeded.",fr,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new ie("OpenCode stopped because the content filter blocked the response.",fr,{code:"UNKNOWN",kind:"permanent"});case "error":return new ie(e?`OpenCode error: ${e}`:`${Wl} while generating a response.`,fr,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var Kk,fr,Wl,Gl,Vk,ha,ma=D(()=>{h();An();is();cr();Cn();Kk=new Set(["step_start","step_finish"]),fr="cli/opencode",Wl="OpenCode provider error",Gl=240,Vk={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};ha={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(t,e,n){let r=e.additionalArgs,s=r!==void 0?[...r]:["run"];ho(s,"--format")||s.push("--format","json"),e.resumeSessionId&&!s.includes("-s")&&!s.includes("--session")&&s.push("-s",e.resumeSessionId);let{agent:o,autoApprove:i}=Jk(e.mode);ho(s,"--agent")||o!==void 0&&s.push("--agent",o),i&&!ho(s,"--auto")&&s.push("--auto"),e.effort!==void 0&&!ho(s,"--variant")&&s.push("--variant",e.effort),e.model&&s.push("--model",e.model);let a;return !n&&!i&&!e.env?.OPENCODE_PERMISSION&&(a={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:s,stdinMessage:t,env:a}},extractText(t){let e=ql(t),n=e.errorMessages[0];if(n){let i=jl("error",n);if(i)throw i}let r=jl(e.terminalReason??"",void 0);if(r)throw r;let s=e.texts.length>0?e.texts[e.texts.length-1]:void 0;if(s!==void 0){if(!e.hasTerminal)throw mo();return s}if(e.resultText?.trim()){if(!e.hasTerminal)throw mo();return e.resultText}if(e.malformed)throw Yk();if(!e.hasTerminal)throw mo();let o=Vl(e.terminalReason);if((o==="stop"||o==="tool-calls")&&e.toolUseCount>0)return "";throw mo()},interpretExit(t,e,n=""){if(t===0)return null;let s=ql(n).errorMessages[0];return s?new ie(`OpenCode error: ${s}`,fr,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(t){let e=lr(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=e??new Date().toISOString(),r=[],s;try{JSON.parse(t),s=[t];}catch{s=zl(t),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let o of s){let i;try{i=JSON.parse(o);}catch{continue}let a=Ot(i,n),u=i.type;if(u){if(u==="text"){let p=i.part?.text;p&&r.push({timestamp:a,type:"text",content:p});continue}if(u==="tool_use"){let c=i.part;if(!c)continue;let p=String(c.tool||""),l=String(c.callID||""),g=c.state,_=String(g?.status||""),m=g?.input,k=At(m);if(r.push({timestamp:a,type:"tool_use",toolName:p,toolUseId:l,toolInput:k}),_==="completed"&&g?.output!==void 0){let y=g.output,A=typeof y=="string"?y:JSON.stringify(y);r.push({timestamp:a,type:"tool_result",toolUseId:l,resultPreview:A,isError:false});}else _==="error"&&r.push({timestamp:a,type:"tool_result",toolUseId:l,resultPreview:String(g?.error||"tool error"),isError:true});continue}if(u==="error"){let c=Kl(i);r.push({timestamp:a,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Kk.has(r):!1}catch{return false}}};});var Jl=D(()=>{h();});function ko(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function nT(t,e){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r],o=[...e].find(i=>s===i||s.startsWith(`${i}=`));o?s===o&&r+1<t.length&&(r+=1):n.push(s);}return n}function rT(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],s=r.indexOf("="),o=s>0?r.slice(0,s):r;if(!eT.has(o)){e.push(r);continue}r===o&&n+1<t.length&&!t[n+1].startsWith("-")&&(n+=1);}return e}function ht(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function sT(t,e){if(!(t?Zk.has(t)||dn(ka).some(o=>o.id===t):false)||!t)return e;let r=ss(ka,t),s=cl(ka)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:s&&r.includes(s)?s:void 0:s}function Qt(t){return typeof t=="number"&&Number.isSafeInteger(t)&&t>=0?t:void 0}function wa(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 Ra(t){return t.step.step_index}function ke(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&io(e)?.slice(0,500).trim()||void 0}function oT(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&tT.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(o=>o.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 iT(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 Ql(t){let e=ht(t)?t:void 0,n=e&&ht(e.error)?e.error:void 0,r=e?ke(e.code)??ke(e.error_code)??ke(n?.code)??ke(n?.error_code):void 0,s=typeof t=="string"?ke(t):e?ke(e.message)??ke(e.error)??ke(e.reason)??ke(n?.message)??ke(n?.error)??ke(n?.reason):void 0,o=oT(r,s),i=e?Qt(e.retry_after_ms)??Qt(e.retryAfterMs)??Qt(n?.retry_after_ms)??Qt(n?.retryAfterMs):void 0;return {code:o,kind:iT(o),message:s??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function yo(t){let e=Ql(t);return new ie(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function Ea(t){return new ie(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function aT(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=ya))throw new ie(`Input is too large: final provider initial input is ${e} UTF-8 bytes; budget is ${ya} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function Ta(){return new ie("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 wo(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function Ro(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 dT(t){let e=Ro(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||wo(e.event)?.status!=="SUCCESS"||To(t))return false;let r=new Map;for(let s of t){if(s.kind!=="step_update"||s.step.step_type!=="agent_response")continue;let o=wa(s),i=Ra(s);!o||!Number.isSafeInteger(i)||r.set(JSON.stringify([o,i]),s.step);}if(r.size===0)return false;for(let s of r.values())if(s.state!=="DONE"||!ht(s.usage)||Qt(s.usage.input_tokens)===void 0||Qt(s.usage.output_tokens)===void 0)return false;return true}function uT(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function cT(t,e){return ht(t)&&ht(e)?{...e,...t}:ht(t)&&typeof e=="string"?{...t,message:e}:typeof t=="string"&&ht(e)?{...e,message:t}:t??e}function lT(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let o of e){let i=ht(o)?o:void 0,a=typeof o=="string"?ke(o):ke(i?.display_name)??ke(i?.action);a&&!n.includes(a)&&n.length<5&&n.push(a.slice(0,80));}let r=Math.max(0,e.length-n.length),s=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new ie(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${s}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function To(t){let e=Ro(t);if(!e)return;if(e.event.kind==="agy_error")return yo(e.event.error);let n=wo(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return lT(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return Ea("Antigravity returned a result with an unsupported status.");let r=n.error,s=cT(r==null||r===""?n:r,uT(t,e.index));return yo(s)}function Zl(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function pT(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function fT(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function ep(t){let e=Zl(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function gT(t){let e=ht(t)?t:void 0,n=e&&ht(e.error)?e.error:void 0,r=typeof t=="string"?t.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,s=(ke(e?.type)??ke(e?.code)??ke(e?.error_type)??ke(n?.type)??ke(n?.code)??ke(n?.error_type)??ke(r)??"TOOL_ERROR").slice(0,60),o=Ql(t).message.slice(0,250);return ep({type:s,message:o})??"Antigravity reported a tool error."}function Xl(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function Yl(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var ka,Zk,eT,ya,tT,Sa,ba=D(()=>{h();An();Jl();na();rs();vn();os();uo();ka="antigravity",Zk=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),eT=new Set(["--conversation","--resume","--continue"]),ya=18e4,tT=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"]);Sa={command:"agy",maxInitialInputBytes:ya,meta:{displayName:"Antigravity",models:gl(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=ts(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){aT(t);let{model:r,effort:s}=un(e.model),o=ua(r),i=o.model,a=e.effort??s??o.effort,u=sT(i,a),c=e.additionalArgs??[],p=rT(nT(c,new Set(["--input-format","--output-format"]))),l=i&&!ko(c,"--model")?["--model",i]:[],g=ko(c,"--effort")?[]:Al(u),_=ko(c,"--mode")||ko(c,"--dangerously-skip-permissions")?[]:Il(e.mode),m=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...l,...g,..._,...m,...p],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
53
53
  `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(t){let e=Nn(t),n=Ro(e)?.event,r=To(e);if(r)throw r;let s=n?wo(n):void 0;if(s){if(s.status!=="SUCCESS")throw Ea("Antigravity returned a result with an unsupported status.");if(typeof s.response!="string")throw Ea("Antigravity returned a successful result without a response string.");if(!s.response.trim())throw Ta();return s.response}if(e.length>0)throw Ta();let o=t.trim();if(!o)throw Ta();return o},extractPartialText(t){let e=Nn(t),n=Ro(e)?.event;if(!n||n.kind==="agy_error")return;let r=wo(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(t,e,n){let r=Nn(n??""),s=To(r);return s||(t!==0&&e.trim()?yo(e):null)},parseResultMeta(t){let e=Nn(t),n=0,r=0,s=0,o=0,i=new Set;for(let u of e){if(u.kind!=="step_update"||u.step.state!=="DONE"||!ht(u.step.usage))continue;let c=wa(u),p=Ra(u);if(!c||!Number.isSafeInteger(p))continue;let l=JSON.stringify([c,p]);if(i.has(l))continue;let g=u.step.usage,_=Qt(g.input_tokens),m=Qt(g.output_tokens);_===void 0||m===void 0||(i.add(l),n+=_,r+=m,s+=Qt(g.cache_read_tokens)??0,o+=1);}return {usage:o===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:s,costUsd:0,complete:dT(e)},model:null}},parseEvent(t,e,n){let r=ts(t);if(!r)return [];let s=e??new Date().toISOString();if(r.kind==="agy_error")return [Yl(s,yo(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let _=To([r]);return _?[Yl(s,_)]:[]}if(r.kind!=="step_update")return [];let{step:o}=r,i=wa(r)??"unknown",a=Ra(r),u=`${i}:${a}`;if((o.state==="DONE"||o.state==="ERROR")&&Xl(n,`antigravity:terminal:${u}`))return [];if(o.step_type==="agent_response")return typeof o.text_delta=="string"&&o.text_delta.length>0?[{timestamp:s,type:"text",content:o.text_delta}]:[];if(o.step_type!=="tool")return [];let c=ht(o.tool_info)?o.tool_info:void 0,p=fT(o,c);if(!p)return [];let l=pT(o);if(o.state==="ACTIVE"){if(Xl(n,`antigravity:active:${u}`))return [];let _=Zl(c?.parameters);return [{timestamp:s,type:"tool_use",toolName:p,toolUseId:l,..._===void 0?{}:{toolInput:_}}]}let g=o.state==="ERROR"?gT(c?.error):ep(c?.output);return [{timestamp:s,type:"tool_result",toolName:p,toolUseId:l,...g===void 0?{}:{resultPreview:g},...o.state==="ERROR"?{isError:true}:{}}]}};});var tp=D(()=>{h();dr();cr();ur();Cn();});function _r(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function hr(t){return _r(t)?t:void 0}function Ye(t){return typeof t=="string"?t:void 0}function Ln(t){let e=typeof t=="number"?t:Number(t??0);return Number.isFinite(e)?e:0}function TT(t){let e=[],n=-1,r=0,s=false,o=false;for(let i=0;i<t.length;i+=1){let a=t[i];if(n===-1){(a==="{"||a==="[")&&(n=i,r=1);continue}if(o){o=false;continue}if(a==="\\"&&s){o=true;continue}if(a==='"'){s=!s;continue}s||(a==="{"||a==="["?r+=1:(a==="}"||a==="]")&&(r-=1,r===0&&(e.push(t.slice(n,i+1)),n=-1)));}return n!==-1&&e.push(t.slice(n)),e}function as(t){let e=t.trim();if(!e)return [];try{let n=JSON.parse(e);return _r(n)?[n]:[]}catch{return TT(e).flatMap(n=>{try{let r=JSON.parse(n);return _r(r)?[r]:[]}catch{return []}})}}function ip(t){let e=JSON.stringify(t);return e===void 0?String(t):e}function xn(t){if(typeof t=="string")return t;if(Array.isArray(t)){let e=t.map(xn).filter(n=>n!==void 0);return e.length>0?e.join(`
54
54
  `):void 0}if(_r(t)){if(typeof t.text=="string")return t.text;if(typeof t.message=="string")return t.message;if(typeof t.error=="string")return t.error;if(t.type==="text"&&typeof t.data=="string")return t.data;for(let e of ["content","FileContent","rawOutput"]){let n=xn(t[e]);if(n!==void 0)return n}}}function yT(t){let e=i=>Array.isArray(i)&&i.every(a=>Number.isInteger(a)&&a>=0&&a<=255),n=i=>typeof i=="string"&&i.trim().length>0?i:void 0,r=i=>new TextDecoder("utf-8",{fatal:false}).decode(Uint8Array.from(i)),s=i=>{let a=JSON.stringify(i,(u,c)=>e(c)?`<bytes:${c.length}>`:c);return a===void 0?String(i):a},o=t.rawOutput;if(o!=null){let i=hr(o);if(!i)return n(xn(o))??s(o);let a;if(e(i.output)&&i.output.length>0&&(a=n(r(i.output))),!a&&e(i.stdout)&&i.stdout.length>0&&(a=n(r(i.stdout))),!a){let p=hr(i.Result);a=n(i.output)??n(p?.output)??n(xn(o));}let u=e(i.stderr)&&i.stderr.length>0?r(i.stderr):void 0;if(u!==void 0)if(a){let p=a.endsWith(`
55
55
  `)||a.endsWith("\r")?"":`
package/dist/index.js CHANGED
@@ -18,7 +18,7 @@
18
18
  `);for(let r of t)if(r.trim())try{let o=JSON.parse(r);if(o.type==="result"){let i=o.usage,s=i?{inputTokens:Number(i.input_tokens??0)+Number(i.cache_read_input_tokens??0),outputTokens:Number(i.output_tokens??0),cachedInputTokens:Number(i.cache_read_input_tokens??0),costUsd:Number(o.total_cost_usd??0)}:null,a=o.modelUsage,d=a?Object.keys(a)[0]??null:null;return {usage:s,model:d}}}catch{}let n=XO(e);return n?{usage:{inputTokens:n.inputTokens,outputTokens:0,cachedInputTokens:n.cachedInputTokens,costUsd:0},model:n.model??null}:{usage:null,model:null}},parseEvent(e,t){let n;try{n=JSON.parse(e);}catch{return []}let r=n.type;if(!r)return [];let o=Dr(n,t??new Date().toISOString()),i=RJ(n);if(i)return [{timestamp:o,type:"error",content:i,errorMessage:i}];let s=n.output_file,a=n.summary;if(r==="system"&&n.subtype==="task_notification"&&n.status==="completed"&&typeof s=="string"&&s.trim().length>0&&typeof a=="string"&&a.trim().length>0)return [{timestamp:o,type:"text",content:a}];if(r!=="assistant"&&r!=="user")return [];let c=n.message?.content;if(!Array.isArray(c))return [];let l=[];for(let u of c){let p=CJ(o,u);p&&l.push(p);}return l},suppressOutputLine(e){let t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return false;try{let r=JSON.parse(t).type;return r?EJ.has(r):!1}catch{return false}}};SN=200;});function CN(e){let t=e.split(`
19
19
  `).filter(o=>o.trim()),n=[],r=null;for(let o of t)try{let i=JSON.parse(o);if(i.type==="assistant.message"&&typeof i.data?.content=="string"){let s=i.data.content;s.trim()&&n.push(s.trim());}i.type==="result"&&typeof i.result=="string"&&(r=i.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}var PJ;exports.copilotAdapter=void 0;var KT=U(()=>{m();jd();Ud();Ml();Ul();ya();zr();Td();_a();PJ=new Set(["interactive","plan","autopilot"]);exports.copilotAdapter={command:"copilot",meta:{displayName:"Copilot",models:TT()},buildArgs(e,t,n){let r=t.additionalArgs?[...t.additionalArgs]:[];return t.model&&r.push("--model",t.model),t.mode&&PJ.has(t.mode)&&r.push("--mode",t.mode),t.effort&&(exports.PROVIDER_ARGV_EFFORTS.copilot??[]).includes(t.effort)&&r.push("--effort",t.effort),{args:r,stdinMessage:e}},extractText(e){let t=CN(e);if(t)return t;let n=e.trim();return To(n,"copilot")?"":n},extractPartialText(e){return CN(e)},parseResultMeta(e){let t=ms(e);return t?{usage:{inputTokens:t.inputTokens,outputTokens:t.outputTokens,cachedInputTokens:t.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(e,t){let n;try{n=JSON.parse(e);}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 i=Dr(n,t??new Date().toISOString()),s=o.toolCallId;if(r==="tool.execution_start"){let a=String(o.toolName||""),d=o.arguments,c=wo(d);return (a==="bash"||a==="Bash")&&Wo(c)?[Go(i,c,s)]:[{timestamp:i,type:"tool_use",toolName:a,toolInput:c,...s&&{toolUseId:s}}]}if(r==="tool.execution_complete"){let a=o.error;if(a)return [{timestamp:i,type:"tool_result",...s&&{toolUseId:s},...Yr(String(a.message||""),true)}];let d=o.result,c=String(d?.content||"");return [{timestamp:i,type:"tool_result",...s&&{toolUseId:s},...Yr(c,false)}]}if(r==="assistant.message"){let a=String(o.content||"");return a?[{timestamp:i,type:"text",content:a}]:[]}return []}};});function xJ(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 DJ(e){return e[0]==="exec"?e.slice(1):e}function PN(e){let t=e.split(`
20
20
  `).map(o=>o.trim()).filter(Boolean),n=[],r=null;for(let o of t)try{let i=JSON.parse(o);if(i.type==="item.completed"&&(i.item?.type==="message"||i.item?.type==="agent_message")&&typeof i.item?.text=="string"){let s=i.item.text;s.trim()&&n.push(s.trim());}i.type==="result"&&typeof i.result=="string"&&(r=i.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}function Aa(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function NN(e){return e.type==="turn.failed"?true:e.type!=="error"?false:typeof e.message=="string"||typeof e.errorMessage=="string"||typeof e.error=="string"||Aa(e.error)}function xN(e){let t=Aa(e.error)?e.error:void 0,n=[e.message,e.errorMessage,t?.message,t?.detail,typeof e.error=="string"?e.error:void 0];for(let r of n)if(typeof r=="string"&&r.trim())return r;return e.type==="turn.failed"?"Codex turn failed.":"Codex CLI reported an error."}function LJ(e){for(let t of e.split(/\r?\n/)){if(!t.trim())continue;let n;try{n=JSON.parse(t);}catch{continue}if(Aa(n)&&NN(n))return xN(n)}}function ON(e,t,n,r){if(!n||e.type!=="command_execution"&&e.type!=="mcp_tool_call"||typeof e.id!="string"||!e.id.trim()||e.type==="mcp_tool_call"&&t==="item.started"&&(typeof e.server!="string"||typeof e.tool!="string"))return;let o=n.state.get("codex.pending");o||(o=new Map,n.state.set("codex.pending",o));let i=JSON.stringify([e.type,e.id]);if(t==="item.started"){let d=`codex:${JSON.stringify(e.id)}#${n.rowIndex}:${r}`,c=o.get(i)??[];return c.push(d),o.set(i,c),d}let s=o.get(i),a=s?.pop();return s?.length||o.delete(i),a}function MJ(e,t,n){let r=t.type;if(r==="command_execution"){let o=String(t.command||"");return Wo(o)?[Go(e,o,n)]:[{timestamp:e,type:"tool_use",toolName:"Bash",toolInput:o,...n?{toolUseId:n}:{}}]}return r==="mcp_tool_call"?typeof t.server!="string"||typeof t.tool!="string"?[]:[{timestamp:e,type:"tool_use",toolName:`${t.server}/${t.tool}`,toolInput:wo(t.arguments),...n?{toolUseId:n}:{}}]:[]}function UJ(e,t,n){let r=t.type;if(r==="message"||r==="text"){let o=t.content;if(Array.isArray(o))for(let i of o){let s=BJ(e,i);if(s)return s}if(typeof t.text=="string")return {timestamp:e,type:"text",content:t.text}}if(r==="agent_message"&&typeof t.text=="string")return {timestamp:e,type:"text",content:t.text};if(r==="reasoning"){let o=typeof t.text=="string"?t.text.trim():"";return o?{timestamp:e,type:"thinking",content:o}:null}if(r==="command_execution"){let o=String(t.aggregated_output||t.output||""),i=!!t.is_error;return {timestamp:e,type:"tool_result",...Yr(o,i),...n?{toolUseId:n}:{}}}if(r==="mcp_tool_call"){let o=Aa(t.result)?t.result:void 0,s=(Array.isArray(o?.content)?o.content:[]).filter(d=>Aa(d)&&d.type==="text"&&typeof d.text=="string").map(d=>d.text).join(`
21
- `),a=typeof t.error=="string"?t.error:Aa(t.error)&&typeof t.error.message=="string"?t.error.message:"";return {timestamp:e,type:"tool_result",resultPreview:s||a,isError:t.status==="failed"||t.status==="error"||t.is_error===true||t.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let o=String(t.name||t.tool_name||""),i=t.input,s=wo(i);return o==="Bash"&&Wo(s)?Go(e,s):{timestamp:e,type:"tool_use",toolName:o,toolInput:s}}if(r==="tool_result"){let o=!!t.is_error,i=String(t.output||t.content||"");return {timestamp:e,type:"tool_result",...Yr(i,o)}}if(r==="web_search"){let o=t.action,i;if(o?.type==="search"){let s=o.queries;i=String(o.query||"")||(s?.length?s.join(", "):"")||String(t.query||"");}else i=t.query?"open: "+String(t.query):"";return !i&&!(Aa(o)&&o.type==="other"&&t.query==="")?null:{timestamp:e,type:"tool_use",toolName:"WebSearch",toolInput:i}}if(r==="file_change"){let o=t.changes;if(!Array.isArray(o)||o.length===0)return null;let i=o.map(a=>String(a.path||"")).filter(Boolean);if(i.length===0)return null;let s=i.length===1?i[0]:`${i.slice(0,2).join(", ")}${i.length>2?` (+${i.length-2})`:""}`;return {timestamp:e,type:"tool_use",toolName:"Edit",toolInput:s}}return null}function BJ(e,t){let n=t.type;if(n==="text")return {timestamp:e,type:"text",content:String(t.text||"")};if(n==="tool_use"){let r=String(t.name||""),o=t.input,i=wo(o);return r==="Bash"&&Wo(i)?Go(e,i):{timestamp:e,type:"tool_use",toolName:r,toolInput:i}}return null}var OJ,NJ;exports.codexAdapter=void 0;var XT=U(()=>{m();ys();jd();Ud();Ml();Ul();$T();ya();Bl();zr();_a();OJ=new Set(["turn.started","turn.completed","item.updated"]),NJ="cli/codex";exports.codexAdapter={command:"codex",meta:{displayName:"Codex",models:ET(),capabilities:{resume:true}},buildArgs(e,t,n){let{model:r,effort:o}=Oi(t.model),i=t.effort??o,s=t.resumeSessionId?pN(t.mode):uN(t.mode),a=fN(i),d=r?["-m",r]:[],c=DJ(t.additionalArgs??[]),u=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return t.resumeSessionId?{args:["exec","resume",...u,...s,...a,...d,...c,t.resumeSessionId,"-"],stdinMessage:e}:{args:["exec",...u,...s,...a,...d,...c],stdinMessage:e}},extractText(e){let t=LJ(e);if(t)throw new exports.ProviderError(t,NJ);let n=PN(e);if(n)return n;let r=e.trim();return To(r,"codex")?"":r},extractPartialText(e){return PN(e)},parseResultMeta(e){let t=ms(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;try{JSON.parse(e),i=[e];}catch{i=xJ(e),i.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[s,a]of i.entries()){let d;try{d=JSON.parse(a);}catch{continue}if(!Aa(d))continue;let c=d.type;if(!c)continue;let l=Dr(d,r);if(NN(d)){let p=xN(d);o.push({timestamp:l,type:"error",content:p,errorMessage:p});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||Dm(d))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let u=d.item;if(u){if(c==="item.started"){o.push(...MJ(l,u,ON(u,c,n,s)));continue}if(c==="item.completed"){let p=UJ(l,u,ON(u,c,n,s));p&&o.push(p);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?OJ.has(r):!1}catch{return false}}};});function jJ(e){return e?HJ[e]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Wm(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function BN(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 $l(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function $J(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);$l(s)?t.push(s):n=!0;continue}catch{}let i=BN(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);$l(a)?t.push(a):n=!0;}catch{n=true;}}return {events:t,malformed:n}}function Vd(e){if(typeof e!="string")return;let t=e.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(t)return t.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,UN).trim()}function FN(e){let t=$l(e.error)?e.error:void 0,n=t&&$l(t.data)?t.data:void 0,r=Vd(t?.name),o=Vd(n?.message)??Vd(t?.message)??Vd(e.message)??Vd(e.errorMessage)??Vd(e.error),i=Vd(e.ref),s=r&&o&&r!==o?`${r}: ${o}`:r??o??MN;return (i?`${s} (ref: ${i})`:s).slice(0,UN)}function DN(e){let t=$J(e),n=[],r=null,o=0,i=[],s,a=false;for(let d of t.events){let c=typeof d.type=="string"?d.type:void 0;if(c){if(c==="text"){let l=$l(d.part)?d.part:void 0,u=typeof l?.text=="string"?l.text:void 0;u?.trim()&&n.push(u.trim());continue}if(c==="result"){typeof d.result=="string"&&(r=d.result);continue}if(c==="tool_use"){o++;continue}if(c==="error"){i.push(FN(d));continue}if(c==="step_finish"){a=true;let l=$l(d.part)?d.part:void 0;s=typeof l?.reason=="string"?l.reason:void 0;}}}return {...t,texts:n,resultText:r,toolUseCount:o,errorMessages:i,terminalReason:s,hasTerminal:a}}function HN(e){return (e??"unknown").trim().toLowerCase().replace(/_/g,"-")}function Gm(){return new exports.ProviderError("OpenCode returned no assistant output.",jl,{code:"EMPTY_OUTPUT",kind:"transient"})}function VJ(){return new exports.ProviderError("OpenCode emitted malformed JSON output.",jl,{code:"PROVIDER_CRASHED",kind:"transient"})}function LN(e,t){switch(HN(e)){case "length":return new exports.ProviderError("OpenCode stopped because the context window was exceeded.",jl,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new exports.ProviderError("OpenCode stopped because the content filter blocked the response.",jl,{code:"UNKNOWN",kind:"permanent"});case "error":return new exports.ProviderError(t?`OpenCode error: ${t}`:`${MN} while generating a response.`,jl,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var FJ,jl,MN,UN,HJ;exports.opencodeAdapter=void 0;var YT=U(()=>{m();ys();Ud();Ul();_a();FJ=new Set(["step_start","step_finish"]),jl="cli/opencode",MN="OpenCode provider error",UN=240,HJ={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};exports.opencodeAdapter={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(e,t,n){let r=t.additionalArgs,o=r!==void 0?[...r]:["run"];Wm(o,"--format")||o.push("--format","json"),t.resumeSessionId&&!o.includes("-s")&&!o.includes("--session")&&o.push("-s",t.resumeSessionId);let{agent:i,autoApprove:s}=jJ(t.mode);Wm(o,"--agent")||i!==void 0&&o.push("--agent",i),s&&!Wm(o,"--auto")&&o.push("--auto"),t.effort!==void 0&&!Wm(o,"--variant")&&o.push("--variant",t.effort),t.model&&o.push("--model",t.model);let a;return !n&&!s&&!t.env?.OPENCODE_PERMISSION&&(a={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:o,stdinMessage:e,env:a}},extractText(e){let t=DN(e),n=t.errorMessages[0];if(n){let s=LN("error",n);if(s)throw s}let r=LN(t.terminalReason??"",void 0);if(r)throw r;let o=t.texts.length>0?t.texts[t.texts.length-1]:void 0;if(o!==void 0){if(!t.hasTerminal)throw Gm();return o}if(t.resultText?.trim()){if(!t.hasTerminal)throw Gm();return t.resultText}if(t.malformed)throw VJ();if(!t.hasTerminal)throw Gm();let i=HN(t.terminalReason);if((i==="stop"||i==="tool-calls")&&t.toolUseCount>0)return "";throw Gm()},interpretExit(e,t,n=""){if(e===0)return null;let o=DN(n).errorMessages[0];return o?new exports.ProviderError(`OpenCode error: ${o}`,jl,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(e){let t=ms(e);return t?{usage:{inputTokens:t.inputTokens,outputTokens:t.outputTokens,cachedInputTokens:t.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(e,t){let n=t??new Date().toISOString(),r=[],o;try{JSON.parse(e),o=[e];}catch{o=BN(e),o.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let i of o){let s;try{s=JSON.parse(i);}catch{continue}let a=Dr(s,n),d=s.type;if(d){if(d==="text"){let l=s.part?.text;l&&r.push({timestamp:a,type:"text",content:l});continue}if(d==="tool_use"){let c=s.part;if(!c)continue;let l=String(c.tool||""),u=String(c.callID||""),p=c.state,f=String(p?.status||""),g=p?.input,y=wo(g);if(r.push({timestamp:a,type:"tool_use",toolName:l,toolUseId:u,toolInput:y}),f==="completed"&&p?.output!==void 0){let _=p.output,A=typeof _=="string"?_:JSON.stringify(_);r.push({timestamp:a,type:"tool_result",toolUseId:u,resultPreview:A,isError:false});}else f==="error"&&r.push({timestamp:a,type:"tool_result",toolUseId:u,resultPreview:String(p?.error||"tool error"),isError:true});continue}if(d==="error"){let c=FN(s);r.push({timestamp:a,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(e){let t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return false;try{let r=JSON.parse(t).type;return r?FJ.has(r):!1}catch{return false}}};});function jN(e,t){if(e===void 0||e==="")return t;let n=parseInt(e,10);return Number.isNaN(n)?t:n}function QT(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 $N(e=process.env){return {queryMs:jN(e.CREWX_TIMEOUT_QUERY,288e5),executeMs:jN(e.CREWX_TIMEOUT_EXECUTE,288e5),idleMs:QT(e)??6e5}}var lf=U(()=>{m();});function Jm(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function zJ(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 JJ(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(!WJ.has(i)){t.push(r);continue}r===i&&n+1<e.length&&!e[n+1].startsWith("-")&&(n+=1);}return t}function ko(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function KJ(e,t){if(!(e?qJ.has(e)||jo(ZT).some(i=>i.id===e):false)||!e)return t;let r=Vo(ZT,e),o=Tl(ZT)[e]?.defaultEffort;if(r.length!==0)return t?r.includes(t)?t:o&&r.includes(o)?o:void 0:o}function _s(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>=0?e:void 0}function nw(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 rw(e){return e.step.step_index}function en(e){if(typeof e!="string")return;let t=e.split(/\r?\n/,1)[0]?.trim();return t&&Hd(t)?.slice(0,500).trim()||void 0}function XJ(e,t){let n=(e??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&GJ.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|argument)/].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 YJ(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 WN(e){let t=ko(e)?e:void 0,n=t&&ko(t.error)?t.error:void 0,r=t?en(t.code)??en(t.error_code)??en(n?.code)??en(n?.error_code):void 0,o=typeof e=="string"?en(e):t?en(t.message)??en(t.error)??en(t.reason)??en(n?.message)??en(n?.error)??en(n?.reason):void 0,i=XJ(r,o),s=t?_s(t.retry_after_ms)??_s(t.retryAfterMs)??_s(n?.retry_after_ms)??_s(n?.retryAfterMs):void 0;return {code:i,kind:YJ(i),message:o??"Antigravity reported a terminal error.",...s===void 0?{}:{retryAfterMs:s}}}function Xm(e){let t=WN(e);return new exports.ProviderError(t.message,"cli/antigravity",{code:t.code,kind:t.kind,...t.retryAfterMs===void 0?{}:{retryAfterMs:t.retryAfterMs}})}function ow(e){return new exports.ProviderError(e,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function QJ(e){let t=new TextEncoder().encode(e).byteLength;if(!(t<=tw))throw new exports.ProviderError(`Input is too large: final provider initial input is ${t} UTF-8 bytes; budget is ${tw} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function ew(){return new exports.ProviderError("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 Ym(e){if(e.kind==="result"||e.kind==="legacy_result")return e.result}function Qm(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 ZJ(e){let t=Qm(e);if(!t||t.event.kind==="agy_error"||t.index!==e.length-1||Ym(t.event)?.status!=="SUCCESS"||Km(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=nw(o),s=rw(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"||!ko(o.usage)||_s(o.usage.input_tokens)===void 0||_s(o.usage.output_tokens)===void 0)return false;return true}function eK(e,t){for(let n=t-1;n>=0;n-=1){let r=e[n];if(r?.kind==="agy_error")return r.error}}function tK(e,t){return ko(e)&&ko(t)?{...t,...e}:ko(e)&&typeof t=="string"?{...e,message:t}:typeof e=="string"&&ko(t)?{...t,message:e}:e??t}function nK(e){let t=Array.isArray(e.denied_actions)?e.denied_actions:[],n=[];for(let i of t){let s=ko(i)?i:void 0,a=typeof i=="string"?en(i):en(s?.display_name)??en(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 exports.ProviderError(`Permission denied: Antigravity blocked ${t.length} requested action${t.length===1?"":"s"}${o}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Km(e){let t=Qm(e);if(!t)return;if(t.event.kind==="agy_error")return Xm(t.event.error);let n=Ym(t.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return nK(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return ow("Antigravity returned a result with an unsupported status.");let r=n.error,o=tK(r==null||r===""?n:r,eK(e,t.index));return Xm(o)}function GN(e){if(typeof e=="string")return e;if(e!=null)try{return JSON.stringify(e)}catch{return}}function rK(e){return `agy:${String(e.conversation_id)}:${String(e.step_index)}`}function oK(e,t){let n=typeof t?.name=="string"?t.name:e.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function zN(e){let t=GN(e);if(t)return t.length<=2e3?t:`${t.slice(0,1999)}\u2026`}function iK(e){let t=ko(e)?e:void 0,n=t&&ko(t.error)?t.error:void 0,r=typeof e=="string"?e.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,o=(en(t?.type)??en(t?.code)??en(t?.error_type)??en(n?.type)??en(n?.code)??en(n?.error_type)??en(r)??"TOOL_ERROR").slice(0,60),i=WN(e).message.slice(0,250);return zN({type:o,message:i})??"Antigravity reported a tool error."}function VN(e,t){return e?e.state.has(t)?true:(e.state.set(t,true),false):false}function qN(e,t){return {timestamp:e,type:"error",content:t.message,errorMessage:t.message,isError:true}}var ZT,qJ,WJ,tw,GJ,iw,sw=U(()=>{m();ys();lf();af();la();zr();Bl();Lm();ZT="antigravity",qJ=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),WJ=new Set(["--conversation","--resume","--continue"]),tw=18e4,GJ=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"]);iw={command:"agy",maxInitialInputBytes:tw,meta:{displayName:"Antigravity",models:wT(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(e){let t=xl(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){QJ(e);let{model:r,effort:o}=Oi(t.model),i=Il(r),s=i.model,a=t.effort??o??i.effort,d=KJ(s,a),c=t.additionalArgs??[],l=JJ(zJ(c,new Set(["--input-format","--output-format"]))),u=s&&!Jm(c,"--model")?["--model",s]:[],p=Jm(c,"--effort")?[]:EN(d),f=Jm(c,"--mode")||Jm(c,"--dangerously-skip-permissions")?[]:IN(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}})}
21
+ `),a=typeof t.error=="string"?t.error:Aa(t.error)&&typeof t.error.message=="string"?t.error.message:"";return {timestamp:e,type:"tool_result",resultPreview:s||a,isError:t.status==="failed"||t.status==="error"||t.is_error===true||t.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let o=String(t.name||t.tool_name||""),i=t.input,s=wo(i);return o==="Bash"&&Wo(s)?Go(e,s):{timestamp:e,type:"tool_use",toolName:o,toolInput:s}}if(r==="tool_result"){let o=!!t.is_error,i=String(t.output||t.content||"");return {timestamp:e,type:"tool_result",...Yr(i,o)}}if(r==="web_search"){let o=t.action,i;if(o?.type==="search"){let s=o.queries;i=String(o.query||"")||(s?.length?s.join(", "):"")||String(t.query||"");}else i=t.query?"open: "+String(t.query):"";return !i&&!(Aa(o)&&o.type==="other"&&t.query==="")?null:{timestamp:e,type:"tool_use",toolName:"WebSearch",toolInput:i}}if(r==="file_change"){let o=t.changes;if(!Array.isArray(o)||o.length===0)return null;let i=o.map(a=>String(a.path||"")).filter(Boolean);if(i.length===0)return null;let s=i.length===1?i[0]:`${i.slice(0,2).join(", ")}${i.length>2?` (+${i.length-2})`:""}`;return {timestamp:e,type:"tool_use",toolName:"Edit",toolInput:s}}return null}function BJ(e,t){let n=t.type;if(n==="text")return {timestamp:e,type:"text",content:String(t.text||"")};if(n==="tool_use"){let r=String(t.name||""),o=t.input,i=wo(o);return r==="Bash"&&Wo(i)?Go(e,i):{timestamp:e,type:"tool_use",toolName:r,toolInput:i}}return null}var OJ,NJ;exports.codexAdapter=void 0;var XT=U(()=>{m();ys();jd();Ud();Ml();Ul();$T();ya();Bl();zr();_a();OJ=new Set(["turn.started","turn.completed","item.updated"]),NJ="cli/codex";exports.codexAdapter={command:"codex",meta:{displayName:"Codex",models:ET(),capabilities:{resume:true}},buildArgs(e,t,n){let{model:r,effort:o}=Oi(t.model),i=t.effort??o,s=t.resumeSessionId?pN(t.mode):uN(t.mode),a=fN(i),d=r?["-m",r]:[],c=DJ(t.additionalArgs??[]),u=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return t.resumeSessionId?{args:["exec","resume",...u,...s,...a,...d,...c,t.resumeSessionId,"-"],stdinMessage:e}:{args:["exec",...u,...s,...a,...d,...c],stdinMessage:e}},extractText(e){let t=LJ(e);if(t)throw new exports.ProviderError(t,NJ);let n=PN(e);if(n)return n;let r=e.trim();return To(r,"codex")?"":r},extractPartialText(e){return PN(e)},parseResultMeta(e){let t=ms(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;try{JSON.parse(e),i=[e];}catch{i=xJ(e),i.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[s,a]of i.entries()){let d;try{d=JSON.parse(a);}catch{continue}if(!Aa(d))continue;let c=d.type;if(!c)continue;let l=Dr(d,r);if(NN(d)){let p=xN(d);o.push({timestamp:l,type:"error",content:p,errorMessage:p});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||Dm(d))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let u=d.item;if(u){if(c==="item.started"){o.push(...MJ(l,u,ON(u,c,n,s)));continue}if(c==="item.completed"){let p=UJ(l,u,ON(u,c,n,s));p&&o.push(p);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?OJ.has(r):!1}catch{return false}}};});function jJ(e){return e?HJ[e]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Wm(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function BN(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 $l(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function $J(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);$l(s)?t.push(s):n=!0;continue}catch{}let i=BN(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);$l(a)?t.push(a):n=!0;}catch{n=true;}}return {events:t,malformed:n}}function Vd(e){if(typeof e!="string")return;let t=e.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(t)return t.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,UN).trim()}function FN(e){let t=$l(e.error)?e.error:void 0,n=t&&$l(t.data)?t.data:void 0,r=Vd(t?.name),o=Vd(n?.message)??Vd(t?.message)??Vd(e.message)??Vd(e.errorMessage)??Vd(e.error),i=Vd(e.ref),s=r&&o&&r!==o?`${r}: ${o}`:r??o??MN;return (i?`${s} (ref: ${i})`:s).slice(0,UN)}function DN(e){let t=$J(e),n=[],r=null,o=0,i=[],s,a=false;for(let d of t.events){let c=typeof d.type=="string"?d.type:void 0;if(c){if(c==="text"){let l=$l(d.part)?d.part:void 0,u=typeof l?.text=="string"?l.text:void 0;u?.trim()&&n.push(u.trim());continue}if(c==="result"){typeof d.result=="string"&&(r=d.result);continue}if(c==="tool_use"){o++;continue}if(c==="error"){i.push(FN(d));continue}if(c==="step_finish"){a=true;let l=$l(d.part)?d.part:void 0;s=typeof l?.reason=="string"?l.reason:void 0;}}}return {...t,texts:n,resultText:r,toolUseCount:o,errorMessages:i,terminalReason:s,hasTerminal:a}}function HN(e){return (e??"unknown").trim().toLowerCase().replace(/_/g,"-")}function Gm(){return new exports.ProviderError("OpenCode returned no assistant output.",jl,{code:"EMPTY_OUTPUT",kind:"transient"})}function VJ(){return new exports.ProviderError("OpenCode emitted malformed JSON output.",jl,{code:"PROVIDER_CRASHED",kind:"transient"})}function LN(e,t){switch(HN(e)){case "length":return new exports.ProviderError("OpenCode stopped because the context window was exceeded.",jl,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new exports.ProviderError("OpenCode stopped because the content filter blocked the response.",jl,{code:"UNKNOWN",kind:"permanent"});case "error":return new exports.ProviderError(t?`OpenCode error: ${t}`:`${MN} while generating a response.`,jl,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var FJ,jl,MN,UN,HJ;exports.opencodeAdapter=void 0;var YT=U(()=>{m();ys();Ud();Ul();_a();FJ=new Set(["step_start","step_finish"]),jl="cli/opencode",MN="OpenCode provider error",UN=240,HJ={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};exports.opencodeAdapter={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(e,t,n){let r=t.additionalArgs,o=r!==void 0?[...r]:["run"];Wm(o,"--format")||o.push("--format","json"),t.resumeSessionId&&!o.includes("-s")&&!o.includes("--session")&&o.push("-s",t.resumeSessionId);let{agent:i,autoApprove:s}=jJ(t.mode);Wm(o,"--agent")||i!==void 0&&o.push("--agent",i),s&&!Wm(o,"--auto")&&o.push("--auto"),t.effort!==void 0&&!Wm(o,"--variant")&&o.push("--variant",t.effort),t.model&&o.push("--model",t.model);let a;return !n&&!s&&!t.env?.OPENCODE_PERMISSION&&(a={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:o,stdinMessage:e,env:a}},extractText(e){let t=DN(e),n=t.errorMessages[0];if(n){let s=LN("error",n);if(s)throw s}let r=LN(t.terminalReason??"",void 0);if(r)throw r;let o=t.texts.length>0?t.texts[t.texts.length-1]:void 0;if(o!==void 0){if(!t.hasTerminal)throw Gm();return o}if(t.resultText?.trim()){if(!t.hasTerminal)throw Gm();return t.resultText}if(t.malformed)throw VJ();if(!t.hasTerminal)throw Gm();let i=HN(t.terminalReason);if((i==="stop"||i==="tool-calls")&&t.toolUseCount>0)return "";throw Gm()},interpretExit(e,t,n=""){if(e===0)return null;let o=DN(n).errorMessages[0];return o?new exports.ProviderError(`OpenCode error: ${o}`,jl,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(e){let t=ms(e);return t?{usage:{inputTokens:t.inputTokens,outputTokens:t.outputTokens,cachedInputTokens:t.cachedInputTokens,costUsd:0},model:null}:{usage:null,model:null}},parseEvent(e,t){let n=t??new Date().toISOString(),r=[],o;try{JSON.parse(e),o=[e];}catch{o=BN(e),o.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let i of o){let s;try{s=JSON.parse(i);}catch{continue}let a=Dr(s,n),d=s.type;if(d){if(d==="text"){let l=s.part?.text;l&&r.push({timestamp:a,type:"text",content:l});continue}if(d==="tool_use"){let c=s.part;if(!c)continue;let l=String(c.tool||""),u=String(c.callID||""),p=c.state,f=String(p?.status||""),g=p?.input,y=wo(g);if(r.push({timestamp:a,type:"tool_use",toolName:l,toolUseId:u,toolInput:y}),f==="completed"&&p?.output!==void 0){let _=p.output,A=typeof _=="string"?_:JSON.stringify(_);r.push({timestamp:a,type:"tool_result",toolUseId:u,resultPreview:A,isError:false});}else f==="error"&&r.push({timestamp:a,type:"tool_result",toolUseId:u,resultPreview:String(p?.error||"tool error"),isError:true});continue}if(d==="error"){let c=FN(s);r.push({timestamp:a,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(e){let t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return false;try{let r=JSON.parse(t).type;return r?FJ.has(r):!1}catch{return false}}};});function jN(e,t){if(e===void 0||e==="")return t;let n=parseInt(e,10);return Number.isNaN(n)?t:n}function QT(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 $N(e=process.env){return {queryMs:jN(e.CREWX_TIMEOUT_QUERY,288e5),executeMs:jN(e.CREWX_TIMEOUT_EXECUTE,288e5),idleMs:QT(e)??6e5}}var lf=U(()=>{m();});function Jm(e,t){return e.some(n=>n===t||n.startsWith(`${t}=`))}function zJ(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 JJ(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(!WJ.has(i)){t.push(r);continue}r===i&&n+1<e.length&&!e[n+1].startsWith("-")&&(n+=1);}return t}function ko(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function KJ(e,t){if(!(e?qJ.has(e)||jo(ZT).some(i=>i.id===e):false)||!e)return t;let r=Vo(ZT,e),o=Tl(ZT)[e]?.defaultEffort;if(r.length!==0)return t?r.includes(t)?t:o&&r.includes(o)?o:void 0:o}function _s(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>=0?e:void 0}function nw(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 rw(e){return e.step.step_index}function en(e){if(typeof e!="string")return;let t=e.split(/\r?\n/,1)[0]?.trim();return t&&Hd(t)?.slice(0,500).trim()||void 0}function XJ(e,t){let n=(e??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&GJ.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 YJ(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 WN(e){let t=ko(e)?e:void 0,n=t&&ko(t.error)?t.error:void 0,r=t?en(t.code)??en(t.error_code)??en(n?.code)??en(n?.error_code):void 0,o=typeof e=="string"?en(e):t?en(t.message)??en(t.error)??en(t.reason)??en(n?.message)??en(n?.error)??en(n?.reason):void 0,i=XJ(r,o),s=t?_s(t.retry_after_ms)??_s(t.retryAfterMs)??_s(n?.retry_after_ms)??_s(n?.retryAfterMs):void 0;return {code:i,kind:YJ(i),message:o??"Antigravity reported a terminal error.",...s===void 0?{}:{retryAfterMs:s}}}function Xm(e){let t=WN(e);return new exports.ProviderError(t.message,"cli/antigravity",{code:t.code,kind:t.kind,...t.retryAfterMs===void 0?{}:{retryAfterMs:t.retryAfterMs}})}function ow(e){return new exports.ProviderError(e,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function QJ(e){let t=new TextEncoder().encode(e).byteLength;if(!(t<=tw))throw new exports.ProviderError(`Input is too large: final provider initial input is ${t} UTF-8 bytes; budget is ${tw} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function ew(){return new exports.ProviderError("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 Ym(e){if(e.kind==="result"||e.kind==="legacy_result")return e.result}function Qm(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 ZJ(e){let t=Qm(e);if(!t||t.event.kind==="agy_error"||t.index!==e.length-1||Ym(t.event)?.status!=="SUCCESS"||Km(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=nw(o),s=rw(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"||!ko(o.usage)||_s(o.usage.input_tokens)===void 0||_s(o.usage.output_tokens)===void 0)return false;return true}function eK(e,t){for(let n=t-1;n>=0;n-=1){let r=e[n];if(r?.kind==="agy_error")return r.error}}function tK(e,t){return ko(e)&&ko(t)?{...t,...e}:ko(e)&&typeof t=="string"?{...e,message:t}:typeof e=="string"&&ko(t)?{...t,message:e}:e??t}function nK(e){let t=Array.isArray(e.denied_actions)?e.denied_actions:[],n=[];for(let i of t){let s=ko(i)?i:void 0,a=typeof i=="string"?en(i):en(s?.display_name)??en(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 exports.ProviderError(`Permission denied: Antigravity blocked ${t.length} requested action${t.length===1?"":"s"}${o}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Km(e){let t=Qm(e);if(!t)return;if(t.event.kind==="agy_error")return Xm(t.event.error);let n=Ym(t.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return nK(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return ow("Antigravity returned a result with an unsupported status.");let r=n.error,o=tK(r==null||r===""?n:r,eK(e,t.index));return Xm(o)}function GN(e){if(typeof e=="string")return e;if(e!=null)try{return JSON.stringify(e)}catch{return}}function rK(e){return `agy:${String(e.conversation_id)}:${String(e.step_index)}`}function oK(e,t){let n=typeof t?.name=="string"?t.name:e.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function zN(e){let t=GN(e);if(t)return t.length<=2e3?t:`${t.slice(0,1999)}\u2026`}function iK(e){let t=ko(e)?e:void 0,n=t&&ko(t.error)?t.error:void 0,r=typeof e=="string"?e.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,o=(en(t?.type)??en(t?.code)??en(t?.error_type)??en(n?.type)??en(n?.code)??en(n?.error_type)??en(r)??"TOOL_ERROR").slice(0,60),i=WN(e).message.slice(0,250);return zN({type:o,message:i})??"Antigravity reported a tool error."}function VN(e,t){return e?e.state.has(t)?true:(e.state.set(t,true),false):false}function qN(e,t){return {timestamp:e,type:"error",content:t.message,errorMessage:t.message,isError:true}}var ZT,qJ,WJ,tw,GJ,iw,sw=U(()=>{m();ys();lf();af();la();zr();Bl();Lm();ZT="antigravity",qJ=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),WJ=new Set(["--conversation","--resume","--continue"]),tw=18e4,GJ=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"]);iw={command:"agy",maxInitialInputBytes:tw,meta:{displayName:"Antigravity",models:wT(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(e){let t=xl(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){QJ(e);let{model:r,effort:o}=Oi(t.model),i=Il(r),s=i.model,a=t.effort??o??i.effort,d=KJ(s,a),c=t.additionalArgs??[],l=JJ(zJ(c,new Set(["--input-format","--output-format"]))),u=s&&!Jm(c,"--model")?["--model",s]:[],p=Jm(c,"--effort")?[]:EN(d),f=Jm(c,"--mode")||Jm(c,"--dangerously-skip-permissions")?[]:IN(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}})}
22
22
  `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(e){let t=Dl(e),n=Qm(t)?.event,r=Km(t);if(r)throw r;let o=n?Ym(n):void 0;if(o){if(o.status!=="SUCCESS")throw ow("Antigravity returned a result with an unsupported status.");if(typeof o.response!="string")throw ow("Antigravity returned a successful result without a response string.");if(!o.response.trim())throw ew();return o.response}if(t.length>0)throw ew();let i=e.trim();if(!i)throw ew();return i},extractPartialText(e){let t=Dl(e),n=Qm(t)?.event;if(!n||n.kind==="agy_error")return;let r=Ym(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(e,t,n){let r=Dl(n??""),o=Km(r);return o||(e!==0&&t.trim()?Xm(t):null)},parseResultMeta(e){let t=Dl(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"||!ko(d.step.usage))continue;let c=nw(d),l=rw(d);if(!c||!Number.isSafeInteger(l))continue;let u=JSON.stringify([c,l]);if(s.has(u))continue;let p=d.step.usage,f=_s(p.input_tokens),g=_s(p.output_tokens);f===void 0||g===void 0||(s.add(u),n+=f,r+=g,o+=_s(p.cache_read_tokens)??0,i+=1);}return {usage:i===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:o,costUsd:0,complete:ZJ(t)},model:null}},parseEvent(e,t,n){let r=xl(e);if(!r)return [];let o=t??new Date().toISOString();if(r.kind==="agy_error")return [qN(o,Xm(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let f=Km([r]);return f?[qN(o,f)]:[]}if(r.kind!=="step_update")return [];let{step:i}=r,s=nw(r)??"unknown",a=rw(r),d=`${s}:${a}`;if((i.state==="DONE"||i.state==="ERROR")&&VN(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=ko(i.tool_info)?i.tool_info:void 0,l=oK(i,c);if(!l)return [];let u=rK(i);if(i.state==="ACTIVE"){if(VN(n,`antigravity:active:${d}`))return [];let f=GN(c?.parameters);return [{timestamp:o,type:"tool_use",toolName:l,toolUseId:u,...f===void 0?{}:{toolInput:f}}]}let p=i.state==="ERROR"?iK(c?.error):zN(c?.output);return [{timestamp:o,type:"tool_result",toolName:l,toolUseId:u,...p===void 0?{}:{resultPreview:p},...i.state==="ERROR"?{isError:true}:{}}]}};});var JN,KN=U(()=>{m();Ml();Ul();ya();_a();JN={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=Dr(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=wo(a);return /^bash$/i.test(i)&&Wo(d)?[Go(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,...Yr(s,a)}]}return []}};});function Vl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ql(e){return Vl(e)?e:void 0}function Lr(e){return typeof e=="string"?e:void 0}function Gd(e){let t=typeof e=="number"?e:Number(e??0);return Number.isFinite(t)?t:0}function lK(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 uf(e){let t=e.trim();if(!t)return [];try{let n=JSON.parse(t);return Vl(n)?[n]:[]}catch{return lK(t).flatMap(n=>{try{let r=JSON.parse(n);return Vl(r)?[r]:[]}catch{return []}})}}function ex(e){let t=JSON.stringify(e);return t===void 0?String(e):t}function Wd(e){if(typeof e=="string")return e;if(Array.isArray(e)){let t=e.map(Wd).filter(n=>n!==void 0);return t.length>0?t.join(`
23
23
  `):void 0}if(Vl(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=Wd(e[t]);if(n!==void 0)return n}}}function uK(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=ql(i);if(!s)return n(Wd(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=ql(s.Result);a=n(s.output)??n(l?.output)??n(Wd(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(`
24
24
  `)||a.endsWith("\r")?"":`
@@ -49,7 +49,7 @@ ${r.join(`
49
49
  `);for(let r of e)if(r.trim())try{let s=JSON.parse(r);if(s.type==="result"){let o=s.usage,i=o?{inputTokens:Number(o.input_tokens??0)+Number(o.cache_read_input_tokens??0),outputTokens:Number(o.output_tokens??0),cachedInputTokens:Number(o.cache_read_input_tokens??0),costUsd:Number(s.total_cost_usd??0)}:null,u=s.modelUsage,d=u?Object.keys(u)[0]??null:null;return {usage:i,model:d}}}catch{}let n=jd(t);return n?{usage:{inputTokens:n.inputTokens,outputTokens:0,cachedInputTokens:n.cachedInputTokens,costUsd:0},model:n.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 [];let s=je(n,e??new Date().toISOString()),o=Ff(n);if(o)return [{timestamp:s,type:"error",content:o,errorMessage:o}];let i=n.output_file,u=n.summary;if(r==="system"&&n.subtype==="task_notification"&&n.status==="completed"&&typeof i=="string"&&i.trim().length>0&&typeof u=="string"&&u.trim().length>0)return [{timestamp:s,type:"text",content:u}];if(r!=="assistant"&&r!=="user")return [];let c=n.message?.content;if(!Array.isArray(c))return [];let l=[];for(let p of c){let f=Gf(s,p);f&&l.push(f);}return l},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Mf.has(r):!1}catch{return false}}};Yd=200;});function eu(t){let e=t.split(`
50
50
  `).filter(s=>s.trim()),n=[],r=null;for(let s of e)try{let o=JSON.parse(s);if(o.type==="assistant.message"&&typeof o.data?.content=="string"){let i=o.data.content;i.trim()&&n.push(i.trim());}o.type==="result"&&typeof o.result=="string"&&(r=o.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}var jf,ho,mo=b(()=>{_();dn();Jn();un();ln();cn();Gt();Gr();jt();jf=new Set(["interactive","plan","autopilot"]);ho={command:"copilot",meta:{displayName:"Copilot",models:vd()},buildArgs(t,e,n){let r=e.additionalArgs?[...e.additionalArgs]:[];return e.model&&r.push("--model",e.model),e.mode&&jf.has(e.mode)&&r.push("--mode",e.mode),e.effort&&(Wr.copilot??[]).includes(e.effort)&&r.push("--effort",e.effort),{args:r,stdinMessage:t}},extractText(t){let e=eu(t);if(e)return e;let n=t.trim();return it(n,"copilot")?"":n},extractPartialText(t){return eu(t)},parseResultMeta(t){let e=pn(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 s=n.data;if(!s)return [];let o=je(n,e??new Date().toISOString()),i=s.toolCallId;if(r==="tool.execution_start"){let u=String(s.toolName||""),d=s.arguments,c=Ge(d);return (u==="bash"||u==="Bash")&&at(c)?[dt(o,c,i)]:[{timestamp:o,type:"tool_use",toolName:u,toolInput:c,...i&&{toolUseId:i}}]}if(r==="tool.execution_complete"){let u=s.error;if(u)return [{timestamp:o,type:"tool_result",...i&&{toolUseId:i},...We(String(u.message||""),true)}];let d=s.result,c=String(d?.content||"");return [{timestamp:o,type:"tool_result",...i&&{toolUseId:i},...We(c,false)}]}if(r==="assistant.message"){let u=String(s.content||"");return u?[{timestamp:o,type:"text",content:u}]:[]}return []}};});function Jf(t){let e=[],n=0,r=false,s=false,o=0;for(let u=0;u<t.length;u++){let d=t[u];if(s){s=false;continue}if(d==="\\"&&r){s=true;continue}if(d==='"'){r=!r;continue}if(!r){if(d==="{")n++;else if(d==="}"&&(n--,n===0)){let c=t.slice(o,u+1).trim();c&&e.push(c),o=u+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function Vf(t){return t[0]==="exec"?t.slice(1):t}function tu(t){let e=t.split(`
51
51
  `).map(s=>s.trim()).filter(Boolean),n=[],r=null;for(let s of e)try{let o=JSON.parse(s);if(o.type==="item.completed"&&(o.item?.type==="message"||o.item?.type==="agent_message")&&typeof o.item?.text=="string"){let i=o.item.text;i.trim()&&n.push(i.trim());}o.type==="result"&&typeof o.result=="string"&&(r=o.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}function At(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function ru(t){return t.type==="turn.failed"?true:t.type!=="error"?false:typeof t.message=="string"||typeof t.errorMessage=="string"||typeof t.error=="string"||At(t.error)}function su(t){let e=At(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 Xf(t){for(let e of t.split(/\r?\n/)){if(!e.trim())continue;let n;try{n=JSON.parse(e);}catch{continue}if(At(n)&&ru(n))return su(n)}}function nu(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 s=n.state.get("codex.pending");s||(s=new Map,n.state.set("codex.pending",s));let o=JSON.stringify([t.type,t.id]);if(e==="item.started"){let d=`codex:${JSON.stringify(t.id)}#${n.rowIndex}:${r}`,c=s.get(o)??[];return c.push(d),s.set(o,c),d}let i=s.get(o),u=i?.pop();return i?.length||s.delete(o),u}function Yf(t,e,n){let r=e.type;if(r==="command_execution"){let s=String(e.command||"");return at(s)?[dt(t,s,n)]:[{timestamp:t,type:"tool_use",toolName:"Bash",toolInput:s,...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:Ge(e.arguments),...n?{toolUseId:n}:{}}]:[]}function Qf(t,e,n){let r=e.type;if(r==="message"||r==="text"){let s=e.content;if(Array.isArray(s))for(let o of s){let i=Zf(t,o);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 s=typeof e.text=="string"?e.text.trim():"";return s?{timestamp:t,type:"thinking",content:s}:null}if(r==="command_execution"){let s=String(e.aggregated_output||e.output||""),o=!!e.is_error;return {timestamp:t,type:"tool_result",...We(s,o),...n?{toolUseId:n}:{}}}if(r==="mcp_tool_call"){let s=At(e.result)?e.result:void 0,i=(Array.isArray(s?.content)?s.content:[]).filter(d=>At(d)&&d.type==="text"&&typeof d.text=="string").map(d=>d.text).join(`
52
- `),u=typeof e.error=="string"?e.error:At(e.error)&&typeof e.error.message=="string"?e.error.message:"";return {timestamp:t,type:"tool_result",resultPreview:i||u,isError:e.status==="failed"||e.status==="error"||e.is_error===true||e.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let s=String(e.name||e.tool_name||""),o=e.input,i=Ge(o);return s==="Bash"&&at(i)?dt(t,i):{timestamp:t,type:"tool_use",toolName:s,toolInput:i}}if(r==="tool_result"){let s=!!e.is_error,o=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...We(o,s)}}if(r==="web_search"){let s=e.action,o;if(s?.type==="search"){let i=s.queries;o=String(s.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else o=e.query?"open: "+String(e.query):"";return !o&&!(At(s)&&s.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:o}}if(r==="file_change"){let s=e.changes;if(!Array.isArray(s)||s.length===0)return null;let o=s.map(u=>String(u.path||"")).filter(Boolean);if(o.length===0)return null;let i=o.length===1?o[0]:`${o.slice(0,2).join(", ")}${o.length>2?` (+${o.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function Zf(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||""),s=e.input,o=Ge(s);return r==="Bash"&&at(o)?dt(t,o):{timestamp:t,type:"tool_use",toolName:r,toolInput:o}}return null}var zf,Kf,ko,To=b(()=>{_();Bt();dn();Jn();un();ln();ao();cn();Kn();Gt();jt();zf=new Set(["turn.started","turn.completed","item.updated"]),Kf="cli/codex";ko={command:"codex",meta:{displayName:"Codex",models:bd(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:s}=It(e.model),o=e.effort??s,i=e.resumeSessionId?Ld(e.mode):Pd(e.mode),u=Md(o),d=r?["-m",r]:[],c=Vf(e.additionalArgs??[]),p=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...p,...i,...u,...d,...c,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...p,...i,...u,...d,...c],stdinMessage:t}},extractText(t){let e=Xf(t);if(e)throw new J(e,Kf);let n=tu(t);if(n)return n;let r=t.trim();return it(r,"codex")?"":r},extractPartialText(t){return tu(t)},parseResultMeta(t){let e=pn(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(),s=[],o;try{JSON.parse(t),o=[t];}catch{o=Jf(t),o.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,u]of o.entries()){let d;try{d=JSON.parse(u);}catch{continue}if(!At(d))continue;let c=d.type;if(!c)continue;let l=je(d,r);if(ru(d)){let f=su(d);s.push({timestamp:l,type:"error",content:f,errorMessage:f});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||io(d))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let p=d.item;if(p){if(c==="item.started"){s.push(...Yf(l,p,nu(p,c,n,i)));continue}if(c==="item.completed"){let f=Qf(l,p,nu(p,c,n,i));f&&s.push(f);continue}}}return s},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?zf.has(r):!1}catch{return false}}};});function ng(t){return t?tg[t]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Vr(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function uu(t){let e=[],n=0,r=false,s=false,o=0;for(let u=0;u<t.length;u++){let d=t[u];if(s){s=false;continue}if(d==="\\"&&r){s=true;continue}if(d==='"'){r=!r;continue}if(!r){if(d==="{")n++;else if(d==="}"&&(n--,n===0)){let c=t.slice(o,u+1).trim();c&&e.push(c),o=u+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function _n(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function rg(t){let e=[],n=false;for(let r of t.split(/\r?\n/)){let s=r.trim();if(!s)continue;try{let i=JSON.parse(s);_n(i)?e.push(i):n=!0;continue}catch{}let o=uu(s);o.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let i of o)try{let u=JSON.parse(i);_n(u)?e.push(u):n=!0;}catch{n=true;}}return {events:e,malformed:n}}function zt(t){if(typeof t!="string")return;let e=t.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(e)return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,du).trim()}function cu(t){let e=_n(t.error)?t.error:void 0,n=e&&_n(e.data)?e.data:void 0,r=zt(e?.name),s=zt(n?.message)??zt(e?.message)??zt(t.message)??zt(t.errorMessage)??zt(t.error),o=zt(t.ref),i=r&&s&&r!==s?`${r}: ${s}`:r??s??au;return (o?`${i} (ref: ${o})`:i).slice(0,du)}function ou(t){let e=rg(t),n=[],r=null,s=0,o=[],i,u=false;for(let d of e.events){let c=typeof d.type=="string"?d.type:void 0;if(c){if(c==="text"){let l=_n(d.part)?d.part:void 0,p=typeof l?.text=="string"?l.text:void 0;p?.trim()&&n.push(p.trim());continue}if(c==="result"){typeof d.result=="string"&&(r=d.result);continue}if(c==="tool_use"){s++;continue}if(c==="error"){o.push(cu(d));continue}if(c==="step_finish"){u=true;let l=_n(d.part)?d.part:void 0;i=typeof l?.reason=="string"?l.reason:void 0;}}}return {...e,texts:n,resultText:r,toolUseCount:s,errorMessages:o,terminalReason:i,hasTerminal:u}}function lu(t){return (t??"unknown").trim().toLowerCase().replace(/_/g,"-")}function Xr(){return new J("OpenCode returned no assistant output.",gn,{code:"EMPTY_OUTPUT",kind:"transient"})}function sg(){return new J("OpenCode emitted malformed JSON output.",gn,{code:"PROVIDER_CRASHED",kind:"transient"})}function iu(t,e){switch(lu(t)){case "length":return new J("OpenCode stopped because the context window was exceeded.",gn,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new J("OpenCode stopped because the content filter blocked the response.",gn,{code:"UNKNOWN",kind:"permanent"});case "error":return new J(e?`OpenCode error: ${e}`:`${au} while generating a response.`,gn,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var eg,gn,au,du,tg,yo,wo=b(()=>{_();Bt();Jn();ln();jt();eg=new Set(["step_start","step_finish"]),gn="cli/opencode",au="OpenCode provider error",du=240,tg={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};yo={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(t,e,n){let r=e.additionalArgs,s=r!==void 0?[...r]:["run"];Vr(s,"--format")||s.push("--format","json"),e.resumeSessionId&&!s.includes("-s")&&!s.includes("--session")&&s.push("-s",e.resumeSessionId);let{agent:o,autoApprove:i}=ng(e.mode);Vr(s,"--agent")||o!==void 0&&s.push("--agent",o),i&&!Vr(s,"--auto")&&s.push("--auto"),e.effort!==void 0&&!Vr(s,"--variant")&&s.push("--variant",e.effort),e.model&&s.push("--model",e.model);let u;return !n&&!i&&!e.env?.OPENCODE_PERMISSION&&(u={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:s,stdinMessage:t,env:u}},extractText(t){let e=ou(t),n=e.errorMessages[0];if(n){let i=iu("error",n);if(i)throw i}let r=iu(e.terminalReason??"",void 0);if(r)throw r;let s=e.texts.length>0?e.texts[e.texts.length-1]:void 0;if(s!==void 0){if(!e.hasTerminal)throw Xr();return s}if(e.resultText?.trim()){if(!e.hasTerminal)throw Xr();return e.resultText}if(e.malformed)throw sg();if(!e.hasTerminal)throw Xr();let o=lu(e.terminalReason);if((o==="stop"||o==="tool-calls")&&e.toolUseCount>0)return "";throw Xr()},interpretExit(t,e,n=""){if(t===0)return null;let s=ou(n).errorMessages[0];return s?new J(`OpenCode error: ${s}`,gn,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(t){let e=pn(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=e??new Date().toISOString(),r=[],s;try{JSON.parse(t),s=[t];}catch{s=uu(t),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let o of s){let i;try{i=JSON.parse(o);}catch{continue}let u=je(i,n),d=i.type;if(d){if(d==="text"){let l=i.part?.text;l&&r.push({timestamp:u,type:"text",content:l});continue}if(d==="tool_use"){let c=i.part;if(!c)continue;let l=String(c.tool||""),p=String(c.callID||""),f=c.state,h=String(f?.status||""),m=f?.input,k=Ge(m);if(r.push({timestamp:u,type:"tool_use",toolName:l,toolUseId:p,toolInput:k}),h==="completed"&&f?.output!==void 0){let E=f.output,v=typeof E=="string"?E:JSON.stringify(E);r.push({timestamp:u,type:"tool_result",toolUseId:p,resultPreview:v,isError:false});}else h==="error"&&r.push({timestamp:u,type:"tool_result",toolUseId:p,resultPreview:String(f?.error||"tool error"),isError:true});continue}if(d==="error"){let c=cu(i);r.push({timestamp:u,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?eg.has(r):!1}catch{return false}}};});var pu=b(()=>{_();});function Yr(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function ug(t,e){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r],o=[...e].find(i=>s===i||s.startsWith(`${i}=`));o?s===o&&r+1<t.length&&(r+=1):n.push(s);}return n}function cg(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],s=r.indexOf("="),o=s>0?r.slice(0,s):r;if(!ag.has(o)){e.push(r);continue}r===o&&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 lg(t,e){if(!(t?ig.has(t)||St(Eo).some(o=>o.id===t):false)||!t)return e;let r=zn(Eo,t),s=Od(Eo)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:s&&r.includes(s)?s:void 0:s}function pt(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 Z(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&qr(e)?.slice(0,500).trim()||void 0}function pg(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&dg.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|argument)/].some(o=>o.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 fg(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 _u(t){let e=Me(t)?t:void 0,n=e&&Me(e.error)?e.error:void 0,r=e?Z(e.code)??Z(e.error_code)??Z(n?.code)??Z(n?.error_code):void 0,s=typeof t=="string"?Z(t):e?Z(e.message)??Z(e.error)??Z(e.reason)??Z(n?.message)??Z(n?.error)??Z(n?.reason):void 0,o=pg(r,s),i=e?pt(e.retry_after_ms)??pt(e.retryAfterMs)??pt(n?.retry_after_ms)??pt(n?.retryAfterMs):void 0;return {code:o,kind:fg(o),message:s??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function Zr(t){let e=_u(t);return new J(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function Oo(t){return new J(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function gg(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=So))throw new J(`Input is too large: final provider initial input is ${e} UTF-8 bytes; budget is ${So} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function Ro(){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 es(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function ts(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 _g(t){let e=ts(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||es(e.event)?.status!=="SUCCESS"||Qr(t))return false;let r=new Map;for(let s of t){if(s.kind!=="step_update"||s.step.step_type!=="agent_response")continue;let o=Io(s),i=Ao(s);!o||!Number.isSafeInteger(i)||r.set(JSON.stringify([o,i]),s.step);}if(r.size===0)return false;for(let s of r.values())if(s.state!=="DONE"||!Me(s.usage)||pt(s.usage.input_tokens)===void 0||pt(s.usage.output_tokens)===void 0)return false;return true}function hg(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function mg(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 kg(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let o of e){let i=Me(o)?o:void 0,u=typeof o=="string"?Z(o):Z(i?.display_name)??Z(i?.action);u&&!n.includes(u)&&n.length<5&&n.push(u.slice(0,80));}let r=Math.max(0,e.length-n.length),s=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new J(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${s}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Qr(t){let e=ts(t);if(!e)return;if(e.event.kind==="agy_error")return Zr(e.event.error);let n=es(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return kg(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return Oo("Antigravity returned a result with an unsupported status.");let r=n.error,s=mg(r==null||r===""?n:r,hg(t,e.index));return Zr(s)}function hu(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function Tg(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function yg(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function mu(t){let e=hu(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function wg(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,s=(Z(e?.type)??Z(e?.code)??Z(e?.error_type)??Z(n?.type)??Z(n?.code)??Z(n?.error_type)??Z(r)??"TOOL_ERROR").slice(0,60),o=_u(t).message.slice(0,250);return mu({type:s,message:o})??"Antigravity reported a tool error."}function fu(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function gu(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var Eo,ig,ag,So,dg,No,bo=b(()=>{_();Bt();pu();so();jn();Gt();Kn();co();Eo="antigravity",ig=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),ag=new Set(["--conversation","--resume","--continue"]),So=18e4,dg=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"]);No={command:"agy",maxInitialInputBytes:So,meta:{displayName:"Antigravity",models:xd(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=Wn(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){gg(t);let{model:r,effort:s}=It(e.model),o=fo(r),i=o.model,u=e.effort??s??o.effort,d=lg(i,u),c=e.additionalArgs??[],l=cg(ug(c,new Set(["--input-format","--output-format"]))),p=i&&!Yr(c,"--model")?["--model",i]:[],f=Yr(c,"--effort")?[]:Gd(d),h=Yr(c,"--mode")||Yr(c,"--dangerously-skip-permissions")?[]:Wd(e.mode),m=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...p,...f,...h,...m,...l],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
52
+ `),u=typeof e.error=="string"?e.error:At(e.error)&&typeof e.error.message=="string"?e.error.message:"";return {timestamp:t,type:"tool_result",resultPreview:i||u,isError:e.status==="failed"||e.status==="error"||e.is_error===true||e.error!=null,...n?{toolUseId:n}:{}}}if(r==="tool_use"){let s=String(e.name||e.tool_name||""),o=e.input,i=Ge(o);return s==="Bash"&&at(i)?dt(t,i):{timestamp:t,type:"tool_use",toolName:s,toolInput:i}}if(r==="tool_result"){let s=!!e.is_error,o=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...We(o,s)}}if(r==="web_search"){let s=e.action,o;if(s?.type==="search"){let i=s.queries;o=String(s.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else o=e.query?"open: "+String(e.query):"";return !o&&!(At(s)&&s.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:o}}if(r==="file_change"){let s=e.changes;if(!Array.isArray(s)||s.length===0)return null;let o=s.map(u=>String(u.path||"")).filter(Boolean);if(o.length===0)return null;let i=o.length===1?o[0]:`${o.slice(0,2).join(", ")}${o.length>2?` (+${o.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function Zf(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||""),s=e.input,o=Ge(s);return r==="Bash"&&at(o)?dt(t,o):{timestamp:t,type:"tool_use",toolName:r,toolInput:o}}return null}var zf,Kf,ko,To=b(()=>{_();Bt();dn();Jn();un();ln();ao();cn();Kn();Gt();jt();zf=new Set(["turn.started","turn.completed","item.updated"]),Kf="cli/codex";ko={command:"codex",meta:{displayName:"Codex",models:bd(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:s}=It(e.model),o=e.effort??s,i=e.resumeSessionId?Ld(e.mode):Pd(e.mode),u=Md(o),d=r?["-m",r]:[],c=Vf(e.additionalArgs??[]),p=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...p,...i,...u,...d,...c,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...p,...i,...u,...d,...c],stdinMessage:t}},extractText(t){let e=Xf(t);if(e)throw new J(e,Kf);let n=tu(t);if(n)return n;let r=t.trim();return it(r,"codex")?"":r},extractPartialText(t){return tu(t)},parseResultMeta(t){let e=pn(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(),s=[],o;try{JSON.parse(t),o=[t];}catch{o=Jf(t),o.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,u]of o.entries()){let d;try{d=JSON.parse(u);}catch{continue}if(!At(d))continue;let c=d.type;if(!c)continue;let l=je(d,r);if(ru(d)){let f=su(d);s.push({timestamp:l,type:"error",content:f,errorMessage:f});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||io(d))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let p=d.item;if(p){if(c==="item.started"){s.push(...Yf(l,p,nu(p,c,n,i)));continue}if(c==="item.completed"){let f=Qf(l,p,nu(p,c,n,i));f&&s.push(f);continue}}}return s},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?zf.has(r):!1}catch{return false}}};});function ng(t){return t?tg[t]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function Vr(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function uu(t){let e=[],n=0,r=false,s=false,o=0;for(let u=0;u<t.length;u++){let d=t[u];if(s){s=false;continue}if(d==="\\"&&r){s=true;continue}if(d==='"'){r=!r;continue}if(!r){if(d==="{")n++;else if(d==="}"&&(n--,n===0)){let c=t.slice(o,u+1).trim();c&&e.push(c),o=u+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function _n(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function rg(t){let e=[],n=false;for(let r of t.split(/\r?\n/)){let s=r.trim();if(!s)continue;try{let i=JSON.parse(s);_n(i)?e.push(i):n=!0;continue}catch{}let o=uu(s);o.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let i of o)try{let u=JSON.parse(i);_n(u)?e.push(u):n=!0;}catch{n=true;}}return {events:e,malformed:n}}function zt(t){if(typeof t!="string")return;let e=t.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(e)return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,du).trim()}function cu(t){let e=_n(t.error)?t.error:void 0,n=e&&_n(e.data)?e.data:void 0,r=zt(e?.name),s=zt(n?.message)??zt(e?.message)??zt(t.message)??zt(t.errorMessage)??zt(t.error),o=zt(t.ref),i=r&&s&&r!==s?`${r}: ${s}`:r??s??au;return (o?`${i} (ref: ${o})`:i).slice(0,du)}function ou(t){let e=rg(t),n=[],r=null,s=0,o=[],i,u=false;for(let d of e.events){let c=typeof d.type=="string"?d.type:void 0;if(c){if(c==="text"){let l=_n(d.part)?d.part:void 0,p=typeof l?.text=="string"?l.text:void 0;p?.trim()&&n.push(p.trim());continue}if(c==="result"){typeof d.result=="string"&&(r=d.result);continue}if(c==="tool_use"){s++;continue}if(c==="error"){o.push(cu(d));continue}if(c==="step_finish"){u=true;let l=_n(d.part)?d.part:void 0;i=typeof l?.reason=="string"?l.reason:void 0;}}}return {...e,texts:n,resultText:r,toolUseCount:s,errorMessages:o,terminalReason:i,hasTerminal:u}}function lu(t){return (t??"unknown").trim().toLowerCase().replace(/_/g,"-")}function Xr(){return new J("OpenCode returned no assistant output.",gn,{code:"EMPTY_OUTPUT",kind:"transient"})}function sg(){return new J("OpenCode emitted malformed JSON output.",gn,{code:"PROVIDER_CRASHED",kind:"transient"})}function iu(t,e){switch(lu(t)){case "length":return new J("OpenCode stopped because the context window was exceeded.",gn,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new J("OpenCode stopped because the content filter blocked the response.",gn,{code:"UNKNOWN",kind:"permanent"});case "error":return new J(e?`OpenCode error: ${e}`:`${au} while generating a response.`,gn,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var eg,gn,au,du,tg,yo,wo=b(()=>{_();Bt();Jn();ln();jt();eg=new Set(["step_start","step_finish"]),gn="cli/opencode",au="OpenCode provider error",du=240,tg={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};yo={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(t,e,n){let r=e.additionalArgs,s=r!==void 0?[...r]:["run"];Vr(s,"--format")||s.push("--format","json"),e.resumeSessionId&&!s.includes("-s")&&!s.includes("--session")&&s.push("-s",e.resumeSessionId);let{agent:o,autoApprove:i}=ng(e.mode);Vr(s,"--agent")||o!==void 0&&s.push("--agent",o),i&&!Vr(s,"--auto")&&s.push("--auto"),e.effort!==void 0&&!Vr(s,"--variant")&&s.push("--variant",e.effort),e.model&&s.push("--model",e.model);let u;return !n&&!i&&!e.env?.OPENCODE_PERMISSION&&(u={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:s,stdinMessage:t,env:u}},extractText(t){let e=ou(t),n=e.errorMessages[0];if(n){let i=iu("error",n);if(i)throw i}let r=iu(e.terminalReason??"",void 0);if(r)throw r;let s=e.texts.length>0?e.texts[e.texts.length-1]:void 0;if(s!==void 0){if(!e.hasTerminal)throw Xr();return s}if(e.resultText?.trim()){if(!e.hasTerminal)throw Xr();return e.resultText}if(e.malformed)throw sg();if(!e.hasTerminal)throw Xr();let o=lu(e.terminalReason);if((o==="stop"||o==="tool-calls")&&e.toolUseCount>0)return "";throw Xr()},interpretExit(t,e,n=""){if(t===0)return null;let s=ou(n).errorMessages[0];return s?new J(`OpenCode error: ${s}`,gn,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(t){let e=pn(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=e??new Date().toISOString(),r=[],s;try{JSON.parse(t),s=[t];}catch{s=uu(t),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let o of s){let i;try{i=JSON.parse(o);}catch{continue}let u=je(i,n),d=i.type;if(d){if(d==="text"){let l=i.part?.text;l&&r.push({timestamp:u,type:"text",content:l});continue}if(d==="tool_use"){let c=i.part;if(!c)continue;let l=String(c.tool||""),p=String(c.callID||""),f=c.state,h=String(f?.status||""),m=f?.input,k=Ge(m);if(r.push({timestamp:u,type:"tool_use",toolName:l,toolUseId:p,toolInput:k}),h==="completed"&&f?.output!==void 0){let E=f.output,v=typeof E=="string"?E:JSON.stringify(E);r.push({timestamp:u,type:"tool_result",toolUseId:p,resultPreview:v,isError:false});}else h==="error"&&r.push({timestamp:u,type:"tool_result",toolUseId:p,resultPreview:String(f?.error||"tool error"),isError:true});continue}if(d==="error"){let c=cu(i);r.push({timestamp:u,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?eg.has(r):!1}catch{return false}}};});var pu=b(()=>{_();});function Yr(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function ug(t,e){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r],o=[...e].find(i=>s===i||s.startsWith(`${i}=`));o?s===o&&r+1<t.length&&(r+=1):n.push(s);}return n}function cg(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],s=r.indexOf("="),o=s>0?r.slice(0,s):r;if(!ag.has(o)){e.push(r);continue}r===o&&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 lg(t,e){if(!(t?ig.has(t)||St(Eo).some(o=>o.id===t):false)||!t)return e;let r=zn(Eo,t),s=Od(Eo)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:s&&r.includes(s)?s:void 0:s}function pt(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 Z(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&qr(e)?.slice(0,500).trim()||void 0}function pg(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&dg.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(o=>o.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 fg(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 _u(t){let e=Me(t)?t:void 0,n=e&&Me(e.error)?e.error:void 0,r=e?Z(e.code)??Z(e.error_code)??Z(n?.code)??Z(n?.error_code):void 0,s=typeof t=="string"?Z(t):e?Z(e.message)??Z(e.error)??Z(e.reason)??Z(n?.message)??Z(n?.error)??Z(n?.reason):void 0,o=pg(r,s),i=e?pt(e.retry_after_ms)??pt(e.retryAfterMs)??pt(n?.retry_after_ms)??pt(n?.retryAfterMs):void 0;return {code:o,kind:fg(o),message:s??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function Zr(t){let e=_u(t);return new J(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function Oo(t){return new J(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function gg(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=So))throw new J(`Input is too large: final provider initial input is ${e} UTF-8 bytes; budget is ${So} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function Ro(){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 es(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function ts(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 _g(t){let e=ts(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||es(e.event)?.status!=="SUCCESS"||Qr(t))return false;let r=new Map;for(let s of t){if(s.kind!=="step_update"||s.step.step_type!=="agent_response")continue;let o=Io(s),i=Ao(s);!o||!Number.isSafeInteger(i)||r.set(JSON.stringify([o,i]),s.step);}if(r.size===0)return false;for(let s of r.values())if(s.state!=="DONE"||!Me(s.usage)||pt(s.usage.input_tokens)===void 0||pt(s.usage.output_tokens)===void 0)return false;return true}function hg(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function mg(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 kg(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let o of e){let i=Me(o)?o:void 0,u=typeof o=="string"?Z(o):Z(i?.display_name)??Z(i?.action);u&&!n.includes(u)&&n.length<5&&n.push(u.slice(0,80));}let r=Math.max(0,e.length-n.length),s=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new J(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${s}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function Qr(t){let e=ts(t);if(!e)return;if(e.event.kind==="agy_error")return Zr(e.event.error);let n=es(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return kg(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return Oo("Antigravity returned a result with an unsupported status.");let r=n.error,s=mg(r==null||r===""?n:r,hg(t,e.index));return Zr(s)}function hu(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function Tg(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function yg(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function mu(t){let e=hu(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function wg(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,s=(Z(e?.type)??Z(e?.code)??Z(e?.error_type)??Z(n?.type)??Z(n?.code)??Z(n?.error_type)??Z(r)??"TOOL_ERROR").slice(0,60),o=_u(t).message.slice(0,250);return mu({type:s,message:o})??"Antigravity reported a tool error."}function fu(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function gu(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var Eo,ig,ag,So,dg,No,bo=b(()=>{_();Bt();pu();so();jn();Gt();Kn();co();Eo="antigravity",ig=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),ag=new Set(["--conversation","--resume","--continue"]),So=18e4,dg=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"]);No={command:"agy",maxInitialInputBytes:So,meta:{displayName:"Antigravity",models:xd(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=Wn(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){gg(t);let{model:r,effort:s}=It(e.model),o=fo(r),i=o.model,u=e.effort??s??o.effort,d=lg(i,u),c=e.additionalArgs??[],l=cg(ug(c,new Set(["--input-format","--output-format"]))),p=i&&!Yr(c,"--model")?["--model",i]:[],f=Yr(c,"--effort")?[]:Gd(d),h=Yr(c,"--mode")||Yr(c,"--dangerously-skip-permissions")?[]:Wd(e.mode),m=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...p,...f,...h,...m,...l],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
53
53
  `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(t){let e=Gn(t),n=ts(e)?.event,r=Qr(e);if(r)throw r;let s=n?es(n):void 0;if(s){if(s.status!=="SUCCESS")throw Oo("Antigravity returned a result with an unsupported status.");if(typeof s.response!="string")throw Oo("Antigravity returned a successful result without a response string.");if(!s.response.trim())throw Ro();return s.response}if(e.length>0)throw Ro();let o=t.trim();if(!o)throw Ro();return o},extractPartialText(t){let e=Gn(t),n=ts(e)?.event;if(!n||n.kind==="agy_error")return;let r=es(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(t,e,n){let r=Gn(n??""),s=Qr(r);return s||(t!==0&&e.trim()?Zr(e):null)},parseResultMeta(t){let e=Gn(t),n=0,r=0,s=0,o=0,i=new Set;for(let d of e){if(d.kind!=="step_update"||d.step.state!=="DONE"||!Me(d.step.usage))continue;let c=Io(d),l=Ao(d);if(!c||!Number.isSafeInteger(l))continue;let p=JSON.stringify([c,l]);if(i.has(p))continue;let f=d.step.usage,h=pt(f.input_tokens),m=pt(f.output_tokens);h===void 0||m===void 0||(i.add(p),n+=h,r+=m,s+=pt(f.cache_read_tokens)??0,o+=1);}return {usage:o===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:s,costUsd:0,complete:_g(e)},model:null}},parseEvent(t,e,n){let r=Wn(t);if(!r)return [];let s=e??new Date().toISOString();if(r.kind==="agy_error")return [gu(s,Zr(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let h=Qr([r]);return h?[gu(s,h)]:[]}if(r.kind!=="step_update")return [];let{step:o}=r,i=Io(r)??"unknown",u=Ao(r),d=`${i}:${u}`;if((o.state==="DONE"||o.state==="ERROR")&&fu(n,`antigravity:terminal:${d}`))return [];if(o.step_type==="agent_response")return typeof o.text_delta=="string"&&o.text_delta.length>0?[{timestamp:s,type:"text",content:o.text_delta}]:[];if(o.step_type!=="tool")return [];let c=Me(o.tool_info)?o.tool_info:void 0,l=yg(o,c);if(!l)return [];let p=Tg(o);if(o.state==="ACTIVE"){if(fu(n,`antigravity:active:${d}`))return [];let h=hu(c?.parameters);return [{timestamp:s,type:"tool_use",toolName:l,toolUseId:p,...h===void 0?{}:{toolInput:h}}]}let f=o.state==="ERROR"?wg(c?.error):mu(c?.output);return [{timestamp:s,type:"tool_result",toolName:l,toolUseId:p,...f===void 0?{}:{resultPreview:f},...o.state==="ERROR"?{isError:true}:{}}]}};});var ku=b(()=>{_();un();ln();cn();jt();});function hn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function mn(t){return hn(t)?t:void 0}function Se(t){return typeof t=="string"?t:void 0}function Jt(t){let e=typeof t=="number"?t:Number(t??0);return Number.isFinite(e)?e:0}function Ag(t){let e=[],n=-1,r=0,s=false,o=false;for(let i=0;i<t.length;i+=1){let u=t[i];if(n===-1){(u==="{"||u==="[")&&(n=i,r=1);continue}if(o){o=false;continue}if(u==="\\"&&s){o=true;continue}if(u==='"'){s=!s;continue}s||(u==="{"||u==="["?r+=1:(u==="}"||u==="]")&&(r-=1,r===0&&(e.push(t.slice(n,i+1)),n=-1)));}return n!==-1&&e.push(t.slice(n)),e}function Vn(t){let e=t.trim();if(!e)return [];try{let n=JSON.parse(e);return hn(n)?[n]:[]}catch{return Ag(e).flatMap(n=>{try{let r=JSON.parse(n);return hn(r)?[r]:[]}catch{return []}})}}function Ru(t){let e=JSON.stringify(t);return e===void 0?String(t):e}function Kt(t){if(typeof t=="string")return t;if(Array.isArray(t)){let e=t.map(Kt).filter(n=>n!==void 0);return e.length>0?e.join(`
54
54
  `):void 0}if(hn(t)){if(typeof t.text=="string")return t.text;if(typeof t.message=="string")return t.message;if(typeof t.error=="string")return t.error;if(t.type==="text"&&typeof t.data=="string")return t.data;for(let e of ["content","FileContent","rawOutput"]){let n=Kt(t[e]);if(n!==void 0)return n}}}function Og(t){let e=i=>Array.isArray(i)&&i.every(u=>Number.isInteger(u)&&u>=0&&u<=255),n=i=>typeof i=="string"&&i.trim().length>0?i:void 0,r=i=>new TextDecoder("utf-8",{fatal:false}).decode(Uint8Array.from(i)),s=i=>{let u=JSON.stringify(i,(d,c)=>e(c)?`<bytes:${c.length}>`:c);return u===void 0?String(i):u},o=t.rawOutput;if(o!=null){let i=mn(o);if(!i)return n(Kt(o))??s(o);let u;if(e(i.output)&&i.output.length>0&&(u=n(r(i.output))),!u&&e(i.stdout)&&i.stdout.length>0&&(u=n(r(i.stdout))),!u){let l=mn(i.Result);u=n(i.output)??n(l?.output)??n(Kt(o));}let d=e(i.stderr)&&i.stderr.length>0?r(i.stderr):void 0;if(d!==void 0)if(u){let l=u.endsWith(`
55
55
  `)||u.endsWith("\r")?"":`
@@ -49,7 +49,7 @@ ${r.join(`
49
49
  `);for(let r of e)if(r.trim())try{let s=JSON.parse(r);if(s.type==="result"){let o=s.usage,i=o?{inputTokens:Number(o.input_tokens??0)+Number(o.cache_read_input_tokens??0),outputTokens:Number(o.output_tokens??0),cachedInputTokens:Number(o.cache_read_input_tokens??0),costUsd:Number(s.total_cost_usd??0)}:null,a=s.modelUsage,u=a?Object.keys(a)[0]??null:null;return {usage:i,model:u}}}catch{}let n=Al(t);return n?{usage:{inputTokens:n.inputTokens,outputTokens:0,cachedInputTokens:n.cachedInputTokens,costUsd:0},model:n.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 [];let s=At(n,e??new Date().toISOString()),o=Ok(n);if(o)return [{timestamp:s,type:"error",content:o,errorMessage:o}];let i=n.output_file,a=n.summary;if(r==="system"&&n.subtype==="task_notification"&&n.status==="completed"&&typeof i=="string"&&i.trim().length>0&&typeof a=="string"&&a.trim().length>0)return [{timestamp:s,type:"text",content:a}];if(r!=="assistant"&&r!=="user")return [];let c=n.message?.content;if(!Array.isArray(c))return [];let p=[];for(let l of c){let g=Dk(s,l);g&&p.push(g);}return p},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Sk.has(r):!1}catch{return false}}};xl=200;});function Ml(t){let e=t.split(`
50
50
  `).filter(s=>s.trim()),n=[],r=null;for(let s of e)try{let o=JSON.parse(s);if(o.type==="assistant.message"&&typeof o.data?.content=="string"){let i=o.data.content;i.trim()&&n.push(i.trim());}o.type==="result"&&typeof o.result=="string"&&(r=o.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}var xk,la,pa=C(()=>{h();ts();os();ar();ur();dr();Nn();co();vn();xk=new Set(["interactive","plan","autopilot"]);la={command:"copilot",meta:{displayName:"Copilot",models:pl()},buildArgs(t,e,n){let r=e.additionalArgs?[...e.additionalArgs]:[];return e.model&&r.push("--model",e.model),e.mode&&xk.has(e.mode)&&r.push("--mode",e.mode),e.effort&&(uo.copilot??[]).includes(e.effort)&&r.push("--effort",e.effort),{args:r,stdinMessage:t}},extractText(t){let e=Ml(t);if(e)return e;let n=t.trim();return Xt(n,"copilot")?"":n},extractPartialText(t){return Ml(t)},parseResultMeta(t){let e=cr(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 s=n.data;if(!s)return [];let o=At(n,e??new Date().toISOString()),i=s.toolCallId;if(r==="tool.execution_start"){let a=String(s.toolName||""),u=s.arguments,c=It(u);return (a==="bash"||a==="Bash")&&Bt(c)?[Ft(o,c,i)]:[{timestamp:o,type:"tool_use",toolName:a,toolInput:c,...i&&{toolUseId:i}}]}if(r==="tool.execution_complete"){let a=s.error;if(a)return [{timestamp:o,type:"tool_result",...i&&{toolUseId:i},...bt(String(a.message||""),true)}];let u=s.result,c=String(u?.content||"");return [{timestamp:o,type:"tool_result",...i&&{toolUseId:i},...bt(c,false)}]}if(r==="assistant.message"){let a=String(s.content||"");return a?[{timestamp:o,type:"text",content:a}]:[]}return []}};});function Mk(t){let e=[],n=0,r=false,s=false,o=0;for(let a=0;a<t.length;a++){let u=t[a];if(s){s=false;continue}if(u==="\\"&&r){s=true;continue}if(u==='"'){r=!r;continue}if(!r){if(u==="{")n++;else if(u==="}"&&(n--,n===0)){let c=t.slice(o,a+1).trim();c&&e.push(c),o=a+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function $k(t){return t[0]==="exec"?t.slice(1):t}function $l(t){let e=t.split(`
51
51
  `).map(s=>s.trim()).filter(Boolean),n=[],r=null;for(let s of e)try{let o=JSON.parse(s);if(o.type==="item.completed"&&(o.item?.type==="message"||o.item?.type==="agent_message")&&typeof o.item?.text=="string"){let i=o.item.text;i.trim()&&n.push(i.trim());}o.type==="result"&&typeof o.result=="string"&&(r=o.result);}catch{}if(n.length>0)return n[n.length-1];if(r)return r}function un(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Ul(t){return t.type==="turn.failed"?true:t.type!=="error"?false:typeof t.message=="string"||typeof t.errorMessage=="string"||typeof t.error=="string"||un(t.error)}function Bl(t){let e=un(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 Hk(t){for(let e of t.split(/\r?\n/)){if(!e.trim())continue;let n;try{n=JSON.parse(e);}catch{continue}if(un(n)&&Ul(n))return Bl(n)}}function Hl(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 s=n.state.get("codex.pending");s||(s=new Map,n.state.set("codex.pending",s));let o=JSON.stringify([t.type,t.id]);if(e==="item.started"){let u=`codex:${JSON.stringify(t.id)}#${n.rowIndex}:${r}`,c=s.get(o)??[];return c.push(u),s.set(o,c),u}let i=s.get(o),a=i?.pop();return i?.length||s.delete(o),a}function Uk(t,e,n){let r=e.type;if(r==="command_execution"){let s=String(e.command||"");return Bt(s)?[Ft(t,s,n)]:[{timestamp:t,type:"tool_use",toolName:"Bash",toolInput:s,...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:It(e.arguments),...n?{toolUseId:n}:{}}]:[]}function Bk(t,e,n){let r=e.type;if(r==="message"||r==="text"){let s=e.content;if(Array.isArray(s))for(let o of s){let i=Fk(t,o);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 s=typeof e.text=="string"?e.text.trim():"";return s?{timestamp:t,type:"thinking",content:s}:null}if(r==="command_execution"){let s=String(e.aggregated_output||e.output||""),o=!!e.is_error;return {timestamp:t,type:"tool_result",...bt(s,o),...n?{toolUseId:n}:{}}}if(r==="mcp_tool_call"){let s=un(e.result)?e.result:void 0,i=(Array.isArray(s?.content)?s.content:[]).filter(u=>un(u)&&u.type==="text"&&typeof u.text=="string").map(u=>u.text).join(`
52
- `),a=typeof e.error=="string"?e.error:un(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 s=String(e.name||e.tool_name||""),o=e.input,i=It(o);return s==="Bash"&&Bt(i)?Ft(t,i):{timestamp:t,type:"tool_use",toolName:s,toolInput:i}}if(r==="tool_result"){let s=!!e.is_error,o=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...bt(o,s)}}if(r==="web_search"){let s=e.action,o;if(s?.type==="search"){let i=s.queries;o=String(s.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else o=e.query?"open: "+String(e.query):"";return !o&&!(un(s)&&s.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:o}}if(r==="file_change"){let s=e.changes;if(!Array.isArray(s)||s.length===0)return null;let o=s.map(a=>String(a.path||"")).filter(Boolean);if(o.length===0)return null;let i=o.length===1?o[0]:`${o.slice(0,2).join(", ")}${o.length>2?` (+${o.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function Fk(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||""),s=e.input,o=It(s);return r==="Bash"&&Bt(o)?Ft(t,o):{timestamp:t,type:"tool_use",toolName:r,toolInput:o}}return null}var Lk,Pk,fa,ga=C(()=>{h();In();ts();os();ar();ur();sa();dr();ss();Nn();vn();Lk=new Set(["turn.started","turn.completed","item.updated"]),Pk="cli/codex";fa={command:"codex",meta:{displayName:"Codex",models:ll(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:s}=dn(e.model),o=e.effort??s,i=e.resumeSessionId?ml(e.mode):hl(e.mode),a=kl(o),u=r?["-m",r]:[],c=$k(e.additionalArgs??[]),l=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...l,...i,...a,...u,...c,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...l,...i,...a,...u,...c],stdinMessage:t}},extractText(t){let e=Hk(t);if(e)throw new oe(e,Pk);let n=$l(t);if(n)return n;let r=t.trim();return Xt(r,"codex")?"":r},extractPartialText(t){return $l(t)},parseResultMeta(t){let e=cr(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(),s=[],o;try{JSON.parse(t),o=[t];}catch{o=Mk(t),o.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,a]of o.entries()){let u;try{u=JSON.parse(a);}catch{continue}if(!un(u))continue;let c=u.type;if(!c)continue;let p=At(u,r);if(Ul(u)){let g=Bl(u);s.push({timestamp:p,type:"error",content:g,errorMessage:g});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||ra(u))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let l=u.item;if(l){if(c==="item.started"){s.push(...Uk(p,l,Hl(l,c,n,i)));continue}if(c==="item.completed"){let g=Bk(p,l,Hl(l,c,n,i));g&&s.push(g);continue}}}return s},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Lk.has(r):!1}catch{return false}}};});function Wk(t){return t?jk[t]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function _o(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function Gl(t){let e=[],n=0,r=false,s=false,o=0;for(let a=0;a<t.length;a++){let u=t[a];if(s){s=false;continue}if(u==="\\"&&r){s=true;continue}if(u==='"'){r=!r;continue}if(!r){if(u==="{")n++;else if(u==="}"&&(n--,n===0)){let c=t.slice(o,a+1).trim();c&&e.push(c),o=a+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function fr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Gk(t){let e=[],n=false;for(let r of t.split(/\r?\n/)){let s=r.trim();if(!s)continue;try{let i=JSON.parse(s);fr(i)?e.push(i):n=!0;continue}catch{}let o=Gl(s);o.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let i of o)try{let a=JSON.parse(i);fr(a)?e.push(a):n=!0;}catch{n=true;}}return {events:e,malformed:n}}function Cn(t){if(typeof t!="string")return;let e=t.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(e)return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,Wl).trim()}function zl(t){let e=fr(t.error)?t.error:void 0,n=e&&fr(e.data)?e.data:void 0,r=Cn(e?.name),s=Cn(n?.message)??Cn(e?.message)??Cn(t.message)??Cn(t.errorMessage)??Cn(t.error),o=Cn(t.ref),i=r&&s&&r!==s?`${r}: ${s}`:r??s??jl;return (o?`${i} (ref: ${o})`:i).slice(0,Wl)}function Fl(t){let e=Gk(t),n=[],r=null,s=0,o=[],i,a=false;for(let u of e.events){let c=typeof u.type=="string"?u.type:void 0;if(c){if(c==="text"){let p=fr(u.part)?u.part:void 0,l=typeof p?.text=="string"?p.text:void 0;l?.trim()&&n.push(l.trim());continue}if(c==="result"){typeof u.result=="string"&&(r=u.result);continue}if(c==="tool_use"){s++;continue}if(c==="error"){o.push(zl(u));continue}if(c==="step_finish"){a=true;let p=fr(u.part)?u.part:void 0;i=typeof p?.reason=="string"?p.reason:void 0;}}}return {...e,texts:n,resultText:r,toolUseCount:s,errorMessages:o,terminalReason:i,hasTerminal:a}}function Kl(t){return (t??"unknown").trim().toLowerCase().replace(/_/g,"-")}function ho(){return new oe("OpenCode returned no assistant output.",pr,{code:"EMPTY_OUTPUT",kind:"transient"})}function zk(){return new oe("OpenCode emitted malformed JSON output.",pr,{code:"PROVIDER_CRASHED",kind:"transient"})}function ql(t,e){switch(Kl(t)){case "length":return new oe("OpenCode stopped because the context window was exceeded.",pr,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new oe("OpenCode stopped because the content filter blocked the response.",pr,{code:"UNKNOWN",kind:"permanent"});case "error":return new oe(e?`OpenCode error: ${e}`:`${jl} while generating a response.`,pr,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var qk,pr,jl,Wl,jk,_a,ha=C(()=>{h();In();os();ur();vn();qk=new Set(["step_start","step_finish"]),pr="cli/opencode",jl="OpenCode provider error",Wl=240,jk={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};_a={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(t,e,n){let r=e.additionalArgs,s=r!==void 0?[...r]:["run"];_o(s,"--format")||s.push("--format","json"),e.resumeSessionId&&!s.includes("-s")&&!s.includes("--session")&&s.push("-s",e.resumeSessionId);let{agent:o,autoApprove:i}=Wk(e.mode);_o(s,"--agent")||o!==void 0&&s.push("--agent",o),i&&!_o(s,"--auto")&&s.push("--auto"),e.effort!==void 0&&!_o(s,"--variant")&&s.push("--variant",e.effort),e.model&&s.push("--model",e.model);let a;return !n&&!i&&!e.env?.OPENCODE_PERMISSION&&(a={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:s,stdinMessage:t,env:a}},extractText(t){let e=Fl(t),n=e.errorMessages[0];if(n){let i=ql("error",n);if(i)throw i}let r=ql(e.terminalReason??"",void 0);if(r)throw r;let s=e.texts.length>0?e.texts[e.texts.length-1]:void 0;if(s!==void 0){if(!e.hasTerminal)throw ho();return s}if(e.resultText?.trim()){if(!e.hasTerminal)throw ho();return e.resultText}if(e.malformed)throw zk();if(!e.hasTerminal)throw ho();let o=Kl(e.terminalReason);if((o==="stop"||o==="tool-calls")&&e.toolUseCount>0)return "";throw ho()},interpretExit(t,e,n=""){if(t===0)return null;let s=Fl(n).errorMessages[0];return s?new oe(`OpenCode error: ${s}`,pr,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(t){let e=cr(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=e??new Date().toISOString(),r=[],s;try{JSON.parse(t),s=[t];}catch{s=Gl(t),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let o of s){let i;try{i=JSON.parse(o);}catch{continue}let a=At(i,n),u=i.type;if(u){if(u==="text"){let p=i.part?.text;p&&r.push({timestamp:a,type:"text",content:p});continue}if(u==="tool_use"){let c=i.part;if(!c)continue;let p=String(c.tool||""),l=String(c.callID||""),g=c.state,_=String(g?.status||""),m=g?.input,k=It(m);if(r.push({timestamp:a,type:"tool_use",toolName:p,toolUseId:l,toolInput:k}),_==="completed"&&g?.output!==void 0){let y=g.output,I=typeof y=="string"?y:JSON.stringify(y);r.push({timestamp:a,type:"tool_result",toolUseId:l,resultPreview:I,isError:false});}else _==="error"&&r.push({timestamp:a,type:"tool_result",toolUseId:l,resultPreview:String(g?.error||"tool error"),isError:true});continue}if(u==="error"){let c=zl(i);r.push({timestamp:a,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?qk.has(r):!1}catch{return false}}};});var Vl=C(()=>{h();});function mo(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function Yk(t,e){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r],o=[...e].find(i=>s===i||s.startsWith(`${i}=`));o?s===o&&r+1<t.length&&(r+=1):n.push(s);}return n}function Qk(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],s=r.indexOf("="),o=s>0?r.slice(0,s):r;if(!Jk.has(o)){e.push(r);continue}r===o&&n+1<t.length&&!t[n+1].startsWith("-")&&(n+=1);}return e}function _t(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Zk(t,e){if(!(t?Vk.has(t)||an(ma).some(o=>o.id===t):false)||!t)return e;let r=rs(ma,t),s=ul(ma)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:s&&r.includes(s)?s:void 0:s}function Yt(t){return typeof t=="number"&&Number.isSafeInteger(t)&&t>=0?t:void 0}function ya(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 wa(t){return t.step.step_index}function me(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&oo(e)?.slice(0,500).trim()||void 0}function eT(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&Xk.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|argument)/].some(o=>o.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 tT(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 Yl(t){let e=_t(t)?t:void 0,n=e&&_t(e.error)?e.error:void 0,r=e?me(e.code)??me(e.error_code)??me(n?.code)??me(n?.error_code):void 0,s=typeof t=="string"?me(t):e?me(e.message)??me(e.error)??me(e.reason)??me(n?.message)??me(n?.error)??me(n?.reason):void 0,o=eT(r,s),i=e?Yt(e.retry_after_ms)??Yt(e.retryAfterMs)??Yt(n?.retry_after_ms)??Yt(n?.retryAfterMs):void 0;return {code:o,kind:tT(o),message:s??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function To(t){let e=Yl(t);return new oe(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function Ra(t){return new oe(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function nT(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=Ta))throw new oe(`Input is too large: final provider initial input is ${e} UTF-8 bytes; budget is ${Ta} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function ka(){return new oe("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 yo(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function wo(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 rT(t){let e=wo(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||yo(e.event)?.status!=="SUCCESS"||ko(t))return false;let r=new Map;for(let s of t){if(s.kind!=="step_update"||s.step.step_type!=="agent_response")continue;let o=ya(s),i=wa(s);!o||!Number.isSafeInteger(i)||r.set(JSON.stringify([o,i]),s.step);}if(r.size===0)return false;for(let s of r.values())if(s.state!=="DONE"||!_t(s.usage)||Yt(s.usage.input_tokens)===void 0||Yt(s.usage.output_tokens)===void 0)return false;return true}function sT(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function oT(t,e){return _t(t)&&_t(e)?{...e,...t}:_t(t)&&typeof e=="string"?{...t,message:e}:typeof t=="string"&&_t(e)?{...e,message:t}:t??e}function iT(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let o of e){let i=_t(o)?o:void 0,a=typeof o=="string"?me(o):me(i?.display_name)??me(i?.action);a&&!n.includes(a)&&n.length<5&&n.push(a.slice(0,80));}let r=Math.max(0,e.length-n.length),s=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new oe(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${s}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function ko(t){let e=wo(t);if(!e)return;if(e.event.kind==="agy_error")return To(e.event.error);let n=yo(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return iT(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return Ra("Antigravity returned a result with an unsupported status.");let r=n.error,s=oT(r==null||r===""?n:r,sT(t,e.index));return To(s)}function Ql(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function aT(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function dT(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function Zl(t){let e=Ql(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function uT(t){let e=_t(t)?t:void 0,n=e&&_t(e.error)?e.error:void 0,r=typeof t=="string"?t.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,s=(me(e?.type)??me(e?.code)??me(e?.error_type)??me(n?.type)??me(n?.code)??me(n?.error_type)??me(r)??"TOOL_ERROR").slice(0,60),o=Yl(t).message.slice(0,250);return Zl({type:s,message:o})??"Antigravity reported a tool error."}function Jl(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function Xl(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var ma,Vk,Jk,Ta,Xk,Ea,Sa=C(()=>{h();In();Vl();ta();ns();Nn();ss();ao();ma="antigravity",Vk=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),Jk=new Set(["--conversation","--resume","--continue"]),Ta=18e4,Xk=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"]);Ea={command:"agy",maxInitialInputBytes:Ta,meta:{displayName:"Antigravity",models:fl(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=es(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){nT(t);let{model:r,effort:s}=dn(e.model),o=da(r),i=o.model,a=e.effort??s??o.effort,u=Zk(i,a),c=e.additionalArgs??[],p=Qk(Yk(c,new Set(["--input-format","--output-format"]))),l=i&&!mo(c,"--model")?["--model",i]:[],g=mo(c,"--effort")?[]:Il(u),_=mo(c,"--mode")||mo(c,"--dangerously-skip-permissions")?[]:bl(e.mode),m=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...l,...g,..._,...m,...p],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
52
+ `),a=typeof e.error=="string"?e.error:un(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 s=String(e.name||e.tool_name||""),o=e.input,i=It(o);return s==="Bash"&&Bt(i)?Ft(t,i):{timestamp:t,type:"tool_use",toolName:s,toolInput:i}}if(r==="tool_result"){let s=!!e.is_error,o=String(e.output||e.content||"");return {timestamp:t,type:"tool_result",...bt(o,s)}}if(r==="web_search"){let s=e.action,o;if(s?.type==="search"){let i=s.queries;o=String(s.query||"")||(i?.length?i.join(", "):"")||String(e.query||"");}else o=e.query?"open: "+String(e.query):"";return !o&&!(un(s)&&s.type==="other"&&e.query==="")?null:{timestamp:t,type:"tool_use",toolName:"WebSearch",toolInput:o}}if(r==="file_change"){let s=e.changes;if(!Array.isArray(s)||s.length===0)return null;let o=s.map(a=>String(a.path||"")).filter(Boolean);if(o.length===0)return null;let i=o.length===1?o[0]:`${o.slice(0,2).join(", ")}${o.length>2?` (+${o.length-2})`:""}`;return {timestamp:t,type:"tool_use",toolName:"Edit",toolInput:i}}return null}function Fk(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||""),s=e.input,o=It(s);return r==="Bash"&&Bt(o)?Ft(t,o):{timestamp:t,type:"tool_use",toolName:r,toolInput:o}}return null}var Lk,Pk,fa,ga=C(()=>{h();In();ts();os();ar();ur();sa();dr();ss();Nn();vn();Lk=new Set(["turn.started","turn.completed","item.updated"]),Pk="cli/codex";fa={command:"codex",meta:{displayName:"Codex",models:ll(),capabilities:{resume:true}},buildArgs(t,e,n){let{model:r,effort:s}=dn(e.model),o=e.effort??s,i=e.resumeSessionId?ml(e.mode):hl(e.mode),a=kl(o),u=r?["-m",r]:[],c=$k(e.additionalArgs??[]),l=c.includes("--json")||c.includes("--experimental-json")?[]:["--json"];return e.resumeSessionId?{args:["exec","resume",...l,...i,...a,...u,...c,e.resumeSessionId,"-"],stdinMessage:t}:{args:["exec",...l,...i,...a,...u,...c],stdinMessage:t}},extractText(t){let e=Hk(t);if(e)throw new oe(e,Pk);let n=$l(t);if(n)return n;let r=t.trim();return Xt(r,"codex")?"":r},extractPartialText(t){return $l(t)},parseResultMeta(t){let e=cr(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(),s=[],o;try{JSON.parse(t),o=[t];}catch{o=Mk(t),o.length>1&&console.warn("[codex] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let[i,a]of o.entries()){let u;try{u=JSON.parse(a);}catch{continue}if(!un(u))continue;let c=u.type;if(!c)continue;let p=At(u,r);if(Ul(u)){let g=Bl(u);s.push({timestamp:p,type:"error",content:g,errorMessage:g});continue}if(!c.startsWith("item.")&&!c.startsWith("turn.")&&!c.startsWith("thread.")||ra(u))continue;c==="thread.started"&&n&&n.state.delete("codex.pending");let l=u.item;if(l){if(c==="item.started"){s.push(...Uk(p,l,Hl(l,c,n,i)));continue}if(c==="item.completed"){let g=Bk(p,l,Hl(l,c,n,i));g&&s.push(g);continue}}}return s},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?Lk.has(r):!1}catch{return false}}};});function Wk(t){return t?jk[t]??{agent:"build",autoApprove:false}:{agent:void 0,autoApprove:false}}function _o(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function Gl(t){let e=[],n=0,r=false,s=false,o=0;for(let a=0;a<t.length;a++){let u=t[a];if(s){s=false;continue}if(u==="\\"&&r){s=true;continue}if(u==='"'){r=!r;continue}if(!r){if(u==="{")n++;else if(u==="}"&&(n--,n===0)){let c=t.slice(o,a+1).trim();c&&e.push(c),o=a+1;}}}let i=t.slice(o).trim();return i&&e.push(i),e}function fr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Gk(t){let e=[],n=false;for(let r of t.split(/\r?\n/)){let s=r.trim();if(!s)continue;try{let i=JSON.parse(s);fr(i)?e.push(i):n=!0;continue}catch{}let o=Gl(s);o.length>1&&console.warn("[opencode] extractText: falling back to concatenated-JSON split for a malformed line");for(let i of o)try{let a=JSON.parse(i);fr(a)?e.push(a):n=!0;}catch{n=true;}}return {events:e,malformed:n}}function Cn(t){if(typeof t!="string")return;let e=t.split(/\r?\n/).map(n=>n.trim()).find(n=>n&&!/^at\s+/.test(n));if(e)return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"").replace(/(?:[A-Za-z]:[\\/]|\/)(?:[^\s"'`()\[\]{}]+[\\/])*[^\s"'`()\[\]{}]+/g,"[path]").slice(0,Wl).trim()}function zl(t){let e=fr(t.error)?t.error:void 0,n=e&&fr(e.data)?e.data:void 0,r=Cn(e?.name),s=Cn(n?.message)??Cn(e?.message)??Cn(t.message)??Cn(t.errorMessage)??Cn(t.error),o=Cn(t.ref),i=r&&s&&r!==s?`${r}: ${s}`:r??s??jl;return (o?`${i} (ref: ${o})`:i).slice(0,Wl)}function Fl(t){let e=Gk(t),n=[],r=null,s=0,o=[],i,a=false;for(let u of e.events){let c=typeof u.type=="string"?u.type:void 0;if(c){if(c==="text"){let p=fr(u.part)?u.part:void 0,l=typeof p?.text=="string"?p.text:void 0;l?.trim()&&n.push(l.trim());continue}if(c==="result"){typeof u.result=="string"&&(r=u.result);continue}if(c==="tool_use"){s++;continue}if(c==="error"){o.push(zl(u));continue}if(c==="step_finish"){a=true;let p=fr(u.part)?u.part:void 0;i=typeof p?.reason=="string"?p.reason:void 0;}}}return {...e,texts:n,resultText:r,toolUseCount:s,errorMessages:o,terminalReason:i,hasTerminal:a}}function Kl(t){return (t??"unknown").trim().toLowerCase().replace(/_/g,"-")}function ho(){return new oe("OpenCode returned no assistant output.",pr,{code:"EMPTY_OUTPUT",kind:"transient"})}function zk(){return new oe("OpenCode emitted malformed JSON output.",pr,{code:"PROVIDER_CRASHED",kind:"transient"})}function ql(t,e){switch(Kl(t)){case "length":return new oe("OpenCode stopped because the context window was exceeded.",pr,{code:"UNKNOWN",kind:"permanent"});case "content-filter":return new oe("OpenCode stopped because the content filter blocked the response.",pr,{code:"UNKNOWN",kind:"permanent"});case "error":return new oe(e?`OpenCode error: ${e}`:`${jl} while generating a response.`,pr,{code:"PROVIDER_CRASHED",kind:"transient"});default:return null}}var qk,pr,jl,Wl,jk,_a,ha=C(()=>{h();In();os();ur();vn();qk=new Set(["step_start","step_finish"]),pr="cli/opencode",jl="OpenCode provider error",Wl=240,jk={build:{agent:"build",autoApprove:false},"build-auto":{agent:"build",autoApprove:true},plan:{agent:"plan",autoApprove:false},"plan-auto":{agent:"plan",autoApprove:true}};_a={command:"opencode",meta:{displayName:"OpenCode",capabilities:{resume:true}},buildArgs(t,e,n){let r=e.additionalArgs,s=r!==void 0?[...r]:["run"];_o(s,"--format")||s.push("--format","json"),e.resumeSessionId&&!s.includes("-s")&&!s.includes("--session")&&s.push("-s",e.resumeSessionId);let{agent:o,autoApprove:i}=Wk(e.mode);_o(s,"--agent")||o!==void 0&&s.push("--agent",o),i&&!_o(s,"--auto")&&s.push("--auto"),e.effort!==void 0&&!_o(s,"--variant")&&s.push("--variant",e.effort),e.model&&s.push("--model",e.model);let a;return !n&&!i&&!e.env?.OPENCODE_PERMISSION&&(a={OPENCODE_PERMISSION:JSON.stringify({external_directory:"allow"})}),{args:s,stdinMessage:t,env:a}},extractText(t){let e=Fl(t),n=e.errorMessages[0];if(n){let i=ql("error",n);if(i)throw i}let r=ql(e.terminalReason??"",void 0);if(r)throw r;let s=e.texts.length>0?e.texts[e.texts.length-1]:void 0;if(s!==void 0){if(!e.hasTerminal)throw ho();return s}if(e.resultText?.trim()){if(!e.hasTerminal)throw ho();return e.resultText}if(e.malformed)throw zk();if(!e.hasTerminal)throw ho();let o=Kl(e.terminalReason);if((o==="stop"||o==="tool-calls")&&e.toolUseCount>0)return "";throw ho()},interpretExit(t,e,n=""){if(t===0)return null;let s=Fl(n).errorMessages[0];return s?new oe(`OpenCode error: ${s}`,pr,{code:"PROVIDER_CRASHED",kind:"transient"}):null},parseResultMeta(t){let e=cr(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=e??new Date().toISOString(),r=[],s;try{JSON.parse(t),s=[t];}catch{s=Gl(t),s.length>1&&console.warn("[opencode] parseEvent: falling back to concatenated-JSON split for a malformed line");}for(let o of s){let i;try{i=JSON.parse(o);}catch{continue}let a=At(i,n),u=i.type;if(u){if(u==="text"){let p=i.part?.text;p&&r.push({timestamp:a,type:"text",content:p});continue}if(u==="tool_use"){let c=i.part;if(!c)continue;let p=String(c.tool||""),l=String(c.callID||""),g=c.state,_=String(g?.status||""),m=g?.input,k=It(m);if(r.push({timestamp:a,type:"tool_use",toolName:p,toolUseId:l,toolInput:k}),_==="completed"&&g?.output!==void 0){let y=g.output,I=typeof y=="string"?y:JSON.stringify(y);r.push({timestamp:a,type:"tool_result",toolUseId:l,resultPreview:I,isError:false});}else _==="error"&&r.push({timestamp:a,type:"tool_result",toolUseId:l,resultPreview:String(g?.error||"tool error"),isError:true});continue}if(u==="error"){let c=zl(i);r.push({timestamp:a,type:"error",content:c,errorMessage:c});continue}}}return r},suppressOutputLine(t){let e=t.trim();if(!e.startsWith("{")||!e.endsWith("}"))return false;try{let r=JSON.parse(e).type;return r?qk.has(r):!1}catch{return false}}};});var Vl=C(()=>{h();});function mo(t,e){return t.some(n=>n===e||n.startsWith(`${e}=`))}function Yk(t,e){let n=[];for(let r=0;r<t.length;r+=1){let s=t[r],o=[...e].find(i=>s===i||s.startsWith(`${i}=`));o?s===o&&r+1<t.length&&(r+=1):n.push(s);}return n}function Qk(t){let e=[];for(let n=0;n<t.length;n+=1){let r=t[n],s=r.indexOf("="),o=s>0?r.slice(0,s):r;if(!Jk.has(o)){e.push(r);continue}r===o&&n+1<t.length&&!t[n+1].startsWith("-")&&(n+=1);}return e}function _t(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Zk(t,e){if(!(t?Vk.has(t)||an(ma).some(o=>o.id===t):false)||!t)return e;let r=rs(ma,t),s=ul(ma)[t]?.defaultEffort;if(r.length!==0)return e?r.includes(e)?e:s&&r.includes(s)?s:void 0:s}function Yt(t){return typeof t=="number"&&Number.isSafeInteger(t)&&t>=0?t:void 0}function ya(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 wa(t){return t.step.step_index}function me(t){if(typeof t!="string")return;let e=t.split(/\r?\n/,1)[0]?.trim();return e&&oo(e)?.slice(0,500).trim()||void 0}function eT(t,e){let n=(t??"").trim().toUpperCase().replace(/[^A-Z0-9]+/g,"_");if(n!=="UNKNOWN"&&Xk.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(o=>o.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 tT(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 Yl(t){let e=_t(t)?t:void 0,n=e&&_t(e.error)?e.error:void 0,r=e?me(e.code)??me(e.error_code)??me(n?.code)??me(n?.error_code):void 0,s=typeof t=="string"?me(t):e?me(e.message)??me(e.error)??me(e.reason)??me(n?.message)??me(n?.error)??me(n?.reason):void 0,o=eT(r,s),i=e?Yt(e.retry_after_ms)??Yt(e.retryAfterMs)??Yt(n?.retry_after_ms)??Yt(n?.retryAfterMs):void 0;return {code:o,kind:tT(o),message:s??"Antigravity reported a terminal error.",...i===void 0?{}:{retryAfterMs:i}}}function To(t){let e=Yl(t);return new oe(e.message,"cli/antigravity",{code:e.code,kind:e.kind,...e.retryAfterMs===void 0?{}:{retryAfterMs:e.retryAfterMs}})}function Ra(t){return new oe(t,"cli/antigravity",{code:"INVALID_PROVIDER_FORMAT",kind:"config"})}function nT(t){let e=new TextEncoder().encode(t).byteLength;if(!(e<=Ta))throw new oe(`Input is too large: final provider initial input is ${e} UTF-8 bytes; budget is ${Ta} bytes.`,"cli/antigravity",{code:"UNKNOWN",kind:"config"})}function ka(){return new oe("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 yo(t){if(t.kind==="result"||t.kind==="legacy_result")return t.result}function wo(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 rT(t){let e=wo(t);if(!e||e.event.kind==="agy_error"||e.index!==t.length-1||yo(e.event)?.status!=="SUCCESS"||ko(t))return false;let r=new Map;for(let s of t){if(s.kind!=="step_update"||s.step.step_type!=="agent_response")continue;let o=ya(s),i=wa(s);!o||!Number.isSafeInteger(i)||r.set(JSON.stringify([o,i]),s.step);}if(r.size===0)return false;for(let s of r.values())if(s.state!=="DONE"||!_t(s.usage)||Yt(s.usage.input_tokens)===void 0||Yt(s.usage.output_tokens)===void 0)return false;return true}function sT(t,e){for(let n=e-1;n>=0;n-=1){let r=t[n];if(r?.kind==="agy_error")return r.error}}function oT(t,e){return _t(t)&&_t(e)?{...e,...t}:_t(t)&&typeof e=="string"?{...t,message:e}:typeof t=="string"&&_t(e)?{...e,message:t}:t??e}function iT(t){let e=Array.isArray(t.denied_actions)?t.denied_actions:[],n=[];for(let o of e){let i=_t(o)?o:void 0,a=typeof o=="string"?me(o):me(i?.display_name)??me(i?.action);a&&!n.includes(a)&&n.length<5&&n.push(a.slice(0,80));}let r=Math.max(0,e.length-n.length),s=n.length>0?` (${n.join(", ")}${r>0?`, +${r} more`:""})`:"";return new oe(`Permission denied: Antigravity blocked ${e.length} requested action${e.length===1?"":"s"}${s}.`,"cli/antigravity",{code:"UNKNOWN",kind:"permanent"})}function ko(t){let e=wo(t);if(!e)return;if(e.event.kind==="agy_error")return To(e.event.error);let n=yo(e.event);if(!n)return;if(Array.isArray(n.denied_actions)&&n.denied_actions.length>0)return iT(n);if(n.status==="SUCCESS")return;if(n.status!=="ERROR")return Ra("Antigravity returned a result with an unsupported status.");let r=n.error,s=oT(r==null||r===""?n:r,sT(t,e.index));return To(s)}function Ql(t){if(typeof t=="string")return t;if(t!=null)try{return JSON.stringify(t)}catch{return}}function aT(t){return `agy:${String(t.conversation_id)}:${String(t.step_index)}`}function dT(t,e){let n=typeof e?.name=="string"?e.name:t.tool_name;return typeof n=="string"&&n.trim()?n:void 0}function Zl(t){let e=Ql(t);if(e)return e.length<=2e3?e:`${e.slice(0,1999)}\u2026`}function uT(t){let e=_t(t)?t:void 0,n=e&&_t(e.error)?e.error:void 0,r=typeof t=="string"?t.trim().match(/^([A-Z][A-Z0-9_]*)(?:[:\s]|$)/)?.[1]:void 0,s=(me(e?.type)??me(e?.code)??me(e?.error_type)??me(n?.type)??me(n?.code)??me(n?.error_type)??me(r)??"TOOL_ERROR").slice(0,60),o=Yl(t).message.slice(0,250);return Zl({type:s,message:o})??"Antigravity reported a tool error."}function Jl(t,e){return t?t.state.has(e)?true:(t.state.set(e,true),false):false}function Xl(t,e){return {timestamp:t,type:"error",content:e.message,errorMessage:e.message,isError:true}}var ma,Vk,Jk,Ta,Xk,Ea,Sa=C(()=>{h();In();Vl();ta();ns();Nn();ss();ao();ma="antigravity",Vk=new Set(["claude-sonnet-4-6","claude-opus-4-6-thinking","gpt-oss-120b"]),Jk=new Set(["--conversation","--resume","--continue"]),Ta=18e4,Xk=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"]);Ea={command:"agy",maxInitialInputBytes:Ta,meta:{displayName:"Antigravity",models:fl(),defaultIdleMs:6e5,capabilities:{resume:true,usageCompleteness:true}},extractSessionId(t){let e=es(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){nT(t);let{model:r,effort:s}=dn(e.model),o=da(r),i=o.model,a=e.effort??s??o.effort,u=Zk(i,a),c=e.additionalArgs??[],p=Qk(Yk(c,new Set(["--input-format","--output-format"]))),l=i&&!mo(c,"--model")?["--model",i]:[],g=mo(c,"--effort")?[]:Il(u),_=mo(c,"--mode")||mo(c,"--dangerously-skip-permissions")?[]:bl(e.mode),m=typeof e.resumeSessionId=="string"&&e.resumeSessionId.trim().length>0?["--conversation",e.resumeSessionId]:[];return {args:["--input-format","stream-json","--output-format","stream-json",...l,...g,..._,...m,...p],stdinMessage:`${JSON.stringify({event:"user",message:{content:t}})}
53
53
  `,env:{AGY_CLI_DISABLE_AUTO_UPDATE:"true"}}},extractText(t){let e=On(t),n=wo(e)?.event,r=ko(e);if(r)throw r;let s=n?yo(n):void 0;if(s){if(s.status!=="SUCCESS")throw Ra("Antigravity returned a result with an unsupported status.");if(typeof s.response!="string")throw Ra("Antigravity returned a successful result without a response string.");if(!s.response.trim())throw ka();return s.response}if(e.length>0)throw ka();let o=t.trim();if(!o)throw ka();return o},extractPartialText(t){let e=On(t),n=wo(e)?.event;if(!n||n.kind==="agy_error")return;let r=yo(n);return r&&typeof r.response=="string"&&r.response.trim()?r.response:void 0},interpretExit(t,e,n){let r=On(n??""),s=ko(r);return s||(t!==0&&e.trim()?To(e):null)},parseResultMeta(t){let e=On(t),n=0,r=0,s=0,o=0,i=new Set;for(let u of e){if(u.kind!=="step_update"||u.step.state!=="DONE"||!_t(u.step.usage))continue;let c=ya(u),p=wa(u);if(!c||!Number.isSafeInteger(p))continue;let l=JSON.stringify([c,p]);if(i.has(l))continue;let g=u.step.usage,_=Yt(g.input_tokens),m=Yt(g.output_tokens);_===void 0||m===void 0||(i.add(l),n+=_,r+=m,s+=Yt(g.cache_read_tokens)??0,o+=1);}return {usage:o===0?null:{inputTokens:n,outputTokens:r,cachedInputTokens:s,costUsd:0,complete:rT(e)},model:null}},parseEvent(t,e,n){let r=es(t);if(!r)return [];let s=e??new Date().toISOString();if(r.kind==="agy_error")return [Xl(s,To(r.error))];if(r.kind==="legacy_result"||r.kind==="result"){let _=ko([r]);return _?[Xl(s,_)]:[]}if(r.kind!=="step_update")return [];let{step:o}=r,i=ya(r)??"unknown",a=wa(r),u=`${i}:${a}`;if((o.state==="DONE"||o.state==="ERROR")&&Jl(n,`antigravity:terminal:${u}`))return [];if(o.step_type==="agent_response")return typeof o.text_delta=="string"&&o.text_delta.length>0?[{timestamp:s,type:"text",content:o.text_delta}]:[];if(o.step_type!=="tool")return [];let c=_t(o.tool_info)?o.tool_info:void 0,p=dT(o,c);if(!p)return [];let l=aT(o);if(o.state==="ACTIVE"){if(Jl(n,`antigravity:active:${u}`))return [];let _=Ql(c?.parameters);return [{timestamp:s,type:"tool_use",toolName:p,toolUseId:l,..._===void 0?{}:{toolInput:_}}]}let g=o.state==="ERROR"?uT(c?.error):Zl(c?.output);return [{timestamp:s,type:"tool_result",toolName:p,toolUseId:l,...g===void 0?{}:{resultPreview:g},...o.state==="ERROR"?{isError:true}:{}}]}};});var ep=C(()=>{h();ar();ur();dr();vn();});function gr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function _r(t){return gr(t)?t:void 0}function Xe(t){return typeof t=="string"?t:void 0}function xn(t){let e=typeof t=="number"?t:Number(t??0);return Number.isFinite(e)?e:0}function gT(t){let e=[],n=-1,r=0,s=false,o=false;for(let i=0;i<t.length;i+=1){let a=t[i];if(n===-1){(a==="{"||a==="[")&&(n=i,r=1);continue}if(o){o=false;continue}if(a==="\\"&&s){o=true;continue}if(a==='"'){s=!s;continue}s||(a==="{"||a==="["?r+=1:(a==="}"||a==="]")&&(r-=1,r===0&&(e.push(t.slice(n,i+1)),n=-1)));}return n!==-1&&e.push(t.slice(n)),e}function is(t){let e=t.trim();if(!e)return [];try{let n=JSON.parse(e);return gr(n)?[n]:[]}catch{return gT(e).flatMap(n=>{try{let r=JSON.parse(n);return gr(r)?[r]:[]}catch{return []}})}}function op(t){let e=JSON.stringify(t);return e===void 0?String(t):e}function Dn(t){if(typeof t=="string")return t;if(Array.isArray(t)){let e=t.map(Dn).filter(n=>n!==void 0);return e.length>0?e.join(`
54
54
  `):void 0}if(gr(t)){if(typeof t.text=="string")return t.text;if(typeof t.message=="string")return t.message;if(typeof t.error=="string")return t.error;if(t.type==="text"&&typeof t.data=="string")return t.data;for(let e of ["content","FileContent","rawOutput"]){let n=Dn(t[e]);if(n!==void 0)return n}}}function _T(t){let e=i=>Array.isArray(i)&&i.every(a=>Number.isInteger(a)&&a>=0&&a<=255),n=i=>typeof i=="string"&&i.trim().length>0?i:void 0,r=i=>new TextDecoder("utf-8",{fatal:false}).decode(Uint8Array.from(i)),s=i=>{let a=JSON.stringify(i,(u,c)=>e(c)?`<bytes:${c.length}>`:c);return a===void 0?String(i):a},o=t.rawOutput;if(o!=null){let i=_r(o);if(!i)return n(Dn(o))??s(o);let a;if(e(i.output)&&i.output.length>0&&(a=n(r(i.output))),!a&&e(i.stdout)&&i.stdout.length>0&&(a=n(r(i.stdout))),!a){let p=_r(i.Result);a=n(i.output)??n(p?.output)??n(Dn(o));}let u=e(i.stderr)&&i.stderr.length>0?r(i.stderr):void 0;if(u!==void 0)if(a){let p=a.endsWith(`
55
55
  `)||a.endsWith("\r")?"":`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crewx/sdk",
3
- "version": "0.9.0-rc.192",
3
+ "version": "0.9.0-rc.194",
4
4
  "license": "UNLICENSED",
5
5
  "engines": {
6
6
  "node": ">=20.19.0"