agentix-cli 0.104.1 → 0.105.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.
- package/dist/{App-A7WZMOGA.js → App-2SSUXHUJ.js} +2 -2
- package/dist/{ChatApp-EWNT36ZE.js → ChatApp-RLOFB5CO.js} +2 -2
- package/dist/{agent-NPE76XHC.js → agent-PP6UH3O2.js} +2 -2
- package/dist/{board-dashboard-5EPKRDEW.js → board-dashboard-O3AYVTTF.js} +4 -4
- package/dist/{chunk-CUS7WGZT.js → chunk-2XLOIA52.js} +2 -2
- package/dist/{chunk-IA3BC7M3.js → chunk-3MMSS5JF.js} +2 -2
- package/dist/{chunk-IA3BC7M3.js.map → chunk-3MMSS5JF.js.map} +1 -1
- package/dist/{chunk-MVLNVMWI.js → chunk-4FSU5XTD.js} +2 -2
- package/dist/{chunk-BUAVQUHR.js → chunk-AK4HS2PQ.js} +2 -2
- package/dist/{chunk-N4IWNCH3.js → chunk-BBKFCHJV.js} +2 -2
- package/dist/{chunk-HE4PDESB.js → chunk-BTHH5ENX.js} +2 -2
- package/dist/{chunk-OLUAEBHJ.js → chunk-D6EX6VA5.js} +2 -2
- package/dist/{chunk-DEMIKEFB.js → chunk-DXOTH6MF.js} +30 -30
- package/dist/chunk-DXOTH6MF.js.map +1 -0
- package/dist/{chunk-76KJXOEV.js → chunk-E4RQHTNB.js} +2 -2
- package/dist/{chunk-MZQQVT3G.js → chunk-EB3B2FRY.js} +2 -2
- package/dist/{chunk-IO74N5DB.js → chunk-HFZTZVQW.js} +85 -85
- package/dist/chunk-HFZTZVQW.js.map +1 -0
- package/dist/{chunk-FZ7VHFL5.js → chunk-IM7SSJ67.js} +2 -2
- package/dist/{chunk-XHUOWYNY.js → chunk-J5LOMJ2Y.js} +2 -2
- package/dist/{chunk-ZBKKOUNJ.js → chunk-KPAGMXSL.js} +2 -2
- package/dist/{chunk-IOPAWHKW.js → chunk-KU3XT5S2.js} +2 -2
- package/dist/{chunk-NWNVHL57.js → chunk-N7YQ4IAR.js} +2 -2
- package/dist/{chunk-WTFNEPJ7.js → chunk-OREGWHKS.js} +2 -2
- package/dist/{chunk-32BPHJ4I.js → chunk-QFIIZIYX.js} +2 -2
- package/dist/{chunk-BEFKOHRC.js → chunk-UGM56ULD.js} +2 -2
- package/dist/{chunk-25RQQ55U.js → chunk-UGNXKP6Q.js} +2 -2
- package/dist/{chunk-Q57GZPDA.js → chunk-ZE7P7L2L.js} +2 -2
- package/dist/cli.js +1 -1
- package/dist/{client-ZX7AY7H3.js → client-LK2BLOBZ.js} +2 -2
- package/dist/{config-BXOS2PLC.js → config-OQKZUWUT.js} +2 -2
- package/dist/config-mutator-S3FP3A7K.js +2 -0
- package/dist/{doctor-P3QQP33C.js → doctor-ON2EECFT.js} +2 -2
- package/dist/index.d.ts +12 -1
- package/dist/index.js +1 -1
- package/dist/{program-SAEPPSSW.js → program-G4IWH53Z.js} +14 -14
- package/dist/{promote-FHX4Q62Z.js → promote-KKLC2ENK.js} +2 -2
- package/dist/{query-WBK3YEPV.js → query-JEOWXBWZ.js} +2 -2
- package/dist/{registry-T5HSN66G.js → registry-6DGUQ5YT.js} +2 -2
- package/dist/{request-planner-3LA5RAKG.js → request-planner-SXR7HCE7.js} +2 -2
- package/dist/{review-candidates-QV66TOCL.js → review-candidates-OBAXZ6IM.js} +2 -2
- package/dist/{routing-HF4XVD4Y.js → routing-GW7LSHRJ.js} +2 -2
- package/dist/schedule-tool-TX7EPMQZ.js +2 -0
- package/dist/scheduler-4SD7YBW3.js +2 -0
- package/dist/{seat-NQTZUIKH.js → seat-4KA3YZEN.js} +2 -2
- package/dist/{select-3GVC5RDA.js → select-WLYRCSSM.js} +2 -2
- package/dist/{set-enabled-SXCE2MZX.js → set-enabled-DHSDYIIA.js} +2 -2
- package/dist/{tool-23GOQNUW.js → tool-OBS4P2BP.js} +2 -2
- package/dist/{tool-E6JBENAN.js → tool-YKBDZ7K7.js} +2 -2
- package/dist/wiki-237HZZNR.js +2 -0
- package/package.json +1 -1
- package/dist/chunk-DEMIKEFB.js.map +0 -1
- package/dist/chunk-IO74N5DB.js.map +0 -1
- package/dist/config-mutator-KRAUD3CA.js +0 -2
- package/dist/schedule-tool-V66FX5XL.js +0 -2
- package/dist/scheduler-XVMWASQR.js +0 -2
- package/dist/wiki-VM2RTHVF.js +0 -2
- /package/dist/{App-A7WZMOGA.js.map → App-2SSUXHUJ.js.map} +0 -0
- /package/dist/{ChatApp-EWNT36ZE.js.map → ChatApp-RLOFB5CO.js.map} +0 -0
- /package/dist/{agent-NPE76XHC.js.map → agent-PP6UH3O2.js.map} +0 -0
- /package/dist/{board-dashboard-5EPKRDEW.js.map → board-dashboard-O3AYVTTF.js.map} +0 -0
- /package/dist/{chunk-CUS7WGZT.js.map → chunk-2XLOIA52.js.map} +0 -0
- /package/dist/{chunk-MVLNVMWI.js.map → chunk-4FSU5XTD.js.map} +0 -0
- /package/dist/{chunk-BUAVQUHR.js.map → chunk-AK4HS2PQ.js.map} +0 -0
- /package/dist/{chunk-N4IWNCH3.js.map → chunk-BBKFCHJV.js.map} +0 -0
- /package/dist/{chunk-HE4PDESB.js.map → chunk-BTHH5ENX.js.map} +0 -0
- /package/dist/{chunk-OLUAEBHJ.js.map → chunk-D6EX6VA5.js.map} +0 -0
- /package/dist/{chunk-76KJXOEV.js.map → chunk-E4RQHTNB.js.map} +0 -0
- /package/dist/{chunk-MZQQVT3G.js.map → chunk-EB3B2FRY.js.map} +0 -0
- /package/dist/{chunk-FZ7VHFL5.js.map → chunk-IM7SSJ67.js.map} +0 -0
- /package/dist/{chunk-XHUOWYNY.js.map → chunk-J5LOMJ2Y.js.map} +0 -0
- /package/dist/{chunk-ZBKKOUNJ.js.map → chunk-KPAGMXSL.js.map} +0 -0
- /package/dist/{chunk-IOPAWHKW.js.map → chunk-KU3XT5S2.js.map} +0 -0
- /package/dist/{chunk-NWNVHL57.js.map → chunk-N7YQ4IAR.js.map} +0 -0
- /package/dist/{chunk-WTFNEPJ7.js.map → chunk-OREGWHKS.js.map} +0 -0
- /package/dist/{chunk-32BPHJ4I.js.map → chunk-QFIIZIYX.js.map} +0 -0
- /package/dist/{chunk-BEFKOHRC.js.map → chunk-UGM56ULD.js.map} +0 -0
- /package/dist/{chunk-25RQQ55U.js.map → chunk-UGNXKP6Q.js.map} +0 -0
- /package/dist/{chunk-Q57GZPDA.js.map → chunk-ZE7P7L2L.js.map} +0 -0
- /package/dist/{client-ZX7AY7H3.js.map → client-LK2BLOBZ.js.map} +0 -0
- /package/dist/{config-BXOS2PLC.js.map → config-OQKZUWUT.js.map} +0 -0
- /package/dist/{config-mutator-KRAUD3CA.js.map → config-mutator-S3FP3A7K.js.map} +0 -0
- /package/dist/{doctor-P3QQP33C.js.map → doctor-ON2EECFT.js.map} +0 -0
- /package/dist/{program-SAEPPSSW.js.map → program-G4IWH53Z.js.map} +0 -0
- /package/dist/{promote-FHX4Q62Z.js.map → promote-KKLC2ENK.js.map} +0 -0
- /package/dist/{query-WBK3YEPV.js.map → query-JEOWXBWZ.js.map} +0 -0
- /package/dist/{registry-T5HSN66G.js.map → registry-6DGUQ5YT.js.map} +0 -0
- /package/dist/{request-planner-3LA5RAKG.js.map → request-planner-SXR7HCE7.js.map} +0 -0
- /package/dist/{review-candidates-QV66TOCL.js.map → review-candidates-OBAXZ6IM.js.map} +0 -0
- /package/dist/{routing-HF4XVD4Y.js.map → routing-GW7LSHRJ.js.map} +0 -0
- /package/dist/{schedule-tool-V66FX5XL.js.map → schedule-tool-TX7EPMQZ.js.map} +0 -0
- /package/dist/{scheduler-XVMWASQR.js.map → scheduler-4SD7YBW3.js.map} +0 -0
- /package/dist/{seat-NQTZUIKH.js.map → seat-4KA3YZEN.js.map} +0 -0
- /package/dist/{select-3GVC5RDA.js.map → select-WLYRCSSM.js.map} +0 -0
- /package/dist/{set-enabled-SXCE2MZX.js.map → set-enabled-DHSDYIIA.js.map} +0 -0
- /package/dist/{tool-23GOQNUW.js.map → tool-OBS4P2BP.js.map} +0 -0
- /package/dist/{tool-E6JBENAN.js.map → tool-YKBDZ7K7.js.map} +0 -0
- /package/dist/{wiki-VM2RTHVF.js.map → wiki-237HZZNR.js.map} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{b as C}from"./chunk-CECHWYJ2.js";import{a as L,b as _,c as R,d as j,e as M,j as I}from"./chunk-
|
|
1
|
+
import{b as C}from"./chunk-CECHWYJ2.js";import{a as L,b as _,c as R,d as j,e as M,j as I}from"./chunk-ZE7P7L2L.js";import{v as x,w as O}from"./chunk-BTHH5ENX.js";import{c as A,d as D}from"./chunk-QOYAX2FT.js";import{readFileSync as y,writeFileSync as b,appendFileSync as P,existsSync as w,mkdirSync as $,readdirSync as v,statSync as B}from"fs";import{resolve as u,join as N,relative as k,dirname as U}from"path";O();var T=class{baseDir;rawDir;log;constructor(t=u(process.cwd(),".agentx/wiki"),e=console.error.bind(console,"[wiki]")){this.baseDir=t,this.rawDir=u(t,"raw/entries"),this.log=e,$(this.rawDir,{recursive:!0}),$(u(t,"raw"),{recursive:!0}),this.ensureSchema()}canRead(t,e){return t.access==="public"?!0:e?!!(t.owner===e||t.access==="shared"&&t.sharedWith?.includes(e)):!1}canWrite(t,e){return t.owner===e}addEntry(t){let e=`${t.date}_${t.id}.md`,r=u(this.rawDir,e),n=["---",`id: ${t.id}`,`date: ${t.date}`,`agent: ${t.agentId}`,`source: ${t.source}`];if(t.sourceContext&&n.push(`context: ${t.sourceContext}`),t.meta)for(let[a,s]of Object.entries(t.meta))n.push(`${a}: ${JSON.stringify(s)}`);return n.push("---","",t.content),b(r,n.join(`
|
|
2
2
|
`)),this.appendLog("ingest",`${t.id} from ${t.agentId} via ${t.source}`),e}listEntries(t){if(!w(this.rawDir))return[];let e=v(this.rawDir).filter(n=>n.endsWith(".md")).sort(),r=[];for(let n of e){let a=y(u(this.rawDir,n),"utf-8"),s=this.parseEntry(a,n);s&&(t?.agentId&&s.agentId!==t.agentId||t?.after&&s.date<t.after||t?.before&&s.date>t.before||r.push(s))}return r}parseEntry(t,e){let r=t.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);if(!r)return null;let n=r[1],a=r[2].trim(),s=c=>n.match(new RegExp(`^${c}:\\s*(.+)$`,"m"))?.[1]?.trim()||"",o=new Set(["id","date","agent","source","context"]),i={};for(let c of n.split(`
|
|
3
3
|
`)){let l=c.match(/^(\w+):\s*(.+)$/);if(!(!l||o.has(l[1])))try{i[l[1]]=JSON.parse(l[2])}catch{i[l[1]]=l[2].trim()}}return{id:s("id")||e.replace(".md",""),date:s("date"),agentId:s("agent"),source:s("source"),sourceContext:s("context")||void 0,content:a,meta:Object.keys(i).length>0?i:void 0}}writeArticle(t,e,r,n){let a=this.readArticle(t);if(a&&!this.canWrite(a.meta,n))return this.log(`Permission denied: "${n}" cannot write "${t}" (owner: ${a.meta.owner})`),!1;e.type&&!C(e.type)&&(this.log(`Dropping invalid article type "${e.type}" for "${t}" \u2014 enum is [person, project, place, concept, event, decision, pattern]`),e={...e,type:void 0});let s=u(this.baseDir,t);a&&this.saveVersion(t,s),$(U(s),{recursive:!0});let o=["---",`title: "${e.title}"`];e.type&&o.push(`type: ${e.type}`),e.related?.length&&o.push(`related: [${e.related.map(c=>`"${c}"`).join(", ")}]`),o.push(`tags: [${(e.tags||[]).map(c=>`"${c}"`).join(", ")}]`,`owner: ${e.owner}`,`access: ${e.access}`),e.sharedWith?.length&&o.push(`shared_with: [${e.sharedWith.map(c=>`"${c}"`).join(", ")}]`),o.push(`created: ${e.created}`,`last_updated: ${e.lastUpdated}`,`sources: [${e.sources.map(c=>`"${c}"`).join(", ")}]`),e.graphPath?.length&&o.push(`graph_path: [${e.graphPath.map(c=>`"${c}"`).join(", ")}]`),o.push("---","",r),b(s,o.join(`
|
|
4
4
|
`));let i=a?"update":"create";return this.appendLog(i,`${e.title} [${(e.tags||[]).slice(0,5).join(", ")}] by ${n} at ${t}`),!0}saveVersion(t,e){try{if(!w(e))return;let r=y(e,"utf-8"),n=new Date().toISOString().replace(/[:.]/g,"-"),a=u(this.baseDir,"_versions",t.replace(/\.md$/,""));$(a,{recursive:!0}),b(u(a,`${n}.md`),r)}catch{}}getVersions(t){let e=u(this.baseDir,"_versions",t.replace(/\.md$/,""));if(!w(e))return[];try{return v(e).filter(r=>r.endsWith(".md")).sort().reverse().map(r=>({timestamp:r.replace(/\.md$/,"").replace(/-/g,(n,a)=>a<19?a===10?"T":a===13||a===16?":":"-":n),path:u(e,r)}))}catch{return[]}}restoreVersion(t,e){let n=this.getVersions(t).find(a=>a.timestamp.startsWith(e));if(!n)return!1;try{let a=y(n.path,"utf-8"),s=u(this.baseDir,t);return this.saveVersion(t,s),b(s,a),this.appendLog("restore",`${t} restored to ${e}`),!0}catch{return!1}}readArticle(t){let e=u(this.baseDir,t);if(!w(e))return null;let r=y(e,"utf-8");return this.parseArticle(r,t)}readArticleAs(t,e){let r=this.readArticle(t);return!r||!this.canRead(r.meta,e)?null:r}parseArticle(t,e){let r=t.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);if(!r)return null;let n=r[1],a=r[2].trim(),s=m=>n.match(new RegExp(`^${m}:\\s*(.+)$`,"m"))?.[1]?.trim().replace(/^"(.*)"$/,"$1")||"",o=m=>{let h=n.match(new RegExp(`^${m}:\\s*\\[(.*)\\]$`,"m"));return h?h[1].split(",").map(f=>f.trim().replace(/^"(.*)"$/,"$1")).filter(Boolean):[]},i=s("type")||s("kind"),l=new Set(["person","project","place","concept","event","decision","pattern"]).has(i)?i:void 0,p=o("tags").filter((m,h,f)=>m&&f.indexOf(m)===h),d=o("related"),g=o("graph_path");return{meta:{title:s("title"),type:l,related:d.length?d:void 0,tags:p,owner:s("owner"),access:s("access")||"public",sharedWith:o("shared_with"),created:s("created"),lastUpdated:s("last_updated"),sources:o("sources"),graphPath:g.length?g:void 0},content:a,path:e}}listCache=new Map;listArticles(t){let e=[],r=[];this.walkDir(this.baseDir,(o,i)=>{if(!o.endsWith(".md"))return;let c=k(this.baseDir,o);c.startsWith("raw/")||c.startsWith("_")||(e.push(c),r.push(`${c}:${i?.mtimeMs??"?"}:${i?.size??"?"}`))});let n=r.join("|"),a=this.listCache.get(t);if(a&&a.signature===n)return a.articles.slice();let s=[];for(let o of e){let i=this.readArticle(o);i&&this.canRead(i.meta,t)&&s.push(i)}return this.listCache.set(t,{signature:n,articles:s}),s.slice()}search(t,e,r=10){let n=t.toLowerCase(),a=[];if(this.walkDir(this.baseDir,d=>{if(!d.endsWith(".md"))return;let g=k(this.baseDir,d);if(g.startsWith("raw/")||g.startsWith("_"))return;let m=this.readArticle(g);!m||!this.canRead(m.meta,e)||a.push(m)}),a.length===0)return[];let s=a.map(d=>d.content),o=u(this.baseDir,"_bm25_cache.json"),i=D(s,o),c=A(t,i),l=new Map(c.map(d=>[d.docIndex,d.score]));return a.map((d,g)=>{let m=l.get(g)??0;return d.meta.title.toLowerCase().includes(n)&&(m+=10),d.meta.tags?.some(h=>h.toLowerCase().includes(n))&&(m+=5),{article:d,score:m}}).filter(d=>d.score>0).sort((d,g)=>g.score-d.score).slice(0,r).map(d=>d.article)}async findRelevantReranked(t,e,r=10,n={}){let a=Math.max(r,n.shortlist??_),s=this.findRelevant(t,e,a);if(s.length<2)return s.slice(0,r);let o=s.map((l,p)=>({id:`c${p}`,title:l.meta.title||`(untitled ${p})`,tags:l.meta.tags,excerpt:l.content})),i=await x(L,R({query:t,candidates:o,excerptChars:n.excerptChars}),j(o),{incumbent:{best:o[0].id},features:{agent:e??"unknown"}});return!i||i.mode!=="active"?s.slice(0,r):M(i.answers,o).ranked.map(l=>s[Number(l.slice(1))]).filter(l=>!!l).slice(0,r)}findRelevant(t,e,r=3,n,a={graph:.6,bm25:.4}){let s=[];if(this.walkDir(this.baseDir,h=>{if(!h.endsWith(".md"))return;let f=k(this.baseDir,h);if(f.startsWith("raw/")||f.startsWith("_"))return;let W=this.readArticle(f);!W||!this.canRead(W.meta,e)||s.push(W)}),s.length===0)return[];let o=s.map(h=>`${h.meta.title} ${(h.meta.tags||[]).join(" ")} ${h.content}`),i=u(this.baseDir,"_bm25_relevance_cache.json"),c=D(o,i),l=A(t,c),p=l.reduce((h,f)=>Math.max(h,f.score),0)||1,d=new Map(l.map(h=>[h.docIndex,h.score/p])),g=!!(n&&n.length>0);return s.map((h,f)=>{let W=d.get(f)??0,S=0;g&&h.meta.graphPath?.length&&(S=I(n,h.meta.graphPath));let E=g?a.graph*S+a.bm25*W:W;return{article:h,score:E}}).filter(h=>h.score>0).sort((h,f)=>f.score-h.score).slice(0,r).map(h=>h.article)}buildContext(t,e=4e3){if(t.length===0)return"";let r=["[Wiki Knowledge]"],n=0;for(let a of t){let s=`
|
|
@@ -102,4 +102,4 @@ We use GitLab for version control.
|
|
|
102
102
|
There are ${e.length} unprocessed entries. Read each, understand what it means, and create or update wiki articles.
|
|
103
103
|
|
|
104
104
|
${r}`}walkDir(t,e){if(w(t))for(let r of v(t)){let n=N(t,r),a=B(n);a.isDirectory()?this.walkDir(n,e):e(n,a)}}};export{T as a};
|
|
105
|
-
//# sourceMappingURL=chunk-
|
|
105
|
+
//# sourceMappingURL=chunk-E4RQHTNB.js.map
|
|
@@ -48,7 +48,7 @@ The "modified" field is optional and can contain updated values to pass forward.
|
|
|
48
48
|
... (output truncated)`:i;return s.exitCode!==0?{tool_use_id:e.id,content:`Command exited with code ${s.exitCode}:
|
|
49
49
|
${c}`,is_error:!0}:{tool_use_id:e.id,content:c||"(no output)"}}async editFile(e){let t=String(e.input.path||""),o=e.input.edits,n=ge.resolve(this.cwd,t);if(!o||o.length===0)return{tool_use_id:e.id,content:"No edits provided.",is_error:!0};let s=await W.checkFileWrite(t);if(s==="deny")return{tool_use_id:e.id,content:`File write blocked by permissions: ${t}`,is_error:!0};if(s==="skip")return{tool_use_id:e.id,content:`File write skipped (plan mode): ${t}`};if(f.has("pre:file-write")){let a=await f.execute("pre:file-write",{event:"pre:file-write",file:n,cwd:this.cwd});if(a.blocked)return{tool_use_id:e.id,content:a.message||`File edit blocked by pre:file-write hook: ${t}`,is_error:!0}}let i=await re.readFile(n,"utf8"),c=[];for(let a of o)i.includes(a.old_text)?(i=i.replace(a.old_text,a.new_text),c.push(`Replaced: "${a.old_text.slice(0,40)}..."`)):c.push(`Not found: "${a.old_text.slice(0,40)}..."`);return this.options.dryRun||await re.writeFile(n,i,"utf8"),f.has("post:file-write")&&await f.execute("post:file-write",{event:"post:file-write",file:n,fileContent:i,cwd:this.cwd}),{tool_use_id:e.id,content:`Edited ${t}:
|
|
50
50
|
${c.join(`
|
|
51
|
-
`)}`}}async createFiles(e){let t=e.input,o=t.files||[];return{tool_use_id:e.id,content:t.summary||`Queued ${o.length} file(s) for creation.`,files:o}}async spawnAgent(e){let t=String(e.input.agent_id||""),o=String(e.input.prompt||""),n=Number(e.input.timeout_seconds)||300;if(!t||!o)return{tool_use_id:e.id,content:"agent_id and prompt are required.",is_error:!0};try{let{SubAgentManager:s}=await import("./subagent-XY5N7TUU.js"),{getGlobalRegistry:i}=await import("./registry-
|
|
51
|
+
`)}`}}async createFiles(e){let t=e.input,o=t.files||[];return{tool_use_id:e.id,content:t.summary||`Queued ${o.length} file(s) for creation.`,files:o}}async spawnAgent(e){let t=String(e.input.agent_id||""),o=String(e.input.prompt||""),n=Number(e.input.timeout_seconds)||300;if(!t||!o)return{tool_use_id:e.id,content:"agent_id and prompt are required.",is_error:!0};try{let{SubAgentManager:s}=await import("./subagent-XY5N7TUU.js"),{getGlobalRegistry:i}=await import("./registry-6DGUQ5YT.js"),c=i();if(!c)return{tool_use_id:e.id,content:"Sub-agent spawning requires the daemon to be running.",is_error:!0};let p=await new s(c).spawn({targetAgentId:t,prompt:o,parentAgentId:"orchestrator",timeout:n*1e3});return p.success?{tool_use_id:e.id,content:`Sub-agent "${t}" completed (${Math.round(p.duration/1e3)}s):
|
|
52
52
|
|
|
53
53
|
${p.content}`}:{tool_use_id:e.id,content:`Sub-agent "${t}" failed: ${p.error}`,is_error:!0}}catch(s){return{tool_use_id:e.id,content:`Failed to spawn sub-agent: ${s.message}`,is_error:!0}}}async askUser(e){let t=String(e.input.question||""),o=e.input.options,n=t;return o?.length&&(n+=`
|
|
54
54
|
Options: ${o.join(", ")}`),{tool_use_id:e.id,content:"Question sent to user.",followUp:n}}};async function Ae(r){let{provider:e,systemPrompt:t,messages:o,providerOptions:n,cwd:s,maxIterations:i=20,enabledTools:c,interactive:a=!0,overwrite:p=!1,dryRun:l=!1,onProgress:d,abortSignal:u}=r,m=u?{...n,abortSignal:u}:n;if(!e.generateRaw)return dt(r);let I=new se(s,{interactive:a,overwrite:p,dryRun:l,acmeContext:r.acmeContext,abortSignal:u}),D=be(c);if(r.acmeContext)for(let g of at)D.push({name:g.name,description:g.description,input_schema:g.input_schema});let E=new Set;if(r.mcpTools?.length)for(let g of r.mcpTools)D.push({name:g.name,description:g.description,input_schema:g.input_schema}),E.add(g.name);let C=o.filter(g=>g.role!=="system").map(g=>({role:g.role,content:g.content})),B=[],G=0,F=0,A=0,O="",j,_=0;for(;_<i;){if(_++,u?.aborted)throw new Error("cancelled");d?.({type:"iteration_start",iteration:_}),b.step(_,`Agentic loop iteration (${D.length} tools available)`);let g,M=!!e.generateRawStream&&!!d;try{if(M){let T=null,U=null,v="";for await(let x of e.generateRawStream(C,t,D,m))x.type==="text_delta"?(v+=x.text,d?.({type:"text_delta",text:x.text})):x.type==="thinking_delta"?d?.({type:"thinking_delta",text:x.text}):x.type==="raw_result"?T=x.result:x.type==="error"&&(U=x.error);if(U&&!T)throw new Error(U);if(!T)throw new Error("generateRawStream returned no raw_result event");g=T,g._streamedText=v}else g=await e.generateRaw(C,t,D,m)}catch(T){if(T.message?.includes("not available"))return dt(r);throw T}G+=g.usage.input_tokens+g.usage.output_tokens,F+=g.usage.input_tokens,A+=g.usage.output_tokens;let P=g._streamedText;for(let T of g.content)T.type==="text"&&(O+=T.text,P===void 0&&d?.({type:"text_delta",text:T.text}));if(P!==void 0&&delete g._streamedText,g.stop_reason==="end_turn"||g.stop_reason==="max_tokens")break;if(g.stop_reason==="tool_use"){let T=g.content.filter(v=>v.type==="tool_use");if(T.length===0)break;C.push({role:"assistant",content:g.content});let U=[];for(let v of T){d?.({type:"tool_call",name:v.name,id:v.id,input:v.input}),b.step(_,`Tool call: ${v.name}`);let x;if(E.has(v.name)&&r.mcpDispatch){let h=await r.mcpDispatch(v.name,v.input);x={tool_use_id:v.id,content:h.content,is_error:h.isError}}else x=await I.execute({name:v.name,id:v.id,input:v.input});d?.({type:"tool_result",name:v.name,id:v.id,content:x.content.slice(0,200),is_error:x.is_error}),x.files?.length&&(B.push(...x.files),d?.({type:"files_created",files:x.files})),x.followUp&&(j=x.followUp),U.push({type:"tool_result",tool_use_id:x.tool_use_id,content:x.content,is_error:x.is_error})}if(C.push({role:"user",content:U}),j)break;continue}break}return d?.({type:"complete",iterations:_,totalTokens:G}),{files:B,content:O,followUp:j,tokensUsed:G,inputTokens:F||void 0,outputTokens:A||void 0,iterations:_}}async function dt(r){let{provider:e,systemPrompt:t,messages:o,providerOptions:n,maxIterations:s=5}=r,c=[{role:"system",content:t+`
|
|
@@ -123,4 +123,4 @@ ${r.projectInstructions}`),r.memoryContext&&o.push(r.memoryContext),o.push(`# Ou
|
|
|
123
123
|
Generate output appropriate for: ${e}. Use the \`create_files\` tool to output all files.`),o.join(`
|
|
124
124
|
|
|
125
125
|
`)}export{qe as a,Vt as b,Yt as c,We as d,ze as e,Ve as f,Ye as g,Pe as h,ee as i,Re as j,le as k,te as l,Tt as m,oe as n,Mt as o,f as p,et as q,tt as r,Me as s,de as t,W as u,ne as v,it as w,Ee as x,$e as y,se as z,mt as A,Zn as B,er as C};
|
|
126
|
-
//# sourceMappingURL=chunk-
|
|
126
|
+
//# sourceMappingURL=chunk-EB3B2FRY.js.map
|