hablas-ai 1.3.2 → 1.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +2 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1200,10 +1200,10 @@ ${ue}`,{priority:"low",tags:["auto-inject"]})}if(n.team?.enabled&&Re){let ue=n.t
|
|
|
1200
1200
|
${c.warning("\u26A0")} ${c.strong("@Consul")}: a teammate locked ${c.highlight(Pe)} first. Halting to avoid a conflict.
|
|
1201
1201
|
`);continue}}Re.setActivity(he.slice(0,80))}if(n.agents.enabled){console.log(`
|
|
1202
1202
|
${c.accent("\u2605")} ${c.strong("FULL TEAM ACTIVE")} \u2014 Hablas + Bob + Alex + David + Emma (rich theatre, max power, no classifier)
|
|
1203
|
-
`);let ue=["hablas","bob","alex","david","emma"];for(let D of ue)I=Fi(I,D);dn(I),p.reset(),x.resetBudget();let ie={id:"build-"+Date.now(),description:he.substring(0,100),tasks:[],strategy:"mixed",createdAt:new Date,approved:!0},K=i.getOllamaTools(),mt=new xs(p,m,x,n),{results:Pe,finalSynthesis:M,synthesisOk:se}=await mt.run(he,ie,K,{abortSignal:k?.signal,peerReview:!0});console.log(mn("Hablas","Team Leader")),console.log(gn(M)),T.addAssistantMessage(se?M:`[Team Summary]
|
|
1203
|
+
`);let ue=["hablas","bob","alex","david","emma"];for(let D of ue)I=Fi(I,D);dn(I),p.reset(),x.resetBudget();let ie={id:"build-"+Date.now(),description:he.substring(0,100),tasks:[{role:"emma",description:"Analyze the request from product/requirements perspective and clarify if needed."},{role:"bob",description:"Provide architecture, design or structural guidance."},{role:"alex",description:"Execute the core implementation, coding or action based on the input."},{role:"david",description:"Research, data analysis or supporting information."}],strategy:"mixed",createdAt:new Date,approved:!0},K=i.getOllamaTools(),mt=new xs(p,m,x,n),{results:Pe,finalSynthesis:M,synthesisOk:se}=await mt.run(he,ie,K,{abortSignal:k?.signal,peerReview:!0});console.log(mn("Hablas","Team Leader")),console.log(gn(M)),T.addAssistantMessage(se?M:`[Team Summary]
|
|
1204
1204
|
`+M),await Mg(n,t);continue}else T.addUserMessage(he);k=new AbortController,S.startTurn(),_.resetTurn(),await Dg(T,r,i,o,{interactive:!0,autoMode:W,input:a,logger:e,config:n,abortSignal:k.signal,reactEngine:S,errorRecovery:_,skipTools:!1,onToolCall:()=>{F++,I=Li(I,"tool_call"),dn(I)}}),await Mg(n,t)}catch(Q){if(Q.code==="ERR_USE_AFTER_CLOSE")break;if(Q.name==="AbortError")continue;console.log(Ae(Q.message)),e.error(Q,"REPL error")}a.close(),Re&&await Re.shutdown(),console.log(Yi({turns:C,duration:Date.now()-H,toolCalls:F}))}async function k0(n,e,t,s="build"){let r=e.workingDirectory==="."?process.cwd():e.workingDirectory;e.agents.enabled=!0;let i=Me(e),o=new En(r,e),a=new bs(e);a.setToolRegistry(o);let l=new vs,u=new _s(l).attach(),d=new ws(e,{tokenBudget:500,maxChars:140});a.setChannel(l),l.onEvent(w=>{w.type==="phase"?console.log(`
|
|
1205
1205
|
${c.accent("\u25C6")} ${c.strong(w.content)}`):w.type==="handoff"?console.log(` ${c.muted("\u2605")} ${w.agent} \u2501\u2501\u25B6 ${w.to}`):w.type==="speak"?console.log(` ${c.primary(w.agent)}: ${w.content}`):w.type==="act"||w.type==="tool"?console.log(` ${c.warning("\u{1F527}")} [${w.agent}] ${w.content||w.toolName}`):w.type==="summary"||w.type==="observe"?console.log(` ${c.success("\u2713")} ${w.agent||""} ${w.content||""}`):w.type==="error"&&console.log(` ${c.error("\u2717")} ${w.agent}: ${w.content}`)}),console.log(`
|
|
1206
|
-
${c.accent("\u2605")} ${c.strong("FULL TEAM "+s.toUpperCase())} \u2014 ${e.model} (classification deleted, max power)`);let f={id:`${s}-`+Date.now(),description:n.substring(0,100),tasks:[],strategy:"mixed",createdAt:new Date,approved:!0},h=o.getOllamaTools(),m=new xs(l,a,d,e),{results:p,finalSynthesis:g,synthesisOk:x}=await m.run(n,f,h,{peerReview:!0});console.log(`
|
|
1206
|
+
${c.accent("\u2605")} ${c.strong("FULL TEAM "+s.toUpperCase())} \u2014 ${e.model} (classification deleted, max power)`);let f={id:`${s}-`+Date.now(),description:n.substring(0,100),tasks:[{role:"emma",description:"Analyze the request from product/requirements perspective and clarify if needed."},{role:"bob",description:"Provide architecture, design or structural guidance."},{role:"alex",description:"Execute the core implementation, coding or action based on the input."},{role:"david",description:"Research, data analysis or supporting information."}],strategy:"mixed",createdAt:new Date,approved:!0},h=o.getOllamaTools(),m=new xs(l,a,d,e),{results:p,finalSynthesis:g,synthesisOk:x}=await m.run(n,f,h,{peerReview:!0});console.log(`
|
|
1207
1207
|
${mn("Hablas","Team Leader")}`),console.log(gn(g||"Team completed the task.")),console.log(`
|
|
1208
1208
|
${c.muted("Full team execution complete. "+(x?"Synthesis OK.":"Used fallback summary."))}`)}async function A0(n,e,t){let s=e.workingDirectory==="."?process.cwd():e.workingDirectory,r=Me(e),i=new En(s,e),o=new tn(e),a=new us(s),l=await bn(s,e),u=vn(Wn,l,a),d=new nn(u,e.historySize),f=Lg(n,s);d.addUserMessage(f),await Dg(d,r,i,o,{interactive:!1,autoMode:e.autoMode||!1,logger:t,config:e})}function Lg(n,e){let t=/#([\w./-]+)/g,s=n,r;for(;(r=t.exec(n))!==null;){let i=r[1],o=Ft.resolve(e,i);ht.existsSync(o)&&(s=s.replace(`#${i}`,i))}return s}async function Mg(n,e){if(!(n.team?.enabled&&Re))return;if(await Re.releaseAllMyLocks(),!n.workspace?.autoPush){console.log(`
|
|
1209
1209
|
${c.info("\u2139")} ${c.strong("@Consul")}: "Changes tracked. Auto-push is off \u2014 commit & push manually when ready."
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hablas-ai",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.3",
|
|
4
4
|
"description": "Premium multi-agent AI coding agent for your terminal — local-first via Ollama, NVIDIA NIM, or any OpenAI-compatible API. Watch the team work in front of you.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|