bernard-agent 0.7.0 → 0.8.1

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 (48) hide show
  1. package/README.md +96 -50
  2. package/dist/agent.d.ts +7 -4
  3. package/dist/agent.js +88 -127
  4. package/dist/agent.js.map +1 -1
  5. package/dist/config.d.ts +19 -1
  6. package/dist/config.js +76 -4
  7. package/dist/config.js.map +1 -1
  8. package/dist/critic.d.ts +32 -0
  9. package/dist/critic.js +118 -0
  10. package/dist/critic.js.map +1 -0
  11. package/dist/cron/runner.js +54 -34
  12. package/dist/cron/runner.js.map +1 -1
  13. package/dist/output.d.ts +6 -4
  14. package/dist/output.js +31 -10
  15. package/dist/output.js.map +1 -1
  16. package/dist/overlap-checker.d.ts +61 -0
  17. package/dist/overlap-checker.js +106 -0
  18. package/dist/overlap-checker.js.map +1 -0
  19. package/dist/pac.d.ts +37 -0
  20. package/dist/pac.js +69 -0
  21. package/dist/pac.js.map +1 -0
  22. package/dist/rag-query.js +2 -1
  23. package/dist/rag-query.js.map +1 -1
  24. package/dist/rag-worker.js +4 -3
  25. package/dist/rag-worker.js.map +1 -1
  26. package/dist/repl.js +205 -9
  27. package/dist/repl.js.map +1 -1
  28. package/dist/specialist-candidates.d.ts +13 -0
  29. package/dist/specialist-candidates.js.map +1 -1
  30. package/dist/specialist-detector.d.ts +20 -5
  31. package/dist/specialist-detector.js +72 -9
  32. package/dist/specialist-detector.js.map +1 -1
  33. package/dist/specialist-matcher.d.ts +5 -0
  34. package/dist/specialist-matcher.js +1 -0
  35. package/dist/specialist-matcher.js.map +1 -1
  36. package/dist/tools/datetime.d.ts +6 -0
  37. package/dist/tools/datetime.js +38 -1
  38. package/dist/tools/datetime.js.map +1 -1
  39. package/dist/tools/mcp-url.js +1 -1
  40. package/dist/tools/mcp-url.js.map +1 -1
  41. package/dist/tools/specialist-run.js +37 -12
  42. package/dist/tools/specialist-run.js.map +1 -1
  43. package/dist/tools/subagent.js +37 -12
  44. package/dist/tools/subagent.js.map +1 -1
  45. package/dist/tools/task.d.ts +14 -11
  46. package/dist/tools/task.js +93 -31
  47. package/dist/tools/task.js.map +1 -1
  48. package/package.json +1 -1
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":";;;AAuNA,8CAyFC;AAhTD,2BAAoD;AACpD,mDAAgD;AAChD,+CAAiE;AACjE,qDAAyD;AACzD,6CAAiD;AACjD,2CAaqB;AACrB,2CAAuC;AACvC,6CAQsB;AAItB,+CAAkE;AAClE,qDAA2E;AAE3E,iEAAoE;AACpE,mEAAiF;AACjF,2DAAyD;AACzD,iDAKwB;AAExB,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mXA8FwV,CAAC;AAEpX,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;0GAqB+E,CAAC;AAE3G,MAAM,0BAA0B,GAAG,IAAI,CAAC;AACxC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AACpC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AACxC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAEpC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;gKAoBmI,CAAC;AAOjK,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAQ7B;;;;;;;;;;GAUG;AACH,SAAgB,iBAAiB,CAC/B,MAAqB,EACrB,WAAwB,EACxB,cAAyB,EACzB,UAA8B,EAC9B,gBAAmC,EACnC,mBAAyC,EACzC,iBAAqC;IAErC,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE;QACnD,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;KACf,CAAC,CAAC;IACH,IAAI,MAAM,GAAG,kBAAkB,GAAG,uBAAuB,KAAK,GAAG,CAAC;IAClE,MAAM,IAAI,kCAAkC,MAAM,CAAC,QAAQ,YAAY,MAAM,CAAC,KAAK,kDAAkD,CAAC;IAEtI,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,IAAI,MAAM,GAAG,kBAAkB,CAAC;IACxC,CAAC;IAED,MAAM,IAAI,IAAA,sCAAkB,EAAC,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhF,MAAM,IAAI;;mSAEuR,CAAC;IAElS,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,wCAAwC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAChF,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,6CAA6C,CAAC;IAC1D,CAAC;IAED,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QAE3E,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,iDAAiD,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,IAAI,wCAAwC,CAAC;QACnD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,2CAA2C,CAAC;YACtD,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvF,CAAC;aAAM,CAAC;YACN,MAAM;gBACJ,qMAAqM,CAAC;QAC1M,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,iBAAiB,CAAC;QAC5B,MAAM;YACJ,mMAAmM,CAAC;IACxM,CAAC;IAED,MAAM,IAAI,oBAAoB,CAAC;IAC/B,IAAI,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,2EAA2E,CAAC;QACtF,MAAM,IAAI,mBAAmB;aAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,QAAQ,GACZ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAI,SAAS,IAAI,CAAC,CAAC,KAAK,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,OAAO,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,GAAG,QAAQ,EAAE,CAAC;QAC9D,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM;YACJ,oOAAoO,CAAC;QACvO,MAAM;YACJ,gPAAgP,CAAC;QAEnP,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM;gBACJ,0GAA0G,CAAC;YAC7G,MAAM,IAAI,iBAAiB;iBACxB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACT,MAAM,GAAG,GACP,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,kCAAkC,CAAC;gBACtF,OAAO,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC;YACzE,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM;YACJ,uMAAuM,CAAC;IAC5M,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAQD;;;;;GAKG;AACH,MAAa,KAAK;IACR,OAAO,GAAkB,EAAE,CAAC;IAC5B,MAAM,CAAgB;IACtB,WAAW,CAAc;IACzB,WAAW,CAAc;IACzB,QAAQ,CAAuB;IAC/B,cAAc,CAAY;IAC1B,YAAY,CAAU;IACtB,QAAQ,CAAY;IACpB,gBAAgB,GAAgB,IAAI,GAAG,EAAE,CAAC;IAC1C,cAAc,GAAsB,EAAE,CAAC;IACvC,eAAe,GAA2B,IAAI,CAAC;IAC/C,gBAAgB,GAAW,CAAC,CAAC;IAC7B,oBAAoB,GAAW,CAAC,CAAC;IACjC,YAAY,GAAwB,IAAI,CAAC;IACzC,YAAY,CAAe;IAC3B,eAAe,CAAkB;IACjC,cAAc,CAAwB;IAE9C,YACE,MAAqB,EACrB,WAAwB,EACxB,WAAwB,EACxB,QAA8B,EAC9B,cAAyB,EACzB,YAAqB,EACrB,cAA8B,EAC9B,QAAmB,EACnB,YAA2B,EAC3B,eAAiC,EACjC,cAAqC;QAErC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,YAAY,IAAI,IAAI,0BAAY,EAAE,CAAC;QACvD,IAAI,CAAC,eAAe,GAAG,eAAe,IAAI,IAAI,gCAAe,EAAE,CAAC;QAChE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;YACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,+EAA+E;IAC/E,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,yFAAyF;IACzF,KAAK;QACH,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;IAChC,CAAC;IAED,+FAA+F;IAC/F,eAAe,CAAC,KAAmB;QACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IAED,+FAA+F;IAC/F,eAAe,CAAC,GAAW;QACzB,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;IAC1B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;QAExD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,yCAAyC;YACzC,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,IACE,IAAA,2BAAc,EACZ,IAAI,CAAC,gBAAgB,EACrB,kBAAkB,EAClB,IAAI,CAAC,MAAM,CAAC,KAAK,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,CACxB,EACD,CAAC;gBACD,IAAA,qBAAS,EAAC,qCAAqC,CAAC,CAAC;gBACjD,IAAI,CAAC,OAAO,GAAG,MAAM,IAAA,4BAAe,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjF,CAAC;YAED,6DAA6D;YAC7D,IAAI,UAAyC,CAAC;YAC9C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC;oBACH,wEAAwE;oBACxE,MAAM,WAAW,GAAG,IAAA,qCAAsB,EAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACzE,MAAM,WAAW,GAAG,IAAA,uCAAwB,EAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxE,MAAM,QAAQ,GAAG,IAAA,4BAAa,EAAC,SAAS,EAAE,WAAW,EAAE;wBACrD,WAAW,EAAE,WAAW,IAAI,SAAS;qBACtC,CAAC,CAAC;oBAEH,6BAA6B;oBAC7B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAExD,sCAAsC;oBACtC,UAAU,GAAG,IAAA,8BAAe,EAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBAChE,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;oBAEjC,sBAAsB;oBACtB,IAAI,CAAC,gBAAgB,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBAE/D,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC1B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;wBAC7E,IAAA,oBAAQ,EAAC,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;oBACzE,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAA,oBAAQ,EAAC,iBAAiB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC;YAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YAC1D,MAAM,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;YAChE,MAAM,iBAAiB,GAAG,IAAA,wCAAgB,EAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;YAE3E,IAAI,YAAY,GAAG,iBAAiB,CAClC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,cAAc,EACnB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,CAClB,CAAC;YACF,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,YAAY,IAAI,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;YAC7C,CAAC;YAED,8FAA8F;YAC9F,MAAM,gBAAgB,GAAG,GAAG,CAAC;YAC7B,MAAM,aAAa,GAAG,IAAA,6BAAgB,EAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACnF,MAAM,eAAe,GACnB,IAAA,kCAAqB,EAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3E,MAAM,SAAS,GAAG,aAAa,GAAG,gBAAgB,CAAC;YACnD,IAAI,kBAAkB,GAAG,KAAK,CAAC;YAE/B,IAAI,eAAe,GAAG,SAAS,EAAE,CAAC;gBAChC,IAAA,qBAAS,EAAC,oDAAoD,CAAC,CAAC;gBAChE,IAAI,CAAC,OAAO,GAAG,IAAA,8BAAiB,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;gBACnF,kBAAkB,GAAG,IAAI,CAAC;YAC5B,CAAC;YAED,MAAM,SAAS,GAAG,IAAA,sBAAW,EAC3B,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,MAAM,CACZ,CAAC;YACF,MAAM,KAAK,GAAG;gBACZ,GAAG,SAAS;gBACZ,KAAK,EAAE,IAAA,gCAAkB,EACvB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,CACd;gBACD,IAAI,EAAE,IAAA,wBAAc,EAClB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,YAAY,CAClB;gBACD,cAAc,EAAE,IAAA,2CAAuB,EACrC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,CACd;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAG,CAAC,QAAwB,EAAE,EAAE,CACpD,IAAA,iBAAY,EAAC;gBACX,KAAK,EAAE,IAAA,mBAAQ,EAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBACxD,KAAK;gBACL,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,OAAO;gBAClC,WAAW,EAAE,IAAI,CAAC,eAAgB,CAAC,MAAM;gBACzC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE;oBACxD,IAAI,KAAK,EAAE,CAAC;wBACV,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,YAAY,CAAC;wBAC/C,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;4BACtB,IAAI,CAAC,YAAY,CAAC,iBAAiB,IAAI,KAAK,CAAC,YAAY,CAAC;4BAC1D,IAAI,CAAC,YAAY,CAAC,qBAAqB,IAAI,KAAK,CAAC,gBAAgB,CAAC;4BAClE,IAAI,CAAC,YAAY,CAAC,kBAAkB,GAAG,KAAK,CAAC,YAAY,CAAC;wBAC5D,CAAC;oBACH,CAAC;oBACD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;wBAC3B,IAAA,oBAAQ,EAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;wBAC1D,IAAA,yBAAa,EAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAA+B,CAAC,CAAC;oBACjE,CAAC;oBACD,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;wBAC7B,IAAA,oBAAQ,EAAC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;wBAC9D,IAAA,2BAAe,EAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;oBAC1C,CAAC;oBACD,IAAI,IAAI,EAAE,CAAC;wBACT,IAAA,8BAAkB,EAAC,IAAI,CAAC,CAAC;oBAC3B,CAAC;oBACD,uEAAuE;oBACvE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;wBAC9C,IAAA,wBAAY,EAAC,GAAG,EAAE,CAAC,IAAA,+BAAmB,EAAC,IAAI,CAAC,YAAa,CAAC,CAAC,CAAC;oBAC9D,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;YAEL,IAAI,MAAM,CAAC;YACX,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;YACpC,CAAC;YAAC,OAAO,MAAe,EAAE,CAAC;gBACzB,IAAI,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO;oBAAE,OAAO;gBAEjD,MAAM,UAAU,GAAG,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE7E,qDAAqD;gBACrD,IAAI,IAAA,iCAAoB,EAAC,UAAU,CAAC,EAAE,CAAC;oBACrC,oEAAoE;oBACpE,MAAM,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;oBAClD,IAAA,qBAAS,EAAC,+CAA+C,CAAC,CAAC;oBAC3D,IAAI,CAAC,OAAO,GAAG,IAAA,8BAAiB,EAC9B,IAAI,CAAC,OAAO,EACZ,aAAa,GAAG,UAAU,EAC1B,YAAY,EACZ,SAAS,CACV,CAAC;oBACF,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;gBACpC,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,CAAC;gBACf,CAAC;YACH,CAAC;YAED,8DAA8D;YAC9D,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpE,IAAI,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACxD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,IAAI,UAAU,GAAG,CAAC,CAAC;oBAEnB,OAAO,UAAU,IAAI,kBAAkB,EAAE,CAAC;wBACxC,IAAI,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO;4BAAE,MAAM;wBAEhD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,SAAS,CACvC,SAAS,EACT,MAAM,CAAC,IAAI,EACX,WAAW,EACX,UAAU,GAAG,CAAC,CACf,CAAC;wBAEF,sCAAsC;wBACtC,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,OAAO,KAAK,MAAM;4BAAE,MAAM;wBAE5D,oCAAoC;wBACpC,IAAI,UAAU,IAAI,kBAAkB,EAAE,CAAC;4BACrC,IAAA,qBAAS,EAAC,iDAAiD,CAAC,CAAC;4BAC7D,MAAM;wBACR,CAAC;wBAED,UAAU,EAAE,CAAC;wBACb,IAAA,4BAAgB,EAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;wBAEjD,iFAAiF;wBACjF,IAAI,CAAC;4BACH,MAAM,uBAAuB,GAAG,IAAA,gCAAmB,EACjD,MAAM,CAAC,QAAQ,CAAC,QAAyB,CAC1C,CAAC;4BACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,CAAC;4BAC9C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gCAChB,IAAI,EAAE,MAAe;gCACrB,OAAO,EAAE,qEAAqE,YAAY,CAAC,OAAO,KAAK,YAAY,CAAC,WAAW,gDAAgD;6BAChL,CAAC,CAAC;4BAEH,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;4BAClC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BAEpD,oDAAoD;4BACpD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;gCAAE,MAAM;wBACtC,CAAC;wBAAC,OAAO,QAAQ,EAAE,CAAC;4BAClB,IAAA,oBAAQ,EACN,0BAA0B,EAC1B,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAChE,CAAC;4BACF,MAAM;wBACR,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,8EAA8E;YAC9E,mFAAmF;YACnF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,IAAI,MAAM,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC;YAErF,uDAAuD;YACvD,MAAM,iBAAiB,GAAG,IAAA,gCAAmB,EAAC,MAAM,CAAC,QAAQ,CAAC,QAAyB,CAAC,CAAC;YACzF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,sEAAsE;YACtE,IAAI,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO;gBAAE,OAAO;YAEjD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,IAAI,KAAK,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC;QAC7C,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,8EAA8E;IACtE,kBAAkB,CAAC,KAAiD;QAC1E,MAAM,OAAO,GAAsB,EAAE,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,gFAAgF;YAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/C,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ,EAAE,EAAE,CAAC,QAAQ;oBACrB,IAAI,EAAE,EAAE,CAAC,IAAI;oBACb,MAAM,EAAE,EAAE,EAAE,MAAM;iBACnB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,2FAA2F;IACnF,KAAK,CAAC,SAAS,CACrB,SAAiB,EACjB,YAAoB,EACpB,WAA8B,EAC9B,UAAmB,KAAK;QAExB,IAAI,CAAC;YACH,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAA,+BAAmB,GAAE,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACN,IAAA,4BAAgB,GAAE,CAAC;YACrB,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAC7B,uBAAuB,EACvB,IAAI,CAAC,KAAK,CAAC,0BAA0B,GAAG,WAAW,CAAC,MAAM,CAAC,CAC5D,CAAC;YAEF,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC7C,MAAM,GAAG,GACP,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;gBACzF,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC3F,OAAO;oBACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,MAAM,EAAE,SAAS;iBAClB,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,iBAAiB,GACrB,YAAY,CAAC,MAAM,GAAG,0BAA0B;gBAC9C,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,0BAA0B,CAAC,GAAG,mBAAmB;gBACzE,CAAC,CAAC,YAAY,CAAC;YAEnB,MAAM,aAAa,GAAG;EAC1B,SAAS;;;EAGT,iBAAiB;;oBAEC,YAAY,CAAC,MAAM;EACrC,YAAY;iBACX,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACZ,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACvC,MAAM,aAAa,GACjB,OAAO,CAAC,MAAM,GAAG,sBAAsB;oBACrC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,GAAG,KAAK;oBAClD,CAAC,CAAC,OAAO,CAAC;gBACd,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAI,aAAa,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC;YAC7E,CAAC,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAEZ,MAAM,MAAM,GAAG,MAAM,IAAA,iBAAY,EAAC;gBAChC,KAAK,EAAE,IAAA,mBAAQ,EAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBACxD,MAAM,EAAE,oBAAoB;gBAC5B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;gBACpD,QAAQ,EAAE,CAAC;gBACX,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM;aAC1C,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChB,MAAM,MAAM,GAAG,IAAA,8BAAkB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC/C,IAAA,8BAAkB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAChC,OAAO;oBACL,OAAO,EAAE,MAAM,CAAC,OAAkC;oBAClD,WAAW,EAAE,MAAM,CAAC,WAAW;iBAChC,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAA,oBAAQ,EAAC,oBAAoB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACjF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,KAAK,CAAC,cAAc;QAClB,MAAM,YAAY,GAAG,IAAA,kCAAqB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,MAAM,IAAA,4BAAe,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnF,MAAM,SAAS,GAAG,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC;QAC9C,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;YAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAA,kCAAqB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,WAAW,GAAG,IAAA,kCAAqB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;IAClD,CAAC;IAED,8FAA8F;IAC9F,YAAY;QACV,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAChC,IAAI,CAAC,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;QAClC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;IAC3B,CAAC;CACF;AAncD,sBAmcC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -14,8 +14,14 @@ export interface BernardConfig {
14
14
  ragEnabled: boolean;
15
15
  /** Color theme name for terminal output. */
16
16
  theme: string;
17
+ /** Maximum number of sequential LLM calls (steps) per agent loop. */
18
+ maxSteps: number;
17
19
  /** Whether critic mode (planning + verification) is active. */
18
20
  criticMode: boolean;
21
+ /** Whether to auto-create specialists above the confidence threshold. */
22
+ autoCreateSpecialists: boolean;
23
+ /** Confidence threshold for auto-creating specialists (0-1). */
24
+ autoCreateThreshold: number;
19
25
  /** Anthropic API key, if available. */
20
26
  anthropicApiKey?: string;
21
27
  /** OpenAI API key, if available. */
@@ -23,6 +29,12 @@ export interface BernardConfig {
23
29
  /** xAI API key, if available. */
24
30
  xaiApiKey?: string;
25
31
  }
32
+ /**
33
+ * Normalizes a threshold value to the 0-1 range.
34
+ * Accepts both 0-1 (fractional) and >1-100 (percentage) inputs.
35
+ * Values >1 are divided by 100. Result is clamped to [0, 1].
36
+ */
37
+ export declare function normalizeThreshold(value: number): number;
26
38
  /** Maps each provider name to the environment variable that holds its API key. */
27
39
  export declare const PROVIDER_ENV_VARS: Record<string, string>;
28
40
  /**
@@ -32,7 +44,7 @@ export declare const PROVIDER_ENV_VARS: Record<string, string>;
32
44
  * default value, human-readable description, and corresponding env var.
33
45
  */
34
46
  export declare const OPTIONS_REGISTRY: Record<string, {
35
- configKey: 'maxTokens' | 'shellTimeout' | 'tokenWindow';
47
+ configKey: 'maxTokens' | 'shellTimeout' | 'tokenWindow' | 'maxSteps';
36
48
  default: number;
37
49
  description: string;
38
50
  envVar: string;
@@ -48,9 +60,12 @@ export declare function savePreferences(prefs: {
48
60
  maxTokens?: number;
49
61
  shellTimeout?: number;
50
62
  tokenWindow?: number;
63
+ maxSteps?: number;
51
64
  theme?: string;
52
65
  autoUpdate?: boolean;
53
66
  criticMode?: boolean;
67
+ autoCreateSpecialists?: boolean;
68
+ autoCreateThreshold?: number;
54
69
  }): void;
55
70
  /**
56
71
  * Reads stored preferences from the config directory.
@@ -63,9 +78,12 @@ export declare function loadPreferences(): {
63
78
  maxTokens?: number;
64
79
  shellTimeout?: number;
65
80
  tokenWindow?: number;
81
+ maxSteps?: number;
66
82
  theme?: string;
67
83
  autoUpdate?: boolean;
68
84
  criticMode?: boolean;
85
+ autoCreateSpecialists?: boolean;
86
+ autoCreateThreshold?: number;
69
87
  };
70
88
  /**
71
89
  * Stores an API key for the given provider in the config directory (mode 0600).
package/dist/config.js CHANGED
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.PROVIDER_MODELS = exports.OPTIONS_REGISTRY = exports.PROVIDER_ENV_VARS = void 0;
37
+ exports.normalizeThreshold = normalizeThreshold;
37
38
  exports.savePreferences = savePreferences;
38
39
  exports.loadPreferences = loadPreferences;
39
40
  exports.saveProviderKey = saveProviderKey;
@@ -56,6 +57,18 @@ const DEFAULT_PROVIDER = 'anthropic';
56
57
  const DEFAULT_MAX_TOKENS = 4096;
57
58
  const DEFAULT_SHELL_TIMEOUT = 30000;
58
59
  const DEFAULT_TOKEN_WINDOW = 0;
60
+ const DEFAULT_MAX_STEPS = 25;
61
+ const DEFAULT_AUTO_CREATE_SPECIALISTS = false;
62
+ const DEFAULT_AUTO_CREATE_THRESHOLD = 0.8;
63
+ /**
64
+ * Normalizes a threshold value to the 0-1 range.
65
+ * Accepts both 0-1 (fractional) and >1-100 (percentage) inputs.
66
+ * Values >1 are divided by 100. Result is clamped to [0, 1].
67
+ */
68
+ function normalizeThreshold(value) {
69
+ const normalized = value > 1 ? value / 100 : value;
70
+ return Math.max(0, Math.min(1, normalized));
71
+ }
59
72
  /** Maps each provider name to the environment variable that holds its API key. */
60
73
  exports.PROVIDER_ENV_VARS = {
61
74
  anthropic: 'ANTHROPIC_API_KEY',
@@ -87,6 +100,12 @@ exports.OPTIONS_REGISTRY = {
87
100
  description: 'Context window size for compression (0 = auto-detect from model)',
88
101
  envVar: 'BERNARD_TOKEN_WINDOW',
89
102
  },
103
+ 'max-steps': {
104
+ configKey: 'maxSteps',
105
+ default: DEFAULT_MAX_STEPS,
106
+ description: 'Maximum agent loop iterations per request (controls tool call chain length)',
107
+ envVar: 'BERNARD_MAX_STEPS',
108
+ },
90
109
  };
91
110
  /**
92
111
  * Persists user preferences to the config directory.
@@ -105,11 +124,17 @@ function savePreferences(prefs) {
105
124
  data.shellTimeout = prefs.shellTimeout;
106
125
  if (prefs.tokenWindow !== undefined)
107
126
  data.tokenWindow = prefs.tokenWindow;
127
+ if (prefs.maxSteps !== undefined)
128
+ data.maxSteps = prefs.maxSteps;
108
129
  if (prefs.theme !== undefined)
109
130
  data.theme = prefs.theme;
110
131
  if (prefs.criticMode !== undefined)
111
132
  data.criticMode = prefs.criticMode;
112
- // Preserve autoUpdate and criticMode from existing prefs when callers don't pass them
133
+ if (prefs.autoCreateSpecialists !== undefined)
134
+ data.autoCreateSpecialists = prefs.autoCreateSpecialists;
135
+ if (prefs.autoCreateThreshold !== undefined)
136
+ data.autoCreateThreshold = prefs.autoCreateThreshold;
137
+ // Preserve autoUpdate, criticMode, and auto-create settings from existing prefs when callers don't pass them
113
138
  let existing;
114
139
  try {
115
140
  existing = JSON.parse(fs.readFileSync(paths_js_1.PREFS_PATH, 'utf-8'));
@@ -126,6 +151,30 @@ function savePreferences(prefs) {
126
151
  if (prefs.criticMode === undefined && existing && typeof existing.criticMode === 'boolean') {
127
152
  data.criticMode = existing.criticMode;
128
153
  }
154
+ // Preserve numeric options from existing prefs when callers don't pass them.
155
+ // Use 'in' to distinguish "key absent" (preserve) from "key explicitly set to undefined" (reset).
156
+ if (!('maxSteps' in prefs) && existing && typeof existing.maxSteps === 'number') {
157
+ data.maxSteps = existing.maxSteps;
158
+ }
159
+ if (!('maxTokens' in prefs) && existing && typeof existing.maxTokens === 'number') {
160
+ data.maxTokens = existing.maxTokens;
161
+ }
162
+ if (!('shellTimeout' in prefs) && existing && typeof existing.shellTimeout === 'number') {
163
+ data.shellTimeout = existing.shellTimeout;
164
+ }
165
+ if (!('tokenWindow' in prefs) && existing && typeof existing.tokenWindow === 'number') {
166
+ data.tokenWindow = existing.tokenWindow;
167
+ }
168
+ if (prefs.autoCreateSpecialists === undefined &&
169
+ existing &&
170
+ typeof existing.autoCreateSpecialists === 'boolean') {
171
+ data.autoCreateSpecialists = existing.autoCreateSpecialists;
172
+ }
173
+ if (prefs.autoCreateThreshold === undefined &&
174
+ existing &&
175
+ typeof existing.autoCreateThreshold === 'number') {
176
+ data.autoCreateThreshold = existing.autoCreateThreshold;
177
+ }
129
178
  fs.writeFileSync(paths_js_1.PREFS_PATH, JSON.stringify(data, null, 2) + '\n');
130
179
  }
131
180
  /**
@@ -143,9 +192,14 @@ function loadPreferences() {
143
192
  maxTokens: typeof parsed.maxTokens === 'number' ? parsed.maxTokens : undefined,
144
193
  shellTimeout: typeof parsed.shellTimeout === 'number' ? parsed.shellTimeout : undefined,
145
194
  tokenWindow: typeof parsed.tokenWindow === 'number' ? parsed.tokenWindow : undefined,
195
+ maxSteps: typeof parsed.maxSteps === 'number' ? parsed.maxSteps : undefined,
146
196
  theme: typeof parsed.theme === 'string' ? parsed.theme : undefined,
147
197
  autoUpdate: typeof parsed.autoUpdate === 'boolean' ? parsed.autoUpdate : undefined,
148
198
  criticMode: typeof parsed.criticMode === 'boolean' ? parsed.criticMode : undefined,
199
+ autoCreateSpecialists: typeof parsed.autoCreateSpecialists === 'boolean'
200
+ ? parsed.autoCreateSpecialists
201
+ : undefined,
202
+ autoCreateThreshold: typeof parsed.autoCreateThreshold === 'number' ? parsed.autoCreateThreshold : undefined,
149
203
  };
150
204
  }
151
205
  catch {
@@ -227,6 +281,7 @@ function saveOption(name, value) {
227
281
  maxTokens: prefs.maxTokens,
228
282
  shellTimeout: prefs.shellTimeout,
229
283
  tokenWindow: prefs.tokenWindow,
284
+ maxSteps: prefs.maxSteps,
230
285
  theme: prefs.theme,
231
286
  });
232
287
  }
@@ -248,18 +303,20 @@ function resetOption(name) {
248
303
  maxTokens: prefs.maxTokens,
249
304
  shellTimeout: prefs.shellTimeout,
250
305
  tokenWindow: prefs.tokenWindow,
306
+ maxSteps: prefs.maxSteps,
251
307
  theme: prefs.theme,
252
308
  });
253
309
  }
254
310
  /** Resets all numeric options to their defaults by removing them from preferences. */
255
311
  function resetAllOptions() {
256
312
  const prefs = loadPreferences();
257
- delete prefs.maxTokens;
258
- delete prefs.shellTimeout;
259
- delete prefs.tokenWindow;
260
313
  savePreferences({
261
314
  provider: prefs.provider || 'anthropic',
262
315
  model: prefs.model || getDefaultModel(prefs.provider || 'anthropic'),
316
+ maxTokens: undefined,
317
+ shellTimeout: undefined,
318
+ tokenWindow: undefined,
319
+ maxSteps: undefined,
263
320
  theme: prefs.theme,
264
321
  });
265
322
  }
@@ -398,19 +455,34 @@ function loadConfig(overrides) {
398
455
  (parseInt(process.env.BERNARD_SHELL_TIMEOUT || '', 10) || DEFAULT_SHELL_TIMEOUT);
399
456
  const tokenWindow = prefs.tokenWindow ??
400
457
  (parseInt(process.env.BERNARD_TOKEN_WINDOW || '', 10) || DEFAULT_TOKEN_WINDOW);
458
+ const rawMaxSteps = prefs.maxSteps ?? (parseInt(process.env.BERNARD_MAX_STEPS || '', 10) || DEFAULT_MAX_STEPS);
459
+ const maxSteps = Number.isFinite(rawMaxSteps) && rawMaxSteps >= 1 ? Math.floor(rawMaxSteps) : DEFAULT_MAX_STEPS;
401
460
  const ragEnabled = process.env.BERNARD_RAG_ENABLED !== 'false';
402
461
  const theme = prefs.theme || 'bernard';
403
462
  const criticMode = prefs.criticMode ??
404
463
  (process.env.BERNARD_CRITIC_MODE === 'true' || process.env.BERNARD_CRITIC_MODE === '1');
464
+ const autoCreateSpecialists = prefs.autoCreateSpecialists ??
465
+ (process.env.BERNARD_AUTO_CREATE_SPECIALISTS === 'true' ||
466
+ process.env.BERNARD_AUTO_CREATE_SPECIALISTS === '1'
467
+ ? true
468
+ : DEFAULT_AUTO_CREATE_SPECIALISTS);
469
+ const envAutoCreateThreshold = parseFloat(process.env.BERNARD_AUTO_CREATE_THRESHOLD ?? '');
470
+ const autoCreateThreshold = normalizeThreshold(prefs.autoCreateThreshold ??
471
+ (Number.isFinite(envAutoCreateThreshold)
472
+ ? envAutoCreateThreshold
473
+ : DEFAULT_AUTO_CREATE_THRESHOLD));
405
474
  const config = {
406
475
  provider,
407
476
  model,
408
477
  maxTokens,
409
478
  shellTimeout,
410
479
  tokenWindow,
480
+ maxSteps,
411
481
  ragEnabled,
412
482
  theme,
413
483
  criticMode,
484
+ autoCreateSpecialists,
485
+ autoCreateThreshold,
414
486
  anthropicApiKey: process.env.ANTHROPIC_API_KEY,
415
487
  openaiApiKey: process.env.OPENAI_API_KEY,
416
488
  xaiApiKey: process.env.XAI_API_KEY,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import type { BernardConfig } from './config.js';
2
+ export declare const CRITIC_SYSTEM_PROMPT = "You are a verification agent for Bernard, a CLI AI assistant. Your role is to review the agent's work and verify its integrity.\n\nYou will receive:\n1. The user's original request\n2. The agent's final text response\n3. A log of actual tool calls made (tool name, arguments, results) \u2014 note that tool results, arguments, and the agent response may be truncated for context efficiency\n\nYour job:\n- Check if the agent's claims in its response are supported by actual tool call results.\n- Verify that tool calls were actually made for actions the agent claims to have performed.\n- Flag any claims not backed by tool evidence (e.g., \"I created the file\" but no shell/write tool call).\n- Flag any tool results that suggest failure but were reported as success.\n- Tool results and the agent response may be truncated for context efficiency. If a tool result appears cut off, do not treat the missing portion as evidence of failure. Only flag FAIL when there is positive evidence of failure (e.g., an error message visible in the output), not merely the absence of success confirmation in truncated output.\n- Check if the response addresses the user's original intent.\n\nOutput format (plain text, concise):\nVERDICT: PASS | WARN | FAIL\n[1-3 sentence explanation]\n[If WARN/FAIL: specific issues found]\n\nBe strict but fair. Not every response needs tool calls \u2014 knowledge answers are fine. Focus on cases where the agent *claims* to have done something via tools.";
3
+ export interface CriticResult {
4
+ verdict: 'PASS' | 'WARN' | 'FAIL' | 'UNKNOWN';
5
+ explanation: string;
6
+ }
7
+ export declare const CRITIC_MAX_RETRIES = 2;
8
+ export interface CriticToolEntry {
9
+ toolName: string;
10
+ args: unknown;
11
+ result: unknown;
12
+ }
13
+ /** Extracts a structured log of tool calls from generateText step results. */
14
+ export declare function extractToolCallLog(steps: {
15
+ toolCalls: any[];
16
+ toolResults: any[];
17
+ }[]): CriticToolEntry[];
18
+ /**
19
+ * Runs the critic agent to verify the main agent's response against actual tool calls.
20
+ *
21
+ * @param config - Bernard configuration for provider/model selection.
22
+ * @param userInput - The original user request.
23
+ * @param responseText - The agent's final text response.
24
+ * @param toolCallLog - Structured log of tool calls and results.
25
+ * @param options - Optional retry flag, display prefix, and abort signal.
26
+ * @returns Parsed critic result, or null on error.
27
+ */
28
+ export declare function runCritic(config: BernardConfig, userInput: string, responseText: string, toolCallLog: CriticToolEntry[], options?: {
29
+ isRetry?: boolean;
30
+ prefix?: string;
31
+ abortSignal?: AbortSignal;
32
+ }): Promise<CriticResult | null>;
package/dist/critic.js ADDED
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CRITIC_MAX_RETRIES = exports.CRITIC_SYSTEM_PROMPT = void 0;
4
+ exports.extractToolCallLog = extractToolCallLog;
5
+ exports.runCritic = runCritic;
6
+ const ai_1 = require("ai");
7
+ const index_js_1 = require("./providers/index.js");
8
+ const output_js_1 = require("./output.js");
9
+ const logger_js_1 = require("./logger.js");
10
+ const CRITIC_TOTAL_RESULT_BUDGET = 8000;
11
+ const CRITIC_MIN_RESULT_CHARS = 500;
12
+ const CRITIC_MAX_RESPONSE_LENGTH = 4000;
13
+ const CRITIC_MAX_ARGS_LENGTH = 1000;
14
+ exports.CRITIC_SYSTEM_PROMPT = `You are a verification agent for Bernard, a CLI AI assistant. Your role is to review the agent's work and verify its integrity.
15
+
16
+ You will receive:
17
+ 1. The user's original request
18
+ 2. The agent's final text response
19
+ 3. A log of actual tool calls made (tool name, arguments, results) — note that tool results, arguments, and the agent response may be truncated for context efficiency
20
+
21
+ Your job:
22
+ - Check if the agent's claims in its response are supported by actual tool call results.
23
+ - Verify that tool calls were actually made for actions the agent claims to have performed.
24
+ - Flag any claims not backed by tool evidence (e.g., "I created the file" but no shell/write tool call).
25
+ - Flag any tool results that suggest failure but were reported as success.
26
+ - Tool results and the agent response may be truncated for context efficiency. If a tool result appears cut off, do not treat the missing portion as evidence of failure. Only flag FAIL when there is positive evidence of failure (e.g., an error message visible in the output), not merely the absence of success confirmation in truncated output.
27
+ - Check if the response addresses the user's original intent.
28
+
29
+ Output format (plain text, concise):
30
+ VERDICT: PASS | WARN | FAIL
31
+ [1-3 sentence explanation]
32
+ [If WARN/FAIL: specific issues found]
33
+
34
+ Be strict but fair. Not every response needs tool calls — knowledge answers are fine. Focus on cases where the agent *claims* to have done something via tools.`;
35
+ exports.CRITIC_MAX_RETRIES = 2;
36
+ /** Extracts a structured log of tool calls from generateText step results. */
37
+ function extractToolCallLog(steps) {
38
+ const entries = [];
39
+ for (const step of steps) {
40
+ for (let i = 0; i < step.toolCalls.length; i++) {
41
+ const tc = step.toolCalls[i];
42
+ const tr = step.toolResults[i];
43
+ entries.push({ toolName: tc.toolName, args: tc.args, result: tr?.result });
44
+ }
45
+ }
46
+ return entries;
47
+ }
48
+ /**
49
+ * Runs the critic agent to verify the main agent's response against actual tool calls.
50
+ *
51
+ * @param config - Bernard configuration for provider/model selection.
52
+ * @param userInput - The original user request.
53
+ * @param responseText - The agent's final text response.
54
+ * @param toolCallLog - Structured log of tool calls and results.
55
+ * @param options - Optional retry flag, display prefix, and abort signal.
56
+ * @returns Parsed critic result, or null on error.
57
+ */
58
+ async function runCritic(config, userInput, responseText, toolCallLog, options) {
59
+ try {
60
+ if (options?.isRetry) {
61
+ (0, output_js_1.printCriticReVerify)(options?.prefix);
62
+ }
63
+ else {
64
+ (0, output_js_1.printCriticStart)(options?.prefix);
65
+ }
66
+ const perResultLimit = Math.max(CRITIC_MIN_RESULT_CHARS, Math.floor(CRITIC_TOTAL_RESULT_BUDGET / toolCallLog.length));
67
+ const truncatedLog = toolCallLog.map((entry) => {
68
+ const raw = typeof entry.result === 'string' ? entry.result : JSON.stringify(entry.result ?? null);
69
+ const truncated = raw.length > perResultLimit ? raw.slice(0, perResultLimit) + '...' : raw;
70
+ return {
71
+ toolName: entry.toolName,
72
+ args: entry.args,
73
+ result: truncated,
74
+ };
75
+ });
76
+ const truncatedResponse = responseText.length > CRITIC_MAX_RESPONSE_LENGTH
77
+ ? responseText.slice(0, CRITIC_MAX_RESPONSE_LENGTH) + '\n... (truncated)'
78
+ : responseText;
79
+ const criticMessage = `## Original User Request
80
+ ${userInput}
81
+
82
+ ## Agent Response
83
+ ${truncatedResponse}
84
+
85
+ ## Tool Call Log (${truncatedLog.length} calls)
86
+ ${truncatedLog
87
+ .map((e, i) => {
88
+ const argsStr = JSON.stringify(e.args);
89
+ const truncatedArgs = argsStr.length > CRITIC_MAX_ARGS_LENGTH
90
+ ? argsStr.slice(0, CRITIC_MAX_ARGS_LENGTH) + '...'
91
+ : argsStr;
92
+ return `${i + 1}. ${e.toolName}(${truncatedArgs})\n Result: ${e.result}`;
93
+ })
94
+ .join('\n\n')}`;
95
+ const result = await (0, ai_1.generateText)({
96
+ model: (0, index_js_1.getModel)(config.provider, config.model),
97
+ system: exports.CRITIC_SYSTEM_PROMPT,
98
+ messages: [{ role: 'user', content: criticMessage }],
99
+ maxSteps: 1,
100
+ maxTokens: 1024,
101
+ abortSignal: options?.abortSignal,
102
+ });
103
+ if (result.text) {
104
+ const parsed = (0, output_js_1.parseCriticVerdict)(result.text);
105
+ (0, output_js_1.printCriticVerdict)(result.text, options?.prefix);
106
+ return {
107
+ verdict: parsed.verdict,
108
+ explanation: parsed.explanation,
109
+ };
110
+ }
111
+ return null;
112
+ }
113
+ catch (err) {
114
+ (0, logger_js_1.debugLog)('critic:error', err instanceof Error ? err.message : String(err));
115
+ return null;
116
+ }
117
+ }
118
+ //# sourceMappingURL=critic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"critic.js","sourceRoot":"","sources":["../src/critic.ts"],"names":[],"mappings":";;;AAoDA,gDAYC;AAYD,8BA4EC;AAxJD,2BAAkC;AAClC,mDAAgD;AAChD,2CAKqB;AACrB,2CAAuC;AAGvC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AACxC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AACpC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AACxC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAEvB,QAAA,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;gKAoB4H,CAAC;AAOpJ,QAAA,kBAAkB,GAAG,CAAC,CAAC;AAQpC,8EAA8E;AAC9E,SAAgB,kBAAkB,CAChC,KAAiD;IAEjD,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,SAAS,CAC7B,MAAqB,EACrB,SAAiB,EACjB,YAAoB,EACpB,WAA8B,EAC9B,OAA2E;IAE3E,IAAI,CAAC;QACH,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,IAAA,+BAAmB,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,IAAA,4BAAgB,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAC7B,uBAAuB,EACvB,IAAI,CAAC,KAAK,CAAC,0BAA0B,GAAG,WAAW,CAAC,MAAM,CAAC,CAC5D,CAAC;QAEF,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7C,MAAM,GAAG,GACP,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;YACzF,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;YAC3F,OAAO;gBACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,SAAS;aAClB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,iBAAiB,GACrB,YAAY,CAAC,MAAM,GAAG,0BAA0B;YAC9C,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,0BAA0B,CAAC,GAAG,mBAAmB;YACzE,CAAC,CAAC,YAAY,CAAC;QAEnB,MAAM,aAAa,GAAG;EACxB,SAAS;;;EAGT,iBAAiB;;oBAEC,YAAY,CAAC,MAAM;EACrC,YAAY;aACX,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACZ,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,aAAa,GACjB,OAAO,CAAC,MAAM,GAAG,sBAAsB;gBACrC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,GAAG,KAAK;gBAClD,CAAC,CAAC,OAAO,CAAC;YACd,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAI,aAAa,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC;QAC7E,CAAC,CAAC;aACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAEd,MAAM,MAAM,GAAG,MAAM,IAAA,iBAAY,EAAC;YAChC,KAAK,EAAE,IAAA,mBAAQ,EAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC;YAC9C,MAAM,EAAE,4BAAoB;YAC5B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;YACpD,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,OAAO,EAAE,WAAW;SAClC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,IAAA,8BAAkB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAA,8BAAkB,EAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACjD,OAAO;gBACL,OAAO,EAAE,MAAM,CAAC,OAAkC;gBAClD,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAA,oBAAQ,EAAC,cAAc,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -54,6 +54,7 @@ const mcp_js_1 = require("../mcp.js");
54
54
  const store_js_1 = require("./store.js");
55
55
  const log_store_js_1 = require("./log-store.js");
56
56
  const notify_js_1 = require("./notify.js");
57
+ const pac_js_1 = require("../pac.js");
57
58
  const DAEMON_SYSTEM_PROMPT = `You are Bernard, running as a background cron job in daemon mode. There is no interactive user present — you execute autonomously and have a limited step budget (20 steps), so work efficiently.
58
59
 
59
60
  ## Structured Approach
@@ -216,51 +217,70 @@ async function runJob(job, log) {
216
217
  ragResults,
217
218
  includeScratch: true,
218
219
  });
219
- // Append current date so the agent knows "today"
220
- const todayStr = new Date().toLocaleDateString('en-US', {
221
- weekday: 'long',
222
- year: 'numeric',
223
- month: 'long',
224
- day: 'numeric',
225
- });
226
- enrichedPrompt += `\n\nToday's date: ${todayStr}`;
220
+ // Append current date and time so the agent knows "now"
221
+ enrichedPrompt += `\n\nCurrent date and time: ${(0, datetime_js_1.formatCurrentDateTime)()}`;
227
222
  // Append connected MCP server names so the agent knows what's available
228
223
  if (serverNames.length > 0) {
229
224
  enrichedPrompt += `\nConnected MCP servers: ${serverNames.join(', ')}`;
230
225
  }
226
+ const onStepFinish = ({ text, toolCalls, toolResults, usage, finishReason, }) => {
227
+ const truncatedResults = (toolResults ?? []).map((tr) => ({
228
+ toolName: tr.toolName,
229
+ toolCallId: tr.toolCallId,
230
+ result: truncateResult(tr.result, 10240),
231
+ }));
232
+ steps.push({
233
+ stepIndex: stepIndex++,
234
+ timestamp: new Date().toISOString(),
235
+ text: text || '',
236
+ toolCalls: (toolCalls ?? []).map((tc) => ({
237
+ toolName: tc.toolName,
238
+ toolCallId: tc.toolCallId,
239
+ args: tc.args,
240
+ })),
241
+ toolResults: truncatedResults,
242
+ usage: {
243
+ promptTokens: usage?.promptTokens ?? 0,
244
+ completionTokens: usage?.completionTokens ?? 0,
245
+ totalTokens: (usage?.promptTokens ?? 0) + (usage?.completionTokens ?? 0),
246
+ },
247
+ finishReason: finishReason || 'unknown',
248
+ });
249
+ };
231
250
  const result = await (0, ai_1.generateText)({
232
251
  model: (0, index_js_1.getModel)(config.provider, config.model),
233
252
  tools,
234
- maxSteps: 20,
253
+ maxSteps: config.maxSteps,
235
254
  maxTokens: config.maxTokens,
236
255
  system: enrichedPrompt,
237
256
  messages: [{ role: 'user', content: job.prompt }],
238
- onStepFinish: ({ text, toolCalls, toolResults, usage, finishReason }) => {
239
- const truncatedResults = (toolResults || []).map((tr) => ({
240
- toolName: tr.toolName,
241
- toolCallId: tr.toolCallId,
242
- result: truncateResult(tr.result, 10240),
243
- }));
244
- steps.push({
245
- stepIndex: stepIndex++,
246
- timestamp: new Date().toISOString(),
247
- text: text || '',
248
- toolCalls: (toolCalls || []).map((tc) => ({
249
- toolName: tc.toolName,
250
- toolCallId: tc.toolCallId,
251
- args: tc.args,
252
- })),
253
- toolResults: truncatedResults,
254
- usage: {
255
- promptTokens: usage?.promptTokens ?? 0,
256
- completionTokens: usage?.completionTokens ?? 0,
257
- totalTokens: (usage?.promptTokens ?? 0) + (usage?.completionTokens ?? 0),
258
- },
259
- finishReason: finishReason || 'unknown',
260
- });
261
- },
257
+ onStepFinish,
262
258
  });
263
- const output = result.text || '(no text output)';
259
+ // Run PAC loop when critic mode is enabled
260
+ let finalOutput;
261
+ if (config.criticMode) {
262
+ const pacResult = await (0, pac_js_1.runPACLoop)({
263
+ config,
264
+ userInput: job.prompt,
265
+ initialResult: result,
266
+ regenerate: async (extraMessages) => {
267
+ return (0, ai_1.generateText)({
268
+ model: (0, index_js_1.getModel)(config.provider, config.model),
269
+ tools,
270
+ maxSteps: 20,
271
+ maxTokens: config.maxTokens,
272
+ system: enrichedPrompt,
273
+ messages: [{ role: 'user', content: job.prompt }, ...extraMessages],
274
+ onStepFinish,
275
+ });
276
+ },
277
+ });
278
+ finalOutput = pacResult.finalText || '(no text output)';
279
+ }
280
+ else {
281
+ finalOutput = result.text || '(no text output)';
282
+ }
283
+ const output = finalOutput;
264
284
  try {
265
285
  const totalUsage = steps.reduce((acc, s) => ({
266
286
  promptTokens: acc.promptTokens + s.usage.promptTokens,