maestro-agent-sdk 0.1.13 → 0.1.16

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 (52) hide show
  1. package/README.md +214 -163
  2. package/dist/core/agent.d.ts +7 -1
  3. package/dist/core/agent.d.ts.map +1 -1
  4. package/dist/core/agent.js +2 -0
  5. package/dist/core/agent.js.map +1 -1
  6. package/dist/core/loop.d.ts.map +1 -1
  7. package/dist/core/loop.js +77 -15
  8. package/dist/core/loop.js.map +1 -1
  9. package/dist/index.d.ts +7 -6
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +6 -5
  12. package/dist/index.js.map +1 -1
  13. package/dist/mcp/pool.d.ts +2 -2
  14. package/dist/mcp/pool.d.ts.map +1 -1
  15. package/dist/mcp/pool.js.map +1 -1
  16. package/dist/platform/env-bootstrap.js +4 -1
  17. package/dist/platform/env-bootstrap.js.map +1 -1
  18. package/dist/platform/logger.d.ts.map +1 -1
  19. package/dist/platform/logger.js.map +1 -1
  20. package/dist/platform/version.d.ts +1 -1
  21. package/dist/platform/version.js +1 -1
  22. package/dist/provider.d.ts +72 -17
  23. package/dist/provider.d.ts.map +1 -1
  24. package/dist/provider.js +119 -29
  25. package/dist/provider.js.map +1 -1
  26. package/dist/providers/anthropic.d.ts +98 -26
  27. package/dist/providers/anthropic.d.ts.map +1 -1
  28. package/dist/providers/anthropic.js +158 -31
  29. package/dist/providers/anthropic.js.map +1 -1
  30. package/dist/providers/deepseek.d.ts +16 -5
  31. package/dist/providers/deepseek.d.ts.map +1 -1
  32. package/dist/providers/deepseek.js +17 -6
  33. package/dist/providers/deepseek.js.map +1 -1
  34. package/dist/sub-agent/runner.d.ts.map +1 -1
  35. package/dist/sub-agent/runner.js +1 -1
  36. package/dist/sub-agent/runner.js.map +1 -1
  37. package/dist/tools/builtin/bash.d.ts.map +1 -1
  38. package/dist/tools/builtin/bash.js.map +1 -1
  39. package/dist/tools/builtin/edit.d.ts.map +1 -1
  40. package/dist/tools/builtin/edit.js.map +1 -1
  41. package/dist/tools/builtin/multi_edit.d.ts.map +1 -1
  42. package/dist/tools/builtin/multi_edit.js.map +1 -1
  43. package/dist/tools/builtin/write.d.ts.map +1 -1
  44. package/dist/tools/builtin/write.js.map +1 -1
  45. package/dist/tools/index.d.ts +36 -0
  46. package/dist/tools/index.d.ts.map +1 -0
  47. package/dist/tools/index.js +40 -0
  48. package/dist/tools/index.js.map +1 -0
  49. package/dist/types.d.ts +78 -0
  50. package/dist/types.d.ts.map +1 -1
  51. package/dist/types.js.map +1 -1
  52. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/core/loop.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,MAAM,aAAa,GAA2B,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAU,CAAC;AAE5G,SAAS,eAAe,CAAC,OAAgC;IACvD,MAAM,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC;IACvD,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,OAAO,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAEpC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,eAAe,CACpC,KAAc,EACd,QAA2B;IAE3B,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;IAC3C,MAAM,QAAQ,GAGV;QACF,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,wBAAwB,EAAE,CAAC;QAC3B,oBAAoB,EAAE,CAAC;KACxB,CAAC;IAEF,OAAO,UAAU,GAAG,OAAO,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACtC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;YACzD,OAAO;QACT,CAAC;QAED,qDAAqD;QACrD,uEAAuE;QACvE,gEAAgE;QAChE,uEAAuE;QACvE,uEAAuE;QACvE,mCAAmC;QACnC,uEAAuE;QACvE,EAAE;QACF,qEAAqE;QACrE,qEAAqE;QACrE,sEAAsE;QACtE,kEAAkE;QAClE,EAAE;QACF,qEAAqE;QACrE,wEAAwE;QACxE,uEAAuE;QACvE,kEAAkE;QAClE,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE;YACpD,WAAW,EAAE,KAAK,CAAC,QAAQ;YAC3B,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;YAC5B,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/E,CAAC,CAAC;QAEH,gEAAgE;QAChE,uEAAuE;QACvE,wEAAwE;QACxE,sEAAsE;QACtE,+CAA+C;QAC/C,MAAM,QAAQ,GAAG;YACf,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;YACzB,QAAQ,EAAE,YAAY;YACtB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY;YACjC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE;YAC5B,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;YACjC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/E,CAAC;QACF,IAAI,QAA0B,CAAC;QAC/B,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAmE,EAAE,CAAC;QACpF,MAAM,eAAe,GAA2B,EAAE,CAAC;QAEnD,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC1B,kEAAkE;YAClE,mEAAmE;YACnE,MAAM,eAAe,GAAG,IAAI,GAAG,EAA6C,CAAC;YAC7E,IAAI,WAAW,GAAe,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;YAClE,IAAI,gBAAgB,GAAG,UAAU,CAAC;YAClC,mEAAmE;YACnE,qEAAqE;YACrE,iEAAiE;YACjE,wDAAwD;YACxD,4DAA4D;YAC5D,uCAAuC;YACvC,MAAM,QAAQ,GAAG,IAAI,wBAAwB,EAAE,CAAC;YAEhD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1D,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC3C,aAAa,IAAI,QAAQ,CAAC;oBAC1B,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;gBAC3E,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;oBAC3C,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnE,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;oBACjD,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC1C,IAAI,GAAG;wBAAE,GAAG,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,CAAC;gBAC7C,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAC9C,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC1C,IAAI,CAAC,GAAG;wBAAE,SAAS;oBACnB,IAAI,KAAK,GAA4B,EAAE,CAAC;oBACxC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,IAAI,CAAC;4BACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBAClC,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAChE,sEAAsE,CACvE,CAAC;wBACJ,CAAC;oBACH,CAAC;oBACD,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;oBACzD,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;oBAClF,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;oBACpD,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACnC,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAC9C,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACpC,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;oBAC7C,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC;oBAC1B,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,sEAAsE;YACtE,mEAAmE;YACnE,8DAA8D;YAC9D,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,aAAa,IAAI,IAAI,CAAC;gBACtB,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC9C,CAAC;YAED,gEAAgE;YAChE,qEAAqE;YACrE,uEAAuE;YACvE,EAAE;YACF,uEAAuE;YACvE,uEAAuE;YACvE,sEAAsE;YACtE,oEAAoE;YACpE,mEAAmE;YACnE,oEAAoE;YACpE,2DAA2D;YAC3D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAChD,MAAM,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAClC,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,mBAAmB,EAAE,CAAC;wBAClD,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC;oBACnB,CAAC;yBAAM,CAAC;wBACN,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;YAC7E,CAAC;YACD,QAAQ,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QAC5F,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnD,sEAAsE;YACtE,+DAA+D;YAC/D,gEAAgE;YAChE,kEAAkE;YAClE,mEAAmE;YACnE,gEAAgE;YAChE,oEAAoE;YACpE,uEAAuE;YACvE,gEAAgE;YAChE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAC/D,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC1B,iEAAiE;oBACjE,gEAAgE;oBAChE,gDAAgD;oBAChD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACxC,aAAa,IAAI,OAAO,CAAC;oBACzB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;oBACxD,CAAC;yBAAM,IAAI,gBAAgB,EAAE,CAAC;wBAC5B,mDAAmD;wBACnD,4DAA4D;wBAC5D,6DAA6D;wBAC7D,6DAA6D;wBAC7D,6DAA6D;wBAC7D,yDAAyD;wBACzD,0DAA0D;wBAC1D,sDAAsD;wBACtD,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;oBACnD,CAAC;gBACH,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;oBACtE,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC5B,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;gBACnE,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAC3E,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC;QACnD,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC;QACrD,QAAQ,CAAC,wBAAwB,IAAI,QAAQ,CAAC,KAAK,CAAC,wBAAwB,IAAI,CAAC,CAAC;QAClF,QAAQ,CAAC,oBAAoB,IAAI,QAAQ,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,CAAC;QAE1E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,oEAAoE;YACpE,mEAAmE;YACnE,oEAAoE;YACpE,qDAAqD;YACrD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;YAC/C,iEAAiE;YACjE,uEAAuE;YACvE,mEAAmE;YACnE,KAAK,CAAC,CAAC,iBAAiB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAClD,CAAC;QAED,sEAAsE;QACtE,qEAAqE;QACrE,qEAAqE;QACrE,uEAAuE;QACvE,wBAAwB;QACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;QAE/D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,iCAAiC;YACjC,MAAM;gBACJ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,aAAa;gBACtB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE;oBACL,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,YAAY,EAAE,QAAQ,CAAC,YAAY;oBACnC,GAAG,CAAC,QAAQ,CAAC,wBAAwB,GAAG,CAAC,IAAI;wBAC3C,wBAAwB,EAAE,QAAQ,CAAC,wBAAwB;qBAC5D,CAAC;oBACF,GAAG,CAAC,QAAQ,CAAC,oBAAoB,GAAG,CAAC,IAAI;wBACvC,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB;qBACpD,CAAC;iBACH;aACF,CAAC;YACF,qEAAqE;YACrE,uEAAuE;YACvE,oDAAoD;YACpD,KAAK,CAAC,CAAC,iBAAiB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QAED,qEAAqE;QACrE,sEAAsE;QACtE,cAAc;QACd,wEAAwE;QACxE,0EAA0E;QAC1E,iEAAiE;QACjE,wEAAwE;QACxE,sEAAsE;QACtE,yDAAyD;QACzD,EAAE;QACF,wEAAwE;QACxE,wEAAwE;QACxE,qEAAqE;QACrE,sEAAsE;QACtE,kDAAkD;QAClD,MAAM,OAAO,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,eAAe,GAAa,EAAE,CAAC;QACrC,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,IAAI,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CACtF,CAAC;YACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC/E,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,yEAAyE;QACzE,kCAAkC;QAClC,MAAM,gBAAgB,GAA2B,EAAE,CAAC;QACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACvB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,OAAO,GACX,MAAM,CAAC,MAAM,GAAG,uBAAuB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC9F,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;YAClE,gBAAgB,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,EAAE,CAAC,EAAE;gBAClB,OAAO,EAAE,MAAM;aAChB,CAAC,CAAC;QACL,CAAC;QAED,sEAAsE;QACtE,iEAAiE;QACjE,oEAAoE;QACpE,qEAAqE;QACrE,sDAAsD;QACtD,EAAE;QACF,mEAAmE;QACnE,mEAAmE;QACnE,sDAAsD;QACtD,EAAE;QACF,qEAAqE;QACrE,qEAAqE;QACrE,qEAAqE;QACrE,oEAAoE;QACpE,oBAAoB;QACpB,IAAI,KAAK,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1D,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAC/D,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5C,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAC3D,UAAU,EAAE,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM;QACJ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,UAAU;YACjB,CAAC,CAAC,iCAAiC,OAAO,2BAA2B,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,gCAAgC,UAAU,uBAAuB,UAAU,EAAE;YAClL,CAAC,CAAC,iCAAiC,OAAO,2BAA2B,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,qBAAqB;QAC5H,UAAU,EAAE,gBAAgB;QAC5B,KAAK,EAAE;YACL,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,GAAG,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,QAAQ,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7G,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClG;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/core/loop.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAI9D,qEAAqE;AACrE,uEAAuE;AACvE,gEAAgE;AAChE,wEAAwE;AACxE,mEAAmE;AAEnE;;;;;;;;;;;;;GAaG;AACH,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAEpC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,eAAe,CACpC,KAAc,EACd,QAA2B;IAE3B,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;IAC3C,MAAM,QAAQ,GAGV;QACF,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,wBAAwB,EAAE,CAAC;QAC3B,oBAAoB,EAAE,CAAC;KACxB,CAAC;IAEF,OAAO,UAAU,GAAG,OAAO,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACtC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;YACzD,OAAO;QACT,CAAC;QAED,qDAAqD;QACrD,uEAAuE;QACvE,gEAAgE;QAChE,uEAAuE;QACvE,uEAAuE;QACvE,mCAAmC;QACnC,uEAAuE;QACvE,EAAE;QACF,qEAAqE;QACrE,qEAAqE;QACrE,sEAAsE;QACtE,kEAAkE;QAClE,EAAE;QACF,qEAAqE;QACrE,wEAAwE;QACxE,uEAAuE;QACvE,kEAAkE;QAClE,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE;YACpD,WAAW,EAAE,KAAK,CAAC,QAAQ;YAC3B,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;YAC5B,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/E,CAAC,CAAC;QAEH,gEAAgE;QAChE,uEAAuE;QACvE,wEAAwE;QACxE,sEAAsE;QACtE,+CAA+C;QAC/C,gEAAgE;QAChE,sEAAsE;QACtE,iEAAiE;QACjE,qEAAqE;QACrE,+DAA+D;QAC/D,oEAAoE;QACpE,4CAA4C;QAC5C,MAAM,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAC3F,MAAM,QAAQ,GAAG;YACf,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;YACzB,QAAQ,EAAE,YAAY;YACtB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY;YACjC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE;YAC5B,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;YACjC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/E,CAAC;QAEF,uBAAuB;QACvB,qEAAqE;QACrE,uEAAuE;QACvE,+DAA+D;QAC/D,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,EAAE;gBAC5D,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/E,CAAC,CAAC;YACH,IAAI,SAAS,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACtC,MAAM;oBACJ,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,8BAA8B;iBAC7D,CAAC;gBACF,OAAO;YACT,CAAC;YACD,IAAI,SAAS,CAAC,QAAQ,KAAK,gBAAgB,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACjE,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;iBACrD,CAAC,CAAC;gBACH,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;gBAC3D,SAAS;YACX,CAAC;YACD,wCAAwC;QAC1C,CAAC;QAED,IAAI,QAA0B,CAAC;QAC/B,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAmE,EAAE,CAAC;QACpF,MAAM,eAAe,GAA2B,EAAE,CAAC;QAEnD,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC1B,kEAAkE;YAClE,mEAAmE;YACnE,MAAM,eAAe,GAAG,IAAI,GAAG,EAA6C,CAAC;YAC7E,IAAI,WAAW,GAAe,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;YAClE,IAAI,gBAAgB,GAAG,UAAU,CAAC;YAClC,mEAAmE;YACnE,qEAAqE;YACrE,iEAAiE;YACjE,wDAAwD;YACxD,4DAA4D;YAC5D,uCAAuC;YACvC,MAAM,QAAQ,GAAG,IAAI,wBAAwB,EAAE,CAAC;YAEhD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1D,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC3C,aAAa,IAAI,QAAQ,CAAC;oBAC1B,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;gBAC3E,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;oBAC3C,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnE,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;oBACjD,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC1C,IAAI,GAAG;wBAAE,GAAG,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,CAAC;gBAC7C,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAC9C,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC1C,IAAI,CAAC,GAAG;wBAAE,SAAS;oBACnB,IAAI,KAAK,GAA4B,EAAE,CAAC;oBACxC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,IAAI,CAAC;4BACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBAClC,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAChE,sEAAsE,CACvE,CAAC;wBACJ,CAAC;oBACH,CAAC;oBACD,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;oBACzD,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;oBAClF,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;oBACpD,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACnC,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAC9C,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACpC,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;oBAC7C,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC;oBAC1B,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,sEAAsE;YACtE,mEAAmE;YACnE,8DAA8D;YAC9D,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,aAAa,IAAI,IAAI,CAAC;gBACtB,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC9C,CAAC;YAED,gEAAgE;YAChE,qEAAqE;YACrE,uEAAuE;YACvE,EAAE;YACF,uEAAuE;YACvE,uEAAuE;YACvE,sEAAsE;YACtE,oEAAoE;YACpE,mEAAmE;YACnE,oEAAoE;YACpE,2DAA2D;YAC3D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAChD,MAAM,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAClC,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,mBAAmB,EAAE,CAAC;wBAClD,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC;oBACnB,CAAC;yBAAM,CAAC;wBACN,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;YAC7E,CAAC;YACD,QAAQ,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QAC5F,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnD,sEAAsE;YACtE,+DAA+D;YAC/D,gEAAgE;YAChE,kEAAkE;YAClE,mEAAmE;YACnE,gEAAgE;YAChE,oEAAoE;YACpE,uEAAuE;YACvE,gEAAgE;YAChE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAC/D,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC1B,iEAAiE;oBACjE,gEAAgE;oBAChE,gDAAgD;oBAChD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACxC,aAAa,IAAI,OAAO,CAAC;oBACzB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;oBACxD,CAAC;yBAAM,IAAI,gBAAgB,EAAE,CAAC;wBAC5B,mDAAmD;wBACnD,4DAA4D;wBAC5D,6DAA6D;wBAC7D,6DAA6D;wBAC7D,6DAA6D;wBAC7D,yDAAyD;wBACzD,0DAA0D;wBAC1D,sDAAsD;wBACtD,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;oBACnD,CAAC;gBACH,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;oBACtE,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC5B,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;gBACnE,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBAC3E,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC;QACnD,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC;QACrD,QAAQ,CAAC,wBAAwB,IAAI,QAAQ,CAAC,KAAK,CAAC,wBAAwB,IAAI,CAAC,CAAC;QAClF,QAAQ,CAAC,oBAAoB,IAAI,QAAQ,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,CAAC;QAE1E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,oEAAoE;YACpE,mEAAmE;YACnE,oEAAoE;YACpE,qDAAqD;YACrD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;YAC/C,iEAAiE;YACjE,uEAAuE;YACvE,mEAAmE;YACnE,KAAK,CAAC,CAAC,iBAAiB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAClD,CAAC;QAED,sEAAsE;QACtE,qEAAqE;QACrE,qEAAqE;QACrE,uEAAuE;QACvE,wBAAwB;QACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;QAE/D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,wBAAwB;YACxB,wEAAwE;YACxE,oEAAoE;YACpE,2EAA2E;YAC3E,IAAI,aAAa,GAAG,aAAa,CAAC;YAClC,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC7B,sEAAsE;gBACtE,mDAAmD;gBACnD,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,EAAE;oBAC/D,QAAQ;oBACR,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC/E,CAAC,CAAC;gBACH,IAAI,UAAU,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;oBACvC,MAAM;wBACJ,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,+BAA+B;qBAC/D,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,IAAI,UAAU,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;oBAC7C,aAAa,GAAG,UAAU,CAAC,OAAO,IAAI,aAAa,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,iCAAiC;YACjC,MAAM;gBACJ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,aAAa;gBACtB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE;oBACL,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,YAAY,EAAE,QAAQ,CAAC,YAAY;oBACnC,GAAG,CAAC,QAAQ,CAAC,wBAAwB,GAAG,CAAC,IAAI;wBAC3C,wBAAwB,EAAE,QAAQ,CAAC,wBAAwB;qBAC5D,CAAC;oBACF,GAAG,CAAC,QAAQ,CAAC,oBAAoB,GAAG,CAAC,IAAI;wBACvC,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB;qBACpD,CAAC;iBACH;aACF,CAAC;YACF,qEAAqE;YACrE,uEAAuE;YACvE,oDAAoD;YACpD,KAAK,CAAC,CAAC,iBAAiB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QAED,qEAAqE;QACrE,sEAAsE;QACtE,cAAc;QACd,wEAAwE;QACxE,0EAA0E;QAC1E,iEAAiE;QACjE,wEAAwE;QACxE,sEAAsE;QACtE,yDAAyD;QACzD,EAAE;QACF,wEAAwE;QACxE,wEAAwE;QACxE,qEAAqE;QACrE,sEAAsE;QACtE,kDAAkD;QAClD,MAAM,OAAO,GAAG,IAAI,KAAK,CAAS,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,eAAe,GAAa,EAAE,CAAC;QACrC,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,IAAI,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CACtF,CAAC;YACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC/E,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,yEAAyE;QACzE,kCAAkC;QAClC,MAAM,gBAAgB,GAA2B,EAAE,CAAC;QACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACvB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,OAAO,GACX,MAAM,CAAC,MAAM,GAAG,uBAAuB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC9F,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;YAClE,gBAAgB,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,EAAE,CAAC,EAAE;gBAClB,OAAO,EAAE,MAAM;aAChB,CAAC,CAAC;QACL,CAAC;QAED,sEAAsE;QACtE,iEAAiE;QACjE,oEAAoE;QACpE,qEAAqE;QACrE,sDAAsD;QACtD,EAAE;QACF,mEAAmE;QACnE,mEAAmE;QACnE,sDAAsD;QACtD,EAAE;QACF,qEAAqE;QACrE,qEAAqE;QACrE,qEAAqE;QACrE,oEAAoE;QACpE,oBAAoB;QACpB,IAAI,KAAK,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1D,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAC/D,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5C,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAC3D,UAAU,EAAE,CAAC;IACf,CAAC;IAED,sEAAsE;IACtE,uEAAuE;IACvE,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,kCAAkC;IAClC,MAAM;QACJ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,iCAAiC,OAAO,2BAA2B,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,iFAAiF,OAAO,2DAA2D;QAC/P,UAAU,EAAE,gBAAgB;QAC5B,KAAK,EAAE;YACL,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,GAAG,CAAC,QAAQ,CAAC,wBAAwB;gBACnC,CAAC,CAAC,EAAE,wBAAwB,EAAE,QAAQ,CAAC,wBAAwB,EAAE;gBACjE,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,QAAQ,CAAC,oBAAoB;gBAC/B,CAAC,CAAC,EAAE,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB,EAAE;gBACzD,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CAAC;AACJ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,9 @@
1
1
  /**
2
2
  * maestro-agent-sdk — public API.
3
3
  *
4
- * Provider-agnostic agent loop with built-in tools, skills, memory, and MCP.
4
+ * Provider-agnostic agent loop with built-in tools, skills, memory, MCP,
5
+ * and host-controlled guardrails (LLM pre/post hooks + tool hooks).
5
6
  * See README.md for a quick start.
6
- *
7
- * Originally derived from Nous Research's hermes-agent (MIT); see NOTICE.
8
7
  */
9
8
  export { MAESTRO_SDK_VERSION } from "./platform/version.js";
10
9
  export declare const MAESTRO_UPSTREAM_SNAPSHOT: "v0.13.0 (2026-05-07)";
@@ -20,8 +19,8 @@ export { estimateTokens } from "./memory/token-estimate.js";
20
19
  export { onShutdown, runShutdown } from "./platform/lifecycle.js";
21
20
  export { type LogFn, type Logger, setLogger } from "./platform/logger.js";
22
21
  export { type McpResolver, type McpServerMap, setMcpResolver } from "./platform/mcp-config.js";
23
- export { applySkillAllowlist, isAbortError, iterationBudgetLine, MAESTRO_DEFAULT_SKILL_KEY, maestroProvider, providerForModel, resolveSkillsDir, } from "./provider.js";
24
- export { AnthropicProvider, applyThinkingBudget, buildCacheableMessages, buildCacheableSystem, buildCacheableTools, effortToMaxIter, effortToThinkingBudget, } from "./providers/anthropic.js";
22
+ export { applySkillAllowlist, DEFAULT_MAX_ITERATIONS, isAbortError, iterationBudgetLine, MAESTRO_DEFAULT_SKILL_KEY, maestroProvider, providerForModel, resolveSkillsDir, wrapUpOverlayLine, } from "./provider.js";
23
+ export { AnthropicProvider, applyThinkingBudget, buildCacheableMessages, buildCacheableSystem, buildCacheableTools, effortToPersonaPrompt, effortToThinkingBudget, thinkingBudgetForTurn, } from "./providers/anthropic.js";
25
24
  export type { Provider, ProviderCompleteOptions, ProviderContentBlock, ProviderMessage, ProviderResponse, ProviderStreamChunk, ProviderToolSchema, } from "./providers/base.js";
26
25
  export { DeepseekProvider, effortForDeepseek, translateMessagesToOpenAI, translateToolsToOpenAI, } from "./providers/deepseek.js";
27
26
  export { maestroRegistry } from "./registry.js";
@@ -38,13 +37,15 @@ export { bashTool } from "./tools/builtin/bash.js";
38
37
  export { createEditTool } from "./tools/builtin/edit.js";
39
38
  export { compileGlob, globTool } from "./tools/builtin/glob.js";
40
39
  export { grepTool } from "./tools/builtin/grep.js";
40
+ export { createMultiEditTool } from "./tools/builtin/multi_edit.js";
41
41
  export { createReadTool } from "./tools/builtin/read.js";
42
42
  export { createSkillViewTool } from "./tools/builtin/skill_view.js";
43
43
  export { createSkillWriteTool } from "./tools/builtin/skill_write.js";
44
44
  export { createTaskCreateTool, createTaskGetTool, createTaskListTool, createTaskUpdateTool, } from "./tools/builtin/tasks.js";
45
+ export { webFetchTool } from "./tools/builtin/web_fetch.js";
45
46
  export { createWriteTool } from "./tools/builtin/write.js";
46
47
  export { dropFileStateTracker, getFileStateTracker } from "./tools/file-state.js";
47
48
  export { type HookRegistration, type PostToolUseContext, type PostToolUseHook, type PostToolUseResult, type PreToolUseContext, type PreToolUseDecision, type PreToolUseHook, type ToolHandler, ToolRegistry, } from "./tools/registry.js";
48
- export type { AgentHooks, AgentKind, AgentQueryOptions, EffortLevel, TokenUsage, UnifiedEvent, } from "./types.js";
49
+ export type { AgentHooks, AgentKind, AgentQueryOptions, EffortLevel, GuardrailDecision, GuardrailResult, LlmPostHook, LlmPreHook, TokenUsage, UnifiedEvent, } from "./types.js";
49
50
  export { FALLBACK_AGENT, isAgentKind, MAESTRO_EFFORT_VALUES, SUPPORTED_AGENTS, } from "./types.js";
50
51
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,10 +1,9 @@
1
1
  /**
2
2
  * maestro-agent-sdk — public API.
3
3
  *
4
- * Provider-agnostic agent loop with built-in tools, skills, memory, and MCP.
4
+ * Provider-agnostic agent loop with built-in tools, skills, memory, MCP,
5
+ * and host-controlled guardrails (LLM pre/post hooks + tool hooks).
5
6
  * See README.md for a quick start.
6
- *
7
- * Originally derived from Nous Research's hermes-agent (MIT); see NOTICE.
8
7
  */
9
8
  export { MAESTRO_SDK_VERSION } from "./platform/version.js";
10
9
  export const MAESTRO_UPSTREAM_SNAPSHOT = "v0.13.0 (2026-05-07)";
@@ -21,8 +20,8 @@ export { onShutdown, runShutdown } from "./platform/lifecycle.js";
21
20
  // ─── Host integration points (dependency injection) ──────────────────────────
22
21
  export { setLogger } from "./platform/logger.js";
23
22
  export { setMcpResolver } from "./platform/mcp-config.js";
24
- export { applySkillAllowlist, isAbortError, iterationBudgetLine, MAESTRO_DEFAULT_SKILL_KEY, maestroProvider, providerForModel, resolveSkillsDir, } from "./provider.js";
25
- export { AnthropicProvider, applyThinkingBudget, buildCacheableMessages, buildCacheableSystem, buildCacheableTools, effortToMaxIter, effortToThinkingBudget, } from "./providers/anthropic.js";
23
+ export { applySkillAllowlist, DEFAULT_MAX_ITERATIONS, isAbortError, iterationBudgetLine, MAESTRO_DEFAULT_SKILL_KEY, maestroProvider, providerForModel, resolveSkillsDir, wrapUpOverlayLine, } from "./provider.js";
24
+ export { AnthropicProvider, applyThinkingBudget, buildCacheableMessages, buildCacheableSystem, buildCacheableTools, effortToPersonaPrompt, effortToThinkingBudget, thinkingBudgetForTurn, } from "./providers/anthropic.js";
26
25
  export { DeepseekProvider, effortForDeepseek, translateMessagesToOpenAI, translateToolsToOpenAI, } from "./providers/deepseek.js";
27
26
  // ─── Maestro registry + top-level provider entry point ───────────────────────
28
27
  export { maestroRegistry } from "./registry.js";
@@ -42,10 +41,12 @@ export { bashTool } from "./tools/builtin/bash.js";
42
41
  export { createEditTool } from "./tools/builtin/edit.js";
43
42
  export { compileGlob, globTool } from "./tools/builtin/glob.js";
44
43
  export { grepTool } from "./tools/builtin/grep.js";
44
+ export { createMultiEditTool } from "./tools/builtin/multi_edit.js";
45
45
  export { createReadTool } from "./tools/builtin/read.js";
46
46
  export { createSkillViewTool } from "./tools/builtin/skill_view.js";
47
47
  export { createSkillWriteTool } from "./tools/builtin/skill_write.js";
48
48
  export { createTaskCreateTool, createTaskGetTool, createTaskListTool, createTaskUpdateTool, } from "./tools/builtin/tasks.js";
49
+ export { webFetchTool } from "./tools/builtin/web_fetch.js";
49
50
  export { createWriteTool } from "./tools/builtin/write.js";
50
51
  export { dropFileStateTracker, getFileStateTracker } from "./tools/file-state.js";
51
52
  // ─── Tool registry + hook surface ────────────────────────────────────────────
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAA+B,CAAC;AAUzE,gFAAgF;AAChF,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,gFAAgF;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC/D,gFAAgF;AAChF,OAAO,EAA2B,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAuC,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAY/B,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,gFAAgF;AAChF,OAAO,EACL,2BAA2B,EAC3B,8BAA8B,EAC9B,oBAAoB,EACpB,sBAAsB,EAEtB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAmB,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAsB,MAAM,gBAAgB,CAAC;AACzE,gFAAgF;AAChF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAmC,MAAM,eAAe,CAAC;AAE7F,OAAO,EAA2B,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,gFAAgF;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC/E,gFAAgF;AAChF,OAAO,EASL,YAAY,GACb,MAAM,kBAAkB,CAAC;AAU1B,OAAO,EACL,cAAc,EACd,WAAW,EACX,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAA+B,CAAC;AAUzE,gFAAgF;AAChF,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAI9C,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,gFAAgF;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC/D,gFAAgF;AAChF,OAAO,EAA2B,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAuC,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAY/B,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,gFAAgF;AAChF,OAAO,EACL,2BAA2B,EAC3B,8BAA8B,EAC9B,oBAAoB,EACpB,sBAAsB,EAEtB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAmB,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAsB,MAAM,gBAAgB,CAAC;AACzE,gFAAgF;AAChF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAmC,MAAM,eAAe,CAAC;AAE7F,OAAO,EAA2B,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,gFAAgF;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC/E,gFAAgF;AAChF,OAAO,EAUL,YAAY,GACb,MAAM,kBAAkB,CAAC;AAc1B,OAAO,EACL,cAAc,EACd,WAAW,EACX,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,SAAS,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { MaestroMcpClient, MaestroMcpTool } from "../mcp/client.js";
1
+ import type { MaestroMcpClient, MaestroMcpServerSpec, MaestroMcpTool } from "../mcp/client.js";
2
2
  import { type CacheKeyContext } from "../mcp/pool-cache.js";
3
3
  import type { ToolRegistry } from "../tools/registry.js";
4
4
  /**
@@ -48,7 +48,7 @@ export interface MaestroMcpPool {
48
48
  * playwright stdio with `--user-data-dir` differs per user-session anyway, but
49
49
  * scoping by context keeps the invariant even when specs happen to match).
50
50
  */
51
- export declare function startMcpPool(servers: Record<string, unknown>, ctx?: CacheKeyContext): Promise<MaestroMcpPool>;
51
+ export declare function startMcpPool(servers: Record<string, MaestroMcpServerSpec>, ctx?: CacheKeyContext): Promise<MaestroMcpPool>;
52
52
  /**
53
53
  * Register every MCP tool in the pool into the given Maestro ToolRegistry.
54
54
  *
@@ -1 +1 @@
1
- {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/mcp/pool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAwB,cAAc,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,KAAK,eAAe,EAAmC,MAAM,kBAAkB,CAAC;AAEzF,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC;IACrC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,CAAC;IACjC,uDAAuD;IACvD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,GAAG,GAAE,eAAoB,GACxB,OAAO,CAAC,cAAc,CAAC,CAuCzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,cAAc,EACpB,WAAW,CAAC,EAAE,WAAW,GACxB,IAAI,CAwBN"}
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/mcp/pool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,KAAK,eAAe,EAAmC,MAAM,kBAAkB,CAAC;AAEzF,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC;IACrC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,CAAC;IACjC,uDAAuD;IACvD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAC7C,GAAG,GAAE,eAAoB,GACxB,OAAO,CAAC,cAAc,CAAC,CAuCzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,cAAc,EACpB,WAAW,CAAC,EAAE,WAAW,GACxB,IAAI,CAwBN"}
@@ -1 +1 @@
1
- {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/mcp/pool.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,gBAAgB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAqC3C;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAgC,EAChC,MAAuB,EAAE;IAEzB,MAAM,OAAO,GAAuB,EAAE,CAAC;IACvC,MAAM,KAAK,GAAqB,EAAE,CAAC;IAEnC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE;QACjC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,IAA4B,CAAC,CAAC;QAC/E,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QACpC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAC/B,oDAAoD,CACrD,CAAC;YACF,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,OAAO;QACL,OAAO;QACP,KAAK;QACL,KAAK,CAAC,KAAK;YACT,IAAI,MAAM;gBAAE,OAAO;YACnB,MAAM,GAAG,IAAI,CAAC;YACd,wEAAwE;YACxE,2CAA2C;YAC3C,KAAK,MAAM,CAAC,IAAI,OAAO;gBAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAC9B,QAAsB,EACtB,IAAoB,EACpB,WAAyB;IAEzB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CACT,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,UAAU,EAAE,EAC7C,kDAAkD,CACnD,CAAC;YACF,SAAS;QACX,CAAC;QACD,MAAM,OAAO,GAAgB;YAC3B,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,KAAK,CAAC,OAAO,CAAC,KAAK;gBACjB,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;gBACxC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,IAAI,CAAC,SAAS,CAAC;wBACpB,KAAK,EAAE,eAAe,CAAC,CAAC,UAAU,iBAAiB;qBACpD,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;YAC7D,CAAC;SACF,CAAC;QACF,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/mcp/pool.ts"],"names":[],"mappings":"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"}
@@ -100,7 +100,10 @@ export function bootstrapHostPath() {
100
100
  const stdout = String(result.stdout ?? "");
101
101
  // Use the last non-empty line — defends against rc-file greetings and
102
102
  // any other startup output that lands above our `echo $PATH`.
103
- const lines = stdout.split("\n").map((l) => l.trim()).filter((l) => l.length > 0);
103
+ const lines = stdout
104
+ .split("\n")
105
+ .map((l) => l.trim())
106
+ .filter((l) => l.length > 0);
104
107
  const loginPath = lines[lines.length - 1] ?? "";
105
108
  if (!loginPath) {
106
109
  _log.warn({}, "env-bootstrap: login shell returned empty PATH");
@@ -1 +1 @@
1
- {"version":3,"file":"env-bootstrap.js","sourceRoot":"","sources":["../../src/platform/env-bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env-bootstrap.js","sourceRoot":"","sources":["../../src/platform/env-bootstrap.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/platform/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;CACd;AAED,MAAM,WAAW,KAAK;IACpB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnD,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AA4BD,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAE9C;AAED,eAAO,MAAM,MAAM,EAAE,MAInB,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/platform/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;CACd;AAED,MAAM,WAAW,KAAK;IACpB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnD,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AA2BD,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAE9C;AAED,eAAO,MAAM,MAAM,EAAE,MAInB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/platform/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAgBH,SAAS,iBAAiB;IACxB,8DAA8D;IAC9D,uEAAuE;IACvE,4EAA4E;IAC5E,kEAAkE;IAClE,sEAAsE;IACtE,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,EAAE,CAC7B,CAAC,QAA0C,EAAE,GAAY,EAAE,EAAE;QAC3D,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,GAAG,IAAI,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;QACrD,CAAC;IACH,CAAC,CAAC;IACJ,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,OAAO,CAAU;QAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAU;QAC7B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAU;QAC3B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAU;QAC3B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAU;QAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAU;KAC9B,CAAC;AACJ,CAAC;AAED,IAAI,OAAO,GAAW,iBAAiB,EAAE,CAAC;AAE1C,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,OAAO,GAAG,MAAM,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAW,IAAI,KAAK,CAAC,EAAY,EAAE;IACpD,GAAG,CAAC,OAAO,EAAE,IAAkB;QAC7B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/platform/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAgBH,SAAS,iBAAiB;IACxB,8DAA8D;IAC9D,uEAAuE;IACvE,4EAA4E;IAC5E,kEAAkE;IAClE,sEAAsE;IACtE,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,QAA0C,EAAE,GAAY,EAAE,EAAE;QAC3F,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,GAAG,IAAI,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;QACrD,CAAC;IACH,CAAC,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,OAAO,CAAU;QAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAU;QAC7B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAU;QAC3B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAU;QAC3B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAU;QAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAU;KAC9B,CAAC;AACJ,CAAC;AAED,IAAI,OAAO,GAAW,iBAAiB,EAAE,CAAC;AAE1C,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,OAAO,GAAG,MAAM,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAW,IAAI,KAAK,CAAC,EAAY,EAAE;IACpD,GAAG,CAAC,OAAO,EAAE,IAAkB;QAC7B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;CACF,CAAC,CAAC"}
@@ -9,5 +9,5 @@
9
9
  *
10
10
  * Bump in lock-step with `package.json#version` on every release.
11
11
  */
12
- export declare const MAESTRO_SDK_VERSION: "0.1.12";
12
+ export declare const MAESTRO_SDK_VERSION: "0.1.15";
13
13
  //# sourceMappingURL=version.d.ts.map
@@ -9,5 +9,5 @@
9
9
  *
10
10
  * Bump in lock-step with `package.json#version` on every release.
11
11
  */
12
- export const MAESTRO_SDK_VERSION = "0.1.12";
12
+ export const MAESTRO_SDK_VERSION = "0.1.15";
13
13
  //# sourceMappingURL=version.js.map
@@ -30,26 +30,52 @@ import type { AgentQueryOptions, UnifiedEvent } from "./types.js";
30
30
  * Snapshot pinned to upstream Maestro v0.13.0 (MIT, Nous Research). See
31
31
  * docs/maestro-integration.md for the porting roadmap.
32
32
  */
33
+ /**
34
+ * Default tool-iteration cap when the caller doesn't supply
35
+ * `opts.maxIterations`. 90 was picked as a single comfortable ceiling:
36
+ * large enough to absorb research + multi-file edit chains without
37
+ * strangling longer investigations, small enough that a runaway loop
38
+ * still terminates in bounded wall-clock time on a typical model. The
39
+ * choice matches the previous `xhigh` cap from v0.1.15's effort-derived
40
+ * table — the level that was effectively the "extended exploration"
41
+ * baseline before maxIter was decoupled from effort.
42
+ *
43
+ * As of v0.1.16 this is decoupled from `effort` — effort drives reasoning
44
+ * depth (thinking budget + persona), the iteration cap is a separate
45
+ * orthogonal budget the host owns. Override per call with
46
+ * `AgentQueryOptions.maxIterations`.
47
+ */
48
+ export declare const DEFAULT_MAX_ITERATIONS = 90;
33
49
  export declare function maestroProvider(opts: AgentQueryOptions): AsyncGenerator<UnifiedEvent>;
34
50
  /**
35
51
  * Compose the "Tool iterations remaining: N/M — <tone>" line that rides
36
- * inside the per-iteration `<system-reminder>` block. Tone shifts with
37
- * ABSOLUTE remaining count (not percentage of maxIter) — same threshold
38
- * fires the same urgency regardless of effort level, so the model gets a
39
- * consistent cue from a `low` run reaching 4-left as from a `xhigh` run
40
- * reaching 4-left.
41
- *
42
- * Why absolute, not relative: at `low` (maxIter=5) the model crosses the
43
- * wrap-up line almost immediately; at `xhigh` (maxIter=90) 75% left lasts
44
- * ~22 turns. The user-visible behavior the threshold is targeting is "how
45
- * many tool calls before I MUST stop" — that's an absolute count, not a
46
- * fraction.
47
- *
48
- * Thresholds:
49
- * - >= 10 → plenty of room. (no urgency)
50
- * - 5..9 → pace yourself.
51
- * - 2..4 → start wrapping up — consolidate, avoid new tool calls.
52
- * - 0..1 → finalize NOW. Stop tooling, write the answer.
52
+ * inside the per-iteration `<system-reminder>` block.
53
+ *
54
+ * Tone shifts with PROPORTION of `maxIter` remaining (v0.1.16+), not an
55
+ * absolute count. The previous v0.1.15 version keyed off raw `remaining`
56
+ * (>= 10 → "plenty of room", < 2 → "finalize NOW"), which made sense
57
+ * when the cap was effort-derived (5 / 20 / 50 / 90 / 200) but broke
58
+ * after v0.1.16 unified the cap on a host-tunable default (90). At
59
+ * `maxIter = 90`, `remaining = 15` is ~17% of the budget intact and the
60
+ * old absolute logic would emit "pace yourself" while the proportional
61
+ * one correctly routes to "start wrapping up" — the tone tracks the
62
+ * budget consistently across cap sizes now.
63
+ *
64
+ * Percentage thresholds (calibrated for both small and large caps):
65
+ * - >= 50% → plenty of room. (no urgency, explore freely)
66
+ * - >= 20% → pace yourself.
67
+ * - >= 5% → start wrapping up — consolidate, avoid new tool calls.
68
+ * - < 5% → finalize NOW. Stop tooling, write the answer.
69
+ *
70
+ * Each tier scales with the host's chosen budget: at `maxIter = 30`
71
+ * (chat-grade) the wrap-up tier kicks in around 6 turns left; at
72
+ * `maxIter = 90` (default) it kicks in around 18 left; at `maxIter =
73
+ * 200` (deep work) around 40. The model gets the same proportional cue
74
+ * regardless of cap, which matches Claude Code's pacing intuition.
75
+ *
76
+ * Edge case — `max <= 0`: defensive guard for callers passing nonsense.
77
+ * Falls back to absolute thresholds (the v0.1.15 behavior) so the line
78
+ * still renders something useful instead of dividing by zero.
53
79
  *
54
80
  * Imperative phrasing matters: passing a bare count ("3 remaining") gets
55
81
  * acknowledged but doesn't change behavior much. Pairing the count with a
@@ -59,6 +85,35 @@ export declare function maestroProvider(opts: AgentQueryOptions): AsyncGenerator
59
85
  * exact phrasing if they need parity.
60
86
  */
61
87
  export declare function iterationBudgetLine(remaining: number, max: number): string;
88
+ /**
89
+ * Build the wrap-up overlay line that rides inside the `<system-reminder>`
90
+ * during the last 3 turns. Returns `null` when not in the wrap-up zone, so
91
+ * the caller can spread the result conditionally:
92
+ *
93
+ * const overlay = wrapUpOverlayLine(remaining, maxIter);
94
+ * extras = [iterLine, ...(overlay ? [overlay] : [])];
95
+ *
96
+ * Why pair this with the iteration-line:
97
+ * - `thinkingBudgetForTurn` (anthropic.ts) trims thinking to base/4 in the
98
+ * last 3 turns. Without an accompanying behavior cue the model doesn't
99
+ * know its reasoning room shrank — the system-prompt persona is still
100
+ * "be thorough" from turn 1. The overlay closes that gap by explicitly
101
+ * telling the model: "wrap-up zone active, stop new tool calls, write
102
+ * the final answer next."
103
+ * - Threshold is aligned with `thinkingBudgetForTurn`'s
104
+ * `maxIter - iter <= 3` rule. The loop passes
105
+ * `remaining = maxIter - (iter + 1)`, so `remaining <= 2` matches the
106
+ * same three-turn window from the iteration-reminder side.
107
+ * - Skipped entirely when `maxIter <= 3` (tiny budgets don't have a
108
+ * meaningful wrap-up zone to lead into — every turn is already a
109
+ * wrap-up turn).
110
+ *
111
+ * Imperative phrasing matches Claude Code style: a short, action-named
112
+ * meta-annotation rather than a paragraph of explanation. The model
113
+ * recognizes `[wrap-up zone]` brackets as a behavior-overlay tag distinct
114
+ * from prose.
115
+ */
116
+ export declare function wrapUpOverlayLine(remaining: number, max: number): string | null;
62
117
  /**
63
118
  * Skill profile name used when `AgentQueryOptions.skillKey` is omitted.
64
119
  *
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAgBrD,OAAO,KAAK,EAAE,QAAQ,EAAyC,MAAM,kBAAkB,CAAC;AAgCxF,OAAO,KAAK,EAAE,iBAAiB,EAAc,YAAY,EAAE,MAAM,SAAS,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAuB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,cAAc,CAAC,YAAY,CAAC,CAma5F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAY1E;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,EAAG,SAAkB,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEjF;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAC5D,MAAM,EAAE,CAAC,EAAE,EACX,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,CAAC,EAAE,CAGL;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,QAAQ,CAKhE;AAED;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAqBrD,OAAO,KAAK,EAAE,QAAQ,EAAyC,MAAM,kBAAkB,CAAC;AAgCxF,OAAO,KAAK,EAAE,iBAAiB,EAAc,YAAY,EAAE,MAAM,SAAS,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC,wBAAuB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,cAAc,CAAC,YAAY,CAAC,CA6b5F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAa1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI/E;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,EAAG,SAAkB,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEjF;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAC5D,MAAM,EAAE,CAAC,EAAE,EACX,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,CAAC,EAAE,CAGL;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,QAAQ,CAKhE;AAED;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,YAAY,EAAE,CAAC"}
package/dist/provider.js CHANGED
@@ -15,7 +15,7 @@ import { getMcpServersForQuery } from "./platform/mcp-config.js";
15
15
  // One-shot at import time keeps the per-tool-call cost at zero. See
16
16
  // `platform/env-bootstrap.ts` for the full rationale and safety notes.
17
17
  bootstrapHostPath();
18
- import { AnthropicProvider, effortToMaxIter, effortToThinkingBudget } from "./providers/anthropic.js";
18
+ import { AnthropicProvider, effortToPersonaPrompt, effortToThinkingBudget, } from "./providers/anthropic.js";
19
19
  import { DeepseekProvider } from "./providers/deepseek.js";
20
20
  import { maestroRegistry } from "./registry.js";
21
21
  import { isWellFormedMessage, loadMaestroSession, saveMaestroSession, trimToSafePrefix, } from "./session-store.js";
@@ -66,6 +66,22 @@ import { ToolRegistry } from "./tools/registry.js";
66
66
  * Snapshot pinned to upstream Maestro v0.13.0 (MIT, Nous Research). See
67
67
  * docs/maestro-integration.md for the porting roadmap.
68
68
  */
69
+ /**
70
+ * Default tool-iteration cap when the caller doesn't supply
71
+ * `opts.maxIterations`. 90 was picked as a single comfortable ceiling:
72
+ * large enough to absorb research + multi-file edit chains without
73
+ * strangling longer investigations, small enough that a runaway loop
74
+ * still terminates in bounded wall-clock time on a typical model. The
75
+ * choice matches the previous `xhigh` cap from v0.1.15's effort-derived
76
+ * table — the level that was effectively the "extended exploration"
77
+ * baseline before maxIter was decoupled from effort.
78
+ *
79
+ * As of v0.1.16 this is decoupled from `effort` — effort drives reasoning
80
+ * depth (thinking budget + persona), the iteration cap is a separate
81
+ * orthogonal budget the host owns. Override per call with
82
+ * `AgentQueryOptions.maxIterations`.
83
+ */
84
+ export const DEFAULT_MAX_ITERATIONS = 90;
69
85
  export async function* maestroProvider(opts) {
70
86
  // Provider instantiation is deferred until after model resolution so the
71
87
  // right adapter (Anthropic / DeepSeek) is chosen based on the resolved
@@ -225,8 +241,12 @@ export async function* maestroProvider(opts) {
225
241
  // `AIAgent` below. Default is the registry's `medium`, matching how
226
242
  // claude-provider hands effort to its SDK when the caller doesn't pin one.
227
243
  const resolvedEffort = opts.effort ?? maestroRegistry.defaultEffort;
228
- const maxIter = effortToMaxIter(resolvedEffort);
229
- logger.info({ effort: opts.effort, resolved: resolvedEffort, maxIter }, "maestroProvider: effort → maxIter resolution");
244
+ // v0.1.16: maxIter is no longer derived from effort. The cap is a single
245
+ // host-tunable default (`DEFAULT_MAX_ITERATIONS = 90`) that the caller
246
+ // overrides per call via `opts.maxIterations`. See the AgentQueryOptions
247
+ // docstring for the split rationale (reasoning depth vs turn budget).
248
+ const maxIter = opts.maxIterations ?? DEFAULT_MAX_ITERATIONS;
249
+ logger.info({ effort: opts.effort, resolved: resolvedEffort, maxIter, callerOverride: opts.maxIterations }, "maestroProvider: effort + maxIter resolution");
230
250
  // Pick provider by resolved model id prefix. DeepSeek models (`deepseek-*`)
231
251
  // route to DeepseekProvider; anything else falls through to Anthropic. If
232
252
  // the chosen adapter's env var is missing, close the MCP pool we already
@@ -278,11 +298,21 @@ export async function* maestroProvider(opts) {
278
298
  // the per-iteration builder below so first-turn and subsequent-turn
279
299
  // reminders render with identical shape — the model sees the same fields
280
300
  // in the same order, only the counts change.
281
- const buildIterReminder = (iterationsRemaining) => buildSystemReminder({
282
- sessionId,
283
- tasks: taskStore.list(),
284
- extras: [iterationBudgetLine(iterationsRemaining, maxIter)],
285
- });
301
+ const buildIterReminder = (iterationsRemaining) => {
302
+ // The iter-line carries the count + tone; the wrap-up overlay (v0.1.16+)
303
+ // adds an explicit behavior cue for the last 3 turns, synchronized with
304
+ // `thinkingBudgetForTurn`'s budget trim so the model sees thinking AND
305
+ // behavior shrink together instead of one without the other.
306
+ const extras = [iterationBudgetLine(iterationsRemaining, maxIter)];
307
+ const overlay = wrapUpOverlayLine(iterationsRemaining, maxIter);
308
+ if (overlay)
309
+ extras.push(overlay);
310
+ return buildSystemReminder({
311
+ sessionId,
312
+ tasks: taskStore.list(),
313
+ extras,
314
+ });
315
+ };
286
316
  const reminderText = buildIterReminder(maxIter);
287
317
  const userBlocks = [
288
318
  { type: "text", text: opts.prompt },
@@ -307,9 +337,23 @@ export async function* maestroProvider(opts) {
307
337
  // identity / instructions that should still anchor the prompt, and the
308
338
  // skills block reads naturally as a final "and also, here's what tools
309
339
  // you have access to" section.
310
- const augmentedSystemPrompt = skillsBlock
311
- ? `${opts.systemPrompt}\n\n${skillsBlock}`
312
- : opts.systemPrompt;
340
+ //
341
+ // The optional effort persona slots BETWEEN the caller's systemPrompt and
342
+ // the skills catalog. Three layers in fixed order:
343
+ // 1. caller identity / instructions — anchors who the model is
344
+ // 2. effort persona (this layer) — names the working mode + verbs
345
+ // 3. skills catalog — "tools you can reach for"
346
+ // Reading top-down, the model first knows what it's for, then how hard it
347
+ // should push, then what's available. The persona is a pure function of
348
+ // `resolvedEffort` so it stays prefix-cache stable across every call at a
349
+ // given level — same five strings cycle. Skipping the layer (undefined
350
+ // effort or `effortToPersonaPrompt` returning undefined) keeps the
351
+ // historical no-effort prompt byte-identical so existing callers don't
352
+ // see a cache miss after the upgrade.
353
+ const personaBlock = effortToPersonaPrompt(resolvedEffort);
354
+ const augmentedSystemPrompt = [opts.systemPrompt, personaBlock, skillsBlock]
355
+ .filter((s) => typeof s === "string" && s.length > 0)
356
+ .join("\n\n");
313
357
  // Register the `Agent` tool last — it captures the resolved model,
314
358
  // effort, augmented system prompt (parent base for sub-agents), and the
315
359
  // already-loaded skill catalog. Registered only on the PARENT call;
@@ -454,23 +498,33 @@ export async function* maestroProvider(opts) {
454
498
  }
455
499
  /**
456
500
  * Compose the "Tool iterations remaining: N/M — <tone>" line that rides
457
- * inside the per-iteration `<system-reminder>` block. Tone shifts with
458
- * ABSOLUTE remaining count (not percentage of maxIter) — same threshold
459
- * fires the same urgency regardless of effort level, so the model gets a
460
- * consistent cue from a `low` run reaching 4-left as from a `xhigh` run
461
- * reaching 4-left.
501
+ * inside the per-iteration `<system-reminder>` block.
462
502
  *
463
- * Why absolute, not relative: at `low` (maxIter=5) the model crosses the
464
- * wrap-up line almost immediately; at `xhigh` (maxIter=90) 75% left lasts
465
- * ~22 turns. The user-visible behavior the threshold is targeting is "how
466
- * many tool calls before I MUST stop" that's an absolute count, not a
467
- * fraction.
503
+ * Tone shifts with PROPORTION of `maxIter` remaining (v0.1.16+), not an
504
+ * absolute count. The previous v0.1.15 version keyed off raw `remaining`
505
+ * (>= 10 "plenty of room", < 2 "finalize NOW"), which made sense
506
+ * when the cap was effort-derived (5 / 20 / 50 / 90 / 200) but broke
507
+ * after v0.1.16 unified the cap on a host-tunable default (90). At
508
+ * `maxIter = 90`, `remaining = 15` is ~17% of the budget intact and the
509
+ * old absolute logic would emit "pace yourself" while the proportional
510
+ * one correctly routes to "start wrapping up" — the tone tracks the
511
+ * budget consistently across cap sizes now.
468
512
  *
469
- * Thresholds:
470
- * - >= 10 → plenty of room. (no urgency)
471
- * - 5..9 → pace yourself.
472
- * - 2..4 → start wrapping up — consolidate, avoid new tool calls.
473
- * - 0..1 → finalize NOW. Stop tooling, write the answer.
513
+ * Percentage thresholds (calibrated for both small and large caps):
514
+ * - >= 50% → plenty of room. (no urgency, explore freely)
515
+ * - >= 20% → pace yourself.
516
+ * - >= 5% → start wrapping up — consolidate, avoid new tool calls.
517
+ * - < 5% → finalize NOW. Stop tooling, write the answer.
518
+ *
519
+ * Each tier scales with the host's chosen budget: at `maxIter = 30`
520
+ * (chat-grade) the wrap-up tier kicks in around 6 turns left; at
521
+ * `maxIter = 90` (default) it kicks in around 18 left; at `maxIter =
522
+ * 200` (deep work) around 40. The model gets the same proportional cue
523
+ * regardless of cap, which matches Claude Code's pacing intuition.
524
+ *
525
+ * Edge case — `max <= 0`: defensive guard for callers passing nonsense.
526
+ * Falls back to absolute thresholds (the v0.1.15 behavior) so the line
527
+ * still renders something useful instead of dividing by zero.
474
528
  *
475
529
  * Imperative phrasing matters: passing a bare count ("3 remaining") gets
476
530
  * acknowledged but doesn't change behavior much. Pairing the count with a
@@ -480,14 +534,15 @@ export async function* maestroProvider(opts) {
480
534
  * exact phrasing if they need parity.
481
535
  */
482
536
  export function iterationBudgetLine(remaining, max) {
537
+ const pct = max > 0 ? remaining / max : 0;
483
538
  let tone;
484
- if (remaining >= 10) {
539
+ if (pct >= 0.5) {
485
540
  tone = "plenty of room.";
486
541
  }
487
- else if (remaining >= 5) {
542
+ else if (pct >= 0.2) {
488
543
  tone = "pace yourself.";
489
544
  }
490
- else if (remaining >= 2) {
545
+ else if (pct >= 0.05) {
491
546
  tone = "start wrapping up — consolidate findings, avoid new tool calls unless essential.";
492
547
  }
493
548
  else {
@@ -495,6 +550,41 @@ export function iterationBudgetLine(remaining, max) {
495
550
  }
496
551
  return `Tool iterations remaining: ${remaining}/${max} — ${tone}`;
497
552
  }
553
+ /**
554
+ * Build the wrap-up overlay line that rides inside the `<system-reminder>`
555
+ * during the last 3 turns. Returns `null` when not in the wrap-up zone, so
556
+ * the caller can spread the result conditionally:
557
+ *
558
+ * const overlay = wrapUpOverlayLine(remaining, maxIter);
559
+ * extras = [iterLine, ...(overlay ? [overlay] : [])];
560
+ *
561
+ * Why pair this with the iteration-line:
562
+ * - `thinkingBudgetForTurn` (anthropic.ts) trims thinking to base/4 in the
563
+ * last 3 turns. Without an accompanying behavior cue the model doesn't
564
+ * know its reasoning room shrank — the system-prompt persona is still
565
+ * "be thorough" from turn 1. The overlay closes that gap by explicitly
566
+ * telling the model: "wrap-up zone active, stop new tool calls, write
567
+ * the final answer next."
568
+ * - Threshold is aligned with `thinkingBudgetForTurn`'s
569
+ * `maxIter - iter <= 3` rule. The loop passes
570
+ * `remaining = maxIter - (iter + 1)`, so `remaining <= 2` matches the
571
+ * same three-turn window from the iteration-reminder side.
572
+ * - Skipped entirely when `maxIter <= 3` (tiny budgets don't have a
573
+ * meaningful wrap-up zone to lead into — every turn is already a
574
+ * wrap-up turn).
575
+ *
576
+ * Imperative phrasing matches Claude Code style: a short, action-named
577
+ * meta-annotation rather than a paragraph of explanation. The model
578
+ * recognizes `[wrap-up zone]` brackets as a behavior-overlay tag distinct
579
+ * from prose.
580
+ */
581
+ export function wrapUpOverlayLine(remaining, max) {
582
+ if (max <= 3)
583
+ return null;
584
+ if (remaining > 2)
585
+ return null;
586
+ return "[wrap-up zone] Thinking budget is now trimmed. Stop new tool calls — consolidate findings and write the final answer.";
587
+ }
498
588
  /**
499
589
  * Skill profile name used when `AgentQueryOptions.skillKey` is omitted.
500
590
  *