agentix-cli 0.53.0 → 0.54.0

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 (134) hide show
  1. package/dist/{App-R62ZQVSF.js → App-VRTLAPRF.js} +2 -2
  2. package/dist/{ChatApp-AS567EFE.js → ChatApp-YENWPZT4.js} +2 -2
  3. package/dist/{agent-H4NB4BUA.js → agent-HVUGHYBF.js} +2 -2
  4. package/dist/{board-dashboard-E3MUVNVQ.js → board-dashboard-3XJVYDB3.js} +416 -180
  5. package/dist/board-dashboard-3XJVYDB3.js.map +1 -0
  6. package/dist/chunk-2D3RYIDU.js +3 -0
  7. package/dist/chunk-2D3RYIDU.js.map +1 -0
  8. package/dist/{chunk-CCMM5TP4.js → chunk-2TJYZF4E.js} +2 -2
  9. package/dist/{chunk-FSZXY53Z.js → chunk-33QV5O6P.js} +2 -2
  10. package/dist/{chunk-NF52Q3TV.js → chunk-37EABIOJ.js} +2 -2
  11. package/dist/chunk-3RCFUIYR.js +29 -0
  12. package/dist/chunk-3RCFUIYR.js.map +1 -0
  13. package/dist/{chunk-6OOK7Y4S.js → chunk-3W2KMI5O.js} +2 -2
  14. package/dist/{chunk-47EEUZBK.js → chunk-4FFWNPFX.js} +4 -4
  15. package/dist/chunk-4FFWNPFX.js.map +1 -0
  16. package/dist/{chunk-FS4WBYY3.js → chunk-4HNHHKJF.js} +2 -2
  17. package/dist/{chunk-SABOPOYX.js → chunk-6JHA3ZE6.js} +139 -139
  18. package/dist/chunk-6JHA3ZE6.js.map +1 -0
  19. package/dist/{chunk-QU6ZUKAD.js → chunk-BKDUCPZ3.js} +2 -2
  20. package/dist/{chunk-IDYP7G7Z.js → chunk-BMSPRUEJ.js} +33 -33
  21. package/dist/{chunk-IDYP7G7Z.js.map → chunk-BMSPRUEJ.js.map} +1 -1
  22. package/dist/{chunk-TH5KNJLA.js → chunk-ENRJ2QEH.js} +2 -2
  23. package/dist/{chunk-C5JXPMTW.js → chunk-HQMISQ7L.js} +2 -2
  24. package/dist/{chunk-7DPKPBRJ.js → chunk-KLDGJSR5.js} +2 -2
  25. package/dist/{ntfy-ZY2NPGBA.js → chunk-KZKDVIOE.js} +3 -3
  26. package/dist/chunk-KZKDVIOE.js.map +1 -0
  27. package/dist/{chunk-KB7YIM3W.js → chunk-M67AN4J7.js} +2 -2
  28. package/dist/{chunk-WKTFP3SK.js → chunk-NO2HOK4B.js} +2 -2
  29. package/dist/chunk-QD6IICK7.js +2 -0
  30. package/dist/chunk-QD6IICK7.js.map +1 -0
  31. package/dist/{chunk-OV35MJKS.js → chunk-QX4R5WY7.js} +2 -2
  32. package/dist/{chunk-PGJL5V6Y.js → chunk-QYHABRLM.js} +2 -2
  33. package/dist/{chunk-7OWXFLAM.js → chunk-TLFJVLVQ.js} +166 -160
  34. package/dist/chunk-TLFJVLVQ.js.map +1 -0
  35. package/dist/{chunk-OMTRHHZJ.js → chunk-UYMK3XNB.js} +44 -45
  36. package/dist/chunk-UYMK3XNB.js.map +1 -0
  37. package/dist/{chunk-VD4TMPJI.js → chunk-WLRHL2P7.js} +2 -2
  38. package/dist/chunk-WWMFNLKD.js +10 -0
  39. package/dist/chunk-WWMFNLKD.js.map +1 -0
  40. package/dist/{chunk-KJWBQZT7.js → chunk-XWU7O3S5.js} +2 -2
  41. package/dist/{chunk-KFG6WWFS.js → chunk-ZOJUHPD5.js} +2 -2
  42. package/dist/cli.js +1 -1
  43. package/dist/cli.js.map +1 -1
  44. package/dist/client-N4XQEAVL.js +2 -0
  45. package/dist/{compaction-NWPBPWY2.js → compaction-H5U32UU6.js} +2 -2
  46. package/dist/{config-3SW4V44Z.js → config-KHKIY6LI.js} +2 -2
  47. package/dist/config-mutator-ZZKFQ7HJ.js +2 -0
  48. package/dist/doctor-QICAXIQB.js +2 -0
  49. package/dist/index.d.ts +88 -0
  50. package/dist/index.js +1 -1
  51. package/dist/index.js.map +1 -1
  52. package/dist/memory-extract-F76BE6KA.js +2 -0
  53. package/dist/ntfy-52EXHVMD.js +2 -0
  54. package/dist/program-ZWNGK3RB.js +2 -0
  55. package/dist/{promote-DJFMTLRC.js → promote-H6ZHJXTY.js} +2 -2
  56. package/dist/push-HEDA6P3B.js +2 -0
  57. package/dist/push-HEDA6P3B.js.map +1 -0
  58. package/dist/push-keys-2DTD7YNQ.js +2 -0
  59. package/dist/push-store-LXTYULUF.js +2 -0
  60. package/dist/query-FTE4FLYK.js +2 -0
  61. package/dist/registry-HDOFVNRK.js +2 -0
  62. package/dist/{request-planner-2H7HCUCZ.js → request-planner-ABD4WIGM.js} +2 -2
  63. package/dist/{review-candidates-U7R64OCS.js → review-candidates-B6574GOJ.js} +2 -2
  64. package/dist/{routing-LVQH6WOJ.js → routing-BGKZOHOA.js} +2 -2
  65. package/dist/schedule-tool-UDHXTKWV.js +2 -0
  66. package/dist/scheduler-NQM3HVUY.js +2 -0
  67. package/dist/scheduler-NQM3HVUY.js.map +1 -0
  68. package/dist/{seat-2KGFNCIW.js → seat-VGST5AQB.js} +2 -2
  69. package/dist/seat-VGST5AQB.js.map +1 -0
  70. package/dist/{select-XGK27RPP.js → select-Y7SBUCGJ.js} +2 -2
  71. package/dist/{set-enabled-7YGN2FAZ.js → set-enabled-ARKMDLXN.js} +2 -2
  72. package/dist/{tool-HKDIZ6I4.js → tool-5EVYUN2G.js} +2 -2
  73. package/dist/wiki-GREI2TSP.js +2 -0
  74. package/dist/wiki-GREI2TSP.js.map +1 -0
  75. package/package.json +3 -1
  76. package/dist/board-dashboard-E3MUVNVQ.js.map +0 -1
  77. package/dist/chunk-47EEUZBK.js.map +0 -1
  78. package/dist/chunk-7OWXFLAM.js.map +0 -1
  79. package/dist/chunk-D4HAR3L3.js +0 -28
  80. package/dist/chunk-D4HAR3L3.js.map +0 -1
  81. package/dist/chunk-HRBKSZ34.js +0 -2
  82. package/dist/chunk-HRBKSZ34.js.map +0 -1
  83. package/dist/chunk-OMTRHHZJ.js.map +0 -1
  84. package/dist/chunk-SABOPOYX.js.map +0 -1
  85. package/dist/client-XTQDYMOX.js +0 -2
  86. package/dist/config-mutator-H32FXUYJ.js +0 -2
  87. package/dist/doctor-J6RCHFVE.js +0 -2
  88. package/dist/memory-extract-MGGXIZTE.js +0 -2
  89. package/dist/ntfy-ZY2NPGBA.js.map +0 -1
  90. package/dist/program-SQTOPCQW.js +0 -2
  91. package/dist/query-UAZUMU4N.js +0 -2
  92. package/dist/registry-4OUBA2TY.js +0 -2
  93. package/dist/schedule-tool-2BONJVCJ.js +0 -2
  94. package/dist/scheduler-7CEXDECA.js +0 -2
  95. package/dist/wiki-6YT7B5HU.js +0 -2
  96. /package/dist/{App-R62ZQVSF.js.map → App-VRTLAPRF.js.map} +0 -0
  97. /package/dist/{ChatApp-AS567EFE.js.map → ChatApp-YENWPZT4.js.map} +0 -0
  98. /package/dist/{agent-H4NB4BUA.js.map → agent-HVUGHYBF.js.map} +0 -0
  99. /package/dist/{chunk-CCMM5TP4.js.map → chunk-2TJYZF4E.js.map} +0 -0
  100. /package/dist/{chunk-FSZXY53Z.js.map → chunk-33QV5O6P.js.map} +0 -0
  101. /package/dist/{chunk-NF52Q3TV.js.map → chunk-37EABIOJ.js.map} +0 -0
  102. /package/dist/{chunk-6OOK7Y4S.js.map → chunk-3W2KMI5O.js.map} +0 -0
  103. /package/dist/{chunk-FS4WBYY3.js.map → chunk-4HNHHKJF.js.map} +0 -0
  104. /package/dist/{chunk-QU6ZUKAD.js.map → chunk-BKDUCPZ3.js.map} +0 -0
  105. /package/dist/{chunk-TH5KNJLA.js.map → chunk-ENRJ2QEH.js.map} +0 -0
  106. /package/dist/{chunk-C5JXPMTW.js.map → chunk-HQMISQ7L.js.map} +0 -0
  107. /package/dist/{chunk-7DPKPBRJ.js.map → chunk-KLDGJSR5.js.map} +0 -0
  108. /package/dist/{chunk-KB7YIM3W.js.map → chunk-M67AN4J7.js.map} +0 -0
  109. /package/dist/{chunk-WKTFP3SK.js.map → chunk-NO2HOK4B.js.map} +0 -0
  110. /package/dist/{chunk-OV35MJKS.js.map → chunk-QX4R5WY7.js.map} +0 -0
  111. /package/dist/{chunk-PGJL5V6Y.js.map → chunk-QYHABRLM.js.map} +0 -0
  112. /package/dist/{chunk-VD4TMPJI.js.map → chunk-WLRHL2P7.js.map} +0 -0
  113. /package/dist/{chunk-KJWBQZT7.js.map → chunk-XWU7O3S5.js.map} +0 -0
  114. /package/dist/{chunk-KFG6WWFS.js.map → chunk-ZOJUHPD5.js.map} +0 -0
  115. /package/dist/{client-XTQDYMOX.js.map → client-N4XQEAVL.js.map} +0 -0
  116. /package/dist/{compaction-NWPBPWY2.js.map → compaction-H5U32UU6.js.map} +0 -0
  117. /package/dist/{config-3SW4V44Z.js.map → config-KHKIY6LI.js.map} +0 -0
  118. /package/dist/{config-mutator-H32FXUYJ.js.map → config-mutator-ZZKFQ7HJ.js.map} +0 -0
  119. /package/dist/{doctor-J6RCHFVE.js.map → doctor-QICAXIQB.js.map} +0 -0
  120. /package/dist/{memory-extract-MGGXIZTE.js.map → memory-extract-F76BE6KA.js.map} +0 -0
  121. /package/dist/{program-SQTOPCQW.js.map → ntfy-52EXHVMD.js.map} +0 -0
  122. /package/dist/{promote-DJFMTLRC.js.map → program-ZWNGK3RB.js.map} +0 -0
  123. /package/dist/{query-UAZUMU4N.js.map → promote-H6ZHJXTY.js.map} +0 -0
  124. /package/dist/{registry-4OUBA2TY.js.map → push-keys-2DTD7YNQ.js.map} +0 -0
  125. /package/dist/{routing-LVQH6WOJ.js.map → push-store-LXTYULUF.js.map} +0 -0
  126. /package/dist/{schedule-tool-2BONJVCJ.js.map → query-FTE4FLYK.js.map} +0 -0
  127. /package/dist/{scheduler-7CEXDECA.js.map → registry-HDOFVNRK.js.map} +0 -0
  128. /package/dist/{request-planner-2H7HCUCZ.js.map → request-planner-ABD4WIGM.js.map} +0 -0
  129. /package/dist/{review-candidates-U7R64OCS.js.map → review-candidates-B6574GOJ.js.map} +0 -0
  130. /package/dist/{seat-2KGFNCIW.js.map → routing-BGKZOHOA.js.map} +0 -0
  131. /package/dist/{wiki-6YT7B5HU.js.map → schedule-tool-UDHXTKWV.js.map} +0 -0
  132. /package/dist/{select-XGK27RPP.js.map → select-Y7SBUCGJ.js.map} +0 -0
  133. /package/dist/{set-enabled-7YGN2FAZ.js.map → set-enabled-ARKMDLXN.js.map} +0 -0
  134. /package/dist/{tool-HKDIZ6I4.js.map → tool-5EVYUN2G.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import{a as R,b as j,c as O,d as W,e as D}from"./chunk-TFVUOC2C.js";import{b as C}from"./chunk-2GIDVZ4H.js";import{v,w as Q}from"./chunk-NF52Q3TV.js";import{b as $,c as M}from"./chunk-QOYAX2FT.js";import{readFileSync as T,existsSync as _}from"fs";Q();import{resolve as b}from"path";import{execSync as Y}from"child_process";async function V(n,i,s,e={}){let d=e.selectorModel??"haiku",a=e.synthModel??"sonnet",c=e.maxCandidates??3,l=e.maxHops??2,r=e.maxArticles??8,p=e.timeoutMs??6e4,u=e.log??console.error.bind(console,"[wiki-query]"),h=b(i.baseDir,"_index.md");if(!_(h))return w("no-catalog",n,"No _index.md found \u2014 run `agentx wiki status` to rebuild.");let k=T(h,"utf-8"),t=Date.now(),g=[],m="";try{let o=await B(n,i,s,c);o?(g=o,m=`[wiki-rerank seat] ${o.map(y=>y.title).join(" | ")}`):(m=await N(I(n,k,c),d,p),g=F(m))}catch(o){return u("selector failed:",o?.message),{...w("error",n,`Selector: ${o?.message||"unknown"}`),trace:{selectorMs:Date.now()-t,synthesisMs:0,selectorOutput:m}}}let A=Date.now()-t;if(g.length===0)return{...w("no-candidates",n,"Selector returned no candidates."),trace:{selectorMs:A,synthesisMs:0,selectorOutput:m}};let f=E(g,i,s,l,r);if(f.length===0)return{...w("no-candidates",n,"Candidates did not resolve to readable articles."),candidates:g,trace:{selectorMs:A,synthesisMs:0,selectorOutput:m}};let S=Date.now(),x="";try{x=await N(L(n,f),a,p*2)}catch(o){return u("synthesis failed:",o?.message),{...w("error",n,`Synthesis: ${o?.message||"unknown"}`),candidates:g,walked:f.map(y=>({title:y.meta.title,path:y.path,type:y.meta.type,hop:y.hop??0})),trace:{selectorMs:A,synthesisMs:Date.now()-S,selectorOutput:m}}}let P=Date.now()-S;return{answer:x.trim(),citations:f.map(o=>({title:o.meta.title,path:o.path,type:o.meta.type})),candidates:g,walked:f.map(o=>({title:o.meta.title,path:o.path,type:o.meta.type,hop:o.hop??0})),status:"ok",trace:{selectorMs:A,synthesisMs:P,selectorOutput:m}}}function w(n,i,s){return{answer:"",citations:[],candidates:[],walked:[],status:n,error:s}}function E(n,i,s,e,d){let a=new Map;for(let r of i.listArticles(s||""))a.set(r.meta.title.toLowerCase(),r.path);let c=new Map,l=[];for(let r of n)c.has(r.path)||l.push({path:r.path,hop:0});for(;l.length&&c.size<d;){let r=l.shift();if(c.has(r.path)||r.hop>e)continue;let p=s?i.readArticleAs(r.path,s):i.readArticle(r.path);if(p&&(c.set(r.path,{...p,hop:r.hop}),!(r.hop>=e)))for(let u of p.meta.related||[]){let h=a.get(u.toLowerCase());h&&!c.has(h)&&l.push({path:h,hop:r.hop+1})}}return Array.from(c.values())}async function B(n,i,s,e){try{let a=(i.rebuildIndex().articles??[]).filter(t=>t.path&&!t.path.includes("/_versions/"));if(a.length<2)return null;let c=a.map(t=>[t.title,(t.tags??[]).join(" "),(t.related??[]).join(" ")].join(" ")),l=M(n,$(c)).map(t=>t.docIndex);for(let t=0;t<a.length;t++)l.includes(t)||l.push(t);let p=l.slice(0,j).map(t=>({id:`k${t}`,title:a[t].title||a[t].path,tags:a[t].tags,excerpt:[a[t].type?`type: ${a[t].type}`:"",(a[t].related??[]).length?`related: ${(a[t].related??[]).join(", ")}`:""].filter(Boolean).join(" \xB7 ")})),u=await v(R,O({query:n,candidates:p,excerptChars:300}),W(p),{features:{agent:s??"unknown",stage:"catalog-selector"}});if(!u||u.mode!=="active")return null;let k=D(u.answers,p).ranked.slice(0,e).map(t=>a[Number(t.slice(1))]).filter(Boolean).map(t=>({title:t.title,path:t.path}));return k.length>0?k:null}catch{return null}}function I(n,i,s){return`You are picking candidate articles from a wiki catalog to answer a question. You do NOT answer the question. You pick which articles the answer is likely to come from.
1
+ import{a as R,b as j,c as O,d as W,e as D}from"./chunk-TFVUOC2C.js";import{b as C}from"./chunk-2GIDVZ4H.js";import{v,w as Q}from"./chunk-37EABIOJ.js";import{b as $,c as M}from"./chunk-QOYAX2FT.js";import{readFileSync as T,existsSync as _}from"fs";Q();import{resolve as b}from"path";import{execSync as Y}from"child_process";async function V(n,i,s,e={}){let d=e.selectorModel??"haiku",a=e.synthModel??"sonnet",c=e.maxCandidates??3,l=e.maxHops??2,r=e.maxArticles??8,p=e.timeoutMs??6e4,u=e.log??console.error.bind(console,"[wiki-query]"),h=b(i.baseDir,"_index.md");if(!_(h))return w("no-catalog",n,"No _index.md found \u2014 run `agentx wiki status` to rebuild.");let k=T(h,"utf-8"),t=Date.now(),g=[],m="";try{let o=await B(n,i,s,c);o?(g=o,m=`[wiki-rerank seat] ${o.map(y=>y.title).join(" | ")}`):(m=await N(I(n,k,c),d,p),g=F(m))}catch(o){return u("selector failed:",o?.message),{...w("error",n,`Selector: ${o?.message||"unknown"}`),trace:{selectorMs:Date.now()-t,synthesisMs:0,selectorOutput:m}}}let A=Date.now()-t;if(g.length===0)return{...w("no-candidates",n,"Selector returned no candidates."),trace:{selectorMs:A,synthesisMs:0,selectorOutput:m}};let f=E(g,i,s,l,r);if(f.length===0)return{...w("no-candidates",n,"Candidates did not resolve to readable articles."),candidates:g,trace:{selectorMs:A,synthesisMs:0,selectorOutput:m}};let S=Date.now(),x="";try{x=await N(L(n,f),a,p*2)}catch(o){return u("synthesis failed:",o?.message),{...w("error",n,`Synthesis: ${o?.message||"unknown"}`),candidates:g,walked:f.map(y=>({title:y.meta.title,path:y.path,type:y.meta.type,hop:y.hop??0})),trace:{selectorMs:A,synthesisMs:Date.now()-S,selectorOutput:m}}}let P=Date.now()-S;return{answer:x.trim(),citations:f.map(o=>({title:o.meta.title,path:o.path,type:o.meta.type})),candidates:g,walked:f.map(o=>({title:o.meta.title,path:o.path,type:o.meta.type,hop:o.hop??0})),status:"ok",trace:{selectorMs:A,synthesisMs:P,selectorOutput:m}}}function w(n,i,s){return{answer:"",citations:[],candidates:[],walked:[],status:n,error:s}}function E(n,i,s,e,d){let a=new Map;for(let r of i.listArticles(s||""))a.set(r.meta.title.toLowerCase(),r.path);let c=new Map,l=[];for(let r of n)c.has(r.path)||l.push({path:r.path,hop:0});for(;l.length&&c.size<d;){let r=l.shift();if(c.has(r.path)||r.hop>e)continue;let p=s?i.readArticleAs(r.path,s):i.readArticle(r.path);if(p&&(c.set(r.path,{...p,hop:r.hop}),!(r.hop>=e)))for(let u of p.meta.related||[]){let h=a.get(u.toLowerCase());h&&!c.has(h)&&l.push({path:h,hop:r.hop+1})}}return Array.from(c.values())}async function B(n,i,s,e){try{let a=(i.rebuildIndex().articles??[]).filter(t=>t.path&&!t.path.includes("/_versions/"));if(a.length<2)return null;let c=a.map(t=>[t.title,(t.tags??[]).join(" "),(t.related??[]).join(" ")].join(" ")),l=M(n,$(c)).map(t=>t.docIndex);for(let t=0;t<a.length;t++)l.includes(t)||l.push(t);let p=l.slice(0,j).map(t=>({id:`k${t}`,title:a[t].title||a[t].path,tags:a[t].tags,excerpt:[a[t].type?`type: ${a[t].type}`:"",(a[t].related??[]).length?`related: ${(a[t].related??[]).join(", ")}`:""].filter(Boolean).join(" \xB7 ")})),u=await v(R,O({query:n,candidates:p,excerptChars:300}),W(p),{features:{agent:s??"unknown",stage:"catalog-selector"}});if(!u||u.mode!=="active")return null;let k=D(u.answers,p).ranked.slice(0,e).map(t=>a[Number(t.slice(1))]).filter(Boolean).map(t=>({title:t.title,path:t.path}));return k.length>0?k:null}catch{return null}}function I(n,i,s){return`You are picking candidate articles from a wiki catalog to answer a question. You do NOT answer the question. You pick which articles the answer is likely to come from.
2
2
 
3
3
  ## Question
4
4
 
@@ -42,4 +42,4 @@ ${s}
42
42
  Answer the question in 2\u20136 sentences. Cite articles by their title in square brackets like [Article Title]. If the articles do not answer the question, say so plainly (do not invent). Prefer concrete facts over hedging.
43
43
 
44
44
  Output ONLY the answer \u2014 no preamble, no "here is my answer:", no markdown fencing.`}function F(n){let i=n.match(/\[[\s\S]*?\]/);if(!i)return[];try{let s=JSON.parse(i[0]);return Array.isArray(s)?s.filter(e=>e&&typeof e.title=="string"&&typeof e.path=="string").map(e=>({title:e.title,path:e.path})):[]}catch{return[]}}async function N(n,i,s){let{writeFileSync:e,mkdirSync:d,rmSync:a}=await import("fs"),{tmpdir:c}=await import("os"),l=b(c(),`agentx-wiki-query-${process.pid}`);d(l,{recursive:!0});let r=b(l,`prompt-${Date.now()}.txt`);e(r,n);try{let p=`cat '${r}' | claude -p - --output-format json --max-turns 1 --model ${i} --disallowedTools "Bash Read Write Edit Glob Grep Agent WebSearch WebFetch NotebookEdit"`,u=Y(p,{env:C({...process.env}),encoding:"utf-8",timeout:s,maxBuffer:4*1024*1024});try{let h=JSON.parse(u);return String(h.result||h.content||"")}catch{return u}}finally{try{a(r,{force:!0})}catch{}}}export{V as a};
45
- //# sourceMappingURL=chunk-QU6ZUKAD.js.map
45
+ //# sourceMappingURL=chunk-BKDUCPZ3.js.map