@cicctencent/agent-core 0.1.30 → 0.1.31

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 (61) hide show
  1. package/dist/cjs/agent/engine.d.ts +57 -0
  2. package/dist/cjs/agent/engine.d.ts.map +1 -1
  3. package/dist/cjs/agent/engine.js +191 -1
  4. package/dist/cjs/agent/engine.js.map +1 -1
  5. package/dist/cjs/agent/llm-caller.d.ts.map +1 -1
  6. package/dist/cjs/agent/llm-caller.js +8 -0
  7. package/dist/cjs/agent/llm-caller.js.map +1 -1
  8. package/dist/cjs/agent/rate-limit-manager.d.ts +127 -0
  9. package/dist/cjs/agent/rate-limit-manager.d.ts.map +1 -0
  10. package/dist/cjs/agent/rate-limit-manager.js +465 -0
  11. package/dist/cjs/agent/rate-limit-manager.js.map +1 -0
  12. package/dist/cjs/agent/tool-executor.d.ts +11 -0
  13. package/dist/cjs/agent/tool-executor.d.ts.map +1 -1
  14. package/dist/cjs/agent/tool-executor.js +95 -4
  15. package/dist/cjs/agent/tool-executor.js.map +1 -1
  16. package/dist/cjs/agent/types.d.ts +59 -0
  17. package/dist/cjs/agent/types.d.ts.map +1 -1
  18. package/dist/cjs/agent/types.js.map +1 -1
  19. package/dist/cjs/index.d.ts +2 -1
  20. package/dist/cjs/index.d.ts.map +1 -1
  21. package/dist/cjs/index.js +7 -3
  22. package/dist/cjs/index.js.map +1 -1
  23. package/dist/cjs/runtime/run-registry.d.ts +2 -0
  24. package/dist/cjs/runtime/run-registry.d.ts.map +1 -1
  25. package/dist/cjs/runtime/run-registry.js +24 -1
  26. package/dist/cjs/runtime/run-registry.js.map +1 -1
  27. package/dist/cjs/utils/dsml-parser.d.ts +1 -1
  28. package/dist/cjs/utils/dsml-parser.d.ts.map +1 -1
  29. package/dist/cjs/utils/dsml-parser.js +16 -3
  30. package/dist/cjs/utils/dsml-parser.js.map +1 -1
  31. package/dist/esm/agent/engine.d.ts +57 -0
  32. package/dist/esm/agent/engine.d.ts.map +1 -1
  33. package/dist/esm/agent/engine.js +191 -1
  34. package/dist/esm/agent/engine.js.map +1 -1
  35. package/dist/esm/agent/llm-caller.d.ts.map +1 -1
  36. package/dist/esm/agent/llm-caller.js +8 -0
  37. package/dist/esm/agent/llm-caller.js.map +1 -1
  38. package/dist/esm/agent/rate-limit-manager.d.ts +127 -0
  39. package/dist/esm/agent/rate-limit-manager.d.ts.map +1 -0
  40. package/dist/esm/agent/rate-limit-manager.js +463 -0
  41. package/dist/esm/agent/rate-limit-manager.js.map +1 -0
  42. package/dist/esm/agent/tool-executor.d.ts +11 -0
  43. package/dist/esm/agent/tool-executor.d.ts.map +1 -1
  44. package/dist/esm/agent/tool-executor.js +95 -4
  45. package/dist/esm/agent/tool-executor.js.map +1 -1
  46. package/dist/esm/agent/types.d.ts +59 -0
  47. package/dist/esm/agent/types.d.ts.map +1 -1
  48. package/dist/esm/agent/types.js.map +1 -1
  49. package/dist/esm/index.d.ts +2 -1
  50. package/dist/esm/index.d.ts.map +1 -1
  51. package/dist/esm/index.js +1 -0
  52. package/dist/esm/index.js.map +1 -1
  53. package/dist/esm/runtime/run-registry.d.ts +2 -0
  54. package/dist/esm/runtime/run-registry.d.ts.map +1 -1
  55. package/dist/esm/runtime/run-registry.js +24 -1
  56. package/dist/esm/runtime/run-registry.js.map +1 -1
  57. package/dist/esm/utils/dsml-parser.d.ts +1 -1
  58. package/dist/esm/utils/dsml-parser.d.ts.map +1 -1
  59. package/dist/esm/utils/dsml-parser.js +16 -3
  60. package/dist/esm/utils/dsml-parser.js.map +1 -1
  61. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"llm-caller.js","sourceRoot":"","sources":["../../../src/agent/llm-caller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-caller.js","sourceRoot":"","sources":["../../../src/agent/llm-caller.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,+BAA+B;AAC/B,+DAA+D;;;AAO/D,4DAA8D;AAC9D,mEAA2D;AAwB3D;;;;;;;GAOG;AACH,MAAa,SAAS;IACZ,MAAM,CAAkB;IAEhC,YAAY,MAAuB;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,0BAA0B;IAC1B,cAAc,CAAC,QAAqB;QAClC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC;IACrC,CAAC;IAED;;;;;;;;OAQG;IACK,mBAAmB,CAAC,GAAQ;QAClC,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/C,2CAA2C;QAC3C,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,CAAC;YACtE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,WAAW;QACX,OAAO,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC;YACxD,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC;YACzD,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC/D,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,CAAC,aAAa,CAClB,SAAiB,EACjB,QAAmB,EACnB,QAA0B,EAC1B,WAAwB;QAExB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACvC,MAAM,UAAU,GAAG,MAAM,EAAE,UAAU,IAAI,CAAC,CAAC;QAC3C,MAAM,YAAY,GAAG,MAAM,EAAE,YAAY,IAAI,IAAI,CAAC;QAClD,MAAM,QAAQ,GAAG,MAAM,EAAE,QAAQ,IAAI,KAAK,CAAC;QAC3C,MAAM,aAAa,GAAG,MAAM,EAAE,aAAa,IAAI,CAAC,CAAC;QACjD,IAAI,SAAS,GAAkB,IAAI,CAAC;QAEpC,eAAe;QACf,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC9M,IAAI,WAAW,KAAK,IAAI;YAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;QAC/E,SAAS,GAAG,UAAU,CAAC;QAEvB,kBAAkB;QAClB,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,UAAU,IAAI,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC;QAE9F,mBAAmB;QACnB,IAAI,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YACjD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,CAAC,gDAAgD,WAAW,sBAAsB,CAAC,CAAC;YAC/F,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE;gBACvC,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,yDAAyD;aACnE,CAAC,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAClK,IAAI,MAAM,KAAK,IAAI;gBAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;YACrE,SAAS,GAAG,UAAU,IAAI,SAAS,CAAC;QACtC,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;gBACvD,IAAI,WAAW,CAAC,OAAO;oBAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;gBAEpD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;gBACtF,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;gBACrD,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC;gBAE1F,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE;oBACvC,IAAI,EAAE,OAAO;oBACb,OAAO;oBACP,UAAU;oBACV,KAAK;oBACL,KAAK,EAAE,iCAAiC,SAAS,IAAI,eAAe,GAAG;oBACvE,QAAQ,EAAE,YAAY;iBACvB,CAAC,CAAC;gBAEH,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;gBACnB,IAAI,WAAW,CAAC,OAAO;oBAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;gBAEpD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBAC7L,IAAI,MAAM,KAAK,IAAI;oBAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;gBACrE,SAAS,GAAG,UAAU,IAAI,SAAS,CAAC;gBACpC,sBAAsB;gBACtB,IAAI,IAAI,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,UAAU,IAAI,EAAE,EAAE,CAAC,IAAI,UAAU;oBAAE,MAAM;YACnF,CAAC;QACH,CAAC;QAED,8BAA8B;QAC9B,iDAAiD;QACjD,mCAAmC;QACnC,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACjC,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YAC7D,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,QAAQ,IAAI,UAAU,CAAC;YACpG,OAAO,CAAC,GAAG,CAAC,0EAA0E,YAAY,EAAE,CAAC,CAAC;YAEtG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE;gBACvC,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,UAAU,GAAG,CAAC;gBACvB,UAAU;gBACV,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,mCAAmC,YAAY,EAAE;gBACxD,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YAEH,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;YAC1M,IAAI,MAAM,KAAK,IAAI;gBAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;YACxE,oCAAoC;YACpC,IAAI,CAAC,CAAC,aAAa,IAAI,SAAS,CAAC,EAAE,CAAC;gBAClC,SAAS,GAAG,aAAa,IAAI,SAAS,CAAC;YACzC,CAAC;QACH,CAAC;QAED,kCAAkC;QAClC,MAAM,QAAQ,GAAG,SAAS,IAAI,wCAAwC,CAAC;QACvE,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACzG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACjG,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,mBAAmB;IACX,qBAAqB,CAAC,GAAQ;QACpC,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/C,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC7D,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACjE,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC;IAED,0BAA0B;IAClB,KAAK,CAAC,CAAC,gBAAgB,CAC7B,SAAiB,EACjB,QAAmB,EACnB,QAA0B,EAC1B,WAAwB,EACxB,QAAqB,EACrB,UAAmB;QAEnB,IAAI,UAAkC,CAAC;QACvC,IAAI,CAAC;YACH,4CAA4C;YAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE;oBAC3C,SAAS;oBACT,SAAS,EAAE,CAAC;oBACZ,QAAQ;oBACR,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;YAED,WAAW;YACX,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC;gBACjC,QAAQ;gBACR,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;gBACjD,UAAU,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBACpD,WAAW;aACZ,CAAC,CAAC;YAEH,SAAS;YACT,IAAI,YAAY,GAAa,EAAE,CAAC;YAChC,IAAI,cAAc,GAAa,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAsD,CAAC;YACnF,IAAI,IAAI,GAA6C,WAAW,CAAC;YACjE,IAAI,qBAAqB,GAAG,CAAC,CAAC;YAC9B,IAAI,YAAgC,CAAC;YAErC,6CAA6C;YAC7C,+CAA+C;YAC/C,8CAA8C;YAC9C,MAAM,UAAU,GAAG,IAAI,oCAAmB,EAAE,CAAC;YAC7C,yDAAyD;YACzD,MAAM,eAAe,GAAG,SAAS,CAAC;YAClC,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAE1B,+DAA+D;YAC/D,MAAM,sBAAsB,GAAG,CAAC,EAAY,EAAc,EAAE;gBAC1D,MAAM,GAAG,GAAG,eAAe,GAAG,iBAAiB,EAAE,CAAC;gBAClD,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE;oBACpB,EAAE,EAAE,EAAE,CAAC,EAAE;oBACT,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;oBACtB,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS;iBAC5B,CAAC,CAAC;gBACH,0DAA0D;gBAC1D,IAAI,KAAc,CAAC;gBACnB,IAAI,CAAC;oBACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAC5C,CAAC;gBAAC,MAAM,CAAC;oBACP,KAAK,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;gBAC1C,CAAC;gBACD,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE;oBACxC,IAAI,EAAE,WAAW;oBACjB,UAAU,EAAE,EAAE,CAAC,EAAE;oBACjB,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;oBAC1B,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;oBAC7B,KAAK;oBACL,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;iBACtB,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,WAAW,CAAC,OAAO;oBAAE,MAAM;gBAE/B,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC3B,CAAC;gBAED,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;oBACxB,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC;gBACrC,CAAC;gBAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gBAE1B,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBAC5B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;oBAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC;gBACnG,CAAC;gBAED,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;oBAClB,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpE,IAAI,IAAI,EAAE,CAAC;wBACT,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBACxC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;4BACrB,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BACpC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;wBACxG,CAAC;wBACD,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;4BAC3C,MAAM,sBAAsB,CAAC,EAAE,CAAC,CAAC;wBACnC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;oBACrB,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,UAAmB,EAAE,CAAC;wBAC3C,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC;wBAC1B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;4BAC3B,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;wBACxD,CAAC;wBACD,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;wBACrC,IAAI,EAAE,CAAC,EAAE;4BAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;wBAC5B,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI;4BAAE,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;wBACrD,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS;4BAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAClE,CAAC;oBACD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAC1F,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC3D,IAAI,QAAQ,GAAG,qBAAqB,IAAI,SAAS,EAAE,CAAC;wBAClD,qBAAqB,GAAG,QAAQ,CAAC;wBACjC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACtF,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE;4BACvC,IAAI,EAAE,UAAU;4BAChB,OAAO,EAAE,gBAAgB,KAAK,gBAAgB,QAAQ,YAAY;yBACnE,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI;oBAAE,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YACpC,CAAC;YAED,4CAA4C;YAC5C,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;YACvC,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;gBAC1B,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACzC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7G,CAAC;YACD,KAAK,MAAM,EAAE,IAAI,WAAW,CAAC,kBAAkB,EAAE,CAAC;gBAChD,MAAM,sBAAsB,CAAC,EAAE,CAAC,CAAC;YACnC,CAAC;YAED,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;YAClD,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;YACtD,MAAM,SAAS,GAAe,EAAE,CAAC;YAEjC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrF,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,aAAa,EAAE,CAAC;gBACtC,IAAI,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC3B,SAAS,CAAC,IAAI,CAAC;wBACb,EAAE,EAAE,KAAK,CAAC,EAAE;wBACZ,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE;qBACtD,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAY;gBACzB,IAAI;gBACJ,OAAO,EAAE,WAAW;gBACpB,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/D,CAAC;YAEF,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3C,oCAAoC;gBACpC,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,oBAAoB,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvE,MAAM,QAAQ,GAAG,gDAAgD,MAAM,EAAE,CAAC;gBAC1E,6CAA6C;gBAC7C,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;oBACxF,OAAO,CAAC,IAAI,CAAC,+BAA+B,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,oBAAoB,YAAY,IAAI,MAAM,EAAE,CAAC,CAAC;oBAC7H,OAAO,CAAC,IAAI,CAAC,+CAA+C,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,CAAC;oBACxG,OAAO,CAAC,IAAI,CAAC,sBAAsB,QAAQ,CAAC,MAAM,cAAc,QAAQ,CAAC,MAAM,QAAQ,CAAC,CAAC;oBACzF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACzC,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;wBACtB,MAAM,cAAc,GAAG,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ;4BAClD,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;4BACzB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;wBAC5C,MAAM,aAAa,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAChF,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,IAAI,SAAS,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,aAAa,KAAK,cAAc,EAAE,CAAC,CAAC;oBACxL,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,oCAAoC,YAAY,CAAC,MAAM,KAAK,WAAW,EAAE,MAAM,IAAI,CAAC,2BAA2B,cAAc,CAAC,MAAM,KAAK,aAAa,EAAE,MAAM,IAAI,CAAC,yBAAyB,YAAY,CAAC,IAAI,UAAU,IAAI,mBAAmB,YAAY,IAAI,MAAM,WAAW,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;oBAC1T,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;wBAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,YAAY,EAAE,CAAC;4BACxC,OAAO,CAAC,IAAI,CAAC,0BAA0B,GAAG,QAAQ,KAAK,CAAC,EAAE,IAAI,SAAS,UAAU,KAAK,CAAC,IAAI,IAAI,SAAS,aAAa,KAAK,CAAC,IAAI,CAAC,MAAM,UAAU,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;wBAC9K,CAAC;oBACH,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBACtD,CAAC;gBAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;YAC1G,CAAC;YAED,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACtF,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACvD,MAAM,MAAM,GAAG,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,gCAAgC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,IAAI,cAAc,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAE5I,8CAA8C;YAC9C,8DAA8D;YAC9D,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC1C,yDAAyD,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzE,IAAI,aAAa,EAAE,CAAC;gBAClB,wCAAgB,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAChD,CAAC;YAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC;CAEF;AA/VD,8BA+VC;AAED,cAAc;AACd,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * 全局速率限制 + 并发控制管理器(单例)
3
+ */
4
+ declare class RateLimitManager {
5
+ /** 是否正在冷却中 */
6
+ private cooldown;
7
+ /** 冷却结束时间(ms 时间戳) */
8
+ private cooldownUntil;
9
+ /** 连续 429 计数(同一冷却周期内累计) */
10
+ private count429;
11
+ /** 冷却周期数(每次触发冷却递增,用于指数退避) */
12
+ private cooldownCycles;
13
+ /** 当前活跃的子 Agent 数量 */
14
+ private activeSubSessionCount;
15
+ /** 已注册但尚未释放的子会话集合(防止重复释放) */
16
+ private activeSubSessionSet;
17
+ /** 并发控制等待队列 */
18
+ private waitQueue;
19
+ /** 子会话 ID → 父会话 ID */
20
+ private parentMap;
21
+ /** 主会话 ID → AbortController(用于在多轮冷却失败时终止主会话) */
22
+ private mainSessionControllers;
23
+ /** 已终止的主会话 ID(防止重复 abort) */
24
+ private abortedSessions;
25
+ /**
26
+ * 注册主会话。由 AgentEngine.run() 在开始时调用。
27
+ *
28
+ * @param sessionId 主会话 ID
29
+ * @param controller 引擎内部 AbortController,RateLimitManager 在多轮冷却失败时
30
+ * 可调用 controller.abort() 终止主会话
31
+ */
32
+ registerMainSession(sessionId: string, controller: AbortController): void;
33
+ /**
34
+ * 注销主会话。由 AgentEngine.run() 在 finally 中调用。
35
+ * 清理该主会话下的所有子会话映射并唤醒等待队列。
36
+ */
37
+ unregisterMainSession(sessionId: string): void;
38
+ /**
39
+ * 注册子会话。由 AgentEngine.linkChildSession() 调用。
40
+ *
41
+ * 注意:此方法仅建立父子映射,不增加并发计数。
42
+ * 并发计数在 acquireSubSessionSlot() 中完成。
43
+ */
44
+ registerSubSession(childId: string, parentId: string): void;
45
+ /**
46
+ * 注销子会话。由 AgentEngine.unlinkChildSession() 调用。
47
+ * 同时释放并发槽位并唤醒等待队列。
48
+ */
49
+ unregisterSubSession(childId: string): void;
50
+ /**
51
+ * 获取子 Agent 执行槽位(并发控制)。
52
+ *
53
+ * 在 delegate_task 工具执行前调用,确保同时运行的子 Agent 不超过上限。
54
+ * - 冷却期内自动等待冷却结束
55
+ * - 并发槽位满时排队等待,超时则拒绝
56
+ *
57
+ * 注意:本方法会增加 activeSubSessionCount。调用方在子 Agent 结束后
58
+ * 必须调用 releaseSubSessionSlot() 或 unregisterSubSession() 释放槽位。
59
+ *
60
+ * @param sessionId 子会话 ID(用于在父会话 abort 时提前退出等待)
61
+ * @returns true 表示获得槽位可以执行,false 表示超时或被拒绝
62
+ */
63
+ acquireSubSessionSlot(sessionId?: string): Promise<boolean>;
64
+ /**
65
+ * 释放子 Agent 执行槽位。
66
+ *
67
+ * 由 delegate_task 工具执行结束(无论成功或失败)后调用。
68
+ * 唤醒等待队列中的下一个子 Agent。
69
+ */
70
+ releaseSubSessionSlot(sessionId?: string): void;
71
+ /**
72
+ * 处理 429 速率限制事件。
73
+ *
74
+ * 由 LLMCaller 在捕获 429 错误时调用。
75
+ *
76
+ * 三级递进策略:
77
+ * 1. 容忍期(< 阈值):仅记录,让 LLM 层重试/降级自行处理
78
+ * 2. 冷却期(≥ 阈值):触发指数退避冷却,新子 Agent 排队等待
79
+ * 3. 终止期(冷却周期超过上限):终止整个主会话
80
+ */
81
+ handleRateLimited(sessionId: string): void;
82
+ /** 是否处于冷却期 */
83
+ isCooling(): boolean;
84
+ /** 是否已达到并发上限或正在冷却(用于快速拒绝新请求) */
85
+ isRateLimitedOrSaturated(): boolean;
86
+ /** 获取当前状态快照(诊断用) */
87
+ getStats(): {
88
+ cooldown: boolean;
89
+ cooldownRemainingMs: number;
90
+ count429: number;
91
+ cooldownCycles: number;
92
+ activeSubSessions: number;
93
+ maxConcurrent: number;
94
+ queueLength: number;
95
+ };
96
+ /** 启动速率限制冷却期(指数退避) */
97
+ private startCooldown;
98
+ /** 获取当前冷却时长(指数退避:30s → 60s → 120s) */
99
+ private getCooldownDuration;
100
+ /** 终止指定主会话 */
101
+ private abortMainSession;
102
+ /** 等待冷却期结束 */
103
+ private waitCooldown;
104
+ /** 等待并发槽位(带超时) */
105
+ private waitForSlot;
106
+ /** 唤醒排队中的子 Agent,直到并发槽位用尽或队列空 */
107
+ private drainQueue;
108
+ /** 检查指定子会话的父主会话是否已被 abort */
109
+ private isParentAborted;
110
+ /** 重置全局限流状态(无活跃主会话时调用) */
111
+ private resetGlobal;
112
+ /** 重置指定主会话相关的限流状态 */
113
+ private resetForSession;
114
+ }
115
+ /** 全局单例(跨所有 AgentEngine 实例共享) */
116
+ export declare const rateLimitManager: RateLimitManager;
117
+ /** 导出类用于测试或自定义实例化 */
118
+ export { RateLimitManager };
119
+ /** 导出常量供外部读取(不可修改) */
120
+ export declare const RATE_LIMIT_CONFIG: {
121
+ readonly RATE_LIMIT_THRESHOLD: 3;
122
+ readonly COOLDOWN_BASE_MS: 30000;
123
+ readonly MAX_COOLDOWN_CYCLES: 3;
124
+ readonly MAX_CONCURRENT_SUB_SESSIONS: 3;
125
+ readonly SUB_SESSION_WAIT_TIMEOUT: 120000;
126
+ };
127
+ //# sourceMappingURL=rate-limit-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate-limit-manager.d.ts","sourceRoot":"","sources":["../../../src/agent/rate-limit-manager.ts"],"names":[],"mappings":"AAgDA;;GAEG;AACH,cAAM,gBAAgB;IAEpB,cAAc;IACd,OAAO,CAAC,QAAQ,CAAS;IACzB,qBAAqB;IACrB,OAAO,CAAC,aAAa,CAAK;IAC1B,2BAA2B;IAC3B,OAAO,CAAC,QAAQ,CAAK;IACrB,6BAA6B;IAC7B,OAAO,CAAC,cAAc,CAAK;IAG3B,sBAAsB;IACtB,OAAO,CAAC,qBAAqB,CAAK;IAClC,6BAA6B;IAC7B,OAAO,CAAC,mBAAmB,CAAqB;IAChD,eAAe;IACf,OAAO,CAAC,SAAS,CAAmB;IAGpC,sBAAsB;IACtB,OAAO,CAAC,SAAS,CAA6B;IAC9C,gDAAgD;IAChD,OAAO,CAAC,sBAAsB,CAAsC;IACpE,6BAA6B;IAC7B,OAAO,CAAC,eAAe,CAAqB;IAI5C;;;;;;OAMG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,IAAI;IAIzE;;;OAGG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAiC9C;;;;;OAKG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI3D;;;OAGG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAa3C;;;;;;;;;;;;OAYG;IACG,qBAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwCjE;;;;;OAKG;IACH,qBAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAQ/C;;;;;;;;;OASG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAuD1C,cAAc;IACd,SAAS,IAAI,OAAO;IAIpB,gCAAgC;IAChC,wBAAwB,IAAI,OAAO;IAInC,oBAAoB;IACpB,QAAQ,IAAI;QACV,QAAQ,EAAE,OAAO,CAAC;QAClB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;KACrB;IAcD,sBAAsB;IACtB,OAAO,CAAC,aAAa;IAmBrB,sCAAsC;IACtC,OAAO,CAAC,mBAAmB;IAI3B,cAAc;IACd,OAAO,CAAC,gBAAgB;IAqBxB,cAAc;IACd,OAAO,CAAC,YAAY;IAmBpB,kBAAkB;IAClB,OAAO,CAAC,WAAW;IAoCnB,iCAAiC;IACjC,OAAO,CAAC,UAAU;IA2BlB,6BAA6B;IAC7B,OAAO,CAAC,eAAe;IAMvB,0BAA0B;IAC1B,OAAO,CAAC,WAAW;IAuBnB,qBAAqB;IACrB,OAAO,CAAC,eAAe;CAkBxB;AAED,iCAAiC;AACjC,eAAO,MAAM,gBAAgB,kBAAyB,CAAC;AAEvD,qBAAqB;AACrB,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,sBAAsB;AACtB,eAAO,MAAM,iBAAiB;;;;;;CAMpB,CAAC"}
@@ -0,0 +1,465 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // RateLimitManager — 全局速率限制 + 子 Agent 并发控制
4
+ // ============================================================
5
+ //
6
+ // 解决 delegate_task 并发风暴导致的 LLM API TPM 限流(429)问题。
7
+ //
8
+ // 三级递进策略(与 omniinsight-bi AgentService 中的实现等价):
9
+ // 1. 容忍期:短时间内收到少量 429 时仅记录,让 LLM 层重试/降级自行处理
10
+ // 2. 冷却期:达到阈值后进入指数退避冷却(30s → 60s → 120s),
11
+ // 期间新建子 Agent 排队等待,已有子 Agent 继续运行
12
+ // 3. 终止期:冷却周期超过上限后终止整个主会话(避免无限循环)
13
+ //
14
+ // 并发控制:
15
+ // - MAX_CONCURRENT_SUB_SESSIONS 限制同时运行的子 Agent 数量
16
+ // - 超出上限时新请求进入等待队列,超时则拒绝
17
+ //
18
+ // 生命周期追踪:
19
+ // - registerMainSession / unregisterMainSession:由 AgentEngine.run() 调用
20
+ // - registerSubSession / unregisterSubSession:由 AgentEngine.linkChildSession() 调用
21
+ // - 子 Agent 完成时通过 releaseSubSessionSlot 释放槽位并唤醒队列
22
+ //
23
+ // 注意:本模块为进程级单例,跨所有 AgentEngine 实例共享状态,
24
+ // 因为 TPM 限制是 LLM API 层面的,所有 Engine 共享同一个 LLMProvider。
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.RATE_LIMIT_CONFIG = exports.RateLimitManager = exports.rateLimitManager = void 0;
27
+ const logger_ts_1 = require("../observability/logger.js");
28
+ /** 速率限制触发阈值:在短时间内收到这么多 429 即触发冷却 */
29
+ const RATE_LIMIT_THRESHOLD = 3;
30
+ /** 初始冷却时长(ms),后续每次翻倍 */
31
+ const COOLDOWN_BASE_MS = 30_000;
32
+ /** 最大冷却周期数:超过此值后终止整个主会话 */
33
+ const MAX_COOLDOWN_CYCLES = 3;
34
+ /** 最大并发子 Agent 数 */
35
+ const MAX_CONCURRENT_SUB_SESSIONS = 3;
36
+ /** 子 Agent 排队最大等待时间(ms),超时则拒绝 */
37
+ const SUB_SESSION_WAIT_TIMEOUT = 120_000;
38
+ /**
39
+ * 全局速率限制 + 并发控制管理器(单例)
40
+ */
41
+ class RateLimitManager {
42
+ // ══════ 限流状态 ══════
43
+ /** 是否正在冷却中 */
44
+ cooldown = false;
45
+ /** 冷却结束时间(ms 时间戳) */
46
+ cooldownUntil = 0;
47
+ /** 连续 429 计数(同一冷却周期内累计) */
48
+ count429 = 0;
49
+ /** 冷却周期数(每次触发冷却递增,用于指数退避) */
50
+ cooldownCycles = 0;
51
+ // ══════ 并发控制 ══════
52
+ /** 当前活跃的子 Agent 数量 */
53
+ activeSubSessionCount = 0;
54
+ /** 已注册但尚未释放的子会话集合(防止重复释放) */
55
+ activeSubSessionSet = new Set();
56
+ /** 并发控制等待队列 */
57
+ waitQueue = [];
58
+ // ══════ 父子会话映射 ══════
59
+ /** 子会话 ID → 父会话 ID */
60
+ parentMap = new Map();
61
+ /** 主会话 ID → AbortController(用于在多轮冷却失败时终止主会话) */
62
+ mainSessionControllers = new Map();
63
+ /** 已终止的主会话 ID(防止重复 abort) */
64
+ abortedSessions = new Set();
65
+ // ───────── 主会话生命周期 ─────────
66
+ /**
67
+ * 注册主会话。由 AgentEngine.run() 在开始时调用。
68
+ *
69
+ * @param sessionId 主会话 ID
70
+ * @param controller 引擎内部 AbortController,RateLimitManager 在多轮冷却失败时
71
+ * 可调用 controller.abort() 终止主会话
72
+ */
73
+ registerMainSession(sessionId, controller) {
74
+ this.mainSessionControllers.set(sessionId, controller);
75
+ }
76
+ /**
77
+ * 注销主会话。由 AgentEngine.run() 在 finally 中调用。
78
+ * 清理该主会话下的所有子会话映射并唤醒等待队列。
79
+ */
80
+ unregisterMainSession(sessionId) {
81
+ this.mainSessionControllers.delete(sessionId);
82
+ this.abortedSessions.delete(sessionId);
83
+ // 清理该主会话下的所有子会话映射(sessionId 作为 parent)
84
+ for (const [subId, parentId] of this.parentMap) {
85
+ if (parentId === sessionId) {
86
+ this.parentMap.delete(subId);
87
+ // 子会话可能仍在活跃集合中(异常退出未正常释放)
88
+ if (this.activeSubSessionSet.has(subId)) {
89
+ this.activeSubSessionSet.delete(subId);
90
+ if (this.activeSubSessionCount > 0)
91
+ this.activeSubSessionCount--;
92
+ }
93
+ }
94
+ }
95
+ // 兜底:清理 sessionId 作为 child 的条目(子 engine run() 结束时自动清理自身映射)
96
+ // 注意:不递减 activeSubSessionCount,因为并发槽位由 tool-executor 的
97
+ // releaseSubSessionSlot 管理(使用临时 subslot ID,不是实际的 sessionId)
98
+ this.parentMap.delete(sessionId);
99
+ this.activeSubSessionSet.delete(sessionId);
100
+ // 如果已经没有任何活跃主会话,重置全局限流状态
101
+ if (this.mainSessionControllers.size === 0) {
102
+ this.resetGlobal();
103
+ }
104
+ else {
105
+ // 仍有其他主会话在运行,尝试唤醒排队
106
+ this.drainQueue();
107
+ }
108
+ }
109
+ // ───────── 子会话生命周期 ─────────
110
+ /**
111
+ * 注册子会话。由 AgentEngine.linkChildSession() 调用。
112
+ *
113
+ * 注意:此方法仅建立父子映射,不增加并发计数。
114
+ * 并发计数在 acquireSubSessionSlot() 中完成。
115
+ */
116
+ registerSubSession(childId, parentId) {
117
+ this.parentMap.set(childId, parentId);
118
+ }
119
+ /**
120
+ * 注销子会话。由 AgentEngine.unlinkChildSession() 调用。
121
+ * 同时释放并发槽位并唤醒等待队列。
122
+ */
123
+ unregisterSubSession(childId) {
124
+ const wasActive = this.activeSubSessionSet.has(childId);
125
+ this.activeSubSessionSet.delete(childId);
126
+ this.parentMap.delete(childId);
127
+ if (wasActive) {
128
+ if (this.activeSubSessionCount > 0)
129
+ this.activeSubSessionCount--;
130
+ this.drainQueue();
131
+ }
132
+ }
133
+ // ───────── 并发槽位 ─────────
134
+ /**
135
+ * 获取子 Agent 执行槽位(并发控制)。
136
+ *
137
+ * 在 delegate_task 工具执行前调用,确保同时运行的子 Agent 不超过上限。
138
+ * - 冷却期内自动等待冷却结束
139
+ * - 并发槽位满时排队等待,超时则拒绝
140
+ *
141
+ * 注意:本方法会增加 activeSubSessionCount。调用方在子 Agent 结束后
142
+ * 必须调用 releaseSubSessionSlot() 或 unregisterSubSession() 释放槽位。
143
+ *
144
+ * @param sessionId 子会话 ID(用于在父会话 abort 时提前退出等待)
145
+ * @returns true 表示获得槽位可以执行,false 表示超时或被拒绝
146
+ */
147
+ async acquireSubSessionSlot(sessionId) {
148
+ // ① 如果处于冷却期,等待冷却结束
149
+ if (this.cooldown) {
150
+ const remaining = Math.max(0, this.cooldownUntil - Date.now());
151
+ if (remaining > 0) {
152
+ if (remaining > SUB_SESSION_WAIT_TIMEOUT) {
153
+ (0, logger_ts_1.logEvent)({
154
+ event: 'rate_limit.cooldown_too_long',
155
+ level: 'warn',
156
+ sessionId,
157
+ data: { remaining, max: SUB_SESSION_WAIT_TIMEOUT },
158
+ });
159
+ return false;
160
+ }
161
+ await this.waitCooldown(remaining, sessionId);
162
+ // 等待期间父会话可能已 abort
163
+ if (sessionId && this.isParentAborted(sessionId)) {
164
+ return false;
165
+ }
166
+ }
167
+ }
168
+ // ② 检查并发槽位
169
+ if (this.activeSubSessionCount >= MAX_CONCURRENT_SUB_SESSIONS) {
170
+ const granted = await this.waitForSlot(sessionId);
171
+ if (!granted)
172
+ return false;
173
+ // 等待期间父会话可能已 abort
174
+ if (sessionId && this.isParentAborted(sessionId)) {
175
+ // 释放刚刚获得的槽位
176
+ this.releaseSubSessionSlot();
177
+ return false;
178
+ }
179
+ }
180
+ // ③ 获得槽位
181
+ this.activeSubSessionCount++;
182
+ if (sessionId)
183
+ this.activeSubSessionSet.add(sessionId);
184
+ return true;
185
+ }
186
+ /**
187
+ * 释放子 Agent 执行槽位。
188
+ *
189
+ * 由 delegate_task 工具执行结束(无论成功或失败)后调用。
190
+ * 唤醒等待队列中的下一个子 Agent。
191
+ */
192
+ releaseSubSessionSlot(sessionId) {
193
+ if (sessionId)
194
+ this.activeSubSessionSet.delete(sessionId);
195
+ if (this.activeSubSessionCount > 0)
196
+ this.activeSubSessionCount--;
197
+ this.drainQueue();
198
+ }
199
+ // ───────── 429 速率限制处理 ─────────
200
+ /**
201
+ * 处理 429 速率限制事件。
202
+ *
203
+ * 由 LLMCaller 在捕获 429 错误时调用。
204
+ *
205
+ * 三级递进策略:
206
+ * 1. 容忍期(< 阈值):仅记录,让 LLM 层重试/降级自行处理
207
+ * 2. 冷却期(≥ 阈值):触发指数退避冷却,新子 Agent 排队等待
208
+ * 3. 终止期(冷却周期超过上限):终止整个主会话
209
+ */
210
+ handleRateLimited(sessionId) {
211
+ this.count429++;
212
+ // 解析父主会话 ID
213
+ const parentSessionId = this.parentMap.get(sessionId) || sessionId;
214
+ // 已处于冷却期:仅记录,让冷却计时自然结束
215
+ if (this.cooldown) {
216
+ (0, logger_ts_1.logEvent)({
217
+ event: 'rate_limit.429_during_cooldown',
218
+ level: 'warn',
219
+ sessionId,
220
+ data: {
221
+ count429: this.count429,
222
+ cooldownRemaining: Math.max(0, this.cooldownUntil - Date.now()),
223
+ parentSessionId,
224
+ },
225
+ });
226
+ return;
227
+ }
228
+ // 未冷却:检查是否达到触发阈值
229
+ if (this.count429 >= RATE_LIMIT_THRESHOLD) {
230
+ this.startCooldown();
231
+ // 检查冷却周期是否超过上限 → 终止主会话
232
+ if (this.cooldownCycles >= MAX_COOLDOWN_CYCLES) {
233
+ this.abortMainSession(parentSessionId);
234
+ this.resetForSession(parentSessionId);
235
+ }
236
+ else {
237
+ (0, logger_ts_1.logEvent)({
238
+ event: 'rate_limit.cooldown_started',
239
+ level: 'warn',
240
+ sessionId,
241
+ data: {
242
+ cycle: this.cooldownCycles,
243
+ durationMs: this.getCooldownDuration(),
244
+ count429: this.count429,
245
+ activeSubSessions: this.activeSubSessionCount,
246
+ },
247
+ });
248
+ }
249
+ }
250
+ else {
251
+ // 未达到阈值,仅记录
252
+ (0, logger_ts_1.logEvent)({
253
+ event: 'rate_limit.429_observed',
254
+ level: 'warn',
255
+ sessionId,
256
+ data: { count429: this.count429, threshold: RATE_LIMIT_THRESHOLD },
257
+ });
258
+ }
259
+ }
260
+ // ───────── 查询 API ─────────
261
+ /** 是否处于冷却期 */
262
+ isCooling() {
263
+ return this.cooldown;
264
+ }
265
+ /** 是否已达到并发上限或正在冷却(用于快速拒绝新请求) */
266
+ isRateLimitedOrSaturated() {
267
+ return this.cooldown || this.activeSubSessionCount >= MAX_CONCURRENT_SUB_SESSIONS;
268
+ }
269
+ /** 获取当前状态快照(诊断用) */
270
+ getStats() {
271
+ return {
272
+ cooldown: this.cooldown,
273
+ cooldownRemainingMs: Math.max(0, this.cooldownUntil - Date.now()),
274
+ count429: this.count429,
275
+ cooldownCycles: this.cooldownCycles,
276
+ activeSubSessions: this.activeSubSessionCount,
277
+ maxConcurrent: MAX_CONCURRENT_SUB_SESSIONS,
278
+ queueLength: this.waitQueue.length,
279
+ };
280
+ }
281
+ // ───────── 内部实现 ─────────
282
+ /** 启动速率限制冷却期(指数退避) */
283
+ startCooldown() {
284
+ this.cooldown = true;
285
+ this.cooldownCycles++;
286
+ const duration = this.getCooldownDuration();
287
+ this.cooldownUntil = Date.now() + duration;
288
+ setTimeout(() => {
289
+ this.cooldown = false;
290
+ this.count429 = 0;
291
+ (0, logger_ts_1.logEvent)({
292
+ event: 'rate_limit.cooldown_ended',
293
+ level: 'info',
294
+ data: { cycle: this.cooldownCycles },
295
+ });
296
+ // 唤醒排队中的子 Agent
297
+ this.drainQueue();
298
+ }, duration);
299
+ }
300
+ /** 获取当前冷却时长(指数退避:30s → 60s → 120s) */
301
+ getCooldownDuration() {
302
+ return COOLDOWN_BASE_MS * Math.pow(2, this.cooldownCycles - 1);
303
+ }
304
+ /** 终止指定主会话 */
305
+ abortMainSession(sessionId) {
306
+ if (this.abortedSessions.has(sessionId))
307
+ return;
308
+ this.abortedSessions.add(sessionId);
309
+ const controller = this.mainSessionControllers.get(sessionId);
310
+ if (controller && !controller.signal.aborted) {
311
+ controller.abort(new Error(`TPM rate limit — ${this.cooldownCycles} cooldown cycles exhausted`));
312
+ (0, logger_ts_1.logEvent)({
313
+ event: 'rate_limit.main_session_aborted',
314
+ level: 'error',
315
+ sessionId,
316
+ data: {
317
+ cooldownCycles: this.cooldownCycles,
318
+ count429: this.count429,
319
+ },
320
+ });
321
+ }
322
+ }
323
+ /** 等待冷却期结束 */
324
+ waitCooldown(remainingMs, sessionId) {
325
+ return new Promise(resolve => {
326
+ const timer = setTimeout(resolve, remainingMs);
327
+ // 主会话被 abort 时提前退出等待
328
+ if (sessionId) {
329
+ const parentId = this.parentMap.get(sessionId) || sessionId;
330
+ const controller = this.mainSessionControllers.get(parentId);
331
+ if (controller && !controller.signal.aborted) {
332
+ const onAbort = () => {
333
+ clearTimeout(timer);
334
+ resolve();
335
+ };
336
+ controller.signal.addEventListener('abort', onAbort, { once: true });
337
+ }
338
+ }
339
+ });
340
+ }
341
+ /** 等待并发槽位(带超时) */
342
+ waitForSlot(sessionId) {
343
+ return new Promise(resolve => {
344
+ const item = { resolve, sessionId };
345
+ // 排队超时
346
+ item.timeoutId = setTimeout(() => {
347
+ const idx = this.waitQueue.indexOf(item);
348
+ if (idx !== -1)
349
+ this.waitQueue.splice(idx, 1);
350
+ (0, logger_ts_1.logEvent)({
351
+ event: 'rate_limit.slot_wait_timeout',
352
+ level: 'warn',
353
+ sessionId,
354
+ data: { timeout: SUB_SESSION_WAIT_TIMEOUT },
355
+ });
356
+ resolve(false);
357
+ }, SUB_SESSION_WAIT_TIMEOUT);
358
+ // 主会话被 abort 时立即退出等待
359
+ if (sessionId) {
360
+ const parentId = this.parentMap.get(sessionId) || sessionId;
361
+ const controller = this.mainSessionControllers.get(parentId);
362
+ if (controller && !controller.signal.aborted) {
363
+ item.abortListener = () => {
364
+ if (item.timeoutId)
365
+ clearTimeout(item.timeoutId);
366
+ const idx = this.waitQueue.indexOf(item);
367
+ if (idx !== -1)
368
+ this.waitQueue.splice(idx, 1);
369
+ resolve(false);
370
+ };
371
+ controller.signal.addEventListener('abort', item.abortListener, { once: true });
372
+ }
373
+ }
374
+ this.waitQueue.push(item);
375
+ });
376
+ }
377
+ /** 唤醒排队中的子 Agent,直到并发槽位用尽或队列空 */
378
+ drainQueue() {
379
+ while (this.activeSubSessionCount < MAX_CONCURRENT_SUB_SESSIONS &&
380
+ this.waitQueue.length > 0 &&
381
+ !this.cooldown) {
382
+ const item = this.waitQueue.shift();
383
+ if (!item)
384
+ continue;
385
+ // 清理定时器和 abort 监听器
386
+ if (item.timeoutId)
387
+ clearTimeout(item.timeoutId);
388
+ if (item.abortListener && item.sessionId) {
389
+ const parentId = this.parentMap.get(item.sessionId) || item.sessionId;
390
+ const controller = this.mainSessionControllers.get(parentId);
391
+ if (controller) {
392
+ controller.signal.removeEventListener('abort', item.abortListener);
393
+ }
394
+ }
395
+ try {
396
+ item.resolve(true);
397
+ }
398
+ catch {
399
+ // ignore
400
+ }
401
+ }
402
+ }
403
+ /** 检查指定子会话的父主会话是否已被 abort */
404
+ isParentAborted(sessionId) {
405
+ const parentId = this.parentMap.get(sessionId) || sessionId;
406
+ const controller = this.mainSessionControllers.get(parentId);
407
+ return !!controller?.signal.aborted;
408
+ }
409
+ /** 重置全局限流状态(无活跃主会话时调用) */
410
+ resetGlobal() {
411
+ this.cooldown = false;
412
+ this.cooldownUntil = 0;
413
+ this.count429 = 0;
414
+ this.cooldownCycles = 0;
415
+ this.activeSubSessionCount = 0;
416
+ this.activeSubSessionSet.clear();
417
+ this.parentMap.clear();
418
+ this.abortedSessions.clear();
419
+ // 唤醒所有排队项(拒绝,因为已无主会话)
420
+ const queue = this.waitQueue;
421
+ this.waitQueue = [];
422
+ for (const item of queue) {
423
+ if (item.timeoutId)
424
+ clearTimeout(item.timeoutId);
425
+ try {
426
+ item.resolve(false);
427
+ }
428
+ catch {
429
+ // ignore
430
+ }
431
+ }
432
+ }
433
+ /** 重置指定主会话相关的限流状态 */
434
+ resetForSession(sessionId) {
435
+ this.cooldown = false;
436
+ this.cooldownUntil = 0;
437
+ this.count429 = 0;
438
+ this.cooldownCycles = 0;
439
+ // 唤醒所有排队项(主会话被终止,全部拒绝)
440
+ const queue = this.waitQueue;
441
+ this.waitQueue = [];
442
+ for (const item of queue) {
443
+ if (item.timeoutId)
444
+ clearTimeout(item.timeoutId);
445
+ try {
446
+ item.resolve(false);
447
+ }
448
+ catch {
449
+ // ignore
450
+ }
451
+ }
452
+ }
453
+ }
454
+ exports.RateLimitManager = RateLimitManager;
455
+ /** 全局单例(跨所有 AgentEngine 实例共享) */
456
+ exports.rateLimitManager = new RateLimitManager();
457
+ /** 导出常量供外部读取(不可修改) */
458
+ exports.RATE_LIMIT_CONFIG = {
459
+ RATE_LIMIT_THRESHOLD,
460
+ COOLDOWN_BASE_MS,
461
+ MAX_COOLDOWN_CYCLES,
462
+ MAX_CONCURRENT_SUB_SESSIONS,
463
+ SUB_SESSION_WAIT_TIMEOUT,
464
+ };
465
+ //# sourceMappingURL=rate-limit-manager.js.map