@abacus-ai/cli 2.5.2-canary.3 → 2.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -75178,7 +75178,7 @@ No matching component was found for:
|
|
|
75178
75178
|
* This source code is licensed under the MIT license found in the
|
|
75179
75179
|
* LICENSE file in the root directory of this source tree.
|
|
75180
75180
|
*/
|
|
75181
|
-
var TPe=G((e=>{var t=MY().__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;e.c=function(e){return t.H.useMemoCache(e)}})),gQ=G(((e,t)=>{t.exports=TPe()}))();function $(e){let t=(0,gQ.c)(14),{color:n,backgroundColor:r,dimColor:i,bold:a,italic:o,underline:s,strikethrough:c,inverse:l,wrap:u,transform:d,children:f}=e,p=i===void 0?!1:i,m=a===void 0?!1:a,h=o===void 0?!1:o,g=s===void 0?!1:s,_=c===void 0?!1:c,v=l===void 0?!1:l,y=u===void 0?`wrap`:u;if(f==null)return null;let b;t[0]!==r||t[1]!==m||t[2]!==n||t[3]!==p||t[4]!==v||t[5]!==h||t[6]!==_||t[7]!==g||t[8]!==d?(b=e=>(p&&(e=iQ().dim().render(e)),n&&(e=rQ(e,n,`foreground`)),r&&(e=rQ(e,r,`background`)),m&&(e=iQ().bold().render(e)),h&&(e=iQ().italic().render(e)),g&&(e=iQ().underline().render(e)),_&&(e=iQ().strikethrough().render(e)),v&&(e=iQ().reverse().render(e)),d&&(e=d(e)),e),t[0]=r,t[1]=m,t[2]=n,t[3]=p,t[4]=v,t[5]=h,t[6]=_,t[7]=g,t[8]=d,t[9]=b):b=t[9];let x=b,S;return t[10]!==f||t[11]!==x||t[12]!==y?(S=(0,Z.jsx)(`jar-text`,{style:{flexGrow:0,flexShrink:0,flexDirection:`row`,textWrap:y},internal_transform:x,children:f}),t[10]=f,t[11]=x,t[12]=y,t[13]=S):S=t[13],S}const EPe=/\x1b\[[\d:]*;(\d+)/;function DPe(e){let t=EPe.exec(e);return t?(parseInt(t[1],10)-1&8)!=0:!1}const _Q={upArrow:!1,downArrow:!1,leftArrow:!1,rightArrow:!1,pageDown:!1,pageUp:!1,home:!1,end:!1,return:!1,escape:!1,ctrl:!1,shift:!1,tab:!1,backspace:!1,delete:!1,meta:!1,super:!1,paste:!1,raw:``},vQ=(e,t={})=>{let{addInputListener:n}=(0,X.use)(jZ),r=(0,X.useRef)(e);r.current=e,(0,X.useEffect)(()=>{if(t.isActive!==!1)return n(e=>{if(lX(e))return;if(e.startsWith(`\x1B[200~`)){let t=e.indexOf(`\x1B[201~`),n=t===-1?e.slice(6):e.slice(6,t);_Q.upArrow=!1,_Q.downArrow=!1,_Q.leftArrow=!1,_Q.rightArrow=!1,_Q.pageDown=!1,_Q.pageUp=!1,_Q.home=!1,_Q.end=!1,_Q.return=!1,_Q.escape=!1,_Q.ctrl=!1,_Q.shift=!1,_Q.tab=!1,_Q.backspace=!1,_Q.delete=!1,_Q.meta=!1,_Q.super=!1,_Q.paste=!0,_Q.raw=e,r.current(n,{..._Q});return}let t=PMe(e),n=t?t.split(`+`):[],i=n[n.length-1]??``,a=n.includes(`ctrl`),o=n.includes(`shift`),s=n.includes(`alt`);_Q.upArrow=i===`up`,_Q.downArrow=i===`down`,_Q.leftArrow=i===`left`,_Q.rightArrow=i===`right`,_Q.pageDown=i===`pagedown`,_Q.pageUp=i===`pageup`,_Q.home=i===`home`,_Q.end=i===`end`,_Q.return=i===`return`||i===`enter`,_Q.escape=i===`escape`,_Q.ctrl=a,_Q.shift=o,_Q.tab=i===`tab`,_Q.backspace=i===`backspace`,_Q.delete=i===`delete`,_Q.meta=s,_Q.super=DPe(e),_Q.paste=!1,_Q.raw=e;let c=_Q,l=``;if(a&&i)l=i;else if(!c.upArrow&&!c.downArrow&&!c.leftArrow&&!c.rightArrow&&!c.pageDown&&!c.pageUp&&!c.home&&!c.end&&!c.return&&!c.escape&&!c.tab&&!c.backspace&&!c.delete){let t=LMe(e);t===void 0?e.length===1?l=e:i.length===1&&(l=i):l=t}r.current(l,{...c})})},[t.isActive,n])},OPe=()=>{let e=(0,X.use)(MZ);if(!e)throw Error(`useApp must be used within a jar render context`);return{exit:e.exit,requestFullRedraw:e.requestFullRedraw}},yQ=e=>{let t=(0,gQ.c)(23),n;t[0]===e?n=t[1]:(n=e===void 0?{}:e,t[0]=e,t[1]=n);let{isActive:r,autoFocus:i,id:a}=n,o=r===void 0?!0:r,s=i===void 0?!1:i,{activeId:c,add:l,remove:u,activate:d,deactivate:f,focus:p}=(0,X.use)(kZ),m;t[2]===a?m=t[3]:(m=a??Math.random().toString().slice(2,7),t[2]=a,t[3]=m);let h=m,g;t[4]!==l||t[5]!==s||t[6]!==h||t[7]!==u?(g=()=>(l(h,{autoFocus:s}),()=>{u(h)}),t[4]=l,t[5]=s,t[6]=h,t[7]=u,t[8]=g):g=t[8];let _;t[9]!==s||t[10]!==h?(_=[h,s],t[9]=s,t[10]=h,t[11]=_):_=t[11],(0,X.useEffect)(g,_);let v;t[12]!==d||t[13]!==f||t[14]!==h||t[15]!==o?(v=()=>{o?d(h):f(h)},t[12]=d,t[13]=f,t[14]=h,t[15]=o,t[16]=v):v=t[16];let y;t[17]!==h||t[18]!==o?(y=[o,h],t[17]=h,t[18]=o,t[19]=y):y=t[19],(0,X.useEffect)(v,y);let b=!!h&&c===h,x;return t[20]!==p||t[21]!==b?(x={isFocused:b,focus:p},t[20]=p,t[21]=b,t[22]=x):x=t[22],x};function bQ(){return(0,X.use)(AZ)}const xQ=()=>{let e=(0,X.use)(NZ);if(!e)throw Error(`useTerminal must be used within a jar render context`);return e.output},SQ=RegExp(`[\\x1b\\x9b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><~]|\\x1b\\][\\s\\S]*?(?:\\x07|\\x1b\\\\)`,`g`);function kPe(){return new RegExp(SQ.source,`g`)}function APe(e){return e.replace(SQ,``)}function jPe(e){return e.replace(/[\x07\x1b\x9c]/g,``)}function CQ(e){return`\x1B]2;`+jPe(e)+`\x07`}var wQ=G(((e,t)=>{t.exports={name:`@codellm/cli`,version:`2.5.2-canary.3`,private:!0,bin:{abacusai:`dist/index.mjs`},files:[`dist`,`LICENSE.txt`],type:`module`,scripts:{"prepare-publish":`bun ./scripts/prepare-publish.ts`,build:`tsdown`,"check-types":`tsgo -b --noEmit`,test:`FORCE_COLOR=1 vitest run`,"test:watch":`FORCE_COLOR=1 vitest`,"test:ui":`FORCE_COLOR=1 vitest --ui`,"test:coverage":`FORCE_COLOR=1 vitest run --coverage`},dependencies:{"@clack/prompts":`^0.11.0`,"@codellm/agent":`workspace:*`,"@codellm/api":`workspace:*`,"@codellm/auth":`workspace:*`,"@codellm/comms":`workspace:*`,"@codellm/jar":`workspace:*`,"@codellm/logging":`workspace:*`,"@codellm/product":`workspace:*`,"@logtape/logtape":`catalog:`,"@orpc/client":`catalog:`,"@orpc/contract":`catalog:`,"@orpc/server":`catalog:`,"@sentry/node-core":`catalog:`,"@slack/web-api":`^7.0.0`,"@tanstack/react-query":`catalog:`,"@vscode/ripgrep":`catalog:`,"ansi-styles":`catalog:`,"beautiful-mermaid":`^1.1.3`,"cli-boxes":`catalog:`,"cli-highlight":`^2.1.11`,conf:`catalog:`,diff:`catalog:`,fzf:`catalog:`,"gradient-string":`^3.0.0`,immer:`catalog:`,"isomorphic-git":`catalog:`,marked:`^17.0.6`,"node-notifier":`catalog:`,"patchright-core":`catalog:`,react:`catalog:react`,"react-compiler-runtime":`^1.0.0`,remend:`^1.3.0`,semver:`catalog:`,"shell-history":`^2.0.1`,"string-width":`catalog:`,"strip-ansi":`catalog:`,trash:`catalog:`,zod:`catalog:`},devDependencies:{"@babel/core":`catalog:infra`,"@codellm/configs":`workspace:*`,"@playwright/mcp":`^0.0.68`,"@rolldown/plugin-babel":`catalog:infra`,"@types/diff":`^8.0.0`,"@types/node":`catalog:`,"@types/react":`catalog:react`,"@types/semver":`^7.7.1`,"@typescript/native-preview":`catalog:infra`,"@vitejs/plugin-react":`catalog:infra`,"@vitest/coverage-v8":`^4.1.5`,"@vitest/ui":`^4.1.5`,"@xterm/addon-serialize":`^0.14.0`,"@xterm/headless":`^6.0.0`,"babel-plugin-react-compiler":`catalog:infra`,"cli-testing-library":`^3.0.1`,jsdom:`^27.4.0`,"react-devtools-core":`^6.1.5`,"svg-term-cli":`^2.1.1`,tsdown:`catalog:infra`,vite:`catalog:infra`,vitest:`catalog:infra`,zigpty:`^0.1.6`},engines:{node:`>=18`}}})),TQ=tt(wQ(),1);function EQ(e,t){let n=UF(e);return GF(F.isAbsolute(n)?n:F.resolve(t,n))}function DQ(e,t){return(e??[]).map(e=>EQ(e,t))}function OQ(e,t){return{read:async()=>{let n={};if(!e)return n;e.model&&(n.model=e.model);let r=DQ(e[`add-dir`],t);return r.length>0&&(n.additionalDirectories=r),e[`no-agents-md`]&&(n.autoLoadAgentsMd=!1),e.debug?n.logLevel=`debug`:e.verbose&&(n.logLevel=`info`),n}}}let kQ=null;function AQ(e){let t=(0,_Y.prerelease)(e);return t&&t.length>0&&typeof t[0]==`string`?t[0]:`latest`}function jQ(e){if(!e)return``;try{return E(e)}catch{return e}}function MQ(){return{invokedPath:jQ(process.argv[1]??``),execPath:jQ(process.execPath??process.argv[0]??``)}}function NQ(e){let t=_n.configDirName.replace(/^\./,``).replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);return RegExp(`[/\\\\]\\.?${t}[/\\\\]bin[/\\\\]`,`i`).test(e)}function PQ(e){return/[/\\]node_modules[/\\]/.test(e)||/[/\\]\._npx[/\\]/.test(e)||/[/\\]_npx[/\\]/.test(e)||/[/\\]\.?npm[/\\]/.test(e)||/[/\\]\.?pnpm[/\\]/.test(e)||/[/\\]\.?yarn[/\\]/.test(e)||/[/\\]\.bun[/\\]/.test(e)}function FQ(){let e=(process.env.npm_command??``).toLowerCase();if(e===`exec`||e===`dlx`)return!0;let{invokedPath:t,execPath:n}=MQ();return/[/\\]_npx[/\\]|[/\\]dlx[/\\]|[/\\]\.cache[/\\]/.test(t+`|`+n)}function IQ(){let e=process.env.npm_config_user_agent;if(e){let t=e.split(`/`)[0];if(t===`yarn`||t===`pnpm`||t===`bun`||t===`npm`)return t}let{invokedPath:t,execPath:n}=MQ(),r=`${t}|${n}`;return/[/\\]\.?yarn[/\\]/.test(r)?`yarn`:/[/\\]\.?pnpm[/\\]/.test(r)?`pnpm`:/[/\\]\.bun[/\\]/.test(r)||process.versions.bun!==void 0&&!NQ(n)?`bun`:`npm`}function MPe(){let{execPath:e,invokedPath:t}=MQ();return PQ(t)||PQ(e)?!1:NQ(e)||NQ(t)}function LQ(){let e=`${_n.internalEnvPrefix}DEV`,t=process.env[e];if(t===`1`||t===`true`)return!0;let{invokedPath:n,execPath:r}=MQ();return!(NQ(r)||NQ(n)||PQ(n)||PQ(r)||process.env.npm_config_user_agent)}function NPe(){let{execPath:e}=MQ(),t=IQ(),n=FQ();return LQ()?{installationType:`development`,packageManager:t,isEphemeral:n,execPath:e}:MPe()?{installationType:`native`,packageManager:t,isEphemeral:n,execPath:e}:{installationType:`package-manager`,packageManager:t,isEphemeral:n,execPath:e}}function PPe(){return`${process.platform===`win32`?`win32`:process.platform===`darwin`?`darwin`:`linux`}-${process.arch===`arm64`?`arm64`:`x64`}`}async function FPe(e){let t=Date.now();if(kQ&&t-kQ.timestamp<6e4)return kQ.tags;let n=await fetch(`https://registry.npmjs.org/${e}`,{signal:AbortSignal.timeout(1e4),headers:{accept:`application/json`}});if(!n.ok)throw Error(`Registry returned ${n.status}`);let r=(await n.json())[`dist-tags`]??{};return kQ={tags:r,timestamp:t},r}async function IPe(e,t,n,r){let i=t??AQ(e),a=(r??`https://apps.abacus.ai`).replace(/\/$/,``),o=new URL(`${a}/api/v0/_getCodellmCliVersion`);o.searchParams.set(`channel`,i),n&&o.searchParams.set(`platform`,n),o.searchParams.set(`cli_version`,e);let s=await fetch(o.toString(),{signal:AbortSignal.timeout(1e4)});if(s.status===204)return null;if(!s.ok)throw Error(`API returned ${s.status}`);let c=await s.json(),l=c&&`result`in c&&c.result?c.result:c??{};if(!l.version||!l.channel)throw Error(`API returned invalid payload`);return{currentVersion:e,latestVersion:l.version,tag:l.channel,packageManager:IQ(),isEphemeral:FQ(),installationType:`native`,downloadUrl:l.url}}async function LPe(e,t){let n=t??AQ(e),r=IQ(),i=FQ(),a=(await FPe(vn.publishName))[n];return!a&&n!==`latest`||!a||a===e?null:{currentVersion:e,latestVersion:a,tag:n,packageManager:r,isEphemeral:i,installationType:`package-manager`}}async function RQ(e,t,n,r){let i=NPe();if(i.installationType===`native`)try{return await IPe(e,t,PPe(),n)}catch{return null}return i.installationType===`development`&&!r?.includeDev?null:await LPe(e,t)}function zQ(e){if(e.installationType===`native`)return`${_n.binName} upgrade`;let t=`${vn.publishName}@${e.tag}`;switch(e.packageManager){case`yarn`:return`yarn global add ${t}`;case`pnpm`:return`pnpm add -g ${t}`;case`bun`:return`bun add -g ${t}`;default:return`npm install -g ${t}`}}function BQ(e){try{return{ok:!0,output:le(zQ(e),{stdio:`pipe`,encoding:`utf-8`}).trim()}}catch(e){return{ok:!1,output:e instanceof Error&&`stderr`in e?String(e.stderr).trim():e instanceof Error?e.message:`Unknown error`}}}function RPe(){let e=P.join(t.homedir(),_n.configDirName,`bin`);try{let n=P.dirname(jQ(process.execPath));return!n||n.toLowerCase().startsWith(t.tmpdir().toLowerCase())?e:n}catch{return e}}async function VQ(e){if(!e.downloadUrl)return{ok:!1,output:`No download URL`};let n=P.join(t.tmpdir(),`abacusai-update-${Date.now()}`),r=process.platform===`win32`,i=r?`${_n.binName}.exe`:_n.binName,a=RPe();try{await we.mkdir(n,{recursive:!0}),await we.mkdir(a,{recursive:!0});let t=P.join(n,r?`update.zip`:`update.tar.gz`),o=await fetch(e.downloadUrl);if(!o.ok)throw Error(`Download failed: ${o.status}`);let s=Buffer.from(await o.arrayBuffer());await we.writeFile(t,s),le(r?`powershell -Command "Expand-Archive -Path '${t}' -DestinationPath '${n}' -Force"`:`tar -xzf "${t}" -C "${n}"`,{stdio:`pipe`});let c=P.join(n,i),l=P.join(a,i);if(r){let e=`${l}.old`;await we.rm(e,{force:!0}).catch(()=>{}),await we.rename(l,e).catch(()=>{}),await we.copyFile(c,l),await we.rm(e,{force:!0}).catch(()=>{})}else await we.copyFile(c,l),await we.chmod(l,493);return{ok:!0,output:`Updated to ${e.latestVersion}`}}catch(e){return{ok:!1,output:e instanceof Error?e.message:`Unknown error`}}finally{await we.rm(n,{recursive:!0,force:!0}).catch(()=>{})}}async function HQ(e,t){if(!e?.length)return[];let n=new Set,r=[];for(let i of e){let e=await nq(EQ(i,t));for(let t of e)t.disabled||n.has(t.id)||(n.add(t.id),r.push(t))}return r}function zPe(e,t){let n=e=>{let n=e.toLowerCase();if(n===t)return 1e3;if(n.startsWith(t))return 900;let r=0,i=-1;for(let e of t){let t=n.indexOf(e,i+1);if(t===-1)return 0;r+=100-(t-i),i=t}return r+=Math.max(0,50-n.length),r},r=null,i=0;for(let t of e){let e=Math.max(n(t.name??``),n(t.llmName));e>i&&(i=e,r=t.llmName)}return i>=100?r:null}async function UQ(e,t,n=it.CLI){let r=(await e.listLLMModels({coworkV2:n===it.COWORK}))?.result??[];return r.length||(process.stderr.write(`Error: No models available.
|
|
75181
|
+
var TPe=G((e=>{var t=MY().__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;e.c=function(e){return t.H.useMemoCache(e)}})),gQ=G(((e,t)=>{t.exports=TPe()}))();function $(e){let t=(0,gQ.c)(14),{color:n,backgroundColor:r,dimColor:i,bold:a,italic:o,underline:s,strikethrough:c,inverse:l,wrap:u,transform:d,children:f}=e,p=i===void 0?!1:i,m=a===void 0?!1:a,h=o===void 0?!1:o,g=s===void 0?!1:s,_=c===void 0?!1:c,v=l===void 0?!1:l,y=u===void 0?`wrap`:u;if(f==null)return null;let b;t[0]!==r||t[1]!==m||t[2]!==n||t[3]!==p||t[4]!==v||t[5]!==h||t[6]!==_||t[7]!==g||t[8]!==d?(b=e=>(p&&(e=iQ().dim().render(e)),n&&(e=rQ(e,n,`foreground`)),r&&(e=rQ(e,r,`background`)),m&&(e=iQ().bold().render(e)),h&&(e=iQ().italic().render(e)),g&&(e=iQ().underline().render(e)),_&&(e=iQ().strikethrough().render(e)),v&&(e=iQ().reverse().render(e)),d&&(e=d(e)),e),t[0]=r,t[1]=m,t[2]=n,t[3]=p,t[4]=v,t[5]=h,t[6]=_,t[7]=g,t[8]=d,t[9]=b):b=t[9];let x=b,S;return t[10]!==f||t[11]!==x||t[12]!==y?(S=(0,Z.jsx)(`jar-text`,{style:{flexGrow:0,flexShrink:0,flexDirection:`row`,textWrap:y},internal_transform:x,children:f}),t[10]=f,t[11]=x,t[12]=y,t[13]=S):S=t[13],S}const EPe=/\x1b\[[\d:]*;(\d+)/;function DPe(e){let t=EPe.exec(e);return t?(parseInt(t[1],10)-1&8)!=0:!1}const _Q={upArrow:!1,downArrow:!1,leftArrow:!1,rightArrow:!1,pageDown:!1,pageUp:!1,home:!1,end:!1,return:!1,escape:!1,ctrl:!1,shift:!1,tab:!1,backspace:!1,delete:!1,meta:!1,super:!1,paste:!1,raw:``},vQ=(e,t={})=>{let{addInputListener:n}=(0,X.use)(jZ),r=(0,X.useRef)(e);r.current=e,(0,X.useEffect)(()=>{if(t.isActive!==!1)return n(e=>{if(lX(e))return;if(e.startsWith(`\x1B[200~`)){let t=e.indexOf(`\x1B[201~`),n=t===-1?e.slice(6):e.slice(6,t);_Q.upArrow=!1,_Q.downArrow=!1,_Q.leftArrow=!1,_Q.rightArrow=!1,_Q.pageDown=!1,_Q.pageUp=!1,_Q.home=!1,_Q.end=!1,_Q.return=!1,_Q.escape=!1,_Q.ctrl=!1,_Q.shift=!1,_Q.tab=!1,_Q.backspace=!1,_Q.delete=!1,_Q.meta=!1,_Q.super=!1,_Q.paste=!0,_Q.raw=e,r.current(n,{..._Q});return}let t=PMe(e),n=t?t.split(`+`):[],i=n[n.length-1]??``,a=n.includes(`ctrl`),o=n.includes(`shift`),s=n.includes(`alt`);_Q.upArrow=i===`up`,_Q.downArrow=i===`down`,_Q.leftArrow=i===`left`,_Q.rightArrow=i===`right`,_Q.pageDown=i===`pagedown`,_Q.pageUp=i===`pageup`,_Q.home=i===`home`,_Q.end=i===`end`,_Q.return=i===`return`||i===`enter`,_Q.escape=i===`escape`,_Q.ctrl=a,_Q.shift=o,_Q.tab=i===`tab`,_Q.backspace=i===`backspace`,_Q.delete=i===`delete`,_Q.meta=s,_Q.super=DPe(e),_Q.paste=!1,_Q.raw=e;let c=_Q,l=``;if(a&&i)l=i;else if(!c.upArrow&&!c.downArrow&&!c.leftArrow&&!c.rightArrow&&!c.pageDown&&!c.pageUp&&!c.home&&!c.end&&!c.return&&!c.escape&&!c.tab&&!c.backspace&&!c.delete){let t=LMe(e);t===void 0?e.length===1?l=e:i.length===1&&(l=i):l=t}r.current(l,{...c})})},[t.isActive,n])},OPe=()=>{let e=(0,X.use)(MZ);if(!e)throw Error(`useApp must be used within a jar render context`);return{exit:e.exit,requestFullRedraw:e.requestFullRedraw}},yQ=e=>{let t=(0,gQ.c)(23),n;t[0]===e?n=t[1]:(n=e===void 0?{}:e,t[0]=e,t[1]=n);let{isActive:r,autoFocus:i,id:a}=n,o=r===void 0?!0:r,s=i===void 0?!1:i,{activeId:c,add:l,remove:u,activate:d,deactivate:f,focus:p}=(0,X.use)(kZ),m;t[2]===a?m=t[3]:(m=a??Math.random().toString().slice(2,7),t[2]=a,t[3]=m);let h=m,g;t[4]!==l||t[5]!==s||t[6]!==h||t[7]!==u?(g=()=>(l(h,{autoFocus:s}),()=>{u(h)}),t[4]=l,t[5]=s,t[6]=h,t[7]=u,t[8]=g):g=t[8];let _;t[9]!==s||t[10]!==h?(_=[h,s],t[9]=s,t[10]=h,t[11]=_):_=t[11],(0,X.useEffect)(g,_);let v;t[12]!==d||t[13]!==f||t[14]!==h||t[15]!==o?(v=()=>{o?d(h):f(h)},t[12]=d,t[13]=f,t[14]=h,t[15]=o,t[16]=v):v=t[16];let y;t[17]!==h||t[18]!==o?(y=[o,h],t[17]=h,t[18]=o,t[19]=y):y=t[19],(0,X.useEffect)(v,y);let b=!!h&&c===h,x;return t[20]!==p||t[21]!==b?(x={isFocused:b,focus:p},t[20]=p,t[21]=b,t[22]=x):x=t[22],x};function bQ(){return(0,X.use)(AZ)}const xQ=()=>{let e=(0,X.use)(NZ);if(!e)throw Error(`useTerminal must be used within a jar render context`);return e.output},SQ=RegExp(`[\\x1b\\x9b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><~]|\\x1b\\][\\s\\S]*?(?:\\x07|\\x1b\\\\)`,`g`);function kPe(){return new RegExp(SQ.source,`g`)}function APe(e){return e.replace(SQ,``)}function jPe(e){return e.replace(/[\x07\x1b\x9c]/g,``)}function CQ(e){return`\x1B]2;`+jPe(e)+`\x07`}var wQ=G(((e,t)=>{t.exports={name:`@codellm/cli`,version:`2.5.2`,private:!0,bin:{abacusai:`dist/index.mjs`},files:[`dist`,`LICENSE.txt`],type:`module`,scripts:{"prepare-publish":`bun ./scripts/prepare-publish.ts`,build:`tsdown`,"check-types":`tsgo -b --noEmit`,test:`FORCE_COLOR=1 vitest run`,"test:watch":`FORCE_COLOR=1 vitest`,"test:ui":`FORCE_COLOR=1 vitest --ui`,"test:coverage":`FORCE_COLOR=1 vitest run --coverage`},dependencies:{"@clack/prompts":`^0.11.0`,"@codellm/agent":`workspace:*`,"@codellm/api":`workspace:*`,"@codellm/auth":`workspace:*`,"@codellm/comms":`workspace:*`,"@codellm/jar":`workspace:*`,"@codellm/logging":`workspace:*`,"@codellm/product":`workspace:*`,"@logtape/logtape":`catalog:`,"@orpc/client":`catalog:`,"@orpc/contract":`catalog:`,"@orpc/server":`catalog:`,"@sentry/node-core":`catalog:`,"@slack/web-api":`^7.0.0`,"@tanstack/react-query":`catalog:`,"@vscode/ripgrep":`catalog:`,"ansi-styles":`catalog:`,"beautiful-mermaid":`^1.1.3`,"cli-boxes":`catalog:`,"cli-highlight":`^2.1.11`,conf:`catalog:`,diff:`catalog:`,fzf:`catalog:`,"gradient-string":`^3.0.0`,immer:`catalog:`,"isomorphic-git":`catalog:`,marked:`^17.0.6`,"node-notifier":`catalog:`,"patchright-core":`catalog:`,react:`catalog:react`,"react-compiler-runtime":`^1.0.0`,remend:`^1.3.0`,semver:`catalog:`,"shell-history":`^2.0.1`,"string-width":`catalog:`,"strip-ansi":`catalog:`,trash:`catalog:`,zod:`catalog:`},devDependencies:{"@babel/core":`catalog:infra`,"@codellm/configs":`workspace:*`,"@playwright/mcp":`^0.0.68`,"@rolldown/plugin-babel":`catalog:infra`,"@types/diff":`^8.0.0`,"@types/node":`catalog:`,"@types/react":`catalog:react`,"@types/semver":`^7.7.1`,"@typescript/native-preview":`catalog:infra`,"@vitejs/plugin-react":`catalog:infra`,"@vitest/coverage-v8":`^4.1.5`,"@vitest/ui":`^4.1.5`,"@xterm/addon-serialize":`^0.14.0`,"@xterm/headless":`^6.0.0`,"babel-plugin-react-compiler":`catalog:infra`,"cli-testing-library":`^3.0.1`,jsdom:`^27.4.0`,"react-devtools-core":`^6.1.5`,"svg-term-cli":`^2.1.1`,tsdown:`catalog:infra`,vite:`catalog:infra`,vitest:`catalog:infra`,zigpty:`^0.1.6`},engines:{node:`>=18`}}})),TQ=tt(wQ(),1);function EQ(e,t){let n=UF(e);return GF(F.isAbsolute(n)?n:F.resolve(t,n))}function DQ(e,t){return(e??[]).map(e=>EQ(e,t))}function OQ(e,t){return{read:async()=>{let n={};if(!e)return n;e.model&&(n.model=e.model);let r=DQ(e[`add-dir`],t);return r.length>0&&(n.additionalDirectories=r),e[`no-agents-md`]&&(n.autoLoadAgentsMd=!1),e.debug?n.logLevel=`debug`:e.verbose&&(n.logLevel=`info`),n}}}let kQ=null;function AQ(e){let t=(0,_Y.prerelease)(e);return t&&t.length>0&&typeof t[0]==`string`?t[0]:`latest`}function jQ(e){if(!e)return``;try{return E(e)}catch{return e}}function MQ(){return{invokedPath:jQ(process.argv[1]??``),execPath:jQ(process.execPath??process.argv[0]??``)}}function NQ(e){let t=_n.configDirName.replace(/^\./,``).replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);return RegExp(`[/\\\\]\\.?${t}[/\\\\]bin[/\\\\]`,`i`).test(e)}function PQ(e){return/[/\\]node_modules[/\\]/.test(e)||/[/\\]\._npx[/\\]/.test(e)||/[/\\]_npx[/\\]/.test(e)||/[/\\]\.?npm[/\\]/.test(e)||/[/\\]\.?pnpm[/\\]/.test(e)||/[/\\]\.?yarn[/\\]/.test(e)||/[/\\]\.bun[/\\]/.test(e)}function FQ(){let e=(process.env.npm_command??``).toLowerCase();if(e===`exec`||e===`dlx`)return!0;let{invokedPath:t,execPath:n}=MQ();return/[/\\]_npx[/\\]|[/\\]dlx[/\\]|[/\\]\.cache[/\\]/.test(t+`|`+n)}function IQ(){let e=process.env.npm_config_user_agent;if(e){let t=e.split(`/`)[0];if(t===`yarn`||t===`pnpm`||t===`bun`||t===`npm`)return t}let{invokedPath:t,execPath:n}=MQ(),r=`${t}|${n}`;return/[/\\]\.?yarn[/\\]/.test(r)?`yarn`:/[/\\]\.?pnpm[/\\]/.test(r)?`pnpm`:/[/\\]\.bun[/\\]/.test(r)||process.versions.bun!==void 0&&!NQ(n)?`bun`:`npm`}function MPe(){let{execPath:e,invokedPath:t}=MQ();return PQ(t)||PQ(e)?!1:NQ(e)||NQ(t)}function LQ(){let e=`${_n.internalEnvPrefix}DEV`,t=process.env[e];if(t===`1`||t===`true`)return!0;let{invokedPath:n,execPath:r}=MQ();return!(NQ(r)||NQ(n)||PQ(n)||PQ(r)||process.env.npm_config_user_agent)}function NPe(){let{execPath:e}=MQ(),t=IQ(),n=FQ();return LQ()?{installationType:`development`,packageManager:t,isEphemeral:n,execPath:e}:MPe()?{installationType:`native`,packageManager:t,isEphemeral:n,execPath:e}:{installationType:`package-manager`,packageManager:t,isEphemeral:n,execPath:e}}function PPe(){return`${process.platform===`win32`?`win32`:process.platform===`darwin`?`darwin`:`linux`}-${process.arch===`arm64`?`arm64`:`x64`}`}async function FPe(e){let t=Date.now();if(kQ&&t-kQ.timestamp<6e4)return kQ.tags;let n=await fetch(`https://registry.npmjs.org/${e}`,{signal:AbortSignal.timeout(1e4),headers:{accept:`application/json`}});if(!n.ok)throw Error(`Registry returned ${n.status}`);let r=(await n.json())[`dist-tags`]??{};return kQ={tags:r,timestamp:t},r}async function IPe(e,t,n,r){let i=t??AQ(e),a=(r??`https://apps.abacus.ai`).replace(/\/$/,``),o=new URL(`${a}/api/v0/_getCodellmCliVersion`);o.searchParams.set(`channel`,i),n&&o.searchParams.set(`platform`,n),o.searchParams.set(`cli_version`,e);let s=await fetch(o.toString(),{signal:AbortSignal.timeout(1e4)});if(s.status===204)return null;if(!s.ok)throw Error(`API returned ${s.status}`);let c=await s.json(),l=c&&`result`in c&&c.result?c.result:c??{};if(!l.version||!l.channel)throw Error(`API returned invalid payload`);return{currentVersion:e,latestVersion:l.version,tag:l.channel,packageManager:IQ(),isEphemeral:FQ(),installationType:`native`,downloadUrl:l.url}}async function LPe(e,t){let n=t??AQ(e),r=IQ(),i=FQ(),a=(await FPe(vn.publishName))[n];return!a&&n!==`latest`||!a||a===e?null:{currentVersion:e,latestVersion:a,tag:n,packageManager:r,isEphemeral:i,installationType:`package-manager`}}async function RQ(e,t,n,r){let i=NPe();if(i.installationType===`native`)try{return await IPe(e,t,PPe(),n)}catch{return null}return i.installationType===`development`&&!r?.includeDev?null:await LPe(e,t)}function zQ(e){if(e.installationType===`native`)return`${_n.binName} upgrade`;let t=`${vn.publishName}@${e.tag}`;switch(e.packageManager){case`yarn`:return`yarn global add ${t}`;case`pnpm`:return`pnpm add -g ${t}`;case`bun`:return`bun add -g ${t}`;default:return`npm install -g ${t}`}}function BQ(e){try{return{ok:!0,output:le(zQ(e),{stdio:`pipe`,encoding:`utf-8`}).trim()}}catch(e){return{ok:!1,output:e instanceof Error&&`stderr`in e?String(e.stderr).trim():e instanceof Error?e.message:`Unknown error`}}}function RPe(){let e=P.join(t.homedir(),_n.configDirName,`bin`);try{let n=P.dirname(jQ(process.execPath));return!n||n.toLowerCase().startsWith(t.tmpdir().toLowerCase())?e:n}catch{return e}}async function VQ(e){if(!e.downloadUrl)return{ok:!1,output:`No download URL`};let n=P.join(t.tmpdir(),`abacusai-update-${Date.now()}`),r=process.platform===`win32`,i=r?`${_n.binName}.exe`:_n.binName,a=RPe();try{await we.mkdir(n,{recursive:!0}),await we.mkdir(a,{recursive:!0});let t=P.join(n,r?`update.zip`:`update.tar.gz`),o=await fetch(e.downloadUrl);if(!o.ok)throw Error(`Download failed: ${o.status}`);let s=Buffer.from(await o.arrayBuffer());await we.writeFile(t,s),le(r?`powershell -Command "Expand-Archive -Path '${t}' -DestinationPath '${n}' -Force"`:`tar -xzf "${t}" -C "${n}"`,{stdio:`pipe`});let c=P.join(n,i),l=P.join(a,i);if(r){let e=`${l}.old`;await we.rm(e,{force:!0}).catch(()=>{}),await we.rename(l,e).catch(()=>{}),await we.copyFile(c,l),await we.rm(e,{force:!0}).catch(()=>{})}else await we.copyFile(c,l),await we.chmod(l,493);return{ok:!0,output:`Updated to ${e.latestVersion}`}}catch(e){return{ok:!1,output:e instanceof Error?e.message:`Unknown error`}}finally{await we.rm(n,{recursive:!0,force:!0}).catch(()=>{})}}async function HQ(e,t){if(!e?.length)return[];let n=new Set,r=[];for(let i of e){let e=await nq(EQ(i,t));for(let t of e)t.disabled||n.has(t.id)||(n.add(t.id),r.push(t))}return r}function zPe(e,t){let n=e=>{let n=e.toLowerCase();if(n===t)return 1e3;if(n.startsWith(t))return 900;let r=0,i=-1;for(let e of t){let t=n.indexOf(e,i+1);if(t===-1)return 0;r+=100-(t-i),i=t}return r+=Math.max(0,50-n.length),r},r=null,i=0;for(let t of e){let e=Math.max(n(t.name??``),n(t.llmName));e>i&&(i=e,r=t.llmName)}return i>=100?r:null}async function UQ(e,t,n=it.CLI){let r=(await e.listLLMModels({coworkV2:n===it.COWORK}))?.result??[];return r.length||(process.stderr.write(`Error: No models available.
|
|
75182
75182
|
`),process.exit(1)),t?zPe(r,t.toLowerCase())||(process.stderr.write(`Warning: Model "${t}" not found. Using default: ${r[0].llmName}\n`),r[0].llmName):r[0].llmName}function BPe(e){if(!e)return;let t=e[`permission-mode`];if(t){let e=Rd(t);if(e)return e;process.stderr.write(`Warning: unrecognized --permission-mode "${t}". Accepted values: ${Ld}.\n`);return}if(e[`dangerously-skip-permissions`])return Pd.Yolo;if(e[`auto-accept-edits`])return Pd.AcceptEdits;if(e[`plan-mode`])return Pd.PlanMode}function WQ(e,t,n){let r=BPe(e);if(r)return r;let i=t.get(`permissionMode`);if(typeof i==`string`&&i.length>0){let e=Rd(i);if(e)return e;process.stderr.write(`Warning: unrecognized "permissionMode" value "${i}" in config — falling back to "${Ote(n)}". Accepted values: ${Ld}.\n`)}return n}const VPe=pt([`codellm`,`cli`,`settings-file`]);function GQ(e,t){let n=EQ(e,t);return{read:async()=>{try{let e=await x.readFile(n,`utf-8`);return JSON.parse(e)}catch(e){return VPe.warn`--settings file ${n} could not be loaded: ${String(e)}`,{}}}}}const KQ=pt([`codellm`,`cli`,`exit`]),qQ=new Set,JQ=new Set,YQ=new Set;let XQ=!1,ZQ=!1,QQ=null,$Q;async function HPe(e){let t=e.map(e=>new Promise(t=>{let n=`writableLength`in e?e.writableLength:0;if((`bufferSize`in e?e.bufferSize:n)===0){t();return}let r=e.write.bind(e),i=!1,a=()=>{let n=`writableLength`in e?e.writableLength:0;(`bufferSize`in e?e.bufferSize:n)===0&&!i&&(i=!0,e.write=r,t())};e.once(`drain`,a),e.write(``,`utf-8`,()=>{a()}),e.write=function(){return!1}}));await Promise.all(t)}async function e$(e,t,n,r){if(XQ)return;r?.debug?.(`Executing exit handlers`,{shouldManuallyExit:e,isSynchronous:t,signal:n,asyncCallbacks:qQ.size,syncCallbacks:JQ.size}),XQ=!0,qQ.size>0&&t&&KQ.error`SYNCHRONOUS TERMINATION NOTICE: When explicitly exiting the process via process.exit or via a parent process, asynchronous tasks in your exitHooks will not run. Either remove these tasks, use gracefulExit() instead of process.exit(), or ensure your parent process sends a SIGINT to the process running this code.`;let i=0;n>0?i=128+n:$Q===void 0?(typeof Ue.exitCode==`number`||typeof Ue.exitCode==`string`)&&(i=Number(Ue.exitCode)):i=$Q;let a=(t=!1)=>{(t||e)&&(QQ?QQ.call(Ue,i):Ue.exit(i))};for(let e of JQ)try{e(i)}catch(e){KQ.error`Error in synchronous exit hook: ${e}`}if(t){a();return}let o=[],s=0;for(let[e,t]of qQ)s=Math.max(s,t),o.push(Promise.resolve(e(i)).catch(e=>{KQ.error`Error in asynchronous exit hook: ${e}`}));let c=Array.from(YQ);c.length>0&&o.push(HPe(c));let l=setTimeout(()=>{a(!0)},s);try{await Promise.all(o),clearTimeout(l),a()}catch(e){clearTimeout(l),KQ.error`Error during exit cleanup: ${e}`,a(!0)}}function UPe(){ZQ||(ZQ=!0,Ue.once(`beforeExit`,()=>{e$(!0,!1,-128)}),Ue.once(`SIGINT`,()=>{e$(!0,!1,2)}),Ue.once(`SIGTERM`,()=>{e$(!0,!1,15)}),Ue.once(`exit`,()=>{e$(!1,!0,0)}),Ue.on(`message`,e=>{e===`shutdown`&&e$(!0,!0,-128)}),QQ||(QQ=Ue.exit.bind(Ue),Ue.exit=function(e){if($Q===void 0&&($Q=e??0),qQ.size===0&&YQ.size===0){if(QQ){QQ(e??0);return}Ue.exit(e??0)}e$(!0,!1,-128).catch(e=>{KQ.error`Error during exit: ${e}`,QQ?QQ(1):Ue.exit(1)})}))}function t$(e,t){if(typeof e!=`function`)throw TypeError(`callback must be a function`);if(XQ)throw Error(`Cannot install exit hook while exit handlers are running`);t?.logger?.debug?.(`Registering exit hook`,{wait:t?.wait,hasStreams:t?.streams!==void 0}),UPe();let n=t?.wait??0,r=t?.streams??[Ue.stdout,Ue.stderr];if(n>0){let t=[e,n];qQ.add(t);for(let e of r)YQ.add(e);return()=>{qQ.delete(t);for(let e of r)YQ.delete(e)}}return JQ.add(e),()=>{JQ.delete(e)}}function n$(e){e!==void 0&&(Ue.exitCode=e),e$(!0,!1,-128)}function r$(e){process.stdout.write(JSON.stringify(e)+`
|
|
75183
75183
|
`)}function WPe(e){try{return JSON.parse(e)}catch{return null}}async function GPe({agentArgs:e}){yu(`ndjson IPC host started`,`cli`);let t=await AY.create(),n=new Mu(t,wn(),vn.userAgentNames.desktop,TQ.default.version);if(!t.isAuthenticated())try{(await n.getUserInfo())?.result?.email||(process.stderr.write(`Error: Not authenticated. Set ABACUS_DEVICE_CODE environment variable.
|
|
75184
75184
|
`),process.exit(1))}catch{process.stderr.write(`Error: Not authenticated. Set ABACUS_DEVICE_CODE environment variable.
|