@qitqode/qitqode-android-arm64 0.1.32 → 0.1.33

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.
Files changed (85) hide show
  1. package/bundle/{chunk-096pd6c4.js → chunk-0e1vkdze.js} +1 -1
  2. package/bundle/{chunk-m2q317gh.js → chunk-0h6rn479.js} +1 -1
  3. package/bundle/{chunk-764fksh3.js → chunk-0t4324w5.js} +1 -1
  4. package/bundle/chunk-18bj8z8m.js +28 -0
  5. package/bundle/{chunk-qggcszs2.js → chunk-19g6dhva.js} +1 -1
  6. package/bundle/{chunk-1r95p0tp.js → chunk-1ap7sh2c.js} +1 -1
  7. package/bundle/{chunk-85wcc1tp.js → chunk-2bn2b29j.js} +1 -1
  8. package/bundle/{chunk-2wajs9xv.js → chunk-2et3wkjy.js} +1 -1
  9. package/bundle/{chunk-avf8v3hb.js → chunk-3bssxmtg.js} +1 -1
  10. package/bundle/{chunk-20702epe.js → chunk-3dadmgxa.js} +1 -1
  11. package/bundle/{chunk-7z777y9k.js → chunk-43xt69m8.js} +1 -1
  12. package/bundle/{chunk-ygs5pzk7.js → chunk-481k3dag.js} +2 -2
  13. package/bundle/{chunk-wezarrvy.js → chunk-48nm6v8b.js} +1 -1
  14. package/bundle/{chunk-rza530gm.js → chunk-4fgzp2zd.js} +1 -1
  15. package/bundle/{chunk-89w3yhf8.js → chunk-4m5yesw8.js} +1 -1
  16. package/bundle/{chunk-5jx0yadh.js → chunk-5gmjtmc4.js} +2 -2
  17. package/bundle/{chunk-e5mv5wnt.js → chunk-5v6b8mr6.js} +1 -1
  18. package/bundle/{chunk-k75jqg60.js → chunk-6r7z94e6.js} +1 -1
  19. package/bundle/{chunk-s3mnrhbx.js → chunk-711dc303.js} +1 -1
  20. package/bundle/{chunk-3nx7112w.js → chunk-9bzhxenb.js} +1 -1
  21. package/bundle/{chunk-wmqsdt2c.js → chunk-9k6hz80e.js} +1 -1
  22. package/bundle/{chunk-pv67gwce.js → chunk-a1g7jr3r.js} +1 -1
  23. package/bundle/{chunk-za7mwbye.js → chunk-a1kazz9r.js} +1 -1
  24. package/bundle/{chunk-59yqvk48.js → chunk-a3aqmm3x.js} +1 -1
  25. package/bundle/{chunk-634pnryq.js → chunk-aecc391x.js} +1 -1
  26. package/bundle/{chunk-k5atbdbm.js → chunk-bdd97g5y.js} +1 -1
  27. package/bundle/{chunk-y6123zvq.js → chunk-bnap670d.js} +1 -1
  28. package/bundle/chunk-bnmz683j.js +2 -0
  29. package/bundle/{chunk-nkkch4h7.js → chunk-ccmbckek.js} +1 -1
  30. package/bundle/{chunk-zqqx96jx.js → chunk-ctpy42xe.js} +1 -1
  31. package/bundle/{chunk-y7sy3w6z.js → chunk-d2ttw3wf.js} +1 -1
  32. package/bundle/{chunk-2phz0bn9.js → chunk-d8dsdcb3.js} +1 -1
  33. package/bundle/{chunk-0c5rxty9.js → chunk-dxje3azs.js} +1 -1
  34. package/bundle/{chunk-9gazyynx.js → chunk-e1w70zdn.js} +1 -1
  35. package/bundle/{chunk-w7vh8cxt.js → chunk-ea5ph627.js} +1 -1
  36. package/bundle/{chunk-r8m7rtfc.js → chunk-etvs6a6y.js} +1 -1
  37. package/bundle/{chunk-we9cv8we.js → chunk-famryv52.js} +1 -1
  38. package/bundle/{chunk-d3ermm6d.js → chunk-ff8nb7b3.js} +1 -1
  39. package/bundle/{chunk-jdynx7m6.js → chunk-fgzk49cr.js} +1 -1
  40. package/bundle/{chunk-5pb551dx.js → chunk-ftas05da.js} +1 -1
  41. package/bundle/{chunk-4sc82a27.js → chunk-ftn49yn1.js} +1 -1
  42. package/bundle/{chunk-pje60pj2.js → chunk-ftnadrks.js} +1 -1
  43. package/bundle/{chunk-rkyf0cp8.js → chunk-g453xy7p.js} +1 -1
  44. package/bundle/{chunk-ew9pdrp9.js → chunk-gxq9vh1z.js} +1 -1
  45. package/bundle/chunk-hdrbyarv.js +3 -0
  46. package/bundle/{chunk-0e86gt9r.js → chunk-hkqnqw3x.js} +1 -1
  47. package/bundle/{chunk-wr42tphe.js → chunk-m1s19p9n.js} +1 -1
  48. package/bundle/{chunk-hnvn2c25.js → chunk-mpkvpn2y.js} +1 -1
  49. package/bundle/{chunk-zcsgqk9f.js → chunk-mrt1z4m8.js} +1 -1
  50. package/bundle/{chunk-x25zkrz7.js → chunk-n1600mnf.js} +1 -1
  51. package/bundle/{chunk-7tr9ejyk.js → chunk-n6wt9m2k.js} +1 -1
  52. package/bundle/{chunk-56z7x7h4.js → chunk-np50azpb.js} +1 -1
  53. package/bundle/chunk-p3pemdns.js +2 -0
  54. package/bundle/{chunk-gz8sz7z1.js → chunk-pfyhg0m7.js} +1 -1
  55. package/bundle/{chunk-mqd1jsg2.js → chunk-q6pn67ps.js} +1 -1
  56. package/bundle/{chunk-ezfy0b6q.js → chunk-qn6gdhns.js} +1 -1
  57. package/bundle/{chunk-w8saweey.js → chunk-r1zf109g.js} +1 -1
  58. package/bundle/{chunk-mahgmbt9.js → chunk-rbbw7bs0.js} +1 -1
  59. package/bundle/{chunk-q7vasbxn.js → chunk-rh9vnpgr.js} +1 -1
  60. package/bundle/{chunk-d9hbhkbq.js → chunk-rryytkmg.js} +1 -1
  61. package/bundle/{chunk-02jtpxe0.js → chunk-rvfvk2ty.js} +1 -1
  62. package/bundle/{chunk-6aqyhfag.js → chunk-rzt0ge3t.js} +2 -2
  63. package/bundle/{chunk-k7aenxan.js → chunk-s08qccxa.js} +1 -1
  64. package/bundle/{chunk-zaks8cae.js → chunk-s2x0rqj4.js} +1 -1
  65. package/bundle/{chunk-xrs18kzn.js → chunk-srt5peec.js} +1 -1
  66. package/bundle/{chunk-caj1b9y7.js → chunk-tc18nbmn.js} +2 -2
  67. package/bundle/{chunk-ad72gb5f.js → chunk-te47zdxd.js} +1 -1
  68. package/bundle/{chunk-s6ktx2sx.js → chunk-tt9smgmg.js} +1 -1
  69. package/bundle/{chunk-k1txw65h.js → chunk-v7ezt8k3.js} +1 -1
  70. package/bundle/{chunk-15j5cn4t.js → chunk-v7w4nfn7.js} +1 -1
  71. package/bundle/{chunk-h6f3kbz2.js → chunk-vqg5q96v.js} +1 -1
  72. package/bundle/{chunk-3wetyrjs.js → chunk-vrc0h1q7.js} +1 -1
  73. package/bundle/{chunk-0c2p3a6v.js → chunk-vykgpaqt.js} +1 -1
  74. package/bundle/{chunk-257me4z3.js → chunk-wefez1gt.js} +45 -45
  75. package/bundle/{chunk-wqj0xasg.js → chunk-x5trw1f5.js} +1 -1
  76. package/bundle/{chunk-8r6ht39z.js → chunk-xn70ep9n.js} +1 -1
  77. package/bundle/{chunk-whe7h2mj.js → chunk-yphsjp71.js} +1 -1
  78. package/bundle/{chunk-r7sqdfad.js → chunk-zzv0yayn.js} +1 -1
  79. package/bundle/index.js +3 -3
  80. package/bundle/worker.js +1 -1
  81. package/package.json +1 -1
  82. package/bundle/chunk-8dwq41q1.js +0 -28
  83. package/bundle/chunk-d0damw6y.js +0 -2
  84. package/bundle/chunk-qadw6j20.js +0 -2
  85. package/bundle/chunk-xj765svc.js +0 -3
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{Cd as H,Dd as I}from"./chunk-m2q317gh.js";import{Rd as G}from"./chunk-yajd975f.js";import{Of as B}from"./chunk-pv67gwce.js";import{ag as E}from"./chunk-k7aenxan.js";import"./chunk-8r6ht39z.js";import"./chunk-mqd1jsg2.js";import"./chunk-gz8sz7z1.js";import"./chunk-cjww2jmv.js";import"./chunk-nfg7nt13.js";import"./chunk-xvwvd4kq.js";import"./chunk-d3ermm6d.js";import"./chunk-caj1b9y7.js";import"./chunk-ygs5pzk7.js";import"./chunk-vxyy2dp3.js";import"./chunk-yp5bypsp.js";import"./chunk-7hm0c2yg.js";import"./chunk-gj0wt0cy.js";import"./chunk-5hw6xa49.js";import"./chunk-326p5b10.js";import"./chunk-257me4z3.js";import"./chunk-nkkch4h7.js";import"./chunk-s3mnrhbx.js";import"./chunk-ezfy0b6q.js";import"./chunk-bn0h9dny.js";import"./chunk-hnvn2c25.js";import"./chunk-3nx7112w.js";import"./chunk-htz93dsd.js";import"./chunk-vcw00k0n.js";import{qo as D}from"./chunk-we9cv8we.js";import"./chunk-2hc5z7b5.js";import"./chunk-9gazyynx.js";import"./chunk-4jtxtkj7.js";import"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import"./chunk-g5rabwre.js";import"./chunk-jbx3s7nw.js";import"./chunk-15hw2z9t.js";import"./chunk-48ge2ryx.js";import"./chunk-n9xns8by.js";import"./chunk-y9q0hb7b.js";import"./chunk-d9hbhkbq.js";import"./chunk-ad72gb5f.js";import"./chunk-d6ry9418.js";import"./chunk-0dt0bxz6.js";import"./chunk-10bjs581.js";import"./chunk-4cnwn1rh.js";import"./chunk-764fksh3.js";import{Rs as f}from"./chunk-xj765svc.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import"./chunk-dxpj0cxh.js";import"./chunk-zw815d68.js";import"./chunk-7xm75w1e.js";var T=G({command:"serve",builder:(b)=>B(b).option("auto-password",{type:"boolean",default:!1,describe:"generate a random ephemeral QITQODE_SERVER_PASSWORD for this run and print it"}),describe:"starts a headless qitqode server",handler:async(b)=>{let A=await H(b);if(b["auto-password"]&&!f.QITQODE_SERVER_PASSWORD){let z=crypto.randomUUID();process.env.QITQODE_SERVER_PASSWORD=z,console.log('Generated ephemeral server password (basic auth, username "qitqode"):'),console.log(` ${z}`)}if(I(A,f.QITQODE_SERVER_PASSWORD))console.error("ERROR: Binding to non-loopback address without QITQODE_SERVER_PASSWORD is not allowed."),console.error("Set QITQODE_SERVER_PASSWORD, pass --auto-password, or pass --no-auth to override (DANGEROUS)."),process.exit(1);if(!f.QITQODE_SERVER_PASSWORD)console.error(""),console.error("\u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557"),console.error("\u2551 WARNING: server is running WITHOUT authentication. \u2551"),console.error("\u2551 \u2551"),console.error("\u2551 Any process or browser page that can reach this address can read \u2551"),console.error("\u2551 project files, run shell commands, and open terminals as you. \u2551"),console.error("\u2551 \u2551"),console.error("\u2551 Set QITQODE_SERVER_PASSWORD, or restart with --auto-password to \u2551"),console.error("\u2551 generate an ephemeral password for this run. \u2551"),console.error("\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255D"),console.error("");if(process.env.QITQODE_KEY)console.log("Using QITQODE_KEY for authentication.");else if(!await D())console.error("Warning: no QitQode credential found. AI features will not work until you sign in (`qitqode auth login`) or set QITQODE_KEY.");let j=await E.listen(A);console.log(`qitqode server listening on http://${j.hostname}:${j.port}`),await new Promise(()=>{}),await j.stop()}});export{T as ServeCommand};
2
+ import{Cd as H,Dd as I}from"./chunk-0h6rn479.js";import{Rd as G}from"./chunk-yajd975f.js";import{Of as B}from"./chunk-a1g7jr3r.js";import{ag as E}from"./chunk-s08qccxa.js";import"./chunk-xn70ep9n.js";import"./chunk-q6pn67ps.js";import"./chunk-pfyhg0m7.js";import"./chunk-cjww2jmv.js";import"./chunk-nfg7nt13.js";import"./chunk-xvwvd4kq.js";import"./chunk-ff8nb7b3.js";import"./chunk-tc18nbmn.js";import"./chunk-481k3dag.js";import"./chunk-vxyy2dp3.js";import"./chunk-yp5bypsp.js";import"./chunk-7hm0c2yg.js";import"./chunk-gj0wt0cy.js";import"./chunk-5hw6xa49.js";import"./chunk-326p5b10.js";import"./chunk-wefez1gt.js";import"./chunk-ccmbckek.js";import"./chunk-711dc303.js";import"./chunk-qn6gdhns.js";import"./chunk-bn0h9dny.js";import"./chunk-mpkvpn2y.js";import"./chunk-9bzhxenb.js";import"./chunk-htz93dsd.js";import"./chunk-vcw00k0n.js";import{qo as D}from"./chunk-famryv52.js";import"./chunk-2hc5z7b5.js";import"./chunk-e1w70zdn.js";import"./chunk-4jtxtkj7.js";import"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import"./chunk-g5rabwre.js";import"./chunk-jbx3s7nw.js";import"./chunk-15hw2z9t.js";import"./chunk-48ge2ryx.js";import"./chunk-n9xns8by.js";import"./chunk-y9q0hb7b.js";import"./chunk-rryytkmg.js";import"./chunk-te47zdxd.js";import"./chunk-d6ry9418.js";import"./chunk-0dt0bxz6.js";import"./chunk-10bjs581.js";import"./chunk-4cnwn1rh.js";import"./chunk-0t4324w5.js";import{Rs as f}from"./chunk-hdrbyarv.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import"./chunk-dxpj0cxh.js";import"./chunk-zw815d68.js";import"./chunk-7xm75w1e.js";var T=G({command:"serve",builder:(b)=>B(b).option("auto-password",{type:"boolean",default:!1,describe:"generate a random ephemeral QITQODE_SERVER_PASSWORD for this run and print it"}),describe:"starts a headless qitqode server",handler:async(b)=>{let A=await H(b);if(b["auto-password"]&&!f.QITQODE_SERVER_PASSWORD){let z=crypto.randomUUID();process.env.QITQODE_SERVER_PASSWORD=z,console.log('Generated ephemeral server password (basic auth, username "qitqode"):'),console.log(` ${z}`)}if(I(A,f.QITQODE_SERVER_PASSWORD))console.error("ERROR: Binding to non-loopback address without QITQODE_SERVER_PASSWORD is not allowed."),console.error("Set QITQODE_SERVER_PASSWORD, pass --auto-password, or pass --no-auth to override (DANGEROUS)."),process.exit(1);if(!f.QITQODE_SERVER_PASSWORD)console.error(""),console.error("\u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557"),console.error("\u2551 WARNING: server is running WITHOUT authentication. \u2551"),console.error("\u2551 \u2551"),console.error("\u2551 Any process or browser page that can reach this address can read \u2551"),console.error("\u2551 project files, run shell commands, and open terminals as you. \u2551"),console.error("\u2551 \u2551"),console.error("\u2551 Set QITQODE_SERVER_PASSWORD, or restart with --auto-password to \u2551"),console.error("\u2551 generate an ephemeral password for this run. \u2551"),console.error("\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255D"),console.error("");if(process.env.QITQODE_KEY)console.log("Using QITQODE_KEY for authentication.");else if(!await D())console.error("Warning: no QitQode credential found. AI features will not work until you sign in (`qitqode auth login`) or set QITQODE_KEY.");let j=await E.listen(A);console.log(`qitqode server listening on http://${j.hostname}:${j.port}`),await new Promise(()=>{}),await j.stop()}});export{T as ServeCommand};
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{fk as s,kk as e,lk as j,mk as v,yk as u,zk as f}from"./chunk-257me4z3.js";import{Ul as r,Vl as C,Wl as k,Xl as m,bm as D,fm as b,gm as a,hm as t}from"./chunk-s3mnrhbx.js";import{Um as x,Vm as q,Xm as n,Ym as o,_m as K,an as c,hn as i}from"./chunk-bn0h9dny.js";import{Qs as O_,_s as Q_}from"./chunk-xj765svc.js";import{nt as d,st as g}from"./chunk-tqj69nh6.js";import{DO as S_}from"./chunk-7xm75w1e.js";var l={};S_(l,{run:()=>h_,encodeDir:()=>k_,ClaudeImport:()=>l});import E_ from"path";import W_ from"path";import{access as X_,readFile as Y_}from"fs/promises";var G=n("external_import",{source:q().$type().notNull(),source_key:q().notNull(),session_id:q().$type().notNull(),source_path:q().notNull(),source_mtime:x().notNull(),time_imported:x().notNull(),message_ids:q({mode:"json"}).$type()},(N)=>[o({columns:[N.source,N.source_key]})]);function Z_(){return{scanned:0,imported:0,resynced:0,skipped:0,errors:[]}}async function L_(N){if(!N||!await g.exists(N))return{id:b.global,worktree:N||"/",vcs:null};if(!await a(N))return{id:b.global,worktree:N,vcs:null};return{id:await t(N),worktree:N,vcs:"git"}}function __(N){return N.split(`
2
+ import{fk as s,kk as e,lk as j,mk as v,yk as u,zk as f}from"./chunk-wefez1gt.js";import{Ul as r,Vl as C,Wl as k,Xl as m,bm as D,fm as b,gm as a,hm as t}from"./chunk-711dc303.js";import{Um as x,Vm as q,Xm as n,Ym as o,_m as K,an as c,hn as i}from"./chunk-bn0h9dny.js";import{Qs as O_,_s as Q_}from"./chunk-hdrbyarv.js";import{nt as d,st as g}from"./chunk-tqj69nh6.js";import{DO as S_}from"./chunk-7xm75w1e.js";var l={};S_(l,{run:()=>h_,encodeDir:()=>k_,ClaudeImport:()=>l});import E_ from"path";import W_ from"path";import{access as X_,readFile as Y_}from"fs/promises";var G=n("external_import",{source:q().$type().notNull(),source_key:q().notNull(),session_id:q().$type().notNull(),source_path:q().notNull(),source_mtime:x().notNull(),time_imported:x().notNull(),message_ids:q({mode:"json"}).$type()},(N)=>[o({columns:[N.source,N.source_key]})]);function Z_(){return{scanned:0,imported:0,resynced:0,skipped:0,errors:[]}}async function L_(N){if(!N||!await g.exists(N))return{id:b.global,worktree:N||"/",vcs:null};if(!await a(N))return{id:b.global,worktree:N,vcs:null};return{id:await t(N),worktree:N,vcs:"git"}}function __(N){return N.split(`
3
3
  `).map((_)=>_.trim()).filter(Boolean).flatMap((_)=>{try{return[JSON.parse(_)]}catch{return[]}})}function N_(N){let _=N.find((H)=>H.trim()&&!H.trim().startsWith("<"));if(!_)return;return _.trim().replace(/\s+/g," ").slice(0,100)}function R_(N,_){return D.use((H)=>H.select().from(G).where(c(K(G.source,N),K(G.source_key,_))).get())}function G_(N,_){if(!_)return{existing:void 0,existingUpdated:void 0};let H=_,O=D.use((Z)=>Z.select({updated:C.time_updated}).from(C).where(K(C.id,H.session_id)).get());if(!O)return D.use((Z)=>Z.delete(G).where(c(K(G.source,N),K(G.source_key,H.source_key))).run()),{existing:void 0,existingUpdated:void 0};return{existing:_,existingUpdated:O.updated}}function J_(N,_,H,O){N.insert(r).values({id:_.id,worktree:_.worktree,vcs:_.vcs,sandboxes:[],time_created:H,time_updated:O}).onConflictDoNothing().run()}function K_(N,_,H){if(_.message_ids?.length)for(let O=0;O<_.message_ids.length;O+=500)N.delete(k).where(i(k.id,_.message_ids.slice(O,O+500))).run();else N.delete(k).where(K(k.session_id,H)).run()}function A_(N,_,H){N.update(C).set({project_id:H.projectId,directory:H.directory,version:H.version,time_updated:Math.max(H.existingUpdated??0,H.timeUpdated)}).where(K(C.id,_)).run()}function $_(N){return async(_)=>F_({...N,force:_?.force})}async function F_(N){let _=Z_();if(!await X_(N.root).then(()=>!0).catch(()=>!1))return _;let H=await d.scan(N.pattern,{cwd:N.root,absolute:!0});for(let O of H){_.scanned++;try{let Z=W_.basename(O,".jsonl"),A=await g.statAsync(O);if(!A){_.skipped++;continue}let F=Math.floor(Number(A.mtimeMs)),Y=R_(N.source,Z);if(Y&&Y.source_mtime===F&&!N.force){_.skipped++;continue}let S=G_(N.source,Y);Y=S.existing;let T=S.existingUpdated,Q=Y?Y.session_id:e.descending(),V=N.parse(await Y_(O,"utf-8"),Q);if(!V||V.messages.length===0){_.skipped++;continue}let E=await L_(V.cwd),U=Date.now(),X=V.messages.map(($)=>$.info.id);if(D.transaction(($)=>{if(J_($,E,V.timeCreated,V.timeUpdated),Y)K_($,Y,Q),A_($,Q,{projectId:E.id,directory:V.cwd,version:V.version,existingUpdated:T,timeUpdated:V.timeUpdated});else $.insert(C).values({id:Q,project_id:E.id,slug:s.create(),directory:V.cwd,title:V.title,version:V.version,time_created:V.timeCreated,time_updated:V.timeUpdated}).run();for(let L of V.messages){let{id:B,sessionID:I,agentID:w,...z}=L.info;$.insert(k).values({id:B,session_id:Q,agent_id:"main",time_created:L.info.time.created,data:z}).onConflictDoUpdate({target:k.id,set:{data:z}}).run();for(let J of L.parts){let{id:y,sessionID:p,messageID:P,...h}=J.part;$.insert(m).values({id:y,message_id:L.info.id,session_id:Q,time_created:J.time,data:h}).onConflictDoUpdate({target:m.id,set:{data:h}}).run()}}$.insert(G).values({source:N.source,source_key:Z,session_id:Q,source_path:O,source_mtime:F,time_imported:U,message_ids:X}).onConflictDoUpdate({target:[G.source,G.source_key],set:{session_id:Q,source_path:O,source_mtime:F,time_imported:U,message_ids:X}}).run()}),Y)_.resynced++;else _.imported++}catch(Z){_.errors.push(`${O}: ${Z}`)}}if(_.imported+_.resynced>0||_.errors.length>0)N.log.info(N.logMessage,{..._,errors:_.errors.length});return _}var B_=Q_.create({service:"claude-import"});function k_(N){return N.replace(/[^a-zA-Z0-9]/g,"-")}function z_(N){if(!N)return{providerID:u.anthropic,modelID:f.make("unknown")};let _=N.indexOf("/");if(_===-1)return{providerID:u.anthropic,modelID:f.make(N)};return{providerID:u.make(N.slice(0,_)),modelID:f.make(N.slice(_+1))}}function H_(N){let _=N??{};return{input:_.input_tokens??0,output:_.output_tokens??0,reasoning:0,cache:{read:_.cache_read_input_tokens??0,write:_.cache_creation_input_tokens??0}}}function C_(N){if(typeof N==="string")return N;if(Array.isArray(N))return N.map((_)=>_&&typeof _==="object"&&("type"in _)&&_.type==="text"?_.text:JSON.stringify(_)).join(`
4
4
  `);return N==null?"":JSON.stringify(N)}function U_(N,_){let H=__(N);if(H.length===0)return;let O,Z,A,F=0,Y,S=[],T=new Map,Q=null,V=null,E=z_(void 0),U=()=>{if(Q)S.push(Q);Q=null};for(let X of H){if(X.type!=="user"&&X.type!=="assistant")continue;let $=X.timestamp?Date.parse(X.timestamp):Date.now();if(!O&&X.cwd)O=X.cwd;if(!Z&&X.version)Z=X.version;if(A===void 0)A=$;F=Math.max(F,$);let L=X.message;if(!L)continue;if(X.type==="user"){let z=L.content,J=typeof z==="string"?[]:Array.isArray(z)?z:[];for(let W of J.filter((R)=>R?.type==="tool_result")){let R=T.get(W.tool_use_id);if(!R)continue;let M=C_(W.content);R.part.state=W.is_error?{status:"error",input:R.part.state.input??{},error:M,time:{start:R.start,end:$}}:{status:"completed",input:R.part.state.input??{},output:M,title:R.part.tool,metadata:{},time:{start:R.start,end:$}}}let y=typeof z==="string"?z.trim()?[z]:[]:J.filter((W)=>W?.type==="text"&&typeof W.text==="string"&&W.text.trim()).map((W)=>W.text),p=J.filter((W)=>W?.type==="image"&&W.source);if(y.length===0&&p.length===0)continue;U();let P=j.ascending(),h=[];for(let W of y)h.push({part:{id:v.ascending(),sessionID:_,messageID:P,type:"text",text:W},time:$});for(let W of p){let R=W.source.media_type??"image/png",M=W.source.type==="base64"?`data:${R};base64,${W.source.data}`:W.source.url??"";if(M)h.push({part:{id:v.ascending(),sessionID:_,messageID:P,type:"file",mime:R,url:M},time:$})}let V_={id:P,sessionID:_,role:"user",agent:"main",time:{created:$},model:{providerID:E.providerID,modelID:E.modelID}};if(S.push({info:V_,parts:h}),V=P,!Y)Y=N_(y);continue}let B=z_(L.model);if(E=B,!V){let z=j.ascending();S.push({info:{id:z,sessionID:_,role:"user",agent:"main",time:{created:$},model:{providerID:B.providerID,modelID:B.modelID}},parts:[]}),V=z}if(!Q||Q.info.role!=="assistant"||Q.info.parentID!==V)U(),Q={info:{id:j.ascending(),sessionID:_,role:"assistant",time:{created:$,completed:$},parentID:V,modelID:B.modelID,providerID:B.providerID,mode:"build",agent:"main",path:{cwd:O??X.cwd??"",root:O??X.cwd??""},cost:0,tokens:H_(L.usage)},parts:[]};let I=Q.info;I.time.completed=$,I.tokens=H_(L.usage);let w=Q.info.id;for(let z of Array.isArray(L.content)?L.content:[])if(z?.type==="thinking"||z?.type==="reasoning")Q.parts.push({part:{id:v.ascending(),sessionID:_,messageID:w,type:"reasoning",text:z.thinking??z.text??"",time:{start:$,end:$}},time:$});else if(z?.type==="text"&&typeof z.text==="string")Q.parts.push({part:{id:v.ascending(),sessionID:_,messageID:w,type:"text",text:z.text},time:$});else if(z?.type==="tool_use"){let J={id:v.ascending(),sessionID:_,messageID:w,type:"tool",callID:z.id,tool:z.name,state:{status:"pending",input:z.input??{},raw:JSON.stringify(z.input??{})}};Q.parts.push({part:J,time:$}),T.set(z.id,{part:J,start:$})}}return U(),{cwd:O??"",version:Z??"claude-code",title:Y??"Claude Code session",timeCreated:A??Date.now(),timeUpdated:F||A||Date.now(),messages:S}}var h_=$_({source:"cc",root:E_.join(O_.Path.home,".claude","projects"),pattern:"*/*.jsonl",log:B_,logMessage:"claude import",parse:U_});
5
5
  export{G as bg,Z_ as cg,L_ as dg,__ as eg,N_ as fg,R_ as gg,G_ as hg,J_ as ig,K_ as jg,A_ as kg,$_ as lg,k_ as mg,h_ as ng,l as og};
@@ -1,3 +1,3 @@
1
1
  // @bun
2
- import{zo as q}from"./chunk-we9cv8we.js";class z extends Error{cause;constructor(j,x){super(j);this.name="QreditChargeError",this.cause=x}}async function B(j){return q(j)}function C(j){return Number.isInteger(j)?String(j):j.toFixed(2)}
2
+ import{zo as q}from"./chunk-famryv52.js";class z extends Error{cause;constructor(j,x){super(j);this.name="QreditChargeError",this.cause=x}}async function B(j){return q(j)}function C(j){return Number.isInteger(j)?String(j):j.toFixed(2)}
3
3
  export{z as F,B as G,C as H};
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{h as N}from"./chunk-zqqx96jx.js";import{F as K,G as L,H as $}from"./chunk-whe7h2mj.js";import"./chunk-t9mz17gb.js";import{Rd as X}from"./chunk-yajd975f.js";import{Vf as j}from"./chunk-rbk8seme.js";import{zg as H}from"./chunk-gz8sz7z1.js";import{gh as Z}from"./chunk-caj1b9y7.js";import"./chunk-ygs5pzk7.js";import"./chunk-vxyy2dp3.js";import"./chunk-yp5bypsp.js";import"./chunk-7hm0c2yg.js";import"./chunk-gj0wt0cy.js";import"./chunk-5hw6xa49.js";import"./chunk-326p5b10.js";import{Xj as w}from"./chunk-257me4z3.js";import"./chunk-nkkch4h7.js";import"./chunk-s3mnrhbx.js";import"./chunk-ezfy0b6q.js";import"./chunk-bn0h9dny.js";import"./chunk-hnvn2c25.js";import"./chunk-3nx7112w.js";import"./chunk-htz93dsd.js";import"./chunk-vcw00k0n.js";import{qo as F,vo as G}from"./chunk-we9cv8we.js";import"./chunk-2hc5z7b5.js";import"./chunk-9gazyynx.js";import"./chunk-4jtxtkj7.js";import"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import"./chunk-g5rabwre.js";import"./chunk-jbx3s7nw.js";import"./chunk-15hw2z9t.js";import"./chunk-48ge2ryx.js";import"./chunk-n9xns8by.js";import"./chunk-y9q0hb7b.js";import"./chunk-d9hbhkbq.js";import"./chunk-ad72gb5f.js";import"./chunk-d6ry9418.js";import"./chunk-0dt0bxz6.js";import"./chunk-10bjs581.js";import"./chunk-4cnwn1rh.js";import"./chunk-764fksh3.js";import"./chunk-xj765svc.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import{pH as z}from"./chunk-zs8kqdsf.js";import"./chunk-dxpj0cxh.js";import"./chunk-zw815d68.js";import"./chunk-7xm75w1e.js";var Q="forgewise";function R(D){return z.gen(function*(){let J=yield*D.get(Q);if(!J||J.type!=="api")return;return(J.metadata??{}).sub})}var O=()=>z.gen(function*(){if((yield*N())==="revoked")return null;let D=yield*z.promise(()=>F());if(!D)return yield*z.sync(()=>j.println(j.Style.TEXT_DANGER+"Not signed in to Forgewise. Run `qitqode auth login` first."+j.Style.TEXT_NORMAL)),null;let J=yield*w.Service,M=D.method==="sso"?yield*R(J):void 0;return{key:D.key,method:D.method,sub:M}}),q=()=>z.gen(function*(){let D=yield*O();if(!D)return;let J=yield*z.tryPromise({try:()=>H(D),catch:(P)=>P}).pipe(z.map((P)=>({ok:!0,result:P})),z.catch((P)=>z.succeed({ok:!1,error:P})));if(!J.ok){let P=J.error instanceof G?J.error.message:"Could not fetch balance.";yield*z.sync(()=>j.println(j.Style.TEXT_DANGER+P+j.Style.TEXT_NORMAL));return}let M=J.result;if(!M){yield*z.sync(()=>j.println(j.Style.TEXT_DANGER+"Could not fetch balance."+j.Style.TEXT_NORMAL));return}yield*z.sync(()=>j.println(j.Style.TEXT_SUCCESS+"Qredits balance: "+j.Style.TEXT_NORMAL+j.Style.TEXT_HIGHLIGHT_BOLD+$(M.balance)+j.Style.TEXT_NORMAL))}).pipe(z.withSpan("qredits.balance")),A=()=>z.gen(function*(){let D=yield*O();if(!D)return;let J=D.method==="sso"&&D.sub?{userId:D.sub,accessToken:D.key}:{},M=yield*z.tryPromise({try:()=>L({...J,limit:20}),catch:(T)=>T});if(M instanceof Error){let T=M instanceof K?M.message:String(M);yield*z.sync(()=>j.println(j.Style.TEXT_DANGER+"Could not fetch history: "+T+j.Style.TEXT_NORMAL));return}if(M.length===0){yield*z.sync(()=>j.println("No spend history yet."));return}let P=j.Style.TEXT_DIM,V=j.Style.TEXT_NORMAL,W=j.Style.TEXT_DANGER;yield*z.sync(()=>{j.println(P+" Date Description Amount"+V),j.println(P+" \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500"+V);for(let T of M){let Y=(T.date||"").slice(0,10).padEnd(18),_=(T.description||"").slice(0,32).padEnd(32),v=(T.amount<0?"-":" ")+$(Math.abs(T.amount)),x=T.amount<0?W:V;j.println(` ${P}${Y}${V} ${_} ${x}${v}${V}`)}})}).pipe(z.withSpan("qredits.history")),U=X({command:"qredits <command>",describe:"Check Qredits balance and spend history",builder:(D)=>D.command(X({command:"balance",describe:"Show current Qredits balance",builder:(J)=>J,async handler(){j.empty(),await Z.runPromise(q())}})).command(X({command:"history",describe:"Show recent Qredit spend history",builder:(J)=>J,async handler(){j.empty(),await Z.runPromise(A())}})).demandCommand(),async handler(){}});export{A as historyEffect,q as balanceEffect,U as QreditsCommand};
2
+ import{h as N}from"./chunk-ctpy42xe.js";import{F as K,G as L,H as $}from"./chunk-yphsjp71.js";import"./chunk-t9mz17gb.js";import{Rd as X}from"./chunk-yajd975f.js";import{Vf as j}from"./chunk-rbk8seme.js";import{zg as H}from"./chunk-pfyhg0m7.js";import{gh as Z}from"./chunk-tc18nbmn.js";import"./chunk-481k3dag.js";import"./chunk-vxyy2dp3.js";import"./chunk-yp5bypsp.js";import"./chunk-7hm0c2yg.js";import"./chunk-gj0wt0cy.js";import"./chunk-5hw6xa49.js";import"./chunk-326p5b10.js";import{Xj as w}from"./chunk-wefez1gt.js";import"./chunk-ccmbckek.js";import"./chunk-711dc303.js";import"./chunk-qn6gdhns.js";import"./chunk-bn0h9dny.js";import"./chunk-mpkvpn2y.js";import"./chunk-9bzhxenb.js";import"./chunk-htz93dsd.js";import"./chunk-vcw00k0n.js";import{qo as F,vo as G}from"./chunk-famryv52.js";import"./chunk-2hc5z7b5.js";import"./chunk-e1w70zdn.js";import"./chunk-4jtxtkj7.js";import"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import"./chunk-g5rabwre.js";import"./chunk-jbx3s7nw.js";import"./chunk-15hw2z9t.js";import"./chunk-48ge2ryx.js";import"./chunk-n9xns8by.js";import"./chunk-y9q0hb7b.js";import"./chunk-rryytkmg.js";import"./chunk-te47zdxd.js";import"./chunk-d6ry9418.js";import"./chunk-0dt0bxz6.js";import"./chunk-10bjs581.js";import"./chunk-4cnwn1rh.js";import"./chunk-0t4324w5.js";import"./chunk-hdrbyarv.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import{pH as z}from"./chunk-zs8kqdsf.js";import"./chunk-dxpj0cxh.js";import"./chunk-zw815d68.js";import"./chunk-7xm75w1e.js";var Q="forgewise";function R(D){return z.gen(function*(){let J=yield*D.get(Q);if(!J||J.type!=="api")return;return(J.metadata??{}).sub})}var O=()=>z.gen(function*(){if((yield*N())==="revoked")return null;let D=yield*z.promise(()=>F());if(!D)return yield*z.sync(()=>j.println(j.Style.TEXT_DANGER+"Not signed in to Forgewise. Run `qitqode auth login` first."+j.Style.TEXT_NORMAL)),null;let J=yield*w.Service,M=D.method==="sso"?yield*R(J):void 0;return{key:D.key,method:D.method,sub:M}}),q=()=>z.gen(function*(){let D=yield*O();if(!D)return;let J=yield*z.tryPromise({try:()=>H(D),catch:(P)=>P}).pipe(z.map((P)=>({ok:!0,result:P})),z.catch((P)=>z.succeed({ok:!1,error:P})));if(!J.ok){let P=J.error instanceof G?J.error.message:"Could not fetch balance.";yield*z.sync(()=>j.println(j.Style.TEXT_DANGER+P+j.Style.TEXT_NORMAL));return}let M=J.result;if(!M){yield*z.sync(()=>j.println(j.Style.TEXT_DANGER+"Could not fetch balance."+j.Style.TEXT_NORMAL));return}yield*z.sync(()=>j.println(j.Style.TEXT_SUCCESS+"Qredits balance: "+j.Style.TEXT_NORMAL+j.Style.TEXT_HIGHLIGHT_BOLD+$(M.balance)+j.Style.TEXT_NORMAL))}).pipe(z.withSpan("qredits.balance")),A=()=>z.gen(function*(){let D=yield*O();if(!D)return;let J=D.method==="sso"&&D.sub?{userId:D.sub,accessToken:D.key}:{},M=yield*z.tryPromise({try:()=>L({...J,limit:20}),catch:(T)=>T});if(M instanceof Error){let T=M instanceof K?M.message:String(M);yield*z.sync(()=>j.println(j.Style.TEXT_DANGER+"Could not fetch history: "+T+j.Style.TEXT_NORMAL));return}if(M.length===0){yield*z.sync(()=>j.println("No spend history yet."));return}let P=j.Style.TEXT_DIM,V=j.Style.TEXT_NORMAL,W=j.Style.TEXT_DANGER;yield*z.sync(()=>{j.println(P+" Date Description Amount"+V),j.println(P+" \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500"+V);for(let T of M){let Y=(T.date||"").slice(0,10).padEnd(18),_=(T.description||"").slice(0,32).padEnd(32),v=(T.amount<0?"-":" ")+$(Math.abs(T.amount)),x=T.amount<0?W:V;j.println(` ${P}${Y}${V} ${_} ${x}${v}${V}`)}})}).pipe(z.withSpan("qredits.history")),U=X({command:"qredits <command>",describe:"Check Qredits balance and spend history",builder:(D)=>D.command(X({command:"balance",describe:"Show current Qredits balance",builder:(J)=>J,async handler(){j.empty(),await Z.runPromise(q())}})).command(X({command:"history",describe:"Show recent Qredit spend history",builder:(J)=>J,async handler(){j.empty(),await Z.runPromise(A())}})).demandCommand(),async handler(){}});export{A as historyEffect,q as balanceEffect,U as QreditsCommand};
package/bundle/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{Jf as eD,Kf as k0}from"./chunk-jdynx7m6.js";import{Mf as y0,Nf as s0,Rf as r0,Sf as a0}from"./chunk-pv67gwce.js";import{Vf as Ku}from"./chunk-rbk8seme.js";import{Rr as l0}from"./chunk-56z7x7h4.js";import{Sr as i0}from"./chunk-4cnwn1rh.js";import"./chunk-764fksh3.js";import{Vr as Lu,Wr as d0,Xr as o0,Yr as hF,ys as g0}from"./chunk-xj765svc.js";import{bt as GF}from"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import{BO as p2,CO as c2,FO as p}from"./chunk-7xm75w1e.js";var eF=c2((R3,aF)=>{aF.exports=function(u){if(u===void 0)u=2;if(u>=Error.stackTraceLimit)throw TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `"+u+"` and Error.stackTraceLimit was: `"+Error.stackTraceLimit+"`");var F=Error.prepareStackTrace;Error.prepareStackTrace=function(C,f){return f};var E=Error().stack;if(Error.prepareStackTrace=F,E!==null&&typeof E==="object")return E[u]?E[u].getFileName():void 0}});import{notStrictEqual as v2,strictEqual as m2}from"assert";var F2={right:B2,center:f2};class ZF{constructor(D){var u;this.width=D.width,this.wrap=(u=D.wrap)!==null&&u!==void 0?u:!0,this.rows=[]}span(...D){let u=this.div(...D);u.span=!0}resetOutput(){this.rows=[]}div(...D){if(D.length===0)this.div("");if(this.wrap&&this.shouldApplyLayoutDSL(...D)&&typeof D[0]==="string")return this.applyLayoutDSL(D[0]);let u=D.map((F)=>{if(typeof F==="string")return this.colFromString(F);return F});return this.rows.push(u),u}shouldApplyLayoutDSL(...D){return D.length===1&&typeof D[0]==="string"&&/[\t\n]/.test(D[0])}applyLayoutDSL(D){let u=D.split(`
2
+ import{Jf as eD,Kf as k0}from"./chunk-fgzk49cr.js";import{Mf as y0,Nf as s0,Rf as r0,Sf as a0}from"./chunk-a1g7jr3r.js";import{Vf as Ku}from"./chunk-rbk8seme.js";import{Rr as l0}from"./chunk-np50azpb.js";import{Sr as i0}from"./chunk-4cnwn1rh.js";import"./chunk-0t4324w5.js";import{Vr as Lu,Wr as d0,Xr as o0,Yr as hF,ys as g0}from"./chunk-hdrbyarv.js";import{bt as GF}from"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import{BO as p2,CO as c2,FO as p}from"./chunk-7xm75w1e.js";var eF=c2((R3,aF)=>{aF.exports=function(u){if(u===void 0)u=2;if(u>=Error.stackTraceLimit)throw TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `"+u+"` and Error.stackTraceLimit was: `"+Error.stackTraceLimit+"`");var F=Error.prepareStackTrace;Error.prepareStackTrace=function(C,f){return f};var E=Error().stack;if(Error.prepareStackTrace=F,E!==null&&typeof E==="object")return E[u]?E[u].getFileName():void 0}});import{notStrictEqual as v2,strictEqual as m2}from"assert";var F2={right:B2,center:f2};class ZF{constructor(D){var u;this.width=D.width,this.wrap=(u=D.wrap)!==null&&u!==void 0?u:!0,this.rows=[]}span(...D){let u=this.div(...D);u.span=!0}resetOutput(){this.rows=[]}div(...D){if(D.length===0)this.div("");if(this.wrap&&this.shouldApplyLayoutDSL(...D)&&typeof D[0]==="string")return this.applyLayoutDSL(D[0]);let u=D.map((F)=>{if(typeof F==="string")return this.colFromString(F);return F});return this.rows.push(u),u}shouldApplyLayoutDSL(...D){return D.length===1&&typeof D[0]==="string"&&/[\t\n]/.test(D[0])}applyLayoutDSL(D){let u=D.split(`
3
3
  `).map((E)=>E.split("\t")),F=0;return u.forEach((E)=>{if(E.length>1&&JD.stringWidth(E[0])>F)F=Math.min(Math.floor(this.width*0.5),JD.stringWidth(E[0]))}),u.forEach((E)=>{this.div(...E.map((C,f)=>{return{text:C.trim(),padding:this.measurePadding(C),width:f===0&&E.length>1?F:void 0}}))}),this.rows[this.rows.length-1]}colFromString(D){return{text:D,padding:this.measurePadding(D)}}measurePadding(D){let u=JD.stripAnsi(D);return[0,u.match(/\s*$/)[0].length,0,u.match(/^\s*/)[0].length]}toString(){let D=[];return this.rows.forEach((u)=>{this.rowToString(u,D)}),D.filter((u)=>!u.hidden).map((u)=>u.text).join(`
4
4
  `)}rowToString(D,u){return this.rasterize(D).forEach((F,E)=>{let C="";F.forEach((f,$)=>{let{width:G}=D[$],J=this.negatePadding(D[$]),Y=f;if(J>JD.stringWidth(f))Y+=" ".repeat(J-JD.stringWidth(f));if(D[$].align&&D[$].align!=="left"&&this.wrap){let Q=F2[D[$].align];if(Y=Q(Y,J),JD.stringWidth(Y)<J)Y+=" ".repeat((G||0)-JD.stringWidth(Y)-1)}let U=D[$].padding||[0,0,0,0];if(U[3])C+=" ".repeat(U[3]);if(C+=XF(D[$],Y,"| "),C+=Y,C+=XF(D[$],Y," |"),U[1])C+=" ".repeat(U[1]);if(E===0&&u.length>0)C=this.renderInline(C,u[u.length-1])}),u.push({text:C.replace(/ +$/,""),span:D.span})}),u}renderInline(D,u){let F=D.match(/^ */),E=F?F[0].length:0,C=u.text,f=JD.stringWidth(C.trimRight());if(!u.span)return D;if(!this.wrap)return u.hidden=!0,C+D;if(E<f)return D;return u.hidden=!0,C.trimRight()+" ".repeat(E-f)+D.trimLeft()}rasterize(D){let u=[],F=this.columnWidths(D),E;return D.forEach((C,f)=>{if(C.width=F[f],this.wrap)E=JD.wrap(C.text,this.negatePadding(C),{hard:!0}).split(`
5
5
  `);else E=C.text.split(`
@@ -77,5 +77,5 @@ ${W.join(`
77
77
  `;X.forEach((W)=>{O+=W}),u.fail(O)}};let J={};f.conflicts=function(Q,X){if(q("<string|object> [array|string]",[Q,X],arguments.length),typeof Q==="object")Object.keys(Q).forEach((O)=>{f.conflicts(O,Q[O])});else{if(D.global(Q),!J[Q])J[Q]=[];if(Array.isArray(X))X.forEach((O)=>f.conflicts(Q,O));else J[Q].push(X)}},f.getConflicting=()=>J,f.conflicting=function(Q){if(Object.keys(Q).forEach((X)=>{if(J[X])J[X].forEach((O)=>{if(O&&Q[X]!==void 0&&Q[O]!==void 0)u.fail(E("Arguments %s and %s are mutually exclusive",X,O))})}),D.getInternalMethods().getParserConfiguration()["strip-dashed"])Object.keys(J).forEach((X)=>{J[X].forEach((O)=>{if(O&&Q[F.Parser.camelCase(X)]!==void 0&&Q[F.Parser.camelCase(O)]!==void 0)u.fail(E("Arguments %s and %s are mutually exclusive",X,O))})})},f.recommendCommands=function(Q,X){X=X.sort((A,v)=>v.length-A.length);let W=null,Z=1/0;for(let A=0,v;(v=X[A])!==void 0;A++){let n=O0(Q,v);if(n<=3&&n<Z)Z=n,W=v}if(W)u.fail(E("Did you mean %s?",W))},f.reset=function(Q){return $=xD($,(X)=>!Q[X]),J=xD(J,(X)=>!Q[X]),f};let Y=[];return f.freeze=function(){Y.push({implied:$,conflicting:J})},f.unfreeze=function(){let Q=Y.pop();XD(Q,void 0,F),{implied:$,conflicting:J}=Q},f}var su=[],$u;function hu(D,u,F,E){$u=E;let C={};if(Object.prototype.hasOwnProperty.call(D,"extends")){if(typeof D.extends!=="string")return C;let f=/\.json|\..*rc$/.test(D.extends),$=null;if(!f)try{$=import.meta.resolve(D.extends)}catch(G){return D}else $=M8(u,D.extends);G8($),su.push($),C=f?JSON.parse($u.readFileSync($,"utf8")):E.require(D.extends),delete D.extends,C=hu(C,$u.path.dirname($),F,$u)}return su=[],F?W0(C,D):Object.assign({},C,D)}function G8(D){if(su.indexOf(D)>-1)throw new DD(`Circular extended configurations: '${D}'.`)}function M8(D,u){return $u.path.resolve(D,u)}function W0(D,u){let F={};function E(C){return C&&typeof C==="object"&&!Array.isArray(C)}Object.assign(F,D);for(let C of Object.keys(u))if(E(u[C])&&E(F[C]))F[C]=W0(D[C],u[C]);else F[C]=u[C];return F}var H=function(D,u,F,E,C){if(E==="m")throw TypeError("Private method is not writable");if(E==="a"&&!C)throw TypeError("Private accessor was defined without a setter");if(typeof u==="function"?D!==u||!C:!u.has(D))throw TypeError("Cannot write private member to an object whose class did not declare it");return E==="a"?C.call(D,F):C?C.value=F:u.set(D,F),F},B=function(D,u,F,E){if(F==="a"&&!E)throw TypeError("Private accessor was defined without a getter");if(typeof u==="function"?D!==u||!E:!u.has(D))throw TypeError("Cannot read private member from an object whose class did not declare it");return F==="m"?E:F==="a"?E.call(D):E?E.value:u.get(D)},uD,vD,zu,ZD,QD,Wu,wD,mD,Uu,WD,Nu,UD,VD,OD,ND,Ru,iD,hD,K,ju,qu,TD,dD,Fu,oD,bD,Hu,P,kD,gD,lD,b,Iu,_D,r;function c0(D){return(u=[],F=D.process.cwd(),E)=>{let C=new p0(u,F,E,D);return Object.defineProperty(C,"argv",{get:()=>{return C.parse()},enumerable:!0}),C.help(),C.version(),C}}var U0=Symbol("copyDoubleDash"),N0=Symbol("copyDoubleDash"),ru=Symbol("deleteFromParserHintObject"),R0=Symbol("emitWarning"),j0=Symbol("freeze"),q0=Symbol("getDollarZero"),yD=Symbol("getParserConfiguration"),H0=Symbol("getUsageConfiguration"),au=Symbol("guessLocale"),I0=Symbol("guessVersion"),V0=Symbol("parsePositionalNumbers"),eu=Symbol("pkgUp"),tD=Symbol("populateParserHintArray"),Eu=Symbol("populateParserHintSingleValueDictionary"),DF=Symbol("populateParserHintArrayDictionary"),uF=Symbol("populateParserHintDictionary"),FF=Symbol("sanitizeKey"),EF=Symbol("setKey"),CF=Symbol("unfreeze"),_0=Symbol("validateAsync"),K0=Symbol("getCommandInstance"),L0=Symbol("getContext"),A0=Symbol("getHasOutput"),S0=Symbol("getLoggerInstance"),x0=Symbol("getParseContext"),P0=Symbol("getUsageInstance"),w0=Symbol("getValidationInstance"),Vu=Symbol("hasParseCallback"),b0=Symbol("isGlobalContext"),sD=Symbol("postProcess"),t0=Symbol("rebase"),BF=Symbol("reset"),Gu=Symbol("runYargsParserAndExecuteCommands"),fF=Symbol("runValidation"),n0=Symbol("setHasOutput"),rD=Symbol("kTrackManuallySetKeys"),X8="en_US";class p0{constructor(D=[],u,F,E){this.customScriptName=!1,this.parsed=!1,uD.set(this,void 0),vD.set(this,void 0),zu.set(this,{commands:[],fullCommands:[]}),ZD.set(this,null),QD.set(this,null),Wu.set(this,"show-hidden"),wD.set(this,null),mD.set(this,!0),Uu.set(this,{}),WD.set(this,!0),Nu.set(this,[]),UD.set(this,void 0),VD.set(this,{}),OD.set(this,!1),ND.set(this,null),Ru.set(this,!0),iD.set(this,void 0),hD.set(this,""),K.set(this,void 0),ju.set(this,void 0),qu.set(this,{}),TD.set(this,null),dD.set(this,null),Fu.set(this,{}),oD.set(this,{}),bD.set(this,void 0),Hu.set(this,!1),P.set(this,void 0),kD.set(this,!1),gD.set(this,!1),lD.set(this,!1),b.set(this,void 0),Iu.set(this,{}),_D.set(this,null),r.set(this,void 0),H(this,P,E,"f"),H(this,bD,D,"f"),H(this,vD,u,"f"),H(this,ju,F,"f"),H(this,UD,new lu(this),"f"),this.$0=this[q0](),this[BF](),H(this,uD,B(this,uD,"f"),"f"),H(this,b,B(this,b,"f"),"f"),H(this,r,B(this,r,"f"),"f"),H(this,K,B(this,K,"f"),"f"),B(this,K,"f").showHiddenOpt=B(this,Wu,"f"),H(this,iD,this[N0](),"f"),B(this,P,"f").y18n.setLocale(X8)}addHelpOpt(D,u){if(q("[string|boolean] [string]",[D,u],arguments.length),B(this,ND,"f"))this[ru](B(this,ND,"f")),H(this,ND,null,"f");if(D===!1&&u===void 0)return this;return H(this,ND,typeof D==="string"?D:"help","f"),this.boolean(B(this,ND,"f")),this.describe(B(this,ND,"f"),u||B(this,b,"f").deferY18nLookup("Show help")),this}help(D,u){return this.addHelpOpt(D,u)}addShowHiddenOpt(D,u){if(q("[string|boolean] [string]",[D,u],arguments.length),D===!1&&u===void 0)return this;let F=typeof D==="string"?D:B(this,Wu,"f");return this.boolean(F),this.describe(F,u||B(this,b,"f").deferY18nLookup("Show hidden options")),B(this,K,"f").showHiddenOpt=F,this}showHidden(D,u){return this.addShowHiddenOpt(D,u)}alias(D,u){return q("<object|string|array> [string|array]",[D,u],arguments.length),this[DF](this.alias.bind(this),"alias",D,u),this}array(D){return q("<array|string>",[D],arguments.length),this[tD]("array",D),this[rD](D),this}boolean(D){return q("<array|string>",[D],arguments.length),this[tD]("boolean",D),this[rD](D),this}check(D,u){return q("<function> [boolean]",[D,u],arguments.length),this.middleware((F,E)=>{return pD(()=>{return D(F,E.getOptions())},(C)=>{if(!C)B(this,b,"f").fail(B(this,P,"f").y18n.__("Argument check failed: %s",D.toString()));else if(typeof C==="string"||C instanceof Error)B(this,b,"f").fail(C.toString(),C);return F},(C)=>{return B(this,b,"f").fail(C.message?C.message:C.toString(),C),F})},!1,u),this}choices(D,u){return q("<object|string|array> [string|array]",[D,u],arguments.length),this[DF](this.choices.bind(this),"choices",D,u),this}coerce(D,u){if(q("<object|string|array> [function]",[D,u],arguments.length),Array.isArray(D)){if(!u)throw new DD("coerce callback must be provided");for(let E of D)this.coerce(E,u);return this}else if(typeof D==="object"){for(let E of Object.keys(D))this.coerce(E,D[E]);return this}if(!u)throw new DD("coerce callback must be provided");let F=D;return B(this,K,"f").key[F]=!0,B(this,UD,"f").addCoerceMiddleware((E,C)=>{var f;let $=(f=C.getAliases()[F])!==null&&f!==void 0?f:[],G=[F,...$].filter((J)=>Object.prototype.hasOwnProperty.call(E,J));if(G.length===0)return E;return pD(()=>{return u(E[G[0]])},(J)=>{return G.forEach((Y)=>{E[Y]=J}),E},(J)=>{throw new DD(J.message)})},F),this}conflicts(D,u){return q("<string|object> [string|array]",[D,u],arguments.length),B(this,r,"f").conflicts(D,u),this}config(D="config",u,F){if(q("[object|string] [string|function] [function]",[D,u,F],arguments.length),typeof D==="object"&&!Array.isArray(D))return D=hu(D,B(this,vD,"f"),this[yD]()["deep-merge-config"]||!1,B(this,P,"f")),B(this,K,"f").configObjects=(B(this,K,"f").configObjects||[]).concat(D),this;if(typeof u==="function")F=u,u=void 0;return this.describe(D,u||B(this,b,"f").deferY18nLookup("Path to JSON config file")),(Array.isArray(D)?D:[D]).forEach((E)=>{B(this,K,"f").config[E]=F||!0}),this}completion(D,u,F){if(q("[string] [string|boolean|function] [function]",[D,u,F],arguments.length),typeof u==="function")F=u,u=void 0;if(H(this,QD,D||B(this,QD,"f")||"completion","f"),!u&&u!==!1)u="generate completion script";if(this.command(B(this,QD,"f"),u),F)B(this,ZD,"f").registerFunction(F);return this}command(D,u,F,E,C,f){return q("<string|array|object> [string|boolean] [function|object] [function] [array] [boolean|string]",[D,u,F,E,C,f],arguments.length),B(this,uD,"f").addHandler(D,u,F,E,C,f),this}commands(D,u,F,E,C,f){return this.command(D,u,F,E,C,f)}commandDir(D,u){q("<string> [object]",[D,u],arguments.length);let F=B(this,ju,"f")||B(this,P,"f").require;return B(this,uD,"f").addDirectory(D,F,B(this,P,"f").getCallerFile(),u),this}count(D){return q("<array|string>",[D],arguments.length),this[tD]("count",D),this[rD](D),this}default(D,u,F){if(q("<object|string|array> [*] [string]",[D,u,F],arguments.length),F)gu(D,B(this,P,"f")),B(this,K,"f").defaultDescription[D]=F;if(typeof u==="function"){if(gu(D,B(this,P,"f")),!B(this,K,"f").defaultDescription[D])B(this,K,"f").defaultDescription[D]=B(this,b,"f").functionDescription(u);u=u.call()}return this[Eu](this.default.bind(this),"default",D,u),this}defaults(D,u,F){return this.default(D,u,F)}demandCommand(D=1,u,F,E){if(q("[number] [number|string] [string|null|undefined] [string|null|undefined]",[D,u,F,E],arguments.length),typeof u!=="number")F=u,u=1/0;return this.global("_",!1),B(this,K,"f").demandedCommands._={min:D,max:u,minMsg:F,maxMsg:E},this}demand(D,u,F){if(Array.isArray(u))u.forEach((E)=>{XD(F,!0,B(this,P,"f")),this.demandOption(E,F)}),u=1/0;else if(typeof u!=="number")F=u,u=1/0;if(typeof D==="number")XD(F,!0,B(this,P,"f")),this.demandCommand(D,u,F,F);else if(Array.isArray(D))D.forEach((E)=>{XD(F,!0,B(this,P,"f")),this.demandOption(E,F)});else if(typeof F==="string")this.demandOption(D,F);else if(F===!0||typeof F>"u")this.demandOption(D);return this}demandOption(D,u){return q("<object|string|array> [string]",[D,u],arguments.length),this[Eu](this.demandOption.bind(this),"demandedOptions",D,u),this}deprecateOption(D,u){return q("<string> [string|boolean]",[D,u],arguments.length),B(this,K,"f").deprecatedOptions[D]=u,this}describe(D,u){return q("<object|string|array> [string]",[D,u],arguments.length),this[EF](D,!0),B(this,b,"f").describe(D,u),this}detectLocale(D){return q("<boolean>",[D],arguments.length),H(this,mD,D,"f"),this}env(D){if(q("[string|boolean]",[D],arguments.length),D===!1)delete B(this,K,"f").envPrefix;else B(this,K,"f").envPrefix=D||"";return this}epilogue(D){return q("<string>",[D],arguments.length),B(this,b,"f").epilog(D),this}epilog(D){return this.epilogue(D)}example(D,u){if(q("<string|array> [string]",[D,u],arguments.length),Array.isArray(D))D.forEach((F)=>this.example(...F));else B(this,b,"f").example(D,u);return this}exit(D,u){if(H(this,OD,!0,"f"),H(this,wD,u,"f"),B(this,WD,"f"))B(this,P,"f").process.exit(D)}exitProcess(D=!0){return q("[boolean]",[D],arguments.length),H(this,WD,D,"f"),this}fail(D){if(q("<function|boolean>",[D],arguments.length),typeof D==="boolean"&&D!==!1)throw new DD("Invalid first argument. Expected function or boolean 'false'");return B(this,b,"f").failFn(D),this}getAliases(){return this.parsed?this.parsed.aliases:{}}async getCompletion(D,u){if(q("<array> [function]",[D,u],arguments.length),!u)return new Promise((F,E)=>{B(this,ZD,"f").getCompletion(D,(C,f)=>{if(C)E(C);else F(f)})});else return B(this,ZD,"f").getCompletion(D,u)}getDemandedOptions(){return q([],0),B(this,K,"f").demandedOptions}getDemandedCommands(){return q([],0),B(this,K,"f").demandedCommands}getDeprecatedOptions(){return q([],0),B(this,K,"f").deprecatedOptions}getDetectLocale(){return B(this,mD,"f")}getExitProcess(){return B(this,WD,"f")}getGroups(){return Object.assign({},B(this,VD,"f"),B(this,oD,"f"))}getHelp(){if(H(this,OD,!0,"f"),!B(this,b,"f").hasCachedHelpMessage()){if(!this.parsed){let u=this[Gu](B(this,bD,"f"),void 0,void 0,0,!0);if(l(u))return u.then(()=>{return B(this,b,"f").help()})}let D=B(this,uD,"f").runDefaultBuilderOn(this);if(l(D))return D.then(()=>{return B(this,b,"f").help()})}return Promise.resolve(B(this,b,"f").help())}getOptions(){return B(this,K,"f")}getStrict(){return B(this,kD,"f")}getStrictCommands(){return B(this,gD,"f")}getStrictOptions(){return B(this,lD,"f")}global(D,u){if(q("<string|array> [boolean]",[D,u],arguments.length),D=[].concat(D),u!==!1)B(this,K,"f").local=B(this,K,"f").local.filter((F)=>D.indexOf(F)===-1);else D.forEach((F)=>{if(!B(this,K,"f").local.includes(F))B(this,K,"f").local.push(F)});return this}group(D,u){q("<string|array> <string>",[D,u],arguments.length);let F=B(this,oD,"f")[u]||B(this,VD,"f")[u];if(B(this,oD,"f")[u])delete B(this,oD,"f")[u];let E={};return B(this,VD,"f")[u]=(F||[]).concat(D).filter((C)=>{if(E[C])return!1;return E[C]=!0}),this}hide(D){return q("<string>",[D],arguments.length),B(this,K,"f").hiddenOptions.push(D),this}implies(D,u){return q("<string|object> [number|string|array]",[D,u],arguments.length),B(this,r,"f").implies(D,u),this}locale(D){if(q("[string]",[D],arguments.length),D===void 0)return this[au](),B(this,P,"f").y18n.getLocale();return H(this,mD,!1,"f"),B(this,P,"f").y18n.setLocale(D),this}middleware(D,u,F){return B(this,UD,"f").addMiddleware(D,!!u,F)}nargs(D,u){return q("<string|object|array> [number]",[D,u],arguments.length),this[Eu](this.nargs.bind(this),"narg",D,u),this}normalize(D){return q("<array|string>",[D],arguments.length),this[tD]("normalize",D),this}number(D){return q("<array|string>",[D],arguments.length),this[tD]("number",D),this[rD](D),this}option(D,u){if(q("<string|object> [object]",[D,u],arguments.length),typeof D==="object")Object.keys(D).forEach((F)=>{this.options(F,D[F])});else{if(typeof u!=="object")u={};if(this[rD](D),B(this,_D,"f")&&(D==="version"||(u===null||u===void 0?void 0:u.alias)==="version"))this[R0](['"version" is a reserved word.',"Please do one of the following:",'- Disable version with `yargs.version(false)` if using "version" as an option',"- Use the built-in `yargs.version` method instead (if applicable)","- Use a different option key","https://yargs.js.org/docs/#api-reference-version"].join(`
78
78
  `),void 0,"versionWarning");if(B(this,K,"f").key[D]=!0,u.alias)this.alias(D,u.alias);let F=u.deprecate||u.deprecated;if(F)this.deprecateOption(D,F);let E=u.demand||u.required||u.require;if(E)this.demand(D,E);if(u.demandOption)this.demandOption(D,typeof u.demandOption==="string"?u.demandOption:void 0);if(u.conflicts)this.conflicts(D,u.conflicts);if("default"in u)this.default(D,u.default);if(u.implies!==void 0)this.implies(D,u.implies);if(u.nargs!==void 0)this.nargs(D,u.nargs);if(u.config)this.config(D,u.configParser);if(u.normalize)this.normalize(D);if(u.choices)this.choices(D,u.choices);if(u.coerce)this.coerce(D,u.coerce);if(u.group)this.group(D,u.group);if(u.boolean||u.type==="boolean"){if(this.boolean(D),u.alias)this.boolean(u.alias)}if(u.array||u.type==="array"){if(this.array(D),u.alias)this.array(u.alias)}if(u.number||u.type==="number"){if(this.number(D),u.alias)this.number(u.alias)}if(u.string||u.type==="string"){if(this.string(D),u.alias)this.string(u.alias)}if(u.count||u.type==="count")this.count(D);if(typeof u.global==="boolean")this.global(D,u.global);if(u.defaultDescription)B(this,K,"f").defaultDescription[D]=u.defaultDescription;if(u.skipValidation)this.skipValidation(D);let C=u.describe||u.description||u.desc,f=B(this,b,"f").getDescriptions();if(!Object.prototype.hasOwnProperty.call(f,D)||typeof C==="string")this.describe(D,C);if(u.hidden)this.hide(D);if(u.requiresArg)this.requiresArg(D)}return this}options(D,u){return this.option(D,u)}parse(D,u,F){if(q("[string|array] [function|boolean|object] [function]",[D,u,F],arguments.length),this[j0](),typeof D>"u")D=B(this,bD,"f");if(typeof u==="object")H(this,dD,u,"f"),u=F;if(typeof u==="function")H(this,TD,u,"f"),u=!1;if(!u)H(this,bD,D,"f");if(B(this,TD,"f"))H(this,WD,!1,"f");let E=this[Gu](D,!!u),C=this.parsed;if(B(this,ZD,"f").setParsed(this.parsed),l(E))return E.then((f)=>{if(B(this,TD,"f"))B(this,TD,"f").call(this,B(this,wD,"f"),f,B(this,hD,"f"));return f}).catch((f)=>{if(B(this,TD,"f"))B(this,TD,"f")(f,this.parsed.argv,B(this,hD,"f"));throw f}).finally(()=>{this[CF](),this.parsed=C});else{if(B(this,TD,"f"))B(this,TD,"f").call(this,B(this,wD,"f"),E,B(this,hD,"f"));this[CF](),this.parsed=C}return E}parseAsync(D,u,F){let E=this.parse(D,u,F);return!l(E)?Promise.resolve(E):E}parseSync(D,u,F){let E=this.parse(D,u,F);if(l(E))throw new DD(".parseSync() must not be used with asynchronous builders, handlers, or middleware");return E}parserConfiguration(D){return q("<object>",[D],arguments.length),H(this,qu,D,"f"),this}pkgConf(D,u){q("<string> [string]",[D,u],arguments.length);let F=null,E=this[eu](u||B(this,vD,"f"));if(E[D]&&typeof E[D]==="object")F=hu(E[D],u||B(this,vD,"f"),this[yD]()["deep-merge-config"]||!1,B(this,P,"f")),B(this,K,"f").configObjects=(B(this,K,"f").configObjects||[]).concat(F);return this}positional(D,u){q("<string> <object>",[D,u],arguments.length);let F=["default","defaultDescription","implies","normalize","choices","conflicts","coerce","type","describe","desc","description","alias"];u=xD(u,(f,$)=>{if(f==="type"&&!["string","number","boolean"].includes($))return!1;return F.includes(f)});let E=B(this,zu,"f").fullCommands[B(this,zu,"f").fullCommands.length-1],C=E?B(this,uD,"f").cmdToParseOptions(E):{array:[],alias:{},default:{},demand:{}};return Du(C).forEach((f)=>{let $=C[f];if(Array.isArray($)){if($.indexOf(D)!==-1)u[f]=!0}else if($[D]&&!(f in u))u[f]=$[D]}),this.group(D,B(this,b,"f").getPositionalGroupName()),this.option(D,u)}recommendCommands(D=!0){return q("[boolean]",[D],arguments.length),H(this,Hu,D,"f"),this}required(D,u,F){return this.demand(D,u,F)}require(D,u,F){return this.demand(D,u,F)}requiresArg(D){if(q("<array|string|object> [number]",[D],arguments.length),typeof D==="string"&&B(this,K,"f").narg[D])return this;else this[Eu](this.requiresArg.bind(this),"narg",D,NaN);return this}showCompletionScript(D,u){return q("[string] [string]",[D,u],arguments.length),D=D||this.$0,B(this,iD,"f").log(B(this,ZD,"f").generateCompletionScript(D,u||B(this,QD,"f")||"completion")),this}showHelp(D){if(q("[string|function]",[D],arguments.length),H(this,OD,!0,"f"),!B(this,b,"f").hasCachedHelpMessage()){if(!this.parsed){let F=this[Gu](B(this,bD,"f"),void 0,void 0,0,!0);if(l(F))return F.then(()=>{B(this,b,"f").showHelp(D)}),this}let u=B(this,uD,"f").runDefaultBuilderOn(this);if(l(u))return u.then(()=>{B(this,b,"f").showHelp(D)}),this}return B(this,b,"f").showHelp(D),this}scriptName(D){return this.customScriptName=!0,this.$0=D,this}showHelpOnFail(D,u){return q("[boolean|string] [string]",[D,u],arguments.length),B(this,b,"f").showHelpOnFail(D,u),this}showVersion(D){return q("[string|function]",[D],arguments.length),B(this,b,"f").showVersion(D),this}skipValidation(D){return q("<array|string>",[D],arguments.length),this[tD]("skipValidation",D),this}strict(D){return q("[boolean]",[D],arguments.length),H(this,kD,D!==!1,"f"),this}strictCommands(D){return q("[boolean]",[D],arguments.length),H(this,gD,D!==!1,"f"),this}strictOptions(D){return q("[boolean]",[D],arguments.length),H(this,lD,D!==!1,"f"),this}string(D){return q("<array|string>",[D],arguments.length),this[tD]("string",D),this[rD](D),this}terminalWidth(){return q([],0),B(this,P,"f").process.stdColumns}updateLocale(D){return this.updateStrings(D)}updateStrings(D){return q("<object>",[D],arguments.length),H(this,mD,!1,"f"),B(this,P,"f").y18n.updateLocale(D),this}usage(D,u,F,E){if(q("<string|null|undefined> [string|boolean] [function|object] [function]",[D,u,F,E],arguments.length),u!==void 0)if(XD(D,null,B(this,P,"f")),(D||"").match(/^\$0( |$)/))return this.command(D,u,F,E);else throw new DD(".usage() description must start with $0 if being used as alias for .command()");else return B(this,b,"f").usage(D),this}usageConfiguration(D){return q("<object>",[D],arguments.length),H(this,Iu,D,"f"),this}version(D,u,F){if(q("[boolean|string] [string] [string]",[D,u,F],arguments.length),B(this,_D,"f"))this[ru](B(this,_D,"f")),B(this,b,"f").version(void 0),H(this,_D,null,"f");if(arguments.length===0)F=this[I0](),D="version";else if(arguments.length===1){if(D===!1)return this;F=D,D="version"}else if(arguments.length===2)F=u,u=void 0;return H(this,_D,typeof D==="string"?D:"version","f"),u=u||B(this,b,"f").deferY18nLookup("Show version number"),B(this,b,"f").version(F||void 0),this.boolean(B(this,_D,"f")),this.describe(B(this,_D,"f"),u),this}wrap(D){return q("<number|null|undefined>",[D],arguments.length),B(this,b,"f").wrap(D),this}[(uD=new WeakMap,vD=new WeakMap,zu=new WeakMap,ZD=new WeakMap,QD=new WeakMap,Wu=new WeakMap,wD=new WeakMap,mD=new WeakMap,Uu=new WeakMap,WD=new WeakMap,Nu=new WeakMap,UD=new WeakMap,VD=new WeakMap,OD=new WeakMap,ND=new WeakMap,Ru=new WeakMap,iD=new WeakMap,hD=new WeakMap,K=new WeakMap,ju=new WeakMap,qu=new WeakMap,TD=new WeakMap,dD=new WeakMap,Fu=new WeakMap,oD=new WeakMap,bD=new WeakMap,Hu=new WeakMap,P=new WeakMap,kD=new WeakMap,gD=new WeakMap,lD=new WeakMap,b=new WeakMap,Iu=new WeakMap,_D=new WeakMap,r=new WeakMap,U0)](D){if(!D._||!D["--"])return D;D._.push.apply(D._,D["--"]);try{delete D["--"]}catch(u){}return D}[N0](){return{log:(...D)=>{if(!this[Vu]())console.log(...D);if(H(this,OD,!0,"f"),B(this,hD,"f").length)H(this,hD,B(this,hD,"f")+`
79
79
  `,"f");H(this,hD,B(this,hD,"f")+D.join(" "),"f")},error:(...D)=>{if(!this[Vu]())console.error(...D);if(H(this,OD,!0,"f"),B(this,hD,"f").length)H(this,hD,B(this,hD,"f")+`
80
- `,"f");H(this,hD,B(this,hD,"f")+D.join(" "),"f")}}}[ru](D){Du(B(this,K,"f")).forEach((u)=>{if(((E)=>E==="configObjects")(u))return;let F=B(this,K,"f")[u];if(Array.isArray(F)){if(F.includes(D))F.splice(F.indexOf(D),1)}else if(typeof F==="object")delete F[D]}),delete B(this,b,"f").getDescriptions()[D]}[R0](D,u,F){if(!B(this,Uu,"f")[F])B(this,P,"f").process.emitWarning(D,u),B(this,Uu,"f")[F]=!0}[j0](){B(this,Nu,"f").push({options:B(this,K,"f"),configObjects:B(this,K,"f").configObjects.slice(0),exitProcess:B(this,WD,"f"),groups:B(this,VD,"f"),strict:B(this,kD,"f"),strictCommands:B(this,gD,"f"),strictOptions:B(this,lD,"f"),completionCommand:B(this,QD,"f"),output:B(this,hD,"f"),exitError:B(this,wD,"f"),hasOutput:B(this,OD,"f"),parsed:this.parsed,parseFn:B(this,TD,"f"),parseContext:B(this,dD,"f")}),B(this,b,"f").freeze(),B(this,r,"f").freeze(),B(this,uD,"f").freeze(),B(this,UD,"f").freeze()}[q0](){let D="",u;if(/\b(node|iojs|electron)(\.exe)?$/.test(B(this,P,"f").process.argv()[0]))u=B(this,P,"f").process.argv().slice(1,2);else u=B(this,P,"f").process.argv().slice(0,1);if(D=u.map((F)=>{let E=this[t0](B(this,vD,"f"),F);return F.match(/^(\/|([a-zA-Z]:)?\\)/)&&E.length<F.length?E:F}).join(" ").trim(),B(this,P,"f").getEnv("_")&&B(this,P,"f").getProcessArgvBin()===B(this,P,"f").getEnv("_"))D=B(this,P,"f").getEnv("_").replace(`${B(this,P,"f").path.dirname(B(this,P,"f").process.execPath())}/`,"");return D}[yD](){return B(this,qu,"f")}[H0](){return B(this,Iu,"f")}[au](){if(!B(this,mD,"f"))return;let D=B(this,P,"f").getEnv("LC_ALL")||B(this,P,"f").getEnv("LC_MESSAGES")||B(this,P,"f").getEnv("LANG")||B(this,P,"f").getEnv("LANGUAGE")||"en_US";this.locale(D.replace(/[.:].*/,""))}[I0](){return this[eu]().version||"unknown"}[V0](D){let u=D["--"]?D["--"]:D._;for(let F=0,E;(E=u[F])!==void 0;F++)if(B(this,P,"f").Parser.looksLikeNumber(E)&&Number.isSafeInteger(Math.floor(parseFloat(`${E}`))))u[F]=Number(E);return D}[eu](D){let u=D||"*";if(B(this,Fu,"f")[u])return B(this,Fu,"f")[u];let F={};try{let E=D||B(this,P,"f").mainFilename;if(B(this,P,"f").path.extname(E))E=B(this,P,"f").path.dirname(E);let C=B(this,P,"f").findUp(E,(f,$)=>{if($.includes("package.json"))return"package.json";else return});XD(C,void 0,B(this,P,"f")),F=JSON.parse(B(this,P,"f").readFileSync(C,"utf8"))}catch(E){}return B(this,Fu,"f")[u]=F||{},B(this,Fu,"f")[u]}[tD](D,u){u=[].concat(u),u.forEach((F)=>{F=this[FF](F),B(this,K,"f")[D].push(F)})}[Eu](D,u,F,E){this[uF](D,u,F,E,(C,f,$)=>{B(this,K,"f")[C][f]=$})}[DF](D,u,F,E){this[uF](D,u,F,E,(C,f,$)=>{B(this,K,"f")[C][f]=(B(this,K,"f")[C][f]||[]).concat($)})}[uF](D,u,F,E,C){if(Array.isArray(F))F.forEach((f)=>{D(f,E)});else if(((f)=>typeof f==="object")(F))for(let f of Du(F))D(f,F[f]);else C(u,this[FF](F),E)}[FF](D){if(D==="__proto__")return"___proto___";return D}[EF](D,u){return this[Eu](this[EF].bind(this),"key",D,u),this}[CF](){var D,u,F,E,C,f,$,G,J,Y,U,Q;let X=B(this,Nu,"f").pop();XD(X,void 0,B(this,P,"f"));let O;D=this,u=this,F=this,E=this,C=this,f=this,$=this,G=this,J=this,Y=this,U=this,Q=this,{options:{set value(W){H(D,K,W,"f")}}.value,configObjects:O,exitProcess:{set value(W){H(u,WD,W,"f")}}.value,groups:{set value(W){H(F,VD,W,"f")}}.value,output:{set value(W){H(E,hD,W,"f")}}.value,exitError:{set value(W){H(C,wD,W,"f")}}.value,hasOutput:{set value(W){H(f,OD,W,"f")}}.value,parsed:this.parsed,strict:{set value(W){H($,kD,W,"f")}}.value,strictCommands:{set value(W){H(G,gD,W,"f")}}.value,strictOptions:{set value(W){H(J,lD,W,"f")}}.value,completionCommand:{set value(W){H(Y,QD,W,"f")}}.value,parseFn:{set value(W){H(U,TD,W,"f")}}.value,parseContext:{set value(W){H(Q,dD,W,"f")}}.value}=X,B(this,K,"f").configObjects=O,B(this,b,"f").unfreeze(),B(this,r,"f").unfreeze(),B(this,uD,"f").unfreeze(),B(this,UD,"f").unfreeze()}[_0](D,u){return pD(u,(F)=>{return D(F),F})}getInternalMethods(){return{getCommandInstance:this[K0].bind(this),getContext:this[L0].bind(this),getHasOutput:this[A0].bind(this),getLoggerInstance:this[S0].bind(this),getParseContext:this[x0].bind(this),getParserConfiguration:this[yD].bind(this),getUsageConfiguration:this[H0].bind(this),getUsageInstance:this[P0].bind(this),getValidationInstance:this[w0].bind(this),hasParseCallback:this[Vu].bind(this),isGlobalContext:this[b0].bind(this),postProcess:this[sD].bind(this),reset:this[BF].bind(this),runValidation:this[fF].bind(this),runYargsParserAndExecuteCommands:this[Gu].bind(this),setHasOutput:this[n0].bind(this)}}[K0](){return B(this,uD,"f")}[L0](){return B(this,zu,"f")}[A0](){return B(this,OD,"f")}[S0](){return B(this,iD,"f")}[x0](){return B(this,dD,"f")||{}}[P0](){return B(this,b,"f")}[w0](){return B(this,r,"f")}[Vu](){return!!B(this,TD,"f")}[b0](){return B(this,Ru,"f")}[sD](D,u,F,E){if(F)return D;if(l(D))return D;if(!u)D=this[U0](D);if(this[yD]()["parse-positional-numbers"]||this[yD]()["parse-positional-numbers"]===void 0)D=this[V0](D);if(E)D=cD(D,this,B(this,UD,"f").getMiddleware(),!1);return D}[BF](D={}){H(this,K,B(this,K,"f")||{},"f");let u={};u.local=B(this,K,"f").local||[],u.configObjects=B(this,K,"f").configObjects||[];let F={};u.local.forEach((f)=>{F[f]=!0,(D[f]||[]).forEach(($)=>{F[$]=!0})}),Object.assign(B(this,oD,"f"),Object.keys(B(this,VD,"f")).reduce((f,$)=>{let G=B(this,VD,"f")[$].filter((J)=>!(J in F));if(G.length>0)f[$]=G;return f},{})),H(this,VD,{},"f");let E=["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"],C=["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"];if(E.forEach((f)=>{u[f]=(B(this,K,"f")[f]||[]).filter(($)=>!F[$])}),C.forEach((f)=>{u[f]=xD(B(this,K,"f")[f],($)=>!F[$])}),u.envPrefix=B(this,K,"f").envPrefix,H(this,K,u,"f"),H(this,b,B(this,b,"f")?B(this,b,"f").reset(F):M0(this,B(this,P,"f")),"f"),H(this,r,B(this,r,"f")?B(this,r,"f").reset(F):Y0(this,B(this,b,"f"),B(this,P,"f")),"f"),H(this,uD,B(this,uD,"f")?B(this,uD,"f").reset():h0(B(this,b,"f"),B(this,r,"f"),B(this,UD,"f"),B(this,P,"f")),"f"),!B(this,ZD,"f"))H(this,ZD,Q0(this,B(this,b,"f"),B(this,uD,"f"),B(this,P,"f")),"f");return B(this,UD,"f").reset(),H(this,QD,null,"f"),H(this,hD,"","f"),H(this,wD,null,"f"),H(this,OD,!1,"f"),this.parsed=!1,this}[t0](D,u){return B(this,P,"f").path.relative(D,u)}[Gu](D,u,F,E=0,C=!1){var f,$,G,J;let Y=!!F||C;D=D||B(this,bD,"f"),B(this,K,"f").__=B(this,P,"f").y18n.__,B(this,K,"f").configuration=this[yD]();let U=!!B(this,K,"f").configuration["populate--"],Q=Object.assign({},B(this,K,"f").configuration,{"populate--":!0}),X=B(this,P,"f").Parser.detailed(D,Object.assign({},B(this,K,"f"),{configuration:{"parse-positional-numbers":!1,...Q}})),O=Object.assign(X.argv,B(this,dD,"f")),W=void 0,Z=X.aliases,A=!1,v=!1;if(Object.keys(O).forEach((n)=>{if(n===B(this,ND,"f")&&O[n])A=!0;else if(n===B(this,_D,"f")&&O[n])v=!0}),O.$0=this.$0,this.parsed=X,E===0)B(this,b,"f").clearCachedHelpMessage();try{if(this[au](),u)return this[sD](O,U,!!F,!1);if(B(this,ND,"f")){if([B(this,ND,"f")].concat(Z[B(this,ND,"f")]||[]).filter((ED)=>ED.length>1).includes(""+O._[O._.length-1]))O._.pop(),A=!0}H(this,Ru,!1,"f");let n=B(this,uD,"f").getCommands(),GD=((f=B(this,ZD,"f"))===null||f===void 0?void 0:f.completionKey)?[($=B(this,ZD,"f"))===null||$===void 0?void 0:$.completionKey,...(J=this.getAliases()[(G=B(this,ZD,"f"))===null||G===void 0?void 0:G.completionKey])!==null&&J!==void 0?J:[]].some((g)=>Object.prototype.hasOwnProperty.call(O,g)):!1,t=A||GD||C;if(O._.length){if(n.length){let g;for(let ED=E||0,a;O._[ED]!==void 0;ED++)if(a=String(O._[ED]),n.includes(a)&&a!==B(this,QD,"f")){let ID=B(this,uD,"f").runCommand(a,this,X,ED+1,C,A||v||C);return this[sD](ID,U,!!F,!1)}else if(!g&&a!==B(this,QD,"f")){g=a;break}if(!B(this,uD,"f").hasDefaultCommand()&&B(this,Hu,"f")&&g&&!t)B(this,r,"f").recommendCommands(g,n)}if(B(this,QD,"f")&&O._.includes(B(this,QD,"f"))&&!GD){if(B(this,WD,"f"))PD(!0);this.showCompletionScript(),this.exit(0)}}if(B(this,uD,"f").hasDefaultCommand()&&!t){let g=B(this,uD,"f").runCommand(null,this,X,0,C,A||v||C);return this[sD](g,U,!!F,!1)}if(GD){if(B(this,WD,"f"))PD(!0);D=[].concat(D);let g=D.slice(D.indexOf(`--${B(this,ZD,"f").completionKey}`)+1);return B(this,ZD,"f").getCompletion(g,(ED,a)=>{if(ED)throw new DD(ED.message);(a||[]).forEach((ID)=>{B(this,iD,"f").log(ID)}),this.exit(0)}),this[sD](O,!U,!!F,!1)}if(!B(this,OD,"f")){if(A){if(B(this,WD,"f"))PD(!0);Y=!0,this.showHelp((g)=>{B(this,iD,"f").log(g),this.exit(0)})}else if(v){if(B(this,WD,"f"))PD(!0);Y=!0,B(this,b,"f").showVersion("log"),this.exit(0)}}if(!Y&&B(this,K,"f").skipValidation.length>0)Y=Object.keys(O).some((g)=>B(this,K,"f").skipValidation.indexOf(g)>=0&&O[g]===!0);if(!Y){if(X.error)throw new DD(X.error.message);if(!GD){let g=this[fF](Z,{},X.error);if(!F)W=cD(O,this,B(this,UD,"f").getMiddleware(),!0);if(W=this[_0](g,W!==null&&W!==void 0?W:O),l(W)&&!F)W=W.then(()=>{return cD(O,this,B(this,UD,"f").getMiddleware(),!1)})}}}catch(n){if(n instanceof DD)B(this,b,"f").fail(n.message,n);else throw n}return this[sD](W!==null&&W!==void 0?W:O,U,!!F,!0)}[fF](D,u,F,E){let C={...this.getDemandedOptions()};return(f)=>{if(F)throw new DD(F.message);B(this,r,"f").nonOptionCount(f),B(this,r,"f").requiredArguments(f,C);let $=!1;if(B(this,gD,"f"))$=B(this,r,"f").unknownCommands(f);if(B(this,kD,"f")&&!$)B(this,r,"f").unknownArguments(f,D,u,!!E);else if(B(this,lD,"f"))B(this,r,"f").unknownArguments(f,D,{},!1,!1);B(this,r,"f").limitedChoices(f),B(this,r,"f").implications(f),B(this,r,"f").conflicting(f)}}[n0](){H(this,OD,!0,"f")}[rD](D){if(typeof D==="string")B(this,K,"f").key[D]=!0;else for(let u of D)B(this,K,"f").key[u]=!0}}function z0(D){return!!D&&typeof D.getInternalMethods==="function"}var Z8=c0(ku),v0=Z8;import{EOL as HD}from"os";import e0 from"path";import J8 from"fs";var m0=g0("main");l0("main");var RD=du(process.argv),D2=new Set(["--version","-v"]);if(RD.length===1&&D2.has(RD[0]))process.stdout.write(Lu+HD),process.exit();if(RD.length===2&&RD.some((D)=>D2.has(D))&&RD.includes("--verbose")){let D=process.argv[1],u=(()=>{if(!D||D.startsWith("-"))return;if(D.startsWith("/$bunfs/")||/^B:[\\/]~BUN[\\/]/.test(D))return;let E=e0.resolve(D);if(E===process.execPath)return;try{if(!J8.statSync(E).isFile())return}catch{return}return E})(),F=[`version: ${Lu}`,`channel: ${d0}`,`commit: ${o0}`,`binary: ${process.execPath}`,...u?[`bundle: ${u}`]:[]];process.stdout.write(F.join(HD)+HD),process.exit()}var _u={acp:()=>import("./chunk-zcsgqk9f.js").then((D)=>D.AcpCommand),mcp:()=>import("./chunk-avf8v3hb.js").then((D)=>D.McpCommand),attach:()=>import("./chunk-4sc82a27.js").then((D)=>D.AttachCommand),run:()=>import("./chunk-59yqvk48.js").then((D)=>D.RunCommand),generate:()=>import("./chunk-k75jqg60.js").then((D)=>D.GenerateCommand),debug:()=>import("./chunk-0c2p3a6v.js").then((D)=>D.DebugCommand),console:()=>import("./chunk-2wajs9xv.js").then((D)=>D.ConsoleCommand),providers:()=>import("./chunk-7tr9ejyk.js").then((D)=>D.ProvidersCommand),agent:()=>import("./chunk-w8saweey.js").then((D)=>D.AgentCommand),upgrade:()=>import("./chunk-634pnryq.js").then((D)=>D.UpgradeCommand),uninstall:()=>import("./chunk-rza530gm.js").then((D)=>D.UninstallCommand),serve:()=>import("./chunk-wqj0xasg.js").then((D)=>D.ServeCommand),models:()=>import("./chunk-0e86gt9r.js").then((D)=>D.ModelsCommand),stats:()=>import("./chunk-5pb551dx.js").then((D)=>D.StatsCommand),usage:()=>import("./chunk-za7mwbye.js").then((D)=>D.UsageCommand),export:()=>import("./chunk-ew9pdrp9.js").then((D)=>D.ExportCommand),import:()=>import("./chunk-15j5cn4t.js").then((D)=>D.ImportCommand),github:()=>import("./chunk-pje60pj2.js").then((D)=>D.GithubCommand),pr:()=>import("./chunk-85wcc1tp.js").then((D)=>D.PrCommand),session:()=>import("./chunk-wezarrvy.js").then((D)=>D.SessionCommand),plugin:()=>import("./chunk-rkyf0cp8.js").then((D)=>D.PluginCommand),plug:()=>import("./chunk-rkyf0cp8.js").then((D)=>D.PluginCommand),auth:()=>import("./chunk-y7sy3w6z.js").then((D)=>D.AuthCommand),qredits:()=>import("./chunk-r7sqdfad.js").then((D)=>D.QreditsCommand),batch:()=>import("./chunk-02jtpxe0.js").then((D)=>D.BatchCommand),db:()=>import("./chunk-wmqsdt2c.js").then((D)=>D.DbCommand),default:()=>import("./chunk-5jx0yadh.js").then((D)=>D.TuiThreadCommand)};function y(D,u,F){return{command:D,describe:u,aliases:F,handler:async()=>{}}}function $F(){return[y("acp","start ACP (Agent Client Protocol) server"),y("mcp","manage MCP (Model Context Protocol) servers"),{command:"$0 [project]",describe:"start qitqode tui",builder:(D)=>D.positional("project",{type:"string",describe:"path to start qitqode in"}).options(s0).options(r0).option("never-ask",{type:"boolean",describe:"start in never-ask mode, auto-decide without asking (permissions excluded)",default:!1}).option("trust",{type:"boolean",describe:"skip workspace trust prompt and trust the directory",default:!1}),handler:async()=>{}},y("attach <url>","attach to a running qitqode server"),y("run [message..]","run qitqode with a message"),y("generate","generate files"),y("debug","debugging and troubleshooting tools"),y("console","manage qitqode accounts"),y("providers","manage AI providers and credentials",["auth"]),y("agent","manage agents"),y("upgrade [target]","upgrade qitqode to the latest or a specific version"),y("uninstall","uninstall qitqode and remove all related files"),y("serve","starts a headless qitqode server"),y("models [provider]","list all available models"),y("stats","show token usage and cost statistics"),y("usage [sessionID]","show per-turn token usage and cost"),y("export [sessionID]","export session data as JSON"),y("import <file>","import session data from JSON file or URL"),y("github","manage GitHub agent"),y("pr <number>","fetch and checkout a GitHub PR branch, then run qitqode"),y("session","manage sessions"),y("plugin <module>","install plugin and update config",["plug"]),y("auth <command>","Sign in or out of Forgewise"),y("qredits <command>","Check Qredits balance and spend history"),y("batch <command>","Submit and poll async batch LLM jobs"),y("db","database tools")]}function zF(D){let u=new Set(["--log-level","--model","-m","--session","-s","--prompt","--agent","--port","--hostname","--mdns-domain","--cors"]);for(let F=0;F<D.length;F++){let E=D[F];if(E==="--")return;if(E.startsWith("-")){if(u.has(E))F++;continue}return E}}function Q8(D){return D.length>0&&D.every((u)=>u==="--help"||u==="-h")}function O8(D){return D.includes("--help")||D.includes("-h")}async function T8(D){let u=zF(D);if(D.includes("--get-yargs-completions")||u==="completion")return $F();if(Q8(D))return $F();else if(u&&u in _u)return[await _u[u]()];else if(O8(D))return $F();else return[await _u.default()]}function u2(D){let u=D.trimStart();if(!u.startsWith("qitqode ")){process.stderr.write(Ku.logo()+HD+HD),process.stderr.write(u);return}process.stderr.write(D)}var Mu=y0(v0(RD)).middleware(async(D)=>{if(D.pure)process.env.QITQODE_PURE="1";let u=await import("./chunk-096pd6c4.js"),{Filesystem:F}=await import("./chunk-89w3yhf8.js"),{Heap:E}=await import("./chunk-s6ktx2sx.js"),{Global:C}=await import("./chunk-1r95p0tp.js");await u.init({print:process.argv.includes("--print-logs"),dev:hF,level:(()=>{if(D.logLevel)return D.logLevel;if(hF)return"DEBUG";return"INFO"})()}),E.start(),(await import("./chunk-e5mv5wnt.js")).startRefresh(),process.env.AGENT="1",process.env.QITQODE="1",process.env.QITQODE_PID=String(process.pid),u.Default.info("qitqode",{version:Lu,command:zF(RD)??"tui",process_role:m0.processRole,run_id:m0.runID});let $=e0.join(C.Path.data,"qitqode.db");if(!await F.exists($)){let{JsonMigration:G,Database:J}=await import("./chunk-k1txw65h.js"),{drizzle:Y}=await import("./chunk-7mke41x0.js"),U=process.stderr.isTTY;process.stderr.write("Performing one time database migration, may take a few minutes..."+HD);let Q=-1;if(U)process.stderr.write("\x1B[?25l");try{await G.run(Y({client:J.Client().$client}),{progress:(X)=>{let O=Math.floor(X.current/X.total*100);if(O===Q&&X.current!==X.total)return;if(Q=O,U){if(process.stderr.write(a0(O,`${X.label.padEnd(12)} ${X.current}/${X.total}`)),X.current===X.total)process.stderr.write(`
81
- `)}else process.stderr.write(`sqlite-migration:${O}${HD}`)}})}finally{if(U)process.stderr.write("\x1B[?25h");else process.stderr.write(`sqlite-migration:done${HD}`)}process.stderr.write("Database migration complete."+HD)}if(!process.env.QITQODE_DISABLE_CLAUDE_IMPORT&&!process.env.QITQODE_CLAUDE_IMPORTED){process.env.QITQODE_CLAUDE_IMPORTED="1";let G=async()=>{try{let{ClaudeImport:U}=await import("./chunk-20702epe.js");await U.run()}catch(U){u.Default.warn("claude-import failed",{e:GF(U)})}},J=zF(RD);if(!J||!(J in _u))G();else await G()}}).usage("").completion("completion","generate shell completion script");for(let D of await T8(RD))Mu.command(D);Mu.fail((D,u)=>{if(D?.startsWith("Unknown argument")||D?.startsWith("Not enough non-option arguments")||D?.startsWith("Invalid values:")){if(u)throw u;Mu.showHelp(u2)}if(u)throw u;process.exit(1)}).strict();try{if(RD.includes("-h")||RD.includes("--help"))await Mu.parse(RD,(D,u,F)=>{if(D)throw D;if(!F)return;u2(F)});else await Mu.parse()}catch(D){let u={};if(D instanceof i0){let C=D.toObject();Object.assign(u,{...C.data})}if(D instanceof Error)Object.assign(u,{name:D.name,message:D.message,cause:D.cause?.toString(),stack:D.stack});if(D instanceof ResolveMessage)Object.assign(u,{name:D.name,message:D.message,code:D.code,specifier:D.specifier,referrer:D.referrer,position:D.position,importKind:D.importKind});let F=await import("./chunk-096pd6c4.js");F.Default.error("fatal",u);let E=k0(D);if(E)Ku.error(E);if(E===void 0)Ku.error("Unexpected error, check log file at "+F.file()+" for more details"+HD),process.stderr.write(GF(D)+HD);process.exitCode=1}finally{process.exit()}
80
+ `,"f");H(this,hD,B(this,hD,"f")+D.join(" "),"f")}}}[ru](D){Du(B(this,K,"f")).forEach((u)=>{if(((E)=>E==="configObjects")(u))return;let F=B(this,K,"f")[u];if(Array.isArray(F)){if(F.includes(D))F.splice(F.indexOf(D),1)}else if(typeof F==="object")delete F[D]}),delete B(this,b,"f").getDescriptions()[D]}[R0](D,u,F){if(!B(this,Uu,"f")[F])B(this,P,"f").process.emitWarning(D,u),B(this,Uu,"f")[F]=!0}[j0](){B(this,Nu,"f").push({options:B(this,K,"f"),configObjects:B(this,K,"f").configObjects.slice(0),exitProcess:B(this,WD,"f"),groups:B(this,VD,"f"),strict:B(this,kD,"f"),strictCommands:B(this,gD,"f"),strictOptions:B(this,lD,"f"),completionCommand:B(this,QD,"f"),output:B(this,hD,"f"),exitError:B(this,wD,"f"),hasOutput:B(this,OD,"f"),parsed:this.parsed,parseFn:B(this,TD,"f"),parseContext:B(this,dD,"f")}),B(this,b,"f").freeze(),B(this,r,"f").freeze(),B(this,uD,"f").freeze(),B(this,UD,"f").freeze()}[q0](){let D="",u;if(/\b(node|iojs|electron)(\.exe)?$/.test(B(this,P,"f").process.argv()[0]))u=B(this,P,"f").process.argv().slice(1,2);else u=B(this,P,"f").process.argv().slice(0,1);if(D=u.map((F)=>{let E=this[t0](B(this,vD,"f"),F);return F.match(/^(\/|([a-zA-Z]:)?\\)/)&&E.length<F.length?E:F}).join(" ").trim(),B(this,P,"f").getEnv("_")&&B(this,P,"f").getProcessArgvBin()===B(this,P,"f").getEnv("_"))D=B(this,P,"f").getEnv("_").replace(`${B(this,P,"f").path.dirname(B(this,P,"f").process.execPath())}/`,"");return D}[yD](){return B(this,qu,"f")}[H0](){return B(this,Iu,"f")}[au](){if(!B(this,mD,"f"))return;let D=B(this,P,"f").getEnv("LC_ALL")||B(this,P,"f").getEnv("LC_MESSAGES")||B(this,P,"f").getEnv("LANG")||B(this,P,"f").getEnv("LANGUAGE")||"en_US";this.locale(D.replace(/[.:].*/,""))}[I0](){return this[eu]().version||"unknown"}[V0](D){let u=D["--"]?D["--"]:D._;for(let F=0,E;(E=u[F])!==void 0;F++)if(B(this,P,"f").Parser.looksLikeNumber(E)&&Number.isSafeInteger(Math.floor(parseFloat(`${E}`))))u[F]=Number(E);return D}[eu](D){let u=D||"*";if(B(this,Fu,"f")[u])return B(this,Fu,"f")[u];let F={};try{let E=D||B(this,P,"f").mainFilename;if(B(this,P,"f").path.extname(E))E=B(this,P,"f").path.dirname(E);let C=B(this,P,"f").findUp(E,(f,$)=>{if($.includes("package.json"))return"package.json";else return});XD(C,void 0,B(this,P,"f")),F=JSON.parse(B(this,P,"f").readFileSync(C,"utf8"))}catch(E){}return B(this,Fu,"f")[u]=F||{},B(this,Fu,"f")[u]}[tD](D,u){u=[].concat(u),u.forEach((F)=>{F=this[FF](F),B(this,K,"f")[D].push(F)})}[Eu](D,u,F,E){this[uF](D,u,F,E,(C,f,$)=>{B(this,K,"f")[C][f]=$})}[DF](D,u,F,E){this[uF](D,u,F,E,(C,f,$)=>{B(this,K,"f")[C][f]=(B(this,K,"f")[C][f]||[]).concat($)})}[uF](D,u,F,E,C){if(Array.isArray(F))F.forEach((f)=>{D(f,E)});else if(((f)=>typeof f==="object")(F))for(let f of Du(F))D(f,F[f]);else C(u,this[FF](F),E)}[FF](D){if(D==="__proto__")return"___proto___";return D}[EF](D,u){return this[Eu](this[EF].bind(this),"key",D,u),this}[CF](){var D,u,F,E,C,f,$,G,J,Y,U,Q;let X=B(this,Nu,"f").pop();XD(X,void 0,B(this,P,"f"));let O;D=this,u=this,F=this,E=this,C=this,f=this,$=this,G=this,J=this,Y=this,U=this,Q=this,{options:{set value(W){H(D,K,W,"f")}}.value,configObjects:O,exitProcess:{set value(W){H(u,WD,W,"f")}}.value,groups:{set value(W){H(F,VD,W,"f")}}.value,output:{set value(W){H(E,hD,W,"f")}}.value,exitError:{set value(W){H(C,wD,W,"f")}}.value,hasOutput:{set value(W){H(f,OD,W,"f")}}.value,parsed:this.parsed,strict:{set value(W){H($,kD,W,"f")}}.value,strictCommands:{set value(W){H(G,gD,W,"f")}}.value,strictOptions:{set value(W){H(J,lD,W,"f")}}.value,completionCommand:{set value(W){H(Y,QD,W,"f")}}.value,parseFn:{set value(W){H(U,TD,W,"f")}}.value,parseContext:{set value(W){H(Q,dD,W,"f")}}.value}=X,B(this,K,"f").configObjects=O,B(this,b,"f").unfreeze(),B(this,r,"f").unfreeze(),B(this,uD,"f").unfreeze(),B(this,UD,"f").unfreeze()}[_0](D,u){return pD(u,(F)=>{return D(F),F})}getInternalMethods(){return{getCommandInstance:this[K0].bind(this),getContext:this[L0].bind(this),getHasOutput:this[A0].bind(this),getLoggerInstance:this[S0].bind(this),getParseContext:this[x0].bind(this),getParserConfiguration:this[yD].bind(this),getUsageConfiguration:this[H0].bind(this),getUsageInstance:this[P0].bind(this),getValidationInstance:this[w0].bind(this),hasParseCallback:this[Vu].bind(this),isGlobalContext:this[b0].bind(this),postProcess:this[sD].bind(this),reset:this[BF].bind(this),runValidation:this[fF].bind(this),runYargsParserAndExecuteCommands:this[Gu].bind(this),setHasOutput:this[n0].bind(this)}}[K0](){return B(this,uD,"f")}[L0](){return B(this,zu,"f")}[A0](){return B(this,OD,"f")}[S0](){return B(this,iD,"f")}[x0](){return B(this,dD,"f")||{}}[P0](){return B(this,b,"f")}[w0](){return B(this,r,"f")}[Vu](){return!!B(this,TD,"f")}[b0](){return B(this,Ru,"f")}[sD](D,u,F,E){if(F)return D;if(l(D))return D;if(!u)D=this[U0](D);if(this[yD]()["parse-positional-numbers"]||this[yD]()["parse-positional-numbers"]===void 0)D=this[V0](D);if(E)D=cD(D,this,B(this,UD,"f").getMiddleware(),!1);return D}[BF](D={}){H(this,K,B(this,K,"f")||{},"f");let u={};u.local=B(this,K,"f").local||[],u.configObjects=B(this,K,"f").configObjects||[];let F={};u.local.forEach((f)=>{F[f]=!0,(D[f]||[]).forEach(($)=>{F[$]=!0})}),Object.assign(B(this,oD,"f"),Object.keys(B(this,VD,"f")).reduce((f,$)=>{let G=B(this,VD,"f")[$].filter((J)=>!(J in F));if(G.length>0)f[$]=G;return f},{})),H(this,VD,{},"f");let E=["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"],C=["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"];if(E.forEach((f)=>{u[f]=(B(this,K,"f")[f]||[]).filter(($)=>!F[$])}),C.forEach((f)=>{u[f]=xD(B(this,K,"f")[f],($)=>!F[$])}),u.envPrefix=B(this,K,"f").envPrefix,H(this,K,u,"f"),H(this,b,B(this,b,"f")?B(this,b,"f").reset(F):M0(this,B(this,P,"f")),"f"),H(this,r,B(this,r,"f")?B(this,r,"f").reset(F):Y0(this,B(this,b,"f"),B(this,P,"f")),"f"),H(this,uD,B(this,uD,"f")?B(this,uD,"f").reset():h0(B(this,b,"f"),B(this,r,"f"),B(this,UD,"f"),B(this,P,"f")),"f"),!B(this,ZD,"f"))H(this,ZD,Q0(this,B(this,b,"f"),B(this,uD,"f"),B(this,P,"f")),"f");return B(this,UD,"f").reset(),H(this,QD,null,"f"),H(this,hD,"","f"),H(this,wD,null,"f"),H(this,OD,!1,"f"),this.parsed=!1,this}[t0](D,u){return B(this,P,"f").path.relative(D,u)}[Gu](D,u,F,E=0,C=!1){var f,$,G,J;let Y=!!F||C;D=D||B(this,bD,"f"),B(this,K,"f").__=B(this,P,"f").y18n.__,B(this,K,"f").configuration=this[yD]();let U=!!B(this,K,"f").configuration["populate--"],Q=Object.assign({},B(this,K,"f").configuration,{"populate--":!0}),X=B(this,P,"f").Parser.detailed(D,Object.assign({},B(this,K,"f"),{configuration:{"parse-positional-numbers":!1,...Q}})),O=Object.assign(X.argv,B(this,dD,"f")),W=void 0,Z=X.aliases,A=!1,v=!1;if(Object.keys(O).forEach((n)=>{if(n===B(this,ND,"f")&&O[n])A=!0;else if(n===B(this,_D,"f")&&O[n])v=!0}),O.$0=this.$0,this.parsed=X,E===0)B(this,b,"f").clearCachedHelpMessage();try{if(this[au](),u)return this[sD](O,U,!!F,!1);if(B(this,ND,"f")){if([B(this,ND,"f")].concat(Z[B(this,ND,"f")]||[]).filter((ED)=>ED.length>1).includes(""+O._[O._.length-1]))O._.pop(),A=!0}H(this,Ru,!1,"f");let n=B(this,uD,"f").getCommands(),GD=((f=B(this,ZD,"f"))===null||f===void 0?void 0:f.completionKey)?[($=B(this,ZD,"f"))===null||$===void 0?void 0:$.completionKey,...(J=this.getAliases()[(G=B(this,ZD,"f"))===null||G===void 0?void 0:G.completionKey])!==null&&J!==void 0?J:[]].some((g)=>Object.prototype.hasOwnProperty.call(O,g)):!1,t=A||GD||C;if(O._.length){if(n.length){let g;for(let ED=E||0,a;O._[ED]!==void 0;ED++)if(a=String(O._[ED]),n.includes(a)&&a!==B(this,QD,"f")){let ID=B(this,uD,"f").runCommand(a,this,X,ED+1,C,A||v||C);return this[sD](ID,U,!!F,!1)}else if(!g&&a!==B(this,QD,"f")){g=a;break}if(!B(this,uD,"f").hasDefaultCommand()&&B(this,Hu,"f")&&g&&!t)B(this,r,"f").recommendCommands(g,n)}if(B(this,QD,"f")&&O._.includes(B(this,QD,"f"))&&!GD){if(B(this,WD,"f"))PD(!0);this.showCompletionScript(),this.exit(0)}}if(B(this,uD,"f").hasDefaultCommand()&&!t){let g=B(this,uD,"f").runCommand(null,this,X,0,C,A||v||C);return this[sD](g,U,!!F,!1)}if(GD){if(B(this,WD,"f"))PD(!0);D=[].concat(D);let g=D.slice(D.indexOf(`--${B(this,ZD,"f").completionKey}`)+1);return B(this,ZD,"f").getCompletion(g,(ED,a)=>{if(ED)throw new DD(ED.message);(a||[]).forEach((ID)=>{B(this,iD,"f").log(ID)}),this.exit(0)}),this[sD](O,!U,!!F,!1)}if(!B(this,OD,"f")){if(A){if(B(this,WD,"f"))PD(!0);Y=!0,this.showHelp((g)=>{B(this,iD,"f").log(g),this.exit(0)})}else if(v){if(B(this,WD,"f"))PD(!0);Y=!0,B(this,b,"f").showVersion("log"),this.exit(0)}}if(!Y&&B(this,K,"f").skipValidation.length>0)Y=Object.keys(O).some((g)=>B(this,K,"f").skipValidation.indexOf(g)>=0&&O[g]===!0);if(!Y){if(X.error)throw new DD(X.error.message);if(!GD){let g=this[fF](Z,{},X.error);if(!F)W=cD(O,this,B(this,UD,"f").getMiddleware(),!0);if(W=this[_0](g,W!==null&&W!==void 0?W:O),l(W)&&!F)W=W.then(()=>{return cD(O,this,B(this,UD,"f").getMiddleware(),!1)})}}}catch(n){if(n instanceof DD)B(this,b,"f").fail(n.message,n);else throw n}return this[sD](W!==null&&W!==void 0?W:O,U,!!F,!0)}[fF](D,u,F,E){let C={...this.getDemandedOptions()};return(f)=>{if(F)throw new DD(F.message);B(this,r,"f").nonOptionCount(f),B(this,r,"f").requiredArguments(f,C);let $=!1;if(B(this,gD,"f"))$=B(this,r,"f").unknownCommands(f);if(B(this,kD,"f")&&!$)B(this,r,"f").unknownArguments(f,D,u,!!E);else if(B(this,lD,"f"))B(this,r,"f").unknownArguments(f,D,{},!1,!1);B(this,r,"f").limitedChoices(f),B(this,r,"f").implications(f),B(this,r,"f").conflicting(f)}}[n0](){H(this,OD,!0,"f")}[rD](D){if(typeof D==="string")B(this,K,"f").key[D]=!0;else for(let u of D)B(this,K,"f").key[u]=!0}}function z0(D){return!!D&&typeof D.getInternalMethods==="function"}var Z8=c0(ku),v0=Z8;import{EOL as HD}from"os";import e0 from"path";import J8 from"fs";var m0=g0("main");l0("main");var RD=du(process.argv),D2=new Set(["--version","-v"]);if(RD.length===1&&D2.has(RD[0]))process.stdout.write(Lu+HD),process.exit();if(RD.length===2&&RD.some((D)=>D2.has(D))&&RD.includes("--verbose")){let D=process.argv[1],u=(()=>{if(!D||D.startsWith("-"))return;if(D.startsWith("/$bunfs/")||/^B:[\\/]~BUN[\\/]/.test(D))return;let E=e0.resolve(D);if(E===process.execPath)return;try{if(!J8.statSync(E).isFile())return}catch{return}return E})(),F=[`version: ${Lu}`,`channel: ${d0}`,`commit: ${o0}`,`binary: ${process.execPath}`,...u?[`bundle: ${u}`]:[]];process.stdout.write(F.join(HD)+HD),process.exit()}var _u={acp:()=>import("./chunk-mrt1z4m8.js").then((D)=>D.AcpCommand),mcp:()=>import("./chunk-3bssxmtg.js").then((D)=>D.McpCommand),attach:()=>import("./chunk-ftn49yn1.js").then((D)=>D.AttachCommand),run:()=>import("./chunk-a3aqmm3x.js").then((D)=>D.RunCommand),generate:()=>import("./chunk-6r7z94e6.js").then((D)=>D.GenerateCommand),debug:()=>import("./chunk-vykgpaqt.js").then((D)=>D.DebugCommand),console:()=>import("./chunk-2et3wkjy.js").then((D)=>D.ConsoleCommand),providers:()=>import("./chunk-n6wt9m2k.js").then((D)=>D.ProvidersCommand),agent:()=>import("./chunk-r1zf109g.js").then((D)=>D.AgentCommand),upgrade:()=>import("./chunk-aecc391x.js").then((D)=>D.UpgradeCommand),uninstall:()=>import("./chunk-4fgzp2zd.js").then((D)=>D.UninstallCommand),serve:()=>import("./chunk-x5trw1f5.js").then((D)=>D.ServeCommand),models:()=>import("./chunk-hkqnqw3x.js").then((D)=>D.ModelsCommand),stats:()=>import("./chunk-ftas05da.js").then((D)=>D.StatsCommand),usage:()=>import("./chunk-a1kazz9r.js").then((D)=>D.UsageCommand),export:()=>import("./chunk-gxq9vh1z.js").then((D)=>D.ExportCommand),import:()=>import("./chunk-v7w4nfn7.js").then((D)=>D.ImportCommand),github:()=>import("./chunk-ftnadrks.js").then((D)=>D.GithubCommand),pr:()=>import("./chunk-2bn2b29j.js").then((D)=>D.PrCommand),session:()=>import("./chunk-48nm6v8b.js").then((D)=>D.SessionCommand),plugin:()=>import("./chunk-g453xy7p.js").then((D)=>D.PluginCommand),plug:()=>import("./chunk-g453xy7p.js").then((D)=>D.PluginCommand),auth:()=>import("./chunk-d2ttw3wf.js").then((D)=>D.AuthCommand),qredits:()=>import("./chunk-zzv0yayn.js").then((D)=>D.QreditsCommand),batch:()=>import("./chunk-rvfvk2ty.js").then((D)=>D.BatchCommand),db:()=>import("./chunk-9k6hz80e.js").then((D)=>D.DbCommand),default:()=>import("./chunk-5gmjtmc4.js").then((D)=>D.TuiThreadCommand)};function y(D,u,F){return{command:D,describe:u,aliases:F,handler:async()=>{}}}function $F(){return[y("acp","start ACP (Agent Client Protocol) server"),y("mcp","manage MCP (Model Context Protocol) servers"),{command:"$0 [project]",describe:"start qitqode tui",builder:(D)=>D.positional("project",{type:"string",describe:"path to start qitqode in"}).options(s0).options(r0).option("never-ask",{type:"boolean",describe:"start in never-ask mode, auto-decide without asking (permissions excluded)",default:!1}).option("trust",{type:"boolean",describe:"skip workspace trust prompt and trust the directory",default:!1}),handler:async()=>{}},y("attach <url>","attach to a running qitqode server"),y("run [message..]","run qitqode with a message"),y("generate","generate files"),y("debug","debugging and troubleshooting tools"),y("console","manage qitqode accounts"),y("providers","manage AI providers and credentials",["auth"]),y("agent","manage agents"),y("upgrade [target]","upgrade qitqode to the latest or a specific version"),y("uninstall","uninstall qitqode and remove all related files"),y("serve","starts a headless qitqode server"),y("models [provider]","list all available models"),y("stats","show token usage and cost statistics"),y("usage [sessionID]","show per-turn token usage and cost"),y("export [sessionID]","export session data as JSON"),y("import <file>","import session data from JSON file or URL"),y("github","manage GitHub agent"),y("pr <number>","fetch and checkout a GitHub PR branch, then run qitqode"),y("session","manage sessions"),y("plugin <module>","install plugin and update config",["plug"]),y("auth <command>","Sign in or out of Forgewise"),y("qredits <command>","Check Qredits balance and spend history"),y("batch <command>","Submit and poll async batch LLM jobs"),y("db","database tools")]}function zF(D){let u=new Set(["--log-level","--model","-m","--session","-s","--prompt","--agent","--port","--hostname","--mdns-domain","--cors"]);for(let F=0;F<D.length;F++){let E=D[F];if(E==="--")return;if(E.startsWith("-")){if(u.has(E))F++;continue}return E}}function Q8(D){return D.length>0&&D.every((u)=>u==="--help"||u==="-h")}function O8(D){return D.includes("--help")||D.includes("-h")}async function T8(D){let u=zF(D);if(D.includes("--get-yargs-completions")||u==="completion")return $F();if(Q8(D))return $F();else if(u&&u in _u)return[await _u[u]()];else if(O8(D))return $F();else return[await _u.default()]}function u2(D){let u=D.trimStart();if(!u.startsWith("qitqode ")){process.stderr.write(Ku.logo()+HD+HD),process.stderr.write(u);return}process.stderr.write(D)}var Mu=y0(v0(RD)).middleware(async(D)=>{if(D.pure)process.env.QITQODE_PURE="1";let u=await import("./chunk-0e1vkdze.js"),{Filesystem:F}=await import("./chunk-4m5yesw8.js"),{Heap:E}=await import("./chunk-tt9smgmg.js"),{Global:C}=await import("./chunk-1ap7sh2c.js");await u.init({print:process.argv.includes("--print-logs"),dev:hF,level:(()=>{if(D.logLevel)return D.logLevel;if(hF)return"DEBUG";return"INFO"})()}),E.start(),(await import("./chunk-5v6b8mr6.js")).startRefresh(),process.env.AGENT="1",process.env.QITQODE="1",process.env.QITQODE_PID=String(process.pid),u.Default.info("qitqode",{version:Lu,command:zF(RD)??"tui",process_role:m0.processRole,run_id:m0.runID});let $=e0.join(C.Path.data,"qitqode.db");if(!await F.exists($)){let{JsonMigration:G,Database:J}=await import("./chunk-v7ezt8k3.js"),{drizzle:Y}=await import("./chunk-7mke41x0.js"),U=process.stderr.isTTY;process.stderr.write("Performing one time database migration, may take a few minutes..."+HD);let Q=-1;if(U)process.stderr.write("\x1B[?25l");try{await G.run(Y({client:J.Client().$client}),{progress:(X)=>{let O=Math.floor(X.current/X.total*100);if(O===Q&&X.current!==X.total)return;if(Q=O,U){if(process.stderr.write(a0(O,`${X.label.padEnd(12)} ${X.current}/${X.total}`)),X.current===X.total)process.stderr.write(`
81
+ `)}else process.stderr.write(`sqlite-migration:${O}${HD}`)}})}finally{if(U)process.stderr.write("\x1B[?25h");else process.stderr.write(`sqlite-migration:done${HD}`)}process.stderr.write("Database migration complete."+HD)}if(!process.env.QITQODE_DISABLE_CLAUDE_IMPORT&&!process.env.QITQODE_CLAUDE_IMPORTED){process.env.QITQODE_CLAUDE_IMPORTED="1";let G=async()=>{try{let{ClaudeImport:U}=await import("./chunk-3dadmgxa.js");await U.run()}catch(U){u.Default.warn("claude-import failed",{e:GF(U)})}},J=zF(RD);if(!J||!(J in _u))G();else await G()}}).usage("").completion("completion","generate shell completion script");for(let D of await T8(RD))Mu.command(D);Mu.fail((D,u)=>{if(D?.startsWith("Unknown argument")||D?.startsWith("Not enough non-option arguments")||D?.startsWith("Invalid values:")){if(u)throw u;Mu.showHelp(u2)}if(u)throw u;process.exit(1)}).strict();try{if(RD.includes("-h")||RD.includes("--help"))await Mu.parse(RD,(D,u,F)=>{if(D)throw D;if(!F)return;u2(F)});else await Mu.parse()}catch(D){let u={};if(D instanceof i0){let C=D.toObject();Object.assign(u,{...C.data})}if(D instanceof Error)Object.assign(u,{name:D.name,message:D.message,cause:D.cause?.toString(),stack:D.stack});if(D instanceof ResolveMessage)Object.assign(u,{name:D.name,message:D.message,code:D.code,specifier:D.specifier,referrer:D.referrer,position:D.position,importKind:D.importKind});let F=await import("./chunk-0e1vkdze.js");F.Default.error("fatal",u);let E=k0(D);if(E)Ku.error(E);if(E===void 0)Ku.error("Unexpected error, check log file at "+F.file()+" for more details"+HD),process.stderr.write(GF(D)+HD);process.exitCode=1}finally{process.exit()}
package/bundle/worker.js CHANGED
@@ -1,2 +1,2 @@
1
1
  // @bun
2
- import{Xf as H}from"./chunk-y6123zvq.js";import{ag as x}from"./chunk-k7aenxan.js";import"./chunk-8r6ht39z.js";import"./chunk-mqd1jsg2.js";import"./chunk-gz8sz7z1.js";import"./chunk-cjww2jmv.js";import"./chunk-nfg7nt13.js";import"./chunk-xvwvd4kq.js";import"./chunk-d3ermm6d.js";import{Wg as V,gh as O}from"./chunk-caj1b9y7.js";import"./chunk-ygs5pzk7.js";import"./chunk-vxyy2dp3.js";import"./chunk-yp5bypsp.js";import"./chunk-7hm0c2yg.js";import"./chunk-gj0wt0cy.js";import"./chunk-5hw6xa49.js";import"./chunk-326p5b10.js";import{Dl as Z,Wj as Y}from"./chunk-257me4z3.js";import{Fl as N}from"./chunk-nkkch4h7.js";import{Ql as C,lm as q}from"./chunk-s3mnrhbx.js";import"./chunk-ezfy0b6q.js";import"./chunk-bn0h9dny.js";import"./chunk-hnvn2c25.js";import"./chunk-3nx7112w.js";import"./chunk-htz93dsd.js";import"./chunk-vcw00k0n.js";import"./chunk-we9cv8we.js";import"./chunk-2hc5z7b5.js";import"./chunk-9gazyynx.js";import"./chunk-4jtxtkj7.js";import"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import"./chunk-g5rabwre.js";import"./chunk-jbx3s7nw.js";import"./chunk-15hw2z9t.js";import"./chunk-48ge2ryx.js";import"./chunk-n9xns8by.js";import"./chunk-y9q0hb7b.js";import"./chunk-d9hbhkbq.js";import"./chunk-ad72gb5f.js";import"./chunk-d6ry9418.js";import"./chunk-0dt0bxz6.js";import"./chunk-10bjs581.js";import{Rr as k}from"./chunk-56z7x7h4.js";import"./chunk-4cnwn1rh.js";import"./chunk-764fksh3.js";import{Ks as z,Rs as T,Vr as X,Yr as G,_s as W,ys as j}from"./chunk-xj765svc.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import"./chunk-dxpj0cxh.js";import"./chunk-zw815d68.js";import"./chunk-7xm75w1e.js";var $=W.create({service:"upgrade"});function L(D,E){if(D===!1)return"disabled";if(D===!0&&E==="patch")return"install";return"notify"}async function M(){if(G)return;let D=await O.runPromise(Z.Service.use((J)=>J.getGlobal())),E=await O.runPromise(N.Service.use((J)=>J.method())),K=await O.runPromise(N.Service.use((J)=>J.latest(E))).catch((J)=>{$.warn("failed to check for updates",{method:E,error:String(J)})});if(!K)return;if(!N.isNewerVersion(X,K)){$.warn("ignoring non-newer update version",{current:X,latest:K});return}if(T.QITQODE_ALWAYS_NOTIFY_UPDATE){await Y.publish(N.Event.UpdateAvailable,{version:K});return}if(T.QITQODE_DISABLE_AUTOUPDATE)return;let _=N.getReleaseType(X,K),Q=L(D.autoupdate,_);if(Q==="disabled")return;if(Q==="notify"){await Y.publish(N.Event.UpdateAvailable,{version:K});return}if(E==="unknown")return;await O.runPromise(N.Service.use((J)=>J.upgrade(E,K))).then(()=>Y.publish(N.Event.Updated,{version:K})).catch((J)=>{$.warn("auto-upgrade failed",{method:E,target:K,error:String(J)})})}import{writeHeapSnapshot as P}from"v8";j("worker");await W.init({print:process.argv.includes("--print-logs"),dev:N.isLocal(),level:(()=>{if(N.isLocal())return"DEBUG";return"INFO"})()});H.start();k("worker");C.on("event",(D)=>{z.emit("global.event",D)});var U,S={async fetch(D){let E={...D.headers},K=w();if(K&&!E.authorization&&!E.Authorization)E.Authorization=K;let _=new Request(D.url,{method:D.method,headers:E,body:D.body}),Q=await x.Default().app.fetch(_),J=await Q.text();return{status:Q.status,headers:Object.fromEntries(Q.headers.entries()),body:J}},snapshot(){return P("server.heapsnapshot")},async server(D){if(U)await U.stop(!0);return U=await x.listen(D),{url:U.url.toString()}},async checkUpgrade(D){await q.provide({directory:D.directory,init:()=>O.runPromise(V),fn:async()=>{await M().catch(()=>{})}})},async reload(){await O.runPromise(Z.Service.use((D)=>D.invalidate(!0)))},async shutdown(){if(W.Default.info("worker shutting down"),await q.disposeAll(),U)await U.stop(!0)}};z.listen(S);function w(){let D=T.QITQODE_SERVER_PASSWORD;if(!D)return;let E=T.QITQODE_SERVER_USERNAME??"qitqode";return`Basic ${btoa(`${E}:${D}`)}`}export{S as rpc};
2
+ import{Xf as H}from"./chunk-bnap670d.js";import{ag as x}from"./chunk-s08qccxa.js";import"./chunk-xn70ep9n.js";import"./chunk-q6pn67ps.js";import"./chunk-pfyhg0m7.js";import"./chunk-cjww2jmv.js";import"./chunk-nfg7nt13.js";import"./chunk-xvwvd4kq.js";import"./chunk-ff8nb7b3.js";import{Wg as V,gh as O}from"./chunk-tc18nbmn.js";import"./chunk-481k3dag.js";import"./chunk-vxyy2dp3.js";import"./chunk-yp5bypsp.js";import"./chunk-7hm0c2yg.js";import"./chunk-gj0wt0cy.js";import"./chunk-5hw6xa49.js";import"./chunk-326p5b10.js";import{Dl as Z,Wj as Y}from"./chunk-wefez1gt.js";import{Fl as N}from"./chunk-ccmbckek.js";import{Ql as C,lm as q}from"./chunk-711dc303.js";import"./chunk-qn6gdhns.js";import"./chunk-bn0h9dny.js";import"./chunk-mpkvpn2y.js";import"./chunk-9bzhxenb.js";import"./chunk-htz93dsd.js";import"./chunk-vcw00k0n.js";import"./chunk-famryv52.js";import"./chunk-2hc5z7b5.js";import"./chunk-e1w70zdn.js";import"./chunk-4jtxtkj7.js";import"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import"./chunk-g5rabwre.js";import"./chunk-jbx3s7nw.js";import"./chunk-15hw2z9t.js";import"./chunk-48ge2ryx.js";import"./chunk-n9xns8by.js";import"./chunk-y9q0hb7b.js";import"./chunk-rryytkmg.js";import"./chunk-te47zdxd.js";import"./chunk-d6ry9418.js";import"./chunk-0dt0bxz6.js";import"./chunk-10bjs581.js";import{Rr as k}from"./chunk-np50azpb.js";import"./chunk-4cnwn1rh.js";import"./chunk-0t4324w5.js";import{Ks as z,Rs as T,Vr as X,Yr as G,_s as W,ys as j}from"./chunk-hdrbyarv.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import"./chunk-dxpj0cxh.js";import"./chunk-zw815d68.js";import"./chunk-7xm75w1e.js";var $=W.create({service:"upgrade"});function L(D,E){if(D===!1)return"disabled";if(D===!0&&E==="patch")return"install";return"notify"}async function M(){if(G)return;let D=await O.runPromise(Z.Service.use((J)=>J.getGlobal())),E=await O.runPromise(N.Service.use((J)=>J.method())),K=await O.runPromise(N.Service.use((J)=>J.latest(E))).catch((J)=>{$.warn("failed to check for updates",{method:E,error:String(J)})});if(!K)return;if(!N.isNewerVersion(X,K)){$.warn("ignoring non-newer update version",{current:X,latest:K});return}if(T.QITQODE_ALWAYS_NOTIFY_UPDATE){await Y.publish(N.Event.UpdateAvailable,{version:K});return}if(T.QITQODE_DISABLE_AUTOUPDATE)return;let _=N.getReleaseType(X,K),Q=L(D.autoupdate,_);if(Q==="disabled")return;if(Q==="notify"){await Y.publish(N.Event.UpdateAvailable,{version:K});return}if(E==="unknown")return;await O.runPromise(N.Service.use((J)=>J.upgrade(E,K))).then(()=>Y.publish(N.Event.Updated,{version:K})).catch((J)=>{$.warn("auto-upgrade failed",{method:E,target:K,error:String(J)})})}import{writeHeapSnapshot as P}from"v8";j("worker");await W.init({print:process.argv.includes("--print-logs"),dev:N.isLocal(),level:(()=>{if(N.isLocal())return"DEBUG";return"INFO"})()});H.start();k("worker");C.on("event",(D)=>{z.emit("global.event",D)});var U,S={async fetch(D){let E={...D.headers},K=w();if(K&&!E.authorization&&!E.Authorization)E.Authorization=K;let _=new Request(D.url,{method:D.method,headers:E,body:D.body}),Q=await x.Default().app.fetch(_),J=await Q.text();return{status:Q.status,headers:Object.fromEntries(Q.headers.entries()),body:J}},snapshot(){return P("server.heapsnapshot")},async server(D){if(U)await U.stop(!0);return U=await x.listen(D),{url:U.url.toString()}},async checkUpgrade(D){await q.provide({directory:D.directory,init:()=>O.runPromise(V),fn:async()=>{await M().catch(()=>{})}})},async reload(){await O.runPromise(Z.Service.use((D)=>D.invalidate(!0)))},async shutdown(){if(W.Default.info("worker shutting down"),await q.disposeAll(),U)await U.stop(!0)}};z.listen(S);function w(){let D=T.QITQODE_SERVER_PASSWORD;if(!D)return;let E=T.QITQODE_SERVER_USERNAME??"qitqode";return`Basic ${btoa(`${E}:${D}`)}`}export{S as rpc};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qitqode/qitqode-android-arm64",
3
- "version": "0.1.32",
3
+ "version": "0.1.33",
4
4
  "description": "Android arm64 runtime for @qitqode/cli.",
5
5
  "license": "MIT",
6
6
  "author": "QitQode",
@@ -1,28 +0,0 @@
1
- // @bun
2
- import{of as c}from"./chunk-hnzegjgv.js";import{Po as m}from"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import{Ur as Q}from"./chunk-764fksh3.js";import{Zs as p}from"./chunk-xj765svc.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import"./chunk-7xm75w1e.js";var y=p({service:"provider.qlex"}),n=Q.streamUrl(),s=Q.omniqueryBaseUrl()+"/runOrchestrated";class d extends Error{name="QlexNotLoggedInError";constructor(){super(Q.copy().notLoggedIn)}}class A extends Error{name="QlexInsufficientBalanceError";constructor(D){super(Q.copy().insufficientBalance(D))}}class v extends Error{name="QlexRateLimitError";constructor(){super(Q.copy().rateLimit)}}class I extends Error{name="QlexInvalidCredentialsError";constructor(D){super(Q.copy().invalidCredentials(D))}}class R extends Error{name="QlexGatewayError";constructor(D){super(Q.copy().gatewayUnavailable(D))}}var a=60000;function PD(D){return Q.sanitizeUpstreamError(D)}class w extends Error{name="QlexStreamError";constructor(D){super(Q.copy().streamFailed(D))}}function f(D){return m(D)}var r=new Set(["coding","agent","research","review","chat"]);function t(D){if(D===void 0)return;if(typeof D==="string"&&r.has(D))return D;throw Error(`invalid Qortex posture: ${String(D)}`)}function o(D){if(D===void 0)return;let J=Array.isArray(D)?D:[D];if(J.every((H)=>typeof H==="string"&&/^[^/\s]+\/[^/\s]+$/.test(H)))return Array.isArray(D)?J:D;throw Error(`invalid Qortex directive registry key: ${String(D)}`)}function x(D){if(typeof D==="string")return D;if(Array.isArray(D))return D.map((J)=>{if(typeof J==="string")return J;if(J&&typeof J==="object"){let H=J;if(typeof H.text==="string")return H.text;if(typeof H.content==="string")return H.content}return""}).join("");if(D===void 0||D===null)return"";return String(D)}var e="[Tool call]",DD="[Tool returned no output]";function HD(D){if(!Array.isArray(D))return D;return D.flatMap((J)=>{if(!J||typeof J!=="object")return[];let H=J,V=x(H.content);if(V.trim().length>0)return[{...H,content:V}];if(H.role==="assistant"&&Array.isArray(H.tool_calls)&&H.tool_calls.length>0)return[{...H,content:e}];if(H.role==="tool"&&typeof H.tool_call_id==="string"&&H.tool_call_id.trim().length>0)return[{...H,content:DD}];return[]})}function JD(D){if(!Array.isArray(D))return D;let J=(Z)=>!!Z&&typeof Z==="object"&&Z.role==="system",H=0;while(H<D.length&&J(D[H]))H++;if(H<=1)return D;let V=D.slice(0,H),K=V.map((Z)=>typeof Z.content==="string"?Z.content:String(Z.content??"")).filter((Z)=>Z.length>0).join(`
3
-
4
- `);return[{...V[0],role:"system",content:K},...D.slice(H)]}var E="<tool_call>",T="</tool_call>";function KD(D){if(!Array.isArray(D)||D.length===0)return;let J=D.map((H)=>{try{return JSON.stringify(H)}catch{return}}).filter((H)=>H!==void 0);if(J.length===0)return;return["# Tools","","You may call one or more functions to assist with the user query.","","You are provided with function signatures within <tools></tools> XML tags:","<tools>",...J,"</tools>","","For each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:","<tool_call>",'{"name": <function-name>, "arguments": <args-json-object>}',"</tool_call>","","Function results will be provided within <tool_response></tool_response> XML tags. Do not write <tool_response> blocks yourself.","Only use the functions declared above. Never invent function names, and never write out a function-call-like block in any other format."].join(`
5
- `)}function VD(D){let J=D.function??{},H=typeof J.name==="string"?J.name:"",V={};if(typeof J.arguments==="string")try{V=JSON.parse(J.arguments)}catch{V=J.arguments}else if(J.arguments!==void 0)V=J.arguments;return`${E}
6
- ${JSON.stringify({name:H,arguments:V})}
7
- ${T}`}function XD(D,J){if(!Array.isArray(D))return D;let H=D.map((K)=>{if(!K||typeof K!=="object")return K;let Z=K;if(Z.role==="assistant"&&Array.isArray(Z.tool_calls)){let X=Z.tool_calls.map(VD).join(`
8
- `),$=x(Z.content),{tool_calls:W,..._}=Z;return{..._,content:$.length>0?`${$}
9
- ${X}`:X}}if(Z.role==="tool"){let{tool_call_id:X,name:$,...W}=Z;return{...W,role:"user",content:`<tool_response>
10
- ${x(Z.content)}
11
- </tool_response>`}}return K}),V=KD(J);if(V){let K=0;while(K<H.length&&!!H[K]&&typeof H[K]==="object"&&H[K].role==="system")K++;H.splice(K,0,{role:"system",content:V})}return H}function ZD(){return process.env.QITQODE_TOOL_PROTOCOL==="text"?"text":"native"}function $D(D){if(Array.isArray(D.tools)&&D.tools.length>0)return!0;let J=D.messages;if(!Array.isArray(J))return!1;return J.some((H)=>{if(!H||typeof H!=="object")return!1;let V=H;return V.role==="tool"||V.role==="assistant"&&Array.isArray(V.tool_calls)})}function g(D,J){let H=J?.toolMode??"native",V=D.model??"default",K={stream:D.stream??!0};if(D.temperature!==void 0)K.temperature=D.temperature;if(D.max_tokens!==void 0)K.max_tokens=D.max_tokens;let Z=J?.outputAdvisory;if(Z){let z=Z.tierOutputLimit;if(K.max_tokens!==void 0){if(z!==void 0&&K.max_tokens>z)K.max_tokens=z}else{let M=Z.tierRecommendedStepTokens??z;if(M!==void 0)K.max_tokens=M}}if(D.tools!==void 0)K.tools=D.tools;if(D.tool_choice!==void 0)K.tool_choice=D.tool_choice;if(D.stream_options!==void 0)K.stream_options=D.stream_options;let X=H==="text"?XD(D.messages,D.tools):D.messages,$={},W=t(D.posture);if(W!==void 0)$.posture=W;let _=o(D.directive);if(_!==void 0)$.directive=_;if(D.modelPersona!==void 0)$.modelPersona=D.modelPersona;return{tier:V,messages:JD(HD(X)),opts:K,...$}}var h=new Map;function u(D){return typeof D==="number"&&Number.isFinite(D)&&D>0?D:void 0}function zD(D,J){let H={},V=u(J.tierOutputLimit),K=u(J.tierRecommendedStepTokens);if(V!==void 0)H.tierOutputLimit=V;if(K!==void 0)H.tierRecommendedStepTokens=K;if(H.tierOutputLimit===void 0&&H.tierRecommendedStepTokens===void 0)return;h.set(D,H)}function jD(D){return h.get(D)}function LD(){h.clear()}function YD(D){let J=(H)=>typeof H==="string"&&(H.startsWith("qlex")||H.startsWith("qortex"));return J(D.id)||J(D.object)}function WD(D){let J=[],H=D.indexOf(`
12
- `)===-1?[D]:D.split(`
13
- `);for(let X of H){let $=X.endsWith("\r")?X.slice(0,-1):X;if(!$.startsWith("data:"))continue;let W=$.slice(5);if(W.startsWith(" "))W=W.slice(1);J.push(W)}if(J.length===0)return{kind:"skip"};let V=J.length===1?J[0]:J.join(`
14
- `);if(V==="")return{kind:"skip"};if(V==="[DONE]")return{kind:"done"};if(V.startsWith("[ERROR]"))return{kind:"error",message:V.slice(7).trim()||"qlex stream error"};let K=V.charCodeAt(0),Z=K===123||K===91||K===32||K===9||K===10||K===13;try{if(!Z)return{kind:"token",content:V};let X=JSON.parse(V);if(X&&typeof X==="object"){let $=X.id;if($==="qlex-cost"||$==="qortex-cost")return{kind:"cost",cost:X};if($==="qlex-stream"&&X.usage&&typeof X.usage==="object"){let z=X.choices,M;if(Array.isArray(z)&&z[0]&&typeof z[0]==="object"){let P=z[0].finish_reason;if(typeof P==="string")M=P}return{kind:"usage",usage:X.usage,finishReason:M}}if(Array.isArray(X.choices))return{kind:"passthrough",chunk:X};let W=X,_=typeof W.content==="string"?W.content:typeof W.text==="string"?W.text:typeof W.delta==="string"?W.delta:void 0;if(_!==void 0)return{kind:"token",content:_};if(YD(X)){let z=X.object;return{kind:"control",control:typeof z==="string"&&z.endsWith(".tier.outputLimits")?"tier-output-limits":"unknown",chunk:X}}}}catch{}return{kind:"token",content:V}}function UD(D,J){let H=Math.min(D.length,J.length-1);for(let V=H;V>=1;V--)if(J.startsWith(D.slice(D.length-V)))return V;return 0}class i{onText;onToolCall;pending="";inBlock=!1;constructor(D,J){this.onText=D;this.onToolCall=J}feed(D){this.pending+=D,this.drain(!1)}flush(){if(this.drain(!0),this.inBlock)this.emitBlock(this.pending,!0),this.inBlock=!1;else if(this.pending.length>0)this.onText(this.pending);this.pending=""}drain(D){while(!0)if(!this.inBlock){let J=this.pending.indexOf(E);if(J===-1){let H=D?0:UD(this.pending,E),V=this.pending.length-H;if(V>0)this.onText(this.pending.slice(0,V)),this.pending=H>0?this.pending.slice(V):"";return}if(J>0)this.onText(this.pending.slice(0,J));this.pending=this.pending.slice(J+E.length),this.inBlock=!0}else{let J=this.pending.indexOf(T);if(J===-1)return;if(this.emitBlock(this.pending.slice(0,J),!1),this.pending=this.pending.slice(J+T.length),this.pending.startsWith(`\r
15
- `))this.pending=this.pending.slice(2);else if(this.pending.startsWith(`
16
- `))this.pending=this.pending.slice(1);this.inBlock=!1}}emitBlock(D,J){try{let H=JSON.parse(D.trim());if(H&&typeof H==="object"&&typeof H.name==="string"){let V=H.arguments;this.onToolCall({name:H.name,arguments:typeof V==="string"?V:JSON.stringify(V??{})});return}}catch{}this.onText(`${E}${D}${J?"":T}`)}}function B(D,J,H){let V={id:"qlex-stream",object:"chat.completion.chunk",created:Math.floor(Date.now()/1000),model:"qlex",choices:[{index:0,delta:D,finish_reason:J}]};if(H)V.usage=H;return`data: ${JSON.stringify(V)}
17
-
18
- `}function ND(D,J){let H=J?.toolProtocolEnabled===!0,V=J?.tier,K=D.getReader(),Z=new TextDecoder,X=new TextEncoder,$="",W=!1,_=!1,z,M,P;return new ReadableStream({async start(F){let O=(j)=>{let Y=W?{content:j}:{role:"assistant",content:j};W=!0,F.enqueue(X.encode(B(Y,null)))},b=0,U=H?new i(O,(j)=>{let Y={...W?{}:{role:"assistant"},tool_calls:[{index:b,id:`qlexcall_${Date.now().toString(36)}_${b}`,type:"function",function:{name:j.name,arguments:j.arguments}}]};W=!0,b++,F.enqueue(X.encode(B(Y,null)))}):void 0,S=(j)=>U?U.feed(j):O(j),C=()=>{U?.flush();let j=z||M!==void 0?{prompt_tokens:z?.tokens.prompt??0,completion_tokens:z?.tokens.completion??0,total_tokens:z?.tokens.total??(z?.tokens.prompt??0)+(z?.tokens.completion??0),cost_usd:z?.cost_usd,cost_credits:z?.cost_credits??z?.cost_qredits,context_window:M}:void 0,Y=b>0?"tool_calls":P??"stop";F.enqueue(X.encode(B({},Y,j))),F.enqueue(X.encode(`data: [DONE]
19
-
20
- `)),F.close(),_=!0},N=(j)=>{let Y=WD(j);switch(Y.kind){case"skip":return!1;case"token":return S(Y.content),!1;case"passthrough":{let G=Y.chunk.choices;if(Array.isArray(G)&&G[0]&&typeof G[0]==="object"){let k=G[0].finish_reason;if(typeof k==="string")P=k}return W=!0,F.enqueue(X.encode(`data: ${JSON.stringify(Y.chunk)}
21
-
22
- `)),!1}case"cost":if(Y.cost.final)z=Y.cost;return!1;case"usage":if(Y.usage.context_window!==void 0)M=Y.usage.context_window;if(Y.finishReason!==void 0)P=Y.finishReason;return!1;case"control":{if(Y.control==="tier-output-limits"){let G=Y.chunk;if(V!==void 0)zD(V,G);y.debug("qlex tier output limits",{tierOutputLimit:G.tierOutputLimit,tierRecommendedStepTokens:G.tierRecommendedStepTokens,tierStepGuidance:G.tierStepGuidance})}else y.debug("qlex control frame dropped",{id:Y.chunk.id,object:Y.chunk.object});return!1}case"done":return C(),!0;case"error":return F.error(new w(Y.message)),_=!0,!0}};try{while(!0){let{done:Y,value:G}=await K.read();if(Y)break;$+=Z.decode(G,{stream:!0});let k;while((k=$.indexOf(`
23
-
24
- `))!==-1){let q=$.slice(0,k);if($=$.slice(k+2),N(q))return}}$+=Z.decode();let j=$.replace(/\r?\n$/,"");if(j.length>0&&N(j))return;if(!_)C()}catch(j){if(!_)F.error(j instanceof w?j:new w(j instanceof Error?j.message:String(j)))}finally{K.releaseLock()}},cancel(F){K.cancel(F).catch(()=>{})}})}function l(D){return{content:typeof D.content==="string"?D.content:D.choices?.[0]?.message?.content??"",finishReason:D.choices?.[0]?.finish_reason??"stop"}}function FD(D){let J=D??{},{content:H,finishReason:V}=l(J),K=J.usage??{},Z=K.prompt_tokens??0,X=K.completion_tokens??0,$="orch-"+Date.now().toString(36),W=Math.floor(Date.now()/1000),_=(O,b,U)=>{let S={id:$,object:"chat.completion.chunk",created:W,model:"orchestrated",choices:[{index:0,delta:O,finish_reason:b}]};if(U)S.usage=U;return`data: ${JSON.stringify(S)}
25
-
26
- `},z={prompt_tokens:Z,completion_tokens:X,total_tokens:K.total_tokens??Z+X};if(typeof K.cost_usd==="number")z.cost_usd=K.cost_usd;if(typeof K.cost_credits==="number")z.cost_credits=K.cost_credits;if(typeof K.context_window==="number")z.context_window=K.context_window;let M=[_({role:"assistant",content:""},null),_({content:H},null),_({},V,z),`data: [DONE]
27
-
28
- `],P=new TextEncoder,F=new ReadableStream({start(O){for(let b of M)O.enqueue(P.encode(b));O.close()}});return new Response(F,{status:200,headers:{"content-type":"text/event-stream"}})}function bD(D){let J=D??{},{content:H,finishReason:V}=l(J),K=J.usage??{},Z=K.prompt_tokens??0,X=K.completion_tokens??0,$={id:"orch-"+Date.now(),object:"chat.completion",created:Math.floor(Date.now()/1000),model:"orchestrated",choices:[{index:0,message:{role:"assistant",content:H},finish_reason:V}],usage:{prompt_tokens:Z,completion_tokens:X,total_tokens:K.total_tokens??Z+X,...typeof K.cost_usd==="number"?{cost_usd:K.cost_usd}:{},...typeof K.context_window==="number"?{context_window:K.context_window}:{}}};return new Response(JSON.stringify($),{status:200,headers:{"content-type":"application/json"}})}function _D(D,J=globalThis.fetch,H,V){let K=V?.responseTimeoutMs??a;return async(Z,X)=>{if(X?.method==="POST"&&typeof X?.body==="string"){let $;try{$=JSON.parse(X.body)}catch{return J(Z,X)}let W=ZD(),_=jD($.model??"default"),z=g($,{toolMode:W,outputAdvisory:_}),M=await D(),P=typeof M==="string"?{key:M,method:"sso"}:M;if(!P?.key)throw new d;let F=new Headers(X.headers);if(P.method==="api-key")F.delete("Authorization"),F.set("x-api-key",P.key);else F.delete("x-api-key"),F.set("Authorization",`Bearer ${P.key}`);if(F.set("Content-Type","application/json"),z.tier==="orchestrated"){let N=X.signal,j=new AbortController,Y=()=>j.abort(N?.reason);if(N)if(N.aborted)j.abort(N.reason);else N.addEventListener("abort",Y,{once:!0});let G=!1,k=setTimeout(()=>{G=!0,j.abort()},K),q;try{q=await J(s,{method:"POST",headers:F,body:JSON.stringify(z),signal:j.signal})}catch(L){if(N?.removeEventListener("abort",Y),G)throw new R(`no response within ${Math.round(K/1000)}s`);throw L}finally{clearTimeout(k)}if(N?.removeEventListener("abort",Y),q.status===402){let L=await q.text().catch(()=>"");throw new A(L||void 0)}if(q.status===429)throw new v;if(q.status===401||q.status===403){let L=await q.text().catch(()=>"");if(f(L))throw new R(`HTTP ${q.status}`);throw await H?.().catch(()=>{}),new I(L?`HTTP ${q.status}: ${L}`:`HTTP ${q.status}`)}if(!q.ok){let L=await q.text().catch(()=>"");throw new R(L?`HTTP ${q.status}: ${L}`:`HTTP ${q.status}`)}return FD(await q.json())}let O=X.signal,b=async(N)=>{let j=new AbortController,Y=()=>j.abort(O?.reason);if(O)if(O.aborted)j.abort(O.reason);else O.addEventListener("abort",Y,{once:!0});let G=()=>O?.removeEventListener("abort",Y),k=!1,q=setTimeout(()=>{k=!0,j.abort()},K);try{return{res:await J(n,{method:"POST",headers:F,body:JSON.stringify(N),signal:j.signal}),detach:G}}catch(L){if(G(),k)throw new R(`no response within ${Math.round(K/1000)}s`);throw L}finally{clearTimeout(q)}},{res:U,detach:S}=await b(z);if(U.status===400&&W==="native"&&$D($))S(),await U.body?.cancel().catch(()=>{}),{res:U,detach:S}=await b(g($,{toolMode:"text",outputAdvisory:_}));try{if(U.status===402){let N=await U.text().catch(()=>"");throw new A(N||void 0)}if(U.status===429)throw new v;if(U.status===401||U.status===403){let N=await U.text().catch(()=>"");if(f(N))throw new R(`HTTP ${U.status}`);throw await H?.().catch(()=>{}),new I(N?`HTTP ${U.status}: ${N}`:`HTTP ${U.status}`)}if(!U.ok){let N=await U.text().catch(()=>"");throw new R(N?`HTTP ${U.status}: ${N}`:`HTTP ${U.status}`)}}catch(N){throw S(),N}if($.stream!==!1&&U.body){let N=Array.isArray($.tools)&&$.tools.length>0;return new Response(ND(U.body,{toolProtocolEnabled:N,tier:z.tier}),{status:U.status,statusText:U.statusText,headers:{"content-type":"text/event-stream"}})}return U}return J(Z,X)}}function kD(D){let J=D.getToken??(async()=>D.bearerToken),H=_D(J,globalThis.fetch,D.onInvalidCredentials);return c({name:D.name??"qlex",baseURL:Q.streamBaseUrl(),fetch:H})}export{ND as transformQlexStream,FD as toOrchestratedSSEStream,bD as toOpenAICompletion,PD as sanitizeUpstreamProviderError,ZD as resolveToolMode,KD as renderToolProtocolPrompt,zD as recordTierOutputAdvisory,UD as partialTagSuffixLength,WD as parseQlexFrame,HD as normalizeQlexMessages,JD as mergeLeadingSystemMessages,f as isGatewayRequiredError,$D as hasToolContext,jD as getTierOutputAdvisory,x as flattenMessageContent,XD as encodeToolProtocolMessages,kD as createQlexProvider,_D as createCustomFetch,LD as clearTierOutputAdvisories,g as buildQlexBody,i as ToolCallExtractor,E as TOOL_CALL_OPEN,T as TOOL_CALL_CLOSE,w as QlexStreamError,v as QlexRateLimitError,d as QlexNotLoggedInError,I as QlexInvalidCredentialsError,A as QlexInsufficientBalanceError,R as QlexGatewayError,n as QLEX_STREAM_URL,a as QLEX_RESPONSE_TIMEOUT_MS,s as QLEX_ORCHESTRATED_URL};
@@ -1,2 +0,0 @@
1
- // @bun
2
- import{n as a,o as b}from"./chunk-6aqyhfag.js";import"./chunk-xrs18kzn.js";import"./chunk-2phz0bn9.js";import"./chunk-c8k32724.js";import"./chunk-whe7h2mj.js";import"./chunk-t9mz17gb.js";import"./chunk-yt3f3j35.js";import"./chunk-q7vasbxn.js";import"./chunk-wfb608qf.js";import"./chunk-w7vh8cxt.js";import"./chunk-bzgj60w4.js";import"./chunk-kdcnder5.js";import"./chunk-x4sp99g6.js";import"./chunk-fvzwbjh8.js";import"./chunk-e10py6yr.js";import"./chunk-jdynx7m6.js";import"./chunk-rbk8seme.js";import"./chunk-mqd1jsg2.js";import"./chunk-gz8sz7z1.js";import"./chunk-ygs5pzk7.js";import"./chunk-vxyy2dp3.js";import"./chunk-257me4z3.js";import"./chunk-nkkch4h7.js";import"./chunk-s3mnrhbx.js";import"./chunk-ezfy0b6q.js";import"./chunk-bn0h9dny.js";import"./chunk-hnvn2c25.js";import"./chunk-3nx7112w.js";import"./chunk-htz93dsd.js";import"./chunk-vcw00k0n.js";import"./chunk-we9cv8we.js";import"./chunk-2hc5z7b5.js";import"./chunk-9gazyynx.js";import"./chunk-4jtxtkj7.js";import"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import"./chunk-g5rabwre.js";import"./chunk-jbx3s7nw.js";import"./chunk-15hw2z9t.js";import"./chunk-48ge2ryx.js";import"./chunk-n9xns8by.js";import"./chunk-y9q0hb7b.js";import"./chunk-d9hbhkbq.js";import"./chunk-ad72gb5f.js";import"./chunk-d6ry9418.js";import"./chunk-0dt0bxz6.js";import"./chunk-10bjs581.js";import"./chunk-4cnwn1rh.js";import"./chunk-764fksh3.js";import"./chunk-xj765svc.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import"./chunk-dxpj0cxh.js";import"./chunk-zw815d68.js";import"./chunk-7xm75w1e.js";export{b as tui,a as rendererConfig};
@@ -1,2 +0,0 @@
1
- // @bun
2
- import{Cl as a}from"./chunk-257me4z3.js";import"./chunk-nkkch4h7.js";import"./chunk-s3mnrhbx.js";import"./chunk-ezfy0b6q.js";import"./chunk-bn0h9dny.js";import"./chunk-hnvn2c25.js";import"./chunk-3nx7112w.js";import"./chunk-htz93dsd.js";import"./chunk-vcw00k0n.js";import"./chunk-we9cv8we.js";import"./chunk-2hc5z7b5.js";import"./chunk-9gazyynx.js";import"./chunk-4jtxtkj7.js";import"./chunk-ay8emwym.js";import"./chunk-2maqde7w.js";import"./chunk-kj20f048.js";import"./chunk-cqtkxwd8.js";import"./chunk-x9rbv6p6.js";import"./chunk-g5rabwre.js";import"./chunk-jbx3s7nw.js";import"./chunk-15hw2z9t.js";import"./chunk-48ge2ryx.js";import"./chunk-d9hbhkbq.js";import"./chunk-ad72gb5f.js";import"./chunk-d6ry9418.js";import"./chunk-0dt0bxz6.js";import"./chunk-10bjs581.js";import"./chunk-4cnwn1rh.js";import"./chunk-764fksh3.js";import"./chunk-xj765svc.js";import"./chunk-tqj69nh6.js";import"./chunk-ag8kz1e7.js";import"./chunk-5tray1fw.js";import"./chunk-c11d28qn.js";import"./chunk-mzs2pjyc.js";import"./chunk-gagtmjmp.js";import"./chunk-zs8kqdsf.js";import"./chunk-zw815d68.js";import"./chunk-7xm75w1e.js";export{a as Session};
@@ -1,3 +0,0 @@
1
- // @bun
2
- import{ft as L,st as Y}from"./chunk-tqj69nh6.js";import{ut as Hr}from"./chunk-5tray1fw.js";import{OE as mr,iE as go,lO as oo,pH as W,zC as rr}from"./chunk-zs8kqdsf.js";import{DO as J,GO as ho,HO as vo}from"./chunk-7xm75w1e.js";var Po={};J(Po,{validateArchiveMetadata:()=>Uo,validateArchiveEntries:()=>Ko,replaceDirectoryAtomically:()=>Xo,extractZip:()=>Pr,assertArchiveDestinationSafe:()=>no});import I from"path";import Q from"fs/promises";function Ko(o,r){let m=I.resolve(r);for(let a of o){let f=a.trim().replaceAll("\\","/");if(!f)continue;if(f.includes("\x00")||I.posix.isAbsolute(f)||/^[a-z]:\//i.test(f))throw Error(`Unsafe archive entry: ${a}`);if(f.split("/").includes(".."))throw Error(`Unsafe archive entry: ${a}`);let n=I.resolve(m,...f.split("/"));if(n!==m&&!n.startsWith(`${m}${I.sep}`))throw Error(`Unsafe archive entry: ${a}`)}}function Uo(o){for(let r of o.split(/\r?\n/))if(/^[bclps]/.test(r))throw Error("Archive contains an unsafe special entry")}async function Yo(o){let r=await Q.readdir(o,{withFileTypes:!0});await Promise.all(r.map(async(m)=>{let a=I.join(o,m.name);if(m.isSymbolicLink())throw Error(`Archive contains a symbolic link: ${m.name}`);if(m.isDirectory())await Yo(a)}))}async function qo(o){return Q.lstat(o).catch((r)=>{if(r.code==="ENOENT")return;throw r})}async function no(o){let r=I.resolve(o),m=I.parse(r),a=m.root;for(let f of r.slice(m.root.length).split(I.sep).filter(Boolean)){a=I.join(a,f);let n=await qo(a);if(!n)return;if(n.isSymbolicLink())throw Error(`Archive destination contains a symbolic link: ${a}`)}}async function Xo(o,r){let m=I.resolve(r);await no(m);let a=await qo(m);if(a&&!a.isDirectory())throw Error("Archive destination must be a directory");let f=I.join(I.dirname(m),`.qitqode-backup-${crypto.randomUUID()}`);if(a)await Q.rename(m,f);try{await Q.rename(o,m)}catch(n){if(a)await Q.rename(f,m);throw n}if(a)await Q.rm(f,{recursive:!0,force:!0})}async function Pr(o,r){let m=I.resolve(o),a=I.resolve(r),f=await L(process.platform==="win32"?["tar","-tf",m]:["unzip","-Z1",m]);Ko(f.stdout.toString().split(/\r?\n/),a);let n=await L(process.platform==="win32"?["tar","-tvf",m]:["unzip","-Z","-l",m]);Uo(n.stdout.toString()),await no(I.dirname(a)),await Q.mkdir(I.dirname(a),{recursive:!0}),await no(I.dirname(a));let s=await Q.mkdtemp(I.join(I.dirname(a),".qitqode-extract-"));try{if(process.platform==="win32"){let t=m.replace(/'/g,"''"),x=s.replace(/'/g,"''"),N=`$global:ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path '${t}' -DestinationPath '${x}' -Force`;await L(["powershell","-NoProfile","-NonInteractive","-Command",N])}else await L(["unzip","-o","-q",m,"-d",s]);await Yo(s),await Xo(s,a)}finally{await Q.rm(s,{recursive:!0,force:!0})}}var Eo={};J(Eo,{isValidHex:()=>Ao,hexToRgb:()=>Zo,hexToAnsiBold:()=>Ar});function Ao(o){if(!o)return!1;return/^#[0-9a-fA-F]{6}$/.test(o)}function Zo(o){let r=parseInt(o.slice(1,3),16),m=parseInt(o.slice(3,5),16),a=parseInt(o.slice(5,7),16);return{r,g:m,b:a}}function Ar(o){if(!Ao(o))return;let{r,g:m,b:a}=Zo(o);return`\x1B[38;2;${r};${m};${a}m\x1B[1m`}var Lo={};J(Lo,{awaitDeferred:()=>Zr});function Zr(o,r){return W.ensuring(go.await(o),W.sync(r))}import V from"os";var _={};J(_,{Path:()=>H,Global:()=>_});import U from"fs/promises";import xo from"path";import mm from"os";import so from"path";import dr from"os";import{randomBytes as gr,randomUUID as Lr}from"crypto";import{mkdir as to,readFile as Dr,rm as E,stat as er,utimes as hr,writeFile as Do}from"fs/promises";import{createHash as Er}from"crypto";var bo;((ya)=>{function o(r){return Er("sha1").update(r).digest("hex")}ya.fast=o})(bo||={});var io;((eo)=>{let o;function r(u){o=u}eo.setGlobal=r;let m=()=>{if(!o)throw Error("Flock global not set");return so.join(o.state,"locks")},a={staleMs:60000,timeoutMs:300000,baseDelayMs:100,maxDelayMs:2000};function f(u){if(typeof u!=="object"||u===null||!("code"in u))return;let i=u.code;if(typeof i!=="string")return;return i}function n(u,i){return new Promise((c,M)=>{if(i?.aborted){M(i.reason??Error("Aborted"));return}let R,b=()=>{i?.removeEventListener("abort",j),c()},j=()=>{if(R)clearTimeout(R);i?.removeEventListener("abort",j),M(i?.reason??Error("Aborted"))};if(i?.addEventListener("abort",j,{once:!0}),R=setTimeout(b,u),i?.aborted)j()})}function s(u){let i=Math.floor(u*0.3),c=Math.floor(Math.random()*(2*i+1))-i;return Math.max(0,u+c)}function t(){return performance.now()}function x(){return performance.timeOrigin+t()}async function N(u){try{return await er(u)}catch(i){let c=f(i);if(c==="ENOENT"||c==="ENOTDIR")return;throw i}}async function T(u,i,c,M){let R=x(),b=await N(i);if(b)return R-b.mtimeMs>M;let j=await N(c);if(j)return R-j.mtimeMs>M;let C=await N(u);if(!C)return!1;return R-C.mtimeMs>M}async function P(u,i){let c=Lr?.()??gr(16).toString("hex"),M=so.join(u,"meta.json"),R=so.join(u,"heartbeat");try{await to(u,{mode:448})}catch(g){if(f(g)!=="EEXIST")throw g;if(!await T(u,R,M,i.staleMs))return{acquired:!1};let S=u+".breaker";try{await to(S,{mode:448})}catch(B){let Z=f(B);if(Z==="EEXIST"){let Fo=await N(S);if(Fo&&x()-Fo.mtimeMs>i.staleMs)await E(S,{recursive:!0,force:!0}).catch(()=>{return});return{acquired:!1}}if(Z==="ENOENT"||Z==="ENOTDIR")return{acquired:!1};throw B}try{if(!await T(u,R,M,i.staleMs))return{acquired:!1};await E(u,{recursive:!0,force:!0});try{await to(u,{mode:448})}catch(B){let Z=f(B);if(Z==="EEXIST"||Z==="ENOTEMPTY")return{acquired:!1};throw B}}finally{await E(S,{recursive:!0,force:!0}).catch(()=>{return})}}let b={token:c,pid:process.pid,hostname:dr.hostname(),createdAt:new Date().toISOString()};await Do(R,"",{flag:"wx"}).catch(async()=>{throw await E(u,{recursive:!0,force:!0}),Error("Lock acquired but heartbeat already existed (possible compromise).")}),await Do(M,JSON.stringify(b,null,2),{flag:"wx"}).catch(async()=>{throw await E(u,{recursive:!0,force:!0}),Error("Lock acquired but meta.json already existed (possible compromise).")});let j;return{acquired:!0,startHeartbeat:(g=Math.max(100,Math.floor(i.staleMs/3)))=>{if(j)return;j=setInterval(()=>{let S=new Date;hr(R,S,S).catch(()=>{return})},g),j.unref?.()},release:async()=>{if(j)clearInterval(j),j=void 0;if((await Dr(M,"utf8").then((S)=>{let B=JSON.parse(S);if(!B||typeof B!=="object")return{};return{token:"token"in B&&typeof B.token==="string"?B.token:void 0}}).catch((S)=>{let B=f(S);if(B==="ENOENT"||B==="ENOTDIR")throw Error("Refusing to release: lock is compromised (metadata missing).");if(S instanceof SyntaxError)throw Error("Refusing to release: lock is compromised (metadata invalid).");throw S})).token!==c)throw Error("Refusing to release: lock token mismatch (not the owner).");await E(u,{recursive:!0,force:!0})}}}async function fo(u,i,c){let M=t()+c.timeoutMs,R=0,b=0,j=c.baseDelayMs;while(!0){i.signal?.throwIfAborted();let C=await P(u,c);if(C.acquired)return C;if(t()>M)throw Error(`Timed out waiting for lock: ${i.key}`);R+=1;let A=s(j);await i.onWait?.({key:i.key,attempt:R,delay:A,waited:b}),await n(A,i.signal),b+=A,j=Math.min(c.maxDelayMs,Math.floor(j*1.7))}}async function qr(u,i={}){i.signal?.throwIfAborted();let c={staleMs:i.staleMs??a.staleMs,timeoutMs:i.timeoutMs??a.timeoutMs,baseDelayMs:i.baseDelayMs??a.baseDelayMs,maxDelayMs:i.maxDelayMs??a.maxDelayMs},M=i.dir??m();await to(M,{recursive:!0});let R=so.join(M,bo.fast(u)+".lock"),b=await fo(R,{key:u,onWait:i.onWait,signal:i.signal},c);b.startHeartbeat();let j,C=()=>{return j??=b.release()};return{release:C,[Symbol.asyncDispose](){return C()}}}eo.acquire=qr;async function Ca(u,i,c={}){let R=[];try{const M=ho(R,await qr(u,c),1);c.signal?.throwIfAborted();return await i()}catch(b){var j=b,C=1}finally{var A=vo(R,j,C);A&&await A}}eo.withLock=Ca,eo.effect=W.fn("Flock.effect")(function*(u,i={}){return yield*W.acquireRelease(W.promise((c)=>io.acquire(u,{...i,signal:c})).pipe(W.withSpan("Flock.acquire",{attributes:{key:u}})),(c)=>W.promise(()=>c.release()).pipe(W.withSpan("Flock.release"))).pipe(W.asVoid)})})(io||={});import w from"path";import vr from"os";import uo from"path";var G=vr.homedir(),{env:K}=process,D=K.XDG_DATA_HOME||(G?uo.join(G,".local","share"):void 0),po=K.XDG_CONFIG_HOME||(G?uo.join(G,".config"):void 0),lo=K.XDG_STATE_HOME||(G?uo.join(G,".local","state"):void 0),ko=K.XDG_CACHE_HOME||(G?uo.join(G,".cache"):void 0),ga=K.XDG_RUNTIME_DIR||void 0,lr=(K.XDG_DATA_DIRS||"/usr/local/share/:/usr/share/").split(":");if(D)lr.unshift(D);var kr=(K.XDG_CONFIG_DIRS||"/etc/xdg").split(":");if(po)kr.unshift(po);import om from"os";var e="qitqode";function Bo(o=process.env){let r=o.QITQODE_HOME;if(r){if(!w.isAbsolute(r))throw Error(`QITQODE_HOME must be an absolute path, got: ${JSON.stringify(r)}`);return{mode:"qitqode_home",root:r,data:w.join(r,"data"),cache:w.join(r,"cache"),config:w.join(r,"config"),state:w.join(r,"state")}}return{mode:"xdg",data:w.join(D,e),cache:w.join(ko,e),config:w.join(po,e),state:w.join(lo,e)}}function So(o=process.env){let r=o.QITQODE_LOG_DIR;if(r){if(!w.isAbsolute(r))throw Error(`QITQODE_LOG_DIR must be an absolute path, got: ${JSON.stringify(r)}`);return r}return w.join(D,e,"log")}var rm;((or)=>{class o extends rr.Service()("@qitqode/Global"){}or.Service=o,or.layer=mr.effect(o,W.gen(function*(){let m=process.env.HOME||process.env.USERPROFILE||om.homedir(),{data:a,cache:f,config:n,state:s}=yield*W.sync(()=>Bo()),t=w.join(f,"bin"),x=yield*W.sync(()=>So());return o.of({home:m,data:a,cache:f,config:n,state:s,bin:t,log:x})}))})(rm||={});var{data:am,cache:ar,config:fm,state:nr}=Bo(),H={get home(){return process.env.HOME||process.env.USERPROFILE||mm.homedir()},data:am,bin:xo.join(ar,"bin"),log:So(),cache:ar,config:fm,state:nr};io.setGlobal({state:nr});await Promise.all([U.mkdir(H.data,{recursive:!0}),U.mkdir(H.config,{recursive:!0}),U.mkdir(H.state,{recursive:!0}),U.mkdir(H.log,{recursive:!0}),U.mkdir(H.bin,{recursive:!0})]);var fr="21",nm=await Y.readText(xo.join(H.cache,"version")).catch(()=>"0");if(nm!==fr){try{let o=await U.readdir(H.cache);await Promise.all(o.map((r)=>U.rm(xo.join(H.cache,r),{recursive:!0,force:!0})))}catch{}await Y.write(xo.join(H.cache,"version"),fr)}var sr="0.1.32",tr="latest",nf="1ca9e69f2a078499c8177161c6437a234cd8ef5a",sf=!1;import sm from"path";var q;async function ir(){if(q)return q;let o=sm.join(_.Path.data,"installation_id"),r=await Y.readText(o).catch(()=>{return});if(r&&r.trim())return q=r.trim(),q;return q=crypto.randomUUID(),await Y.write(o,q),q}var pr="QITQODE_RUN_ID",ur="QITQODE_PROCESS_ROLE";function tm(){return process.env.QITQODE_RUN_ID??=crypto.randomUUID()}function im(o){return process.env.QITQODE_PROCESS_ROLE??=o}function Of(o){return{runID:tm(),processRole:im(o)}}function Nf(o){let r=Object.fromEntries(Object.entries(process.env).filter((m)=>m[1]!==void 0));return o?Object.assign(r,o):r}function pm(){if(process.env.USER)return process.env.USER;if(process.env.USERNAME)return process.env.USERNAME;return V.userInfo().username}function um(){return Intl.DateTimeFormat().resolvedOptions().locale}function xm(){return Intl.DateTimeFormat().resolvedOptions().timeZone}async function cm(){let o=V.cpus();return{os:{platform:V.platform(),arch:V.arch(),release:V.release(),hostname:V.hostname()},cpu:{model:o[0]?.model??"unknown",count:o.length},memory:{total_bytes:V.totalmem()},user:{username:pm(),homedir:V.homedir()},runtime:{bun_version:Bun.version,node_version:process.versions.node,pid:process.pid,timezone:xm(),locale:um()},paths:{cwd:process.cwd(),data:_.Path.data,config:_.Path.config},qitqode:{version:sr,channel:tr,installation_id:await ir(),run_id:pr,process_role:ur}}}var Rr={};J(Rr,{toString:()=>em,parse:()=>hm,match:()=>Lm,fromParsedKey:()=>Dm});var y={done:!1,hasNext:!1};function X(o,...r){let m=o,a=r.map((n)=>("lazy"in n)?Om(n):void 0),f=0;for(;f<r.length;){if(a[f]===void 0||!Nm(m)){let x=r[f];m=x(m),f+=1;continue}let n=[];for(let x=f;x<r.length;x++){let N=a[x];if(N===void 0||(n.push(N),N.isSingle))break}let s=[];for(let x of m)if(xr(x,s,n))break;let{isSingle:t}=n.at(-1);m=t?s[0]:s,f+=n.length}return m}function xr(o,r,m){if(m.length===0)return r.push(o),!1;let a=o,f=y,n=!1;for(let[s,t]of m.entries()){let{index:x,items:N}=t;if(N.push(a),f=t(a,x,N),t.index+=1,f.hasNext){if(f.hasMany??!1){for(let T of f.next)if(xr(T,r,m.slice(s+1)))return!0;return n}a=f.next}if(!f.hasNext)break;f.done&&(n=!0)}return f.hasNext&&r.push(a),n}function Om(o){let{lazy:r,lazyArgs:m}=o,a=r(...m);return Object.assign(a,{isSingle:r.single??!1,index:0,items:[]})}function Nm(o){return typeof o=="string"||typeof o=="object"&&o!==null&&Symbol.iterator in o}function co(o,r){let m=r.length-o.length;if(m===1){let[a,...f]=r;return X(a,{lazy:o,lazyArgs:f})}if(m===0){let a={lazy:o,lazyArgs:r};return Object.assign((f)=>X(f,a),a)}throw Error("Wrong number of arguments")}function jm(...o){return co(Rm,o)}function Rm(){let o=new Set;return(r)=>o.has(r)?y:(o.add(r),{done:!1,hasNext:!0,next:r})}function Tm(...o){return co(Im,o)}function Im(o){let r=o,m=new Set;return(a,f,n)=>{let s=r(a,f,n);return m.has(s)?y:(m.add(s),{done:!1,hasNext:!0,next:a})}}function cr(o,r,m){let a=(f)=>o(f,...r);return m===void 0?a:Object.assign(a,{lazy:m,lazyArgs:r})}function O(o,r,m){let a=o.length-r.length;if(a===0)return o(...r);if(a===1)return cr(o,r,m);throw Error("Wrong number of arguments")}function Mm(...o){return O(Object.values,o)}var Nr={asc:(o,r)=>o>r,desc:(o,r)=>o<r};function Oo(o,r){let[m,...a]=r;if(!Wm(m)){let n=Jo(...a);return o(m,n)}let f=Jo(m,...a);return(n)=>o(n,f)}function Jo(o,r,...m){let a=typeof o=="function"?o:o[0],f=typeof o=="function"?"asc":o[1],{[f]:n}=Nr,s=r===void 0?void 0:Jo(r,...m);return(t,x)=>{let N=a(t),T=a(x);return n(N,T)?1:n(T,N)?-1:s?.(t,x)??0}}function Wm(o){if(Or(o))return!0;if(typeof o!="object"||!Array.isArray(o))return!1;let[r,m,...a]=o;return Or(r)&&typeof m=="string"&&m in Nr&&a.length===0}var Or=(o)=>typeof o=="function"&&o.length===1;function No(...o){return Oo(bm,o)}var bm=(o,r)=>[...o].sort(r);function Bm(...o){return O(Sm,o)}function Sm(o,r){let m={};for(let[a,f]of Object.entries(o))r(f,a,o)&&(m[a]=f);return m}function wo(o){if(typeof o!="object"||o===null)return!1;let r=Object.getPrototypeOf(o);return r===null||r===Object.prototype}function Jm(...o){return O(jr,o)}function jr(o,r){let m={...o,...r};for(let a in r){if(!(a in o))continue;let{[a]:f}=o;if(!wo(f))continue;let{[a]:n}=r;wo(n)&&(m[a]=jr(f,n))}return m}function h(...o){return O(wm,o)}var wm=(o,r)=>o.length>=r;function _m(...o){return O(zm,o)}function zm(o,r){if(!h(r,1))return{...o};if(!h(r,2)){let{[r[0]]:a,...f}=o;return f}let m={...o};for(let a of r)delete m[a];return m}function Cm(...o){return O(Hm,o)}function Hm(o,r){let m={};for(let[a,f]of Object.entries(o)){let n=r(f,a,o);m[a]=n}return m}function Qm(...o){return O($m,o,Gm)}var $m=(o,r)=>o.map(r),Gm=(o)=>(r,m,a)=>({done:!1,hasNext:!0,next:o(r,m,a)});function Vm(...o){return O(ym,o)}var ym=(o,r)=>{let m=Object.create(null);for(let a=0;a<o.length;a++){let f=o[a],n=r(f,a,o);if(n!==void 0){let s=m[n];s===void 0?m[n]=[f]:s.push(f)}}return Object.setPrototypeOf(m,Object.prototype),m};function _o(...o){return O(v,o)}function v(o,r){if(o===r||Object.is(o,r))return!0;if(typeof o!="object"||typeof r!="object"||o===null||r===null||Object.getPrototypeOf(o)!==Object.getPrototypeOf(r))return!1;if(Array.isArray(o))return Fm(o,r);if(o instanceof Map)return Km(o,r);if(o instanceof Set)return Um(o,r);if(o instanceof Date)return o.getTime()===r.getTime();if(o instanceof RegExp)return o.toString()===r.toString();if(Object.keys(o).length!==Object.keys(r).length)return!1;for(let[m,a]of Object.entries(o))if(!(m in r)||!v(a,r[m]))return!1;return!0}function Fm(o,r){if(o.length!==r.length)return!1;for(let[m,a]of o.entries())if(!v(a,r[m]))return!1;return!0}function Km(o,r){if(o.size!==r.size)return!1;for(let[m,a]of o.entries())if(!r.has(m)||!v(a,r.get(m)))return!1;return!0}function Um(o,r){if(o.size!==r.size)return!1;let m=[...r];for(let a of o){let f=!1;for(let[n,s]of m.entries())if(v(a,s)){f=!0,m.splice(n,1);break}if(!f)return!1}return!0}function Ym(...o){return Oo(qm,o)}function qm(o,r){if(!h(o,2))return o[0];let[m]=o,[,...a]=o;for(let f of a)r(f,m)<0&&(m=f);return m}function Xm(...o){return O(Pm,o,Am)}var Pm=(o,r)=>o.flatMap(r),Am=(o)=>(r,m,a)=>{let f=o(r,m,a);return Array.isArray(f)?{done:!1,hasNext:!0,hasMany:!0,next:f}:{done:!1,hasNext:!0,next:f}};function Zm(...o){return O(Object.entries,o)}function Em(...o){return O(dm,o,gm)}var dm=(o,r)=>o.filter(r),gm=(o)=>(r,m,a)=>o(r,m,a)?{done:!1,hasNext:!0,next:r}:y;function Lm(o,r){if(!o)return!1;let m={...o,super:o.super??!1},a={...r,super:r.super??!1};return _o(m,a)}function Dm(o,r=!1){return{name:o.name===" "?"space":o.name,ctrl:o.ctrl,meta:o.meta,shift:o.shift,super:o.super??!1,leader:r}}function em(o){if(!o)return"";let r=[];if(o.ctrl)r.push("ctrl");if(o.meta)r.push("alt");if(o.super)r.push("super");if(o.shift)r.push("shift");if(o.name)if(o.name==="delete")r.push("del");else r.push(o.name);let m=r.join("+");if(o.leader)m=m?`<leader> ${m}`:"<leader>";return m}function hm(o){if(o==="none")return[];return o.split(",").map((r)=>{let a=r.replace(/<leader>/g,"leader+").toLowerCase().split("+"),f={ctrl:!1,meta:!1,shift:!1,leader:!1,name:""};for(let n of a)switch(n){case"ctrl":f.ctrl=!0;break;case"alt":case"meta":case"option":f.meta=!0;break;case"super":f.super=!0;break;case"shift":f.shift=!0;break;case"leader":f.leader=!0;break;case"esc":f.name="escape";break;default:f.name=n;break}return f})}var Tr={};J(Tr,{create:()=>lm,NotFound:()=>zo});import{AsyncLocalStorage as vm}from"async_hooks";class zo extends Error{name;constructor(o){super(`No context found for ${o}`);this.name=o}}function lm(o){let r=new vm;return{use(){let m=r.getStore();if(!m)throw new zo(o);return m},provide(m,a){return r.run(m,a)}}}var Mr={};J(Mr,{truncateMiddle:()=>fa,truncate:()=>aa,todayTimeOrDateTime:()=>oa,titlecase:()=>km,time:()=>Co,pluralize:()=>na,number:()=>ra,duration:()=>ma,datetime:()=>Ir});function km(o){return o.replace(/\b\w/g,(r)=>r.toUpperCase())}function Co(o){return new Date(o).toLocaleTimeString(void 0,{timeStyle:"short"})}function Ir(o){let r=new Date(o),m=Co(o),a=r.toLocaleDateString();return`${m} \xB7 ${a}`}function oa(o){let r=new Date(o),m=new Date;if(r.getFullYear()===m.getFullYear()&&r.getMonth()===m.getMonth()&&r.getDate()===m.getDate())return Co(o);else return Ir(o)}function ra(o){if(o>=1e6)return(o/1e6).toFixed(1)+"M";else if(o>=1000)return(o/1000).toFixed(1)+"K";return o.toString()}function ma(o){if(o<1000)return`${o}ms`;if(o<60000)return`${(o/1000).toFixed(1)}s`;if(o<3600000){let a=Math.floor(o/60000),f=Math.floor(o%60000/1000);return`${a}m ${f}s`}if(o<86400000){let a=Math.floor(o/3600000),f=Math.floor(o%3600000/60000);return`${a}h ${f}m`}let r=Math.floor(o%86400000/3600000);return`${Math.floor(o/86400000)}d ${r}h`}function aa(o,r){if(r<=0)return"";if(o.length<=r)return o;return o.slice(0,r-1)+"\u2026"}function fa(o,r=35){if(r<=0)return"";if(o.length<=r)return o;let m="\u2026",a=Math.ceil((r-m.length)/2),f=Math.floor((r-m.length)/2);return o.slice(0,a)+m+(f>0?o.slice(-f):"")}function na(o,r,m){return(o===1?r:m).replace("{}",o.toString())}var Br={};J(Br,{write:()=>ia,read:()=>ta});var l=new Map;function Wr(o){if(!l.has(o))l.set(o,{readers:0,writer:!1,waitingReaders:[],waitingWriters:[]});return l.get(o)}function sa(o){let r=l.get(o);if(!r||r.writer||r.readers>0)return;if(r.waitingWriters.length>0){r.waitingWriters.shift()();return}while(r.waitingReaders.length>0)r.waitingReaders.shift()();if(r.readers===0&&!r.writer&&r.waitingReaders.length===0&&r.waitingWriters.length===0)l.delete(o)}function br(o){return new Promise((r)=>{let m=()=>{o.acquire();let a=!1;r({[Symbol.dispose]:()=>{if(a)return;a=!0,o.release(),sa(o.key)}})};if(o.available())m();else o.waiting.push(m)})}async function ta(o){let r=Wr(o);return br({key:o,available:()=>!r.writer&&r.waitingWriters.length===0,acquire:()=>r.readers++,release:()=>r.readers--,waiting:r.waitingReaders})}async function ia(o){let r=Wr(o);return br({key:o,available:()=>!r.writer&&r.readers===0,acquire:()=>{r.writer=!0},release:()=>{r.writer=!1},waiting:r.waitingWriters})}var yr={};J(yr,{redactValue:()=>Go,init:()=>Ia,flush:()=>Ma,file:()=>Ta,enabled:()=>ja,create:()=>Vo,Level:()=>xa,Default:()=>Ra});import Io from"path";import F from"fs/promises";import{createWriteStream as Qr}from"fs";var lu="https://qortex.forgewise.tech/api/v1/qortex/streamTier",ku=new URL("https://qortex.forgewise.tech/api/v1/qortex/streamTier").origin,Sr="https://qortex.forgewise.tech/api/v1/qortex/streamTier".replace(/\/streamTier$/,""),ox={name:"QitQode",family:"qlex",npm:"@qitqode/qlex-provider",limit:{context:200000,output:16384},capabilities:{temperature:!0,reasoning:!1,attachment:!0,toolcall:!0,input:{text:!0,audio:!1,image:!0,video:!1,pdf:!1},output:{text:!0,audio:!1,image:!1,video:!1,pdf:!1},interleaved:!1},release_date:"2025-07-06"};function k(o){return o.replace(/provider\s+'[^']*'\s*(?:stream\s+)?(?:failed|error)?\s*:?\s*/gi,"").replace(/\b(?:anthropic|openai|google|vertex\s*ai|bedrock|azure|x\.?ai|mistral|deepseek|cohere|groq|together(?:\.ai)?|openrouter|fireworks|perplexity|meta)\b/gi,"").replace(/\b(?:gpt|claude|gemini|grok|llama|qwen|sonnet|opus|haiku|o[0-9])[-\w.]*/gi,"").replace(/\s+/g," ").replace(/^[\s:;,.\-]+/,"").replace(/[\s.]+$/,"").trim()}var rx={notLoggedIn:"Not logged in to QitQode. Run `qitqode auth login` to sign in with your Forgewise account.",rateLimit:"Rate limit exceeded. Please wait a moment before sending more requests.",insufficientBalance:(o)=>{let r=o?k(o):"";return`Insufficient qredits${r?`: ${r}`:""}. Add qredits at qitqode.com to continue.`},invalidCredentials:(o)=>{let r=o?k(o):"";return`QitQode sign-in was rejected by the server${r?` (${r})`:""}. Please sign in again with your Forgewise account or a valid API key.`},accountNotLinked:(o)=>{let r=o?k(o):"";return`This credential isn't linked to a QitQode account${r?` (${r})`:""}, so there is no wallet to read. Sign in with your Forgewise account, or use a key issued to that account.`},gatewayUnavailable:(o)=>{let r=o?k(o):"";return`The QitQode model gateway is unavailable${r?` (${r})`:""}. Your sign-in is still valid \u2014 the model backend isn't reachable through its trusted gateway yet. This is a server-side configuration issue, not a login problem.`},streamFailed:(o)=>{let r=o?k(o):"";return`The QitQode model stream failed${r?`: ${r}`:""}.`},insufficientBalanceFallback:"Insufficient qredits.",insufficientBalanceCliSuffix:" Visit qitqode.com to add qredits.",invalidCredentialsFallback:"QitQode sign-in was rejected by the server. Please sign in again.",apiKeyPrompt:"Paste your Qortex API key:",apiKeyPlaceholder:"qortex-...",loginMenuForgewise:"Sign in with Forgewise account",loginMenuApiKey:"Paste a Qortex API key",waitingForgewise:"\u23F3 Waiting for Forgewise sign-in in your browser\u2026"};function p(o){let r=process.env[o]?.toLowerCase();return r==="true"||r==="1"}function Ho(o){let r=process.env[o]?.toLowerCase();return r==="false"||r==="0"}function $(o){let r=process.env[o];if(!r)return;let m=Number(r);return Number.isInteger(m)&&m>0?m:void 0}var d=p("QITQODE_EXPERIMENTAL"),jo=p("QITQODE_DISABLE_CLAUDE_CODE"),Ro=p("QITQODE_DISABLE_EXTERNAL_SKILLS"),pa=Ro||jo||p("QITQODE_DISABLE_CLAUDE_CODE_SKILLS"),ua=process.env.QITQODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT,Jr={OTEL_EXPORTER_OTLP_ENDPOINT:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,OTEL_EXPORTER_OTLP_HEADERS:process.env.OTEL_EXPORTER_OTLP_HEADERS,QITQODE_AUTO_SHARE:p("QITQODE_AUTO_SHARE"),QITQODE_AUTO_HEAP_SNAPSHOT:p("QITQODE_AUTO_HEAP_SNAPSHOT"),QITQODE_GIT_BASH_PATH:process.env.QITQODE_GIT_BASH_PATH,QITQODE_CONFIG:process.env.QITQODE_CONFIG,QITQODE_CONFIG_CONTENT:process.env.QITQODE_CONFIG_CONTENT,get QITQODE_BACKEND_URL(){return process.env.QITQODE_BACKEND_URL??Sr},QITQODE_DISABLE_AUTOUPDATE:p("QITQODE_DISABLE_AUTOUPDATE"),QITQODE_DISABLE_LOG_ROTATION:p("QITQODE_DISABLE_LOG_ROTATION"),QITQODE_ALWAYS_NOTIFY_UPDATE:p("QITQODE_ALWAYS_NOTIFY_UPDATE"),QITQODE_DISABLE_PRUNE:p("QITQODE_DISABLE_PRUNE"),QITQODE_DISABLE_TERMINAL_TITLE:p("QITQODE_DISABLE_TERMINAL_TITLE"),QITQODE_SHOW_TTFD:p("QITQODE_SHOW_TTFD"),QITQODE_PERMISSION:process.env.QITQODE_PERMISSION,QITQODE_DISABLE_DEFAULT_PLUGINS:p("QITQODE_DISABLE_DEFAULT_PLUGINS"),QITQODE_DISABLE_LSP_DOWNLOAD:!0,QITQODE_ENABLE_EXPERIMENTAL_MODELS:p("QITQODE_ENABLE_EXPERIMENTAL_MODELS"),QITQODE_DISABLE_AUTOCOMPACT:p("QITQODE_DISABLE_AUTOCOMPACT"),QITQODE_DISABLE_MODELS_FETCH:p("QITQODE_DISABLE_MODELS_FETCH"),QITQODE_DISABLE_MOUSE:p("QITQODE_DISABLE_MOUSE"),QITQODE_OUTPUT_LENGTH_CONTINUATION_LIMIT:$("QITQODE_OUTPUT_LENGTH_CONTINUATION_LIMIT")??3,QITQODE_INVALID_OUTPUT_CONTINUATION_LIMIT:$("QITQODE_INVALID_OUTPUT_CONTINUATION_LIMIT")??2,QITQODE_TEXT_NGRAM_N:$("QITQODE_TEXT_NGRAM_N")??6,QITQODE_TEXT_REPEAT_THRESHOLD:$("QITQODE_TEXT_REPEAT_THRESHOLD")??3,QITQODE_TEXT_WINDOW_TOKENS:$("QITQODE_TEXT_WINDOW_TOKENS")??500,QITQODE_MAX_PROMPT_IMAGES:$("QITQODE_MAX_PROMPT_IMAGES")??4,QITQODE_MAX_PROMPT_IMAGE_SIZE:$("QITQODE_MAX_PROMPT_IMAGE_SIZE")??393216,QITQODE_DISABLE_PROVIDER_ENV:p("QITQODE_DISABLE_PROVIDER_ENV"),QITQODE_DISABLE_CLAUDE_CODE:jo,get QITQODE_DISABLE_CLAUDE_CODE_MCP(){return jo||p("QITQODE_DISABLE_CLAUDE_CODE_MCP")},QITQODE_DISABLE_CLAUDE_CODE_PROMPT:jo||p("QITQODE_DISABLE_CLAUDE_CODE_PROMPT"),QITQODE_DISABLE_CLAUDE_CODE_COMMANDS:p("QITQODE_DISABLE_CLAUDE_CODE_COMMANDS"),QITQODE_DISABLE_CLAUDE_CODE_SKILLS:pa,QITQODE_DISABLE_EXTERNAL_SKILLS:Ro,QITQODE_DISABLE_CODEX_SKILLS:Ro||p("QITQODE_DISABLE_CODEX_SKILLS"),QITQODE_DISABLE_OPENCODE_SKILLS:Ro||p("QITQODE_DISABLE_OPENCODE_SKILLS"),QITQODE_FAKE_VCS:process.env.QITQODE_FAKE_VCS,QITQODE_DISABLE_GIT:p("QITQODE_DISABLE_GIT"),get QITQODE_SERVER_PASSWORD(){return process.env.QITQODE_SERVER_PASSWORD},get QITQODE_SERVER_USERNAME(){return process.env.QITQODE_SERVER_USERNAME},QITQODE_ENABLE_QUESTION_TOOL:p("QITQODE_ENABLE_QUESTION_TOOL"),QITQODE_EXPERIMENTAL:d,QITQODE_EXPERIMENTAL_FILEWATCHER:oo.boolean("QITQODE_EXPERIMENTAL_FILEWATCHER").pipe(oo.withDefault(!1)),QITQODE_EXPERIMENTAL_DISABLE_FILEWATCHER:oo.boolean("QITQODE_EXPERIMENTAL_DISABLE_FILEWATCHER").pipe(oo.withDefault(!1)),QITQODE_EXPERIMENTAL_ICON_DISCOVERY:d||p("QITQODE_EXPERIMENTAL_ICON_DISCOVERY"),QITQODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT:ua===void 0?process.platform==="win32":p("QITQODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT"),QITQODE_ENABLE_EXA:p("QITQODE_ENABLE_EXA")||d||p("QITQODE_EXPERIMENTAL_EXA"),QITQODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS:$("QITQODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS"),QITQODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX:$("QITQODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX"),QITQODE_EXPERIMENTAL_OXFMT:d||p("QITQODE_EXPERIMENTAL_OXFMT"),QITQODE_EXPERIMENTAL_LSP_TY:p("QITQODE_EXPERIMENTAL_LSP_TY"),QITQODE_EXPERIMENTAL_LSP_TOOL:d||p("QITQODE_EXPERIMENTAL_LSP_TOOL"),QITQODE_EXPERIMENTAL_WORKFLOW_TOOL:!Ho("QITQODE_EXPERIMENTAL_WORKFLOW_TOOL"),QITQODE_EXPERIMENTAL_MARKDOWN:!Ho("QITQODE_EXPERIMENTAL_MARKDOWN"),QITQODE_MODELS_URL:process.env.QITQODE_MODELS_URL,QITQODE_MODELS_PATH:process.env.QITQODE_MODELS_PATH,QITQODE_DB:process.env.QITQODE_DB,QITQODE_DISABLE_CHANNEL_DB:!Ho("QITQODE_DISABLE_CHANNEL_DB"),QITQODE_SKIP_MIGRATIONS:p("QITQODE_SKIP_MIGRATIONS"),QITQODE_STRICT_CONFIG_DEPS:p("QITQODE_STRICT_CONFIG_DEPS"),QITQODE_WORKSPACE_ID:process.env.QITQODE_WORKSPACE_ID,QITQODE_EXPERIMENTAL_HTTPAPI:p("QITQODE_EXPERIMENTAL_HTTPAPI"),QITQODE_EXPERIMENTAL_WORKSPACES:d||p("QITQODE_EXPERIMENTAL_WORKSPACES"),get QITQODE_DISABLE_COMPOSE_SKILLS(){return p("QITQODE_DISABLE_COMPOSE_SKILLS")},get QITQODE_DISABLE_BUILTIN_SKILLS(){return p("QITQODE_DISABLE_BUILTIN_SKILLS")},get QITQODE_DISABLE_PROJECT_CONFIG(){return p("QITQODE_DISABLE_PROJECT_CONFIG")},get QITQODE_TUI_CONFIG(){return process.env.QITQODE_TUI_CONFIG},get QITQODE_CONFIG_DIR(){return process.env.QITQODE_CONFIG_DIR},get QITQODE_HOME(){return process.env.QITQODE_HOME},get QITQODE_PURE(){return p("QITQODE_PURE")},get QITQODE_PLUGIN_META_FILE(){return process.env.QITQODE_PLUGIN_META_FILE},get QITQODE_CLIENT(){return process.env.QITQODE_CLIENT??"cli"}};var xa=Hr.enum(["DEBUG","INFO","WARN","ERROR"]).meta({ref:"LogLevel",description:"Log level"}),wr={DEBUG:0,INFO:1,WARN:2,ERROR:3},ca=10,Oa=52428800,Na=209715200,$r="INFO";function ro(o){return wr[o]>=wr[$r]}function ja(o){return ro(o)}var _r=new Map,Ra=Vo({service:"default"}),z="";function Ta(){return z}var ao,To=0,zr=!0,mo=(o)=>{return process.stderr.write(o),o.length};function Mo(){return new Date().toISOString().split(".")[0].replace(/:/g,"")}async function Ia(o){if(o.level)$r=o.level;if(zr=o.rotate??!Jr.QITQODE_DISABLE_LOG_ROTATION,Gr(_.Path.log),o.print)return;if(z=Io.join(_.Path.log,o.dev?"dev.log":Mo()+".log"),o.dev){let r=await F.stat(z).catch(()=>null);if(r&&r.size>0)await F.rename(z,`${z}.${Mo()}`).catch(()=>{})}else await F.truncate(z).catch(()=>{});ao=Qr(z,{flags:"a"}),To=0,mo=(r)=>{return $o=$o.then(async()=>{if(To+=Buffer.byteLength(r),zr&&To>=Oa)To=Buffer.byteLength(r),await Wa();await new Promise((m)=>{if(!ao){m();return}ao.write(r,()=>m())})}).catch(()=>{}),r.length}}var $o=Promise.resolve();async function Ma(){await $o}async function Wa(){let o=ao,r=`${z}.${Mo()}`;for(let m=2;await F.stat(r).then(()=>!0,()=>!1);m++)r=`${z}.${Mo()}.${m}`;if(await F.rename(z,r).catch(()=>{}),ao=Qr(z,{flags:"a"}),o)o.end();Gr(_.Path.log)}async function Gr(o){let r=await F.readdir(o).catch(()=>[]),a=(await Promise.all(r.filter((t)=>t.includes(".log")&&Io.join(o,t)!==z).map(async(t)=>{let x=await F.stat(Io.join(o,t)).catch(()=>null);return x?.isFile()?{name:t,size:x.size}:null}))).flatMap((t)=>t?[t]:[]).sort((t,x)=>t.name<x.name?-1:t.name>x.name?1:0),f=a.reduce((t,x)=>t+x.size,0),n=a.length,s=a.filter((t)=>{if(n<=ca&&f<=Na)return!1;return f-=t.size,n-=1,!0});await Promise.all(s.map((t)=>F.unlink(Io.join(o,t.name)).catch(()=>{})))}var ba=/token|secret|password|passwd|credential|api[_-]?key|authorization|cookie|set-cookie/i;function Go(o,r){if(ba.test(o)&&r!==void 0&&r!==null)return"[REDACTED]";return r}var Qo=10240;function Ba(o){try{let r=JSON.stringify(o,function(m,a){return m?Go(m,a):a});if(typeof r==="string"&&r.length>Qo)return r.slice(0,Qo)+`\u2026[truncated ${r.length-Qo} chars]`;return r}catch{return"[unserializable]"}}function Vr(o,r=0){let m=o.message;return o.cause instanceof Error&&r<10?m+" Caused by: "+Vr(o.cause,r+1):m}var Cr=Date.now();function Vo(o){o=o||{};let r=o.service;if(r&&typeof r==="string"){let f=_r.get(r);if(f)return f}function m(f,n){let s=Object.entries({...o,...n}).filter(([N,T])=>T!==void 0&&T!==null).map(([N,T])=>{let P=`${N}=`;if(T instanceof Error)return P+Vr(T);let fo=Go(N,T);if(fo!==T)return P+fo;if(typeof T==="object"&&T!==null)return P+Ba(T);return P+T}).join(" "),t=new Date,x=t.getTime()-Cr;return Cr=t.getTime(),[t.toISOString().split(".")[0],"+"+x+"ms",s,f].filter(Boolean).join(" ")+`
3
- `}let a={debug(f,n){if(ro("DEBUG"))mo("DEBUG "+m(f,n))},info(f,n){if(ro("INFO"))mo("INFO "+m(f,n))},error(f,n){if(ro("ERROR"))mo("ERROR "+m(f,n))},warn(f,n){if(ro("WARN"))mo("WARN "+m(f,n))},tag(f,n){if(o)o[f]=n;return a},clone(){return Vo({...o})},time(f,n){let s=Date.now();a.info(f,{status:"started",...n});function t(){a.info(f,{status:"completed",duration:Date.now()-s,...n})}return{stop:t,[Symbol.dispose](){t()}}}};if(r&&typeof r==="string")_r.set(r,a);return a}var Fr={};J(Fr,{listen:()=>Sa,emit:()=>Ja,client:()=>wa});function Sa(o){onmessage=async(r)=>{let m=JSON.parse(r.data);if(m.type==="rpc.request")try{let a=await o[m.method](m.input);postMessage(JSON.stringify({type:"rpc.result",result:a,id:m.id}))}catch(a){postMessage(JSON.stringify({type:"rpc.result",error:a instanceof Error?a.message:String(a),id:m.id}))}}}function Ja(o,r){postMessage(JSON.stringify({type:"rpc.event",event:o,data:r}))}function wa(o){let r=new Map,m=new Map,a=0;return o.onmessage=async(f)=>{let n=JSON.parse(f.data);if(n.type==="rpc.result"){let s=r.get(n.id);if(s)if(r.delete(n.id),"error"in n)s.reject(Error(typeof n.error==="string"?n.error:"RPC call failed"));else s.resolve(n.result)}if(n.type==="rpc.event"){let s=m.get(n.event);if(s)for(let t of s)t(n.data)}},{call(f,n){let s=a++;return new Promise((t,x)=>{r.set(s,{resolve:t,reject:x});try{o.postMessage(JSON.stringify({type:"rpc.request",method:f,input:n,id:s}))}catch(N){r.delete(s),x(N)}})},on(f,n){let s=m.get(f);if(!s)s=new Set,m.set(f,s);return s.add(n),()=>{s.delete(n)}}}}var Ur={};J(Ur,{estimate:()=>Kr});function Kr(o){return Math.max(0,Math.round((o||"").length/4))}var Yr={};J(Yr,{match:()=>Wo,allStructured:()=>za,all:()=>_a});function Wo(o,r){if(o)o=o.replaceAll("\\","/");if(r)r=r.replaceAll("\\","/");let m=r.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");if(m.endsWith(" .*"))m=m.slice(0,-3)+"( .*)?";let a=process.platform==="win32"?"si":"s";return new RegExp("^"+m+"$",a).test(o)}function _a(o,r){let m=X(r,Object.entries,No([([f])=>f.length,"asc"],[([f])=>f,"asc"])),a=void 0;for(let[f,n]of m)if(Wo(o,f)){a=n;continue}return a}function za(o,r){let m=X(r,Object.entries,No([([f])=>f.length,"asc"],[([f])=>f,"asc"])),a=void 0;for(let[f,n]of m){let s=f.split(/\s+/);if(!Wo(o.head,s[0]))continue;if(s.length===1||yo(o.tail,s.slice(1))){a=n;continue}}return a}function yo(o,r){if(r.length===0)return!0;let[m,...a]=r;if(m==="*")return yo(o,a);for(let f=0;f<o.length;f++)if(Wo(o[f],m)&&yo(o.slice(f+1),a))return!0;return!1}export{sr as Vr,tr as Wr,nf as Xr,sf as Yr,X as Zr,jm as _r,Tm as $r,Mm as as,No as bs,Bm as cs,Jm as ds,_m as es,Cm as fs,Qm as gs,Vm as hs,_o as is,Ym as js,Xm as ks,Zm as ls,Em as ms,Wo as ns,Yr as os,lu as ps,ku as qs,Sr as rs,ox as ss,k as ts,rx as us,pr as vs,ur as ws,tm as xs,Of as ys,Nf as zs,Po as As,Eo as Bs,Lo as Cs,ir as Ds,cm as Es,Rr as Fs,Tr as Gs,Mr as Hs,Br as Is,wa as Js,Fr as Ks,Ur as Ls,bo as Ms,io as Ns,rm as Os,H as Ps,_ as Qs,Jr as Rs,xa as Ss,ja as Ts,Ra as Us,Ta as Vs,Ia as Ws,Ma as Xs,Go as Ys,Vo as Zs,yr as _s};