@hiperplano/aluy-cli 1.0.0-rc.13 → 1.0.0-rc.14

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.
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- var iU=Object.defineProperty;var p=(t,e,o)=>()=>{if(o)throw o[0];try{return t&&(e=t(t=0)),e}catch(n){throw o=[n],n}};var yt=(t,e)=>{for(var o in e)iU(t,o,{get:e[o],enumerable:!0})};import{homedir as aU}from"node:os";import{join as cU}from"node:path";function mc(t=aU()){return cU(t,".aluy")}var Pu=p(()=>{"use strict"});var fc,xA=p(()=>{"use strict";fc="1.0.0-rc.13"});function sr(t,e){return t.decide(e)}var Es=p(()=>{"use strict"});var Cn,ir,ar=p(()=>{"use strict";Cn="remember",ir="recall"});var Kh,lU,$i,Yh=p(()=>{"use strict";Kh=class{id;horizon;label;parentId;children;dependencies;pinned;closed;createdAt;lastAccessedAt;accessCount;context;constructor(e,o,n,r,s){this.id=e,this.horizon=o,this.label=n,this.parentId=r,this.children=new Set,this.dependencies=new Set,this.pinned=!1,this.closed=!1,this.createdAt=s,this.lastAccessedAt=s,this.accessCount=0,this.context=[]}touch(e){this.lastAccessedAt=e,this.accessCount+=1}snapshot(){return{id:this.id,horizon:this.horizon,label:this.label,parentId:this.parentId,children:[...this.children],dependencies:[...this.dependencies],pinned:this.pinned,closed:this.closed,createdAt:this.createdAt,lastAccessedAt:this.lastAccessedAt,accessCount:this.accessCount,contextSize:this.context.length}}},lU=200,$i=class{nodes=new Map;maxBoxes;now;constructor(e){this.maxBoxes=e?.maxBoxes??lU,this.now=e?.clock??Date.now}static boxId(e,o){return`${e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,60)}-${o.toString(36)}`}openBox(e,o,n,r){let s=this.nodes.get(e);if(s)return s.touch(this.now()),{box:s.snapshot(),created:!1};if(this.nodes.size>=this.maxBoxes&&(this.evictOne(),this.nodes.size>=this.maxBoxes))return null;let i=this.now(),a=new Kh(e,o,n,r??null,i);if(r){let c=this.nodes.get(r);c&&c.children.add(e)}return this.nodes.set(e,a),{box:a.snapshot(),created:!0}}closeBox(e){let o=this.nodes.get(e);return o?(o.closed=!0,o.touch(this.now()),o.snapshot()):null}isClosed(e){let o=this.nodes.get(e);return o?o.closed:!1}reopenBox(e){let o=this.nodes.get(e);return o?(o.closed=!1,o.touch(this.now()),o.snapshot()):null}setHorizon(e,o){let n=this.nodes.get(e);return n?(n.horizon=o,n.touch(this.now()),n.snapshot()):null}setParent(e,o){let n=this.nodes.get(e);return n?n.parentId===o?n.snapshot():o!==null&&this.wouldCreateCycle(e,o)?null:(n.parentId&&this.nodes.get(n.parentId)?.children.delete(e),n.parentId=o,o&&this.nodes.get(o)?.children.add(e),n.touch(this.now()),n.snapshot()):null}wouldCreateCycle(e,o){let n=new Set,r=o;for(;r!==null;){if(r===e||n.has(r))return!0;n.add(r),r=this.nodes.get(r)?.parentId??null}return!1}getBox(e){let o=this.nodes.get(e);return o?(o.touch(this.now()),o.snapshot()):null}listBoxes(e="lastAccessedAt"){let o=[...this.nodes.values()].map(n=>n.snapshot());switch(e){case"createdAt":return o.sort((n,r)=>n.createdAt-r.createdAt);case"accessCount":return o.sort((n,r)=>r.accessCount-n.accessCount);default:return o.sort((n,r)=>r.lastAccessedAt-n.lastAccessedAt)}}get size(){return this.nodes.size}addContext(e,o){let n=this.nodes.get(e);return n?(n.context.push({ts:this.now(),text:o}),n.touch(this.now()),n.snapshot()):null}getContext(e){let o=this.nodes.get(e);return o?(o.touch(this.now()),[...o.context]):[]}getContextChain(e){let o=[],n=new Set,r=e;for(;r&&!n.has(r);){n.add(r);let s=this.nodes.get(r);if(!s)break;s.touch(this.now()),o.push({boxId:s.id,entries:[...s.context]}),r=s.parentId}return o}addDependency(e,o){let n=this.nodes.get(e);return!n||!this.nodes.has(o)||n.id===o?!1:(n.dependencies.add(o),n.touch(this.now()),!0)}getDependencies(e){let o=this.nodes.get(e);return o?[...o.dependencies]:[]}pinBox(e){let o=this.nodes.get(e);return o?(o.pinned=!0,o.touch(this.now()),o.snapshot()):null}unpinBox(e){let o=this.nodes.get(e);return o?(o.pinned=!1,o.touch(this.now()),o.snapshot()):null}evictOne(){let e=[];for(let n of this.nodes.values())n.horizon==="longo"||n.pinned||e.push(n);if(e.length===0)return null;e.sort((n,r)=>{let s=n.horizon==="curto"?0:1,i=r.horizon==="curto"?0:1;if(s!==i)return s-i;let a=n.closed?0:1,c=r.closed?0:1;return a!==c?a-c:n.lastAccessedAt!==r.lastAccessedAt?n.lastAccessedAt-r.lastAccessedAt:n.accessCount-r.accessCount});let o=e[0];return this.removeNode(o)}forceEvict(e){let o=this.nodes.get(e);return!o||o.horizon==="longo"||o.pinned?null:this.removeNode(o)}removeBox(e){let o=this.nodes.get(e);return o?this.removeNode(o):null}removeNode(e){if(e.parentId){let o=this.nodes.get(e.parentId);o&&o.children.delete(e.id)}return this.nodes.delete(e.id),e.snapshot()}}});function Iu(t){let e=[];for(let o of t){e.push({step:o,depth:0});for(let n of o.substeps??[])e.push({step:n,depth:1})}return e}function AA(t,e){let o,n="pending",r;if(typeof t=="string")o=t;else if(t!==null&&typeof t=="object"){let i=t,a=i.title??i.step??i.text??i.name??i.content;if(typeof a=="string"&&(o=a),typeof i.status=="string"&&dU.has(i.status)&&(n=i.status),e){let c=i.substeps??i.subtasks??i.subpassos??i.children;if(Array.isArray(c)&&c.length>0){let l=[];for(let d of c){let m=AA(d,!1);if(typeof m=="string")return m;l.push(m)}r=l}}}if(o===void 0||o.trim()==="")return mU;let s=o.trim().slice(0,uU);return r?{title:s,status:n,substeps:r}:{title:s,status:n}}function fU(t){let e=t.steps??t.plan??t.todos??t.items;if(!Array.isArray(e))return{error:'update_plan: passe "steps" como uma LISTA de passos (string ou {title,status}).'};if(e.length===0)return{error:"update_plan: a lista de passos est\xE1 vazia."};let o=[];for(let i of e){let a=AA(i,!0);if(typeof a=="string")return{error:a};o.push(a)}let n=new Set,r=i=>{if(!n.has(i))return n.add(i),i;for(let a=2;;a++){let c=`${i} #${a}`;if(!n.has(c))return n.add(c),c}};for(let i=0;i<o.length;i++){let a=o[i],c=r(a.title),l=a.substeps?.map(d=>({...d,title:r(d.title)}));o[i]=l!==void 0?{...a,title:c,substeps:l}:{...a,title:c}}let s=Iu(o).length;return s>SA?{error:`update_plan: no m\xE1ximo ${SA} passos (recebidos ${s}).`}:{steps:o}}function pU(t){let e=Iu(t),o=e.filter(r=>r.step.status==="completed").length,n=e.map(r=>`${" ".repeat(r.depth)}${EA[r.step.status]} ${r.step.title}`).join(`
2
+ var iU=Object.defineProperty;var p=(t,e,o)=>()=>{if(o)throw o[0];try{return t&&(e=t(t=0)),e}catch(n){throw o=[n],n}};var yt=(t,e)=>{for(var o in e)iU(t,o,{get:e[o],enumerable:!0})};import{homedir as aU}from"node:os";import{join as cU}from"node:path";function mc(t=aU()){return cU(t,".aluy")}var Pu=p(()=>{"use strict"});var fc,xA=p(()=>{"use strict";fc="1.0.0-rc.14"});function sr(t,e){return t.decide(e)}var Es=p(()=>{"use strict"});var Cn,ir,ar=p(()=>{"use strict";Cn="remember",ir="recall"});var Kh,lU,$i,Yh=p(()=>{"use strict";Kh=class{id;horizon;label;parentId;children;dependencies;pinned;closed;createdAt;lastAccessedAt;accessCount;context;constructor(e,o,n,r,s){this.id=e,this.horizon=o,this.label=n,this.parentId=r,this.children=new Set,this.dependencies=new Set,this.pinned=!1,this.closed=!1,this.createdAt=s,this.lastAccessedAt=s,this.accessCount=0,this.context=[]}touch(e){this.lastAccessedAt=e,this.accessCount+=1}snapshot(){return{id:this.id,horizon:this.horizon,label:this.label,parentId:this.parentId,children:[...this.children],dependencies:[...this.dependencies],pinned:this.pinned,closed:this.closed,createdAt:this.createdAt,lastAccessedAt:this.lastAccessedAt,accessCount:this.accessCount,contextSize:this.context.length}}},lU=200,$i=class{nodes=new Map;maxBoxes;now;constructor(e){this.maxBoxes=e?.maxBoxes??lU,this.now=e?.clock??Date.now}static boxId(e,o){return`${e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,60)}-${o.toString(36)}`}openBox(e,o,n,r){let s=this.nodes.get(e);if(s)return s.touch(this.now()),{box:s.snapshot(),created:!1};if(this.nodes.size>=this.maxBoxes&&(this.evictOne(),this.nodes.size>=this.maxBoxes))return null;let i=this.now(),a=new Kh(e,o,n,r??null,i);if(r){let c=this.nodes.get(r);c&&c.children.add(e)}return this.nodes.set(e,a),{box:a.snapshot(),created:!0}}closeBox(e){let o=this.nodes.get(e);return o?(o.closed=!0,o.touch(this.now()),o.snapshot()):null}isClosed(e){let o=this.nodes.get(e);return o?o.closed:!1}reopenBox(e){let o=this.nodes.get(e);return o?(o.closed=!1,o.touch(this.now()),o.snapshot()):null}setHorizon(e,o){let n=this.nodes.get(e);return n?(n.horizon=o,n.touch(this.now()),n.snapshot()):null}setParent(e,o){let n=this.nodes.get(e);return n?n.parentId===o?n.snapshot():o!==null&&this.wouldCreateCycle(e,o)?null:(n.parentId&&this.nodes.get(n.parentId)?.children.delete(e),n.parentId=o,o&&this.nodes.get(o)?.children.add(e),n.touch(this.now()),n.snapshot()):null}wouldCreateCycle(e,o){let n=new Set,r=o;for(;r!==null;){if(r===e||n.has(r))return!0;n.add(r),r=this.nodes.get(r)?.parentId??null}return!1}getBox(e){let o=this.nodes.get(e);return o?(o.touch(this.now()),o.snapshot()):null}listBoxes(e="lastAccessedAt"){let o=[...this.nodes.values()].map(n=>n.snapshot());switch(e){case"createdAt":return o.sort((n,r)=>n.createdAt-r.createdAt);case"accessCount":return o.sort((n,r)=>r.accessCount-n.accessCount);default:return o.sort((n,r)=>r.lastAccessedAt-n.lastAccessedAt)}}get size(){return this.nodes.size}addContext(e,o){let n=this.nodes.get(e);return n?(n.context.push({ts:this.now(),text:o}),n.touch(this.now()),n.snapshot()):null}getContext(e){let o=this.nodes.get(e);return o?(o.touch(this.now()),[...o.context]):[]}getContextChain(e){let o=[],n=new Set,r=e;for(;r&&!n.has(r);){n.add(r);let s=this.nodes.get(r);if(!s)break;s.touch(this.now()),o.push({boxId:s.id,entries:[...s.context]}),r=s.parentId}return o}addDependency(e,o){let n=this.nodes.get(e);return!n||!this.nodes.has(o)||n.id===o?!1:(n.dependencies.add(o),n.touch(this.now()),!0)}getDependencies(e){let o=this.nodes.get(e);return o?[...o.dependencies]:[]}pinBox(e){let o=this.nodes.get(e);return o?(o.pinned=!0,o.touch(this.now()),o.snapshot()):null}unpinBox(e){let o=this.nodes.get(e);return o?(o.pinned=!1,o.touch(this.now()),o.snapshot()):null}evictOne(){let e=[];for(let n of this.nodes.values())n.horizon==="longo"||n.pinned||e.push(n);if(e.length===0)return null;e.sort((n,r)=>{let s=n.horizon==="curto"?0:1,i=r.horizon==="curto"?0:1;if(s!==i)return s-i;let a=n.closed?0:1,c=r.closed?0:1;return a!==c?a-c:n.lastAccessedAt!==r.lastAccessedAt?n.lastAccessedAt-r.lastAccessedAt:n.accessCount-r.accessCount});let o=e[0];return this.removeNode(o)}forceEvict(e){let o=this.nodes.get(e);return!o||o.horizon==="longo"||o.pinned?null:this.removeNode(o)}removeBox(e){let o=this.nodes.get(e);return o?this.removeNode(o):null}removeNode(e){if(e.parentId){let o=this.nodes.get(e.parentId);o&&o.children.delete(e.id)}return this.nodes.delete(e.id),e.snapshot()}}});function Iu(t){let e=[];for(let o of t){e.push({step:o,depth:0});for(let n of o.substeps??[])e.push({step:n,depth:1})}return e}function AA(t,e){let o,n="pending",r;if(typeof t=="string")o=t;else if(t!==null&&typeof t=="object"){let i=t,a=i.title??i.step??i.text??i.name??i.content;if(typeof a=="string"&&(o=a),typeof i.status=="string"&&dU.has(i.status)&&(n=i.status),e){let c=i.substeps??i.subtasks??i.subpassos??i.children;if(Array.isArray(c)&&c.length>0){let l=[];for(let d of c){let m=AA(d,!1);if(typeof m=="string")return m;l.push(m)}r=l}}}if(o===void 0||o.trim()==="")return mU;let s=o.trim().slice(0,uU);return r?{title:s,status:n,substeps:r}:{title:s,status:n}}function fU(t){let e=t.steps??t.plan??t.todos??t.items;if(!Array.isArray(e))return{error:'update_plan: passe "steps" como uma LISTA de passos (string ou {title,status}).'};if(e.length===0)return{error:"update_plan: a lista de passos est\xE1 vazia."};let o=[];for(let i of e){let a=AA(i,!0);if(typeof a=="string")return{error:a};o.push(a)}let n=new Set,r=i=>{if(!n.has(i))return n.add(i),i;for(let a=2;;a++){let c=`${i} #${a}`;if(!n.has(c))return n.add(c),c}};for(let i=0;i<o.length;i++){let a=o[i],c=r(a.title),l=a.substeps?.map(d=>({...d,title:r(d.title)}));o[i]=l!==void 0?{...a,title:c,substeps:l}:{...a,title:c}}let s=Iu(o).length;return s>SA?{error:`update_plan: no m\xE1ximo ${SA} passos (recebidos ${s}).`}:{steps:o}}function pU(t){let e=Iu(t),o=e.filter(r=>r.step.status==="completed").length,n=e.map(r=>`${" ".repeat(r.depth)}${EA[r.step.status]} ${r.step.title}`).join(`
3
3
  `);return`plano (${o}/${e.length}):
4
4
  ${n}`}function gU(t,e){return e<0?"m\xE9dio":t===e?"curto":t>e?"longo":"m\xE9dio"}function yU(t,e){let o=new Map;for(let i of e.listBoxes())o.set(i.label,i.id);let n=t.findIndex(i=>i.status==="in_progress"||(i.substeps??[]).some(a=>a.status==="in_progress")),r=(i,a,c)=>{let l=i.status==="in_progress"?"curto":c,d=o.get(i.title),m=d??$i.boxId(i.title,0);return d?(i.status!=="completed"&&e.isClosed(d)&&e.reopenBox(d),e.setHorizon(d,l),e.setParent(d,a)):e.openBox(m,l,i.title,a),i.status==="completed"&&!e.isClosed(m)&&e.closeBox(m),o.set(i.title,m),m};t.forEach((i,a)=>{let c=gU(a,n),l=r(i,null,c);for(let d of i.substeps??[])r(d,l,c)});let s=new Set;for(let i of t){s.add(i.title);for(let a of i.substeps??[])s.add(a.title)}for(let i of e.listBoxes())s.has(i.label)||e.removeBox(i.id)}function bU(t,e){if(!e)return pU(t);let o=new Map;for(let l of e.listBoxes())o.set(l.label,l);let n=new Map;for(let l of e.listBoxes())n.set(l.id,l);let r=new Map,s=(l,d=new Set)=>{let m=r.get(l);if(m!==void 0)return m;let u=n.get(l);if(!u||!u.parentId||d.has(l))return r.set(l,0),0;let h=s(u.parentId,new Set(d).add(l))+1;return r.set(l,h),h},i=Iu(t),c=[`plano (${i.filter(l=>l.step.status==="completed").length}/${i.length}):`];for(let{step:l,depth:d}of i){let m=o.get(l.title),u=m?hU[m.horizon]:"",h=m?s(m.id):d,g=" ".repeat(h),b=EA[l.status];c.push(`${g}${u} ${b} ${l.title}`)}return c.join(`
5
5
  `)}var pc,dU,SA,uU,mU,EA,hU,wA,vU,TA,Nu=p(()=>{"use strict";Yh();pc="update_plan";dU=new Set(["pending","in_progress","completed"]),SA=30,uU=120,mU="update_plan: cada passo precisa de um t\xEDtulo (texto) n\xE3o-vazio.";EA={pending:"\u2610",in_progress:"\u25B6",completed:"\u2611"};hU={longo:"[\u{1F4D0}]",m\u00E9dio:"[\u{1F4CB}]",curto:"[\u{1F4CC}]"};wA=Object.freeze({type:"string",enum:["pending","in_progress","completed"],description:"pending (a fazer) \xB7 in_progress (em curso) \xB7 completed (feito)."}),vU=Object.freeze({type:"object",properties:{steps:{type:"array",description:"A lista COMPLETA de passos do plano (re-emita TODOS a cada atualiza\xE7\xE3o \u2014 substitui o anterior).",items:{type:"object",properties:{title:{type:"string",description:"O passo, curto e no imperativo."},status:wA,substeps:{type:"array",description:"OPCIONAL: sub-passos que detalham este passo (1 n\xEDvel). Aparecem indentados sob o passo e seguem o foco dele. Use quando um passo tem a\xE7\xF5es menores distintas.",items:{type:"object",properties:{title:{type:"string",description:"O sub-passo, curto e no imperativo."},status:wA},required:["title"],additionalProperties:!1}}},required:["title"],additionalProperties:!1}}},required:["steps"],additionalProperties:!1}),TA={name:pc,effect:"read",description:"Declara/atualiza um PLANO vis\xEDvel (checklist de passos). Use ao iniciar uma tarefa com V\xC1RIOS passos e a cada progresso: re-emita a lista TODA marcando o status de cada passo (pending/in_progress/completed). Mantenha 1 passo in_progress por vez. N\xE3o tem efeito no sistema \u2014 \xE9 s\xF3 o seu plano, para voc\xEA e para o usu\xE1rio acompanharem.",parameters:vU,async run(t,e){let o=fU(t);return"error"in o?{ok:!1,observation:o.error}:(e.graph&&yU(o.steps,e.graph),e.plan&&e.plan.set(Iu(o.steps).map(r=>({title:r.step.title,status:r.step.status}))),{ok:!0,observation:bU(o.steps,e.graph)})}}});function _A(t){let e=t.question??t.prompt??t.text??t.message;if(typeof e!="string"||e.trim()==="")return{error:'perguntar: passe "question" (a pergunta em texto). Para escolha, passe tamb\xE9m "options".'};let o=e.trim().slice(0,2e3),n=t.header??t.title,r=typeof n=="string"&&n.trim()!==""?n.trim().slice(0,200):void 0,s=t.options??t.choices,i=Array.isArray(s)?xU(s):void 0;if(typeof i=="string")return{error:i};let a,c=t.kind??t.type;if(typeof c=="string"&&kU.has(c))a=c;else{if(typeof c=="string"&&c.trim()!=="")return{error:`perguntar: "kind" inv\xE1lido "${c}". Use "single", "multi" ou "text".`};a=i!==void 0&&i.length>0?"single":"text"}if((a==="single"||a==="multi")&&(i===void 0||i.length===0))return{error:`perguntar: kind "${a}" requer "options" (uma lista de ao menos 1 op\xE7\xE3o).`};let l=t.allowOther!==!1;return{spec:{kind:a,question:o,...r!==void 0?{header:r}:{},...a!=="text"&&i!==void 0?{options:i}:{},...a!=="text"?{allowOther:l}:{}}}}function xU(t){if(t.length===0)return'perguntar: a lista de "options" est\xE1 vazia.';if(t.length>12)return`perguntar: no m\xE1ximo 12 op\xE7\xF5es (recebidas ${t.length}).`;let e=[];for(let o of t){let n,r;if(typeof o=="string")n=o;else if(o!==null&&typeof o=="object"){let s=o,i=s.label??s.text??s.value??s.name??s.title;typeof i=="string"&&(n=i),typeof s.description=="string"&&s.description.trim()!==""&&(r=s.description.trim().slice(0,300))}if(n===void 0||n.trim()==="")return'perguntar: cada op\xE7\xE3o precisa de um "label" (texto) n\xE3o-vazio.';e.push({label:n.trim().slice(0,200),...r!==void 0?{description:r}:{}})}return e}function SU(t){switch(t.kind){case"choice":return t.label;case"choices":return t.labels.length===0?"(nenhuma)":t.labels.join(", ");case"text":{let e=t.text.split(`
@@ -137,7 +137,7 @@ ${t.trim()}`}}function RC(t,e,o=_l){let{older:n,recent:r}=nf(t,o);if(n.length===
137
137
  Tente de novo em instantes; a busca no registro n\xE3o bloqueia o resto do aluy.`;if(t.results.length===0)return`nenhum server encontrado para "${t.query}" no registro oficial MCP.`;let e=[],o=t.results.length;e.push(`${o} server${o===1?"":"s"} para "${t.query}" (registro oficial MCP):`),e.push("");for(let n of t.results)e.push(S2(n)),e.push("");return e.push('Para instalar, copie a linha "\u2192 aluy mcp add \u2026" do server desejado.'),e.push("A sa\xEDda do registro \xE9 apenas informativa \u2014 nada \xE9 executado pela busca."),e.join(`
138
138
  `)}function S2(t){let o=[`\u2022 ${t.version!==void 0?`${t.name} (v${t.version})`:t.name}`],n=t.title!==void 0&&t.title!==t.name?t.title:void 0;n!==void 0&&o.push(` ${n}`),t.description.length>0&&o.push(` ${w2(t.description,200)}`);let r=yO(t);if(r!==void 0){o.push(` \u2192 ${r}`),t.run.transport!==void 0&&t.run.transport!=="stdio"&&o.push(` (transporte "${t.run.transport}" \u2014 v1 do aluy s\xF3 pluga servers stdio LOCAIS)`);let s=t.run.env.filter(i=>i.required).map(i=>i.name);s.length>0&&o.push(` requer env: ${s.join(", ")} (defina por-server no mcp.json)`)}else t.run.remoteUrls.length>0?o.push(` (server REMOTO: ${t.run.remoteUrls.join(", ")} \u2014 fora do v1 de \`aluy mcp add\`)`):o.push(" (sem pacote local conhecido \u2014 nada a instalar pelo aluy)");return o.join(`
139
139
  `)}function w2(t,e){return t.length<=e?t:t.slice(0,e-1).trimEnd()+"\u2026"}var vO=p(()=>{"use strict"});var kO=p(()=>{"use strict";gf();eO();tO();oO();nO();sO();lO();Fu();hO();vO()});function Uv(t){let e=/^v?(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?/.exec(t.trim());if(!e)return null;let o=e[4]?e[4].split(".").map(n=>/^\d+$/.test(n)?Number(n):n):[];return{major:Number(e[1]),minor:Number(e[2]),patch:Number(e[3]),pre:o}}function xO(t,e){let o=Uv(t),n=Uv(e);if(!o||!n)return null;for(let s of["major","minor","patch"])if(o[s]!==n[s])return o[s]<n[s]?-1:1;if(o.pre.length===0&&n.pre.length===0)return 0;if(o.pre.length===0)return 1;if(n.pre.length===0)return-1;let r=Math.max(o.pre.length,n.pre.length);for(let s=0;s<r;s++){let i=o.pre[s],a=n.pre[s];if(i===void 0)return-1;if(a===void 0)return 1;if(i===a)continue;let c=typeof i=="number",l=typeof a=="number";return c&&l?i<a?-1:1:c?-1:l?1:i<a?-1:1}return 0}function jv(t,e){return xO(t,e)===1}var SO=p(()=>{"use strict"});var Hv=p(()=>{"use strict"});var wO=p(()=>{"use strict";Hv()});var AO=p(()=>{"use strict"});var EO=p(()=>{"use strict"});function qv(t){return`connector-${t}-token`}function Wv(t){let e=t.trim();return/^\d{5,}:[A-Za-z0-9_-]{30,}$/.test(e)}function bf(t){let e=t.trim(),o=e.indexOf(":");return o<=0?`\u2026(${e.length} chars)`:`${e.slice(0,o)}:\u2026(${e.length-o-1} chars)`}var TO=p(()=>{"use strict"});var D=p(()=>{"use strict";xA();zA();lE();RT();qC();JC();kO();Sv();qm();SO();Hv();wO();AO();EO();TO()});var kf,xf,_O,RO,CO,OO,Sf=p(()=>{"use strict";kf={fg:{color:"#F2EEE8"},fgDim:{color:"#8A7F6D",dimColor:!0},accent:{color:"#DDA13F",bold:!0},accentDim:{color:"#A66A14",bold:!0},danger:{color:"#E5897C",bold:!0},success:{color:"#82CF9E"},depth:{color:"#5BA8A2"}},xf={fg:{color:"#1A1712"},fgDim:{color:"#544B3C"},accent:{color:"#82530F",bold:!0},accentDim:{color:"#82530F",bold:!0},danger:{color:"#B23A2A",bold:!0},success:{color:"#1F6B3A"},depth:{color:"#2E6E69"}},_O={fg:{color:"white"},fgDim:{color:"gray",dimColor:!0},accent:{color:"yellow",bold:!0},accentDim:{color:"yellow",bold:!0},danger:{color:"red",bold:!0},success:{color:"green"},depth:{color:"cyan"}},RO={fg:{color:"black"},fgDim:{color:"gray",dimColor:!0},accent:{color:"yellow",bold:!0},accentDim:{color:"yellow",bold:!0},danger:{color:"red",bold:!0},success:{color:"green"},depth:{color:"cyan"}},CO={fg:{color:"#F2EEE8"},fgDim:{color:"#B0A593",dimColor:!0},accent:{color:"#DDA13F",bold:!0},accentDim:{color:"#A66A14",bold:!0},danger:{color:"#E5897C",bold:!0},success:{color:"#82CF9E"},depth:{color:"#5BA8A2"}},OO={fg:{},fgDim:{dimColor:!0},accent:{bold:!0},accentDim:{bold:!0},danger:{bold:!0,inverse:!0},success:{},depth:{}}});var MO,LO,PO,IO,NO,DO,$O,wf=p(()=>{"use strict";MO={you:"\u258C",aluy:"\u039B",tool:"\u23FA",toolInflight:"\u25CB",wave:"~",waveHead:"\u203A",ask:"\u26A0",ok:"\u2713",err:"\u2717",broker:"\u25CF",clock:"\u25F7",gauge:"\u25D4",window:"\u25A1",branch:"\u2387",diffDel:"\u2039",diffAdd:"\u203A",prompt:"\u203A",cursor:"\u25CF",thinkingCursor:"\u25CF",planMode:"\u25D1",normalMode:"\u25C7",subagents:"+",sessionDot:"\u25CF",barFull:"\u25B0",barEmpty:"\u25B1"},LO={you:"\u258C",aluy:"\u039B",tool:"\u25CF",toolInflight:"\u25CB",wave:"~",waveHead:">",ask:"!",ok:"\u221A",err:"x",broker:"\u25CF",clock:"o",gauge:"\u25D4",window:"\u25A1",branch:"Y",diffDel:"<",diffAdd:">",prompt:">",cursor:"\u25CF",thinkingCursor:"\u25CF",planMode:"\u25D1",normalMode:"\u25C7",subagents:"+",sessionDot:"\u25CF",barFull:"\u2588",barEmpty:"\u2591"},PO={you:">",aluy:"/\\",tool:"o",toolInflight:".",wave:"~",waveHead:">",ask:"!",ok:"[ok]",err:"[x]",broker:"(b)",clock:"t:",gauge:"%:",window:"ctx:",branch:"git:",diffDel:"-",diffAdd:"+",prompt:">",cursor:"*",thinkingCursor:"*",planMode:"[plan]",normalMode:"*",subagents:"(+)",sessionDot:"*",barFull:"#",barEmpty:"."},IO=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],NO=["-","\\","|","/"],DO={topLeft:"\u256D",topRight:"\u256E",bottomLeft:"\u2570",bottomRight:"\u256F",horizontal:"\u2500",vertical:"\u2502",teeLeft:"\u251C",teeRight:"\u2524"},$O={topLeft:"+",topRight:"+",bottomLeft:"+",bottomRight:"+",horizontal:"-",vertical:"|",teeLeft:"+",teeRight:"+"}});function FO(t){return pa.includes(t.trim().toLowerCase())}function Gv(t){let e=2166136261,o=t.trim().toLowerCase();for(let r=0;r<o.length;r++)e^=o.charCodeAt(r),e=Math.imul(e,16777619);let n=(e>>>0)%Ul.length;return Ul[n].name}function BO(t,e,o){let n=t.trim().toLowerCase(),r=Ul.find(s=>s.name===n)??Ul.find(s=>s.name===Gv(n));return e==="mono"?{bold:!0}:e==="truecolor"?{color:o==="light"?r.lightHex:r.darkHex,bold:!0}:{color:r.ansi,bold:!0}}var Ul,pa,Af=p(()=>{"use strict";Ul=[{name:"ambar",darkHex:"#DDA13F",lightHex:"#82530F",ansi:"yellow"},{name:"verde",darkHex:"#82CF9E",lightHex:"#1F6B3A",ansi:"green"},{name:"teal",darkHex:"#5BA8A2",lightHex:"#2E6E69",ansi:"cyan"},{name:"azul",darkHex:"#6FA8DC",lightHex:"#1F5C99",ansi:"blue"},{name:"violeta",darkHex:"#B08CD9",lightHex:"#6A3FA6",ansi:"magenta"},{name:"rosa",darkHex:"#E59BC0",lightHex:"#A63D74",ansi:"magenta"},{name:"coral",darkHex:"#E5897C",lightHex:"#B23A2A",ansi:"red"},{name:"ardosia",darkHex:"#9AA7B0",lightHex:"#4A5963",ansi:"gray"}],pa=Ul.map(t=>t.name)});function Ef(t){return t!==void 0&&t!==""&&t!=="0"&&t.toLowerCase()!=="false"}function P2(t){if(t.NO_COLOR!==void 0)return"mono";let e=(t.COLORTERM??"").toLowerCase();if(e==="truecolor"||e==="24bit")return"truecolor";let o=(t.TERM??"").toLowerCase();return o==="dumb"||o===""?"mono":"ansi16"}function I2(t,e){if(e)return e;let o=t.COLORFGBG;if(o){let n=o.split(";"),r=Number(n[n.length-1]);if(Number.isFinite(r))return r>=8?"light":"dark"}return"dark"}function N2(t){let e=(t.TERM??"").toLowerCase();if(e==="linux"||e==="dumb")return!1;let o=`${t.LC_ALL??""}${t.LC_CTYPE??""}${t.LANG??""}`.toLowerCase();return!(Ef(t.ALUY_ASCII)||o&&!o.includes("utf"))}function D2(t,e){return e!==void 0?e:Ef(t.ALUY_SAFE_GLYPHS)}function $2(t,e,o){return t==="mono"?OO:t==="truecolor"?o??(e==="light"?xf:kf):e==="light"?RO:_O}function Ko(t={}){let e=t.env??process.env,o=P2(e),n=I2(e,t.theme),r=N2(e),s=r&&D2(e,t.safeGlyphs),i=t.density??(Ef(e.ALUY_DENSITY)&&e.ALUY_DENSITY==="compact"?"compact":"comfortable"),a=t.animate??!Ef(e.ALUY_NO_ANIM),c=$2(o,n,t.truecolorPalette),l=r?s?LO:MO:PO;return{colorMode:o,brightness:n,unicode:r,safeGlyphs:s,density:i,animate:a,role:h=>c[h],sessionColor:h=>BO(h,o,n),glyph:h=>l[h],aluyMark:r?"\u039B":"/\\",spinnerFrames:r&&!s?IO:NO,box:r?DO:$O}}var Tf=p(()=>{"use strict";Sf();wf();Af()});function Kr(t){return Do.find(e=>e.name===t)}function br(t){let e=t.trim().toLowerCase();if(e==="")return;let o=Do.find(r=>r.name===e);if(o)return o;let n=Do.find(r=>r.name===`aluy-${e}`);return n||Do.find(r=>r.label.toLowerCase()===e)}function Xs(t){return t==="light"?"aluy-light":"aluy-dark"}function UO(t,e={}){let o=Kr(t)??Kr(Yv);return Ko({...e,theme:o.brightness,truecolorPalette:o.palette})}var Do,Yv,Yr=p(()=>{"use strict";Tf();Sf();Do=[{name:"aluy-dark",label:"Aluy Dark",brightness:"dark",summary:"escuro neutro (default) \u2014 fundo quase-preto, accent \xE2mbar",bg:"#070707",palette:kf},{name:"aluy-light",label:"Aluy Light",brightness:"light",summary:"claro creme \u2014 fundo --stone-50, accent \xE2mbar escurecido (AA)",bg:"#F4ECDC",palette:xf},{name:"aluy-slate",label:"Aluy Slate",brightness:"dark",summary:"terra escura WARM \u2014 fundo --stone-950, accent \xE2mbar",bg:"#0E0C09",palette:CO}],Yv="aluy-dark"});function Js(t){return Pt.find(e=>e.code===t)}function Vr(t){let e=t.trim().toLowerCase();if(e==="")return;let o=Pt.find(n=>n.code.toLowerCase()===e);if(o)return o;if(e==="pt"||e==="pt_br"||e==="br"||e==="portugu\xEAs"||e==="portugues")return Js("pt-BR");if(e==="en"||e==="en_us"||e==="english"||e==="ingl\xEAs"||e==="ingles")return Js("en")}function jO(t){let e=(t.LC_ALL??t.LC_MESSAGES??t.LANG??"").trim().toLowerCase();if(e==="")return Dn;let o=e.split(".")[0].split("@")[0].replace("_","-");return o==="c"||o==="posix"?Dn:o==="en"||o.startsWith("en-")?"en":Dn}function Vv(t,e,o){if(t!==void 0&&t.trim()!==""){let n=Vr(t);if(n)return n.code}return e!==void 0?e:jO(o)}var Dn,Pt,ha=p(()=>{"use strict";Dn="pt-BR",Pt=[{code:"pt-BR",label:"Portugu\xEAs (Brasil)",summary:"idioma padr\xE3o da TUI"},{code:"en",label:"English",summary:"English interface (opt-in)"}]});import{homedir as F2}from"node:os";import{join as HO}from"node:path";import{randomBytes as B2}from"node:crypto";import{openSync as U2,writeSync as j2,closeSync as qO,readFileSync as H2,mkdirSync as q2,renameSync as W2,unlinkSync as G2,constants as Xv}from"node:fs";function WO(t){let o=(Array.isArray(t)?t:t!==void 0?[t]:[]).filter(n=>typeof n=="string"&&n.trim()!=="");return o.length>0?o:void 0}function V2(t){if(typeof t!="string")return!1;let e=t.trim().toLowerCase();return e==="localhost"||e==="::1"||/^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(e)}function X2(t){return typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=65535}function Jv(t){if(typeof t!="object"||t===null)return;let e=t,o={};return V2(e.host)&&(o.host=e.host.trim()),X2(e.port)&&(o.port=e.port),o.host!==void 0||o.port!==void 0?o:void 0}function J2(t){if(typeof t!="object"||t===null)return;let e=t,o={};if(typeof e.telegram=="object"&&e.telegram!==null){let n=e.telegram;if(Array.isArray(n.allowlist)){let r=[];for(let s of n.allowlist)typeof s=="number"&&Number.isFinite(s)&&Number.isInteger(s)&&!r.includes(s)&&r.push(s);o.telegram={allowlist:r}}else o.telegram={}}return o.telegram!==void 0?o:void 0}function Q2(t){if(typeof t!="object"||t===null)return;let e=t,o={},n=Jv(e.ollama),r=Jv(e.mem0),s=Jv(e.headroom);return n&&(o.ollama=n),r&&(o.mem0=r),s&&(o.headroom=s),Object.keys(o).length>0?o:void 0}function Z2(t){if(!Array.isArray(t))return;let e=[];for(let o of t){if(typeof o!="object"||o===null)continue;let n=o,r=typeof n.id=="string"?n.id.trim():"",s=typeof n.baseUrl=="string"?n.baseUrl.trim():"",i=typeof n.defaultModel=="string"?n.defaultModel.trim():"",a=typeof n.wireFormat=="string"?n.wireFormat:"";if(r===""||s===""||i===""||!Y2.has(a))continue;let c=WO(n.auth),l=WO(n.models),d={id:r,wireFormat:a,baseUrl:s,defaultModel:i,...typeof n.label=="string"&&n.label.trim()?{label:n.label.trim()}:{},...c?{auth:c}:{},...l?{models:l}:{}};e.push(d)}return e.length>0?e:void 0}function jl(t){if(typeof t!="string")return!1;let e=t.trim();return e===""||e.length>eG?!1:!/[\u0000-\u001F\u007F]/.test(e)}function GO(t){if(typeof t!="object"||t===null)return{};let e=t,o={};if(typeof e.theme=="string"){let i=Kr(e.theme);i&&(o.theme=i.name)}if(jl(e.tier)&&(o.tier=e.tier.trim()),o.tier==="custom"&&jl(e.model)&&(o.model=e.model.trim()),typeof e.splitView=="boolean"&&(o.splitView=e.splitView),typeof e.lang=="string"){let i=Js(e.lang);i&&(o.lang=i.code)}if(typeof e.fullscreen=="boolean"&&(o.fullscreen=e.fullscreen),(e.backend==="broker"||e.backend==="local")&&(o.backend=e.backend),jl(e.localProvider)&&(o.localProvider=e.localProvider.trim()),jl(e.localModel)&&(o.localModel=e.localModel.trim()),(e.localAuth==="apikey"||e.localAuth==="oauth")&&(o.localAuth=e.localAuth),jl(e.localBaseUrl)&&(o.localBaseUrl=e.localBaseUrl.trim()),typeof e.localBudget=="boolean"&&(o.localBudget=e.localBudget),typeof e.rooms=="object"&&e.rooms!==null){let i=e.rooms;if(typeof i.backend=="string"){let a=i.backend.trim().toLowerCase();a.length>0&&a.length<=32&&(o.rooms={backend:a})}}if((e.profile==="turbo"||e.profile==="leve")&&(o.profile=e.profile),typeof e.sidecarToggles=="object"&&e.sidecarToggles!==null){let i=e.sidecarToggles,a={};typeof i.ollama=="boolean"&&(a.ollama=i.ollama),typeof i.mem0=="boolean"&&(a.mem0=i.mem0),typeof i.headroom=="boolean"&&(a.headroom=i.headroom),Object.keys(a).length>0&&(o.sidecarToggles=a)}let n=Z2(e.providers);n&&(o.providers=n);let r=Q2(e.services);r&&(o.services=r);let s=J2(e.connectors);return s&&(o.connectors=s),o}function _f(t){return t.connectors?.telegram?.allowlist??[]}function zO(t,e){let o=_f(t);return o.includes(e)?o:[...o,e]}function KO(t,e){return _f(t).filter(o=>o!==e)}function ql(t,e,o){return t!==void 0&&t.trim()!==""?t.trim():e.tier!==void 0&&e.tier.trim()!==""?e.tier.trim():o}function YO(t){return t.lang}function Qv(t,e){return t===!0?!0:e.splitView??!1}function Zv(t,e){return t===!0?!0:e.fullscreen??!1}var z2,K2,Hl,Y2,eG,it,hn=p(()=>{"use strict";Yr();ha();z2=448,K2=384,Hl="config.json",Y2=new Set(["openai-compat","anthropic","gemini"]);eG=128;it=class{base;file;constructor(e={}){this.base=e.baseDir??HO(F2(),".aluy"),this.file=HO(this.base,Hl)}get configPath(){return this.file}load(){let e;try{e=H2(this.file,"utf8")}catch{return{}}let o;try{o=JSON.parse(e)}catch{return{}}return GO(o)}save(e){try{let o=GO({...this.load(),...e});return this.writeAtomic(o),!0}catch{return!1}}saveTheme(e){return this.save({theme:e})}saveLang(e){return this.save({lang:e})}saveTier(e,o){let r=e.trim()==="custom"&&o!==void 0&&o.trim()!==""?o.trim():void 0;return this.save(r!==void 0?{tier:e,model:r}:{tier:e})}saveSplitView(e){return this.save({splitView:e})}saveFullscreen(e){return this.save({fullscreen:e})}saveLocalBudget(e){return this.save({localBudget:e})}writeAtomic(e){q2(this.base,{recursive:!0,mode:z2});let o=`${this.file}.${process.pid}.${B2(6).toString("hex")}.tmp`,n=JSON.stringify(e,null,2)+`
140
- `,r;try{r=U2(o,Xv.O_CREAT|Xv.O_EXCL|Xv.O_WRONLY,K2),j2(r,n),qO(r),r=void 0,W2(o,this.file)}catch(s){if(r!==void 0)try{qO(r)}catch{}try{G2(o)}catch{}throw s}}}});function ek(t){let e=t.env??process.env,o=e[t.urlKey]?.trim();if(o!==void 0&&o!=="")return o;let n=e[t.hostKey]?.trim()||t.cfg?.host||t.defHost,r=e[t.portKey]?.trim(),s=r&&/^\d+$/.test(r)?Number(r):void 0,i=(s!==void 0&&s>=1&&s<=65535?s:void 0)??t.cfg?.port??t.defPort;return`http://${n}:${i}`}function ga(t,e){return ek({env:t,urlKey:"ALUY_MEM0_URL",hostKey:"ALUY_MEM0_HOST",portKey:"ALUY_MEM0_PORT",cfg:e?.mem0,defHost:zo,defPort:11435})}function ya(t,e){return ek({env:t,urlKey:"ALUY_OLLAMA_URL",hostKey:"ALUY_OLLAMA_HOST",portKey:"ALUY_OLLAMA_PORT",cfg:e?.ollama,defHost:zo,defPort:11434})}function VO(t,e){return ek({env:t,urlKey:"ALUY_HEADROOM_URL",hostKey:"ALUY_HEADROOM_HOST",portKey:"ALUY_HEADROOM_PORT",cfg:e?.headroom,defHost:zo,defPort:8787})}var Rf=p(()=>{"use strict";D()});var Xr,Cf=p(()=>{"use strict";Xr="1.0.0-rc.13"});var t0={};yt(t0,{HELP_TEXT:()=>QO,parseArgs:()=>tk,suggestFlag:()=>sG,versionText:()=>ZO});function ot(t,e,o={}){let n=`--${e}=`;for(let r=0;r<t.length;r++){let s=t[r];if(s===`--${e}`){let i=t[r+1];return i===void 0||(o.allowDashValue?i.startsWith("--"):i.startsWith("-"))?void 0:i}if(s!==void 0&&s.startsWith(n))return s.slice(n.length)}}function oG(t,e){let o=`-${e}=`;for(let n=0;n<t.length;n++){let r=t[n];if(r===`-${e}`){let s=t[n+1];return s!==void 0&&!s.startsWith("-")?s:void 0}if(r!==void 0&&r.startsWith(o))return r.slice(o.length)}}function ZO(){return`aluy ${Xr} (@hiperplano/aluy-cli-core ${fc})`}function rG(t,e){let o=t.length,n=e.length,r=Array.from({length:n+1},(s,i)=>i);for(let s=1;s<=o;s++){let i=[s];for(let a=1;a<=n;a++){let c=t[s-1]===e[a-1]?0:1;i[a]=Math.min(r[a]+1,i[a-1]+1,r[a-1]+c)}r=i}return r[n]}function sG(t){let e,o=3;for(let n of e0){let r=rG(t,n);r<o&&(o=r,e=n)}return e}function iG(t,e){let o=[];for(let n=0;n<t.length;n++){let r=t[n];if(r==="--")break;if(!r.startsWith("--")||r.length===2||e.has(n))continue;let s=r.slice(2).split("=",1)[0];s===""||e0.has(s)||o.push(`--${s}`)}return o}function tk(t){let e=t[0];if(e==="login"&&!t.includes("-h")&&!t.includes("--help")){let U=t.slice(1),he=ot(U,"token"),Je=ot(U,"org"),ht=U.includes("--device"),xt=ot(U,"provider"),Et=U.includes("--oauth");return{kind:"login",forceDeviceFlow:ht,...he!==void 0?{token:he}:{},...Je!==void 0?{org:Je}:{},...xt!==void 0?{provider:xt}:{},...Et?{oauth:!0}:{}}}if(e==="logout"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"logout"};if(e==="whoami"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"whoami"};if(e==="doctor"&&!t.includes("-h")&&!t.includes("--help")){let U=t.includes("--deep")||t.includes("--test"),he=t.includes("--json");return{kind:"doctor",deep:U,json:he}}if(e==="agents"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"agents"};if(e==="bootstrap"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"bootstrap",agent:t.includes("--agent")};if(e==="onboard"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"onboard"};if(e==="skills"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"skills"};if(e==="workflows"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"workflows"};if((e==="models"||e==="providers")&&!t.includes("-h")&&!t.includes("--help")){let U=t.includes("--json"),he=t.findIndex(ht=>ht==="--backend"||ht.startsWith("--backend=")),Je="both";if(he!==-1){let xt=(t[he].includes("=")?t[he].slice(10):t[he+1]??"").trim().toLowerCase();xt==="local"?Je="local":xt==="broker"&&(Je="broker")}return{kind:"models",scope:Je,json:U,which:e==="providers"?"providers":"models"}}if(e==="telegram"&&!t.includes("-h")&&!t.includes("--help")){let U=t[1];if(U===void 0||!["login","logout","allow","deny","status"].includes(U))return{kind:"usage-error",message:"uso: aluy telegram <login|logout|allow|deny|status>",exitCode:2};let Je=t.slice(2);if(U==="login"){let ht=ot(Je,"token");return{kind:"telegram",sub:"login",...ht!==void 0?{token:ht}:{}}}if(U==="allow"||U==="deny"){let ht=Je.find(Et=>!Et.startsWith("-")),xt=ht!==void 0&&/^-?\d+$/.test(ht)?Number(ht):void 0;return xt===void 0?{kind:"usage-error",message:`uso: aluy telegram ${U} <chat-id> (um inteiro)`,exitCode:2}:{kind:"telegram",sub:U,chatId:xt}}return{kind:"telegram",sub:U}}if(e==="mcp"&&t[1]==="search"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"mcp-search",query:t.slice(2).filter(he=>!he.startsWith("-")).join(" ").trim()};if(e==="mcp")return{kind:"mcp",argv:t.slice(1)};if(e==="cron")return{kind:"cron",argv:t.slice(1)};if(t.includes("-v")||t.includes("--version"))return{kind:"version",text:ZO()};if(t.includes("-h")||t.includes("--help"))return{kind:"help",text:QO};let o=t.includes("--plan"),n=t.includes("--unsafe"),r=t.includes("--yolo")||n,s=o?"plan":r?"unsafe":"normal",i=t.includes("--dense"),a=t.includes("--ascii"),c=t.includes("--split")||t.includes("--view")?!0:void 0,l=t.includes("--fullscreen")||t.includes("--cockpit")?!0:void 0,d=t.includes("--no-budget")?!1:t.includes("--budget")?!0:void 0,m=ot(t,"tier"),u=ot(t,"lang"),h=ot(t,"max-tokens"),g=ot(t,"max-iterations"),b=ot(t,"max-output-tokens"),y=!(t.includes("--no-subagents")||t.includes("--no-subagent")),w=t.includes("--no-self-check")?"0":t.includes("--self-check")?"1":void 0,R=t.includes("--no-autocompact")?"off":ot(t,"autocompact-at"),A=t.includes("--quiet")?!0:void 0,L=t.includes("--cycle")?!0:void 0,j=ot(t,"cycles"),H=ot(t,"cycle-for"),K=ot(t,"backend"),V=ot(t,"local-provider"),I=ot(t,"local-model"),J=ot(t,"local-auth"),Q=ot(t,"local-base-url"),G=ot(t,"model"),N=ot(t,"provider");if((t.includes("--provider")||t.some(U=>U.startsWith("--provider=")))&&(G===void 0||G.trim()===""))return{kind:"usage-error",message:"aluy: --provider exige --model (ex.: --provider <provider> --model <slug>)",exitCode:2};if((G===void 0||G.trim()==="")&&m!==void 0&&m.trim().toLowerCase()==="custom")return{kind:"usage-error",message:"aluy: --tier custom exige --model <slug> (ex.: --model deepseek-v4-pro). A via Custom precisa do slug do modelo; sem ele use um tier can\xF4nico (aluy-flux, aluy-granito, \u2026).",exitCode:2};let Oe=ot(t,"effort"),Y=t.includes("--effort")||t.some(U=>U.startsWith("--effort=")),le;if(Oe!==void 0){if(Oe.trim()==="")return{kind:"usage-error",message:"aluy: --effort requer um valor (ex.: --effort low)",exitCode:2};if(Oe.length>32)return{kind:"usage-error",message:"aluy: --effort aceita no m\xE1ximo 32 caracteres",exitCode:2};le=Oe}else if(Y)return{kind:"usage-error",message:"aluy: --effort requer um valor (ex.: --effort low)",exitCode:2};let O=t.includes("-p")||t.includes("--print")||t.includes("--exec")||t.some(U=>U.startsWith("-p=")||U.startsWith("--print=")||U.startsWith("--exec=")),se=O?ot(t,"print",{allowDashValue:!0})??ot(t,"exec",{allowDashValue:!0})??oG(t,"p")??void 0:void 0,de=O?ot(t,"output-format"):void 0,ye=t.includes("--new"),Z=t.includes("--continue"),oe=t.indexOf("--resume"),Me=t.find(U=>U.startsWith("--resume=")),Ht=oe>=0||Me!==void 0,ft;if(Me!==void 0)ft=Me.slice(9);else if(oe>=0){let U=t[oe+1];U!==void 0&&!U.startsWith("-")&&(ft=U)}let st=m!==void 0?t.indexOf("--tier")+1:-1,lt=u!==void 0&&!t.some(U=>U.startsWith("--lang="))?t.indexOf("--lang")+1:-1,pt=ft!==void 0&&Me===void 0?oe+1:-1,z=h!==void 0&&!t.some(U=>U.startsWith("--max-tokens="))?t.indexOf("--max-tokens")+1:-1,pe=g!==void 0&&!t.some(U=>U.startsWith("--max-iterations="))?t.indexOf("--max-iterations")+1:-1,Ze=j!==void 0&&!t.some(U=>U.startsWith("--cycles="))?t.indexOf("--cycles")+1:-1,Ro=H!==void 0&&!t.some(U=>U.startsWith("--cycle-for="))?t.indexOf("--cycle-for")+1:-1,te=b!==void 0&&!t.some(U=>U.startsWith("--max-output-tokens="))?t.indexOf("--max-output-tokens")+1:-1,k=R!==void 0&&!t.includes("--no-autocompact")&&!t.some(U=>U.startsWith("--autocompact-at="))?t.indexOf("--autocompact-at")+1:-1,Co=K!==void 0&&!t.some(U=>U.startsWith("--backend="))?t.indexOf("--backend")+1:-1,Ie=(U,he)=>he!==void 0&&!t.some(Je=>Je.startsWith(`--${U}=`))?t.indexOf(`--${U}`)+1:-1,Ss=Ie("local-provider",V),Ci=Ie("local-model",I),qt=Ie("local-auth",J),Cr=Ie("local-base-url",Q),As=G!==void 0&&!t.some(U=>U.startsWith("--model="))?t.indexOf("--model")+1:-1,jo=N!==void 0&&!t.some(U=>U.startsWith("--provider="))?t.indexOf("--provider")+1:-1,cn=le!==void 0&&!t.some(U=>U.startsWith("--effort="))?t.indexOf("--effort")+1:-1,mo=de!==void 0&&!t.some(U=>U.startsWith("--output-format="))?t.indexOf("--output-format")+1:-1,Qt=se!==void 0&&!t.some(U=>U.startsWith("-p=")||U.startsWith("--print=")||U.startsWith("--exec="))?Math.max(t.indexOf("-p"),t.indexOf("--print"),t.indexOf("--exec"))+1:-1,Ho=t.find((U,he)=>!U.startsWith("-")&&he!==st&&he!==lt&&he!==Co&&he!==Ss&&he!==Ci&&he!==qt&&he!==Cr&&he!==As&&he!==jo&&he!==cn&&he!==mo&&he!==Qt&&he!==pt&&he!==z&&he!==pe&&he!==te&&he!==k&&he!==Ze&&he!==Ro),Oi=Z?{kind:"continue"}:Ht?{kind:"resume",...ft!==void 0?{id:ft}:{}}:void 0,Or=new Set([st,lt,Co,Ss,Ci,qt,Cr,As,jo,cn,mo,Qt,pt,z,pe,te,k,Ze,Ro].filter(U=>U>=0));for(let U of nG){let he=t.indexOf(U);he>=0&&!t[he].includes("=")&&Or.add(he+1)}let ln=iG(t,Or);return{kind:"launch",mode:s,unsafe:s==="unsafe",unsafeAliasUsed:n,...ln.length>0?{unknownFlags:ln}:{},dense:i,fresh:ye,subAgents:y,safeGlyphs:a,print:O,...c!==void 0?{split:c}:{},...l!==void 0?{fullscreen:l}:{},...d!==void 0?{budget:d}:{},...Ho!==void 0?{goal:Ho}:{},...m!==void 0?{tier:m}:{},...K!==void 0?{backend:K}:{},...V!==void 0?{localProvider:V}:{},...I!==void 0?{localModel:I}:{},...J!==void 0?{localAuth:J}:{},...Q!==void 0?{localBaseUrl:Q}:{},...G!==void 0?{model:G}:{},...N!==void 0?{provider:N}:{},...le!==void 0?{effort:le}:{},...se!==void 0?{printArg:se}:{},...de!==void 0?{outputFormat:de}:{},...u!==void 0?{lang:u}:{},...Oi!==void 0?{resume:Oi}:{},...h!==void 0?{maxTokens:h}:{},...g!==void 0?{maxIterations:g}:{},...b!==void 0?{maxOutputTokens:b}:{},...w!==void 0?{selfCheck:w}:{},...R!==void 0?{autoCompactAt:R}:{},...A!==void 0?{quiet:A}:{},...L!==void 0?{cycle:L}:{},...j!==void 0?{cycles:j}:{},...H!==void 0?{cycleFor:H}:{}}}var QO,e0,nG,ok=p(()=>{"use strict";D();Cf();QO=`aluy \u2014 agente de terminal que roda na sua m\xE1quina, com o seu provider de LLM
140
+ `,r;try{r=U2(o,Xv.O_CREAT|Xv.O_EXCL|Xv.O_WRONLY,K2),j2(r,n),qO(r),r=void 0,W2(o,this.file)}catch(s){if(r!==void 0)try{qO(r)}catch{}try{G2(o)}catch{}throw s}}}});function ek(t){let e=t.env??process.env,o=e[t.urlKey]?.trim();if(o!==void 0&&o!=="")return o;let n=e[t.hostKey]?.trim()||t.cfg?.host||t.defHost,r=e[t.portKey]?.trim(),s=r&&/^\d+$/.test(r)?Number(r):void 0,i=(s!==void 0&&s>=1&&s<=65535?s:void 0)??t.cfg?.port??t.defPort;return`http://${n}:${i}`}function ga(t,e){return ek({env:t,urlKey:"ALUY_MEM0_URL",hostKey:"ALUY_MEM0_HOST",portKey:"ALUY_MEM0_PORT",cfg:e?.mem0,defHost:zo,defPort:11435})}function ya(t,e){return ek({env:t,urlKey:"ALUY_OLLAMA_URL",hostKey:"ALUY_OLLAMA_HOST",portKey:"ALUY_OLLAMA_PORT",cfg:e?.ollama,defHost:zo,defPort:11434})}function VO(t,e){return ek({env:t,urlKey:"ALUY_HEADROOM_URL",hostKey:"ALUY_HEADROOM_HOST",portKey:"ALUY_HEADROOM_PORT",cfg:e?.headroom,defHost:zo,defPort:8787})}var Rf=p(()=>{"use strict";D()});var Xr,Cf=p(()=>{"use strict";Xr="1.0.0-rc.14"});var t0={};yt(t0,{HELP_TEXT:()=>QO,parseArgs:()=>tk,suggestFlag:()=>sG,versionText:()=>ZO});function ot(t,e,o={}){let n=`--${e}=`;for(let r=0;r<t.length;r++){let s=t[r];if(s===`--${e}`){let i=t[r+1];return i===void 0||(o.allowDashValue?i.startsWith("--"):i.startsWith("-"))?void 0:i}if(s!==void 0&&s.startsWith(n))return s.slice(n.length)}}function oG(t,e){let o=`-${e}=`;for(let n=0;n<t.length;n++){let r=t[n];if(r===`-${e}`){let s=t[n+1];return s!==void 0&&!s.startsWith("-")?s:void 0}if(r!==void 0&&r.startsWith(o))return r.slice(o.length)}}function ZO(){return`aluy ${Xr} (@hiperplano/aluy-cli-core ${fc})`}function rG(t,e){let o=t.length,n=e.length,r=Array.from({length:n+1},(s,i)=>i);for(let s=1;s<=o;s++){let i=[s];for(let a=1;a<=n;a++){let c=t[s-1]===e[a-1]?0:1;i[a]=Math.min(r[a]+1,i[a-1]+1,r[a-1]+c)}r=i}return r[n]}function sG(t){let e,o=3;for(let n of e0){let r=rG(t,n);r<o&&(o=r,e=n)}return e}function iG(t,e){let o=[];for(let n=0;n<t.length;n++){let r=t[n];if(r==="--")break;if(!r.startsWith("--")||r.length===2||e.has(n))continue;let s=r.slice(2).split("=",1)[0];s===""||e0.has(s)||o.push(`--${s}`)}return o}function tk(t){let e=t[0];if(e==="login"&&!t.includes("-h")&&!t.includes("--help")){let U=t.slice(1),he=ot(U,"token"),Je=ot(U,"org"),ht=U.includes("--device"),xt=ot(U,"provider"),Et=U.includes("--oauth");return{kind:"login",forceDeviceFlow:ht,...he!==void 0?{token:he}:{},...Je!==void 0?{org:Je}:{},...xt!==void 0?{provider:xt}:{},...Et?{oauth:!0}:{}}}if(e==="logout"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"logout"};if(e==="whoami"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"whoami"};if(e==="doctor"&&!t.includes("-h")&&!t.includes("--help")){let U=t.includes("--deep")||t.includes("--test"),he=t.includes("--json");return{kind:"doctor",deep:U,json:he}}if(e==="agents"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"agents"};if(e==="bootstrap"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"bootstrap",agent:t.includes("--agent")};if(e==="onboard"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"onboard"};if(e==="skills"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"skills"};if(e==="workflows"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"workflows"};if((e==="models"||e==="providers")&&!t.includes("-h")&&!t.includes("--help")){let U=t.includes("--json"),he=t.findIndex(ht=>ht==="--backend"||ht.startsWith("--backend=")),Je="both";if(he!==-1){let xt=(t[he].includes("=")?t[he].slice(10):t[he+1]??"").trim().toLowerCase();xt==="local"?Je="local":xt==="broker"&&(Je="broker")}return{kind:"models",scope:Je,json:U,which:e==="providers"?"providers":"models"}}if(e==="telegram"&&!t.includes("-h")&&!t.includes("--help")){let U=t[1];if(U===void 0||!["login","logout","allow","deny","status"].includes(U))return{kind:"usage-error",message:"uso: aluy telegram <login|logout|allow|deny|status>",exitCode:2};let Je=t.slice(2);if(U==="login"){let ht=ot(Je,"token");return{kind:"telegram",sub:"login",...ht!==void 0?{token:ht}:{}}}if(U==="allow"||U==="deny"){let ht=Je.find(Et=>!Et.startsWith("-")),xt=ht!==void 0&&/^-?\d+$/.test(ht)?Number(ht):void 0;return xt===void 0?{kind:"usage-error",message:`uso: aluy telegram ${U} <chat-id> (um inteiro)`,exitCode:2}:{kind:"telegram",sub:U,chatId:xt}}return{kind:"telegram",sub:U}}if(e==="mcp"&&t[1]==="search"&&!t.includes("-h")&&!t.includes("--help"))return{kind:"mcp-search",query:t.slice(2).filter(he=>!he.startsWith("-")).join(" ").trim()};if(e==="mcp")return{kind:"mcp",argv:t.slice(1)};if(e==="cron")return{kind:"cron",argv:t.slice(1)};if(t.includes("-v")||t.includes("--version"))return{kind:"version",text:ZO()};if(t.includes("-h")||t.includes("--help"))return{kind:"help",text:QO};let o=t.includes("--plan"),n=t.includes("--unsafe"),r=t.includes("--yolo")||n,s=o?"plan":r?"unsafe":"normal",i=t.includes("--dense"),a=t.includes("--ascii"),c=t.includes("--split")||t.includes("--view")?!0:void 0,l=t.includes("--fullscreen")||t.includes("--cockpit")?!0:void 0,d=t.includes("--no-budget")?!1:t.includes("--budget")?!0:void 0,m=ot(t,"tier"),u=ot(t,"lang"),h=ot(t,"max-tokens"),g=ot(t,"max-iterations"),b=ot(t,"max-output-tokens"),y=!(t.includes("--no-subagents")||t.includes("--no-subagent")),w=t.includes("--no-self-check")?"0":t.includes("--self-check")?"1":void 0,R=t.includes("--no-autocompact")?"off":ot(t,"autocompact-at"),A=t.includes("--quiet")?!0:void 0,L=t.includes("--cycle")?!0:void 0,j=ot(t,"cycles"),H=ot(t,"cycle-for"),K=ot(t,"backend"),V=ot(t,"local-provider"),I=ot(t,"local-model"),J=ot(t,"local-auth"),Q=ot(t,"local-base-url"),G=ot(t,"model"),N=ot(t,"provider");if((t.includes("--provider")||t.some(U=>U.startsWith("--provider=")))&&(G===void 0||G.trim()===""))return{kind:"usage-error",message:"aluy: --provider exige --model (ex.: --provider <provider> --model <slug>)",exitCode:2};if((G===void 0||G.trim()==="")&&m!==void 0&&m.trim().toLowerCase()==="custom")return{kind:"usage-error",message:"aluy: --tier custom exige --model <slug> (ex.: --model deepseek-v4-pro). A via Custom precisa do slug do modelo; sem ele use um tier can\xF4nico (aluy-flux, aluy-granito, \u2026).",exitCode:2};let Oe=ot(t,"effort"),Y=t.includes("--effort")||t.some(U=>U.startsWith("--effort=")),le;if(Oe!==void 0){if(Oe.trim()==="")return{kind:"usage-error",message:"aluy: --effort requer um valor (ex.: --effort low)",exitCode:2};if(Oe.length>32)return{kind:"usage-error",message:"aluy: --effort aceita no m\xE1ximo 32 caracteres",exitCode:2};le=Oe}else if(Y)return{kind:"usage-error",message:"aluy: --effort requer um valor (ex.: --effort low)",exitCode:2};let O=t.includes("-p")||t.includes("--print")||t.includes("--exec")||t.some(U=>U.startsWith("-p=")||U.startsWith("--print=")||U.startsWith("--exec=")),se=O?ot(t,"print",{allowDashValue:!0})??ot(t,"exec",{allowDashValue:!0})??oG(t,"p")??void 0:void 0,de=O?ot(t,"output-format"):void 0,ye=t.includes("--new"),Z=t.includes("--continue"),oe=t.indexOf("--resume"),Me=t.find(U=>U.startsWith("--resume=")),Ht=oe>=0||Me!==void 0,ft;if(Me!==void 0)ft=Me.slice(9);else if(oe>=0){let U=t[oe+1];U!==void 0&&!U.startsWith("-")&&(ft=U)}let st=m!==void 0?t.indexOf("--tier")+1:-1,lt=u!==void 0&&!t.some(U=>U.startsWith("--lang="))?t.indexOf("--lang")+1:-1,pt=ft!==void 0&&Me===void 0?oe+1:-1,z=h!==void 0&&!t.some(U=>U.startsWith("--max-tokens="))?t.indexOf("--max-tokens")+1:-1,pe=g!==void 0&&!t.some(U=>U.startsWith("--max-iterations="))?t.indexOf("--max-iterations")+1:-1,Ze=j!==void 0&&!t.some(U=>U.startsWith("--cycles="))?t.indexOf("--cycles")+1:-1,Ro=H!==void 0&&!t.some(U=>U.startsWith("--cycle-for="))?t.indexOf("--cycle-for")+1:-1,te=b!==void 0&&!t.some(U=>U.startsWith("--max-output-tokens="))?t.indexOf("--max-output-tokens")+1:-1,k=R!==void 0&&!t.includes("--no-autocompact")&&!t.some(U=>U.startsWith("--autocompact-at="))?t.indexOf("--autocompact-at")+1:-1,Co=K!==void 0&&!t.some(U=>U.startsWith("--backend="))?t.indexOf("--backend")+1:-1,Ie=(U,he)=>he!==void 0&&!t.some(Je=>Je.startsWith(`--${U}=`))?t.indexOf(`--${U}`)+1:-1,Ss=Ie("local-provider",V),Ci=Ie("local-model",I),qt=Ie("local-auth",J),Cr=Ie("local-base-url",Q),As=G!==void 0&&!t.some(U=>U.startsWith("--model="))?t.indexOf("--model")+1:-1,jo=N!==void 0&&!t.some(U=>U.startsWith("--provider="))?t.indexOf("--provider")+1:-1,cn=le!==void 0&&!t.some(U=>U.startsWith("--effort="))?t.indexOf("--effort")+1:-1,mo=de!==void 0&&!t.some(U=>U.startsWith("--output-format="))?t.indexOf("--output-format")+1:-1,Qt=se!==void 0&&!t.some(U=>U.startsWith("-p=")||U.startsWith("--print=")||U.startsWith("--exec="))?Math.max(t.indexOf("-p"),t.indexOf("--print"),t.indexOf("--exec"))+1:-1,Ho=t.find((U,he)=>!U.startsWith("-")&&he!==st&&he!==lt&&he!==Co&&he!==Ss&&he!==Ci&&he!==qt&&he!==Cr&&he!==As&&he!==jo&&he!==cn&&he!==mo&&he!==Qt&&he!==pt&&he!==z&&he!==pe&&he!==te&&he!==k&&he!==Ze&&he!==Ro),Oi=Z?{kind:"continue"}:Ht?{kind:"resume",...ft!==void 0?{id:ft}:{}}:void 0,Or=new Set([st,lt,Co,Ss,Ci,qt,Cr,As,jo,cn,mo,Qt,pt,z,pe,te,k,Ze,Ro].filter(U=>U>=0));for(let U of nG){let he=t.indexOf(U);he>=0&&!t[he].includes("=")&&Or.add(he+1)}let ln=iG(t,Or);return{kind:"launch",mode:s,unsafe:s==="unsafe",unsafeAliasUsed:n,...ln.length>0?{unknownFlags:ln}:{},dense:i,fresh:ye,subAgents:y,safeGlyphs:a,print:O,...c!==void 0?{split:c}:{},...l!==void 0?{fullscreen:l}:{},...d!==void 0?{budget:d}:{},...Ho!==void 0?{goal:Ho}:{},...m!==void 0?{tier:m}:{},...K!==void 0?{backend:K}:{},...V!==void 0?{localProvider:V}:{},...I!==void 0?{localModel:I}:{},...J!==void 0?{localAuth:J}:{},...Q!==void 0?{localBaseUrl:Q}:{},...G!==void 0?{model:G}:{},...N!==void 0?{provider:N}:{},...le!==void 0?{effort:le}:{},...se!==void 0?{printArg:se}:{},...de!==void 0?{outputFormat:de}:{},...u!==void 0?{lang:u}:{},...Oi!==void 0?{resume:Oi}:{},...h!==void 0?{maxTokens:h}:{},...g!==void 0?{maxIterations:g}:{},...b!==void 0?{maxOutputTokens:b}:{},...w!==void 0?{selfCheck:w}:{},...R!==void 0?{autoCompactAt:R}:{},...A!==void 0?{quiet:A}:{},...L!==void 0?{cycle:L}:{},...j!==void 0?{cycles:j}:{},...H!==void 0?{cycleFor:H}:{}}}var QO,e0,nG,ok=p(()=>{"use strict";D();Cf();QO=`aluy \u2014 agente de terminal que roda na sua m\xE1quina, com o seu provider de LLM
141
141
 
142
142
  Uso:
143
143
  aluy ["objetivo"] [--plan | --yolo] [--dense] [--tier <tier>] [--lang <pt-BR|en>]
@@ -449,7 +449,7 @@ Op\xE7\xF5es:
449
449
  ${e}${o}${n}
450
450
 
451
451
  Responda APENAS com JSON no formato:
452
- {"chosen": "<id da op\xE7\xE3o escolhida>", "confidence": <0.0 a 1.0>, "reasoning": "<racioc\xEDnio curto>"}`}function pK(t,e){let o={chosen:e[0]??"continuar",confidence:0,reasoning:"fallback: parse mal-sucedido, default primeira op\xE7\xE3o",fallback:!0},n=wk(t);if(n&&Ak(n,e))return Ek(n,!1);let r=n!==void 0,s=t.match(/```(?:json)?\s*([\s\S]*?)```/);if(s?.[1]){let a=wk(s[1].trim());if(a&&Ak(a,e))return Ek(a,!1);if(a!==void 0)return{...o,fallback:!0}}let i=t.match(/\{[\s\S]*"chosen"[\s\S]*\}/);if(i){let a=wk(i[0]);if(a&&Ak(a,e))return Ek(a,!1);if(a!==void 0)return{...o,fallback:!0}}if(r)return{...o,fallback:!0};for(let a of e)if(t.includes(a))return{chosen:a,confidence:.5,reasoning:"fallback: id encontrado no texto",fallback:!0};return{...o,fallback:!0}}function wk(t){try{let e=JSON.parse(t);return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}catch{return}}function Ak(t,e){let o=t.chosen;if(typeof o!="string"||!e.includes(o))return!1;let n=t.confidence;return!(typeof n!="number"||!Number.isFinite(n)||typeof t.reasoning!="string")}function Ek(t,e){return{chosen:String(t.chosen),confidence:Number(t.confidence),reasoning:String(t.reasoning),fallback:e}}function hK(t,e,o){let n="11434";try{let s=new URL(o).port;s&&(n=s)}catch{}let r=t.includes(":")?`[${t}]`:t;return`${e}://${r}:${n}/api/chat`}function gK(t){try{let e=JSON.parse(t),o=e?.message?.content;if(typeof o=="string"&&o.trim().length>0)return o.trim();let n=e?.response;return typeof n=="string"&&n.trim().length>0?n.trim():void 0}catch{return}}function yK(t){return Math.max(0,Math.min(1,t))}function bK(t){return t.length<=300?t:t.slice(0,297)+"..."}var sM,iM,aM,Xde,Hf,cM=p(()=>{"use strict";D();os();sM=kv,iM="qwen2.5:0.5b",aM=2500,Xde=Object.freeze({baseUrl:sM,model:iM,timeoutMs:aM});Hf=class{baseUrl;model;timeoutMs;resolver;fetchFn;constructor(e={}){this.baseUrl=e.baseUrl??sM,this.model=e.model??iM,this.timeoutMs=e.timeoutMs??aM,this.resolver=e.resolver??new Yt,this.fetchFn=e.fetchFn??globalThis.fetch}async judge(e){try{let o=await Ws(this.baseUrl,this.resolver);if(!o.ok)return this.fallback(e,`destino recusado: ${o.reason}`);let n=fK(e),r=hK(o.pinnedIp,o.scheme,this.baseUrl),s=new AbortController,i=setTimeout(()=>s.abort(),this.timeoutMs);i.unref?.();let a;try{a=await this.fetchFn(r,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,messages:[{role:"user",content:n}],stream:!1}),signal:s.signal})}finally{clearTimeout(i)}if(!a.ok)return this.fallback(e,`Ollama respondeu HTTP ${a.status} (modelo "${this.model}" pode estar ausente \u2014 sem auto-pull)`);let c=await a.text(),l=gK(c);if(!l)return this.fallback(e,"resposta do Ollama sem conte\xFAdo parse\xE1vel");let d=e.options.map(u=>u.id),m=pK(l,d);return m.fallback?this.fallback(e,"parseVerdict usou fallback \u2014 resposta LLM n\xE3o estruturalmente v\xE1lida"):d.includes(m.chosen)?{chosen:m.chosen,confidence:yK(m.confidence),reasons:[{optionId:m.chosen,rationale:bK(m.reasoning)}],mode:"llm"}:this.fallback(e,`chosen "${m.chosen}" n\xE3o est\xE1 nas op\xE7\xF5es v\xE1lidas`)}catch(o){let n=o instanceof Error?o.message:String(o),r=n.includes("abort")||n.includes("timeout")||n.includes("cancelado");return this.fallback(e,r?`timeout (${this.timeoutMs}ms)`:`erro: ${n}`)}}fallback(e,o){let n=e.options[0],r=n?.id??"continuar",s=n?.label??"continuar";return{chosen:r,confidence:.5,reasons:[{optionId:r,rationale:`[degrada\xE7\xE3o heur\xEDstica] ${o}. Fallback para op\xE7\xE3o default "${s}".`}],mode:"heuristic"}}}});import{join as lM}from"node:path";import{mkdirSync as dM}from"node:fs";import{homedir as vK}from"node:os";var kK,uM,xK,mM,SK,wK,ed,Tk=p(()=>{"use strict";D();os();kK="memory",uM=448,xK=`http://127.0.0.1:${11435}`,mM=5e3,SK=1048576,wK="aluy-vau/0.1 (Mem0MemoryEngine; EST-1132)",ed=class{mem0Url;base;memoryDir;resolver;fetcher;deleteFetch;targetCache;constructor(e={}){let o=e.mem0Url??xK;try{new URL(o)}catch{throw new Error(`Mem0MemoryEngine: URL inv\xE1lida \u2014 ${o}`)}this.mem0Url=o.replace(/\/$/,""),this.resolver=e.resolver??new Yt,this.fetcher=e.fetcher??new ts,this.deleteFetch=e.deleteFetch??((n,r)=>fetch(n,r)),this.base=e.baseDir??lM(vK(),".aluy"),this.memoryDir=lM(this.base,kK),this.ensureMemoryDir()}async add(e){let{content:o,scope:n,metadata:r}=e,s=o.map(a=>({role:"user",content:a.text})),i={user_id:n,messages:s};r&&(i.metadata=r);try{let a=await this.pinnedJson("/v1/memories/",{method:"POST",body:JSON.stringify(i)});return{ids:o.map((l,d)=>a.id?`${a.id}-${d}`:`${n}-${Date.now()}-${d}`)}}catch{return{ids:[]}}}async search(e){let{scopes:o,query:n,limit:r=10}=e,s=o.length>0?o:["default"];return{hits:(await Promise.all(s.map(async l=>{try{let d=new URLSearchParams({user_id:l,query:n,limit:String(Math.max(1,r))});return(await this.pinnedJson(`/v1/memories/?${d.toString()}`,{method:"GET"})).results??[]}catch{return[]}}))).flat().map(l=>({id:l.id,text:l.memory,score:l.score??0,...l.metadata!==void 0?{metadata:l.metadata}:{}})).sort((l,d)=>d.score-l.score).slice(0,r)}}async scope(e){let{operation:o}=e;switch(o.kind){case"list":try{return{scopes:((await this.pinnedJson("/v1/users/",{method:"GET"})).users??[]).map(s=>({scope:s.user_id,itemCount:s.memory_count??0,...s.created_at?{createdAt:new Date(s.created_at).getTime()}:{}}))}}catch{return{scopes:[]}}case"info":try{let r=(await this.pinnedJson(`/v1/memories/?user_id=${encodeURIComponent(o.scope)}&query=&limit=1000`,{method:"GET"})).results??[];return{scopes:[{scope:o.scope,itemCount:r.length}]}}catch{return{scopes:[{scope:o.scope,itemCount:0}]}}case"delete":try{return await this.pinnedDelete(`/v1/memories/?user_id=${encodeURIComponent(o.scope)}`),{deleted:!0}}catch{return{deleted:!1}}default:return{scopes:[]}}}async ensureTarget(){this.targetCache||(this.targetCache=Ws(this.mem0Url,this.resolver));let e=await this.targetCache;if(!e.ok)throw new Error(`Mem0MemoryEngine: egress s\xF3 loopback (CA-G2-6). ${e.reason}. Use 127.0.0.1.`);return e}buildPinnedUrl(e){let o=new URL(this.mem0Url).port,n=e.pinnedIp.includes(":")?`[${e.pinnedIp}]`:e.pinnedIp;return`${e.scheme}://${n}${o?`:${o}`:""}`}async pinnedJson(e,o){let n=await this.ensureTarget(),r=this.buildPinnedUrl(n),s=await this.fetcher.fetchPinned({url:`${r}${e}`,host:n.host,pinnedIp:n.pinnedIp,maxBytes:SK,timeoutMs:mM,method:o.method,...o.body!==void 0?{body:o.body,contentType:"application/json"}:{}});if(s.status!==200&&s.status!==201)throw new Error(`Mem0 HTTP ${s.status}`);let i=s.body;return!i||!i.trim()?{}:JSON.parse(i)}async pinnedDelete(e){let o=await this.ensureTarget(),n=this.buildPinnedUrl(o),r=new AbortController,s=setTimeout(()=>r.abort(),mM);try{let i=await this.deleteFetch(`${n}${e}`,{method:"DELETE",signal:r.signal,headers:{"Content-Type":"application/json","User-Agent":wK}});if(!i.ok)throw new Error(`Mem0 HTTP ${i.status}`);await i.text()}finally{clearTimeout(s)}}ensureMemoryDir(){let e=this.base;try{dM(e,{mode:uM,recursive:!0})}catch{}try{dM(this.memoryDir,{mode:uM})}catch(o){o.code}}}});import{createHash as AK}from"node:crypto";import{basename as EK,resolve as TK}from"node:path";function fM(t){return t.replace(_K,"_").replace(RK,"")}function CK(t){return`proj_${fM(t)}`}function pM(t){let e=TK(t),o=AK("sha256").update(e).digest("hex").slice(0,12),r=`proj_${fM(EK(e))||"root"}_${o}`,s=CK(t);return{scope:r,legacy:s,recallScopes:r===s?[r]:[r,s]}}var _K,RK,hM=p(()=>{"use strict";_K=/[^a-zA-Z0-9]+/g,RK=/^_+|_+$/g});function qf(t={}){let e=t.env??process.env,o=e.ALUY_MAESTRO,n=e.ALUY_MAESTRO_OFF;if(n&&n!=="0"&&n!=="false"||o==="0"||o==="false")return;let r=gr({ollama:e.ALUY_MAESTRO_OLLAMA!=="0",mem0:e.ALUY_MAESTRO_MEM0!=="0"}),s=t.bus??new rf,i=t.judge??new Hf({baseUrl:ya(t.env,t.services),model:pn});async function a(c){let l=DC(c);if(r.has("ollama")&&c.length>=2)try{let d=await i.judge({question:"Dados os sinais de supervis\xE3o, qual a decis\xE3o de reg\xEAncia?",options:[{id:"continuar",label:"Continuar normalmente"},{id:"pausar",label:"Pausar o loop"},{id:"recuperar",label:"Recuperar contexto"},{id:"parar",label:"Parar o loop"}],context:c.map(m=>`${m.origin}/${m.severity}: ${JSON.stringify(m.payload)}`).join(`
452
+ {"chosen": "<id da op\xE7\xE3o escolhida>", "confidence": <0.0 a 1.0>, "reasoning": "<racioc\xEDnio curto>"}`}function pK(t,e){let o={chosen:e[0]??"continuar",confidence:0,reasoning:"fallback: parse mal-sucedido, default primeira op\xE7\xE3o",fallback:!0},n=wk(t);if(n&&Ak(n,e))return Ek(n,!1);let r=n!==void 0,s=t.match(/```(?:json)?\s*([\s\S]*?)```/);if(s?.[1]){let a=wk(s[1].trim());if(a&&Ak(a,e))return Ek(a,!1);if(a!==void 0)return{...o,fallback:!0}}let i=t.match(/\{[\s\S]*"chosen"[\s\S]*\}/);if(i){let a=wk(i[0]);if(a&&Ak(a,e))return Ek(a,!1);if(a!==void 0)return{...o,fallback:!0}}if(r)return{...o,fallback:!0};for(let a of e)if(t.includes(a))return{chosen:a,confidence:.5,reasoning:"fallback: id encontrado no texto",fallback:!0};return{...o,fallback:!0}}function wk(t){try{let e=JSON.parse(t);return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}catch{return}}function Ak(t,e){let o=t.chosen;if(typeof o!="string"||!e.includes(o))return!1;let n=t.confidence;return!(typeof n!="number"||!Number.isFinite(n)||typeof t.reasoning!="string")}function Ek(t,e){return{chosen:String(t.chosen),confidence:Number(t.confidence),reasoning:String(t.reasoning),fallback:e}}function hK(t,e,o){let n="11434";try{let s=new URL(o).port;s&&(n=s)}catch{}let r=t.includes(":")?`[${t}]`:t;return`${e}://${r}:${n}/api/chat`}function gK(t){try{let e=JSON.parse(t),o=e?.message?.content;if(typeof o=="string"&&o.trim().length>0)return o.trim();let n=e?.response;return typeof n=="string"&&n.trim().length>0?n.trim():void 0}catch{return}}function yK(t){return Math.max(0,Math.min(1,t))}function bK(t){return t.length<=300?t:t.slice(0,297)+"..."}var sM,iM,aM,Qde,Hf,cM=p(()=>{"use strict";D();os();sM=kv,iM="qwen2.5:0.5b",aM=2500,Qde=Object.freeze({baseUrl:sM,model:iM,timeoutMs:aM});Hf=class{baseUrl;model;timeoutMs;resolver;fetchFn;constructor(e={}){this.baseUrl=e.baseUrl??sM,this.model=e.model??iM,this.timeoutMs=e.timeoutMs??aM,this.resolver=e.resolver??new Yt,this.fetchFn=e.fetchFn??globalThis.fetch}async judge(e){try{let o=await Ws(this.baseUrl,this.resolver);if(!o.ok)return this.fallback(e,`destino recusado: ${o.reason}`);let n=fK(e),r=hK(o.pinnedIp,o.scheme,this.baseUrl),s=new AbortController,i=setTimeout(()=>s.abort(),this.timeoutMs);i.unref?.();let a;try{a=await this.fetchFn(r,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:this.model,messages:[{role:"user",content:n}],stream:!1}),signal:s.signal})}finally{clearTimeout(i)}if(!a.ok)return this.fallback(e,`Ollama respondeu HTTP ${a.status} (modelo "${this.model}" pode estar ausente \u2014 sem auto-pull)`);let c=await a.text(),l=gK(c);if(!l)return this.fallback(e,"resposta do Ollama sem conte\xFAdo parse\xE1vel");let d=e.options.map(u=>u.id),m=pK(l,d);return m.fallback?this.fallback(e,"parseVerdict usou fallback \u2014 resposta LLM n\xE3o estruturalmente v\xE1lida"):d.includes(m.chosen)?{chosen:m.chosen,confidence:yK(m.confidence),reasons:[{optionId:m.chosen,rationale:bK(m.reasoning)}],mode:"llm"}:this.fallback(e,`chosen "${m.chosen}" n\xE3o est\xE1 nas op\xE7\xF5es v\xE1lidas`)}catch(o){let n=o instanceof Error?o.message:String(o),r=n.includes("abort")||n.includes("timeout")||n.includes("cancelado");return this.fallback(e,r?`timeout (${this.timeoutMs}ms)`:`erro: ${n}`)}}fallback(e,o){let n=e.options[0],r=n?.id??"continuar",s=n?.label??"continuar";return{chosen:r,confidence:.5,reasons:[{optionId:r,rationale:`[degrada\xE7\xE3o heur\xEDstica] ${o}. Fallback para op\xE7\xE3o default "${s}".`}],mode:"heuristic"}}}});import{join as lM}from"node:path";import{mkdirSync as dM}from"node:fs";import{homedir as vK}from"node:os";var kK,uM,xK,mM,SK,wK,ed,Tk=p(()=>{"use strict";D();os();kK="memory",uM=448,xK=`http://127.0.0.1:${11435}`,mM=5e3,SK=1048576,wK="aluy-vau/0.1 (Mem0MemoryEngine; EST-1132)",ed=class{mem0Url;base;memoryDir;resolver;fetcher;deleteFetch;targetCache;constructor(e={}){let o=e.mem0Url??xK;try{new URL(o)}catch{throw new Error(`Mem0MemoryEngine: URL inv\xE1lida \u2014 ${o}`)}this.mem0Url=o.replace(/\/$/,""),this.resolver=e.resolver??new Yt,this.fetcher=e.fetcher??new ts,this.deleteFetch=e.deleteFetch??((n,r)=>fetch(n,r)),this.base=e.baseDir??lM(vK(),".aluy"),this.memoryDir=lM(this.base,kK),this.ensureMemoryDir()}async add(e){let{content:o,scope:n,metadata:r}=e,s=o.map(a=>({role:"user",content:a.text})),i={user_id:n,messages:s};r&&(i.metadata=r);try{let a=await this.pinnedJson("/v1/memories/",{method:"POST",body:JSON.stringify(i)});return{ids:o.map((l,d)=>a.id?`${a.id}-${d}`:`${n}-${Date.now()}-${d}`)}}catch{return{ids:[]}}}async search(e){let{scopes:o,query:n,limit:r=10}=e,s=o.length>0?o:["default"];return{hits:(await Promise.all(s.map(async l=>{try{let d=new URLSearchParams({user_id:l,query:n,limit:String(Math.max(1,r))});return(await this.pinnedJson(`/v1/memories/?${d.toString()}`,{method:"GET"})).results??[]}catch{return[]}}))).flat().map(l=>({id:l.id,text:l.memory,score:l.score??0,...l.metadata!==void 0?{metadata:l.metadata}:{}})).sort((l,d)=>d.score-l.score).slice(0,r)}}async scope(e){let{operation:o}=e;switch(o.kind){case"list":try{return{scopes:((await this.pinnedJson("/v1/users/",{method:"GET"})).users??[]).map(s=>({scope:s.user_id,itemCount:s.memory_count??0,...s.created_at?{createdAt:new Date(s.created_at).getTime()}:{}}))}}catch{return{scopes:[]}}case"info":try{let r=(await this.pinnedJson(`/v1/memories/?user_id=${encodeURIComponent(o.scope)}&query=&limit=1000`,{method:"GET"})).results??[];return{scopes:[{scope:o.scope,itemCount:r.length}]}}catch{return{scopes:[{scope:o.scope,itemCount:0}]}}case"delete":try{return await this.pinnedDelete(`/v1/memories/?user_id=${encodeURIComponent(o.scope)}`),{deleted:!0}}catch{return{deleted:!1}}default:return{scopes:[]}}}async ensureTarget(){this.targetCache||(this.targetCache=Ws(this.mem0Url,this.resolver));let e=await this.targetCache;if(!e.ok)throw new Error(`Mem0MemoryEngine: egress s\xF3 loopback (CA-G2-6). ${e.reason}. Use 127.0.0.1.`);return e}buildPinnedUrl(e){let o=new URL(this.mem0Url).port,n=e.pinnedIp.includes(":")?`[${e.pinnedIp}]`:e.pinnedIp;return`${e.scheme}://${n}${o?`:${o}`:""}`}async pinnedJson(e,o){let n=await this.ensureTarget(),r=this.buildPinnedUrl(n),s=await this.fetcher.fetchPinned({url:`${r}${e}`,host:n.host,pinnedIp:n.pinnedIp,maxBytes:SK,timeoutMs:mM,method:o.method,...o.body!==void 0?{body:o.body,contentType:"application/json"}:{}});if(s.status!==200&&s.status!==201)throw new Error(`Mem0 HTTP ${s.status}`);let i=s.body;return!i||!i.trim()?{}:JSON.parse(i)}async pinnedDelete(e){let o=await this.ensureTarget(),n=this.buildPinnedUrl(o),r=new AbortController,s=setTimeout(()=>r.abort(),mM);try{let i=await this.deleteFetch(`${n}${e}`,{method:"DELETE",signal:r.signal,headers:{"Content-Type":"application/json","User-Agent":wK}});if(!i.ok)throw new Error(`Mem0 HTTP ${i.status}`);await i.text()}finally{clearTimeout(s)}}ensureMemoryDir(){let e=this.base;try{dM(e,{mode:uM,recursive:!0})}catch{}try{dM(this.memoryDir,{mode:uM})}catch(o){o.code}}}});import{createHash as AK}from"node:crypto";import{basename as EK,resolve as TK}from"node:path";function fM(t){return t.replace(_K,"_").replace(RK,"")}function CK(t){return`proj_${fM(t)}`}function pM(t){let e=TK(t),o=AK("sha256").update(e).digest("hex").slice(0,12),r=`proj_${fM(EK(e))||"root"}_${o}`,s=CK(t);return{scope:r,legacy:s,recallScopes:r===s?[r]:[r,s]}}var _K,RK,hM=p(()=>{"use strict";_K=/[^a-zA-Z0-9]+/g,RK=/^_+|_+$/g});function qf(t={}){let e=t.env??process.env,o=e.ALUY_MAESTRO,n=e.ALUY_MAESTRO_OFF;if(n&&n!=="0"&&n!=="false"||o==="0"||o==="false")return;let r=gr({ollama:e.ALUY_MAESTRO_OLLAMA!=="0",mem0:e.ALUY_MAESTRO_MEM0!=="0"}),s=t.bus??new rf,i=t.judge??new Hf({baseUrl:ya(t.env,t.services),model:pn});async function a(c){let l=DC(c);if(r.has("ollama")&&c.length>=2)try{let d=await i.judge({question:"Dados os sinais de supervis\xE3o, qual a decis\xE3o de reg\xEAncia?",options:[{id:"continuar",label:"Continuar normalmente"},{id:"pausar",label:"Pausar o loop"},{id:"recuperar",label:"Recuperar contexto"},{id:"parar",label:"Parar o loop"}],context:c.map(m=>`${m.origin}/${m.severity}: ${JSON.stringify(m.payload)}`).join(`
453
453
  `),hint:"Prefira seguran\xE7a e continuidade."});if(d.mode==="llm"&&d.confidence>.6)return d.chosen==="continuar"&&d.chosen!==l.decision.action&&d.confidence>.8?{action:"continuar",signals:c,reason:`motor-a:${l.decision.action} + judge:continuar@${d.confidence.toFixed(2)} \u2014 judge preferiu FLUIR (Inv. I)`,ts:Date.now()}:{...l.decision,reason:`${l.decision.reason} | judge:${d.chosen}@${d.confidence.toFixed(2)}`}}catch{}return l.decision}return{bus:s,rege:a}}function _k(t,e,o){if(t===void 0||t==="")return o;let n=Number(t);return!Number.isFinite(n)||!Number.isInteger(n)||n<e?o:n}function gM(t){let e=t?.env??process.env,o=e.ALUY_MEM_OFF;if(o&&o!=="0"&&o!=="false"||e.ALUY_MAESTRO_MEM0==="0")return;let n=t?.cwd??process.cwd(),{scope:r,recallScopes:s}=pM(n);return{memory:t?.memory??new ed({mem0Url:ga(e,t?.services)}),memoryScope:r,memoryRecallScopes:s}}function yM(t){let e=t??process.env,o=e.ALUY_CONT_OFF;if(o&&o!=="0"&&o!=="false")return;let n=e.ALUY_CONT;if(n==="0"||n==="false")return;let r=_k(e.ALUY_CONT_MAX,1,6),s=_k(e.ALUY_CONT_NUDGE_AT,1,1),i=Math.min(_k(e.ALUY_CONT_GIVEUP_AT,1,4),r);return{maxContinuations:r,nudgeAt:s,giveUpAt:i}}var Rk=p(()=>{"use strict";D();cM();Tk();Rf();hM()});import{homedir as kM}from"node:os";import{join as od}from"node:path";import{statSync as xM,readFileSync as Ck}from"node:fs";function td(t){return t.aluyHome??od(kM(),".aluy")}async function $K(t){let e=t.env??process.env;try{let o=vo(e),n=new zt,s=await new Wt({...o,baseUrl:o.identityBaseUrl,store:n}).whoami();if(!s)return{present:!1,keychainAvailable:!0};let i={present:!0,keychainAvailable:!0,...s.user!==void 0?{user:s.user}:{},org:s.organization_id,kind:s.kind},a=await FK(t);return{...i,...a}}catch(o){return o instanceof It?{present:!1,keychainAvailable:!1}:{present:!1,keychainAvailable:!0}}}async function FK(t){if(!t.getAccessToken)return{};let e=t.env??process.env,{brokerBaseUrl:o}=Yo(e),n;try{n=await t.getAccessToken()}catch{return{}}let r=await Aa(`${o}${PK}`,Wf(t),{headers:{authorization:`Bearer ${n}`}});return!r.reached||r.status===void 0?{}:r.status>=200&&r.status<300?{authValidated:!0,authStatus:r.status}:r.status===401||r.status===403?{authValidated:!1,authStatus:r.status}:{authStatus:r.status}}function wM(t,e){return{method:"GET",headers:{accept:"application/json",...e??{}},signal:t}}async function Aa(t,e,o){let n=new AbortController,r=setTimeout(()=>n.abort(),SM);try{return{reached:!0,status:(await e(t,wM(n.signal,o?.headers))).status}}catch{return{reached:!1}}finally{clearTimeout(r)}}function Wf(t){return t.fetch??globalThis.fetch}function AM(t){return(t.ALUY_BACKEND??"").trim().toLowerCase()==="local"}async function BK(t){let e=t.env??process.env,{brokerBaseUrl:o}=Yo(e);if(AM(e))return{url:o,probe:{reached:!1},localSkip:!0};let n=await Aa(`${o}${OK}`,Wf(t));return{url:o,probe:n}}async function UK(t){let e=t.env??process.env;if(AM(e))return{tiers:{reached:!1},custom:{reached:!1},localSkip:!0};let{brokerBaseUrl:o}=Yo(e),n=Wf(t),r;if(t.getAccessToken)try{r={authorization:`Bearer ${await t.getAccessToken()}`}}catch{r=void 0}let[s,i]=await Promise.all([Aa(`${o}${MK}`,n,r?{headers:r}:{}),jK(`${o}${LK}`,n,r)]);return{tiers:s,custom:i.probe,...i.count!==void 0?{customCount:i.count}:{}}}async function jK(t,e,o){let n=new AbortController,r=setTimeout(()=>n.abort(),SM);try{let s=await e(t,wM(n.signal,o));if(s.status<200||s.status>=300)return{probe:{reached:!0,status:s.status}};let i;try{let c=(await s.json())?.data;Array.isArray(c)&&(i=c.length)}catch{i=void 0}return{probe:{reached:!0,status:s.status},...i!==void 0?{count:i}:{}}}catch{return{probe:{reached:!1}}}finally{clearTimeout(r)}}async function HK(t){let e=td(t),o=t.workspaceRoot??process.cwd(),n=new Vo({baseDir:GK(t)}).load(),r=new wr({baseDir:e}).load(),s=zK(o),i=[n.error,r.error,s.error].filter(m=>typeof m=="string"&&m.length>0),a=[{origin:"codex",config:n.config},{origin:"aluy-global",config:r.config},{origin:"project",config:s.config}],c=Ks(a),l=t.makeMcpTransport?await qK(a,t.makeMcpTransport):void 0;return{servers:c.map(m=>{let u=Ys(m),h=u!==void 0,g=m.state.kind==="disabled",b=l?.get(m.name);return{name:m.name,origin:m.origin,invalid:h,...h?{invalidWarning:u}:{},disabled:g,...b&&!h&&!g?{connected:b.ok,...b.ok?{toolCount:b.toolCount??0}:{connectError:b.error??"falha no handshake"}}:{}}}),configErrors:i}}async function qK(t,e){let o=Dl(...t.map(a=>a.config)),r=Bl(o,a=>WK(e(a),IK)),s;try{s=await Promise.race([r,new Promise((a,c)=>setTimeout(()=>c(new Error(`timeout global de ${Math.round(bM/1e3)}s`)),bM))])}catch{return r.then(a=>vM(a.transports),()=>{}),new Map}let i=new Map;for(let a of s.servers)i.set(a.server,a.ok?{ok:!0,toolCount:a.tools.length}:{ok:!1,error:a.error??"falha no handshake"});return await vM(s.transports),i}async function vM(t){await Promise.all(t.map(async e=>{try{await Promise.race([e.close(),new Promise(o=>setTimeout(o,NK))])}catch{}}))}function WK(t,e){return{async connect(o){let n,r=new Promise((s,i)=>{n=setTimeout(()=>i(new Error(`timeout de ${Math.round(e/1e3)}s no handshake`)),e)});try{return await Promise.race([t.connect(o),r])}finally{n&&clearTimeout(n)}},callTool:(o,n)=>t.callTool(o,n),close:()=>t.close()}}function GK(t){return(t.env??process.env).CODEX_HOME??od(kM(),".codex")}function zK(t){let e=od(t,$o),o;try{let r=xM(e);if(!r.isFile()||r.size>DK)return{config:xe};o=Ck(e,"utf8")}catch{return{config:xe}}let n;try{n=JSON.parse(o)}catch{return{config:xe,error:`${e}: JSON inv\xE1lido.`}}try{return{config:No(n)}}catch(r){return{config:xe,error:r instanceof ue?r.message:String(r)}}}function KK(t){let o=new Ar({baseDir:td(t)}).load();return{validCount:o.profiles.length,rejected:o.errors.map(n=>({file:n.file,reason:n.reason}))}}function YK(t){let e=t.env??process.env,o=od(td(t),Hl),n=!1,r=!1,s,i;try{if(xM(o).isFile()){n=!0;let d=Ck(o,"utf8");try{let m=JSON.parse(d);typeof m.theme=="string"&&(s=m.theme),typeof m.tier=="string"&&(i=m.tier)}catch{r=!0}}}catch{n=!1}let a=qu(void 0,e.ALUY_MAX_TOKENS),c=Wu(void 0,e.ALUY_MAX_ITERATIONS);return{exists:n,corrupted:r,...s!==void 0?{theme:s,themeKnown:Kr(s)!==void 0}:{},...i!==void 0?{tier:i,tierKnown:vk(i)!==void 0}:{},maxTokens:a,maxIterations:c,flags:VK(e,t.extraFlags)}}function VK(t,e){let o=[...e??[]];return(t.ALUY_NATIVE_TOOLS_OFF==="1"||t.ALUY_NATIVE_TOOLS_OFF==="true")&&o.push("ALUY_NATIVE_TOOLS_OFF"),t.ALUY_OVERWRITE_RENDER==="0"&&o.push("ALUY_OVERWRITE_RENDER=0"),t.ALUY_SAFE_GLYPHS==="1"&&o.push("ALUY_SAFE_GLYPHS"),o}function XK(){return{aluy:Xr,node:process.version}}async function JK(t){if(!t.memory)return{accessible:!0,count:0};try{let e=await t.memory.count();return e===null?{accessible:!1,count:0}:{accessible:!0,count:e}}catch{return{accessible:!1,count:0}}}async function QK(t){let e=Wf(t),o=t.env??process.env,n;try{n=new it({baseDir:td(t)}).load().services}catch{}let[r,s,i]=await Promise.all([Aa(`${VO(o,n)}/health`,e),Aa(`${ya(o,n)}/api/tags`,e),Aa(`${ga(o,n)}/health`,e)]),a="turbo",c=["ollama","mem0"];try{let l=td(t),d=Ck(od(l,Hl),"utf8"),m=JSON.parse(d);(m.profile==="leve"||m.profile==="turbo")&&(a=m.profile);let u=gr(m.sidecarToggles??{}),h=[];u.has("ollama")&&h.push("ollama"),u.has("mem0")&&h.push("mem0"),c=h}catch{}return{headroom:r,ollama:s,mem0:i,profile:a,toggles:c}}async function ZK(t){let e=t.env??process.env;return{enabled:qf({env:e})!==void 0}}async function nd(t={}){let e={},o=r=>t.onCheck?.(r,{...e}),n=(r,s,i)=>s.then(a=>{e[i]=a,o(r)});return e.version=XK(),o("version"),await Promise.all([n("auth",(t.gatherAuth??(()=>$K(t)))(),"auth"),n("broker",(t.gatherBroker??(()=>BK(t)))(),"broker"),n("catalog",(t.gatherCatalog??(()=>UK(t)))(),"catalog"),n("memory",(t.gatherMemory??(()=>JK(t)))(),"memory"),n("mcp",(t.gatherMcp??(()=>HK(t)))(),"mcp"),n("agents",(t.gatherAgents??(()=>Promise.resolve(KK(t))))(),"agents"),n("config",(t.gatherConfig??(()=>Promise.resolve(YK(t))))(),"config"),n("sidecars",(t.gatherSidecars??(()=>QK(t)))(),"sidecars"),n("maestro",(t.gatherMaestro??(()=>ZK(t)))(),"maestro")]),t.tierTester&&await n("tier",t.tierTester().then(r=>r),"tier"),{auth:e.auth,broker:e.broker,catalog:e.catalog,mcp:e.mcp,agents:e.agents,config:e.config,version:e.version,memory:e.memory,sidecars:e.sidecars,maestro:e.maestro,...e.tier!==void 0?{tier:e.tier}:{}}}var OK,MK,LK,PK,SM,IK,bM,NK,DK,Ok=p(()=>{"use strict";D();Yr();Rf();Sr();Zr();$n();Zs();ti();Jl();Bf();Uf();hn();Cf();Rk();OK="/healthz",MK="/v1/tiers/catalog",LK="/v1/models/custom",PK="/v1/quota",SM=4e3,IK=6e3,bM=15e3,NK=2e3,DK=256*1024});function TM(t){if(!t.keychainAvailable)return{id:"auth",label:"credencial",status:"fail",detail:"keychain do SO indispon\xEDvel",fix:"instale um keychain (libsecret/Keychain/Credential Manager) e rode `aluy login`."};if(!t.present)return{id:"auth",label:"credencial",status:"fail",detail:"n\xE3o autenticado",fix:"rode `aluy login`."};let e=t.user??(t.kind==="pat"?"PAT":"\u2014"),o=t.org!==void 0?` \xB7 org ${t.org}`:"";if(t.authValidated===!1)return{id:"auth",label:"credencial",status:"fail",detail:`${e}${o} \xB7 broker recusou (${t.authStatus??"401"})`,fix:"credencial inv\xE1lida/expirada \u2014 rode `aluy login`."};let n=t.authValidated===!0?" \xB7 autenticado":" \xB7 presente (n\xE3o-validado)";return{id:"auth",label:"credencial",status:"ok",detail:`${e}${o}${n}`}}function _M(t){if(t.localSkip)return{id:"broker",label:"broker",status:"ok",detail:"N/A (backend local \u2014 BYO, sem broker)"};let e=tY(t.url),o=t.probe;if(!o.reached){let n=e===eY;return{id:"broker",label:"broker",status:"fail",detail:n?`${e} \xB7 inalcan\xE7\xE1vel (placeholder)`:`${e} \xB7 inalcan\xE7\xE1vel`,fix:n?"ALUY_BROKER_URL n\xE3o configurado \u2014 `broker.dev.aluy.example` \xE9 um placeholder de dev. Defina ALUY_BROKER_URL p/ o seu broker (ex.: `export ALUY_BROKER_URL=http://127.0.0.1:8121` em dev).":"cheque a rede e o ALUY_BROKER_URL; o broker pode estar fora."}}return o.status!==void 0&&o.status>=200&&o.status<300?{id:"broker",label:"broker",status:"ok",detail:`${e} \xB7 ${o.status}`}:o.status===401||o.status===403?{id:"broker",label:"broker",status:"fail",detail:`${e} \xB7 ${o.status}`,fix:"credencial recusada \u2014 rode `aluy login`."}:{id:"broker",label:"broker",status:"warn",detail:`${e} \xB7 ${o.status??"?"}`,fix:"broker respondeu, mas n\xE3o-ok no /healthz \u2014 verifique o status do servi\xE7o."}}function RM(t){if(t.localSkip)return{id:"catalog",label:"cat\xE1logo/tiers",status:"ok",detail:"N/A (backend local \u2014 modelo/base_url v\xEAm da config BYO)"};let e=t.tiers,o=t.custom,n=o.reached&&o.status!==void 0&&rd(o.status),r=e.reached&&e.status!==void 0&&rd(e.status);if(!e.reached&&!o.reached)return{id:"catalog",label:"cat\xE1logo/tiers",status:"warn",detail:"broker fora \u2014 usando o cat\xE1logo fallback",fix:"sem o cat\xE1logo do broker o /model usa os tiers conhecidos; cheque o broker."};if(r&&n)return{id:"catalog",label:"cat\xE1logo/tiers",status:"ok",detail:`cat\xE1logo ok \xB7 ${t.customCount??0} modelo(s) custom`};let s=r?"cat\xE1logo de tier ok":`cat\xE1logo de tier indispon\xEDvel (${EM(e)})`,i=n?`${t.customCount??0} modelo(s) custom`:`custom indispon\xEDvel (${EM(o)})`;return{id:"catalog",label:"cat\xE1logo/tiers",status:"warn",detail:`${s} \xB7 ${i} \u2014 usando fallback`,fix:"o /model cai no cat\xE1logo fallback; rode `aluy login` se for falta de scope."}}function CM(t){let e=t.servers.length,o=t.servers.filter(a=>a.invalid),n=t.servers.filter(a=>a.disabled&&!a.invalid),r=e-o.length-n.length;if(t.configErrors.length>0)return{id:"mcp",label:"MCP",status:"fail",detail:`config inv\xE1lida: ${t.configErrors[0]}`,fix:"conserte o JSON do mcp.json (~/.aluy/mcp.json ou .mcp.json do projeto)."};if(e===0)return{id:"mcp",label:"MCP",status:"ok",detail:"nenhum server configurado"};if(o.length>0){let a=o[0]?.invalidWarning??`server "${o[0]?.name}" com command inv\xE1lido`;return{id:"mcp",label:"MCP",status:"warn",detail:`${e} server(es) \xB7 ${o.length} com config inv\xE1lida`,fix:a}}if(r>0&&t.servers.some(a=>a.connected!==void 0)){let a=t.servers.filter(m=>m.connected===!1),c=t.servers.filter(m=>m.connected===!0),l=c.map(m=>`${m.name} \xB7 ${m.toolCount??0} tools`).join(", ");if(a.length>0){let m=a[0],u=c.length>0?` \xB7 ok: ${l}`:"";return{id:"mcp",label:"MCP",status:"fail",detail:`${a.length}/${r} falhou ao conectar \u2014 ${m.name}: ${m.connectError??"erro"}${u}`,fix:"cheque o command/args do server no mcp.json e se o bin\xE1rio est\xE1 instalado."}}let d=n.length>0?` \xB7 ${n.length} desativado(s)`:"";return{id:"mcp",label:"MCP",status:"ok",detail:`${c.length} conectado(s): ${l}${d}`}}let i=[`${r} ativo(s)`];return n.length>0&&i.push(`${n.length} desativado(s)`),{id:"mcp",label:"MCP",status:"ok",detail:`${e} server(es) \xB7 ${i.join(", ")}`}}function OM(t){if(t.rejected.length>0){let e=t.rejected[0];return{id:"agents",label:"perfis de agente",status:"warn",detail:`${t.validCount} v\xE1lido(s) \xB7 ${t.rejected.length} rejeitado(s): ${e?.file} (${e?.reason})`,fix:"conserte o frontmatter do .md (ex.: `tools:` precisa ser uma lista leg\xEDvel \u2014 RES-MD-3 falha fechada)."}}return{id:"agents",label:"perfis de agente",status:"ok",detail:t.validCount===0?"nenhum perfil":`${t.validCount} v\xE1lido(s)`}}function MM(t){let e=`max-tokens ${t.maxTokens} \xB7 max-iterations ${t.maxIterations}`,o=t.flags.length>0?` \xB7 flags: ${t.flags.join(", ")}`:"";if(t.corrupted)return{id:"config",label:"config",status:"fail",detail:`~/.aluy/config.json corrompido (JSON inv\xE1lido) \u2014 usando defaults \xB7 ${e}${o}`,fix:"conserte ou apague ~/.aluy/config.json (ser\xE1 recriado pelo /theme e /model)."};let n=[];t.theme!==void 0&&n.push(`tema ${t.theme}`),t.tier!==void 0&&n.push(`tier ${t.tier}`);let r=t.exists&&n.length>0?n.join(", "):"defaults",s=t.theme!==void 0&&t.themeKnown===!1,i=t.tier!==void 0&&t.tierKnown===!1;if(s||i){let a=[];return s&&a.push(`tema "${t.theme}" n\xE3o est\xE1 no cat\xE1logo`),i&&a.push(`tier "${t.tier}" desconhecido`),{id:"config",label:"config",status:"warn",detail:`${a.join(" \xB7 ")} \u2014 usando defaults \xB7 ${e}${o}`,fix:s?"rode `/theme` p/ escolher um tema v\xE1lido (dark/light/slate).":"rode `/model` p/ escolher um tier conhecido."}}return{id:"config",label:"config",status:"ok",detail:`${r} \xB7 ${e}${o}`}}function LM(t){return t.responded?{id:"tier",label:"tier (--deep)",status:"ok",detail:`${t.tier} respondeu ao modelo`}:{id:"tier",label:"tier (--deep)",status:"fail",detail:`${t.tier} n\xE3o respondeu${t.error?` \xB7 ${t.error}`:""}`,fix:"o tier n\xE3o respondeu ao modelo \u2014 cheque cr\xE9dito (`/usage`), o broker e o `/model`."}}function PM(t){return{id:"version",label:"vers\xE3o",status:"ok",detail:`aluy ${t.aluy} \xB7 node ${t.node}`}}function IM(t){return t.accessible?{id:"memory",label:"mem\xF3ria",status:"ok",detail:t.count===0?"store ok \xB7 0 fato":`store ok \xB7 ${t.count} fato(s)`}:{id:"memory",label:"mem\xF3ria",status:"fail",detail:"store de mem\xF3ria ileg\xEDvel",fix:"cheque permiss\xF5es de ~/.aluy/ (deve ser 0700, seu)."}}function NM(t){let e=[],o=!1,n=!1;t.headroom.reached&&t.headroom.status!==void 0&&rd(t.headroom.status)?e.push(`headroom \u2713 (${t.headroom.status})`):t.headroom.reached?(e.push(`headroom \u26A0 (${t.headroom.status??"?"})`),n=!0):(e.push("headroom \u2717 (fora)"),o=!0),t.ollama.reached&&t.ollama.status!==void 0&&rd(t.ollama.status)?e.push(`ollama \u2713 (${t.ollama.status})`):t.ollama.reached?(e.push(`ollama \u26A0 (${t.ollama.status??"?"})`),n=!0):(e.push("ollama \u2717 (fora)"),o=!0),t.mem0.reached&&t.mem0.status!==void 0&&rd(t.mem0.status)?e.push(`mem0 \u2713 (${t.mem0.status})`):t.mem0.reached?(e.push(`mem0 \u26A0 (${t.mem0.status??"?"})`),n=!0):(e.push("mem0 \u2717 (fora)"),o=!0);let r=t.toggles.length>0?t.toggles.join(", "):"nenhum";e.push(`perfil ${t.profile.toUpperCase()} (toggles: ${r})`);let s=o?"fail":n?"warn":"ok",i=o?"sidecar(es) fora \u2014 provisione/suba com `aluy bootstrap` (perfil TURBO; mem0/headroom precisam de python3.10+/pip/venv). No boot eles sobem sozinhos se j\xE1 instalados.":n?"sidecar(es) com status inesperado \u2014 cheque os logs do Maestro.":void 0;return{id:"sidecars",label:"sidecars/Maestro",status:s,detail:e.join(" \xB7 "),...i!==void 0?{fix:i}:{}}}function DM(t){return{id:"maestro",label:"Maestro",status:"ok",detail:t.enabled?"ligado":"desligado"}}function sd(t){let e=[TM(t.auth),_M(t.broker),RM(t.catalog),CM(t.mcp),OM(t.agents),MM(t.config),PM(t.version),IM(t.memory),NM(t.sidecars),DM(t.maestro)];return t.tier!==void 0&&e.push(LM(t.tier)),{checks:e}}function Gf(t=!1){let e=[{id:"auth",label:"credencial"},{id:"broker",label:"broker"},{id:"catalog",label:"cat\xE1logo/tiers"},{id:"mcp",label:"MCP"},{id:"agents",label:"perfis de agente"},{id:"config",label:"config"},{id:"version",label:"vers\xE3o"},{id:"memory",label:"mem\xF3ria"},{id:"sidecars",label:"sidecars/Maestro"},{id:"maestro",label:"Maestro"}];return t?[...e,{id:"tier",label:"tier (--deep)"}]:e}function Mk(t){return t.checks.some(e=>e.status==="fail")}function zf(t,e){switch(t){case"auth":return e.auth?TM(e.auth):void 0;case"broker":return e.broker?_M(e.broker):void 0;case"catalog":return e.catalog?RM(e.catalog):void 0;case"mcp":return e.mcp?CM(e.mcp):void 0;case"agents":return e.agents?OM(e.agents):void 0;case"config":return e.config?MM(e.config):void 0;case"version":return e.version?PM(e.version):void 0;case"memory":return e.memory?IM(e.memory):void 0;case"sidecars":return e.sidecars?NM(e.sidecars):void 0;case"maestro":return e.maestro?DM(e.maestro):void 0;case"tier":return e.tier?LM(e.tier):void 0;default:return}}function Kf(t){let e=0,o=0,n=0;for(let r of t)r.status==="ok"?e++:r.status==="warn"?o++:n++;return`${e} ok \xB7 ${o} aviso \xB7 ${n} falha`}function rd(t){return t>=200&&t<300}function EM(t){return t.reached?t.status!==void 0?String(t.status):"?":"broker fora"}function tY(t){try{return new URL(t).host}catch{return t}}var eY,Yf=p(()=>{"use strict";Zs();eY=(()=>{try{return new URL(Pf).host}catch{return Pf}})()});function oY(t,e){return t==="ok"?e.ok:t==="warn"?e.warn:e.fail}function $M(t,e){let o=[];for(let n of t.checks)o.push(`${oY(n.status,e)} ${n.label}: ${n.detail}`),n.status!=="ok"&&n.fix!==void 0&&o.push(` \u2192 ${n.fix}`);return o.push(""),o.push(`resumo: ${Kf(t.checks)}`),o}var id,FM=p(()=>{"use strict";Yf();id={ok:"[ok]",warn:"[!]",fail:"[x]"}});async function Vf(t){let e=t.env??process.env,{brokerBaseUrl:o}=Yo(e),n=Hc({brokerBaseUrl:o,login:t.login,...t.fetch?{fetch:t.fetch}:{}}),r=new Ln({client:n,tier:t.tier,...t.tier==="custom"&&t.model!==void 0?{model:t.model}:{},maxTokens:rY}),s=new AbortController,i=setTimeout(()=>s.abort(),t.timeoutMs??2e4);try{return typeof(await r.call({messages:[{role:"user",content:nY}],idempotencyKey:`doctor-deep-${Date.now()}`,signal:s.signal})).content=="string"?{tier:t.tier,responded:!0}:{tier:t.tier,responded:!1,error:"resposta vazia do broker"}}catch(a){return{tier:t.tier,responded:!1,error:sY(a)}}finally{clearTimeout(i)}}function sY(t){return t instanceof Error?t.message:String(t)}var nY,rY,Lk=p(()=>{"use strict";D();Zs();nY='Responda apenas com a palavra "ok".',rY=8});async function Xf(t,e,o,n={}){let r=n.resolver??new Yt,s=n.fetchFn??globalThis.fetch;if(typeof s!="function")return{ok:!1,reason:"fetch indispon\xEDvel neste runtime."};let i=await Ws(t,r);if(!i.ok)return{ok:!1,reason:i.reason};let a="";try{a=new URL(t).port}catch{}let c=i.pinnedIp.includes(":")?`[${i.pinnedIp}]`:i.pinnedIp,l=`${i.scheme}://${c}${a!==""?`:${a}`:""}${e}`;return{ok:!0,response:await s(l,o)}}var Pk=p(()=>{"use strict";D();os()});function Jf(t=process.env){let e=t.ALUY_HEADROOM_URL?.trim();return e!==void 0&&e!==""?e:void 0}async function BM(t,e){if(t.length===0)return t;let o=e.timeoutMs??iY,n=new AbortController,r=o>0?setTimeout(()=>n.abort(),o):void 0,s=()=>n.abort();e.signal?.addEventListener("abort",s,{once:!0}),e.signal?.aborted&&n.abort();try{let i=await Xf(e.baseUrl,"/v1/compress",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({messages:t,model:e.model??"claude-3-5-sonnet"}),signal:n.signal},{...e.resolver?{resolver:e.resolver}:{},...e.fetchFn?{fetchFn:e.fetchFn}:{}});if(!i.ok)return e.onRefused?.(i.reason),t;let a=i.response;if(!a.ok)return t;let c=await a.json(),l=c.messages;if(!Array.isArray(l)||l.length!==t.length)return t;for(let d=0;d<t.length;d++){let m=t[d],u=l[d];if(u===void 0)return t;if(u.role!==void 0&&u.role!==m.role)return e.onRefused?.(`proxy adulterou o role da mensagem ${d} (${String(u.role)})`),t;if(u.tool_calls!==void 0&&m.tool_calls===void 0)return e.onRefused?.(`proxy injetou tool_calls na mensagem ${d}`),t;if(u.tool_call_id!==void 0&&m.tool_call_id===void 0)return e.onRefused?.(`proxy injetou tool_call_id na mensagem ${d}`),t}return e.onSavings?.({before:c.tokens_before??0,after:c.tokens_after??0,ratio:c.compression_ratio??1}),t.map((d,m)=>{let u=l[m]?.content;return typeof u=="string"&&d.content!==""&&u!==d.content?{...d,content:u}:d})}catch{return t}finally{r!==void 0&&clearTimeout(r),e.signal?.removeEventListener("abort",s)}}var iY,Ik=p(()=>{"use strict";Pk();iY=2500});function dY(t){let e=t.hash;return typeof e=="string"&&e.trim()!==""?e.trim():void 0}function uY(t){let e=t.query;return typeof e=="string"&&e.trim()!==""?e.trim():void 0}function UM(t){let e={...t.resolver?{resolver:t.resolver}:{},...t.fetchFn?{fetchFn:t.fetchFn}:{}},o=`${t.baseUrl.replace(/\/+$/,"")}/v1/retrieve`;return{name:"headroom_retrieve",effect:"network",description:lY,parameters:cY,async run(n,r,s){let i=dY(n);if(i===void 0)return{ok:!1,observation:"headroom_retrieve: `hash` \xE9 obrigat\xF3rio (copie o valor do marcador `\u2026 hash=\u2026`)."};let a=uY(n),c=`headroom_retrieve POST ${o} hash=${i}${a?` query=${JSON.stringify(a)}`:""}`,l=new AbortController,d=!1,m=t.timeoutMs??aY,u=setTimeout(()=>{d=!0,l.abort()},m),h=()=>l.abort();s?.signal?.addEventListener("abort",h,{once:!0}),s?.signal?.aborted&&l.abort();try{let g=await Xf(t.baseUrl,"/v1/retrieve",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(a!==void 0?{hash:i,query:a}:{hash:i}),signal:l.signal},e);if(!g.ok)return{ok:!1,display:c,observation:`headroom_retrieve: destino recusado (${g.reason}).`};let b=g.response;if(b.status===404)return{ok:!1,display:c,observation:`headroom_retrieve: conte\xFAdo do hash "${i}" EXPIROU (TTL do cache ou rein\xEDcio do proxy). N\xE3o h\xE1 o que recuperar \u2014 RErode o comando/tool original p/ regerar.`};if(!b.ok)return{ok:!1,display:c,observation:`headroom_retrieve: o proxy respondeu HTTP ${b.status}.`};let y=await b.json(),w=y.original_content;if(typeof w!="string"||w==="")return{ok:!1,display:c,observation:"headroom_retrieve: resposta sem `original_content` utiliz\xE1vel."};let R=typeof y.original_tokens=="number"?y.original_tokens:void 0,A=typeof y.tool_name=="string"?y.tool_name:void 0,L=`[headroom_retrieve \xB7 hash=${i}${A?` \xB7 tool=${A}`:""}${R!==void 0?` \xB7 ${R} tokens`:""}]`;return{ok:!0,display:c,observation:`${L}
454
454
  ${fn(w)}`}}catch(g){let b=d?`o proxy n\xE3o respondeu em ${m}ms (timeout)`:g instanceof Error?g.message:String(g);return{ok:!1,display:c,observation:`headroom_retrieve: falha ao falar com o proxy (${b}).`}}finally{clearTimeout(u),s?.signal?.removeEventListener("abort",h)}}}}var aY,cY,lY,jM=p(()=>{"use strict";D();Pk();aY=2500,cY={type:"object",properties:{hash:{type:"string",description:"O hash do marcador de compress\xE3o (ex.: `[\u2026 hash=abc123]`). Obrigat\xF3rio."},query:{type:"string",description:"Opcional: busca BM25 DENTRO do conte\xFAdo cacheado \u2014 recorta resultados grandes p/ s\xF3 o trecho relevante."}},required:["hash"],additionalProperties:!1},lY='Recupera o conte\xFAdo ORIGINAL que a compress\xE3o headroom dedupou/truncou. Quando uma observa\xE7\xE3o de tool trouxer um marcador como `[N items compressed \u2026 hash=abc123]` e voc\xEA precisar do conte\xFAdo completo, chame com `{hash:"abc123"}`. Passe `query` p/ buscar (BM25) s\xF3 o trecho relevante dentro de um cache grande.'});import{spawnSync as mY}from"node:child_process";import{existsSync as HM,readFileSync as fY}from"node:fs";import{arch as pY,platform as hY,release as gY}from"node:os";function yY(t){try{let e=t("bwrap",["--version"],{timeout:3e3,encoding:"utf8"});return e.error?{ok:!1,detail:`bwrap n\xE3o execut\xE1vel (${e.error.message})`}:e.status!==0?{ok:!1,detail:"bwrap retornou status != 0"}:{ok:!0,detail:(e.stdout??"").trim()||"bwrap presente"}}catch(e){return{ok:!1,detail:`bwrap ausente (${e instanceof Error?e.message:String(e)})`}}}function bY(t){let e=t("/proc/sys/user/max_user_namespaces");if(e!==void 0&&/^\s*0\s*$/.test(e))return{ok:!1,detail:"max_user_namespaces=0 (userns desativado)"};let o=t("/proc/sys/kernel/unprivileged_userns_clone");return o!==void 0&&/^\s*0\s*$/.test(o)?{ok:!1,detail:"unprivileged_userns_clone=0 (userns rootless bloqueado)"}:{ok:!0,detail:"userns dispon\xEDvel"}}function vY(t,e){if(!ff(t))return{ok:!1,detail:`seccomp: arch ${t} n\xE3o mapeada (sem filtro)`};let o=e("/proc/self/status");return o!==void 0&&!/\bSeccomp:/.test(o)?{ok:!1,detail:"seccomp n\xE3o compilado no kernel"}:{ok:!0,detail:"seccomp-bpf dispon\xEDvel"}}function kY(t){try{let e=t("systemd-run",["--user","--version"],{timeout:3e3,encoding:"utf8"});return e.error?{ok:!1,detail:`systemd-run --user indispon\xEDvel (${e.error.message})`}:e.status!==0?{ok:!1,detail:"systemd-run --user retornou status != 0 (sem bus de usu\xE1rio?)"}:{ok:!0,detail:"systemd-run --user (cgroup v2 rootless) dispon\xEDvel"}}catch(e){return{ok:!1,detail:`systemd-run ausente (${e instanceof Error?e.message:String(e)})`}}}function xY(t){let e=t("/proc/self/lsm");return!!(e!==void 0&&/\blandlock\b/.test(e)||HM("/sys/kernel/security/landlock"))}function SY(t){try{return HM(t)?fY(t,"utf8"):void 0}catch{return}}function Nk(t={}){let e=t.platform??hY(),o=t.arch??pY(),n=t.readFile??SY,r=(()=>{try{return gY()}catch{return}})();if(e!=="linux")return{platform:e,bwrap:!1,userns:!1,seccomp:!1,landlock:!1,cgroupLimits:!1,...r?{kernel:r}:{},unavailableReason:`Fase 1 do sandbox \xE9 Linux (D-SB-1); plataforma ${e} ainda sem piso de SO`};let s=t.spawnSyncFn??mY,i=yY(s),a=bY(n),c=vY(o,n),l=xY(n),d=kY(s),m=[];return i.ok||m.push(i.detail),a.ok||m.push(a.detail),c.ok||m.push(c.detail),{platform:e,bwrap:i.ok,userns:a.ok,seccomp:c.ok,landlock:l,cgroupLimits:d.ok,...r?{kernel:r}:{},...m.length>0?{unavailableReason:m.join("; ")}:{}}}var Dk=p(()=>{"use strict";D()});import{spawn as wY}from"node:child_process";import{closeSync as AY,mkdtempSync as qM,openSync as EY,realpathSync as TY,rmSync as WM,writeFileSync as GM}from"node:fs";import{tmpdir as zM}from"node:os";import{join as Qf,resolve as _Y}from"node:path";function KM(t){return`'${t.replace(/'/g,"'\\''")}'`}function Zf(t){let e=_Y(t);return e.length>1&&e.endsWith("/")?e.slice(0,-1):e}function YM(t){try{return Zf(TY(t))}catch{return Zf(t)}}function VM(t,e){let o=Zf(t),n=Zf(e);return o===n||o.startsWith(`${n}/`)}function CY(t,e){let o=Array.isArray(t)?[...t]:[t??"pipe","pipe","pipe"];for(;o.length<e;)o.push("ignore");return o[e]=e,o}var RY,ad,ns,$k=p(()=>{"use strict";D();Pu();RY=Object.freeze(["/usr","/bin","/sbin","/lib","/lib64","/lib32","/etc/alternatives","/etc/ssl","/etc/ca-certificates","/etc/resolv.conf","/etc/nsswitch.conf"]);ad=class{capability;env;unsafeNoSandbox;arch;spawnFn;aluyHome;bwrapPath;systemdRunPath;constructor(e){this.capability=e.capability,this.env=e.env,this.unsafeNoSandbox=e.unsafeNoSandbox??!1,this.arch=e.arch??process.arch,this.spawnFn=e.spawnFn??wY,this.aluyHome=YM(e.aluyHome??mc()),this.bwrapPath=e.bwrapPath??"bwrap",this.systemdRunPath=e.systemdRunPath??"systemd-run"}decide(){return Ev(this.capability,this.env,this.unsafeNoSandbox)}assertNoAluyHome(e){let o=[...e.workspaceRoots,e.cwd,...e.roBinds??[],...e.rwBinds??[]];for(let n of o){let r=YM(n);if(VM(r,this.aluyHome)||VM(this.aluyHome,r))throw new ns(`recusado: bind/cwd "${n}" alcan\xE7a ~/.aluy/ (${this.aluyHome}) \u2014 o sandbox NUNCA monta o diret\xF3rio do agente (journal/mem\xF3ria/config) no namespace (ADR-0065 \xA72).`)}}buildBwrapArgs(e,o){let n=["--unshare-all","--die-with-parent","--new-session"];e.network===!0&&n.push("--share-net");for(let r of RY)n.push("--ro-bind-try",r,r);n.push("--tmpfs","/tmp");for(let r of e.workspaceRoots)n.push("--bind",r,r);for(let r of e.roBinds??[])n.push("--ro-bind",r,r);for(let r of e.rwBinds??[])n.push("--bind",r,r);return n.push("--proc","/proc","--dev","/dev"),o!==void 0&&n.push("--seccomp",String(o)),n.push("--chdir",e.cwd),n}buildSystemdRunPrefix(e){if(this.capability.cgroupLimits!==!0)return[];let o={tasksMax:e.resourceLimits?.tasksMax??Il.tasksMax,memoryMax:e.resourceLimits?.memoryMax??Il.memoryMax,cpuQuota:e.resourceLimits?.cpuQuota??Il.cpuQuota};return["--user","--scope","--quiet","--collect","-p",`TasksMax=${o.tasksMax}`,"-p",`MemoryMax=${o.memoryMax}`,"-p",`CPUQuota=${o.cpuQuota}`,"--"]}cgroupUnavailableWarning(){return`\u26A0 SEM CONFINAMENTO DE RECURSO NESTA M\xC1QUINA \u2014 o sandbox confina FUGA (FS/rede/syscall via bwrap) MAS n\xE3o o RECURSO (cgroup v2 via systemd-run ausente): um fork-bomb/\`cat /dev/zero\` confinado ainda pode esgotar CPU/RAM/PIDs da m\xE1quina (ADR-0065 \xA713.2). O comando RODA MESMO ASSIM \u2014 confinamento de recurso \xE9 hardening aditivo, n\xE3o gate duro. Motivo: ${this.capability.unavailableReason??"systemd-run --user indispon\xEDvel"}.`}buildConfinedInvocation(e,o){if(e.length===0)throw new ns("buildConfinedInvocation: command vazio (sem programa a confinar).");this.assertNoAluyHome(o);let n=this.decide();if(n.action==="refuse")return{decision:n,cleanup:()=>{}};if(n.action!=="confine")return{decision:n,command:e[0],args:e.slice(1),cleanup:()=>{}};let r=pf(this.arch);if(!r)throw new ns(`sem filtro seccomp p/ arch ${this.arch} \u2014 recusando confinar server MCP sem o piso de syscalls (c).`);let s=qM(Qf(zM(),"aluy-mcp-sb-")),i=Qf(s,"seccomp.bpf");GM(i,r,{mode:384});let a=3,c=this.buildBwrapArgs(o,a),l=[this.bwrapPath,...c,"--",...e],d=this.buildSystemdRunPrefix(o),m=d.length>0,h=`exec ${(m?[this.systemdRunPath,...d,...l]:l).map(KM).join(" ")} ${a}< ${KM(i)}`,g=m?void 0:this.cgroupUnavailableWarning();return{decision:n,command:"/bin/sh",args:["-c",h],...g?{warning:g}:{},cleanup:()=>{try{WM(s,{recursive:!0,force:!0})}catch{}}}}spawnConfined(e,o,n={}){if(e.length===0)throw new ns("spawnConfined: command vazio (sem programa a executar).");this.assertNoAluyHome(o);let r=this.decide();if(r.action==="refuse")return{decision:r};let s=n.env??process.env,i=n.stdio??["ignore","pipe","pipe"],a={env:s,stdio:i,detached:!0,...n.signal?{signal:n.signal}:{},...n.launcherCwd?{cwd:n.launcherCwd}:{}};if(r.action==="confine")return this.spawnInBwrap(e,o,a,r);let c=this.spawnFn(e[0],e.slice(1),{...a,cwd:o.cwd});return{decision:r,process:c}}spawnInBwrap(e,o,n,r){let s=pf(this.arch);if(!s)throw new ns(`sem filtro seccomp p/ arch ${this.arch} \u2014 recusando confinar sem o piso de syscalls (c).`);let i=qM(Qf(zM(),"aluy-sb-")),a=Qf(i,"seccomp.bpf"),c=-1;try{GM(a,s,{mode:384}),c=EY(a,"r");let l=this.buildBwrapArgs(o,c),d=[this.bwrapPath,...l,"--",...e],m=this.buildSystemdRunPrefix(o),u=m.length>0,h=u?this.systemdRunPath:this.bwrapPath,g=u?[...m,...d]:d.slice(1),b=this.spawnFn(h,g,{...n,stdio:CY(n.stdio,c)}),y=u?void 0:this.cgroupUnavailableWarning();return{decision:r,process:b,...y?{warning:y}:{}}}finally{if(c>=0)try{AY(c)}catch{}try{WM(i,{recursive:!0,force:!0})}catch{}}}};ns=class extends Error{constructor(e){super(e),this.name="SandboxConfinementError"}}});function ep(t={}){let e=t.processEnv??process.env,o=Nk(),n=t.env??Tv(e),r=_v(t.unsafeNoSandbox??!1,e);return new ad({capability:o,env:n,unsafeNoSandbox:r})}var Fk=p(()=>{"use strict";D();Dk();$k();Dk();$k();Pu()});import{createReadStream as OY}from"node:fs";function Bk(t,e=XM){let o=Math.min(t.byteLength,e);for(let n=0;n<o;n++)if(t[n]===0)return!0;return!1}function JM(t,e){return`[arquivo bin\xE1rio: ${t} \u2014 ${e} bytes, n\xE3o lido como texto]`}function QM(t,e=XM){let o=Math.max(1,Math.floor(e));return new Promise((n,r)=>{let s=[],i=0,a=OY(t,{start:0,end:o-1});a.on("data",l=>{let d=typeof l=="string"?Buffer.from(l):l;s.push(d),i+=d.byteLength,i>=o&&a.destroy()}),a.on("error",r);let c=()=>n(Bk(Buffer.concat(s),o));a.on("close",c),a.on("end",c)})}var XM,tp=p(()=>{"use strict";XM=8*1024});import{statSync as MY,createReadStream as LY}from"node:fs";async function Ea(t,e,o=PY){let n=MY(t).size,r=n>e,i=await IY(t,r?e:n,o);return Bk(i,i.byteLength)?{content:"",truncated:r,totalBytes:n,binary:!0}:{content:i.toString("utf8"),truncated:r,totalBytes:n,binary:!1}}function IY(t,e,o){return e<=0?Promise.resolve(Buffer.alloc(0)):new Promise((n,r)=>{let s=[],i=0,a=o(t,{start:0,end:e-1});a.on("data",c=>{let l=typeof c=="string"?Buffer.from(c):c,d=e-i;d<=0||(l.byteLength>d?(s.push(l.subarray(0,d)),i=e,a.destroy()):(s.push(l),i+=l.byteLength))}),a.on("error",r),a.on("close",()=>n(Buffer.concat(s))),a.on("end",()=>n(Buffer.concat(s)))})}var PY,op=p(()=>{"use strict";tp();PY=(t,e)=>LY(t,e)});import{writeFile as NY,mkdir as DY}from"node:fs/promises";import{existsSync as $Y}from"node:fs";import{dirname as FY}from"node:path";var BY,rs,ZM=p(()=>{"use strict";op();tp();BY=5*1024*1024,rs=class{workspace;maxReadBytes;constructor(e){this.workspace=e.workspace,this.maxReadBytes=e.maxReadBytes??BY}async readFile(e){let o=this.workspace.resolveInside(e),{content:n,truncated:r,totalBytes:s,binary:i}=await Ea(o,this.maxReadBytes);return i?JM(e,s):r?`${n}
455
455
  [arquivo truncado: lidos ${this.maxReadBytes} de ${s} bytes]`:n}async readFileMeta(e){let o=this.workspace.resolveInside(e),{content:n,truncated:r,binary:s}=await Ea(o,this.maxReadBytes);return s||r?{content:n,complete:!1}:{content:n,complete:!0}}async writeFile(e,o){let n=this.workspace.resolveInside(e);await DY(FY(n),{recursive:!0}),await NY(n,o,"utf8")}async exists(e){try{let o=this.workspace.resolveInside(e);return $Y(o)}catch{return!1}}}});import{spawn as UY}from"node:child_process";import{StringDecoder as eL}from"node:string_decoder";function Ta(t){return t.length<=oi?t:`${t.slice(0,oi)}
@@ -472,7 +472,7 @@ ${r.text}`).join(`
472
472
 
473
473
  `),n=vm(o);return{...n!==void 0?{instructions:n}:{},sources:e.map(r=>r.filename)}}var ri,AL,Jk=p(()=>{"use strict";D();es();ri="ALUY.md",AL=["ALUY.md","AGENT.md","AGENTS.md","CLAUDE.md"]});import{homedir as NV}from"node:os";import{join as Qk,basename as DV}from"node:path";import{openSync as $V,writeSync as FV,closeSync as EL,mkdirSync as BV,renameSync as UV,unlinkSync as jV,constants as Zk}from"node:fs";function GV(t,e){if(t===void 0||t.trim()==="")return e;let o=DV(t.trim());return o=o.replace(/[-/\\]/g,""),o===""||o==="."||o===".."?e:(/\.md$/i.test(o)||(o+=".md"),o)}function zV(t){return t.toISOString().replace(/[:.]/g,"-").replace(/-\d{3}Z$/,"Z")}var HV,qV,TL,WV,yd,_L=p(()=>{"use strict";HV=448,qV=384,TL="exports",WV=(t,e,o)=>FV(t,e,o,e.length-o);yd=class{base;now;writeChunk;constructor(e={}){this.base=Qk(e.baseDir??Qk(NV(),".aluy"),TL),this.now=e.now??(()=>new Date),this.writeChunk=e.writeChunk??WV}get dir(){return this.base}write(e,o={}){let n=`${(o.sessionId??"sessao").slice(0,40)}-${zV(this.now())}.md`,r=GV(o.fileName,n),s=Qk(this.base,r),i=`${s}.${process.pid}.tmp`,a;try{BV(this.base,{recursive:!0,mode:HV}),a=$V(i,Zk.O_CREAT|Zk.O_EXCL|Zk.O_WRONLY,qV);let c=Buffer.from(e,"utf8"),l=0;for(;l<c.length;){let d=this.writeChunk(a,c,l);if(d<=0)throw new Error(`escrita parou em ${l}/${c.length} bytes (writeSync devolveu ${d})`);l+=d}return EL(a),a=void 0,UV(i,s),{ok:!0,path:s}}catch(c){if(a!==void 0)try{EL(a)}catch{}try{jV(i)}catch{}return{ok:!1,error:`falha ao exportar: ${String(c)}`}}}}});function wt(t){return typeof t=="string"}function RL(t){return typeof t=="number"&&Number.isInteger(t)&&t>=0}function YV(t){return Array.isArray(t)&&t.every(e=>typeof e=="string")}function VV(t){return t==="ok"||t==="warn"||t==="fail"?t:"warn"}function XV(t){if(typeof t!="object"||t===null)return null;let e=t;return!wt(e.id)||!wt(e.label)?null:{id:e.id,label:e.label,status:VV(e.status),...wt(e.detail)?{detail:e.detail}:{},...wt(e.fix)?{fix:e.fix}:{}}}function CL(t){if(typeof t!="object"||t===null)return null;let e=t,o=e.kind;if(typeof o!="string"||!KV.has(o))return null;switch(o){case"you":return wt(e.text)?{kind:"you",text:e.text}:null;case"aluy":return wt(e.text)?{kind:"aluy",text:e.text,streaming:!1}:null;case"tool":{if(!wt(e.verb)||!wt(e.target)||!wt(e.result))return null;let n=e.status==="ok"||e.status==="err"?e.status:"err";return{kind:"tool",verb:e.verb,target:e.target,result:e.result,status:n,...wt(e.output)?{output:e.output}:{},...wt(e.verbGerund)?{verbGerund:e.verbGerund}:{},...RL(e.added)?{added:e.added}:{},...RL(e.removed)?{removed:e.removed}:{}}}case"deny":return wt(e.verb)&&wt(e.exact)?{kind:"deny",verb:e.verb,exact:e.exact}:null;case"bang":{if(!wt(e.command))return null;let n=e.status==="ok"||e.status==="err"||e.status==="blocked"?e.status:"err";return{kind:"bang",command:e.command,status:n,...wt(e.output)?{output:e.output}:{}}}case"broker-error":return wt(e.message)?{kind:"broker-error",message:e.message,...typeof e.status=="number"?{status:e.status}:{}}:null;case"note":return wt(e.title)&&YV(e.lines)?{kind:"note",title:e.title,lines:e.lines}:null;case"inject":return wt(e.text)?{kind:"inject",text:e.text}:null;case"doctor":{if(!Array.isArray(e.checks))return null;let n=e.checks.map(XV).filter(r=>r!==null);return n.length===0?null:{kind:"doctor",checks:n,...wt(e.summary)?{summary:e.summary}:{}}}default:return null}}function lp(t){if(!Array.isArray(t))return[];let e=[];for(let o of t){let n=CL(o);n&&e.push(n)}return e}function si(t){let e=[];for(let o of t)switch(o.kind){case"you":e.push({role:"goal",text:o.text});break;case"aluy":o.text.trim()!==""&&e.push({role:"model",text:o.text});break;case"tool":{let n=[`${o.verb} ${o.target} \u2192 ${o.result||o.status}`];o.output&&n.push(o.output),e.push({role:"observation",toolName:ex,text:n.join(`
474
474
  `)});break}case"bang":{let n=[`! ${o.command} (${o.status})`];o.output&&n.push(o.output),e.push({role:"observation",toolName:ex,text:n.join(`
475
- `)});break}case"broker-error":e.push({role:"observation",toolName:ex,text:`(erro de broker anterior: ${o.message})`});break;case"note":case"deny":case"subagents":case"doctor":case"inject":break}return e}var KV,ex,tx=p(()=>{"use strict";KV=new Set(["you","aluy","tool","deny","bang","broker-error","note","inject","doctor"]);ex="sess\xE3o-anterior"});function ZV(t){return t.kind==="tool"&&QV.has(t.verb)}function OL(t){let e=!1,o=t.map(n=>{if(n.kind==="tool"&&ZV(n)){let r=Ye(n.result),s=n.output!==void 0?Ye(n.output):void 0,i=n.liveOutput!==void 0?Ye(n.liveOutput):void 0;return r===n.result&&s===n.output&&i===n.liveOutput?n:(e=!0,{...n,result:r,...s!==void 0?{output:s}:{},...i!==void 0?{liveOutput:i}:{}})}if(n.kind==="bang"){let r=to(n.command);return r===n.command?n:(e=!0,{...n,command:r})}if(n.kind==="tool"&&JV.has(n.verb)){let r=to(n.target);return r===n.target?n:(e=!0,{...n,target:r})}return n});return e?o:t}var JV,QV,ML=p(()=>{"use strict";D();JV=new Set(["bash","run_command"]),QV=new Set(["read","grep","attach","headroom_retrieve"])});import{homedir as eX}from"node:os";import{join as ox}from"node:path";import{randomBytes as tX}from"node:crypto";import{openSync as oX,writeSync as nX,closeSync as LL,readFileSync as rX,readdirSync as PL,mkdirSync as sX,renameSync as iX,unlinkSync as IL,statSync as aX,existsSync as ufe,constants as nx}from"node:fs";function hX(t,e){let o=[...t];return o.length>e?o.slice(0,e).join(""):t}function up(t){if(typeof t!="string")return;let e="";for(let n of t){let r=n.codePointAt(0)??0;e+=r<32||r===127?" ":n}let o=e.replace(/\s+/g," ").trim();if(o!=="")return hX(o,pX)}function gX(t){for(let e of t)if(e.kind==="you"){let o=e.text.replace(/\s+/g," ").trim();if(o==="")return;let n=[...o];return n.length>60?n.slice(0,57).join("")+"\u2026":o}}var cX,lX,NL,DL,dX,uX,rx,mX,fX,dp,pX,bd,$L=p(()=>{"use strict";tx();ML();cX=448,lX=384,NL="sessions",DL=1,dX=720*60*60*1e3,uX=50,rx=8*1024*1024,mX=rx*8,fX=Math.floor(rx*.9),dp=/^[A-Za-z0-9_-]{1,128}$/,pX=64;bd=class{base;dir;now;createdAtCache=new Map;constructor(e={}){this.base=e.baseDir??ox(eX(),".aluy"),this.dir=ox(this.base,NL),this.now=e.now??(()=>Date.now())}get sessionsDir(){return this.dir}pathFor(e){return ox(this.dir,`${e}.json`)}save(e){if(!dp.test(e.id))return!1;try{let o=this.now(),n=this.resolveCreatedAt(e.id,o),r=e.tier==="custom"&&typeof e.model=="string"&&e.model.trim()!=="",s=r&&typeof e.provider=="string"&&e.provider.trim()!=="",i=up(e.label),a=i!==void 0?up(e.labelColor):void 0,c={id:e.id,version:DL,createdAt:n,updatedAt:o,cwd:e.cwd,tier:e.tier,...r?{model:e.model.trim()}:{},...s?{provider:e.provider.trim()}:{},...i!==void 0?{label:i}:{},...a!==void 0?{labelColor:a}:{}},l=this.fitBlocks(c,OL(lp(e.blocks))),d={...c,blocks:l};return this.writeAtomic(d),!0}catch{return!1}}resolveCreatedAt(e,o){let n=this.createdAtCache.get(e);if(n!==void 0)return n;let r=this.load(e)?.createdAt??o;return this.createdAtCache.set(e,r),r}load(e){if(!dp.test(e))return null;let o=this.pathFor(e),n,r=!1;try{let a=aX(o);if(a.size>mX)return null;r=a.size>rx,n=rX(o,"utf8")}catch{return null}let s;try{s=JSON.parse(n)}catch{return null}let i=this.sanitizeRecord(s);if(i&&r){let{blocks:a,...c}=i,l=this.fitBlocks(c,a),d=a.length-l.length,m={kind:"note",title:"sess\xE3o grande \u2014 contexto antigo omitido no resume",lines:[`Esta sess\xE3o era grande demais p/ recarregar inteira; ${d} bloco(s) antigo(s) foram omitidos e a parte recente foi preservada.`,"O contexto restante ser\xE1 resumido automaticamente na pr\xF3xima intera\xE7\xE3o."]};i={...i,blocks:d>0?[m,...l]:l}}return i&&this.createdAtCache.set(i.id,i.createdAt),i}list(){let e;try{e=PL(this.dir)}catch{return[]}let o=[];for(let n of e){if(!n.endsWith(".json"))continue;let r=n.slice(0,-5),s=this.load(r);s&&o.push({id:s.id,createdAt:s.createdAt,updatedAt:s.updatedAt,cwd:s.cwd,tier:s.tier,...s.model!==void 0?{model:s.model}:{},...s.provider!==void 0?{provider:s.provider}:{},...s.label!==void 0?{label:s.label}:{},...s.labelColor!==void 0?{labelColor:s.labelColor}:{},blockCount:s.blocks.length,title:gX(s.blocks)})}return o.sort((n,r)=>r.updatedAt-n.updatedAt),o}latestForCwd(e){let o;try{o=PL(this.dir)}catch{return null}let n=null;for(let r of o){if(!r.endsWith(".json"))continue;let s=r.slice(0,-5),i=this.load(s);!i||i.cwd!==e||(n===null||i.updatedAt>n.updatedAt)&&(n=i)}return n}remove(e){if(dp.test(e)){this.createdAtCache.delete(e);try{IL(this.pathFor(e))}catch{}}}gc(e={}){let o=e.maxAgeMs??dX,n=e.maxCount??uX,r=this.list(),s=this.now()-o;r.forEach((i,a)=>{(i.updatedAt<s||a>=n)&&this.remove(i.id)})}sanitizeRecord(e){if(typeof e!="object"||e===null)return null;let o=e;if(typeof o.id!="string"||!dp.test(o.id)||!Array.isArray(o.blocks))return null;let n=typeof o.createdAt=="number"&&o.createdAt>=0?o.createdAt:0,r=typeof o.updatedAt=="number"&&o.updatedAt>=0?o.updatedAt:n,s=typeof o.cwd=="string"?o.cwd:"",i=typeof o.tier=="string"&&o.tier.trim()!==""?o.tier:"",a=typeof o.version=="number"?o.version:0,c=i==="custom"&&typeof o.model=="string"&&o.model.trim()!==""?o.model.trim():void 0,l=c!==void 0&&typeof o.provider=="string"&&o.provider.trim()!==""?o.provider.trim():void 0,d=up(o.label),m=d!==void 0?up(o.labelColor):void 0;return{id:o.id,version:a,createdAt:n,updatedAt:r,cwd:s,tier:i,...c!==void 0?{model:c}:{},...l!==void 0?{provider:l}:{},...d!==void 0?{label:d}:{},...m!==void 0?{labelColor:m}:{},blocks:lp(o.blocks)}}fitBlocks(e,o){let n=i=>Buffer.byteLength(JSON.stringify({...e,blocks:i})+`
475
+ `)});break}case"broker-error":e.push({role:"observation",toolName:ex,text:`(erro de broker anterior: ${o.message})`});break;case"note":case"deny":case"subagents":case"doctor":case"inject":break}return e}var KV,ex,tx=p(()=>{"use strict";KV=new Set(["you","aluy","tool","deny","bang","broker-error","note","inject","doctor"]);ex="sess\xE3o-anterior"});function ZV(t){return t.kind==="tool"&&QV.has(t.verb)}function OL(t){let e=!1,o=t.map(n=>{if(n.kind==="tool"&&ZV(n)){let r=Ye(n.result),s=n.output!==void 0?Ye(n.output):void 0,i=n.liveOutput!==void 0?Ye(n.liveOutput):void 0;return r===n.result&&s===n.output&&i===n.liveOutput?n:(e=!0,{...n,result:r,...s!==void 0?{output:s}:{},...i!==void 0?{liveOutput:i}:{}})}if(n.kind==="bang"){let r=to(n.command);return r===n.command?n:(e=!0,{...n,command:r})}if(n.kind==="tool"&&JV.has(n.verb)){let r=to(n.target);return r===n.target?n:(e=!0,{...n,target:r})}return n});return e?o:t}var JV,QV,ML=p(()=>{"use strict";D();JV=new Set(["bash","run_command"]),QV=new Set(["read","grep","attach","headroom_retrieve"])});import{homedir as eX}from"node:os";import{join as ox}from"node:path";import{randomBytes as tX}from"node:crypto";import{openSync as oX,writeSync as nX,closeSync as LL,readFileSync as rX,readdirSync as PL,mkdirSync as sX,renameSync as iX,unlinkSync as IL,statSync as aX,existsSync as ffe,constants as nx}from"node:fs";function hX(t,e){let o=[...t];return o.length>e?o.slice(0,e).join(""):t}function up(t){if(typeof t!="string")return;let e="";for(let n of t){let r=n.codePointAt(0)??0;e+=r<32||r===127?" ":n}let o=e.replace(/\s+/g," ").trim();if(o!=="")return hX(o,pX)}function gX(t){for(let e of t)if(e.kind==="you"){let o=e.text.replace(/\s+/g," ").trim();if(o==="")return;let n=[...o];return n.length>60?n.slice(0,57).join("")+"\u2026":o}}var cX,lX,NL,DL,dX,uX,rx,mX,fX,dp,pX,bd,$L=p(()=>{"use strict";tx();ML();cX=448,lX=384,NL="sessions",DL=1,dX=720*60*60*1e3,uX=50,rx=8*1024*1024,mX=rx*8,fX=Math.floor(rx*.9),dp=/^[A-Za-z0-9_-]{1,128}$/,pX=64;bd=class{base;dir;now;createdAtCache=new Map;constructor(e={}){this.base=e.baseDir??ox(eX(),".aluy"),this.dir=ox(this.base,NL),this.now=e.now??(()=>Date.now())}get sessionsDir(){return this.dir}pathFor(e){return ox(this.dir,`${e}.json`)}save(e){if(!dp.test(e.id))return!1;try{let o=this.now(),n=this.resolveCreatedAt(e.id,o),r=e.tier==="custom"&&typeof e.model=="string"&&e.model.trim()!=="",s=r&&typeof e.provider=="string"&&e.provider.trim()!=="",i=up(e.label),a=i!==void 0?up(e.labelColor):void 0,c={id:e.id,version:DL,createdAt:n,updatedAt:o,cwd:e.cwd,tier:e.tier,...r?{model:e.model.trim()}:{},...s?{provider:e.provider.trim()}:{},...i!==void 0?{label:i}:{},...a!==void 0?{labelColor:a}:{}},l=this.fitBlocks(c,OL(lp(e.blocks))),d={...c,blocks:l};return this.writeAtomic(d),!0}catch{return!1}}resolveCreatedAt(e,o){let n=this.createdAtCache.get(e);if(n!==void 0)return n;let r=this.load(e)?.createdAt??o;return this.createdAtCache.set(e,r),r}load(e){if(!dp.test(e))return null;let o=this.pathFor(e),n,r=!1;try{let a=aX(o);if(a.size>mX)return null;r=a.size>rx,n=rX(o,"utf8")}catch{return null}let s;try{s=JSON.parse(n)}catch{return null}let i=this.sanitizeRecord(s);if(i&&r){let{blocks:a,...c}=i,l=this.fitBlocks(c,a),d=a.length-l.length,m={kind:"note",title:"sess\xE3o grande \u2014 contexto antigo omitido no resume",lines:[`Esta sess\xE3o era grande demais p/ recarregar inteira; ${d} bloco(s) antigo(s) foram omitidos e a parte recente foi preservada.`,"O contexto restante ser\xE1 resumido automaticamente na pr\xF3xima intera\xE7\xE3o."]};i={...i,blocks:d>0?[m,...l]:l}}return i&&this.createdAtCache.set(i.id,i.createdAt),i}list(){let e;try{e=PL(this.dir)}catch{return[]}let o=[];for(let n of e){if(!n.endsWith(".json"))continue;let r=n.slice(0,-5),s=this.load(r);s&&o.push({id:s.id,createdAt:s.createdAt,updatedAt:s.updatedAt,cwd:s.cwd,tier:s.tier,...s.model!==void 0?{model:s.model}:{},...s.provider!==void 0?{provider:s.provider}:{},...s.label!==void 0?{label:s.label}:{},...s.labelColor!==void 0?{labelColor:s.labelColor}:{},blockCount:s.blocks.length,title:gX(s.blocks)})}return o.sort((n,r)=>r.updatedAt-n.updatedAt),o}latestForCwd(e){let o;try{o=PL(this.dir)}catch{return null}let n=null;for(let r of o){if(!r.endsWith(".json"))continue;let s=r.slice(0,-5),i=this.load(s);!i||i.cwd!==e||(n===null||i.updatedAt>n.updatedAt)&&(n=i)}return n}remove(e){if(dp.test(e)){this.createdAtCache.delete(e);try{IL(this.pathFor(e))}catch{}}}gc(e={}){let o=e.maxAgeMs??dX,n=e.maxCount??uX,r=this.list(),s=this.now()-o;r.forEach((i,a)=>{(i.updatedAt<s||a>=n)&&this.remove(i.id)})}sanitizeRecord(e){if(typeof e!="object"||e===null)return null;let o=e;if(typeof o.id!="string"||!dp.test(o.id)||!Array.isArray(o.blocks))return null;let n=typeof o.createdAt=="number"&&o.createdAt>=0?o.createdAt:0,r=typeof o.updatedAt=="number"&&o.updatedAt>=0?o.updatedAt:n,s=typeof o.cwd=="string"?o.cwd:"",i=typeof o.tier=="string"&&o.tier.trim()!==""?o.tier:"",a=typeof o.version=="number"?o.version:0,c=i==="custom"&&typeof o.model=="string"&&o.model.trim()!==""?o.model.trim():void 0,l=c!==void 0&&typeof o.provider=="string"&&o.provider.trim()!==""?o.provider.trim():void 0,d=up(o.label),m=d!==void 0?up(o.labelColor):void 0;return{id:o.id,version:a,createdAt:n,updatedAt:r,cwd:s,tier:i,...c!==void 0?{model:c}:{},...l!==void 0?{provider:l}:{},...d!==void 0?{label:d}:{},...m!==void 0?{labelColor:m}:{},blocks:lp(o.blocks)}}fitBlocks(e,o){let n=i=>Buffer.byteLength(JSON.stringify({...e,blocks:i})+`
476
476
  `,"utf8")<=fX;if(n(o))return o;let r=1,s=o.length;for(;r<s;){let i=r+s>>1;n(o.slice(i))?s=i:r=i+1}return o.slice(r)}writeAtomic(e){sX(this.dir,{recursive:!0,mode:cX});let o=this.pathFor(e.id),n=`${o}.${process.pid}.${tX(6).toString("hex")}.tmp`,r=JSON.stringify(e)+`
477
477
  `,s;try{s=oX(n,nx.O_CREAT|nx.O_EXCL|nx.O_WRONLY,lX),nX(s,r),LL(s),s=void 0,iX(n,o)}catch(i){if(s!==void 0)try{LL(s)}catch{}try{IL(n)}catch{}throw i}}}});import{homedir as yX}from"node:os";import{join as sx}from"node:path";import{readdirSync as bX,readFileSync as vX,mkdirSync as kX,statSync as xX}from"node:fs";var SX,FL,wX,AX,vd,BL=p(()=>{"use strict";D();SX=448,FL="commands",wX=64*1024,AX=256,vd=class{dir;constructor(e={}){let o=e.baseDir??sx(yX(),".aluy");this.dir=sx(o,FL)}get commandsDir(){return this.dir}ensureDir(){try{kX(this.dir,{mode:SX,recursive:!0})}catch{}}load(){let e;try{e=bX(this.dir,{withFileTypes:!0})}catch{return[]}let o=e.filter(s=>s.isFile()&&s.name.toLowerCase().endsWith(".md")).map(s=>s.name).sort((s,i)=>s.localeCompare(i)),n=new Set,r=[];for(let s of o){if(r.length>=AX)break;let i=this.readOne(s);i&&(n.has(i.name)||(n.add(i.name),r.push(i)))}return r}readOne(e){let o=sx(this.dir,e);try{let n=xX(o);if(!n.isFile()||n.size>wX)return null;let r=vX(o,"utf8");return kl(e,r)}catch{return null}}}});import{join as EX}from"node:path";import{readdirSync as TX,readFileSync as _X,statSync as RX}from"node:fs";function ix(t,e){let o=new Map;for(let n of t)o.set(n.name,n);for(let n of e)o.set(n.name,n);return[...o.values()]}var UL,CX,OX,kd,jL=p(()=>{"use strict";D();es();UL=[".claude/commands",".aluy/commands"],CX=64*1024,OX=256,kd=class{workspace;constructor(e){this.workspace=e.workspace}load(){let e=new Set,o=[];for(let n of UL){let r;try{r=this.workspace.resolveInside(n)}catch{continue}let s;try{s=TX(r,{withFileTypes:!0})}catch{continue}let i=s.filter(a=>a.isFile()&&a.name.toLowerCase().endsWith(".md")).map(a=>a.name).sort((a,c)=>a.localeCompare(c));for(let a of i){if(o.length>=OX)break;let c=this.readOne(n,r,a);c&&(e.has(c.name)||(e.add(c.name),o.push(c)))}}return o}readOne(e,o,n){let r=`${e}/${n}`;if(xo(r).kind!=="allow")return null;let s=EX(o,n);try{this.workspace.resolveInside(r);let i=RX(s);if(!i.isFile()||i.size>CX)return null;let a=_X(s,"utf8");return kl(n,a)}catch{return null}}}});import{join as MX}from"node:path";import{readdirSync as LX,readFileSync as PX,statSync as IX}from"node:fs";var HL,NX,DX,ii,ax=p(()=>{"use strict";D();es();HL=[".claude/agents",".aluy/agents"],NX=64*1024,DX=256,ii=class{workspace;constructor(e){this.workspace=e.workspace}load(){let e=new Set,o=[],n=[];for(let r of HL){let s;try{s=this.workspace.resolveInside(r)}catch{continue}let i;try{i=LX(s,{withFileTypes:!0})}catch{continue}let a=i.filter(c=>c.isFile()&&c.name.toLowerCase().endsWith(".md")).map(c=>c.name).sort((c,l)=>c.localeCompare(l));for(let c of a){if(o.length>=DX)break;let l=this.readOne(r,s,c);if(l!==null){if(ll(l)){n.push(l);continue}e.has(l.name)||(e.add(l.name),o.push(l))}}}return{profiles:o,errors:n}}readOne(e,o,n){let r=`${e}/${n}`;if(xo(r).kind!=="allow")return null;let s=MX(o,n);try{this.workspace.resolveInside(r);let i=IX(s);if(!i.isFile()||i.size>NX)return null;let a=PX(s,"utf8");return dl(n,a,"project")}catch{return null}}}});var lx={};yt(lx,{UserWorkflowsLoader:()=>ss,WORKFLOWS_DIRNAME:()=>Ca});import{homedir as $X}from"node:os";import{join as cx}from"node:path";import{readdirSync as FX,readFileSync as BX,mkdirSync as UX,statSync as jX}from"node:fs";var HX,Ca,qX,WX,ss,xd=p(()=>{"use strict";D();HX=448,Ca="workflows",qX=64*1024,WX=256,ss=class{dir;constructor(e={}){let o=e.baseDir??cx($X(),".aluy");this.dir=cx(o,Ca)}get workflowsDir(){return this.dir}ensureDir(){try{UX(this.dir,{mode:HX,recursive:!0})}catch{}}load(){let e;try{e=FX(this.dir,{withFileTypes:!0})}catch{return{workflows:[],errors:[]}}let o=e.filter(i=>i.isFile()&&i.name.toLowerCase().endsWith(".md")).map(i=>i.name).sort((i,a)=>i.localeCompare(a)),n=new Set,r=[],s=[];for(let i of o){if(r.length>=WX)break;let a=this.readOne(i);if(a!==null){if(gl(a)){s.push(a);continue}n.has(a.name)||(n.add(a.name),r.push(a))}}return{workflows:r,errors:s}}readOne(e){let o=cx(this.dir,e);try{let n=jX(o);if(!n.isFile()||n.size>qX)return null;let r=BX(o,"utf8");return yl(e,r,"global")}catch{return null}}}});var ux={};yt(ux,{PROJECT_WORKFLOWS_DIRNAMES:()=>dx,ProjectWorkflowsLoader:()=>is});import{join as GX}from"node:path";import{readdirSync as zX,readFileSync as KX,statSync as YX}from"node:fs";var dx,VX,XX,is,Sd=p(()=>{"use strict";D();es();dx=[".claude/workflows",".aluy/workflows"],VX=64*1024,XX=256,is=class{workspace;constructor(e){this.workspace=e.workspace}load(){let e=new Set,o=[],n=[];for(let r of dx){let s;try{s=this.workspace.resolveInside(r)}catch{continue}let i;try{i=zX(s,{withFileTypes:!0})}catch{continue}let a=i.filter(c=>c.isFile()&&c.name.toLowerCase().endsWith(".md")).map(c=>c.name).sort((c,l)=>c.localeCompare(l));for(let c of a){if(o.length>=XX)break;let l=this.readOne(r,s,c);if(l!==null){if(gl(l)){n.push(l);continue}e.has(l.name)||(e.add(l.name),o.push(l))}}}return{workflows:o,errors:n}}readOne(e,o,n){let r=`${e}/${n}`;if(xo(r).kind!=="allow")return null;let s=GX(o,n);try{this.workspace.resolveInside(r);let i=YX(s);if(!i.isFile()||i.size>VX)return null;let a=KX(s,"utf8");return yl(n,a,"project")}catch{return null}}}});import{homedir as JX}from"node:os";import{join as mx}from"node:path";import{readdirSync as QX,readFileSync as ZX,mkdirSync as e3,statSync as t3}from"node:fs";var o3,wd,Ad,n3,r3,ai,mp=p(()=>{"use strict";D();o3=448,wd="skills",Ad="SKILL.md",n3=256*1024,r3=256,ai=class{dir;constructor(e={}){let o=e.baseDir??mx(JX(),".aluy");this.dir=mx(o,wd)}get skillsDir(){return this.dir}ensureDir(){try{e3(this.dir,{mode:o3,recursive:!0})}catch{}}load(){let e;try{e=QX(this.dir,{withFileTypes:!0})}catch{return{skills:[],errors:[]}}let o=e.filter(i=>i.isDirectory()).map(i=>i.name).sort((i,a)=>i.localeCompare(a)),n=new Set,r=[],s=[];for(let i of o){if(r.length>=r3)break;let a=this.readOne(i);if(a!==null){if(fl(a)){s.push(a);continue}n.has(a.name)||(n.add(a.name),r.push(a))}}return{skills:r,errors:s}}readOne(e){let o=mx(this.dir,e,Ad);try{let n=t3(o);if(!n.isFile()||n.size>n3)return null;let r=ZX(o,"utf8");return pl(e,r,"global")}catch{return null}}}});import{join as s3}from"node:path";import{readdirSync as i3,readFileSync as a3,statSync as c3}from"node:fs";var qL,l3,d3,ci,fx=p(()=>{"use strict";D();mp();qL=[".claude/skills",".aluy/skills"],l3=256*1024,d3=256,ci=class{workspace;constructor(e){this.workspace=e.workspace}load(){let e=new Set,o=[],n=[];for(let r of qL){let s;try{s=this.workspace.resolveInside(r)}catch{continue}let i;try{i=i3(s,{withFileTypes:!0})}catch{continue}let a=i.filter(c=>c.isDirectory()).map(c=>c.name).sort((c,l)=>c.localeCompare(l));for(let c of a){if(o.length>=d3)break;let l=this.readOne(r,s,c);if(l!==null){if(fl(l)){n.push(l);continue}e.has(l.name)||(e.add(l.name),o.push(l))}}}return{skills:o,errors:n}}readOne(e,o,n){let r=`${e}/${n}/${Ad}`,s=s3(o,n,Ad);try{this.workspace.resolveInside(r);let i=c3(s);if(!i.isFile()||i.size>l3)return null;let a=a3(s,"utf8");return pl(n,a,"project")}catch{return null}}}});import{homedir as u3}from"node:os";import{join as px}from"node:path";import{readFileSync as m3,statSync as f3}from"node:fs";var WL,p3,h3,Ed,GL=p(()=>{"use strict";D();WL="hooks.json",p3="settings.json",h3=256*1024,Ed=class{file;claudeProjectFile;constructor(e={}){let o=e.baseDir??px(u3(),".aluy");this.file=px(o,WL),e.workspaceRoot!==void 0&&(this.claudeProjectFile=px(e.workspaceRoot,".claude",p3))}get configPath(){return this.file}load(){let e=Db(this.readJson(this.file));if(this.claudeProjectFile===void 0)return e;let o=Fb(this.readJson(this.claudeProjectFile));return Bb(e,o)}readJson(e){let o;try{let n=f3(e);if(!n.isFile()||n.size>h3)return;o=m3(e,"utf8")}catch{return}try{return JSON.parse(o)}catch{return}}}});var Td=p(()=>{"use strict";Sa();ZM();op();oL();iL();dL();sp();os();bL();hk();Tk();xL();SL();Vk();Jk();hn();_L();$L();tx();BL();jL();Uf();ax();xd();Sd();mp();fx();GL()});function _d(t,e){let o=t.toLowerCase(),n=e.toLowerCase();if(o==="")return{score:0,matched:[]};let r=[],s=0,i=0,a=-1,c=e.lastIndexOf("/")+1;for(let d=0;d<o.length;d++){let m=o[d],u=n.indexOf(m,s);if(u===-1)return null;r.push(u),a>=0&&u===a+1?i+=5:i+=1,u>=c&&(i+=2);let h=u>0?e[u-1]:"/";(h==="/"||h==="-"||h==="_"||h===".")&&(i+=3),a=u,s=u+1}let l=(r[r.length-1]??0)-(r[0]??0);return i-=l*.1,i-=e.length*.01,{score:i,matched:r}}function hx(t,e){let o=t.trim();if(o==="")return e.map(r=>({path:r,score:0,matched:[]}));let n=[];for(let r of e){let s=_d(o,r);s&&n.push({path:r,score:s.score,matched:s.matched})}return n.sort((r,s)=>s.score-r.score||r.path.length-s.path.length||r.path.localeCompare(s.path)),n}var gx=p(()=>{"use strict"});function y3(t){return t.replace(/\\ /g," ")}function b3(t){return t.includes("/")?!0:/\.[A-Za-z0-9]+$/.test(t)}function v3(t){let e=t.replace(/\.+$/,"");return{token:e,trimmed:t.length-e.length}}function li(t){let e=[];for(let o of t.matchAll(g3)){let n=o[1],r=o[4],s=o[2]??o[3]??r,{token:i,trimmed:a}=r!==void 0?v3(s):{token:s,trimmed:0},c=y3(i);if(!b3(c))continue;let l=(o.index??0)+o[0].indexOf(n);e.push({path:c,start:l,end:l+n.length-a})}return e}function yx(t,e){if(e.length===0)return t;let o=t;for(let n of[...e].sort((r,s)=>s.start-r.start))o=o.slice(0,n.start)+o.slice(n.end);return o.replace(/\s{2,}/g," ").trim()}var g3,zL=p(()=>{"use strict";g3=/(?:^|\s)(@(?:"([^"]+)"|'([^']+)'|((?:[\p{L}\p{N}._/-]|\\ )+)))/gu});function fp(t){let e=t.lastIndexOf("@");if(e<0)return null;let o=e>0?t[e-1]:" ";if(o!==" "&&o!==`
478
478
  `&&o!==" ")return null;let n=t.slice(e+1);return/\s/.test(n)?null:{at:e,query:n}}function bx(t){let e=fp(t);return e?t.slice(0,e.at).replace(/\s+$/,""):t}var KL=p(()=>{"use strict"});import{relative as k3,sep as x3,isAbsolute as S3}from"node:path";var YL,w3,Rd,VL=p(()=>{"use strict";D();es();tp();YL=16e3,w3=5*1024*1024,Rd=class{workspace;fs;maxChars;sniffBytes;constructor(e){this.workspace=e.workspace,this.fs=e.fs,this.maxChars=e.maxChars??YL,this.sniffBytes=e.sniffBytes??w3}async attach(e,o={}){let n=e,r;try{r=this.workspace.resolveInside(e)}catch{return{kind:"rejected",path:n,reason:"caminho fora do workspace \u2014 recusado (o @ s\xF3 acessa a raiz do projeto)."}}let s=k3(this.workspace.root,r).split(x3).join("/");if(s===""||s.startsWith("..")||S3(s))return{kind:"rejected",path:n,reason:"caminho inv\xE1lido p/ o workspace."};let i=xo(s);if(i.kind==="deny")return{kind:"rejected",path:s,reason:`bloqueado: ${i.why} \u2014 esse tipo de arquivo nunca \xE9 anexado ao contexto.`};if(i.kind==="ask"&&o.confirmSensitive!==!0)return{kind:"rejected",path:s,reason:`sens\xEDvel: ${i.why} \u2014 confirme explicitamente p/ anexar (fora do picker por padr\xE3o).`};try{if(await QM(r,this.sniffBytes))return{kind:"rejected",path:s,reason:"arquivo bin\xE1rio \u2014 n\xE3o anexado (conte\xFAdo n\xE3o \xE9 texto; evita lixo no contexto)."}}catch{}let a;try{a=await this.fs.readFile(s)}catch{return{kind:"rejected",path:s,reason:"n\xE3o foi poss\xEDvel ler o arquivo (sumiu/ileg\xEDvel)."}}let c=!1;return a.length>this.maxChars&&(a=a.slice(0,this.maxChars)+`
@@ -600,17 +600,17 @@ Notas:
600
600
  `).length,m=t.maxRows!==void 0&&d>t.maxRows,u=m?Math.max(1,t.maxRows-1):0,h=m?_N(t.value,s,u):{text:t.value,cursor:s,hiddenAbove:0,hiddenBelow:0};return jn(cS,{flexDirection:"column",children:[jn(cS,{children:[at(CN,{...t.sessionLabel!==void 0?{label:t.sessionLabel}:{},...t.sessionColor!==void 0?{color:t.sessionColor}:{}}),at(P,{name:"prompt",role:"accent"}),at(yi,{children:" "}),a?jn(Yd,{children:[c&&l,at(f,{name:"fgDim",children:n})]}):at(RN,{text:h.text,pos:h.cursor,showCursor:c,active:t.active,cursorGlyph:r}),!t.active&&t.hint&&jn(Yd,{children:[at(yi,{children:" "}),at(f,{name:"fgDim",children:t.hint})]})]}),m&&(h.hiddenAbove>0||h.hiddenBelow>0)&&jn(f,{name:"fgDim",children:[h.hiddenAbove>0?`\u2191${h.hiddenAbove}`:"",h.hiddenAbove>0&&h.hiddenBelow>0?" \xB7 ":"",h.hiddenBelow>0?`\u2193${h.hiddenBelow}`:"",` ${o("composer.moreLines")}`]})]})}var ON=p(()=>{"use strict";ae();mt();Np()});function bi(t,e){if(e<=0)return"";if(Ee(t)<=e)return t;let o=e-1,n="",r=0;for(let s of t){let i=Ee(s);if(r+i>o)break;n+=s,r+=i}return n+"\u2026"}function uS(t,e,o){let n=Math.max(0,e-Ee(t));if(n===0)return t;if(o==="right")return" ".repeat(n)+t;if(o==="center"){let r=Math.floor(n/2);return" ".repeat(r)+t+" ".repeat(n-r)}return t+" ".repeat(n)}function MN(t,e,o,n){let r=[];for(let d=0;d<o;d++){let m=Ee(t[d]??"");for(let u of e)m=Math.max(m,Ee(u[d]??""));r.push(Math.max(lS,m))}if(!n||n<=0)return r;let s=o>0?(o-1)*dS:0,i=Math.max(o*lS,n-s),a=r.reduce((d,m)=>d+m,0);if(a<=i)return r;let c=[...r],l=a*2+10;for(;a>i&&l-- >0;){let d=-1,m=lS;for(let u=0;u<o;u++)c[u]>m&&(m=c[u],d=u);if(d<0)break;c[d]-=1,a-=1}return c}var dS,lS,Dp=p(()=>{"use strict";oo();dS=3,lS=1});import"react";import{Box as $a}from"ink";import{jsx as Hn,jsxs as PN}from"react/jsx-runtime";function LN(t){let e=t.replace(/\s+/g," ").trim();return bi(e,L8)}function $p(t){if(t<=0)return 0;let e=Math.min(t,Xd),o=t>Xd?1:0;return 1+e+o}function mS(t){let{items:e}=t;if(e.length===0)return null;let o=e.slice(0,Xd),n=e.length-o.length;return PN($a,{flexDirection:"column",children:[Hn(f,{name:"depth",children:`\u229F ${e.length} na fila \xB7 enviada(s) ao terminar o turno`}),o.map((r,s)=>Hn($a,{children:Hn(f,{name:"fgDim",children:` \u203A ${LN(r)}`})},s)),n>0&&Hn($a,{children:Hn(f,{name:"fgDim",children:` \u2026+${n} na fila`})})]})}function fS(t){let{items:e}=t;if(e.length===0)return null;let o=e.slice(0,Xd),n=e.length-o.length;return PN($a,{flexDirection:"column",children:[Hn(f,{name:"depth",children:`\u21B3 ${e.length} encaixando\u2026 \xB7 incorporada(s) na pr\xF3xima itera\xE7\xE3o`}),o.map((r,s)=>Hn($a,{children:Hn(f,{name:"fgDim",children:` \u203A ${LN(r)}`})},s)),n>0&&Hn($a,{children:Hn(f,{name:"fgDim",children:` \u2026+${n} encaixando`})})]})}var Xd,L8,IN=p(()=>{"use strict";ae();Dp();Xd=3,L8=48});function NN(t){let e=t.regex,o={},n={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[o]}]};Object.assign(o,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},n]});let r={className:"subst",begin:/\$\(/,end:/\)/,contains:[t.BACKSLASH_ESCAPE]},s=t.inherit(t.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),i={begin:/<<-?\s*(?=\w+)/,starts:{contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,o,r]};r.contains.push(a);let c={match:/\\"/},l={className:"string",begin:/'/,end:/'/},d={match:/\\'/},m={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},t.NUMBER_MODE,o]},u=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],h=t.SHEBANG({binary:`(${u.join("|")})`,relevance:10}),g={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[t.inherit(t.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},b=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],y=["true","false"],w={match:/(\/[a-z._-]+)+/},R=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],A=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],L=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],j=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:b,literal:y,built_in:[...R,...A,"set","shopt",...L,...j]},contains:[h,t.SHEBANG(),g,m,s,i,w,a,c,l,d,o]}}var DN=p(()=>{});function $N(t){let e=t.regex,o=P8(t),n={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",s=/@-?\w[\w]*(-\w+)*/,i="[a-zA-Z-][a-zA-Z0-9_-]*",a=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[o.BLOCK_COMMENT,n,o.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+i,relevance:0},o.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+F8.join("|")+")"},{begin:":(:)?("+B8.join("|")+")"}]},o.CSS_VARIABLE,{className:"attribute",begin:"\\b("+U8.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[o.BLOCK_COMMENT,o.HEXCOLOR,o.IMPORTANT,o.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},o.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:s},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:$8.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,o.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+D8.join("|")+")\\b"}]}}var P8,I8,N8,D8,$8,F8,B8,U8,FN=p(()=>{P8=t=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:t.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:t.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),I8=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],N8=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],D8=[...I8,...N8],$8=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),F8=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),B8=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),U8=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse()});function BN(t){let e=t.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:e.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:e.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}var UN=p(()=>{});function jN(t){let s={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:s,illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"string",variants:[t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[t.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:s,illegal:/["']/}]}]}}var HN=p(()=>{});function KN(t){let e=t.regex,o=(O,{after:se})=>{let de="</"+O[0].slice(1);return O.input.indexOf(de,se)!==-1},n=qN,r={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,i={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(O,se)=>{let de=O[0].length+O.index,ye=O.input[de];if(ye==="<"||ye===","){se.ignoreMatch();return}ye===">"&&(o(O,{after:de})||se.ignoreMatch());let Z,oe=O.input.substring(de);if(Z=oe.match(/^\s*=/)){se.ignoreMatch();return}if((Z=oe.match(/^\s+extends\s+/))&&Z.index===0){se.ignoreMatch();return}}},a={$pattern:qN,keyword:j8,literal:H8,built_in:W8,"variable.language":q8},c="[0-9](_?[0-9])*",l=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",m={className:"number",variants:[{begin:`(\\b(${d})((${l})|\\.)?|(${l}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},u={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"css"}},b={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,u]},R={className:"comment",variants:[t.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]},A=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,h,g,b,y,{match:/\$\d+/},m];u.contains=A.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(A)});let L=[].concat(R,u.contains),j=L.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(L)}]),H={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:j},K={variants:[{match:[/class/,/\s+/,n,/\s+/,/extends/,/\s+/,e.concat(n,"(",e.concat(/\./,n),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}}]},V={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...WN,...GN]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},J={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[H],illegal:/%/},Q={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function G(O){return e.concat("(?!",O.join("|"),")")}let N={match:e.concat(/\b/,G([...zN,"super","import"].map(O=>`${O}\\s*\\(`)),n,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},X={begin:e.concat(/\./,e.lookahead(e.concat(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},Oe={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},H]},Y="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",le={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(Y)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[H]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:j,CLASS_REFERENCE:V},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,h,g,b,y,R,{match:/\$\d+/},m,V,{scope:"attr",match:n+e.lookahead(":"),relevance:0},le,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[R,t.REGEXP_MODE,{className:"function",begin:Y,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:j}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:s},{begin:i.begin,"on:begin":i.isTrulyOpeningTag,end:i.end}],subLanguage:"xml",contains:[{begin:i.begin,end:i.end,skip:!0,contains:["self"]}]}]},J,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+t.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[H,t.inherit(t.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},X,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[H]},N,Q,K,Oe,{match:/\$[(.]/}]}}var qN,j8,H8,WN,GN,zN,q8,W8,YN=p(()=>{qN="[A-Za-z$_][0-9A-Za-z$_]*",j8=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],H8=["true","false","null","undefined","NaN","Infinity"],WN=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],GN=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],zN=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],q8=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],W8=[].concat(zN,WN,GN)});function VN(t){let e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},o={match:/[{}[\],:]/,className:"punctuation",relevance:0},n=["true","false","null"],r={scope:"literal",beginKeywords:n.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:n},contains:[e,o,t.QUOTE_STRING_MODE,r,t.C_NUMBER_MODE,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var XN=p(()=>{});function JN(t){let e=t.regex,o={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},n={begin:"^[-\\*]{3,}",end:"$"},r={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},i={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},a=/[A-Za-z][A-Za-z0-9+.-]*/,c={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,a,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},l={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},d={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},m=t.inherit(l,{contains:[]}),u=t.inherit(d,{contains:[]});l.contains.push(u),d.contains.push(m);let h=[o,c];return[l,d,m,u].forEach(w=>{w.contains=w.contains.concat(h)}),h=h.concat(l,d),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:h},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:h}]}]},o,s,l,d,{className:"quote",begin:"^>\\s+",contains:h,end:"$"},r,n,c,i,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}var QN=p(()=>{});function ZN(t){let e=t.regex,o=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),n=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:n,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},c={className:"meta",begin:/^(>>>|\.\.\.) /},l={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},d={begin:/\{\{/,relevance:0},m={className:"string",contains:[t.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,c,d,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,c,d,l]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[t.BACKSLASH_ESCAPE,d,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,d,l]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},u="[0-9](_?[0-9])*",h=`(\\b(${u}))?\\.(${u})|\\b(${u})\\.`,g=`\\b|${n.join("|")}`,b={className:"number",relevance:0,variants:[{begin:`(\\b(${u})|(${h}))[eE][+-]?(${u})[jJ]?(?=${g})`},{begin:`(${h})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${g})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${g})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${g})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${g})`},{begin:`\\b(${u})[jJ](?=${g})`}]},y={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},w={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",c,b,m,t.HASH_COMMENT_MODE]}]};return l.contains=[m,b,c],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[c,b,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},m,y,t.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,o],scope:{1:"keyword",3:"title.function"},contains:[w]},{variants:[{match:[/\bclass/,/\s+/,o,/\s*/,/\(\s*/,o,/\s*\)/]},{match:[/\bclass/,/\s+/,o]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[b,w,m]}]}}var eD=p(()=>{});function tD(t){let e=t.regex,o=/(r#)?/,n=e.concat(o,t.UNDERSCORE_IDENT_RE),r=e.concat(o,t.IDENT_RE),s={className:"title.function.invoke",relevance:0,begin:e.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,e.lookahead(/\s*\(/))},i="([ui](8|16|32|64|128|size)|f(32|64))?",a=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],c=["true","false","Some","None","Ok","Err"],l=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],d=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:t.IDENT_RE+"!?",type:d,keyword:a,literal:c,built_in:l},illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.COMMENT("/\\*","\\*/",{contains:["self"]}),t.inherit(t.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+i},{begin:"\\b0o([0-7_]+)"+i},{begin:"\\b0x([A-Fa-f0-9_]+)"+i},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+i}],relevance:0},{begin:[/fn/,/\s+/,n],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,n],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,n,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{begin:t.IDENT_RE+"::",keywords:{keyword:"Self",built_in:l,type:d}},{className:"punctuation",begin:"->"},s]}}var oD=p(()=>{});function nD(t){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}var rD=p(()=>{});function sD(t){let e=t.regex,o=t.COMMENT("--","$"),n={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},s=["true","false","unknown"],i=["double precision","large object","with timezone","without timezone"],a=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],c=["add","asc","collation","desc","final","first","last","view"],l=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],d=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],m=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],u=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],h=d,g=[...l,...c].filter(j=>!d.includes(j)),b={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},y={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},w={match:e.concat(/\b/,e.either(...h),/\s*\(/),relevance:0,keywords:{built_in:h}};function R(j){return e.concat(/\b/,e.either(...j.map(H=>H.replace(/\s+/,"\\s+"))),/\b/)}let A={scope:"keyword",match:R(u),relevance:0};function L(j,{exceptions:H,when:K}={}){let V=K;return H=H||[],j.map(I=>I.match(/\|\d+$/)||H.includes(I)?I:V(I)?`${I}|0`:I)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:L(g,{when:j=>j.length<3}),literal:s,type:a,built_in:m},contains:[{scope:"type",match:R(i)},A,w,b,n,r,t.C_NUMBER_MODE,t.C_BLOCK_COMMENT_MODE,o,y]}}var iD=p(()=>{});function G8(t){let e=t.regex,o=(O,{after:se})=>{let de="</"+O[0].slice(1);return O.input.indexOf(de,se)!==-1},n=Fp,r={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,i={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(O,se)=>{let de=O[0].length+O.index,ye=O.input[de];if(ye==="<"||ye===","){se.ignoreMatch();return}ye===">"&&(o(O,{after:de})||se.ignoreMatch());let Z,oe=O.input.substring(de);if(Z=oe.match(/^\s*=/)){se.ignoreMatch();return}if((Z=oe.match(/^\s+extends\s+/))&&Z.index===0){se.ignoreMatch();return}}},a={$pattern:Fp,keyword:aD,literal:cD,built_in:fD,"variable.language":mD},c="[0-9](_?[0-9])*",l=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",m={className:"number",variants:[{begin:`(\\b(${d})((${l})|\\.)?|(${l}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},u={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"css"}},b={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,u]},R={className:"comment",variants:[t.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]},A=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,h,g,b,y,{match:/\$\d+/},m];u.contains=A.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(A)});let L=[].concat(R,u.contains),j=L.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(L)}]),H={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:j},K={variants:[{match:[/class/,/\s+/,n,/\s+/,/extends/,/\s+/,e.concat(n,"(",e.concat(/\./,n),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}}]},V={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...lD,...dD]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},J={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[H],illegal:/%/},Q={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function G(O){return e.concat("(?!",O.join("|"),")")}let N={match:e.concat(/\b/,G([...uD,"super","import"].map(O=>`${O}\\s*\\(`)),n,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},X={begin:e.concat(/\./,e.lookahead(e.concat(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},Oe={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},H]},Y="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",le={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(Y)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[H]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:j,CLASS_REFERENCE:V},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,h,g,b,y,R,{match:/\$\d+/},m,V,{scope:"attr",match:n+e.lookahead(":"),relevance:0},le,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[R,t.REGEXP_MODE,{className:"function",begin:Y,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:j}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:s},{begin:i.begin,"on:begin":i.isTrulyOpeningTag,end:i.end}],subLanguage:"xml",contains:[{begin:i.begin,end:i.end,skip:!0,contains:["self"]}]}]},J,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+t.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[H,t.inherit(t.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},X,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[H]},N,Q,K,Oe,{match:/\$[(.]/}]}}function pD(t){let e=t.regex,o=G8(t),n=Fp,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,t.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},i={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[o.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},c=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],l={$pattern:Fp,keyword:aD.concat(c),literal:cD,built_in:fD.concat(r),"variable.language":mD},d={className:"meta",begin:"@"+n},m=(b,y,w)=>{let R=b.contains.findIndex(A=>A.label===y);if(R===-1)throw new Error("can not find mode to replace");b.contains.splice(R,1,w)};Object.assign(o.keywords,l),o.exports.PARAMS_CONTAINS.push(d);let u=o.contains.find(b=>b.scope==="attr"),h=Object.assign({},u,{match:e.concat(n,e.lookahead(/\s*\?:/))});o.exports.PARAMS_CONTAINS.push([o.exports.CLASS_REFERENCE,u,h]),o.contains=o.contains.concat([d,s,i,h]),m(o,"shebang",t.SHEBANG()),m(o,"use_strict",a);let g=o.contains.find(b=>b.label==="func.def");return g.relevance=0,Object.assign(o,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),o}var Fp,aD,cD,lD,dD,uD,mD,fD,hD=p(()=>{Fp="[A-Za-z$_][0-9A-Za-z$_]*",aD=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],cD=["true","false","null","undefined","NaN","Infinity"],lD=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],dD=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],uD=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],mD=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],fD=[].concat(uD,lD,dD)});function gD(t){let e=t.regex,o=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),n=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},i=t.inherit(s,{begin:/\(/,end:/\)/}),a=t.inherit(t.APOS_STRING_MODE,{className:"string"}),c=t.inherit(t.QUOTE_STRING_MODE,{className:"string"}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:n,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[r]},{begin:/'/,end:/'/,contains:[r]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[s,c,a,i,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[s,i,c,a]}]}]},t.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(/</,e.lookahead(e.concat(o,e.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:o,relevance:0,starts:l}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(o,/>/))),contains:[{className:"name",begin:o,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}var yD=p(()=>{});function bD(t){let e="true false yes no null",o="[\\w#;/?:@&=+$,.~*'()[\\]]+",n={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},s={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},i={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[t.BACKSLASH_ESCAPE,r]},a=t.inherit(i,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),u={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},h={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},g={begin:/\{/,end:/\}/,contains:[h],illegal:"\\n",relevance:0},b={begin:"\\[",end:"\\]",contains:[h],illegal:"\\n",relevance:0},y=[n,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+o},{className:"type",begin:"!<"+o+">"},{className:"type",begin:"!"+o},{className:"type",begin:"!!"+o},{className:"meta",begin:"&"+t.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+t.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},t.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},u,{className:"number",begin:t.C_NUMBER_RE+"\\b",relevance:0},g,b,s,i],w=[...y];return w.pop(),w.push(a),h.contains=w,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:y}}var vD=p(()=>{});import{createLowlight as z8}from"lowlight";function Fa(t){if(!t)return null;let e=t.trim().toLowerCase();if(e==="")return null;let o=K8[e]??e;return kD.registered(o)?o:null}function Y8(t){if(!t)return"fg";let e=t.replace(/^hljs-/,"");switch(e.split(/[.\s]/)[0]??e){case"keyword":case"built_in":case"literal":case"operator":return"accent";case"string":case"regexp":case"char":case"subst":case"addition":return"success";case"comment":case"quote":case"meta":return"fgDim";case"number":case"symbol":case"bullet":case"link":return"accentDim";case"title":case"function":case"class":case"name":case"tag":case"attr":case"attribute":case"type":case"params":case"property":case"selector":case"section":case"variable":return"depth";case"deletion":return"danger";default:return"fg"}}function V8(t){let e=t.properties?.className;if(Array.isArray(e))return e[e.length-1];if(typeof e=="string")return e}function xD(t,e,o){if(t.type==="text"){let i=t.value;i!==""&&o.push({text:i,role:e});return}let n=t,r=n.type==="element"?Y8(V8(n)):e,s=n.type==="element"&&r!=="fg"?r:e;for(let i of n.children??[])xD(i,s,o)}function X8(t){let e=[];for(let o of t){let n=e[e.length-1];n&&n.role===o.role?e[e.length-1]={text:n.text+o.text,role:o.role}:e.push(o)}return e}function Jd(t,e){if(t==="")return[];let o=Fa(e);if(!o)return[{text:t,role:"fg"}];try{let n=kD.highlight(o,t),r=[];xD(n,"fg",r);let s=X8(r);return s.length>0?s:[{text:t,role:"fg"}]}catch{return[{text:t,role:"fg"}]}}var kD,K8,pS=p(()=>{"use strict";DN();FN();UN();HN();YN();XN();QN();eD();oD();rD();iD();hD();yD();vD();kD=z8({bash:NN,css:$N,diff:BN,go:jN,javascript:KN,json:VN,markdown:JN,python:ZN,rust:tD,shell:nD,sql:sD,typescript:pD,xml:gD,yaml:bD}),K8={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",mjs:"javascript",cjs:"javascript",sh:"bash",zsh:"bash",shell:"shell",console:"shell",py:"python",rs:"rust",golang:"go",yml:"yaml",html:"xml",htm:"xml",svg:"xml",md:"markdown",markdown:"markdown",patch:"diff"}});import"react";import{Box as Bp,Text as SD}from"ink";import{jsx as Ba,jsxs as vi}from"react/jsx-runtime";function hS(t){let o=ne().box,n=Fa(t.lang),r=(n??t.lang??"code")+(t.open?" \u2026":""),s=t.code.split(`
601
601
  `);return vi(Bp,{flexDirection:"column",paddingY:0,children:[vi(Bp,{children:[vi(f,{name:"fgDim",children:[o.topLeft,o.horizontal," "]}),Ba(f,{name:"depth",children:r}),vi(f,{name:"fgDim",children:[" ",o.horizontal.repeat(2)]})]}),s.map((i,a)=>vi(Bp,{children:[vi(f,{name:"fgDim",children:[o.vertical," "]}),Ba(J8,{line:i,lang:n??t.lang})]},a)),Ba(Bp,{children:vi(f,{name:"fgDim",children:[o.bottomLeft,o.horizontal.repeat(3)]})})]})}function J8(t){if(t.line==="")return Ba(SD,{children:" "});let e=Jd(t.line,t.lang);return Ba(SD,{children:e.map((o,n)=>Ba(f,{name:o.role,children:o.text},n))})}var gS=p(()=>{"use strict";ae();pS()});function _r(t){let e=[],o=t;for(;o.length>0;){let n=Q8.exec(o);if(!n||n.index===void 0){e.push({kind:"plain",text:o});break}n.index>0&&e.push({kind:"plain",text:o.slice(0,n.index)});let r=n[0];n[1]?e.push({kind:"code",text:r.slice(1,-1)}):n[2]?e.push({kind:"link",text:n[3]??"",url:n[4]??""}):n[5]?e.push({kind:"bold",text:r.slice(3,-3)}):n[6]?e.push({kind:"bold",text:r.slice(2,-2)}):n[7]&&e.push({kind:"italic",text:r.slice(1,-1)}),o=o.slice(n.index+r.length)}return e.reduce((n,r)=>{let s=n[n.length-1];return r.kind==="plain"&&s&&s.kind==="plain"?n[n.length-1]={kind:"plain",text:s.text+r.text}:n.push(r),n},[])}function yS(t){let e=t.trim();return e.startsWith("|")&&(e=e.slice(1)),e.endsWith("|")&&!e.endsWith("\\|")&&(e=e.slice(0,-1)),e.split(/(?<!\\)\|/).map(n=>n.replace(/\\\|/g,"|").trim())}function wD(t){return/(?<!\\)\|/.test(t)}function sJ(t){let e=yS(t);if(e.length===0)return null;let o=[];for(let n of e){if(!rJ.test(n))return null;let r=n.startsWith(":"),s=n.endsWith(":");o.push(r&&s?"center":s?"right":"left")}return o}function bS(t){let e=t.split(`
602
602
  `),o=[],n=null,r=()=>{n&&n.length>0&&o.push({kind:"paragraph",spans:n}),n=null};for(let s=0;s<e.length;s++){let i=e[s]??"",a=Z8.exec(i);if(a){r();let h=(a[2]??"").trim()||void 0,g=[],b=!1,y=s+1;for(;y<e.length;y++){let w=e[y]??"";if(/^\s*```\s*$/.test(w)){b=!0;break}g.push(w)}o.push({kind:"code",lang:h,code:g.join(`
603
- `),closed:b}),s=b?y:e.length;continue}if(i.trim()===""){r();continue}if(wD(i)){let h=s+1<e.length?sJ(e[s+1]??""):null;if(h){r();let g=yS(i),b=g.length,y=[];for(let A=0;A<b;A++)y.push(h[A]??"left");let w=[],R=s+2;for(;R<e.length;R++){let A=e[R]??"";if(A.trim()===""||!wD(A))break;let L=yS(A),j=[];for(let H=0;H<b;H++)j.push(L[H]??"");w.push(j)}o.push({kind:"table",header:g,align:y,rows:w}),s=R-1;continue}}let c=eJ.exec(i);if(c){r(),o.push({kind:"heading",level:c[1].length,spans:_r(c[2]??"")});continue}let l=oJ.exec(i);if(l){r(),o.push({kind:"list-item",ordered:!1,marker:"-",indent:Math.floor((l[1]??"").length/2),spans:_r(l[3]??"")});continue}let d=nJ.exec(i);if(d){r(),o.push({kind:"list-item",ordered:!0,marker:`${d[2]}.`,indent:Math.floor((d[1]??"").length/2),spans:_r(d[3]??"")});continue}let m=tJ.exec(i);if(m){r(),o.push({kind:"quote",spans:_r(m[1]??"")});continue}let u=_r(i);n=n?[...n,{kind:"plain",text:" "},...u]:u}return r(),o}var Q8,Z8,eJ,tJ,oJ,nJ,rJ,Up=p(()=>{"use strict";Q8=/(`[^`]+`)|(\[([^\]]+)\]\(([^)\s]+)\))|(\*\*\*[^*]+\*\*\*|(?<![\p{L}\p{N}_])___[^_]+___(?![\p{L}\p{N}_]))|(\*\*[^*]+\*\*|(?<![\p{L}\p{N}_])__[^_]+__(?![\p{L}\p{N}_]))|(\*[^*\n]+\*|(?<![\p{L}\p{N}_])_[^_\n]+_(?![\p{L}\p{N}_]))/u;Z8=/^(\s*)```(.*)$/,eJ=/^(#{1,6})\s+(.*)$/,tJ=/^\s*>\s?(.*)$/,oJ=/^(\s*)([-*+])\s+(.*)$/,nJ=/^(\s*)(\d+)[.)]\s+(.*)$/,rJ=/^:?-+:?$/});import AD from"react";import{Box as jp,Text as vS}from"ink";import{jsx as Rr,jsxs as kS}from"react/jsx-runtime";function Hp(t){return _r(t).map(e=>e.text).join("")}function xS(t){let e=ne(),o=e.box,n=t.base??"fg",r=e.colorMode==="mono",s=t.header.length,i=t.header.map(Hp),a=t.rows.map(h=>{let g=[];for(let b=0;b<s;b++)g.push(Hp(h[b]??""));return g}),c=MN(i,a,s,t.columns??0),l=e.unicode?`${o.horizontal}\u253C${o.horizontal}`:"-+-",d=c.map(h=>o.horizontal.repeat(h)).join(l),m=(h,g,b)=>{let y=Hp(h),w=bi(y,g),R=uS(w,g,b),A=_r(R);return Rr(Ua,{spans:A,base:n,mono:r})},u=" ".repeat(dS);return kS(jp,{flexDirection:"column",paddingY:0,children:[Rr(jp,{children:t.header.map((h,g)=>kS(AD.Fragment,{children:[g>0&&Rr(vS,{children:u}),Rr(f,{name:"accent",children:Rr(vS,{bold:!0,children:uS(bi(Hp(h),c[g]??0),c[g]??0,t.align[g]??"left")})})]},g))}),Rr(jp,{children:Rr(f,{name:"fgDim",children:d})}),t.rows.map((h,g)=>Rr(jp,{children:h.map((b,y)=>kS(AD.Fragment,{children:[y>0&&Rr(vS,{children:u}),m(b,c[y]??0,t.align[y]??"left")]},y))},g))]})}var SS=p(()=>{"use strict";ae();wS();Up();Dp()});import"react";import{Box as ja,Text as us}from"ink";import{jsx as Ve,jsxs as kn}from"react/jsx-runtime";function AS(t){let e=t.baseRole??"fg",o=bS(t.text);return Ve(ja,{flexDirection:"column",children:o.map((n,r)=>Ve(iJ,{block:n,base:e,...t.columns!==void 0?{columns:t.columns}:{}},r))})}function iJ(t){let e=ne(),o=t.block,n=e.colorMode==="mono";switch(o.kind){case"code":return Ve(ja,{paddingY:0,children:Ve(hS,{code:o.code,lang:o.lang,open:!o.closed})});case"table":return Ve(xS,{header:o.header,align:o.align,rows:o.rows,base:t.base,...t.columns!==void 0?{columns:t.columns}:{}});case"heading":return kn(ja,{children:[n&&kn(f,{name:"accent",children:["#".repeat(o.level)," "]}),Ve(f,{name:"accent",children:Ve(Ua,{spans:o.spans,base:"accent",mono:n})})]});case"quote":return kn(ja,{children:[kn(f,{name:"depth",children:[e.glyph("you")," "]}),Ve(f,{name:"fgDim",children:Ve(Ua,{spans:o.spans,base:"fgDim",mono:n})})]});case"list-item":return kn(ja,{paddingLeft:o.indent*2,children:[kn(f,{name:"accent",children:[o.ordered?o.marker:e.unicode?"\u2022":"-"," "]}),Ve(us,{children:Ve(Ua,{spans:o.spans,base:t.base,mono:n})})]});case"paragraph":return Ve(ja,{children:Ve(us,{children:Ve(Ua,{spans:o.spans,base:t.base,mono:n})})})}}function Ua(t){return Ve(us,{children:t.spans.map((e,o)=>Ve(aJ,{span:e,base:t.base,mono:t.mono},o))})}function aJ(t){let{span:e,base:o,mono:n}=t;switch(e.kind){case"plain":return Ve(f,{name:o,children:e.text});case"bold":return n?Ve(f,{name:o,children:kn(us,{bold:!0,children:["*",e.text,"*"]})}):Ve(f,{name:o,children:Ve(us,{bold:!0,children:e.text})});case"italic":return n?Ve(f,{name:o,children:kn(us,{italic:!0,children:["_",e.text,"_"]})}):Ve(f,{name:o,children:Ve(us,{italic:!0,children:e.text})});case"code":return n?kn(f,{name:"depth",children:["`",e.text,"`"]}):Ve(f,{name:"depth",children:e.text});case"link":return kn(us,{children:[Ve(f,{name:"accent",children:e.text}),kn(f,{name:"fgDim",children:[" (",e.url,")"]})]})}}var wS=p(()=>{"use strict";ae();gS();SS();Up()});var ES=p(()=>{"use strict";wS();gS();SS();Up();pS()});import"react";import{Box as cJ,Text as uke}from"ink";import{jsx as Wp,jsxs as dJ}from"react/jsx-runtime";function Gp(t,e){return((t-e)%qp+qp)%qp<qp/2?"accent":"accentDim"}function ki(t){let e=ne(),o=t.frame??0;if(!e.animate)return Wp(f,{name:"accent",children:e.aluyMark});if(!e.unicode){let s=Gp(o,0),i=Gp(o,lJ);return dJ(cJ,{children:[Wp(f,{name:s,children:"/"}),Wp(f,{name:i,children:"\\"})]})}let r=Gp(o,0);return Wp(f,{name:r,children:e.aluyMark})}var qp,lJ,Qd=p(()=>{"use strict";ae();qp=8,lJ=2});function zp(t){return t>=TS?mJ:0}function Kp(t){return t==="unsafe"?pJ-fJ:0}function Ha(t,e){if(e<=0||t.length<=e)return t;let o=Array.from(t);return o.length<=e?t:o.slice(o.length-e).join("").replace(/^\n+/,"")}function gJ(t,e){if(t.kind==="tool"||t.kind==="bang")return t.status==="running"?1+ED(t.liveOutput,e):0;if(t.kind==="subagents"){let o=0;for(let n of t.children)o+=yJ(n,e);return 2+o}return t.kind==="broker-error"?t.retrying===!0?5:0:t.kind==="aluy"?0:1}function ED(t,e){let o=(t??"").replace(/\n+$/,"");if(o.length===0)return 0;let n=e>0?e-hJ:0,r=Na(o,n);return r<=Zd?r:Zd+1}function yJ(t,e){if(!(e>0))return 1;let o=t.status==="running"?"rodando":t.status==="done"?"pronto":t.status==="cancelled"?"parado":"timeout",n=t.summary!==void 0&&t.status!=="running"?` \xB7 ${t.summary}`:"",r=` [${t.label}] x ${o}${n}`;return Math.max(1,Na(r,e))}function Jp(t){let{live:e,phase:o,hasBlocks:n}=t,r=t.columns??0,s=0,i=e.find(a=>a.kind==="aluy"&&a.streaming);for(let a of e){if(a===i){s+=3;continue}s+=gJ(a,r)}return(o==="thinking"||o==="compacting")&&(s+=1+(n?1:0)),s}function _D(t){let e=eu+zp(t.rows)+Kp(t.mode)+Jp({live:t.live,phase:t.phase,hasBlocks:t.hasBlocks,...t.columns!==void 0?{columns:t.columns}:{}})+Vp+(t.stagedLines??0);return Math.max(4,t.rows-e-1-Yp)}function RD(t){let e=Jp({live:t.live,phase:t.phase,hasBlocks:t.hasBlocks,...t.columns!==void 0?{columns:t.columns}:{}}),o=t.rows-eu-zp(t.rows)-Yp-e-Kp(t.mode)-(t.queuedLines??0)-(t.overlayLines??0)-1;return Math.max(Vp,o)}var uJ,eu,mJ,TS,fJ,pJ,Yp,Vp,Zd,Xp,TD,hJ,qa=p(()=>{"use strict";oo();uJ=9,eu=8,mJ=uJ-eu,TS=25;fJ=1,pJ=2;Yp=2,Vp=4,Zd=6,Xp=8192,TD=65536;hJ=4});import"react";import{Box as Ga,Text as bJ}from"ink";import{jsx as qn,jsxs as Wa}from"react/jsx-runtime";function _S(t){let e=t.isCurrent===!1?"fgDim":"fg";return Wa(Ga,{flexDirection:"column",children:[Wa(Ga,{children:[qn(P,{name:"you",role:"fg"}),qn(f,{name:"fg",children:" voc\xEA"})]}),qn(Ga,{paddingLeft:2,children:qn(f,{name:e,children:t.text})})]})}function RS(t){let e=ne(),o=t.streaming?Ha(t.text,TD):t.text,n=jr(o),r=t.isCurrent===!1?"fgDim":"fg",s=t.columns&&t.columns>0?t.columns-vJ:0,{text:i,hidden:a}=Da(n,t.streaming?t.maxLines:void 0,s),c=(t.frame??0)%kJ,l=!e.animate||c<xJ;return Wa(Ga,{flexDirection:"column",children:[Wa(Ga,{children:[t.streaming?qn(ki,{frame:t.frame??0}):qn(P,{name:"aluy",role:"accent"}),qn(f,{name:"accent",children:" aluy"})]}),Wa(Ga,{paddingLeft:2,flexDirection:"column",children:[a>0&&Wa(f,{name:"fgDim",children:["\u2026 (",a," linhas acima)"]}),qn(AS,{text:i,baseRole:r,...s>0?{columns:s}:{}}),t.streaming&&(l?qn(f,{name:"accent",children:e.glyph("thinkingCursor")}):qn(bJ,{children:" "}))]})]})}var vJ,kJ,xJ,CD=p(()=>{"use strict";D();ae();ES();Qd();oo();qa();vJ=2,kJ=10,xJ=6});import"react";import{Box as SJ,Text as OD}from"ink";import{jsx as za,jsxs as MD}from"react/jsx-runtime";function xi(t){let e=ne(),o=t.width??wJ,n=t.frame??0,r=t.glyph??"aluy",s=t.glyphRole??"accent",i=e.animate,a=e.glyph("wave"),c=e.glyph("waveHead"),l=i?n%o:-1;return MD(SJ,{children:[r==="aluy"?za(ki,{frame:n}):za(P,{name:r,role:s}),za(OD,{children:" "}),Array.from({length:o},(d,m)=>m===l?za(f,{name:"accent",children:c},m):za(f,{name:"accentDim",children:a},m)),za(OD,{children:" "}),MD(f,{name:"fgDim",children:[t.label,"\u2026"]})]})}var wJ,Qp=p(()=>{"use strict";ae();Qd();wJ=3});import"react";import{Box as Si,Text as CS}from"ink";import{jsx as Jo,jsxs as xn}from"react/jsx-runtime";function EJ(t){return t.length>=LD?t:t+" ".repeat(LD-t.length)}function OS(t){let e=ne();if(t.status==="running"){let n=`${t.verbGerund??"rodando"}${t.target?` ${t.target}`:""}`,s=Ha(t.liveOutput??"",Xp).replace(/\n+$/,""),i=t.columns&&t.columns>0?t.columns-AJ:0,{text:a,hidden:c}=Da(s,t.maxLines,i);return xn(Si,{flexDirection:"column",paddingLeft:2,children:[Jo(xi,{glyph:"toolInflight",glyphRole:"depth",label:n,...t.frame!==void 0?{frame:t.frame}:{}}),a.length>0&&xn(Si,{flexDirection:"column",paddingLeft:2,children:[c>0&&xn(f,{name:"fgDim",children:["\u2026 (",c," linhas acima)"]}),a.split(`
603
+ `),closed:b}),s=b?y:e.length;continue}if(i.trim()===""){r();continue}if(wD(i)){let h=s+1<e.length?sJ(e[s+1]??""):null;if(h){r();let g=yS(i),b=g.length,y=[];for(let A=0;A<b;A++)y.push(h[A]??"left");let w=[],R=s+2;for(;R<e.length;R++){let A=e[R]??"";if(A.trim()===""||!wD(A))break;let L=yS(A),j=[];for(let H=0;H<b;H++)j.push(L[H]??"");w.push(j)}o.push({kind:"table",header:g,align:y,rows:w}),s=R-1;continue}}let c=eJ.exec(i);if(c){r(),o.push({kind:"heading",level:c[1].length,spans:_r(c[2]??"")});continue}let l=oJ.exec(i);if(l){r(),o.push({kind:"list-item",ordered:!1,marker:"-",indent:Math.floor((l[1]??"").length/2),spans:_r(l[3]??"")});continue}let d=nJ.exec(i);if(d){r(),o.push({kind:"list-item",ordered:!0,marker:`${d[2]}.`,indent:Math.floor((d[1]??"").length/2),spans:_r(d[3]??"")});continue}let m=tJ.exec(i);if(m){r(),o.push({kind:"quote",spans:_r(m[1]??"")});continue}let u=_r(i);n=n?[...n,{kind:"plain",text:" "},...u]:u}return r(),o}var Q8,Z8,eJ,tJ,oJ,nJ,rJ,Up=p(()=>{"use strict";Q8=/(`[^`]+`)|(\[([^\]]+)\]\(([^)\s]+)\))|(\*\*\*[^*]+\*\*\*|(?<![\p{L}\p{N}_])___[^_]+___(?![\p{L}\p{N}_]))|(\*\*[^*]+\*\*|(?<![\p{L}\p{N}_])__[^_]+__(?![\p{L}\p{N}_]))|(\*[^*\n]+\*|(?<![\p{L}\p{N}_])_[^_\n]+_(?![\p{L}\p{N}_]))/u;Z8=/^(\s*)```(.*)$/,eJ=/^(#{1,6})\s+(.*)$/,tJ=/^\s*>\s?(.*)$/,oJ=/^(\s*)([-*+])\s+(.*)$/,nJ=/^(\s*)(\d+)[.)]\s+(.*)$/,rJ=/^:?-+:?$/});import AD from"react";import{Box as jp,Text as vS}from"ink";import{jsx as Rr,jsxs as kS}from"react/jsx-runtime";function Hp(t){return _r(t).map(e=>e.text).join("")}function xS(t){let e=ne(),o=e.box,n=t.base??"fg",r=e.colorMode==="mono",s=t.header.length,i=t.header.map(Hp),a=t.rows.map(h=>{let g=[];for(let b=0;b<s;b++)g.push(Hp(h[b]??""));return g}),c=MN(i,a,s,t.columns??0),l=e.unicode?`${o.horizontal}\u253C${o.horizontal}`:"-+-",d=c.map(h=>o.horizontal.repeat(h)).join(l),m=(h,g,b)=>{let y=Hp(h),w=bi(y,g),R=uS(w,g,b),A=_r(R);return Rr(Ua,{spans:A,base:n,mono:r})},u=" ".repeat(dS);return kS(jp,{flexDirection:"column",paddingY:0,children:[Rr(jp,{children:t.header.map((h,g)=>kS(AD.Fragment,{children:[g>0&&Rr(vS,{children:u}),Rr(f,{name:"accent",children:Rr(vS,{bold:!0,children:uS(bi(Hp(h),c[g]??0),c[g]??0,t.align[g]??"left")})})]},g))}),Rr(jp,{children:Rr(f,{name:"fgDim",children:d})}),t.rows.map((h,g)=>Rr(jp,{children:h.map((b,y)=>kS(AD.Fragment,{children:[y>0&&Rr(vS,{children:u}),m(b,c[y]??0,t.align[y]??"left")]},y))},g))]})}var SS=p(()=>{"use strict";ae();wS();Up();Dp()});import"react";import{Box as ja,Text as us}from"ink";import{jsx as Ve,jsxs as kn}from"react/jsx-runtime";function AS(t){let e=t.baseRole??"fg",o=bS(t.text);return Ve(ja,{flexDirection:"column",children:o.map((n,r)=>Ve(iJ,{block:n,base:e,...t.columns!==void 0?{columns:t.columns}:{}},r))})}function iJ(t){let e=ne(),o=t.block,n=e.colorMode==="mono";switch(o.kind){case"code":return Ve(ja,{paddingY:0,children:Ve(hS,{code:o.code,lang:o.lang,open:!o.closed})});case"table":return Ve(xS,{header:o.header,align:o.align,rows:o.rows,base:t.base,...t.columns!==void 0?{columns:t.columns}:{}});case"heading":return kn(ja,{children:[n&&kn(f,{name:"accent",children:["#".repeat(o.level)," "]}),Ve(f,{name:"accent",children:Ve(Ua,{spans:o.spans,base:"accent",mono:n})})]});case"quote":return kn(ja,{children:[kn(f,{name:"depth",children:[e.glyph("you")," "]}),Ve(f,{name:"fgDim",children:Ve(Ua,{spans:o.spans,base:"fgDim",mono:n})})]});case"list-item":return kn(ja,{paddingLeft:o.indent*2,children:[kn(f,{name:"accent",children:[o.ordered?o.marker:e.unicode?"\u2022":"-"," "]}),Ve(us,{children:Ve(Ua,{spans:o.spans,base:t.base,mono:n})})]});case"paragraph":return Ve(ja,{children:Ve(us,{children:Ve(Ua,{spans:o.spans,base:t.base,mono:n})})})}}function Ua(t){return Ve(us,{children:t.spans.map((e,o)=>Ve(aJ,{span:e,base:t.base,mono:t.mono},o))})}function aJ(t){let{span:e,base:o,mono:n}=t;switch(e.kind){case"plain":return Ve(f,{name:o,children:e.text});case"bold":return n?Ve(f,{name:o,children:kn(us,{bold:!0,children:["*",e.text,"*"]})}):Ve(f,{name:o,children:Ve(us,{bold:!0,children:e.text})});case"italic":return n?Ve(f,{name:o,children:kn(us,{italic:!0,children:["_",e.text,"_"]})}):Ve(f,{name:o,children:Ve(us,{italic:!0,children:e.text})});case"code":return n?kn(f,{name:"depth",children:["`",e.text,"`"]}):Ve(f,{name:"depth",children:e.text});case"link":return kn(us,{children:[Ve(f,{name:"accent",children:e.text}),kn(f,{name:"fgDim",children:[" (",e.url,")"]})]})}}var wS=p(()=>{"use strict";ae();gS();SS();Up()});var ES=p(()=>{"use strict";wS();gS();SS();Up();pS()});import"react";import{Box as cJ,Text as fke}from"ink";import{jsx as Wp,jsxs as dJ}from"react/jsx-runtime";function Gp(t,e){return((t-e)%qp+qp)%qp<qp/2?"accent":"accentDim"}function ki(t){let e=ne(),o=t.frame??0;if(!e.animate)return Wp(f,{name:"accent",children:e.aluyMark});if(!e.unicode){let s=Gp(o,0),i=Gp(o,lJ);return dJ(cJ,{children:[Wp(f,{name:s,children:"/"}),Wp(f,{name:i,children:"\\"})]})}let r=Gp(o,0);return Wp(f,{name:r,children:e.aluyMark})}var qp,lJ,Qd=p(()=>{"use strict";ae();qp=8,lJ=2});function zp(t){return t>=TS?mJ:0}function Kp(t){return t==="unsafe"?pJ-fJ:0}function Ha(t,e){if(e<=0||t.length<=e)return t;let o=Array.from(t);return o.length<=e?t:o.slice(o.length-e).join("").replace(/^\n+/,"")}function gJ(t,e){if(t.kind==="tool"||t.kind==="bang")return t.status==="running"?1+ED(t.liveOutput,e):0;if(t.kind==="subagents"){let o=0;for(let n of t.children)o+=yJ(n,e);return 2+o}return t.kind==="broker-error"?t.retrying===!0?5:0:t.kind==="aluy"?0:1}function ED(t,e){let o=(t??"").replace(/\n+$/,"");if(o.length===0)return 0;let n=e>0?e-hJ:0,r=Na(o,n);return r<=Zd?r:Zd+1}function yJ(t,e){if(!(e>0))return 1;let o=t.status==="running"?"rodando":t.status==="done"?"pronto":t.status==="cancelled"?"parado":"timeout",n=t.summary!==void 0&&t.status!=="running"?` \xB7 ${t.summary}`:"",r=` [${t.label}] x ${o}${n}`;return Math.max(1,Na(r,e))}function Jp(t){let{live:e,phase:o,hasBlocks:n}=t,r=t.columns??0,s=0,i=e.find(a=>a.kind==="aluy"&&a.streaming);for(let a of e){if(a===i){s+=3;continue}s+=gJ(a,r)}return(o==="thinking"||o==="compacting")&&(s+=1+(n?1:0)),s}function _D(t){let e=eu+zp(t.rows)+Kp(t.mode)+Jp({live:t.live,phase:t.phase,hasBlocks:t.hasBlocks,...t.columns!==void 0?{columns:t.columns}:{}})+Vp+(t.stagedLines??0);return Math.max(4,t.rows-e-1-Yp)}function RD(t){let e=Jp({live:t.live,phase:t.phase,hasBlocks:t.hasBlocks,...t.columns!==void 0?{columns:t.columns}:{}}),o=t.rows-eu-zp(t.rows)-Yp-e-Kp(t.mode)-(t.queuedLines??0)-(t.overlayLines??0)-1;return Math.max(Vp,o)}var uJ,eu,mJ,TS,fJ,pJ,Yp,Vp,Zd,Xp,TD,hJ,qa=p(()=>{"use strict";oo();uJ=9,eu=8,mJ=uJ-eu,TS=25;fJ=1,pJ=2;Yp=2,Vp=4,Zd=6,Xp=8192,TD=65536;hJ=4});import"react";import{Box as Ga,Text as bJ}from"ink";import{jsx as qn,jsxs as Wa}from"react/jsx-runtime";function _S(t){let e=t.isCurrent===!1?"fgDim":"fg";return Wa(Ga,{flexDirection:"column",children:[Wa(Ga,{children:[qn(P,{name:"you",role:"fg"}),qn(f,{name:"fg",children:" voc\xEA"})]}),qn(Ga,{paddingLeft:2,children:qn(f,{name:e,children:t.text})})]})}function RS(t){let e=ne(),o=t.streaming?Ha(t.text,TD):t.text,n=jr(o),r=t.isCurrent===!1?"fgDim":"fg",s=t.columns&&t.columns>0?t.columns-vJ:0,{text:i,hidden:a}=Da(n,t.streaming?t.maxLines:void 0,s),c=(t.frame??0)%kJ,l=!e.animate||c<xJ;return Wa(Ga,{flexDirection:"column",children:[Wa(Ga,{children:[t.streaming?qn(ki,{frame:t.frame??0}):qn(P,{name:"aluy",role:"accent"}),qn(f,{name:"accent",children:" aluy"})]}),Wa(Ga,{paddingLeft:2,flexDirection:"column",children:[a>0&&Wa(f,{name:"fgDim",children:["\u2026 (",a," linhas acima)"]}),qn(AS,{text:i,baseRole:r,...s>0?{columns:s}:{}}),t.streaming&&(l?qn(f,{name:"accent",children:e.glyph("thinkingCursor")}):qn(bJ,{children:" "}))]})]})}var vJ,kJ,xJ,CD=p(()=>{"use strict";D();ae();ES();Qd();oo();qa();vJ=2,kJ=10,xJ=6});import"react";import{Box as SJ,Text as OD}from"ink";import{jsx as za,jsxs as MD}from"react/jsx-runtime";function xi(t){let e=ne(),o=t.width??wJ,n=t.frame??0,r=t.glyph??"aluy",s=t.glyphRole??"accent",i=e.animate,a=e.glyph("wave"),c=e.glyph("waveHead"),l=i?n%o:-1;return MD(SJ,{children:[r==="aluy"?za(ki,{frame:n}):za(P,{name:r,role:s}),za(OD,{children:" "}),Array.from({length:o},(d,m)=>m===l?za(f,{name:"accent",children:c},m):za(f,{name:"accentDim",children:a},m)),za(OD,{children:" "}),MD(f,{name:"fgDim",children:[t.label,"\u2026"]})]})}var wJ,Qp=p(()=>{"use strict";ae();Qd();wJ=3});import"react";import{Box as Si,Text as CS}from"ink";import{jsx as Jo,jsxs as xn}from"react/jsx-runtime";function EJ(t){return t.length>=LD?t:t+" ".repeat(LD-t.length)}function OS(t){let e=ne();if(t.status==="running"){let n=`${t.verbGerund??"rodando"}${t.target?` ${t.target}`:""}`,s=Ha(t.liveOutput??"",Xp).replace(/\n+$/,""),i=t.columns&&t.columns>0?t.columns-AJ:0,{text:a,hidden:c}=Da(s,t.maxLines,i);return xn(Si,{flexDirection:"column",paddingLeft:2,children:[Jo(xi,{glyph:"toolInflight",glyphRole:"depth",label:n,...t.frame!==void 0?{frame:t.frame}:{}}),a.length>0&&xn(Si,{flexDirection:"column",paddingLeft:2,children:[c>0&&xn(f,{name:"fgDim",children:["\u2026 (",c," linhas acima)"]}),a.split(`
604
604
  `).map((l,d)=>Jo(Si,{children:Jo(f,{name:"fgDim",children:l})},d))]})]})}let o=t.status==="err";return xn(Si,{flexDirection:"column",paddingLeft:2,children:[xn(Si,{children:[Jo(P,{name:"tool",role:"depth"}),xn(f,{name:"fg",children:[" ",EJ(t.verb)]}),Jo(CS,{children:" "}),Jo(f,{name:"fg",children:t.target}),Jo(CS,{children:" "}),Jo(f,{name:"fgDim",children:t.result}),Jo(CS,{children:" "}),o?Jo(P,{name:"err",role:"danger"}):Jo(P,{name:"ok",role:"success"})]}),o&&t.output&&xn(Si,{flexDirection:"column",paddingLeft:2,children:[xn(f,{name:"fgDim",children:[e.box.topLeft," sa\xEDda ",e.box.horizontal.repeat(8)]}),t.output.split(`
605
605
  `).map((n,r)=>xn(Si,{children:[xn(f,{name:"fgDim",children:[e.box.vertical," "]}),Jo(f,{name:"danger",children:n})]},r)),xn(f,{name:"fgDim",children:[e.box.bottomLeft," ",t.result," ",e.box.horizontal.repeat(4)]})]})]})}var LD,AJ,PD=p(()=>{"use strict";ae();Qp();oo();qa();LD=7,AJ=4});import"react";import{Box as Ft,Text as Ka}from"ink";import{jsx as Te,jsxs as Se}from"react/jsx-runtime";function TJ(t){if(!t)return;let e=t.split(".").pop();return e&&e!==t?e:void 0}function _J(t){return t.category==="always-ask:destructive"}function RJ(t){let e=/^\[sub-agente:\s*([^\]]+)\]/.exec(t.reason??"");return e?e[1].trim():null}function CJ(t){let e=t.effect.kind;return e==="diff"||e==="path"?`edit \u2500 ${t.effect.path??t.effect.exact}`:"bash"}function MS(t){let e=ne(),o=t.request,n=_J(o),r=o.category==="always-ask:network"||t.egressOutsideAllowlist===!0,s=RJ(o),i=n?"destrutivo \xB7 ask":"ask";return Se(Ft,{flexDirection:"column",paddingLeft:2,children:[Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.topLeft," "]}),Te(P,{name:"ask",role:"accent"}),Se(f,{name:"accent",children:[" ",i," \u2500 ",CJ(o)," ",e.box.horizontal.repeat(2),e.box.topRight]})]}),Te(f,{name:"accent",children:e.box.vertical}),s!==null&&Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(P,{name:"subagents",role:"accent"}),Te(f,{name:"accent",children:" sub-agente: "}),Te(f,{name:"fg",children:s})]}),Te(LJ,{request:o}),r&&Se(Ft,{flexDirection:"column",children:[Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(P,{name:"ask",role:"accent"}),Te(f,{name:"accent",children:" rede \xB7 ask \xB7 destino fora da allowlist"})]}),t.egressTarget&&Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(f,{name:"depth",children:t.egressTarget})]})]}),Se(f,{name:"accent",children:[e.box.teeLeft,e.box.horizontal.repeat(40),e.box.teeRight]}),n?Se(Ft,{flexDirection:"column",children:[Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(P,{name:"ask",role:"accent"}),Te(f,{name:"accent",children:" esta a\xE7\xE3o n\xE3o pode ser desfeita"})]}),Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(f,{name:"danger",children:"[n] negar"}),Te(Ka,{children:" "}),Te(f,{name:"accent",children:"[a] aprovar mesmo assim"})]})]}):Se(Ft,{flexDirection:"column",children:[Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(P,{name:"ask",role:"accent"}),Se(f,{name:"accent",children:[" ",MJ(o)]})]}),Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(f,{name:"accent",children:"[a] aprovar"}),Te(Ka,{children:" "}),o.alwaysAsk===!1&&Te(f,{name:"accent",children:"[s] sempre nesta sess\xE3o"})]}),Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(f,{name:"danger",children:"[n] negar"}),Te(Ka,{children:" "}),Te(f,{name:"fgDim",children:"[e] editar"})]})]}),Se(f,{name:"accent",children:[e.box.bottomLeft,e.box.horizontal.repeat(42),e.box.bottomRight]}),Te(f,{name:"fgDim",children:OJ(o,n)})]})}function OJ(t,e){return e?"n nega (recomendado) \xB7 a aprova mesmo assim \xB7 esc cancela":t.alwaysAsk===!1?"a aprova \xB7 s sempre \xB7 n nega \xB7 e edita \xB7 esc cancela":"a aprova \xB7 n nega \xB7 e edita \xB7 esc cancela"}function MJ(t){return t.effect.kind==="diff"||t.effect.kind==="path"?"aplicar esta altera\xE7\xE3o?":"executar este comando?"}function LJ(t){let e=ne(),o=t.request.effect;if(o.kind==="diff"){let n=Fa(TJ(o.path??o.exact));return Te(Ft,{flexDirection:"column",children:o.exact.split(`
606
606
  `).map((r,s)=>Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(PJ,{line:r,lang:n??void 0})]},s))})}return Te(Ft,{flexDirection:"column",children:o.exact.split(`
607
607
  `).map((n,r)=>Se(Ft,{children:[Se(f,{name:"accent",children:[e.box.vertical," "]}),Te(f,{name:"fg",children:n})]},r))})}function PJ(t){let e=ne(),o=t.line;return o.startsWith("---")||o.startsWith("+++")||o.startsWith("@@")?Te(f,{name:"fgDim",children:o}):o.startsWith("-")?Se(Ka,{children:[Se(f,{name:"danger",children:[e.glyph("diffDel")," "]}),Te(ID,{code:o.slice(1),lang:t.lang,fallback:"danger"})]}):o.startsWith("+")?Se(Ka,{children:[Se(f,{name:"success",children:[e.glyph("diffAdd")," "]}),Te(ID,{code:o.slice(1),lang:t.lang,fallback:"success"})]}):Te(f,{name:"fgDim",children:o})}function ID(t){if(t.lang===void 0||t.code==="")return Te(f,{name:t.fallback,children:t.code});let e=Jd(t.code,t.lang);return Te(Ka,{children:e.map((o,n)=>Te(f,{name:o.role,children:o.text},n))})}var ND=p(()=>{"use strict";ae();ES()});import"react";import{Box as Sn}from"ink";import{jsx as so,jsxs as je}from"react/jsx-runtime";function NJ(t){return t.kind!=="text"&&t.allowOther!==!1}function PS(t){let e=ne(),{spec:o}=t;return je(Sn,{flexDirection:"column",paddingLeft:2,children:[je(Sn,{children:[je(f,{name:"accent",children:[e.box.topLeft," "]}),so(P,{name:"ask",role:"accent"}),je(f,{name:"accent",children:[" ","Pergunta ",e.box.horizontal.repeat(LS-IJ),e.box.topRight]})]}),so(f,{name:"accent",children:e.box.vertical}),o.header!==void 0&&je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),so(f,{name:"depth",children:o.header})]}),o.question.split(`
608
- `).map((n,r)=>je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),so(f,{name:"fg",children:n})]},`q-${r}`)),so(f,{name:"accent",children:e.box.vertical}),o.kind==="text"?so(FJ,{theme:e,draft:t.draft??""}):so(DJ,{...t}),je(f,{name:"accent",children:[e.box.teeLeft,e.box.horizontal.repeat(LS),e.box.teeRight]}),je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),so(f,{name:"fgDim",children:BJ(o,t.editing===!0)})]}),je(f,{name:"accent",children:[e.box.bottomLeft,e.box.horizontal.repeat(LS),e.box.bottomRight]})]})}function DJ(t){let e=ne(),{spec:o}=t,n=o.options??[],r=o.kind==="multi",s=t.selected??new Set;return je(Sn,{flexDirection:"column",children:[n.map((i,a)=>{let c=t.cursor===a,l=r?s.has(a)?"[x]":"[ ]":c?"(\u2022)":"( )";return je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),je(f,{name:c?"accent":"fgDim",children:[c?"\u203A":" "," "]}),je(f,{name:c?"accent":"fgDim",children:[l," "]}),so(f,{name:c?"accent":"fg",children:i.label}),i.description!==void 0&&je(f,{name:"fgDim",children:[" \u2014 ",i.description]})]},`opt-${a}`)}),NJ(o)&&so($J,{theme:e,onCursor:t.cursor===Wn,editing:t.editing===!0&&t.cursor===Wn,draft:t.draft??""})]})}function $J(t){let{theme:e,onCursor:o,editing:n,draft:r}=t;return je(Sn,{flexDirection:"column",children:[je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),je(f,{name:o?"accent":"fgDim",children:[o?"\u203A":" "," "]}),so(f,{name:o?"accent":"fg",children:"Outro (resposta livre)"})]}),n&&je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),so(f,{name:"fg",children:r}),so(f,{name:"accent",children:e.glyph("cursor")})]})]})}function FJ(t){let{theme:e,draft:o}=t;return je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),je(f,{name:"depth",children:[e.glyph("prompt")," "]}),so(f,{name:"fg",children:o}),so(f,{name:"accent",children:e.glyph("cursor")})]})}function BJ(t,e){return e?"enter confirma \xB7 esc cancela a digita\xE7\xE3o":t.kind==="text"?"digite a resposta \xB7 enter confirma \xB7 esc cancela":t.kind==="multi"?"\u2191\u2193 navega \xB7 espa\xE7o marca \xB7 enter confirma \xB7 esc cancela":"\u2191\u2193 navega \xB7 enter escolhe \xB7 esc cancela"}var Wn,LS,IJ,DD=p(()=>{"use strict";ae();Wn=-1,LS=42,IJ=13});import"react";import{Box as tu}from"ink";import{jsx as Zp,jsxs as Qo}from"react/jsx-runtime";function IS(t){let e=ne(),o=t.backend==="local"?"provider local indispon\xEDvel":"broker indispon\xEDvel",n=t.retrying?"tentando de novo":t.headline??o,r=t.retrying?"esc cancelar":"r tentar agora \xB7 esc cancelar";return Qo(tu,{flexDirection:"column",paddingLeft:4,children:[Qo(tu,{children:[Qo(f,{name:"danger",children:[e.box.topLeft," "]}),Zp(P,{name:"broker",role:"depth"}),Qo(f,{name:"danger",children:[" ",n," ",e.box.horizontal.repeat(4)," "]}),Zp(P,{name:"err",role:"danger"})]}),Qo(tu,{children:[Qo(f,{name:"danger",children:[e.box.vertical," "]}),Zp(f,{name:"fg",children:t.message})]}),(t.status!==void 0||t.attempt!==void 0||t.retryInSeconds!==void 0)&&Qo(tu,{children:[Qo(f,{name:"danger",children:[e.box.vertical," "]}),Qo(f,{name:"fgDim",children:[t.status!==void 0?`${t.status} \xB7 `:"",t.retryInSeconds!==void 0?`tentando de novo em ${t.retryInSeconds}s `:"",t.attempt!==void 0&&t.maxAttempts!==void 0?`(${t.attempt}/${t.maxAttempts})`:""]})]}),Qo(tu,{children:[Qo(f,{name:"danger",children:[e.box.vertical," "]}),Zp(f,{name:"fgDim",children:r})]}),Qo(f,{name:"danger",children:[e.box.bottomLeft,e.box.horizontal.repeat(40)]})]})}var $D=p(()=>{"use strict";ae()});import"react";import{Box as ms,Text as UJ}from"ink";import{jsx as Gn,jsxs as vt}from"react/jsx-runtime";function jJ(t){return t>=1e6?`${(t/1e6).toFixed(1).replace(/\.0$/,"")}M`:t>=1e3?`${Math.round(t/1e3)}k`:String(t)}function NS(t){let e=ne();return vt(ms,{flexDirection:"column",paddingLeft:2,children:[vt(ms,{children:[vt(f,{name:"accent",children:[e.box.topLeft," "]}),Gn(P,{name:"clock",role:"accent"}),vt(f,{name:"accent",children:[" teto da sess\xE3o ",e.box.horizontal.repeat(6)," pausado"]})]}),vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(f,{name:"fg",children:t.reason})]}),t.budgetPct!==void 0&&vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(P,{name:"clock",role:"accent"}),vt(f,{name:"accent",children:[" ",t.budgetPct,"% do teto da sess\xE3o"]}),t.maxTokens!==void 0&&vt(f,{name:"fgDim",children:[" (teto: ",jJ(t.maxTokens)," tokens)"]})]}),vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(f,{name:"fgDim",children:"o agente pausou para voc\xEA decidir."})]}),vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(P,{name:"window",role:"fgDim"}),vt(f,{name:"fgDim",children:[" janela: ",t.windowPct,"% usada"]})]}),t.canCompact&&vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(f,{name:"accent",children:"[k] compactar"}),Gn(f,{name:"fgDim",children:" resume a conversa e continua (libera a janela)"})]}),vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(f,{name:"accent",children:"[c] continuar (+50 itera\xE7\xF5es)"}),Gn(UJ,{children:" "}),Gn(f,{name:"fgDim",children:"[n] encerrar"})]}),vt(f,{name:"accent",children:[e.box.bottomLeft,e.box.horizontal.repeat(42)]})]})}var FD=p(()=>{"use strict";ae()});import"react";import{Box as wi,Text as HJ}from"ink";import{Fragment as WJ,jsx as zn,jsxs as Vt}from"react/jsx-runtime";function qJ(t,e,o){switch(t){case"same-tool-call":return`o agente repetiu a tool "${o}" ${e}\xD7 sem avan\xE7ar.`;case"same-tool-error":return`a mesma falha se repetiu ${e}\xD7 seguidas (${o}).`;case"empty-turns":return`o agente respondeu vazio ${e}\xD7 seguidas (sem texto nem a\xE7\xE3o).`;case"no-progress":return`${e} itera\xE7\xF5es sem avan\xE7o real (nenhum arquivo/edi\xE7\xE3o/comando novo).`}}function DS(t){let e=ne(),o=qJ(t.kind,t.count,t.sample);return Vt(wi,{flexDirection:"column",paddingLeft:2,children:[Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.topLeft," "]}),zn(P,{name:"clock",role:"accent"}),Vt(f,{name:"accent",children:[" parece travado ",e.box.horizontal.repeat(6)," pausado"]})]}),Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"fg",children:o})]}),t.redirecting?Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"accent",children:"[r] "}),zn(f,{name:"fgDim",children:"digite a nova instru\xE7\xE3o e tecle Enter (esc cancela)."})]}):Vt(WJ,{children:[Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"fgDim",children:"o agente pausou para voc\xEA decidir o rumo."})]}),Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"accent",children:"[r] redirecionar"}),zn(f,{name:"fgDim",children:" (dar uma nova instru\xE7\xE3o)"})]}),Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"accent",children:"[c] continuar mesmo assim"}),zn(HJ,{children:" "}),zn(f,{name:"fgDim",children:"[n] encerrar"})]})]}),Vt(f,{name:"accent",children:[e.box.bottomLeft,e.box.horizontal.repeat(42)]})]})}var BD=p(()=>{"use strict";ae()});import"react";import{Box as Axe}from"ink";import{jsx as _xe,jsxs as Rxe}from"react/jsx-runtime";var UD=p(()=>{"use strict";ae()});function $S(t,e=""){return t.parallelWhileBusy===!0||t.id==="ask"?!0:t.parallelWhileBusyWith?t.parallelWhileBusyWith(e):!1}function GJ(t){return t.trim()===""}function zJ(t){let e=t.trim().split(/\s+/)[0]?.toLowerCase()??"";return e===""?!0:e==="list"||e==="search"}function th(t){return t.kind==="command"?t.command.name:`${t.parent.name} ${t.sub.name}`}function FS(t){let e=t.kind==="command"?t.command:t.parent;return e.source==="user"?"usu\xE1rio":e.section??"sess\xE3o"}function BS(t){return t.kind==="command"?t.command.summary:t.sub.summary}function YJ(t,e){let o=th(t),r=(t.kind==="subcommand"?4:2)+Ee(`/${o}`)+Math.max(1,18-o.length)+Ee(BS(t));return Math.max(1,Math.ceil(r/e))}function eh(t,e){let o=e!==void 0&&e>0?Math.max(1,Math.ceil(KJ/e)):1,n=null;for(let r of t){let s=FS(r);s!==n&&(o+=1),n=s,o+=e!==void 0&&e>0?YJ(r,e):1}return o}function jD(t,e,o,n){if(eh(t,n)<=o)return{slice:t,hiddenAbove:0,hiddenBelow:0};let r=Number.isFinite(e)?Math.max(0,Math.min(e,t.length-1)):0,s=(d,m)=>eh(t.slice(d,m),n)+(d>0?1:0)+(m<t.length?1:0),i=r,a=r+1,c=!0,l=!0;for(;l;)l=!1,c?i>0&&s(i-1,a)<=o?(i--,l=!0):a<t.length&&s(i,a+1)<=o&&(a++,l=!0):a<t.length&&s(i,a+1)<=o?(a++,l=!0):i>0&&s(i-1,a)<=o&&(i--,l=!0),c=!c;for(;i>0&&s(i-1,a)<=o;)i--;for(;a<t.length&&s(i,a+1)<=o;)a++;return{slice:t.slice(i,a),hiddenAbove:i,hiddenBelow:t.length-a}}function oh(t){return t.kind==="subcommand"?`/${t.parent.name} ${t.sub.name} `:t.command.subcommands&&t.command.subcommands.length>0?`/${t.command.name} `:`/${t.command.name}`}function US(t){return t.kind==="subcommand"&&t.sub.terminal===!0}function HD(t){return`/${t.parent.name} ${t.sub.name}`}function qD(t,e){let o=!1,n=t.map(r=>{if(r.summaryKey===void 0)return r;let s=e(r.summaryKey);return s===r.summary?r:(o=!0,{...r,summary:s})});return o?n:t}function XJ(t=[],e=Fo){return[...[...e,...t].map(n=>({id:`cmd:${n.source}:${n.name}`,label:`/${n.name}`,description:n.summary,action:{kind:"command",command:n}})),...VJ]}function WD(t,e=[],o=Fo){let n=XJ(e,o),r=t.trim();if(r==="")return n.map(i=>({...i,score:0,matched:[]}));let s=[];for(let i of n){let a=_d(r,i.label),c=_d(r,i.description);if(!a&&!c)continue;let l=a?a.score:-1/0,d=c?c.score-5:-1/0,m=Math.max(l,d);s.push({...i,score:m,matched:a?a.matched:[]})}return s.sort((i,a)=>a.score-i.score||i.label.length-a.label.length||i.label.localeCompare(a.label)),s}function Ya(t,e=[]){let o=t.trim();if(o.startsWith("!")){let d=o.slice(1).trim();return d===""?{kind:"goal",text:""}:{kind:"bang",command:d}}if(!o.startsWith("/"))return{kind:"goal",text:o};let n=o.slice(1),r=n.search(/\s/),s=(r===-1?n:n.slice(0,r)).toLowerCase(),i=s==="view"?"split":s==="cockpit"?"fullscreen":s,a=r===-1?"":n.slice(r+1).trim(),l=[...Fo,...e].find(d=>d.name===i);return l?{kind:"command",command:l,args:a}:{kind:"unknown-command",name:i}}function jS(t,e=[]){if(!t.startsWith("/"))return!1;let o=t.slice(1);if(!/\s/.test(o))return!0;let n=o.search(/\s/),r=o.slice(0,n).toLowerCase(),s=o.slice(n).replace(/^\s+/,""),a=[...Fo,...e].find(c=>c.name===r);return!a?.subcommands||a.subcommands.length===0?!1:!/\s/.test(s)}function JJ(t=[],e=Fo){let o=[];for(let n of[...e,...t]){o.push({kind:"command",command:n});for(let r of n.subcommands??[])o.push({kind:"subcommand",parent:n,sub:r})}return o}function GD(t,e=[],o=Fo){let n=t.trim().replace(/\s+/g," ").toLowerCase(),r=JJ(e,o);if(n==="")return r;let s=c=>th(c).toLowerCase(),i=r.filter(c=>s(c).startsWith(n)),a=r.filter(c=>!s(c).startsWith(n)&&s(c).includes(n));return[...i,...a]}function zD(t=Fo){let e=t.filter(o=>o.summary.trim()!=="").map(o=>{let n=` /${o.name} \u2014 ${o.summary}`;return o.usage?`${n}
608
+ `).map((n,r)=>je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),so(f,{name:"fg",children:n})]},`q-${r}`)),so(f,{name:"accent",children:e.box.vertical}),o.kind==="text"?so(FJ,{theme:e,draft:t.draft??""}):so(DJ,{...t}),je(f,{name:"accent",children:[e.box.teeLeft,e.box.horizontal.repeat(LS),e.box.teeRight]}),je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),so(f,{name:"fgDim",children:BJ(o,t.editing===!0)})]}),je(f,{name:"accent",children:[e.box.bottomLeft,e.box.horizontal.repeat(LS),e.box.bottomRight]})]})}function DJ(t){let e=ne(),{spec:o}=t,n=o.options??[],r=o.kind==="multi",s=t.selected??new Set;return je(Sn,{flexDirection:"column",children:[n.map((i,a)=>{let c=t.cursor===a,l=r?s.has(a)?"[x]":"[ ]":c?"(\u2022)":"( )";return je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),je(f,{name:c?"accent":"fgDim",children:[c?"\u203A":" "," "]}),je(f,{name:c?"accent":"fgDim",children:[l," "]}),so(f,{name:c?"accent":"fg",children:i.label}),i.description!==void 0&&je(f,{name:"fgDim",children:[" \u2014 ",i.description]})]},`opt-${a}`)}),NJ(o)&&so($J,{theme:e,onCursor:t.cursor===Wn,editing:t.editing===!0&&t.cursor===Wn,draft:t.draft??""})]})}function $J(t){let{theme:e,onCursor:o,editing:n,draft:r}=t;return je(Sn,{flexDirection:"column",children:[je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),je(f,{name:o?"accent":"fgDim",children:[o?"\u203A":" "," "]}),so(f,{name:o?"accent":"fg",children:"Outro (resposta livre)"})]}),n&&je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),so(f,{name:"fg",children:r}),so(f,{name:"accent",children:e.glyph("cursor")})]})]})}function FJ(t){let{theme:e,draft:o}=t;return je(Sn,{children:[je(f,{name:"accent",children:[e.box.vertical," "]}),je(f,{name:"depth",children:[e.glyph("prompt")," "]}),so(f,{name:"fg",children:o}),so(f,{name:"accent",children:e.glyph("cursor")})]})}function BJ(t,e){return e?"enter confirma \xB7 esc cancela a digita\xE7\xE3o":t.kind==="text"?"digite a resposta \xB7 enter confirma \xB7 esc cancela":t.kind==="multi"?"\u2191\u2193 navega \xB7 espa\xE7o marca \xB7 enter confirma \xB7 esc cancela":"\u2191\u2193 navega \xB7 enter escolhe \xB7 esc cancela"}var Wn,LS,IJ,DD=p(()=>{"use strict";ae();Wn=-1,LS=42,IJ=13});import"react";import{Box as tu}from"ink";import{jsx as Zp,jsxs as Qo}from"react/jsx-runtime";function IS(t){let e=ne(),o=t.backend==="local"?"provider local indispon\xEDvel":"broker indispon\xEDvel",n=t.retrying?"tentando de novo":t.headline??o,r=t.retrying?"esc cancelar":"r tentar agora \xB7 esc cancelar";return Qo(tu,{flexDirection:"column",paddingLeft:4,children:[Qo(tu,{children:[Qo(f,{name:"danger",children:[e.box.topLeft," "]}),Zp(P,{name:"broker",role:"depth"}),Qo(f,{name:"danger",children:[" ",n," ",e.box.horizontal.repeat(4)," "]}),Zp(P,{name:"err",role:"danger"})]}),Qo(tu,{children:[Qo(f,{name:"danger",children:[e.box.vertical," "]}),Zp(f,{name:"fg",children:t.message})]}),(t.status!==void 0||t.attempt!==void 0||t.retryInSeconds!==void 0)&&Qo(tu,{children:[Qo(f,{name:"danger",children:[e.box.vertical," "]}),Qo(f,{name:"fgDim",children:[t.status!==void 0?`${t.status} \xB7 `:"",t.retryInSeconds!==void 0?`tentando de novo em ${t.retryInSeconds}s `:"",t.attempt!==void 0&&t.maxAttempts!==void 0?`(${t.attempt}/${t.maxAttempts})`:""]})]}),Qo(tu,{children:[Qo(f,{name:"danger",children:[e.box.vertical," "]}),Zp(f,{name:"fgDim",children:r})]}),Qo(f,{name:"danger",children:[e.box.bottomLeft,e.box.horizontal.repeat(40)]})]})}var $D=p(()=>{"use strict";ae()});import"react";import{Box as ms,Text as UJ}from"ink";import{jsx as Gn,jsxs as vt}from"react/jsx-runtime";function jJ(t){return t>=1e6?`${(t/1e6).toFixed(1).replace(/\.0$/,"")}M`:t>=1e3?`${Math.round(t/1e3)}k`:String(t)}function NS(t){let e=ne();return vt(ms,{flexDirection:"column",paddingLeft:2,children:[vt(ms,{children:[vt(f,{name:"accent",children:[e.box.topLeft," "]}),Gn(P,{name:"clock",role:"accent"}),vt(f,{name:"accent",children:[" teto da sess\xE3o ",e.box.horizontal.repeat(6)," pausado"]})]}),vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(f,{name:"fg",children:t.reason})]}),t.budgetPct!==void 0&&vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(P,{name:"clock",role:"accent"}),vt(f,{name:"accent",children:[" ",t.budgetPct,"% do teto da sess\xE3o"]}),t.maxTokens!==void 0&&vt(f,{name:"fgDim",children:[" (teto: ",jJ(t.maxTokens)," tokens)"]})]}),vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(f,{name:"fgDim",children:"o agente pausou para voc\xEA decidir."})]}),vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(P,{name:"window",role:"fgDim"}),vt(f,{name:"fgDim",children:[" janela: ",t.windowPct,"% usada"]})]}),t.canCompact&&vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(f,{name:"accent",children:"[k] compactar"}),Gn(f,{name:"fgDim",children:" resume a conversa e continua (libera a janela)"})]}),vt(ms,{children:[vt(f,{name:"accent",children:[e.box.vertical," "]}),Gn(f,{name:"accent",children:"[c] continuar (+50 itera\xE7\xF5es)"}),Gn(UJ,{children:" "}),Gn(f,{name:"fgDim",children:"[n] encerrar"})]}),vt(f,{name:"accent",children:[e.box.bottomLeft,e.box.horizontal.repeat(42)]})]})}var FD=p(()=>{"use strict";ae()});import"react";import{Box as wi,Text as HJ}from"ink";import{Fragment as WJ,jsx as zn,jsxs as Vt}from"react/jsx-runtime";function qJ(t,e,o){switch(t){case"same-tool-call":return`o agente repetiu a tool "${o}" ${e}\xD7 sem avan\xE7ar.`;case"same-tool-error":return`a mesma falha se repetiu ${e}\xD7 seguidas (${o}).`;case"empty-turns":return`o agente respondeu vazio ${e}\xD7 seguidas (sem texto nem a\xE7\xE3o).`;case"no-progress":return`${e} itera\xE7\xF5es sem avan\xE7o real (nenhum arquivo/edi\xE7\xE3o/comando novo).`}}function DS(t){let e=ne(),o=qJ(t.kind,t.count,t.sample);return Vt(wi,{flexDirection:"column",paddingLeft:2,children:[Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.topLeft," "]}),zn(P,{name:"clock",role:"accent"}),Vt(f,{name:"accent",children:[" parece travado ",e.box.horizontal.repeat(6)," pausado"]})]}),Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"fg",children:o})]}),t.redirecting?Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"accent",children:"[r] "}),zn(f,{name:"fgDim",children:"digite a nova instru\xE7\xE3o e tecle Enter (esc cancela)."})]}):Vt(WJ,{children:[Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"fgDim",children:"o agente pausou para voc\xEA decidir o rumo."})]}),Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"accent",children:"[r] redirecionar"}),zn(f,{name:"fgDim",children:" (dar uma nova instru\xE7\xE3o)"})]}),Vt(wi,{children:[Vt(f,{name:"accent",children:[e.box.vertical," "]}),zn(f,{name:"accent",children:"[c] continuar mesmo assim"}),zn(HJ,{children:" "}),zn(f,{name:"fgDim",children:"[n] encerrar"})]})]}),Vt(f,{name:"accent",children:[e.box.bottomLeft,e.box.horizontal.repeat(42)]})]})}var BD=p(()=>{"use strict";ae()});import"react";import{Box as Txe}from"ink";import{jsx as Cxe,jsxs as Oxe}from"react/jsx-runtime";var UD=p(()=>{"use strict";ae()});function $S(t,e=""){return t.parallelWhileBusy===!0||t.id==="ask"?!0:t.parallelWhileBusyWith?t.parallelWhileBusyWith(e):!1}function GJ(t){return t.trim()===""}function zJ(t){let e=t.trim().split(/\s+/)[0]?.toLowerCase()??"";return e===""?!0:e==="list"||e==="search"}function th(t){return t.kind==="command"?t.command.name:`${t.parent.name} ${t.sub.name}`}function FS(t){let e=t.kind==="command"?t.command:t.parent;return e.source==="user"?"usu\xE1rio":e.section??"sess\xE3o"}function BS(t){return t.kind==="command"?t.command.summary:t.sub.summary}function YJ(t,e){let o=th(t),r=(t.kind==="subcommand"?4:2)+Ee(`/${o}`)+Math.max(1,18-o.length)+Ee(BS(t));return Math.max(1,Math.ceil(r/e))}function eh(t,e){let o=e!==void 0&&e>0?Math.max(1,Math.ceil(KJ/e)):1,n=null;for(let r of t){let s=FS(r);s!==n&&(o+=1),n=s,o+=e!==void 0&&e>0?YJ(r,e):1}return o}function jD(t,e,o,n){if(eh(t,n)<=o)return{slice:t,hiddenAbove:0,hiddenBelow:0};let r=Number.isFinite(e)?Math.max(0,Math.min(e,t.length-1)):0,s=(d,m)=>eh(t.slice(d,m),n)+(d>0?1:0)+(m<t.length?1:0),i=r,a=r+1,c=!0,l=!0;for(;l;)l=!1,c?i>0&&s(i-1,a)<=o?(i--,l=!0):a<t.length&&s(i,a+1)<=o&&(a++,l=!0):a<t.length&&s(i,a+1)<=o?(a++,l=!0):i>0&&s(i-1,a)<=o&&(i--,l=!0),c=!c;for(;i>0&&s(i-1,a)<=o;)i--;for(;a<t.length&&s(i,a+1)<=o;)a++;return{slice:t.slice(i,a),hiddenAbove:i,hiddenBelow:t.length-a}}function oh(t){return t.kind==="subcommand"?`/${t.parent.name} ${t.sub.name} `:t.command.subcommands&&t.command.subcommands.length>0?`/${t.command.name} `:`/${t.command.name}`}function US(t){return t.kind==="subcommand"&&t.sub.terminal===!0}function HD(t){return`/${t.parent.name} ${t.sub.name}`}function qD(t,e){let o=!1,n=t.map(r=>{if(r.summaryKey===void 0)return r;let s=e(r.summaryKey);return s===r.summary?r:(o=!0,{...r,summary:s})});return o?n:t}function XJ(t=[],e=Fo){return[...[...e,...t].map(n=>({id:`cmd:${n.source}:${n.name}`,label:`/${n.name}`,description:n.summary,action:{kind:"command",command:n}})),...VJ]}function WD(t,e=[],o=Fo){let n=XJ(e,o),r=t.trim();if(r==="")return n.map(i=>({...i,score:0,matched:[]}));let s=[];for(let i of n){let a=_d(r,i.label),c=_d(r,i.description);if(!a&&!c)continue;let l=a?a.score:-1/0,d=c?c.score-5:-1/0,m=Math.max(l,d);s.push({...i,score:m,matched:a?a.matched:[]})}return s.sort((i,a)=>a.score-i.score||i.label.length-a.label.length||i.label.localeCompare(a.label)),s}function Ya(t,e=[]){let o=t.trim();if(o.startsWith("!")){let d=o.slice(1).trim();return d===""?{kind:"goal",text:""}:{kind:"bang",command:d}}if(!o.startsWith("/"))return{kind:"goal",text:o};let n=o.slice(1),r=n.search(/\s/),s=(r===-1?n:n.slice(0,r)).toLowerCase(),i=s==="view"?"split":s==="cockpit"?"fullscreen":s,a=r===-1?"":n.slice(r+1).trim(),l=[...Fo,...e].find(d=>d.name===i);return l?{kind:"command",command:l,args:a}:{kind:"unknown-command",name:i}}function jS(t,e=[]){if(!t.startsWith("/"))return!1;let o=t.slice(1);if(!/\s/.test(o))return!0;let n=o.search(/\s/),r=o.slice(0,n).toLowerCase(),s=o.slice(n).replace(/^\s+/,""),a=[...Fo,...e].find(c=>c.name===r);return!a?.subcommands||a.subcommands.length===0?!1:!/\s/.test(s)}function JJ(t=[],e=Fo){let o=[];for(let n of[...e,...t]){o.push({kind:"command",command:n});for(let r of n.subcommands??[])o.push({kind:"subcommand",parent:n,sub:r})}return o}function GD(t,e=[],o=Fo){let n=t.trim().replace(/\s+/g," ").toLowerCase(),r=JJ(e,o);if(n==="")return r;let s=c=>th(c).toLowerCase(),i=r.filter(c=>s(c).startsWith(n)),a=r.filter(c=>!s(c).startsWith(n)&&s(c).includes(n));return[...i,...a]}function zD(t=Fo){let e=t.filter(o=>o.summary.trim()!=="").map(o=>{let n=` /${o.name} \u2014 ${o.summary}`;return o.usage?`${n}
609
609
  uso: /${o.name} ${o.usage}`:n});if(e.length!==0)return[QJ,"Quando o usu\xE1rio pede algo que um destes comandos resolve \u2014 ex.: AGENDAR/REPETIR uma","tarefa em loop recorrente \u21D2 `/cycle`; checar a sa\xFAde da sess\xE3o \u21D2 `/doctor`; liberar",'contexto \u21D2 `/compact` \u2014 RECOMENDE o comando ao usu\xE1rio. N\xC3O diga "n\xE3o tenho como" nem',"sugira ferramentas externas (cron do SO, Windows Task Scheduler) quando existe um","comando nativo que resolve. Voc\xEA N\xC3O digita estes comandos (n\xE3o s\xE3o suas ferramentas);","quem os digita \xE9 o usu\xE1rio.",...e].join(`
610
610
  `)}var KJ,Fo,VJ,QJ,Va=p(()=>{"use strict";gx();oo();KJ=56;Fo=[{name:"help",summary:"mostra esta lista",summaryKey:"cmd.help",source:"native",id:"help",section:"sess\xE3o",parallelWhileBusy:!0},{name:"login",summary:"entrar na conta",summaryKey:"cmd.login",source:"native",id:"login",section:"conta"},{name:"logout",summary:"sair da conta",summaryKey:"cmd.logout",source:"native",id:"logout",section:"conta"},{name:"whoami",summary:"conta, org e escopos atuais",summaryKey:"cmd.whoami",source:"native",id:"whoami",section:"conta",parallelWhileBusy:!0},{name:"doctor",summary:"diagn\xF3stico da instala\xE7\xE3o \xB7 credencial, broker, MCP, config (read-only)",summaryKey:"cmd.doctor",source:"native",id:"doctor",section:"conta",parallelWhileBusy:!0},{name:"model",summary:"trocar o tier",summaryKey:"cmd.model",source:"native",id:"model",section:"sess\xE3o"},{name:"provider",summary:"seta o provider do modelo Custom",summaryKey:"cmd.provider",source:"native",id:"provider",section:"sess\xE3o"},{name:"effort",summary:"seta o reasoning_effort (low/medium/high/custom) \xB7 passthrough \u226432 chars",summaryKey:"cmd.effort",source:"native",id:"effort",section:"sess\xE3o",parallelWhileBusyWith:GJ},{name:"theme",summary:"trocar o tema (dark/light) \xB7 auto-detecta no boot",summaryKey:"cmd.theme",source:"native",id:"theme",section:"sess\xE3o"},{name:"lang",summary:"trocar o idioma (pt-BR/en) \xB7 auto-detecta no boot",summaryKey:"cmd.lang",source:"native",id:"lang",section:"sess\xE3o"},{name:"usage",summary:"tokens e janela desta sess\xE3o",summaryKey:"cmd.usage",source:"native",id:"usage",section:"sess\xE3o",parallelWhileBusy:!0},{name:"rename",summary:"d\xE1 um nome + cor de identifica\xE7\xE3o \xE0 sess\xE3o \xB7 \u25CFnome no composer",summaryKey:"cmd.rename",source:"native",id:"rename",section:"sess\xE3o"},{name:"history",summary:"navega e RETOMA uma sess\xE3o anterior \xB7 sem sair do aluy",summaryKey:"cmd.history",source:"native",id:"history",section:"sess\xE3o"},{name:"ask",summary:"pergunta PARALELA (read-only) sem parar o trabalho em curso",source:"native",id:"ask",section:"sess\xE3o",parallelWhileBusy:!0},{name:"notify",summary:"liga/desliga o sino de aten\xE7\xE3o (on/off)",summaryKey:"cmd.notify",source:"native",id:"notify",section:"sess\xE3o"},{name:"split",summary:"liga/desliga o painel de LOG ao lado do chat (Ctrl+L \xB7 /view)",source:"native",id:"split",section:"sess\xE3o"},{name:"fullscreen",summary:"modo cockpit (tela cheia, alt-screen)",summaryKey:"cmd.fullscreen",source:"native",id:"fullscreen",section:"sess\xE3o"},{name:"undo",summary:"desfaz a \xFAltima edi\xE7\xE3o de arquivo do agente",summaryKey:"cmd.undo",source:"native",id:"undo",section:"workspace"},{name:"redo",summary:"refaz a \xFAltima edi\xE7\xE3o desfeita",summaryKey:"cmd.redo",source:"native",id:"redo",section:"workspace"},{name:"rewind",summary:"volta a um ponto da sess\xE3o (c\xF3digo e/ou conversa) \xB7 Esc Esc",summaryKey:"cmd.rewind",source:"native",id:"rewind",section:"workspace"},{name:"clear",summary:"limpa a sess\xE3o (contexto) \xB7 full tamb\xE9m APAGA a mem\xF3ria do agente",summaryKey:"cmd.clear",source:"native",id:"clear",section:"sess\xE3o",subcommands:[{name:"full",summary:"limpa a sess\xE3o E APAGA a mem\xF3ria (global+projeto) \xB7 confirma",usage:"full",terminal:!0},{name:"memory",summary:"APAGA s\xF3 a mem\xF3ria do agente (global+projeto) \xB7 confirma",usage:"memory",terminal:!0}]},{name:"compact",summary:"compacta o contexto (resume a conversa e continua)",summaryKey:"cmd.compact",source:"native",id:"compact",section:"sess\xE3o"},{name:"cycle",summary:"roda uma tarefa em ciclos \xB7 com tetos duros e parada (anti-runaway)",summaryKey:"cmd.cycle",source:"native",id:"cycle",section:"sess\xE3o",usage:'<intervalo> "<tarefa>"',subcommands:[{name:"pause",summary:"pausa o /cycle em execu\xE7\xE3o (sem matar; Esc ainda para)",usage:"pause",terminal:!0},{name:"resume",summary:"retoma um /cycle pausado",usage:"resume",terminal:!0},{name:"edit",summary:"reconfigura o /cycle ativo \xB7 vale na pr\xF3xima itera\xE7\xE3o",usage:'edit ["<tarefa>"] [<intervalo>] [--max-iter N]'},{name:"status",summary:"mostra o /cycle ativo (config corrente \xB7 pausado?)",usage:"status",terminal:!0},{name:"stop",summary:"para/encerra o /cycle em execu\xE7\xE3o (= Esc)",usage:"stop",terminal:!0}]},{name:"cron",summary:"agendamento PERSISTENTE \xB7 lista/gerencia os jobs (mesmo motor do aluy cron)",source:"native",id:"cron",section:"sess\xE3o",usage:'list \xB7 add <quando> "<tarefa>" \xB7 edit/enable/disable/rm <id>',subcommands:[{name:"list",summary:"lista os jobs (id \xB7 on/off \xB7 schedule \xB7 tarefa)",usage:"list",terminal:!0},{name:"add",summary:"agenda um job novo (cron de 5 campos)",usage:'add <quando> "<tarefa>" [--yolo]'},{name:"edit",summary:"reconfigura um job (preserva id)",usage:'edit <id> [--quando "<cron>"] [--tarefa "<txt>"] [--yolo|--no-yolo]'},{name:"enable",summary:"reativa um job desabilitado",usage:"enable <id>"},{name:"disable",summary:"desabilita SEM excluir (sai do agendador)",usage:"disable <id>"},{name:"rm",summary:"remove um job de vez",usage:"rm <id>"}]},{name:"permissions",summary:"painel \xB7 modo, grants e tools seguras (sempre-ask travado)",summaryKey:"cmd.permissions",source:"native",id:"permissions",section:"workspace"},{name:"tools",summary:"invent\xE1rio unificado das ferramentas \xB7 nativas, MCP, permiss\xE3o (read-only)",summaryKey:"cmd.tools",source:"native",id:"tools",section:"workspace",parallelWhileBusy:!0},{name:"add-dir",summary:"autoriza um diret\xF3rio EXTRA p/ o agente (sess\xE3o) \xB7 sem args lista",summaryKey:"cmd.addDir",source:"native",id:"add-dir",section:"workspace"},{name:"init",summary:"cria um AGENT.md neste projeto",summaryKey:"cmd.init",source:"native",id:"init",section:"workspace"},{name:"memory",summary:"v\xEA/edita/esquece/fixa a mem\xF3ria do agente (global + projeto)",summaryKey:"cmd.memory",source:"native",id:"memory",section:"workspace",subcommands:[{name:"list",summary:"lista a mem\xF3ria (global + projeto)",usage:"list"},{name:"forget",summary:"remove um fato pelo id",usage:"forget <id>"},{name:"edit",summary:"corrige o texto de um fato",usage:"edit <id> <texto>"},{name:"pin",summary:"fixa um fato (reten\xE7\xE3o)",usage:"pin <id>"},{name:"unpin",summary:"desfixa um fato",usage:"unpin <id>"}]},{name:"todo",summary:"v\xEA/gerencia o backlog de tarefas anotadas (done/clear)",summaryKey:"cmd.todo",source:"native",id:"todo",section:"workspace",subcommands:[{name:"list",summary:"lista o backlog (pendentes + feitos)",usage:"list"},{name:"done",summary:"marca um item como conclu\xEDdo",usage:"done <id>"},{name:"clear",summary:"remove os itens j\xE1 feitos",usage:"clear",terminal:!0}]},{name:"mcp",summary:"lista/gerencia servers MCP (add/remove/disable/enable \xB7 search <termo>)",summaryKey:"cmd.mcp",source:"native",id:"mcp",section:"workspace",parallelWhileBusyWith:zJ,subcommands:[{name:"search",summary:"busca no registro oficial aberto",usage:"search <termo>"},{name:"add",summary:"adiciona um server local (stdio)",usage:"add <nome> -- <cmd> [args...]"},{name:"list",summary:"lista os servers de todas as fontes",usage:"list"},{name:"remove",summary:"remove um server gerenciado pelo aluy",usage:"remove <nome>"},{name:"disable",summary:"desativa um server sem desinstalar",usage:"disable <nome>"},{name:"enable",summary:"reativa um server desativado",usage:"enable <nome>"},{name:"reconnect",summary:'re-sobe + re-handshake os servers (recupera "Not connected")',usage:"reconnect [all|<nome>]"},{name:"reload",summary:"re-l\xEA o ~/.aluy/mcp.json + reconecta (aplica edi\xE7\xF5es da config)",usage:"reload [all|<nome>]"}]},{name:"agents",summary:"lista os agentes .md mapeados (global + projeto \xB7 v\xE1lidos + rejeitados)",source:"native",id:"agents",section:"workspace",parallelWhileBusy:!0},{name:"skills",summary:"lista as skills SKILL.md mapeadas (global + projeto \xB7 v\xE1lidas + rejeitadas)",source:"native",id:"skills",section:"workspace",parallelWhileBusy:!0},{name:"workflows",summary:"fluxos de atividades que coordenam o agente \u2014 lista, executa e ativa",summaryKey:"cmd.workflows",source:"native",id:"workflows",section:"workspace",subcommands:[{name:"run",summary:"executa as atividades do workflow em sequ\xEAncia",usage:"run <nome>"},{name:"use",summary:"ativa o modo de workflow \u2014 submiss\xF5es seguem o fluxo",usage:"use <nome>"}],parallelWhileBusy:!0},{name:"rooms",summary:"salas entre agentes \u2014 lista, cria, l\xEA e OBSERVA AO VIVO a conversa da frota",source:"native",id:"rooms",section:"workspace",subcommands:[{name:"list",summary:"lista as salas (c\xF3digo \xB7 msgs \xB7 atividade \xB7 quem)",usage:"list"},{name:"new",summary:"cria uma sala e mostra o c\xF3digo",usage:"new"},{name:"read",summary:"snapshot da conversa de uma sala",usage:"read <c\xF3digo>"},{name:"watch",summary:"observa a conversa AO VIVO (poll at\xE9 2min)",usage:"watch <c\xF3digo>"}]},{name:"subagent",summary:"fala 1:1 com um sub-agente (perfil .md) numa sub-sess\xE3o focada e cont\xEDnua",source:"native",id:"subagent",section:"workspace"},{name:"back",summary:"volta ao agente principal (sai do foco de /subagent)",source:"native",id:"back",section:"workspace"},{name:"quit",summary:"sair do aluy",summaryKey:"cmd.quit",source:"native",id:"quit",section:"sess\xE3o"}];VJ=[{id:"action:cycle-mode",label:"trocar modo",description:"cicla o modo da sess\xE3o (plan \u2192 normal \u2192 yolo) \xB7 tamb\xE9m no Tab",action:{kind:"action",actionId:"cycle-mode"}}];QJ="COMANDOS DA SESS\xC3O (o HUMANO os digita; voc\xEA os RECOMENDA, n\xE3o os invoca como ferramenta):"});import ZJ from"react";import{Box as Xa,Text as e5}from"ink";import{Fragment as o5,jsx as Zo,jsxs as fs}from"react/jsx-runtime";function t5(t){let e=t.sel?"accent":t.sub?"fgDim":"fg",o=t.query.trim().replace(/\s+/g," ").toLowerCase(),n=o?t.path.toLowerCase().indexOf(o):-1;if(n<0||o==="")return fs(f,{name:e,children:["/",t.path]});let r=t.path.slice(0,n),s=t.path.slice(n,n+o.length),i=t.path.slice(n+o.length);return fs(o5,{children:[fs(f,{name:e,children:["/",r]}),Zo(f,{name:"accent",children:s}),Zo(f,{name:e,children:i})]})}function nh(t){let e=t.query??"",o=t.maxRows!==void 0?jD(t.commands,t.selected,t.maxRows,t.columns):{slice:t.commands,hiddenAbove:0,hiddenBelow:0},n=t.selected-o.hiddenAbove,r=null;return fs(Xa,{flexDirection:"column",children:[Zo(Xa,{children:Zo(f,{name:"fgDim",children:"/ para comandos \xB7 \u2191\u2193 navega \xB7 enter executa \xB7 esc fecha"})}),o.hiddenAbove>0&&Zo(Xa,{children:fs(f,{name:"fgDim",children:[" \u2191 ",o.hiddenAbove," acima"]})}),o.slice.map((s,i)=>{let a=i===n,c=FS(s),l=c!==r?c:null;r=c;let d=th(s),m=s.kind==="subcommand",u=a?"\u203A ":m?" ":" ";return fs(ZJ.Fragment,{children:[l&&Zo(Xa,{children:Zo(f,{name:"fgDim",children:l==="usu\xE1rio"?"\u2500\u2500\u2500 seus comandos":l})}),fs(Xa,{children:[Zo(f,{name:a?"accent":"fgDim",children:u}),Zo(t5,{path:d,query:e,sel:a,sub:m}),Zo(e5,{children:" ".repeat(Math.max(1,18-d.length))}),Zo(f,{name:"fgDim",children:BS(s)})]})]},`${c}:${d}`)}),o.hiddenBelow>0&&Zo(Xa,{children:fs(f,{name:"fgDim",children:[" \u2193 ",o.hiddenBelow," mais (refine a busca)"]})})]})}var KD=p(()=>{"use strict";ae();Va()});import"react";import{Box as Ja,Text as n5}from"ink";import{Fragment as i5,jsx as Ao,jsxs as ou}from"react/jsx-runtime";function r5(t){let e=t.sel?"accent":"fg",o=new Set(t.matched);if(o.size===0)return Ao(f,{name:e,children:t.label});let n=[],r=0;for(;r<t.label.length;){let s=o.has(r),i=r;for(;i<t.label.length&&o.has(i)===s;)i++;n.push(Ao(f,{name:s?"accent":e,children:t.label.slice(r,i)},r)),r=i}return Ao(i5,{children:n})}function s5(t,e,o){if(t.length<=o)return{start:0,slice:t};let n=e-Math.floor(o/2);return n<0&&(n=0),n+o>t.length&&(n=t.length-o),{start:n,slice:t.slice(n,n+o)}}function rh(t){let{t:e}=ve(),o=t.maxRows??8,n=t.query??"",{start:r,slice:s}=s5(t.hits,t.selected,o),i=s.reduce((a,c)=>Math.max(a,c.label.length),0);return ou(Ja,{flexDirection:"column",children:[Ao(Ja,{children:Ao(f,{name:"fgDim",children:e("picker.palette.help")})}),ou(Ja,{children:[Ao(f,{name:"accent",children:"> "}),n===""?Ao(f,{name:"fgDim",children:e("picker.palette.search")}):Ao(f,{name:"fg",children:n})]}),t.hits.length===0?Ao(Ja,{children:ou(f,{name:"fgDim",children:[" ",e("picker.palette.empty",{query:n})]})}):s.map((a,c)=>{let d=r+c===t.selected;return ou(Ja,{children:[Ao(f,{name:d?"accent":"fgDim",children:d?"\u203A ":" "}),Ao(r5,{label:a.label,matched:a.matched,sel:d}),Ao(n5,{children:" ".repeat(Math.max(1,i-a.label.length+2))}),Ao(f,{name:"fgDim",children:a.description})]},a.id)}),t.hits.length>s.length&&Ao(Ja,{children:ou(f,{name:"fgDim",children:[" ",e("picker.palette.more",{count:t.hits.length-s.length})]})})]})}var YD=p(()=>{"use strict";ae();mt()});import"react";import{Box as nu}from"ink";import{Fragment as l5,jsx as Kn,jsxs as sh}from"react/jsx-runtime";function VD(t,e){if(e<=0||t.length<=e)return t;if(e<=1)return t.slice(0,e);let o="\u2026",n=e-o.length,r=Math.ceil(n/2),s=Math.floor(n/2);return t.slice(0,r)+o+t.slice(t.length-s)}function a5(t){let e=t.sel?"accent":"fg",o=new Set(t.matched);if(o.size===0)return Kn(f,{name:e,children:t.path});let n=[],r=0;for(;r<t.path.length;){let s=o.has(r),i=r;for(;i<t.path.length&&o.has(i)===s;)i++;let a=t.path.slice(r,i);n.push(Kn(f,{name:s?"accent":e,children:a},r)),r=i}return Kn(l5,{children:n})}function c5(t,e,o){if(t.length<=o)return{start:0,slice:t};let n=e-Math.floor(o/2);return n<0&&(n=0),n+o>t.length&&(n=t.length-o),{start:n,slice:t.slice(n,n+o)}}function HS(t){let{t:e}=ve(),o=t.columns??80,n=t.maxRows??8,r=Math.max(8,o-4),{start:s,slice:i}=c5(t.hits,t.selected,n);return sh(nu,{flexDirection:"column",children:[Kn(nu,{children:Kn(f,{name:"fgDim",children:e("picker.file.help")})}),t.hits.length===0?Kn(nu,{children:sh(f,{name:"fgDim",children:[" ",e("picker.file.empty",{query:t.query??""})]})}):i.map((a,c)=>{let d=s+c===t.selected,m=VD(a.path,r),u=m===a.path;return sh(nu,{children:[Kn(f,{name:d?"accent":"fgDim",children:d?"\u203A ":" "}),u?Kn(a5,{path:a.path,matched:a.matched,sel:d}):Kn(f,{name:d?"accent":"fg",children:m})]},a.path)}),t.hits.length>i.length&&Kn(nu,{children:sh(f,{name:"fgDim",children:[" ",e("picker.file.more",{count:t.hits.length-i.length})]})})]})}var XD=p(()=>{"use strict";ae();mt()});import"react";import{Box as De,Text as d5}from"ink";import{Fragment as qS,jsx as re,jsxs as He}from"react/jsx-runtime";function ih(t){let{t:e}=ve();if(t.effortStepOpen)return re(g5,{...t});if(t.customInputOpen)return re(m5,{...t});let o=t.tiers.length;return He(De,{flexDirection:"column",children:[re(De,{children:re(f,{name:"fgDim",children:e("picker.model.help")})}),t.loading?re(De,{children:He(f,{name:"fgDim",children:[" ",e("picker.model.loading")]})}):He(qS,{children:[t.tiers.map((n,r)=>{let s=r===t.selected,i=n.key===t.currentTier,a=bk(n),c=yk(n.costSignal);return He(De,{children:[re(f,{name:s?"accent":"fgDim",children:s?"\u203A ":" "}),re(f,{name:i?"accent":"fgDim",children:i?"\u25CF ":" "}),re(f,{name:s?"accent":"fg",children:n.displayName}),a!==""&&He(qS,{children:[re(f,{name:"fgDim",children:" \xB7 "}),re(f,{name:"depth",children:a})]}),He(f,{name:"fgDim",children:[" \xB7 ",c]})]},n.key)}),He(De,{children:[re(f,{name:t.selected===o?"accent":"fgDim",children:t.selected===o?"\u203A ":" "}),re(f,{name:t.currentTier==="custom"?"accent":"fgDim",children:t.currentTier==="custom"?"\u25CF ":" "}),re(f,{name:t.selected===o?"accent":"fg",children:"Custom"}),He(f,{name:"fgDim",children:[" \xB7 ",e("picker.model.customLine")]})]},"__custom__")]}),t.usingFallback===!0&&!t.loading&&re(De,{children:He(f,{name:"fgDim",children:[" ","\u25CD ",e("picker.model.fallback")]})})]})}function m5(t){return t.customBrowserAvailable===!0?re(h5,{...t}):re(b5,{...t})}function f5(t){return t.supportsTools===!0?re(f,{name:"accent",children:"\u2713 tools"}):t.supportsTools===!1?re(f,{name:"fgDim",children:"\u2014 tools"}):re(f,{name:"fgDim",children:"\xB7 tools?"})}function p5(t){let{model:e,highlighted:o}=t.row,n=[e.family,e.context].map(r=>r.trim()).filter(r=>r!=="");return He(De,{children:[re(f,{name:o?"accent":"fgDim",children:o?"\u203A ":" "}),re(f,{name:o?"accent":"fg",children:e.id}),n.length>0&&He(qS,{children:[re(f,{name:"fgDim",children:" "}),re(f,{name:"depth",children:n.join(" \xB7 ")})]}),re(d5,{children:" "}),re(f5,{supportsTools:e.supportsTools})]})}function h5(t){let{t:e}=ve(),o=t.customInput??"",n=t.customRows??[],r=t.customFilteredCount??0,s=t.customTotalCount??0,i=t.customToolsOnly===!0,a=t.customNoToolsWarning??null;return He(De,{flexDirection:"column",children:[re(De,{children:re(f,{name:"fgDim",children:e("picker.model.browseHelp")})}),He(De,{children:[re(f,{name:"accent",children:"filtro \u203A "}),re(f,{name:"fg",children:o}),re(f,{name:"accent",children:"\u258F"}),He(f,{name:"fgDim",children:[" ",e("picker.model.browseCount",{filtered:r,total:s}),i?e("picker.model.toolsOnlySuffix"):""]})]}),t.customHasMoreAbove===!0&&re(De,{children:He(f,{name:"fgDim",children:[" ",e("picker.model.moreAbove")]})}),n.length===0?re(De,{children:He(f,{name:"fgDim",children:[" ",e("picker.model.noFilterMatch")]})}):re(De,{flexDirection:"column",children:n.map(c=>re(p5,{row:c},c.model.id))}),t.customHasMoreBelow===!0&&re(De,{children:He(f,{name:"fgDim",children:[" ",e("picker.model.moreBelow")]})}),a!==null&&re(De,{children:He(f,{name:"accent",children:[" ",e("picker.model.noTools")]})})]})}function g5(t){let{t:e}=ve();if(t.effortCustomOpen===!0)return re(y5,{...t});let o=t.effortOptions??[],n=t.effortSelected??0,r=t.currentEffort;return He(De,{flexDirection:"column",children:[re(De,{children:re(f,{name:"fgDim",children:e("picker.effort.help")})}),o.map((s,i)=>{let a=i===n,c=s.kind==="level"&&s.value===r||s.kind==="keep"&&(r===void 0||r==="");return He(De,{children:[re(f,{name:a?"accent":"fgDim",children:a?"\u203A ":" "}),re(f,{name:c?"accent":"fgDim",children:c?"\u25CF ":" "}),re(f,{name:a?"accent":"fg",children:e(u5[s.id]??"picker.effort.keep")})]},s.id)})]})}function y5(t){let{t:e}=ve(),o=t.effortCustomInput??"",n=t.effortCustomWarn??null;return He(De,{flexDirection:"column",children:[re(De,{children:re(f,{name:"fgDim",children:e("picker.effort.customHelp")})}),He(De,{children:[re(f,{name:"accent",children:"\u203A "}),re(f,{name:"fg",children:o}),re(f,{name:"accent",children:"\u258F"})]}),n!==null&&re(De,{children:He(f,{name:"accent",children:[" ",e(n==="empty"?"picker.effort.warnEmpty":"picker.effort.warnTooLong")]})})]})}function b5(t){let{t:e}=ve(),o=t.customInput??"",n=t.customSuggestions??[],r=t.customWarnOutOfCatalog===!0;return He(De,{flexDirection:"column",children:[re(De,{children:re(f,{name:"fgDim",children:e("picker.model.freeHelp")})}),He(De,{children:[re(f,{name:"accent",children:"\u203A "}),re(f,{name:"fg",children:o}),re(f,{name:"accent",children:"\u258F"})]}),n.length>0&&re(De,{flexDirection:"column",children:n.map(s=>He(De,{children:[re(f,{name:"fgDim",children:" \u25CD "}),re(f,{name:"depth",children:s})]},s))}),r&&re(De,{children:He(f,{name:"accent",children:[" ",e("picker.model.outOfCatalog")]})})]})}var u5,JD=p(()=>{"use strict";ae();mt();Sr();u5={keep:"picker.effort.keep",low:"picker.effort.low",medium:"picker.effort.medium",high:"picker.effort.high",custom:"picker.effort.custom"}});function GS(t,e=WS){let o;try{o=t.list()}catch{return[]}return o.slice(0,Math.max(0,e))}function QD(t){let e=new Date(t),o=n=>String(n).padStart(2,"0");return`${e.getFullYear()}-${o(e.getMonth()+1)}-${o(e.getDate())} ${o(e.getHours())}:${o(e.getMinutes())}`}function v5(t){for(let e of t)if(e.kind==="you"){let o=e.text.replace(/\s+/g," ").trim();return o===""?void 0:o.length>60?o.slice(0,57)+"\u2026":o}}function ru(t,e){let o=Od(t.cwd,e??process.env.HOME??""),n=t.label?.trim();if(n)return`${n} \xB7 ${QD(t.updatedAt)} \xB7 ${o}`;let r=t.title??(t.blocks?v5(t.blocks):void 0)??"(sem objetivo)";return`${QD(t.updatedAt)} \xB7 ${o} \xB7 ${r}`}function k5(t,e){if(t.length===0)return["nenhuma sess\xE3o anterior."];let o=["sess\xF5es anteriores (retome com: /history <id>):",""];for(let n of t){o.push(` ${n.id}`);let r=n.label?.trim()?"\u25CF ":"";o.push(` ${r}${ru(n,e)}`)}return o}function ZD(t,e){e.switchSession({id:t.id,cwd:t.cwd,tier:t.tier}),e.resetContinuation?.(),e.clearScreen(),e.restoreBlocks(t.blocks);let o=si(t.blocks);o.length>0&&e.seedHistory(o),t.cwd.trim()!==""&&e.setSessionCwd?.(t.cwd)}function e$(t,e,o){let n=(t??"").trim();if(n!=="/history"&&!n.startsWith("/history "))return!1;let r=n==="/history"?"":n.slice(9).trim();if(r===""){let i=GS(o.store,o.limit);for(let a of k5(i,o.home))e.write(`[history] ${a}
611
611
  `);return!0}let s=o.store.load(r);return s?(o.resume(s),e.write(`[history] sess\xE3o retomada: ${r} (${ru(s,o.home)})
612
612
  `),!0):(e.write(`[history] sess\xE3o n\xE3o encontrada: ${r}
613
- `),!0)}var WS,ah=p(()=>{"use strict";Td();bn();WS=15});function Yn(t,e,o,n){if(n===void 0){if(t.length<=o)return{start:0,slice:t};let h=e-Math.floor(o/2);return h<0&&(h=0),h+o>t.length&&(h=t.length-o),{start:h,slice:t.slice(h,h+o)}}let r=t.length;if(r===0)return{start:0,slice:t};let s=h=>Math.max(1,Math.floor(n(t[h]))),i=0;for(let h=0;h<r;h+=1)i+=s(h);if(i<=o)return{start:0,slice:t};let a=Math.max(0,Math.min(e,r-1)),c=a,l=a+1,d=s(a),m=!0,u=!0;for(;u;){u=!1;let h=()=>c>0&&d+s(c-1)<=o?(c-=1,d+=s(c),!0):!1,g=()=>l<r&&d+s(l)<=o?(d+=s(l),l+=1,!0):!1;u=m?h()||g():g()||h(),m=!m}return{start:c,slice:t.slice(c,l)}}var Qa=p(()=>{"use strict"});import"react";import{Box as su,Text as t$}from"ink";import{Fragment as x5,jsx as ps,jsxs as iu}from"react/jsx-runtime";function ch(t){let e=ne(),{t:o}=ve(),n=e.glyph("sessionDot"),r=Math.max(1,t.maxRows??10),s=t.columns,i=s!==void 0&&s>0?l=>{let d=2+(l.label?.trim()?2:0)+Ee(ru(l,t.home));return Math.max(1,Math.ceil(d/s))}:void 0,{start:a,slice:c}=Yn(t.sessions,t.selected,r,i);return iu(su,{flexDirection:"column",children:[ps(su,{children:ps(f,{name:"fgDim",children:o("picker.history.help")})}),t.sessions.length===0?ps(su,{children:iu(f,{name:"fgDim",children:[" ",o("picker.history.empty")]})}):c.map((l,d)=>{let u=a+d===t.selected,h=l.label?.trim(),g=h?e.sessionColor(l.labelColor??h):void 0,b={};return g?.color!==void 0&&(b.color=g.color),g?.bold!==void 0&&(b.bold=g.bold),iu(su,{children:[ps(f,{name:u?"accent":"fgDim",children:u?"\u203A ":" "}),h&&iu(x5,{children:[ps(t$,{...b,children:n}),ps(t$,{children:" "})]}),ps(f,{name:u?"accent":"fg",children:ru(l,t.home)})]},l.id)}),t.sessions.length>c.length&&ps(su,{children:iu(f,{name:"fgDim",children:[" ",o("picker.history.more",{count:t.sessions.length-c.length})]})})]})}var o$=p(()=>{"use strict";ae();mt();ah();oo();Qa()});function n$(t,e=30){return[...t].reverse().slice(0,e)}function zS(t){let e=S5(t.ts);return`#${t.ordinal} \xB7 ${e} \xB7 ${t.label}`}function S5(t){let e=new Date(t),o=String(e.getHours()).padStart(2,"0"),n=String(e.getMinutes()).padStart(2,"0");return`${o}:${n}`}var lh,KS=p(()=>{"use strict";lh=["both","conversation","code"]});import"react";import{Box as en}from"ink";import{jsx as Xt,jsxs as Ai}from"react/jsx-runtime";function w5(t){switch(t){case"both":return"picker.rewind.action.both";case"conversation":return"picker.rewind.action.conversation";case"code":return"picker.rewind.action.code"}}function dh(t){let{t:e}=ve();if(t.phase==="list"){let o=Math.max(1,t.maxRows??10),n=t.columns,r=n!==void 0&&n>0?a=>Math.max(1,Math.ceil((2+Ee(zS(a)))/n)):void 0,{start:s,slice:i}=Yn(t.checkpoints,t.selected,o,r);return Ai(en,{flexDirection:"column",children:[Xt(en,{children:Xt(f,{name:"fgDim",children:e("picker.rewind.help")})}),t.checkpoints.length===0?Xt(en,{children:Ai(f,{name:"fgDim",children:[" ",e("picker.rewind.empty")]})}):i.map((a,c)=>{let l=s+c===t.selected;return Ai(en,{children:[Xt(f,{name:l?"accent":"fgDim",children:l?"\u203A ":" "}),Xt(f,{name:l?"accent":"fg",children:zS(a)})]},a.id)}),t.checkpoints.length>i.length&&Xt(en,{children:Ai(f,{name:"fgDim",children:[" ",e("picker.rewind.more",{count:t.checkpoints.length-i.length})]})})]})}return Ai(en,{flexDirection:"column",children:[Xt(en,{children:Xt(f,{name:"fgDim",children:e("picker.rewind.action.help")})}),t.target&&Xt(en,{children:Xt(f,{name:"fgDim",children:` \u2192 #${t.target.ordinal} \xB7 ${t.target.label}`})}),t.actions.map((o,n)=>{let r=n===t.selected;return Ai(en,{children:[Xt(f,{name:r?"accent":"fgDim",children:r?"\u203A ":" "}),Xt(f,{name:r?"accent":"fg",children:e(w5(o))})]},o)}),t.barrierWarnings&&t.barrierWarnings.length>0&&Ai(en,{flexDirection:"column",marginTop:1,children:[Xt(en,{children:Xt(f,{name:"accent",children:`\u26A0 ${e("picker.rewind.barrier.warn")}:`})}),t.barrierWarnings.map((o,n)=>Xt(en,{children:Xt(f,{name:"fgDim",children:` \xB7 ${o}`})},n))]})]})}var r$=p(()=>{"use strict";ae();mt();KS();oo();Qa()});import A5 from"react";import{Box as io,Text as E5}from"ink";import{Fragment as C5,jsx as $e,jsxs as Bo}from"react/jsx-runtime";function T5(t){switch(t){case"mode":return"modo de sessao \xB7 enter cicla plan \u2192 normal \u2192 yolo";case"safe-tool":return"tools seguras (leitura) \xB7 enter alterna allow \u21C4 ask";case"grant":return"liberados nesta sessao \xB7 enter REVOGA";case"locked":return"TRAVADO por seguranca \xB7 so via --yolo"}}function _5(t){let{row:e,sel:o}=t,n=$e(f,{name:o?"accent":"fgDim",children:o?"\u203A ":" "});switch(e.kind){case"mode":return Bo(io,{children:[n,$e(f,{name:o?"accent":"fg",children:"modo: "}),$e(f,{name:e.mode==="unsafe"?"danger":o?"accent":"fg",children:YS[e.mode]})]});case"safe-tool":return Bo(io,{children:[n,$e(f,{name:o?"accent":"fg",children:e.tool}),$e(f,{name:"fgDim",children:" = "}),$e(f,{name:e.decision==="allow"?"success":"fgDim",children:e.decision})]});case"grant":return Bo(io,{children:[n,$e(f,{name:"success",children:"\u25CF "}),$e(f,{name:o?"accent":"fg",children:e.grantKey}),$e(f,{name:"fgDim",children:" (enter revoga)"})]});case"locked":{let r=e.category.lock==="deny";return Bo(io,{flexDirection:"column",children:[Bo(io,{children:[n,$e(P,{name:"ask",role:"danger"}),$e(f,{name:"danger",children:" [travado] "}),$e(f,{name:o?"accent":"fg",children:e.category.label}),Bo(f,{name:"danger",children:[" \xB7 ",r?"deny (nem --yolo)":"sempre pergunta"]})]}),o&&$e(io,{paddingLeft:4,children:$e(f,{name:"fgDim",children:e.category.why})})]})}}}function VS(t){let e=Math.max(1,t.maxRows??14),o=t.columns,n=c=>{switch(c.kind){case"mode":return 8+Ee(YS[c.mode]);case"safe-tool":return 5+Ee(c.tool)+Ee(c.decision);case"grant":return 19+Ee(c.grantKey);case"locked":return 28+Ee(c.category.label)}},r=o!==void 0&&o>0?c=>Math.max(1,Math.ceil(n(c)/o)):void 0,{start:s,slice:i}=Yn(t.rows,t.selected,e,r),a=null;return Bo(io,{flexDirection:"column",children:[$e(io,{children:$e(f,{name:"fgDim",children:"permissoes \xB7 \u2191\u2193 navega \xB7 enter muda \xB7 esc fecha"})}),Bo(io,{children:[$e(f,{name:"fgDim",children:"modo atual: "}),$e(f,{name:t.mode==="unsafe"?"danger":"fg",children:YS[t.mode]})]}),t.rows.length===0?$e(io,{children:$e(f,{name:"fgDim",children:" nada a mostrar"})}):Bo(C5,{children:[s>0&&$e(io,{children:Bo(f,{name:"fgDim",children:[" \u2191 ",s," acima"]})}),i.map((c,l)=>{let d=s+l,m=c.kind!==a?T5(c.kind):null;return a=c.kind,Bo(A5.Fragment,{children:[m&&$e(io,{paddingTop:1,children:Bo(f,{name:"fgDim",children:["\u2500\u2500\u2500 ",m]})}),$e(_5,{row:c,sel:d===t.selected})]},R5(c,d))}),s+i.length<t.rows.length&&$e(io,{children:Bo(f,{name:"fgDim",children:[" \u2193 ",t.rows.length-(s+i.length)," abaixo"]})})]}),$e(io,{paddingTop:1,children:$e(E5,{children:" "})}),$e(io,{children:$e(f,{name:"fgDim",children:"o painel nao relaxa as categorias travadas \u2014 o unico bypass total e --yolo"})})]})}function R5(t,e){switch(t.kind){case"mode":return"mode";case"safe-tool":return`safe:${t.tool}`;case"grant":return`grant:${t.grantKey}`;case"locked":return`locked:${t.category.category}`;default:return`row:${e}`}}var YS,s$=p(()=>{"use strict";ae();Qa();oo();YS={plan:"PLAN (read-only)",normal:"NORMAL (catraca padrao)",unsafe:"YOLO (aprovacao DESLIGADA)"}});import"react";import{Box as XS}from"ink";import{jsx as au,jsxs as JS}from"react/jsx-runtime";function uh(t){let{t:e}=ve();return JS(XS,{flexDirection:"column",children:[au(XS,{children:au(f,{name:"fgDim",children:e("picker.theme.help")})}),t.themes.map((o,n)=>{let r=n===t.selected,s=o.name===t.currentTheme;return JS(XS,{children:[au(f,{name:r?"accent":"fgDim",children:r?"\u203A ":" "}),au(f,{name:s?"accent":"fgDim",children:s?"\u25CF ":" "}),au(f,{name:r?"accent":"fg",children:o.label}),JS(f,{name:"fgDim",children:[" \xB7 ",o.summary]})]},o.name)})]})}var i$=p(()=>{"use strict";ae();mt()});import"react";import{Box as QS}from"ink";import{jsx as cu,jsxs as ZS}from"react/jsx-runtime";function mh(t){let{t:e}=ve();return ZS(QS,{flexDirection:"column",children:[cu(QS,{children:cu(f,{name:"fgDim",children:e("picker.lang.help")})}),t.langs.map((o,n)=>{let r=n===t.selected,s=o.code===t.currentLang;return ZS(QS,{children:[cu(f,{name:r?"accent":"fgDim",children:r?"\u203A ":" "}),cu(f,{name:s?"accent":"fgDim",children:s?"\u25CF ":" "}),cu(f,{name:r?"accent":"fg",children:o.label}),ZS(f,{name:"fgDim",children:[" \xB7 ",o.summary]})]},o.code)})]})}var a$=p(()=>{"use strict";ae();mt()});import"react";import{Box as lu}from"ink";import{jsx as hs,jsxs as du}from"react/jsx-runtime";function ew(t){let{t:e}=ve(),o=Math.max(1,t.maxRows??10),n=t.columns,r=n!==void 0&&n>0?a=>{let c=4+Ee(`${a.label} \xB7 ${a.summary}`)+(a.isDefault?2+Ee(e("picker.provider.default")):0);return Math.max(1,Math.ceil(c/n))}:void 0,{start:s,slice:i}=Yn(t.providers,t.selected,o,r);return du(lu,{flexDirection:"column",children:[hs(lu,{children:hs(f,{name:"fgDim",children:e("picker.provider.help")})}),t.usingFallback===!0?hs(lu,{children:hs(f,{name:"fgDim",children:e("picker.provider.fallback")})}):null,i.map((a,c)=>{let l=s+c===t.selected,d=a.name===t.currentProvider;return du(lu,{children:[hs(f,{name:l?"accent":"fgDim",children:l?"\u203A ":" "}),hs(f,{name:d?"accent":"fgDim",children:d?"\u25CF ":" "}),hs(f,{name:l?"accent":"fg",children:a.label}),du(f,{name:"fgDim",children:[" \xB7 ",a.summary]}),a.isDefault?du(f,{name:"fgDim",children:[" \xB7 ",e("picker.provider.default")]}):null]},a.name)}),t.providers.length>i.length&&hs(lu,{children:du(f,{name:"fgDim",children:[" ",e("picker.provider.more",{count:t.providers.length-i.length})]})})]})}var c$=p(()=>{"use strict";ae();mt();oo();Qa()});import"react";import{Box as l$,Text as O5}from"ink";import{jsx as tw,jsxs as d$}from"react/jsx-runtime";function ow(t){if(t.chips.length===0)return null;let e=t.active??-1;return tw(l$,{flexWrap:"wrap",children:t.chips.map((o,n)=>{let r=n===e;return d$(l$,{marginRight:1,children:[d$(f,{name:r?"accent":"depth",children:[r?"\u203A ":"","@",o.path,o.truncated?"~":""]}),tw(O5,{children:" "}),tw(f,{name:"fgDim",children:"[\u232B]"})]},o.path)})})}var u$=p(()=>{"use strict";ae()});import"react";import{Box as uu,Text as m$}from"ink";import{jsx as wn,jsxs as gs}from"react/jsx-runtime";function nw(t){let e=ne(),{t:o}=ve(),n=t.columns??80,r=t.plan??"assinatura",s=e.glyph("wave").repeat(17);return gs(uu,{flexDirection:"column",paddingY:1,children:[wn(Tr,{columns:n}),wn(uu,{paddingTop:1,paddingLeft:2,children:wn(f,{name:"fgDim",children:o("boot.tagline")})}),gs(uu,{paddingLeft:2,children:[wn(f,{name:"accent",children:s}),t.version!==void 0&&gs(f,{name:"fgDim",children:[" v",t.version]})]}),gs(uu,{paddingLeft:2,children:[wn(P,{name:"window",role:"fgDim"}),gs(f,{name:"fgDim",children:[" ",r," \xB7 "]}),wn(f,{name:"fgDim",children:t.tier}),wn(m$,{children:" "}),wn(f,{name:"fgDim",children:"\xB7 "}),wn(P,{name:"broker",role:"depth"}),gs(f,{name:"depth",children:[" ",o("boot.broker")]})]}),t.status!==void 0&&gs(uu,{paddingTop:1,paddingLeft:2,children:[wn(ki,{frame:t.frame??0}),wn(m$,{children:" "}),gs(f,{name:"fgDim",children:[t.status,"\u2026"]})]})]})}var f$=p(()=>{"use strict";ae();mt();Qd();mi()});import"react";import{Box as p$}from"ink";import{jsx as rw,jsxs as sw}from"react/jsx-runtime";function iw(t){let e=t.suggestions??M5;return sw(p$,{flexDirection:"column",children:[rw(f,{name:"fg",children:t.name?`bom te ver de novo, ${t.name}.`:"bom te ver por aqui."}),rw(f,{name:"fgDim",children:"eu leio e edito arquivos e rodo comandos aqui \u2014 sempre te mostrando o efeito exato antes."}),sw(p$,{paddingTop:1,flexDirection:"column",children:[rw(f,{name:"fgDim",children:"experimente:"}),e.map((o,n)=>sw(f,{name:"fgDim",children:[" \xB7 ",o]},n))]})]})}var M5,h$=p(()=>{"use strict";ae();M5=['"explique a estrutura deste repo"','"rode os testes e resuma as falhas"',"/help para comandos \xB7 /login conta \xB7 /quit"]});import"react";import{jsx as Pwe}from"react/jsx-runtime";var g$=p(()=>{"use strict";ae()});import"react";import{Box as y$,Text as aw}from"ink";import{jsx as Ei,jsxs as fh}from"react/jsx-runtime";function v$(t,e){return!Number.isFinite(t)||!Number.isFinite(e)||e<=0?0:Math.max(0,Math.min(1,t/e))}function k$(t,e,o,n,r){let s=Math.max(1,Math.trunc(n)),i=Math.max(0,Math.min(1,t)),a=Math.round(i*s);i>0&&a===0&&(a=1),i<1&&a===s&&(a=s-1);let c=e.repeat(a),l=o.repeat(s-a);return r?{filled:c,rest:l}:{filled:`[${c}`,rest:`${l}]`}}function Za(t){let e=ne(),o=t.role??"accent";if(t.value!==void 0&&t.max!==void 0){let a=v$(t.value,t.max),c=Math.round(a*100),l=e.glyph("barFull"),d=e.glyph("barEmpty"),m=t.width??b$,{filled:u,rest:h}=k$(a,l,d,m,e.unicode);return fh(y$,{children:[Ei(f,{name:o,children:u}),Ei(f,{name:"fgDim",children:h}),Ei(aw,{children:" "}),fh(f,{name:o,children:[c,"%"]}),Ei(aw,{children:" "}),Ei(f,{name:"fgDim",children:t.label})]})}let r=e.spinnerFrames,s=e.animate?r[(t.frame??0)%r.length]:e.glyph("clock"),i=t.elapsedMs!==void 0?Oa(t.elapsedMs):void 0;return fh(y$,{children:[Ei(f,{name:o,children:s}),Ei(aw,{children:" "}),fh(f,{name:"fgDim",children:[t.label,"\u2026",i!==void 0?` ${i}`:""]})]})}var b$,cw=p(()=>{"use strict";ae();bn();b$=12});import"react";import{Box as L5}from"ink";import{jsx as P5,jsxs as x$}from"react/jsx-runtime";function lw(t){let{t:e}=ve(),o=(t.columns??80)<60,n=e(o?"banner.yolo.narrow":"banner.yolo");return x$(L5,{children:[P5(P,{name:"ask",role:"danger"}),x$(f,{name:"danger",children:[" ",n]})]})}var dw=p(()=>{"use strict";ae();mt()});import"react";import{Box as I5}from"ink";import{jsx as S$,jsxs as uw}from"react/jsx-runtime";function ph(t){let{t:e}=ve();if(t.mode==="unsafe")return S$(lw,{...t.columns!==void 0?{columns:t.columns}:{}});let o=N5[t.mode],n=(t.columns??80)<60;return uw(I5,{children:[S$(P,{name:o.glyph,role:o.role}),uw(f,{name:o.role,children:[" ",e("mode.label")," ",o.word]}),!n&&uw(f,{name:"fgDim",children:[" \xB7 ",e(o.caption)]})]})}var N5,w$=p(()=>{"use strict";ae();dw();mt();N5={plan:{glyph:"planMode",role:"depth",word:"PLAN",caption:"mode.plan.caption"},normal:{glyph:"normalMode",role:"fgDim",word:"NORMAL",caption:"mode.normal.caption"},unsafe:{glyph:"ask",role:"danger",word:"YOLO",caption:"mode.unsafe.caption"}}});import"react";import{jsx as A$}from"react/jsx-runtime";function mu(t){let{t:e}=ve();if(t.armedExit===!0)return A$(f,{name:"accent",children:e("hints.ctrlcAgain")});let o=e(D5[t.state]),n=t.elapsed!==void 0&&t.elapsed!==""&&$5.has(t.state);return A$(f,{name:"fgDim",children:n?`${o} \xB7 ${t.elapsed}`:o})}var D5,$5,E$=p(()=>{"use strict";ae();mt();D5={idle:"hints.idle",thinking:"hints.thinking",streaming:"hints.streaming",ask:"hints.ask","ask-destructive":"hints.askDestructive",slash:"hints.slash",palette:"hints.palette",budget:"hints.budget",error:"hints.error","work-subagents":"hints.workSubagents","idle-subagents":"hints.idleSubagents"},$5=new Set(["thinking","streaming","work-subagents"])});import"react";import{Box as mw}from"ink";import{jsx as fw,jsxs as pw}from"react/jsx-runtime";function hh(t){return pw(mw,{flexDirection:"column",children:[pw(mw,{children:[fw(P,{name:"clock",role:"depth"}),pw(f,{name:"depth",children:[" ",t.title]})]}),fw(mw,{flexDirection:"column",paddingLeft:2,children:t.lines.map((e,o)=>fw(f,{name:"fgDim",children:e},o))})]})}var T$=p(()=>{"use strict";ae()});import"react";import{Box as Ti,Text as F5}from"ink";import{jsx as An,jsxs as tn}from"react/jsx-runtime";function hw(t){let e=ne();if(t.status==="running"){let a=Ha(t.liveOutput??"",Xp).replace(/\n+$/,""),c=t.columns&&t.columns>0?t.columns-B5:0,{text:l,hidden:d}=Da(a,t.maxLines,c);return tn(Ti,{flexDirection:"column",paddingLeft:2,children:[An(xi,{glyph:"toolInflight",glyphRole:"depth",label:`rodando $ ${t.command}`,...t.frame!==void 0?{frame:t.frame}:{}}),l.length>0&&tn(Ti,{flexDirection:"column",paddingLeft:2,children:[d>0&&tn(f,{name:"fgDim",children:["\u2026 (",d," linhas acima)"]}),l.split(`
613
+ `),!0)}var WS,ah=p(()=>{"use strict";Td();bn();WS=15});function Yn(t,e,o,n){if(n===void 0){if(t.length<=o)return{start:0,slice:t};let h=e-Math.floor(o/2);return h<0&&(h=0),h+o>t.length&&(h=t.length-o),{start:h,slice:t.slice(h,h+o)}}let r=t.length;if(r===0)return{start:0,slice:t};let s=h=>Math.max(1,Math.floor(n(t[h]))),i=0;for(let h=0;h<r;h+=1)i+=s(h);if(i<=o)return{start:0,slice:t};let a=Math.max(0,Math.min(e,r-1)),c=a,l=a+1,d=s(a),m=!0,u=!0;for(;u;){u=!1;let h=()=>c>0&&d+s(c-1)<=o?(c-=1,d+=s(c),!0):!1,g=()=>l<r&&d+s(l)<=o?(d+=s(l),l+=1,!0):!1;u=m?h()||g():g()||h(),m=!m}return{start:c,slice:t.slice(c,l)}}var Qa=p(()=>{"use strict"});import"react";import{Box as su,Text as t$}from"ink";import{Fragment as x5,jsx as ps,jsxs as iu}from"react/jsx-runtime";function ch(t){let e=ne(),{t:o}=ve(),n=e.glyph("sessionDot"),r=Math.max(1,t.maxRows??10),s=t.columns,i=s!==void 0&&s>0?l=>{let d=2+(l.label?.trim()?2:0)+Ee(ru(l,t.home));return Math.max(1,Math.ceil(d/s))}:void 0,{start:a,slice:c}=Yn(t.sessions,t.selected,r,i);return iu(su,{flexDirection:"column",children:[ps(su,{children:ps(f,{name:"fgDim",children:o("picker.history.help")})}),t.sessions.length===0?ps(su,{children:iu(f,{name:"fgDim",children:[" ",o("picker.history.empty")]})}):c.map((l,d)=>{let u=a+d===t.selected,h=l.label?.trim(),g=h?e.sessionColor(l.labelColor??h):void 0,b={};return g?.color!==void 0&&(b.color=g.color),g?.bold!==void 0&&(b.bold=g.bold),iu(su,{children:[ps(f,{name:u?"accent":"fgDim",children:u?"\u203A ":" "}),h&&iu(x5,{children:[ps(t$,{...b,children:n}),ps(t$,{children:" "})]}),ps(f,{name:u?"accent":"fg",children:ru(l,t.home)})]},l.id)}),t.sessions.length>c.length&&ps(su,{children:iu(f,{name:"fgDim",children:[" ",o("picker.history.more",{count:t.sessions.length-c.length})]})})]})}var o$=p(()=>{"use strict";ae();mt();ah();oo();Qa()});function n$(t,e=30){return[...t].reverse().slice(0,e)}function zS(t){let e=S5(t.ts);return`#${t.ordinal} \xB7 ${e} \xB7 ${t.label}`}function S5(t){let e=new Date(t),o=String(e.getHours()).padStart(2,"0"),n=String(e.getMinutes()).padStart(2,"0");return`${o}:${n}`}var lh,KS=p(()=>{"use strict";lh=["both","conversation","code"]});import"react";import{Box as en}from"ink";import{jsx as Xt,jsxs as Ai}from"react/jsx-runtime";function w5(t){switch(t){case"both":return"picker.rewind.action.both";case"conversation":return"picker.rewind.action.conversation";case"code":return"picker.rewind.action.code"}}function dh(t){let{t:e}=ve();if(t.phase==="list"){let o=Math.max(1,t.maxRows??10),n=t.columns,r=n!==void 0&&n>0?a=>Math.max(1,Math.ceil((2+Ee(zS(a)))/n)):void 0,{start:s,slice:i}=Yn(t.checkpoints,t.selected,o,r);return Ai(en,{flexDirection:"column",children:[Xt(en,{children:Xt(f,{name:"fgDim",children:e("picker.rewind.help")})}),t.checkpoints.length===0?Xt(en,{children:Ai(f,{name:"fgDim",children:[" ",e("picker.rewind.empty")]})}):i.map((a,c)=>{let l=s+c===t.selected;return Ai(en,{children:[Xt(f,{name:l?"accent":"fgDim",children:l?"\u203A ":" "}),Xt(f,{name:l?"accent":"fg",children:zS(a)})]},a.id)}),t.checkpoints.length>i.length&&Xt(en,{children:Ai(f,{name:"fgDim",children:[" ",e("picker.rewind.more",{count:t.checkpoints.length-i.length})]})})]})}return Ai(en,{flexDirection:"column",children:[Xt(en,{children:Xt(f,{name:"fgDim",children:e("picker.rewind.action.help")})}),t.target&&Xt(en,{children:Xt(f,{name:"fgDim",children:` \u2192 #${t.target.ordinal} \xB7 ${t.target.label}`})}),t.actions.map((o,n)=>{let r=n===t.selected;return Ai(en,{children:[Xt(f,{name:r?"accent":"fgDim",children:r?"\u203A ":" "}),Xt(f,{name:r?"accent":"fg",children:e(w5(o))})]},o)}),t.barrierWarnings&&t.barrierWarnings.length>0&&Ai(en,{flexDirection:"column",marginTop:1,children:[Xt(en,{children:Xt(f,{name:"accent",children:`\u26A0 ${e("picker.rewind.barrier.warn")}:`})}),t.barrierWarnings.map((o,n)=>Xt(en,{children:Xt(f,{name:"fgDim",children:` \xB7 ${o}`})},n))]})]})}var r$=p(()=>{"use strict";ae();mt();KS();oo();Qa()});import A5 from"react";import{Box as io,Text as E5}from"ink";import{Fragment as C5,jsx as $e,jsxs as Bo}from"react/jsx-runtime";function T5(t){switch(t){case"mode":return"modo de sessao \xB7 enter cicla plan \u2192 normal \u2192 yolo";case"safe-tool":return"tools seguras (leitura) \xB7 enter alterna allow \u21C4 ask";case"grant":return"liberados nesta sessao \xB7 enter REVOGA";case"locked":return"TRAVADO por seguranca \xB7 so via --yolo"}}function _5(t){let{row:e,sel:o}=t,n=$e(f,{name:o?"accent":"fgDim",children:o?"\u203A ":" "});switch(e.kind){case"mode":return Bo(io,{children:[n,$e(f,{name:o?"accent":"fg",children:"modo: "}),$e(f,{name:e.mode==="unsafe"?"danger":o?"accent":"fg",children:YS[e.mode]})]});case"safe-tool":return Bo(io,{children:[n,$e(f,{name:o?"accent":"fg",children:e.tool}),$e(f,{name:"fgDim",children:" = "}),$e(f,{name:e.decision==="allow"?"success":"fgDim",children:e.decision})]});case"grant":return Bo(io,{children:[n,$e(f,{name:"success",children:"\u25CF "}),$e(f,{name:o?"accent":"fg",children:e.grantKey}),$e(f,{name:"fgDim",children:" (enter revoga)"})]});case"locked":{let r=e.category.lock==="deny";return Bo(io,{flexDirection:"column",children:[Bo(io,{children:[n,$e(P,{name:"ask",role:"danger"}),$e(f,{name:"danger",children:" [travado] "}),$e(f,{name:o?"accent":"fg",children:e.category.label}),Bo(f,{name:"danger",children:[" \xB7 ",r?"deny (nem --yolo)":"sempre pergunta"]})]}),o&&$e(io,{paddingLeft:4,children:$e(f,{name:"fgDim",children:e.category.why})})]})}}}function VS(t){let e=Math.max(1,t.maxRows??14),o=t.columns,n=c=>{switch(c.kind){case"mode":return 8+Ee(YS[c.mode]);case"safe-tool":return 5+Ee(c.tool)+Ee(c.decision);case"grant":return 19+Ee(c.grantKey);case"locked":return 28+Ee(c.category.label)}},r=o!==void 0&&o>0?c=>Math.max(1,Math.ceil(n(c)/o)):void 0,{start:s,slice:i}=Yn(t.rows,t.selected,e,r),a=null;return Bo(io,{flexDirection:"column",children:[$e(io,{children:$e(f,{name:"fgDim",children:"permissoes \xB7 \u2191\u2193 navega \xB7 enter muda \xB7 esc fecha"})}),Bo(io,{children:[$e(f,{name:"fgDim",children:"modo atual: "}),$e(f,{name:t.mode==="unsafe"?"danger":"fg",children:YS[t.mode]})]}),t.rows.length===0?$e(io,{children:$e(f,{name:"fgDim",children:" nada a mostrar"})}):Bo(C5,{children:[s>0&&$e(io,{children:Bo(f,{name:"fgDim",children:[" \u2191 ",s," acima"]})}),i.map((c,l)=>{let d=s+l,m=c.kind!==a?T5(c.kind):null;return a=c.kind,Bo(A5.Fragment,{children:[m&&$e(io,{paddingTop:1,children:Bo(f,{name:"fgDim",children:["\u2500\u2500\u2500 ",m]})}),$e(_5,{row:c,sel:d===t.selected})]},R5(c,d))}),s+i.length<t.rows.length&&$e(io,{children:Bo(f,{name:"fgDim",children:[" \u2193 ",t.rows.length-(s+i.length)," abaixo"]})})]}),$e(io,{paddingTop:1,children:$e(E5,{children:" "})}),$e(io,{children:$e(f,{name:"fgDim",children:"o painel nao relaxa as categorias travadas \u2014 o unico bypass total e --yolo"})})]})}function R5(t,e){switch(t.kind){case"mode":return"mode";case"safe-tool":return`safe:${t.tool}`;case"grant":return`grant:${t.grantKey}`;case"locked":return`locked:${t.category.category}`;default:return`row:${e}`}}var YS,s$=p(()=>{"use strict";ae();Qa();oo();YS={plan:"PLAN (read-only)",normal:"NORMAL (catraca padrao)",unsafe:"YOLO (aprovacao DESLIGADA)"}});import"react";import{Box as XS}from"ink";import{jsx as au,jsxs as JS}from"react/jsx-runtime";function uh(t){let{t:e}=ve();return JS(XS,{flexDirection:"column",children:[au(XS,{children:au(f,{name:"fgDim",children:e("picker.theme.help")})}),t.themes.map((o,n)=>{let r=n===t.selected,s=o.name===t.currentTheme;return JS(XS,{children:[au(f,{name:r?"accent":"fgDim",children:r?"\u203A ":" "}),au(f,{name:s?"accent":"fgDim",children:s?"\u25CF ":" "}),au(f,{name:r?"accent":"fg",children:o.label}),JS(f,{name:"fgDim",children:[" \xB7 ",o.summary]})]},o.name)})]})}var i$=p(()=>{"use strict";ae();mt()});import"react";import{Box as QS}from"ink";import{jsx as cu,jsxs as ZS}from"react/jsx-runtime";function mh(t){let{t:e}=ve();return ZS(QS,{flexDirection:"column",children:[cu(QS,{children:cu(f,{name:"fgDim",children:e("picker.lang.help")})}),t.langs.map((o,n)=>{let r=n===t.selected,s=o.code===t.currentLang;return ZS(QS,{children:[cu(f,{name:r?"accent":"fgDim",children:r?"\u203A ":" "}),cu(f,{name:s?"accent":"fgDim",children:s?"\u25CF ":" "}),cu(f,{name:r?"accent":"fg",children:o.label}),ZS(f,{name:"fgDim",children:[" \xB7 ",o.summary]})]},o.code)})]})}var a$=p(()=>{"use strict";ae();mt()});import"react";import{Box as lu}from"ink";import{jsx as hs,jsxs as du}from"react/jsx-runtime";function ew(t){let{t:e}=ve(),o=Math.max(1,t.maxRows??10),n=t.columns,r=n!==void 0&&n>0?a=>{let c=4+Ee(`${a.label} \xB7 ${a.summary}`)+(a.isDefault?2+Ee(e("picker.provider.default")):0);return Math.max(1,Math.ceil(c/n))}:void 0,{start:s,slice:i}=Yn(t.providers,t.selected,o,r);return du(lu,{flexDirection:"column",children:[hs(lu,{children:hs(f,{name:"fgDim",children:e("picker.provider.help")})}),t.usingFallback===!0?hs(lu,{children:hs(f,{name:"fgDim",children:e("picker.provider.fallback")})}):null,i.map((a,c)=>{let l=s+c===t.selected,d=a.name===t.currentProvider;return du(lu,{children:[hs(f,{name:l?"accent":"fgDim",children:l?"\u203A ":" "}),hs(f,{name:d?"accent":"fgDim",children:d?"\u25CF ":" "}),hs(f,{name:l?"accent":"fg",children:a.label}),du(f,{name:"fgDim",children:[" \xB7 ",a.summary]}),a.isDefault?du(f,{name:"fgDim",children:[" \xB7 ",e("picker.provider.default")]}):null]},a.name)}),t.providers.length>i.length&&hs(lu,{children:du(f,{name:"fgDim",children:[" ",e("picker.provider.more",{count:t.providers.length-i.length})]})})]})}var c$=p(()=>{"use strict";ae();mt();oo();Qa()});import"react";import{Box as l$,Text as O5}from"ink";import{jsx as tw,jsxs as d$}from"react/jsx-runtime";function ow(t){if(t.chips.length===0)return null;let e=t.active??-1;return tw(l$,{flexWrap:"wrap",children:t.chips.map((o,n)=>{let r=n===e;return d$(l$,{marginRight:1,children:[d$(f,{name:r?"accent":"depth",children:[r?"\u203A ":"","@",o.path,o.truncated?"~":""]}),tw(O5,{children:" "}),tw(f,{name:"fgDim",children:"[\u232B]"})]},o.path)})})}var u$=p(()=>{"use strict";ae()});import"react";import{Box as uu,Text as m$}from"ink";import{jsx as wn,jsxs as gs}from"react/jsx-runtime";function nw(t){let e=ne(),{t:o}=ve(),n=t.columns??80,r=t.plan??"assinatura",s=e.glyph("wave").repeat(17);return gs(uu,{flexDirection:"column",paddingY:1,children:[wn(Tr,{columns:n}),wn(uu,{paddingTop:1,paddingLeft:2,children:wn(f,{name:"fgDim",children:o("boot.tagline")})}),gs(uu,{paddingLeft:2,children:[wn(f,{name:"accent",children:s}),t.version!==void 0&&gs(f,{name:"fgDim",children:[" v",t.version]})]}),gs(uu,{paddingLeft:2,children:[wn(P,{name:"window",role:"fgDim"}),gs(f,{name:"fgDim",children:[" ",r," \xB7 "]}),wn(f,{name:"fgDim",children:t.tier}),wn(m$,{children:" "}),wn(f,{name:"fgDim",children:"\xB7 "}),wn(P,{name:"broker",role:"depth"}),gs(f,{name:"depth",children:[" ",o("boot.broker")]})]}),t.status!==void 0&&gs(uu,{paddingTop:1,paddingLeft:2,children:[wn(ki,{frame:t.frame??0}),wn(m$,{children:" "}),gs(f,{name:"fgDim",children:[t.status,"\u2026"]})]})]})}var f$=p(()=>{"use strict";ae();mt();Qd();mi()});import"react";import{Box as p$}from"ink";import{jsx as rw,jsxs as sw}from"react/jsx-runtime";function iw(t){let e=t.suggestions??M5;return sw(p$,{flexDirection:"column",children:[rw(f,{name:"fg",children:t.name?`bom te ver de novo, ${t.name}.`:"bom te ver por aqui."}),rw(f,{name:"fgDim",children:"eu leio e edito arquivos e rodo comandos aqui \u2014 sempre te mostrando o efeito exato antes."}),sw(p$,{paddingTop:1,flexDirection:"column",children:[rw(f,{name:"fgDim",children:"experimente:"}),e.map((o,n)=>sw(f,{name:"fgDim",children:[" \xB7 ",o]},n))]})]})}var M5,h$=p(()=>{"use strict";ae();M5=['"explique a estrutura deste repo"','"rode os testes e resuma as falhas"',"/help para comandos \xB7 /login conta \xB7 /quit"]});import"react";import{jsx as Nwe}from"react/jsx-runtime";var g$=p(()=>{"use strict";ae()});import"react";import{Box as y$,Text as aw}from"ink";import{jsx as Ei,jsxs as fh}from"react/jsx-runtime";function v$(t,e){return!Number.isFinite(t)||!Number.isFinite(e)||e<=0?0:Math.max(0,Math.min(1,t/e))}function k$(t,e,o,n,r){let s=Math.max(1,Math.trunc(n)),i=Math.max(0,Math.min(1,t)),a=Math.round(i*s);i>0&&a===0&&(a=1),i<1&&a===s&&(a=s-1);let c=e.repeat(a),l=o.repeat(s-a);return r?{filled:c,rest:l}:{filled:`[${c}`,rest:`${l}]`}}function Za(t){let e=ne(),o=t.role??"accent";if(t.value!==void 0&&t.max!==void 0){let a=v$(t.value,t.max),c=Math.round(a*100),l=e.glyph("barFull"),d=e.glyph("barEmpty"),m=t.width??b$,{filled:u,rest:h}=k$(a,l,d,m,e.unicode);return fh(y$,{children:[Ei(f,{name:o,children:u}),Ei(f,{name:"fgDim",children:h}),Ei(aw,{children:" "}),fh(f,{name:o,children:[c,"%"]}),Ei(aw,{children:" "}),Ei(f,{name:"fgDim",children:t.label})]})}let r=e.spinnerFrames,s=e.animate?r[(t.frame??0)%r.length]:e.glyph("clock"),i=t.elapsedMs!==void 0?Oa(t.elapsedMs):void 0;return fh(y$,{children:[Ei(f,{name:o,children:s}),Ei(aw,{children:" "}),fh(f,{name:"fgDim",children:[t.label,"\u2026",i!==void 0?` ${i}`:""]})]})}var b$,cw=p(()=>{"use strict";ae();bn();b$=12});import"react";import{Box as L5}from"ink";import{jsx as P5,jsxs as x$}from"react/jsx-runtime";function lw(t){let{t:e}=ve(),o=(t.columns??80)<60,n=e(o?"banner.yolo.narrow":"banner.yolo");return x$(L5,{children:[P5(P,{name:"ask",role:"danger"}),x$(f,{name:"danger",children:[" ",n]})]})}var dw=p(()=>{"use strict";ae();mt()});import"react";import{Box as I5}from"ink";import{jsx as S$,jsxs as uw}from"react/jsx-runtime";function ph(t){let{t:e}=ve();if(t.mode==="unsafe")return S$(lw,{...t.columns!==void 0?{columns:t.columns}:{}});let o=N5[t.mode],n=(t.columns??80)<60;return uw(I5,{children:[S$(P,{name:o.glyph,role:o.role}),uw(f,{name:o.role,children:[" ",e("mode.label")," ",o.word]}),!n&&uw(f,{name:"fgDim",children:[" \xB7 ",e(o.caption)]})]})}var N5,w$=p(()=>{"use strict";ae();dw();mt();N5={plan:{glyph:"planMode",role:"depth",word:"PLAN",caption:"mode.plan.caption"},normal:{glyph:"normalMode",role:"fgDim",word:"NORMAL",caption:"mode.normal.caption"},unsafe:{glyph:"ask",role:"danger",word:"YOLO",caption:"mode.unsafe.caption"}}});import"react";import{jsx as A$}from"react/jsx-runtime";function mu(t){let{t:e}=ve();if(t.armedExit===!0)return A$(f,{name:"accent",children:e("hints.ctrlcAgain")});let o=e(D5[t.state]),n=t.elapsed!==void 0&&t.elapsed!==""&&$5.has(t.state);return A$(f,{name:"fgDim",children:n?`${o} \xB7 ${t.elapsed}`:o})}var D5,$5,E$=p(()=>{"use strict";ae();mt();D5={idle:"hints.idle",thinking:"hints.thinking",streaming:"hints.streaming",ask:"hints.ask","ask-destructive":"hints.askDestructive",slash:"hints.slash",palette:"hints.palette",budget:"hints.budget",error:"hints.error","work-subagents":"hints.workSubagents","idle-subagents":"hints.idleSubagents"},$5=new Set(["thinking","streaming","work-subagents"])});import"react";import{Box as mw}from"ink";import{jsx as fw,jsxs as pw}from"react/jsx-runtime";function hh(t){return pw(mw,{flexDirection:"column",children:[pw(mw,{children:[fw(P,{name:"clock",role:"depth"}),pw(f,{name:"depth",children:[" ",t.title]})]}),fw(mw,{flexDirection:"column",paddingLeft:2,children:t.lines.map((e,o)=>fw(f,{name:"fgDim",children:e},o))})]})}var T$=p(()=>{"use strict";ae()});import"react";import{Box as Ti,Text as F5}from"ink";import{jsx as An,jsxs as tn}from"react/jsx-runtime";function hw(t){let e=ne();if(t.status==="running"){let a=Ha(t.liveOutput??"",Xp).replace(/\n+$/,""),c=t.columns&&t.columns>0?t.columns-B5:0,{text:l,hidden:d}=Da(a,t.maxLines,c);return tn(Ti,{flexDirection:"column",paddingLeft:2,children:[An(xi,{glyph:"toolInflight",glyphRole:"depth",label:`rodando $ ${t.command}`,...t.frame!==void 0?{frame:t.frame}:{}}),l.length>0&&tn(Ti,{flexDirection:"column",paddingLeft:2,children:[d>0&&tn(f,{name:"fgDim",children:["\u2026 (",d," linhas acima)"]}),l.split(`
614
614
  `).map((m,u)=>An(Ti,{children:An(f,{name:"fgDim",children:m})},u))]})]})}let o=t.status==="err",n=t.status==="blocked",r=n?"bloqueado":o?"erro":"ok",s=t.output??"";return tn(Ti,{flexDirection:"column",paddingLeft:2,children:[tn(Ti,{children:[n?An(P,{name:"err",role:"danger"}):An(P,{name:"tool",role:"depth"}),tn(f,{name:"fg",children:[" ",U5," "]}),An(f,{name:"accent",children:"$ "}),An(f,{name:"fg",children:t.command}),An(F5,{children:" "}),n||o?An(P,{name:"err",role:"danger"}):An(P,{name:"ok",role:"success"}),tn(f,{name:n||o?"danger":"fgDim",children:[" ",r]})]}),s.trim()!==""&&tn(Ti,{flexDirection:"column",paddingLeft:2,children:[tn(f,{name:"fgDim",children:[e.box.topLeft," sa\xEDda ",e.box.horizontal.repeat(8)]}),s.split(`
615
615
  `).map((i,a)=>tn(Ti,{children:[tn(f,{name:"fgDim",children:[e.box.vertical," "]}),An(f,{name:n||o?"danger":"fg",children:i})]},a)),tn(f,{name:"fgDim",children:[e.box.bottomLeft," ",r," ",e.box.horizontal.repeat(4)]})]})]})}var B5,U5,_$=p(()=>{"use strict";ae();Qp();oo();qa();B5=4,U5="shell"});import"react";import{Box as gw,Text as R$}from"ink";import{jsx as Vn,jsxs as ec}from"react/jsx-runtime";function j5(t){if(t.status==="running")return"rodando";if(t.status==="done")return"pronto";if(t.status==="cancelled")return"parado";switch(t.stop){case"timeout":return"timeout";case"limit":return"teto";default:return"falhou"}}function H5(t){let e=t.child,o=j5(e),n=e.status==="running"?Vn(P,{name:"clock",role:"depth"}):e.status==="done"?Vn(P,{name:"ok",role:"success"}):e.status==="cancelled"?Vn(P,{name:"err",role:"fgDim"}):Vn(P,{name:"err",role:"danger"}),r=e.status==="done"?"success":e.status==="fail"?"danger":"fgDim";return ec(gw,{paddingLeft:2,children:[ec(f,{name:"accent",children:["[",e.label,"]"]}),Vn(R$,{children:" "}),n,Vn(R$,{children:" "}),Vn(f,{name:r,children:o}),e.summary!==void 0&&e.status!=="running"&&ec(f,{name:"fgDim",children:[" \xB7 ",e.summary]})]})}function yw(t){let e=t.childrenStatus,o=e.length,n=e.filter(s=>s.status==="running").length,r=n>0?` (${n} rodando)`:"";return ec(gw,{flexDirection:"column",paddingLeft:2,paddingBottom:1,children:[ec(gw,{children:[Vn(P,{name:"subagents",role:"accent"}),ec(f,{name:"fg",children:[" ",o," sub-agente",o===1?"":"s",":"]}),r!==""&&Vn(f,{name:"fgDim",children:r})]}),e.map((s,i)=>Vn(H5,{child:s},`${s.label}:${i}`))]})}var C$=p(()=>{"use strict";ae()});import"react";import{Box as tc,Text as bw}from"ink";import{jsx as Eo,jsxs as ys}from"react/jsx-runtime";function q5(t){switch(t){case"pending":return"testando";case"ok":return"ok";case"warn":return"aviso";default:return"falha"}}function W5(t){let e=ne(),o=t.check,n=q5(o.status),r,s;if(o.status==="pending"){let i=e.spinnerFrames,a=e.animate?i[(t.frame??0)%i.length]:e.glyph("clock");r=Eo(f,{name:"accent",children:a}),s="fgDim"}else o.status==="ok"?(r=Eo(P,{name:"ok",role:"success"}),s="success"):o.status==="warn"?(r=Eo(P,{name:"ask",role:"accent"}),s="accent"):(r=Eo(P,{name:"err",role:"danger"}),s="danger");return ys(tc,{flexDirection:"column",children:[ys(tc,{children:[Eo(bw,{children:" "}),r,Eo(bw,{children:" "}),ys(f,{name:"fg",children:[o.label,":"]}),Eo(bw,{children:" "}),o.detail!==void 0&&o.detail!==""?Eo(f,{name:s,children:o.detail}):ys(f,{name:s,children:[n,"\u2026"]})]}),o.status!=="pending"&&o.status!=="ok"&&o.fix!==void 0&&Eo(tc,{paddingLeft:4,children:ys(f,{name:"fgDim",children:["\u2192 ",o.fix]})})]})}function vw(t){let e=t.checks,o=e.filter(s=>s.status==="pending").length,n=o>0?` (${o} testando)`:"",r=t.frame??0;return ys(tc,{flexDirection:"column",paddingLeft:2,paddingBottom:1,children:[ys(tc,{children:[Eo(P,{name:"clock",role:"accent"}),Eo(f,{name:"fg",children:" doctor \u2014 diagn\xF3stico"}),n!==""&&Eo(f,{name:"fgDim",children:n})]}),e.map(s=>Eo(W5,{check:s,frame:r},s.id)),t.summary!==void 0&&Eo(tc,{paddingTop:1,children:ys(f,{name:"fgDim",children:["resumo: ",t.summary]})})]})}var O$=p(()=>{"use strict";ae()});import"react";import{Box as on,Text as gh}from"ink";import{jsx as Fe,jsxs as ao}from"react/jsx-runtime";function M$(t){switch(t){case"done":return"success";case"cancelled":return"fgDim";case"failed":return"danger";default:return"accent"}}function xw(t){let e=[`${Nt(t.tokens)} tokens`];return t.toolCalls>0&&e.push(`${t.toolCalls} tools`),e.push(yn(t.durationMs)),e.join(" \xB7 ")}function G5(t){let e=t.node,o=e.kind==="root"?0:2,n=t.focused?"\u25B8":" ";return ao(on,{paddingLeft:o,children:[ao(f,{name:t.focused?"accent":"fgDim",children:[n," "]}),ao(f,{name:"accent",children:["[",e.label,"]"]}),Fe(gh,{children:" "}),Fe(f,{name:M$(e.phase),children:kw[e.phase]}),ao(f,{name:"fgDim",children:[" \xB7 ",xw(e.accounting)]})]})}function z5(t){let e=Math.max(1,t.maxRows??10),o=t.columns,n=o!==void 0&&o>0?i=>{let c=(i.kind==="root"?0:2)+Ee(` [${i.label}] ${kw[i.phase]} \xB7 ${xw(i.accounting)}`);return Math.max(1,Math.ceil(c/o))}:void 0,{start:r,slice:s}=Yn(t.overview,t.selected,e,n);return ao(on,{flexDirection:"column",paddingLeft:2,paddingBottom:1,children:[ao(on,{children:[Fe(P,{name:"subagents",role:"accent"}),Fe(f,{name:"fg",children:" \xE1rvore de fluxos \u2014 ver \xB7 parar \xB7 interagir"})]}),s.map((i,a)=>Fe(G5,{node:i,focused:r+a===t.selected},i.id)),t.overview.length>s.length&&Fe(on,{children:ao(f,{name:"fgDim",children:[" \u2026 ",t.overview.length-s.length," n\xF3s a mais (\u2191\u2193 rola)"]})}),Fe(on,{paddingTop:1,children:Fe(f,{name:"fgDim",children:"\u2191\u2193 navega \xB7 enter: ver \xB7 p: parar este \xB7 P: parar todos \xB7 i: interagir \xB7 esc: fecha"})})]})}function K5(t){let e=t.activity,o=[];return e.durationMs!==void 0&&o.push(yn(e.durationMs)),(e.added!==void 0||e.removed!==void 0)&&o.push(`+${e.added??0}/\u2212${e.removed??0}`),e.tokens!==void 0&&o.push(`${Nt(e.tokens)} tok`),ao(on,{flexDirection:"column",paddingLeft:2,children:[ao(on,{children:[e.running?Fe(P,{name:"clock",role:"depth"}):e.ok?Fe(P,{name:"ok",role:"success"}):Fe(P,{name:"err",role:"danger"}),Fe(gh,{children:" "}),Fe(f,{name:"fg",children:e.tool}),e.target!==""&&ao(f,{name:"fgDim",children:[" ",e.target]}),Fe(gh,{children:" "}),Fe(f,{name:e.running?"fgDim":e.ok?"success":"danger",children:e.summary&&e.summary!==""?e.summary:e.running?"rodando":e.ok?"ok":"erro"}),o.length>0&&ao(f,{name:"fgDim",children:[" \xB7 ",o.join(" \xB7 ")]})]}),e.running&&e.tail!==void 0&&e.tail!==""&&Fe(on,{paddingLeft:4,children:Fe(f,{name:"fgDim",children:e.tail})})]})}function Y5(t){let e=t.node;return ao(on,{flexDirection:"column",paddingLeft:2,paddingBottom:1,children:[ao(on,{children:[Fe(P,{name:"subagents",role:"accent"}),Fe(f,{name:"fg",children:" "}),ao(f,{name:"accent",children:["[",e.label,"]"]}),Fe(gh,{children:" "}),Fe(f,{name:M$(e.phase),children:kw[e.phase]}),ao(f,{name:"fgDim",children:[" \xB7 ",xw(e.accounting)]})]}),e.recent.length===0?Fe(on,{paddingLeft:2,children:Fe(f,{name:"fgDim",children:"sem atividade recente."})}):e.recent.map((o,n)=>Fe(K5,{activity:o},`${o.tool}:${n}`)),Fe(on,{paddingTop:1,children:Fe(f,{name:"fgDim",children:"p: parar este \xB7 i: interagir \xB7 esc/enter: volta \xE0 \xE1rvore"})})]})}function Sw(t){return t.drillIn?Fe(Y5,{node:t.drillIn}):Fe(z5,{...t})}var kw,L$=p(()=>{"use strict";ae();bn();oo();Qa();kw={thinking:"pensando",tool:"rodando tool",asking:"aguardando confirma\xE7\xE3o",done:"conclu\xEDdo",cancelled:"parado",failed:"falhou"}});import"react";import{Box as nn,Text as fu}from"ink";import{jsx as rt,jsxs as Bt}from"react/jsx-runtime";function X5(t){switch(t){case"done":return"success";case"cancelled":return"fgDim";case"failed":return"danger";default:return"accent"}}function J5(t){return t.kind==="spawn"?{glyph:"subagents",role:"depth"}:t.kind==="broker"?{glyph:"broker",role:"depth"}:t.kind==="deny"?{glyph:"err",role:"danger"}:t.kind==="ask"?{glyph:"ask",role:"accent"}:t.status==="running"?{glyph:"toolInflight",role:"fgDim"}:t.status==="err"?{glyph:"err",role:"danger"}:{glyph:"tool",role:"success"}}function ww(t,e){return e<=1?t:bi(t,e)}function Q5(t){let e=[];return(t.added!==void 0||t.removed!==void 0)&&e.push(`+${t.added??0} \u2212${t.removed??0}`),t.durationMs!==void 0&&e.push(yn(t.durationMs)),t.tokens!==void 0&&e.push(`${Nt(t.tokens)} tok`),e.join(" \xB7 ")}function Z5(t){let e=[Nt(t.tokens)];return t.toolCalls>0&&e.push(`${t.toolCalls} tools`),e.push(yn(t.durationMs)),e.join(" \xB7 ")}function eQ(t){return t==="running"?"fgDim":t==="err"?"danger":"success"}function tQ(t){return t==="running"?"rodando":t==="err"?"erro":"ok"}function P$(t){let e=t.event,o=J5(e),n=Math.max(4,t.cols-4-Ee(e.label)-1),r=Q5(e),s=e.summary!==void 0&&e.summary!==""?e.summary:tQ(e.status);return Bt(nn,{flexDirection:"column",paddingLeft:2,children:[rt(nn,{children:Bt(fu,{wrap:"wrap",children:[rt(P,{name:o.glyph,role:o.role}),rt(fu,{children:" "}),rt(f,{name:"fg",children:e.label}),e.detail!==""&&Bt(f,{name:"fgDim",children:[" ",ww(e.detail,n)]}),rt(fu,{children:" \xB7 "}),rt(f,{name:eQ(e.status),children:s}),r!==""&&Bt(f,{name:"fgDim",children:[" \xB7 ",r]})]})}),e.status==="running"&&e.tail!==void 0&&e.tail!==""&&rt(nn,{paddingLeft:4,children:rt(f,{name:"fgDim",children:ww(e.tail,Math.max(4,t.cols-4))})})]})}function oQ(t){let e=t.section,o=e.kind==="root"?0:1;return Bt(nn,{flexDirection:"column",paddingLeft:o,children:[Bt(nn,{children:[Bt(f,{name:"fgDim",children:[e.collapsed?"\u25B6":"\u25BC"," "]}),Bt(f,{name:"accent",children:["[",e.label,"]"]}),rt(fu,{children:" "}),rt(f,{name:X5(e.phase),children:V5[e.phase]}),Bt(f,{name:"fgDim",children:[" \xB7 ",Z5(e)]}),e.collapsed&&rt(f,{name:"fgDim",children:" (colapsado)"})]}),!e.collapsed&&e.events.map((n,r)=>rt(P$,{event:n,cols:t.cols},`${e.id}:${r}`))]})}function nQ(t){let e=[];for(let o of t)if(e.push({t:"header",section:o}),!o.collapsed)for(let n of o.events)e.push({t:"event",section:o,event:n});return e}function oc(t){let e=t.columns??40,o=nQ(t.sections);if(o.length===0){let u=(t.bootInfo??[]).filter(h=>h.lines.length>0);return Bt(nn,{flexDirection:"column",children:[Bt(nn,{children:[rt(f,{name:t.focused?"accent":"fgDim",children:"LOG"}),rt(f,{name:"fgDim",children:" \xB7 sem atividade ainda"})]}),u.map(h=>Bt(nn,{flexDirection:"column",children:[Bt(nn,{children:[rt(P,{name:"clock",role:"fgDim"}),rt(fu,{children:" "}),rt(f,{name:"accent",children:h.title})]}),h.lines.map((g,b)=>rt(nn,{paddingLeft:2,children:rt(f,{name:"fgDim",children:ww(g,Math.max(4,e-2))})},`${h.title}:${b}`))]},h.title))]})}let n=Math.max(1,t.visibleRows-1),r=o.length,s=Math.max(0,r-n),i=Math.min(Math.max(0,t.scrollOffset),s),a=r-i,c=Math.max(0,a-n),l=o.slice(c,a),d=c,m=r-a;return Bt(nn,{flexDirection:"column",children:[Bt(nn,{children:[rt(f,{name:t.focused?"accent":"fgDim",children:"LOG"}),d>0&&Bt(f,{name:"fgDim",children:[" \xB7 \u2191",d," acima"]}),m===0?rt(f,{name:"fgDim",children:" \xB7 \u25BC ao vivo"}):Bt(f,{name:"fgDim",children:[" \xB7 \u2193",m," abaixo"]})]}),l.map((u,h)=>u.t==="header"?rt(oQ,{section:{...u.section,events:[]},cols:e},`h:${u.section.id}:${h}`):rt(P$,{event:u.event,cols:e},`e:${u.section.id}:${h}`))]})}var V5,I$=p(()=>{"use strict";ae();bn();oo();Dp();V5={thinking:"pensando",tool:"rodando",asking:"confirmando",done:"ok",cancelled:"parado",failed:"falhou"}});import"react";import{Box as En,Text as Xn}from"ink";import{jsx as kt,jsxs as ct}from"react/jsx-runtime";function Ew(t){let{score:e,running:o,startedAt:n}=t,s=(t.now??Date.now)()-n,i=Oa(s);if(e.unknownFormat)return ct(En,{flexDirection:"column",paddingLeft:2,children:[ct(En,{children:[kt(P,{name:"toolInflight",role:"depth"}),kt(Xn,{children:" "}),ct(f,{name:"fgDim",children:["rodando testes\u2026 ",i]})]}),kt(En,{paddingLeft:2,children:kt(f,{name:"fgDim",children:"formato n\xE3o reconhecido \u2014 placar indispon\xEDvel"})})]});let a=e.total>0,c=e.passed+e.failed,l=e.failed>0?"danger":"success";return ct(En,{flexDirection:"column",paddingLeft:2,children:[kt(En,{children:a?kt(Za,{label:`${c}/${e.total} testes`,value:c,max:e.total,role:e.failed>0?"danger":"accent",frame:t.frame??0}):kt(Za,{label:"testes em andamento",elapsedMs:s,frame:t.frame??0})}),ct(En,{paddingLeft:1,children:[ct(f,{name:"success",children:[kt(P,{name:"ok",role:"success"}),ct(Xn,{children:[" ",e.passed," passaram"]})]}),kt(Xn,{children:" "}),ct(f,{name:l,children:[kt(P,{name:e.failed>0?"err":"ok",role:l}),ct(Xn,{children:[" ",e.failed," falharam"]})]}),e.total>0&&kt(f,{name:"fgDim",children:ct(Xn,{children:[" (total: ",e.total,")"]})}),kt(f,{name:"fgDim",children:ct(Xn,{children:[" ",i]})})]}),e.durationMs!==void 0&&kt(En,{paddingLeft:1,children:ct(f,{name:"fgDim",children:["dura\xE7\xE3o: ",(e.durationMs/1e3).toFixed(2),"s"]})}),e.failures.length>0&&ct(En,{flexDirection:"column",paddingLeft:1,paddingTop:0,children:[ct(f,{name:"danger",children:["falhas (",Math.min(e.failures.length,e.failed),"):"]}),e.failures.slice(0,Aw).map((d,m)=>ct(En,{paddingLeft:2,children:[ct(f,{name:"danger",children:[kt(P,{name:"err",role:"danger"}),ct(Xn,{children:[" ",d.name]})]}),d.message!==""&&kt(f,{name:"fgDim",children:ct(Xn,{children:[": ",d.message.split(`
616
616
  `)[0]?.slice(0,120)??""]})})]},m)),e.failures.length>Aw&&kt(En,{paddingLeft:2,children:ct(f,{name:"fgDim",children:["\u2026 e mais ",e.failures.length-Aw," falhas"]})})]}),!o&&kt(En,{paddingLeft:1,children:e.failed===0?ct(f,{name:"success",children:[kt(P,{name:"ok",role:"success"}),kt(Xn,{children:" todos passaram"})]}):ct(f,{name:"danger",children:[kt(P,{name:"err",role:"danger"}),ct(Xn,{children:[" ",e.failed," falharam"]})]})})]})}var Aw,N$=p(()=>{"use strict";ae();cw();bn();Aw=10});import"react";import{Box as rQ,Text as sQ}from"ink";import{jsx as yh,jsxs as iQ}from"react/jsx-runtime";function Tw(t){let e=t.accounting,o=[`${Nt(e.tokens)} tokens`];return e.toolCalls>0&&o.push(`${e.toolCalls} tools`),o.push(yn(e.durationMs)),iQ(rQ,{paddingLeft:2,children:[e.live?yh(P,{name:"clock",role:"depth"}):yh(P,{name:"ok",role:"success"}),yh(sQ,{children:" "}),yh(f,{name:"fgDim",children:o.join(" \xB7 ")})]})}var D$=p(()=>{"use strict";ae();bn()});import $$ from"react";import{Box as aQ,Text as F$}from"ink";import{Fragment as Rw,jsx as bs,jsxs as Tn}from"react/jsx-runtime";function _w(t){return t==="crit"?"danger":t==="warn"?"accent":"fgDim"}function Cw(t){let e=Mc(t.quota,t.now),o=sy(t.serverLimits,t.now);if(e===void 0&&o===void 0)return null;let n=e?.creditBalance,r=n===void 0&&o!==void 0;return Tn(aQ,{paddingLeft:2,children:[n!==void 0&&Tn(Rw,{children:[bs(f,{name:"fgDim",children:"cr\xE9dito: "}),bs(f,{name:_w(e?.maxLevel??"ok"),children:n})]}),e!==void 0&&e.segments.map((s,i)=>Tn($$.Fragment,{children:[(i>0||n!==void 0)&&bs(f,{name:"fgDim",children:" \xB7 "}),Tn(f,{name:"fgDim",children:[s.label,": "]}),Tn(f,{name:_w(s.level),children:[s.pct,"%"]})]},`q-${s.label}`)),e?.resetText!==void 0&&Tn(Rw,{children:[bs(F$,{children:" "}),Tn(f,{name:"fgDim",children:["\xB7 ",e.resetText]})]}),e!==void 0&&r&&bs(f,{name:"fgDim",children:" \xB7 "}),r&&o.segments.map((s,i)=>Tn($$.Fragment,{children:[i>0&&bs(f,{name:"fgDim",children:" \xB7 "}),Tn(f,{name:"fgDim",children:[s.label,": "]}),bs(f,{name:_w(s.level),children:s.value})]},`s-${s.label}`)),r&&o.resetText!==void 0&&Tn(Rw,{children:[bs(F$,{children:" "}),Tn(f,{name:"fgDim",children:["\xB7 ",o.resetText]})]})]})}var B$=p(()=>{"use strict";D();ae()});import"react";import{jsx as lQ}from"react/jsx-runtime";function _i(t){let o=ne().box.horizontal,n=Math.max(1,t.columns??80),r=t.subtle?Math.min(cQ,n):n,s=t.subtle?"fgDim":t.role??"fgDim",i=o.repeat(r);return lQ(f,{name:s,children:i})}var cQ,U$=p(()=>{"use strict";ae();cQ=12});var bh=p(()=>{"use strict";bN();mi();kN();ON();IN();CD();PD();ND();DD();$D();FD();BD();UD();KD();YD();XD();JD();o$();r$();s$();i$();a$();c$();u$();f$();h$();Qp();g$();cw();Qd();dw();w$();E$();T$();_$();C$();O$();L$();I$();N$();D$();B$();U$()});import{useEffect as dQ,useState as uQ}from"react";function pu(t={}){let e=t.enabled??!0,o=t.intervalMs??mQ,[n,r]=uQ(0);return dQ(()=>{if(!e)return;let s=setInterval(()=>r(i=>i+1),o);return()=>clearInterval(s)},[e,o]),e?n:0}var mQ,Ow=p(()=>{"use strict";mQ=120});import{useCallback as Jn,useMemo as fQ,useRef as pQ,useState as nc}from"react";function j$(t){let[e,o]=nc(!1),[n,r]=nc(""),[s,i]=nc(0),[a,c]=nc([]),[l,d]=nc([]),[m,u]=nc(null),h=pQ(!1),g=fQ(()=>hx(n,a),[n,a]),b=Jn(async()=>{if(!h.current){h.current=!0;try{let I=await t.fileIndex.list();c(I.filter(J=>kk(J)))}catch{c([])}}},[t.fileIndex]),y=Jn(()=>{o(!0),r(""),i(0),b()},[b]),w=Jn(()=>{o(!1),r(""),i(0)},[]),R=Jn(I=>{r(I),i(0)},[]),A=Jn(I=>{i(J=>{let Q=Math.max(0,g.length-1);return Math.min(Q,Math.max(0,J+I))})},[g.length]),L=Jn(async(I,J)=>{let Q=await t.attachReader.attach(I,J!==void 0?{confirmSensitive:J}:{});return Q.kind==="rejected"?(u(`@${Q.path||I} \u2014 ${Q.reason}`),null):(u(null),d(G=>G.some(N=>N.path===Q.path)?G:[...G,{path:Q.path,item:Q.item,truncated:Q.truncated}]),Q.path)},[t.attachReader]),j=Jn(async()=>{let I=g[s];return w(),I?L(I.path):null},[g,s,w,L]),H=Jn(()=>{d(I=>I.length===0?I:I.slice(0,-1))},[]),K=Jn(()=>d([]),[]),V=Jn(()=>u(null),[]);return{open:e,query:n,selected:s,hits:g,attachments:l,notice:m,openPicker:y,closePicker:w,setQuery:R,move:A,confirm:j,removeLast:H,clear:K,dismissNotice:V,attachPath:L}}var H$=p(()=>{"use strict";Cd()});import{useCallback as co,useMemo as vs,useRef as hQ,useState as To}from"react";function q$(t,e){return t.id.toLowerCase().includes(e)||t.name.toLowerCase().includes(e)||t.family.toLowerCase().includes(e)}function W$(t){let[e,o]=To(!1),[n,r]=To(0),[s,i]=To([]),[a,c]=To(!1),[l,d]=To(null),[m,u]=To(!1),[h,g]=To(""),[b,y]=To(0),[w,R]=To(!1),[A,L]=To(null),[j,H]=To(0),[K,V]=To(!1),[I,J]=To(""),Q=hQ(!1),G=vs(()=>zc(),[]),[N,X]=To([]),Oe=co(te=>{let B=te.findIndex(k=>k.key===t.currentTier);return B>=0?B:0},[t.currentTier]),Y=co(async()=>{if(Q.current)return;Q.current=!0,c(!0);let te=async()=>{try{let k=await t.catalog.list();k.length===0?(i(gn),d(!0)):(i(k),d(!1)),r(Oe(k.length===0?gn:k))}catch{i(gn),d(!0),r(Oe(gn))}},B=async()=>{if(!t.customModels){X([]);return}try{X(await t.customModels.list())}catch{X([])}};try{await Promise.all([te(),B()])}finally{c(!1)}},[t.catalog,t.customModels,Oe]),le=co(()=>{o(!0),u(!1),g(""),y(0),R(!1),L(null),H(0),V(!1),J(""),Y()},[Y]),O=co(()=>{o(!1),u(!1),g(""),y(0),R(!1),L(null),H(0),V(!1),J("")},[]),se=s.length,de=e&&n===se,ye=co(te=>{m||r(B=>{let k=Math.max(0,s.length);return Math.min(k,Math.max(0,B+te))})},[s.length,m]),Z=vs(()=>{let te=h.trim().toLowerCase();return N.filter(B=>!(w&&B.supportsTools!==!0||te!==""&&!q$(B,te)))},[N,h,w]),oe=Z.length===0?-1:Math.min(Math.max(0,b),Z.length-1),Me=vs(()=>{if(Z.length<=hu||oe<0)return 0;let te=Math.floor(hu/2),B=Z.length-hu;return Math.min(Math.max(0,oe-te),B)},[Z.length,oe]),Ht=vs(()=>Z.slice(Me,Me+hu).map((te,B)=>({model:te,highlighted:Me+B===oe})),[Z,Me,oe]),ft=vs(()=>{if(!m||oe<0)return null;let te=Z[oe];return te&&te.supportsTools===!1?te.id:null},[m,oe,Z]),st=vs(()=>{let te=h.trim().toLowerCase();return te===""||N.length===0?[]:N.filter(B=>q$(B,te)).slice(0,8).map(gQ)},[h,N]),At=vs(()=>{let te=h.trim();if(te===""||N.length===0)return!1;let B=te.toLowerCase();return!N.some(k=>k.id.toLowerCase()===B)},[h,N]),lt=co(te=>{m&&y(B=>{let k=Z.length;return k===0?0:Math.min(k-1,Math.max(0,B+te))})},[m,Z.length]),pt=co(()=>{m&&(R(te=>!te),y(0))},[m]),F=co(te=>{L(te),H(0),V(!1),J(""),u(!1)},[]),z=co(()=>{if(A){if(K){let Co=fy(I);if(Co===null)return null;let Ie=A;return O(),{model:Ie,effort:Co}}if(G[Ki(j)]?.kind==="custom")return V(!0),J(""),null;let k=my(Ki(j));if(k===null)return null;let Xe=A;return O(),{model:Xe,effort:k}}if(m){let B=oe>=0?Z[oe]:void 0;if(B)return F(B.supportsTools===void 0?{kind:"custom",model:B.id}:{kind:"custom",model:B.id,supportsTools:B.supportsTools}),null;let k=h.trim();return k===""||F({kind:"custom",model:k}),null}if(n===se)return u(!0),g(""),y(0),R(!1),null;let te=s[n];return te&&F({kind:"tier",key:te.key}),null},[A,K,I,G,j,s,n,se,m,h,Z,oe,O,F]),qe=co(te=>{!A||K||H(B=>Ki(B+te))},[A,K]),pe=co(te=>{if(!K)return;let B=te.replace(/[\r\n\t]/g,"");B!==""&&J(k=>k+B)},[K]),ke=co(()=>{K&&J(te=>te.slice(0,-1))},[K]),Ze=co(()=>K?(V(!1),J(""),!0):A?(L(null),H(0),!0):!1,[K,A]),Zn=vs(()=>{if(!K)return null;let te=gm(I);return te.ok?null:te.reason},[K,I]),Ro=co(te=>{if(!m)return;let B=te.replace(/[\r\n\t]/g,"");B!==""&&(y(0),g(k=>k+B))},[m]),Uo=co(()=>{m&&(y(0),g(te=>te.slice(0,-1)))},[m]);return{open:e,selected:n,tiers:s,loading:a,usingFallback:l,customSelected:de,customInputOpen:m,customInput:h,customSuggestions:st,customWarnOutOfCatalog:At,customBrowserAvailable:N.length>0,customFilteredCount:Z.length,customTotalCount:N.length,customRows:Ht,customBrowseIndex:oe,customHasMoreAbove:Me>0,customHasMoreBelow:Me+hu<Z.length,customToolsOnly:w,customNoToolsWarning:ft,openPicker:le,closePicker:O,move:ye,confirm:z,appendCustom:Ro,backspaceCustom:Uo,browseMove:lt,toggleToolsOnly:pt,effortStepOpen:A!==null,effortOptions:G,effortSelected:Ki(j),currentEffort:t.currentEffort,effortCustomOpen:K,effortCustomInput:I,effortCustomWarn:Zn,effortMove:qe,appendEffortCustom:pe,backspaceEffortCustom:ke,backFromEffort:Ze}}function gQ(t){let e=[t.name,t.family].map(o=>o.trim()).filter(o=>o!=="");return e.length>0?`${t.id} \xB7 ${e.join(" \xB7 ")}`:t.id}var hu,G$=p(()=>{"use strict";D();Sr();hu=10});import{useCallback as vh,useState as Mw}from"react";function z$(t){let e=[];e.push({kind:"mode",mode:t.mode,actionable:!0});for(let o of Vu)e.push({kind:"safe-tool",tool:o,decision:t.effectiveSafeDefault(o),actionable:!0});for(let o of t.sessionGrants.list())e.push({kind:"grant",grantKey:o,actionable:!0});for(let o of Tg)e.push({kind:"locked",category:o,actionable:!1});return e}function K$(t){let[e,o]=Mw(!1),[n,r]=Mw(0),[s,i]=Mw(0),a=z$(t),c=vh(()=>{o(!0),r(0),i(u=>u+1)},[]),l=vh(()=>{o(!1)},[]),d=vh(u=>{r(h=>{let g=Math.max(0,a.length-1);return Math.min(g,Math.max(0,h+u))})},[a.length]),m=vh(()=>{let u=a[n];if(!(!u||!u.actionable)){switch(u.kind){case"mode":t.setMode(Rx(t.mode));break;case"grant":t.sessionGrants.revoke(u.grantKey);break;case"safe-tool":{let h=u.decision==="allow"?"ask":"allow";t.setSafeToolDefault(u.tool,h);break}}i(h=>h+1),r(h=>Math.min(h,Math.max(0,z$(t).length-1)))}},[a,n,t]);return{open:e,selected:n,rows:a,mode:t.mode,openPanel:c,closePanel:l,move:d,act:m}}var Y$=p(()=>{"use strict";D();Cx()});import{useCallback as kh,useState as V$}from"react";function X$(t){let e=Do.findIndex(o=>o.name===t);return e>=0?e:0}function J$(t){let[e,o]=V$(!1),[n,r]=V$(()=>X$(t.currentTheme)),s=kh(()=>{r(X$(t.currentTheme)),o(!0)},[t.currentTheme]),i=kh(()=>{o(!1)},[]),a=kh(l=>{r(d=>{let m=Math.max(0,Do.length-1);return Math.min(m,Math.max(0,d+l))})},[]),c=kh(()=>{let l=Do[n];return o(!1),l?l.name:null},[n]);return{open:e,selected:n,themes:Do,openPicker:s,closePicker:i,move:a,confirm:c}}var Q$=p(()=>{"use strict";Yr()});import{useCallback as xh,useState as Z$}from"react";function eF(t){let e=Pt.findIndex(o=>o.code===t);return e>=0?e:0}function tF(t){let[e,o]=Z$(!1),[n,r]=Z$(()=>eF(t.currentLang)),s=xh(()=>{r(eF(t.currentLang)),o(!0)},[t.currentLang]),i=xh(()=>{o(!1)},[]),a=xh(l=>{r(d=>{let m=Math.max(0,Pt.length-1);return Math.min(m,Math.max(0,d+l))})},[]),c=xh(()=>{let l=Pt[n];return o(!1),l?l.code:null},[n]);return{open:e,selected:n,langs:Pt,openPicker:s,closePicker:i,move:a,confirm:c}}var oF=p(()=>{"use strict";mt()});function Sh(t,e=rn){let o=t.trim().toLowerCase();if(o!=="")return e.find(n=>n.name.toLowerCase()===o)}function nF(t,e=rn){if(t.length===0)return e;let o=new Map(e.map(s=>[s.name.toLowerCase(),s])),n=new Set,r=[];for(let s of t){let i=s.name.trim();if(i==="")continue;let a=i.toLowerCase();if(n.has(a))continue;n.add(a);let c=o.get(a);r.push(c?{...c,name:i}:{name:i,label:yQ(i),summary:"cadastrado no broker"})}return r.sort((s,i)=>s.isDefault&&!i.isDefault?-1:i.isDefault&&!s.isDefault?1:s.name.localeCompare(i.name)),r}function yQ(t){return t.charAt(0).toUpperCase()+t.slice(1)}var rn,wh=p(()=>{"use strict";rn=[{name:"openrouter",label:"OpenRouter",summary:"gateway multi-provider (padr\xE3o do broker)",isDefault:!0},{name:"deepseek",label:"DeepSeek",summary:"API direta da DeepSeek"}]});import{useCallback as gu,useRef as bQ,useState as yu}from"react";function bu(t,e){if(e===void 0)return 0;let o=t.findIndex(n=>n.name.toLowerCase()===e.toLowerCase());return o>=0?o:0}function rF(t){let[e,o]=yu(!1),[n,r]=yu(rn),[s,i]=yu(()=>bu(rn,t.currentProvider)),[a,c]=yu(!1),[l,d]=yu(null),m=bQ(!1),u=gu(async()=>{if(!m.current){if(m.current=!0,!t.providersClient){r(rn),d(!0),i(bu(rn,t.currentProvider));return}c(!0);try{let w=await t.providersClient.list(),R=nF(w),A=w.length===0;r(R),d(A),i(bu(R,t.currentProvider))}catch{r(rn),d(!0),i(bu(rn,t.currentProvider))}finally{c(!1)}}},[t.providersClient,t.currentProvider]),h=gu(()=>{i(bu(n,t.currentProvider)),o(!0),u()},[t.currentProvider,n,u]),g=gu(()=>{o(!1)},[]),b=gu(w=>{i(R=>{let A=Math.max(0,n.length-1);return Math.min(A,Math.max(0,R+w))})},[n.length]),y=gu(()=>{let w=n[s];return o(!1),w?w.name:null},[n,s]);return{open:e,selected:s,providers:n,loading:a,usingFallback:l,openPicker:h,closePicker:g,move:b,confirm:y}}var sF=p(()=>{"use strict";wh()});import{useCallback as Ah,useState as Lw}from"react";function iF(t){let[e,o]=Lw(!1),[n,r]=Lw(0),[s,i]=Lw([]),a=Ah(()=>{i(GS(t.store,t.limit??WS)),r(0),o(!0)},[t.store,t.limit]),c=Ah(()=>{o(!1)},[]),l=Ah(m=>{r(u=>{let h=Math.max(0,s.length-1);return Math.min(h,Math.max(0,u+m))})},[s.length]),d=Ah(()=>{let m=s[n];return o(!1),m?m.id:null},[s,n]);return{open:e,selected:n,sessions:s,openPicker:a,closePicker:c,move:l,confirm:d}}var aF=p(()=>{"use strict";ah()});import{useCallback as vu,useState as Eh}from"react";function cF(t){let[e,o]=Eh("closed"),[n,r]=Eh(0),[s,i]=Eh([]),[a,c]=Eh(0),l=vu(()=>{let g=[];try{g=n$(t.source.list(),t.limit??30)}catch{g=[]}i(g),r(0),c(0),o("list")},[t.source,t.limit]),d=vu(()=>{o("closed")},[]),m=vu(g=>{r(b=>{let y=e==="action"?lh.length:s.length,w=Math.max(0,y-1);return Math.min(w,Math.max(0,b+g))})},[e,s.length]),u=vu(()=>{if(e==="list")return s.length===0||(c(n),r(0),o("action")),null;if(e==="action"){let g=s[a],b=lh[n];return o("closed"),!g||!b?null:{checkpointId:g.id,action:b}}return null},[e,s,n,a]),h=vu(()=>{if(e==="action"){r(a),o("list");return}o("closed")},[e,a]);return{phase:e,open:e!=="closed",selected:n,checkpoints:s,actions:lh,target:e==="action"?s[a]:void 0,openPicker:l,closePicker:d,move:m,confirm:u,back:h}}var lF=p(()=>{"use strict";KS()});import{useCallback as ku,useMemo as kQ,useState as Pw}from"react";function dF(t={}){let[e,o]=Pw(!1),[n,r]=Pw(""),[s,i]=Pw(0),a=t.userCommands??[],c=t.natives,l=kQ(()=>WD(n,a,c),[n,a,c]),d=ku(()=>{r(""),i(0),o(!0)},[]),m=ku(()=>{o(!1)},[]),u=ku(b=>{r(b),i(0)},[]),h=ku(b=>{i(y=>{let w=Math.max(0,l.length-1);return Math.min(w,Math.max(0,y+b))})},[l.length]),g=ku(()=>{let b=l[s]??null;return o(!1),b},[l,s]);return{open:e,query:n,hits:l,selected:s,openPalette:d,closePalette:m,setQuery:u,move:h,confirm:g}}var uF=p(()=>{"use strict";Va()});function mF(t){let e=t.trim();if(e==="")return{kind:"stop"};if(xQ.test(e)){let o=e.replace(SQ,"").trim();return o===""?{kind:"stop"}:{kind:"redirect",inject:o}}return{kind:"redirect",inject:e}}var xQ,SQ,fF=p(()=>{"use strict";xQ=/^\/ask(?=\s|$)/i,SQ=/^\/ask\s*/i});function pF(t,e=!0){return t==="thinking"||t==="boot"||t==="compacting"?!0:t==="streaming"||t==="retrying"?e:!1}function hF(t){return t==="thinking"||t==="streaming"||t==="retrying"||t==="compacting"}var gF=p(()=>{"use strict"});import{appendFileSync as wQ}from"node:fs";import{homedir as AQ}from"node:os";import{join as EQ}from"node:path";function TQ(t=process.env){let e=t.ALUY_DEBUG_RENDER;return e!==void 0&&e!==""&&e!=="0"&&e!=="false"}function Th(t){if(TQ())try{Iw===void 0&&(Iw=EQ(AQ(),".aluy","render-debug.log")),wQ(Iw,`${new Date().toISOString()} ${t}