@librechat/agents 3.9.3 → 3.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -0
- package/dist/cjs/common/enum.cjs +2 -0
- package/dist/cjs/common/enum.cjs.map +1 -1
- package/dist/cjs/events.cjs +11 -0
- package/dist/cjs/events.cjs.map +1 -1
- package/dist/cjs/graphs/Graph.cjs +41 -1
- package/dist/cjs/graphs/Graph.cjs.map +1 -1
- package/dist/cjs/graphs/acceptedModelResponse.cjs +168 -0
- package/dist/cjs/graphs/acceptedModelResponse.cjs.map +1 -0
- package/dist/cjs/llm/invoke.cjs +10 -5
- package/dist/cjs/llm/invoke.cjs.map +1 -1
- package/dist/cjs/llm/streamLimits.cjs +1 -1
- package/dist/cjs/llm/streamLimits.cjs.map +1 -1
- package/dist/cjs/main.cjs +2 -0
- package/dist/cjs/messages/fading.cjs +14 -6
- package/dist/cjs/messages/fading.cjs.map +1 -1
- package/dist/cjs/messages/prune.cjs +95 -36
- package/dist/cjs/messages/prune.cjs.map +1 -1
- package/dist/cjs/openai/index.cjs +2 -0
- package/dist/cjs/openai/index.cjs.map +1 -1
- package/dist/cjs/openai/toolProjection.cjs +196 -0
- package/dist/cjs/openai/toolProjection.cjs.map +1 -0
- package/dist/cjs/run.cjs +8 -1
- package/dist/cjs/run.cjs.map +1 -1
- package/dist/cjs/session/AgentSession.cjs +1 -1
- package/dist/cjs/session/AgentSession.cjs.map +1 -1
- package/dist/cjs/stream.cjs +9 -4
- package/dist/cjs/stream.cjs.map +1 -1
- package/dist/cjs/tools/ToolNode.cjs +2 -1
- package/dist/cjs/tools/ToolNode.cjs.map +1 -1
- package/dist/cjs/tools/subagent/SubagentReplay.cjs +4 -1
- package/dist/cjs/tools/subagent/SubagentReplay.cjs.map +1 -1
- package/dist/cjs/utils/acceptedToolArguments.cjs +143 -0
- package/dist/cjs/utils/acceptedToolArguments.cjs.map +1 -0
- package/dist/esm/common/enum.mjs +2 -0
- package/dist/esm/common/enum.mjs.map +1 -1
- package/dist/esm/events.mjs +11 -0
- package/dist/esm/events.mjs.map +1 -1
- package/dist/esm/graphs/Graph.mjs +41 -1
- package/dist/esm/graphs/Graph.mjs.map +1 -1
- package/dist/esm/graphs/acceptedModelResponse.mjs +165 -0
- package/dist/esm/graphs/acceptedModelResponse.mjs.map +1 -0
- package/dist/esm/llm/invoke.mjs +10 -5
- package/dist/esm/llm/invoke.mjs.map +1 -1
- package/dist/esm/llm/streamLimits.mjs +1 -1
- package/dist/esm/llm/streamLimits.mjs.map +1 -1
- package/dist/esm/main.mjs +3 -3
- package/dist/esm/messages/fading.mjs +14 -7
- package/dist/esm/messages/fading.mjs.map +1 -1
- package/dist/esm/messages/prune.mjs +95 -37
- package/dist/esm/messages/prune.mjs.map +1 -1
- package/dist/esm/openai/index.mjs +2 -1
- package/dist/esm/openai/index.mjs.map +1 -1
- package/dist/esm/openai/toolProjection.mjs +196 -0
- package/dist/esm/openai/toolProjection.mjs.map +1 -0
- package/dist/esm/run.mjs +8 -1
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/session/AgentSession.mjs +1 -1
- package/dist/esm/session/AgentSession.mjs.map +1 -1
- package/dist/esm/stream.mjs +9 -4
- package/dist/esm/stream.mjs.map +1 -1
- package/dist/esm/tools/ToolNode.mjs +2 -1
- package/dist/esm/tools/ToolNode.mjs.map +1 -1
- package/dist/esm/tools/subagent/SubagentReplay.mjs +5 -2
- package/dist/esm/tools/subagent/SubagentReplay.mjs.map +1 -1
- package/dist/esm/utils/acceptedToolArguments.mjs +142 -0
- package/dist/esm/utils/acceptedToolArguments.mjs.map +1 -0
- package/dist/types/common/enum.d.ts +4 -0
- package/dist/types/graphs/Graph.d.ts +3 -1
- package/dist/types/graphs/acceptedModelResponse.d.ts +15 -0
- package/dist/types/messages/fading.d.ts +14 -2
- package/dist/types/messages/prune.d.ts +7 -0
- package/dist/types/openai/arguments.d.ts +2 -0
- package/dist/types/openai/index.d.ts +2 -0
- package/dist/types/openai/toolProjection.d.ts +30 -0
- package/dist/types/run.d.ts +1 -0
- package/dist/types/tools/ToolNode.d.ts +1 -1
- package/dist/types/types/graph.d.ts +5 -3
- package/dist/types/types/run.d.ts +5 -0
- package/dist/types/types/stream.d.ts +22 -1
- package/dist/types/types/tools.d.ts +2 -0
- package/dist/types/utils/acceptedToolArguments.d.ts +10 -0
- package/package.json +1 -1
- package/src/common/enum.ts +5 -0
- package/src/events.ts +24 -1
- package/src/graphs/Graph.ts +95 -0
- package/src/graphs/acceptedModelResponse.ts +307 -0
- package/src/llm/invoke.ts +39 -14
- package/src/llm/streamLimits.ts +1 -1
- package/src/messages/fading.ts +30 -5
- package/src/messages/prune.ts +168 -55
- package/src/openai/arguments.ts +2 -0
- package/src/openai/index.ts +6 -0
- package/src/openai/toolProjection.ts +318 -0
- package/src/run.ts +21 -0
- package/src/session/AgentSession.ts +2 -2
- package/src/stream.ts +21 -1
- package/src/tools/ToolNode.ts +5 -0
- package/src/tools/subagent/SubagentReplay.ts +10 -9
- package/src/types/graph.ts +15 -9
- package/src/types/run.ts +5 -0
- package/src/types/stream.ts +26 -0
- package/src/types/tools.ts +2 -0
- package/src/utils/acceptedToolArguments.ts +204 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubagentReplay.cjs","names":["
|
|
1
|
+
{"version":3,"file":"SubagentReplay.cjs","names":["isFadingTier","isLegacyFadingTier","isRunStepResumeState","stripRunStepResumeState","getRunStepResumeState","attachRunStepResumeState"],"sources":["../../../../src/tools/subagent/SubagentReplay.ts"],"mappings":";;;AAkBA,MAAa,sCACX;AACF,MAAa,qCACX;AACF,MAAa,mCACX;AAEF,MAAM,uCACJ;AACF,MAAM,sCACJ;AACF,MAAM,sCACJ;AACF,MAAM,uCAAuC;CAC3C;CACA;CACA;AACF;AACA,MAAM,4BAA4B;AAuElC,SAAS,SAAS,OAAiC;CACjD,OAAO,OAAO,UAAU,YAAY,MAAM,SAAS;AACrD;AAEA,SAAS,qBAAqB,OAAiC;CAC7D,OAAO,OAAO,UAAU,YAAY,OAAO,cAAc,KAAK,KAAK,SAAS;AAC9E;AAEA,SAAS,yBACP,OACqC;CACrC,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,WAAW;CACjB,MAAM,MAAM,SAAS;CACrB,MAAM,SAAS,SAAS;CACxB,OACE,OAAO,QACP,SAAS,IAAI,cAAc,KAC3B,OAAO,IAAI,YAAY,YACvB,SAAS,IAAI,SAAS,KACtB,UAAU,QACV,OAAO,aAAa,SACpB,MAAM,QAAQ,OAAO,kBAAkB,KACvC,MAAM,QAAQ,OAAO,gBAAgB,KACrC,MAAM,QAAQ,OAAO,MAAM;AAE/B;AAEA,SAAS,sBACP,OACsC;CACtC,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,aAAa;CACnB,OACE,SAAS,WAAW,QAAQ,KAC5B,SAAS,WAAW,YAAY,KAChC,OAAO,WAAW,iBAAiB;AAEvC;AAEA,SAAS,wBACP,OACwC;CACxC,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,YAAY;CAClB,OAAO,SAAS,UAAU,UAAU,KAAK,SAAS,UAAU,MAAM;AACpE;AAEA,SAAS,uBACP,OACuC;CACvC,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,YAAY;CAClB,MAAM,UAAU,UAAU;CAC1B,OACE,SAAS,UAAU,QAAQ,KAC3B,WAAW,QACX,OAAO,YAAY,YACnB,SAAS,QAAQ,UAAU,KAC3B,OAAO,SAAS,QAAQ,WAAW,MAClC,QAAQ,SAAS,QAAQ,MAAM,QAAQ,QAAQ,KAAK;AAEzD;AAEA,SAAS,0BACP,OACiE;CACjE,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,QAAQ;CAGd,OAAO,SAAS,MAAM,QAAQ,KAAK,qBAAqB,MAAM,KAAK;AACrE;AAEA,SAAS,0BACP,OACiE;CACjE,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,QAAQ;CAGd,OAAO,SAAS,MAAM,UAAU,KAAK,qBAAqB,MAAM,IAAI;AACtE;AAEA,SAAgB,sBACd,OACsC;CACtC,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,QAAQ;CACd,IACE,CAAC,SAAS,MAAM,QAAQ,KACxB,CAAC,MAAM,QAAQ,MAAM,eAAe,KACpC,CAAC,MAAM,QAAQ,MAAM,eAAe,GAEpC,OAAO;CAET,MAAM,mBAAmB,MAAM,gBAAgB,MAC7C,yBACF;CACA,MAAM,mBAAmB,MAAM,gBAAgB,MAC7C,yBACF;CACA,IAAI,CAAC,oBAAoB,CAAC,kBACxB,OAAO;CAET,MAAM,iBAAiB,IAAI,IACzB,MAAM,gBAAgB,KAAK,UAAU,MAAM,QAAQ,CACrD;CACA,MAAM,oBAAoB,IAAI,IAC5B,MAAM,gBAAgB,KAAK,UAAU,MAAM,UAAU,CACvD;CACA,OACE,eAAe,SAAS,MAAM,gBAAgB,UAC9C,kBAAkB,SAAS,MAAM,gBAAgB;AAErD;AAEA,SAAS,sBACP,OACsC;CACtC,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,QAAQ;CACd,IACE,OAAO,MAAM,YAAY,YACzB,CAAC,MAAM,QAAQ,MAAM,eAAe,KACpC,CAAC,MAAM,gBAAgB,MAAM,yBAAyB,GAEtD,OAAO;CAKT,OAAO,IAHe,IACpB,MAAM,gBAAgB,KAAK,UAAU,MAAM,QAAQ,CAEtC,CAAC,CAAC,SAAS,MAAM,gBAAgB;AAClD;AAEA,SAAS,2BACP,OACsD;CACtD,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,QAAQ;CACd,OAAO,SAAS,MAAM,GAAG,KAAK,OAAO,MAAM,UAAU;AACvD;AAEA,SAAgB,2BACd,OACmC;CACnC,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,QAAQ;CACd,IACE,CAAC,MAAM,QAAQ,MAAM,OAAO,KAC5B,CAAC,MAAM,QAAQ,MAAM,0BAA0B,KAC/C,CAAC,qBAAqB,MAAM,WAAW,KACvC,CAAC,MAAM,QAAQ,MAAM,oBAAoB,KACzC,CAAC,MAAM,qBAAqB,MAAM,QAAQ,GAE1C,OAAO;CAET,MAAM,YAAY,IAAI,IAAI,MAAM,QAAQ,KAAK,UAAU,MAAM,GAAG,CAAC;CACjE,MAAM,cAAc,IAAI,IAAI,MAAM,oBAAoB;CACtD,OACE,UAAU,SAAS,MAAM,QAAQ,UACjC,YAAY,SAAS,MAAM,qBAAqB;AAEpD;AAGA,SAAS,mBAAmB,OAAyB;CACnD,OAAOA,eAAAA,aAAa,KAAK,KAAKC,eAAAA,mBAAmB,KAAK;AACxD;AAEA,SAAS,mBAAmB,OAAmD;CAC7E,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,QAAQ;CACd,IACE,CAAC,MAAM,QAAQ,MAAM,aAAa,KAClC,CAAC,MAAM,cAAc,MAAM,uBAAuB,KAClD,CAAC,MAAM,QAAQ,MAAM,YAAY,KACjC,CAAC,MAAM,aAAa,MAAM,sBAAsB,KAChD,CAAC,MAAM,QAAQ,MAAM,SAAS,KAC9B,CAAC,MAAM,UAAU,MAAM,qBAAqB,KAC5C,CAAC,MAAM,QAAQ,MAAM,cAAc,KACnC,CAAC,MAAM,eAAe,MAAM,qBAAqB,KACjD,CAAC,MAAM,QAAQ,MAAM,qBAAqB,KAC1C,CAAC,MAAM,sBAAsB,MAAM,QAAQ,KAC1C,MAAM,gBAAgB,QAAQ,CAACC,sBAAAA,qBAAqB,MAAM,YAAY,KACtE,MAAM,wBAAwB,QAC7B,CAAC,2BAA2B,MAAM,oBAAoB,KACvD,MAAM,cAAc,QAAQ,CAAC,mBAAmB,MAAM,UAAU,KAChE,MAAM,eAAe,SACnB,OAAO,MAAM,gBAAgB,YAC5B,MAAM,QAAQ,MAAM,WAAW,KAC/B,CAAC,OAAO,OAAO,MAAM,WAAW,CAAC,CAAC,MAAM,kBAAkB,IAE9D,OAAO;CAET,MAAM,cAAc,IAAI,IACtB,MAAM,cAAc,KAAK,cAAc,UAAU,UAAU,CAC7D;CACA,MAAM,YAAY,IAAI,IACpB,MAAM,aAAa,KAAK,cAAc,UAAU,QAAQ,CAC1D;CACA,MAAM,eAAe,IAAI,IAAI,MAAM,UAAU,KAAK,SAAS,KAAK,QAAQ,CAAC;CACzE,MAAM,gBAAgB,IAAI,IACxB,MAAM,eAAe,KAAK,UAAU,MAAM,OAAO,CACnD;CACA,MAAM,oBAAoB,IAAI,IAAI,MAAM,qBAAqB;CAC7D,OACE,YAAY,SAAS,MAAM,cAAc,UACzC,UAAU,SAAS,MAAM,aAAa,UACtC,aAAa,SAAS,MAAM,UAAU,UACtC,cAAc,SAAS,MAAM,eAAe,UAC5C,kBAAkB,SAAS,MAAM,sBAAsB;AAE3D;AAEA,SAAS,0BACP,OACA,MACA,OACkC;CAClC,IAAI,SAAS,QAAQ,OAAO,UAAU,UACpC,OAAO;CAET,MAAM,YAAY;CAClB,MAAM,aAAa,UAAU;CAC7B,MAAM,eAAe,UAAU;CAC/B,MAAM,WAAW,UAAU;CAC3B,MAAM,yBAAyB,UAAU;CACzC,MAAM,cAAc,UAAU;CAC9B,MAAM,aAAa,UAAU;CAC7B,MAAM,kBAAkB,UAAU;CAClC,IACE,CAAC,SAAS,UAAU,gBAAgB,KACpC,CAAC,SAAS,UAAU,KACnB,gBAAgB,QAAQ,CAAC,SAAS,YAAY,KAC9C,YAAY,QAAQ,CAAC,SAAS,QAAQ,KACvC,CAAC,SAAS,sBAAsB,KAChC,CAAC,MAAM,QAAQ,WAAW,KAC1B,YAAY,WAAW,KACvB,CAAC,YAAY,MAAM,qBAAqB,KACxC,CAAC,mBAAmB,UAAU,KAC9B,CAAC,MAAM,QAAQ,eAAe,GAE9B,OAAO;CAET,MAAM,qBAAqB,YAAY,EAAE,CAAC;CAC1C,MAAM,uBAAuB,IAAI,IAC/B,YAAY,KAAK,eAAe,WAAW,YAAY,CACzD;CAMA,IAAI,CALyB,gBAAgB,OAC1C,aACC,yBAAyB,QAAQ,KACjC,SAAS,IAAI,mBAAmB,sBAEZ,GACtB,OAAO;CAET,MAAM,eAAe,IAAI,IACvB,gBAAgB,KAAK,aACnB,KAAK,UAAU;EACb,SAAS,IAAI;EACb,SAAS,IAAI;EACb,SAAS,IAAI;CACf,CAAC,CACH,CACF;CACA,OACE,YAAY,OACT,eAAe,WAAW,aAAa,kBAC1C,KACA,qBAAqB,SAAS,YAAY,UAC1C,aAAa,SAAS,gBAAgB,WACrC,UAAU,cAAc,QACvB,yBAAyB,UAAU,YAAY,MAAM,QAAQ,CAAC;AAEpE;AAEA,SAAS,yBACP,OACA,uBAAoB,IAAI,IAAI,GAC5B,QAAQ,GACyB;CACjC,IACE,SAAS,QACT,OAAO,UAAU,YACjB,QAAQ,6BACR,KAAK,IAAI,KAAK,GAEd,OAAO;CAET,KAAK,IAAI,KAAK;CACd,MAAM,WAAW;CACjB,IACE,SAAS,YAAY,KACrB,CAAC,MAAM,QAAQ,SAAS,UAAU,KAClC,SAAS,WAAW,WAAW,KAC/B,CAAC,SAAS,WAAW,OAAO,cAC1B,0BAA0B,WAAW,MAAM,KAAK,CAClD,GAEA,OAAO;CAKT,OAAO,IAHuB,IAC5B,SAAS,WAAW,KAAK,cAAc,UAAU,gBAAgB,CAE5C,CAAC,CAAC,SAAS,SAAS,WAAW;AACxD;AAEA,SAAgB,0BACd,SACoC;CACpC,UAAUC,sBAAAA,wBAAwB,OAAO;CACzC,IAAI,WAAW,QAAQ,OAAO,YAAY,UACxC;CAEF,IACE,CAAC,OAAO,UAAU,eAAe,KAC/B,SACA,oCACF,GAEA;CAEF,MAAM,WAAY,QAChB;CAEF,OAAO,yBAAyB,QAAQ,IAAI,WAAW,KAAA;AACzD;AAEA,SAAgB,mCACd,SACoC;CACpC,IACE,WAAW,QACX,OAAO,YAAY,YACnB,CAAC,OAAO,UAAU,eAAe,KAC/B,SACA,oCACF,GAEA;CAEF,MAAM,WAAW,0BAA0B,OAAO;CAClD,IAAI,YAAY,MACd,MAAM,IAAI,MAAM,mCAAmC;CAErD,OAAO;AACT;AAEA,SAAS,sCACP,SACoC;CACpC,IACE,WAAW,QACX,OAAO,YAAY,YACnB,MAAM,QAAQ,OAAO,KACrB,OAAO,eAAe,OAAO,MAAM,OAAO,WAE1C,OAAO;CAET,OAAO,qCAAqC,OACzC,QAAQ,CAAC,OAAO,UAAU,eAAe,KAAK,SAAS,GAAG,CAC7D;AACF;AAEA,SAAS,8BACP,SACwE;CACxE,OACE,WAAW,QACX,OAAO,YAAY,YACnB,CAAC,MAAM,QAAQ,OAAO,KACtB,OAAO,eAAe,OAAO,MAAM,OAAO,aAC1C,CAAC,OAAO,UAAU,eAAe,KAC/B,SACA,mCACF,KACA,CAAC,OAAO,UAAU,eAAe,KAC/B,SACA,mCACF,KACA,0BAA0B,OAAO,KAAK;AAE1C;AAEA,SAAgB,6BACd,SACA,UACQ;CACR,MAAM,eAAeC,sBAAAA,sBAAsB,OAAO;CAClD,IAAI,gBAAgB,MAClB,OAAOC,sBAAAA,yBACL,6BAA6BF,sBAAAA,wBAAwB,OAAO,GAAG,QAAQ,GACvE,YACF;CAEF,IACE,+BAA+B,OAAO,KACtC,8BAA8B,OAAO,GAErC,OAAO;EACL,GAAG;GACF,uCAAuC;CAC1C;CAEF,IAAI,CAAC,sCAAsC,OAAO,GAChD,OAAO;GACJ,sCAAsC;GACtC,sCAAsC;GACtC,uCAAuC;CAC1C;CAEF,OAAO;EACL,GAAG;GACF,uCAAuC;CAC1C;AACF;AAEA,SAAgB,4BAA4B,SAA2B;CACrE,UAAUA,sBAAAA,wBAAwB,OAAO;CACzC,IAAI,+BAA+B,OAAO,GACxC,OAAO,QAAQ;CAEjB,IACE,WAAW,QACX,OAAO,YAAY,YACnB,0BAA0B,OAAO,KAAK,MAEtC,OAAO;CAET,OAAO,OAAO,YACZ,OAAO,QAAQ,OAAO,CAAC,CAAC,QACrB,CAAC,SAAS,QAAQ,oCACrB,CACF;AACF;AAEA,SAAS,+BACP,SACyC;CACzC,IACE,WAAW,QACX,OAAO,YAAY,YACnB,MAAM,QAAQ,OAAO,KACrB,OAAO,eAAe,OAAO,MAAM,OAAO,aAC1C,OAAO,KAAK,OAAO,CAAC,CAAC,WAAW,qCAAqC,QAErE,OAAO;CAET,MAAM,UAAU;CAChB,OACE,QAAQ,yCAAyC,KACjD,OAAO,UAAU,eAAe,KAC9B,SACA,mCACF,KACA,0BAA0B,OAAO,KAAK;AAE1C;AAEA,MAAa,6BAA6B,OAAO,IAC/C,8CACF"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
let node_util = require("node:util");
|
|
2
|
+
//#region src/utils/acceptedToolArguments.ts
|
|
3
|
+
const MAX_ARGUMENT_DEPTH = 64;
|
|
4
|
+
const INVALID = "Accepted tool call arguments are not JSON serializable";
|
|
5
|
+
const LIMIT = "Tool projection buffer limit exceeded";
|
|
6
|
+
function invalid() {
|
|
7
|
+
throw new Error(INVALID);
|
|
8
|
+
}
|
|
9
|
+
function hasJSONPrototype(value, array) {
|
|
10
|
+
const proto = Object.getPrototypeOf(value);
|
|
11
|
+
if (proto === null) return true;
|
|
12
|
+
if (typeof proto !== "object" || node_util.types.isProxy(proto)) return false;
|
|
13
|
+
const ctor = Object.getOwnPropertyDescriptor(proto, "constructor")?.value;
|
|
14
|
+
if (typeof ctor !== "function" || node_util.types.isProxy(ctor)) return false;
|
|
15
|
+
return Object.getOwnPropertyDescriptor(ctor, "prototype")?.value === proto && Function.prototype.toString.call(ctor) === Function.prototype.toString.call(array ? Array : Object);
|
|
16
|
+
}
|
|
17
|
+
function serializeToolArguments(value, maxBytes) {
|
|
18
|
+
if (maxBytes < 2) throw new Error(LIMIT);
|
|
19
|
+
const parts = [];
|
|
20
|
+
const ancestors = /* @__PURE__ */ new Set();
|
|
21
|
+
let remaining = maxBytes;
|
|
22
|
+
const append = (text) => {
|
|
23
|
+
remaining -= Buffer.byteLength(text, "utf8");
|
|
24
|
+
if (remaining < 0) throw new Error(LIMIT);
|
|
25
|
+
parts.push(text);
|
|
26
|
+
};
|
|
27
|
+
const string = (text) => {
|
|
28
|
+
if (text.length + 2 > remaining) throw new Error(LIMIT);
|
|
29
|
+
append(JSON.stringify(text));
|
|
30
|
+
};
|
|
31
|
+
const encode = (input, depth) => {
|
|
32
|
+
if (depth > MAX_ARGUMENT_DEPTH) invalid();
|
|
33
|
+
if (input === null) {
|
|
34
|
+
append("null");
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
if (typeof input === "string") {
|
|
38
|
+
string(input);
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
if (typeof input === "boolean") {
|
|
42
|
+
append(input ? "true" : "false");
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
if (typeof input === "number") {
|
|
46
|
+
if (!Number.isFinite(input)) invalid();
|
|
47
|
+
append(Object.is(input, -0) ? "-0" : String(input));
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
if (typeof input !== "object") invalid();
|
|
51
|
+
if (node_util.types.isProxy(input) || ancestors.has(input)) invalid();
|
|
52
|
+
const array = Array.isArray(input);
|
|
53
|
+
if (!hasJSONPrototype(input, array)) invalid();
|
|
54
|
+
const keys = Reflect.ownKeys(input);
|
|
55
|
+
if (keys.length > remaining + (array ? 1 : 0)) throw new Error(LIMIT);
|
|
56
|
+
ancestors.add(input);
|
|
57
|
+
if (array) {
|
|
58
|
+
if (keys.length !== input.length + 1) invalid();
|
|
59
|
+
append("[");
|
|
60
|
+
for (let i = 0; i < input.length; i++) {
|
|
61
|
+
const descriptor = Object.getOwnPropertyDescriptor(input, String(i));
|
|
62
|
+
if (descriptor == null || descriptor.enumerable !== true || !("value" in descriptor)) invalid();
|
|
63
|
+
if (i !== 0) append(",");
|
|
64
|
+
encode(descriptor.value, depth + 1);
|
|
65
|
+
}
|
|
66
|
+
append("]");
|
|
67
|
+
} else {
|
|
68
|
+
append("{");
|
|
69
|
+
for (let i = 0; i < keys.length; i++) {
|
|
70
|
+
const key = keys[i];
|
|
71
|
+
if (typeof key !== "string") invalid();
|
|
72
|
+
const descriptor = Object.getOwnPropertyDescriptor(input, key);
|
|
73
|
+
if (descriptor == null || descriptor.enumerable !== true || !("value" in descriptor)) invalid();
|
|
74
|
+
if (i !== 0) append(",");
|
|
75
|
+
string(key);
|
|
76
|
+
append(":");
|
|
77
|
+
encode(descriptor.value, depth + 1);
|
|
78
|
+
}
|
|
79
|
+
append("}");
|
|
80
|
+
}
|
|
81
|
+
ancestors.delete(input);
|
|
82
|
+
};
|
|
83
|
+
if (value != null && typeof value === "object" && node_util.types.isProxy(value)) invalid();
|
|
84
|
+
if (value == null || typeof value !== "object" || Array.isArray(value)) throw new Error("Accepted tool call arguments must be an object");
|
|
85
|
+
encode(value, 0);
|
|
86
|
+
return parts.join("");
|
|
87
|
+
}
|
|
88
|
+
function cloneToolArguments(value) {
|
|
89
|
+
const copies = /* @__PURE__ */ new Map();
|
|
90
|
+
const ancestors = /* @__PURE__ */ new Set();
|
|
91
|
+
const stack = [];
|
|
92
|
+
const copy = (input) => {
|
|
93
|
+
if (input === null || typeof input === "string" || typeof input === "boolean") return input;
|
|
94
|
+
if (typeof input === "number") {
|
|
95
|
+
if (!Number.isFinite(input)) invalid();
|
|
96
|
+
return input;
|
|
97
|
+
}
|
|
98
|
+
if (typeof input !== "object" || node_util.types.isProxy(input) || ancestors.has(input)) invalid();
|
|
99
|
+
const existing = copies.get(input);
|
|
100
|
+
if (existing != null) return existing;
|
|
101
|
+
const array = Array.isArray(input);
|
|
102
|
+
if (!hasJSONPrototype(input, array)) invalid();
|
|
103
|
+
const keys = Reflect.ownKeys(input);
|
|
104
|
+
if (array && keys.length !== input.length + 1) invalid();
|
|
105
|
+
const output = array ? [] : {};
|
|
106
|
+
copies.set(input, output);
|
|
107
|
+
ancestors.add(input);
|
|
108
|
+
stack.push({
|
|
109
|
+
input,
|
|
110
|
+
output,
|
|
111
|
+
keys: array ? keys.filter((key) => key !== "length") : keys,
|
|
112
|
+
index: 0
|
|
113
|
+
});
|
|
114
|
+
return output;
|
|
115
|
+
};
|
|
116
|
+
if (value == null || typeof value !== "object" || node_util.types.isProxy(value) || Array.isArray(value)) invalid();
|
|
117
|
+
const result = copy(value);
|
|
118
|
+
while (stack.length > 0) {
|
|
119
|
+
const frame = stack[stack.length - 1];
|
|
120
|
+
if (frame.index === frame.keys.length) {
|
|
121
|
+
ancestors.delete(frame.input);
|
|
122
|
+
stack.pop();
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
125
|
+
const key = frame.keys[frame.index++];
|
|
126
|
+
if (typeof key !== "string") invalid();
|
|
127
|
+
if (Array.isArray(frame.input) && key !== String(frame.index - 1)) invalid();
|
|
128
|
+
const descriptor = Object.getOwnPropertyDescriptor(frame.input, key);
|
|
129
|
+
if (descriptor == null || !("value" in descriptor) || descriptor.enumerable !== true) invalid();
|
|
130
|
+
Object.defineProperty(frame.output, key, {
|
|
131
|
+
value: copy(descriptor.value),
|
|
132
|
+
enumerable: true,
|
|
133
|
+
writable: true,
|
|
134
|
+
configurable: true
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
return result;
|
|
138
|
+
}
|
|
139
|
+
//#endregion
|
|
140
|
+
exports.cloneToolArguments = cloneToolArguments;
|
|
141
|
+
exports.serializeToolArguments = serializeToolArguments;
|
|
142
|
+
|
|
143
|
+
//# sourceMappingURL=acceptedToolArguments.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acceptedToolArguments.cjs","names":["types"],"sources":["../../../src/utils/acceptedToolArguments.ts"],"mappings":"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"}
|
package/dist/esm/common/enum.mjs
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
//#region src/common/enum.ts
|
|
2
2
|
let GraphEvents = /* @__PURE__ */ function(GraphEvents) {
|
|
3
|
+
GraphEvents["ON_MODEL_RESPONSE"] = "on_model_response";
|
|
4
|
+
GraphEvents["ON_MODEL_TOOLS_CLAIMED"] = "on_model_tools_claimed";
|
|
3
5
|
GraphEvents["ON_AGENT_UPDATE"] = "on_agent_update";
|
|
4
6
|
GraphEvents["ON_RUN_STEP"] = "on_run_step";
|
|
5
7
|
GraphEvents["ON_RUN_STEP_DELTA"] = "on_run_step_delta";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enum.mjs","names":[],"sources":["../../../src/common/enum.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"enum.mjs","names":[],"sources":["../../../src/common/enum.ts"],"mappings":"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"}
|
package/dist/esm/events.mjs
CHANGED
|
@@ -13,9 +13,17 @@ var HandlerRegistry = class {
|
|
|
13
13
|
};
|
|
14
14
|
function composeEventHandlers(...handlerSets) {
|
|
15
15
|
const composed = {};
|
|
16
|
+
const acceptedObservers = /* @__PURE__ */ new Map();
|
|
16
17
|
for (const handlerSet of handlerSets) {
|
|
17
18
|
if (!handlerSet) continue;
|
|
18
19
|
for (const [eventType, handler] of Object.entries(handlerSet)) {
|
|
20
|
+
if (eventType === "on_model_response" || eventType === "on_model_tools_claimed") {
|
|
21
|
+
const observers = acceptedObservers.get(eventType) ?? [];
|
|
22
|
+
observers.push(handler);
|
|
23
|
+
acceptedObservers.set(eventType, observers);
|
|
24
|
+
composed[eventType] = handler;
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
19
27
|
const previous = composed[eventType];
|
|
20
28
|
if (previous === void 0) {
|
|
21
29
|
composed[eventType] = handler;
|
|
@@ -29,6 +37,9 @@ function composeEventHandlers(...handlerSets) {
|
|
|
29
37
|
composed[eventType] = wrapper;
|
|
30
38
|
}
|
|
31
39
|
}
|
|
40
|
+
for (const [eventType, observers] of acceptedObservers) composed[eventType] = { handle: async (event, data, metadata, graph) => {
|
|
41
|
+
for (const observer of observers) await observer.handle(event, structuredClone(data), metadata, graph);
|
|
42
|
+
} };
|
|
32
43
|
return composed;
|
|
33
44
|
}
|
|
34
45
|
var ModelEndHandler = class {
|
package/dist/esm/events.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.mjs","names":[],"sources":["../../src/events.ts"],"mappings":";;;;AAYA,IAAa,kBAAb,MAA6B;CAC3B,2BAAgD,IAAI,IAAI;CAExD,SAAS,WAAmB,SAA+B;EACzD,KAAK,SAAS,IAAI,WAAW,OAAO;CACtC;CAEA,WAAW,WAA+C;EACxD,OAAO,KAAK,SAAS,IAAI,SAAS;CACpC;AACF;AAEA,SAAgB,qBACd,GAAG,aAC6B;CAChC,MAAM,WAAoD,CAAC;
|
|
1
|
+
{"version":3,"file":"events.mjs","names":[],"sources":["../../src/events.ts"],"mappings":";;;;AAYA,IAAa,kBAAb,MAA6B;CAC3B,2BAAgD,IAAI,IAAI;CAExD,SAAS,WAAmB,SAA+B;EACzD,KAAK,SAAS,IAAI,WAAW,OAAO;CACtC;CAEA,WAAW,WAA+C;EACxD,OAAO,KAAK,SAAS,IAAI,SAAS;CACpC;AACF;AAEA,SAAgB,qBACd,GAAG,aAC6B;CAChC,MAAM,WAAoD,CAAC;CAC3D,MAAM,oCAAoB,IAAI,IAA8B;CAE5D,KAAK,MAAM,cAAc,aAAa;EACpC,IAAI,CAAC,YACH;EAEF,KAAK,MAAM,CAAC,WAAW,YAAY,OAAO,QAAQ,UAAU,GAAG;GAC7D,IACE,cAAA,uBACA,cAAA,0BACA;IACA,MAAM,YAAY,kBAAkB,IAAI,SAAS,KAAK,CAAC;IACvD,UAAU,KAAK,OAAO;IACtB,kBAAkB,IAAI,WAAW,SAAS;IAC1C,SAAS,aAAa;IACtB;GACF;GACA,MAAM,WAAW,SAAS;GAC1B,IAAI,aAAa,KAAA,GAAW;IAC1B,SAAS,aAAa;IACtB;GACF;GACA,MAAM,UAA0B,EAC9B,QAAQ,OACN,GAAG,SACe;IAClB,MAAM,SAAS,OAAO,GAAG,IAAI;IAC7B,MAAM,QAAQ,OAAO,GAAG,IAAI;GAC9B,EACF;GAOA,IACE,0BAA0B,QAAQ,KAClC,0BAA0B,OAAO,GAEjC,OAAO,eAAe,SAAS,qBAAqB,EAAE,OAAO,KAAK,CAAC;GAErE,SAAS,aAAa;EACxB;CACF;CAEA,KAAK,MAAM,CAAC,WAAW,cAAc,mBACnC,SAAS,aAAa,EACpB,QAAQ,OAAO,OAAO,MAAM,UAAU,UAAyB;EAG7D,KAAK,MAAM,YAAY,WACrB,MAAM,SAAS,OAAO,OAAO,gBAAgB,IAAI,GAAG,UAAU,KAAK;CAEvE,EACF;CAGF,OAAO;AACT;AAEA,IAAa,kBAAb,MAAuD;CACrD;CACA,YAAY,gBAAkC;EAC5C,IAAI,kBAAkB,CAAC,MAAM,QAAQ,cAAc,GACjD,MAAM,IAAI,MAAM,iCAAiC;EAEnD,KAAK,iBAAiB;CACxB;CAEA,MAAM,OACJ,OACA,MACA,UACA,OACe;EACf,IAAI,CAAC,SAAS,CAAC,UAAU;GACvB,QAAQ,KAAK,kCAAkC,MAAM,OAAO;GAC5D;EACF;EAEA,MAAM,QAAQ,MAAM,QAAQ;EAC5B,IAAI,SAAS,QAAQ,KAAK,kBAAkB,MAC1C,KAAK,eAAe,KAAK,KAAK;CAElC;AACF;AAEA,IAAa,iBAAb,MAAsD;CACpD;CACA;CACA,YAAY,UAA8B,QAAiB;EACzD,KAAK,WAAW;EAChB,KAAK,SAAS;CAChB;CAUA,MAAM,OACJ,OACA,MACA,UACA,OACe;EACf,IAAI;GACF,IAAI,CAAC,SAAS,CAAC,UAAU;IACvB,IAAI,KAAK,QACP,KAAK,OAAO,KAAK,kCAAkC,MAAM,OAAO;SAEhE,QAAQ,KAAK,kCAAkC,MAAM,OAAO;IAE9D;GACF;GAEA,MAAM,cAAc;GACpB,IAAI,CAAC,aAAa,QAAQ;IACxB,IAAI,KAAK,QACP,KAAK,OAAO,KAAK,mCAAmC;SAEpD,QAAQ,KAAK,mCAAmC;IAElD;GACF;GAEA,IACE,SAAA,2BAAkD,QAClD,SAAA,2BAAuD,MAEvD;GAGF,IAAI,KAAK,UACP,MAAM,KAAK,SAAS,aAAa,QAAQ;EAE7C,SAAS,OAAO;GACd,IAAI,KAAK,QACP,KAAK,OAAO,MAAM,kCAAkC,KAAK;QAEzD,QAAQ,MAAM,kCAAkC,KAAK;EAEzD;CACF;AACF;AAEA,IAAa,uBAAb,MAA4D;CAC1D,OAAO,OAAe,MAA2C;EAC/D,MAAM,QAAQ,MAAM;EAEpB,MAAM,MAAM,CADY,EAAE,SAAS,aAAa,SACnB,MAAM,UAAU,KAAA;EAC7C,IAAI,OAAO,IAAI,oBAAoB,IAAI,iBAAiB,SAAS,GAC/D,QAAQ,IAAI,IAAI,gBAAgB;OAC3B,IAAI,OAAO,OAAO,IAAI,YAAY,UACvC,QAAQ,OAAO,MAAM,IAAI,OAAO;CAEpC;AACF;AAEA,IAAa,wBAAb,MAA6D;CAC3D,OAAO,OAAe,MAA2C;EAC/D,MAAM,QAAQ,MAAM;EAEpB,IAAI,CAAC,CADmB,EAAE,SAAS,aAAa,QAE9C;EAGF,MAAM,UAAU,MAAM;EAEtB,IAAI,MAAM,oBAAoB,MAAM,iBAAiB,SAAS,GAC5D,QAAQ,IAAI,MAAM,kBAAkB,EAAE,OAAO,KAAK,CAAC;EAGrD,IAAI,OAAO,YAAY,UACrB,QAAQ,OAAO,MAAM,OAAO;OAE5B,QAAQ,IAAI,SAAS,EAAE,OAAO,KAAK,CAAC;CAExC;AACF;AAEA,IAAa,mBAAb,MAAwD;CACtD,OACE,OACA,MACA,UACM;EACN,MAAM,QAAQ,MAAM;EAEpB,MAAM,MAAM,CADY,EAAE,SAAS,aAAa,SACnB,MAAM,UAAU,KAAA;EAC7C,IAAI,UACF,QAAQ,IAAI,QAAQ;EAEtB,IAAI,OAAO,IAAI,oBAAoB,IAAI,iBAAiB,SAAS,GAC/D,QAAQ,IAAI,IAAI,gBAAgB;OAC3B,IAAI,OAAO,OAAO,IAAI,YAAY,UACvC,QAAQ,OAAO,MAAM,IAAI,OAAO;CAEpC;AACF;AAEA,MAAa,4BACX,eAI+B;CAC/B,MAAM,YAAY,cAAc,CAAC;CAEjC,MAAM,gBAAgC,WAAW;EAC/C,MAAM,EAAE,gBAAgB;EACxB,MAAM,oBACJ,YAAY,YAAY,SAAS,EAAE,GAGjC;EACJ,IAAI,CAAC,mBACH;EAEF,MAAM,EAAE,YAAY;EACpB,IAAI,SAAS,mBACX,UAAU,KAAK,QAAQ,iBAAiB;CAE5C;CAEA,OAAO;EAAE;EAAc;CAAU;AACnC"}
|
|
@@ -45,6 +45,7 @@ import "../messages/index.mjs";
|
|
|
45
45
|
import { joinKeys, resetIfNotEmpty } from "../utils/graph.mjs";
|
|
46
46
|
import { RUN_BREAKER_SCOPE_CONFIG_KEY, STREAM_LIMIT_EPOCH_KEY, StreamLimitExceededError, resolveStreamLimits, sweepStaleStreamLimitEntries } from "../llm/streamLimits.mjs";
|
|
47
47
|
import { handleToolCalls } from "../tools/handlers.mjs";
|
|
48
|
+
import { InvalidModelToolCallError, snapshotAcceptedModelResponse } from "./acceptedModelResponse.mjs";
|
|
48
49
|
import { ToolOutputReferenceRegistry, annotateMessagesForLLM } from "../tools/toolOutputReferences.mjs";
|
|
49
50
|
import { PreparedSubagentError, PreparedSubagents } from "../tools/preparedSubagents.mjs";
|
|
50
51
|
import { HandlerRegistry } from "../events.mjs";
|
|
@@ -321,6 +322,7 @@ var Graph = class {
|
|
|
321
322
|
signal;
|
|
322
323
|
callerSignal;
|
|
323
324
|
invokedToolIds;
|
|
325
|
+
clientDelegatedToolNames;
|
|
324
326
|
handlerRegistry;
|
|
325
327
|
parentToolHandlerRegistry;
|
|
326
328
|
eventToolExecutionAvailable = false;
|
|
@@ -583,7 +585,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
583
585
|
preemptHaltReason;
|
|
584
586
|
pendingPreemptReturn = /* @__PURE__ */ new Set();
|
|
585
587
|
preemptRestartPending = /* @__PURE__ */ new Set();
|
|
586
|
-
constructor({ runId, signal, agents, langfuse, tokenCounter, indexTokenCountMap, calibrationRatio, fadingTier, fadingTiers, subagentUsageSink, subagentTasks, subagentScope, subagentExecutionContext, subagentContext, preemption, streamLimits, toolExecution }, dependencies) {
|
|
588
|
+
constructor({ runId, signal, agents, langfuse, tokenCounter, indexTokenCountMap, calibrationRatio, fadingTier, fadingTiers, subagentUsageSink, subagentTasks, subagentScope, subagentExecutionContext, subagentContext, preemption, streamLimits, toolExecution, clientDelegatedToolNames }, dependencies) {
|
|
587
589
|
super();
|
|
588
590
|
this.supportsMultiAgentChildren = dependencies != null;
|
|
589
591
|
this.graphFactory = dependencies?.graphFactory ?? ((request) => {
|
|
@@ -602,6 +604,11 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
602
604
|
this.preemption = preemption;
|
|
603
605
|
this.streamLimits = resolveStreamLimits(streamLimits);
|
|
604
606
|
this.toolExecution = toolExecution;
|
|
607
|
+
if (clientDelegatedToolNames != null && clientDelegatedToolNames.length > 0) {
|
|
608
|
+
if (agents.length !== 1) throw new Error("Client tool delegation requires a single-agent graph");
|
|
609
|
+
if (clientDelegatedToolNames.some((name) => !name.trim())) throw new Error("Client delegated tool names must be nonempty");
|
|
610
|
+
this.clientDelegatedToolNames = new Set(clientDelegatedToolNames);
|
|
611
|
+
}
|
|
605
612
|
if (agents.length === 0) throw new Error("At least one agent configuration is required");
|
|
606
613
|
for (const agentConfig of agents) {
|
|
607
614
|
const agentContext = AgentContext.fromConfig(agentConfig, tokenCounter, indexTokenCountMap, toolExecution);
|
|
@@ -1123,6 +1130,15 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1123
1130
|
this.subagentToolNodes.get(agentContext.agentId)?.prestartSubagent(call, attempt, config, this.eagerEventToolExecution?.maxPendingSubagents ?? 4);
|
|
1124
1131
|
}
|
|
1125
1132
|
initializeTools({ currentTools, currentToolMap, agentContext }) {
|
|
1133
|
+
const onToolCallsClaimed = async (messageId, config) => {
|
|
1134
|
+
const handler = this.handlerRegistry?.getHandler("on_model_tools_claimed");
|
|
1135
|
+
if (handler == null) return;
|
|
1136
|
+
await handler.handle("on_model_tools_claimed", {
|
|
1137
|
+
type: "model_tools_claimed",
|
|
1138
|
+
agentId: agentContext?.agentId ?? this.defaultAgentId,
|
|
1139
|
+
messageId
|
|
1140
|
+
}, config.metadata, this);
|
|
1141
|
+
};
|
|
1126
1142
|
const toolDefinitions = agentContext?.toolDefinitions;
|
|
1127
1143
|
const eventDrivenMode = toolDefinitions != null && toolDefinitions.length > 0;
|
|
1128
1144
|
const traceToolNode = shouldTraceToolNodeForLangfuse({
|
|
@@ -1187,6 +1203,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1187
1203
|
this.config = config;
|
|
1188
1204
|
this.restoreRunStepResumeState(state);
|
|
1189
1205
|
},
|
|
1206
|
+
onToolCallsClaimed,
|
|
1190
1207
|
createRunStepResumeState: () => this.createRunStepResumeState(),
|
|
1191
1208
|
errorHandler: (data, metadata) => StandardGraph.handleToolCallErrorStatic(this, data, metadata)
|
|
1192
1209
|
});
|
|
@@ -1232,6 +1249,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1232
1249
|
this.config = config;
|
|
1233
1250
|
this.restoreRunStepResumeState(state);
|
|
1234
1251
|
},
|
|
1252
|
+
onToolCallsClaimed,
|
|
1235
1253
|
createRunStepResumeState: () => this.createRunStepResumeState()
|
|
1236
1254
|
});
|
|
1237
1255
|
this.registerCompiledToolNode(node);
|
|
@@ -1802,6 +1820,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1802
1820
|
graph: this,
|
|
1803
1821
|
metadata
|
|
1804
1822
|
});
|
|
1823
|
+
if (primaryError instanceof InvalidModelToolCallError) throw primaryError;
|
|
1805
1824
|
if (primaryError instanceof StreamLimitExceededError || primaryError instanceof PreparedSubagentError) {
|
|
1806
1825
|
attemptBreaker.abort(primaryError);
|
|
1807
1826
|
throw primaryError;
|
|
@@ -1947,6 +1966,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1947
1966
|
}
|
|
1948
1967
|
}));
|
|
1949
1968
|
} catch (fallbackError) {
|
|
1969
|
+
if (fallbackError instanceof InvalidModelToolCallError) throw fallbackError;
|
|
1950
1970
|
if (fallbackError instanceof StreamLimitExceededError || fallbackError instanceof PreparedSubagentError) {
|
|
1951
1971
|
attemptBreaker.abort(fallbackError);
|
|
1952
1972
|
throw fallbackError;
|
|
@@ -2087,6 +2107,16 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
2087
2107
|
this.preemptEmptyBoundaries += 1;
|
|
2088
2108
|
this.preemptIncomplete = true;
|
|
2089
2109
|
}
|
|
2110
|
+
const responseHandler = this.handlerRegistry?.getHandler("on_model_response");
|
|
2111
|
+
if (responseHandler != null && responseMessage?.getType() === "ai") try {
|
|
2112
|
+
invokeConfig.signal?.throwIfAborted();
|
|
2113
|
+
const accepted = snapshotAcceptedModelResponse(responseMessage, v4(), agentId, this.invokedToolIds, this.clientDelegatedToolNames);
|
|
2114
|
+
await responseHandler.handle("on_model_response", accepted, metadata, this);
|
|
2115
|
+
invokeConfig.signal?.throwIfAborted();
|
|
2116
|
+
} catch (error) {
|
|
2117
|
+
this.cleanupSignalListener();
|
|
2118
|
+
throw error;
|
|
2119
|
+
}
|
|
2090
2120
|
this.cleanupSignalListener();
|
|
2091
2121
|
return result;
|
|
2092
2122
|
};
|
|
@@ -2298,6 +2328,16 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
2298
2328
|
if (this.pendingPreemptReturn.delete(agentId)) return agentNode;
|
|
2299
2329
|
if (state.summarizationRequest != null) return summarizeNode;
|
|
2300
2330
|
if (this.summarizeOnlyAgentId != null) return END;
|
|
2331
|
+
const delegatedNames = this.clientDelegatedToolNames;
|
|
2332
|
+
if (delegatedNames != null && delegatedNames.size > 0) {
|
|
2333
|
+
const { messages } = state;
|
|
2334
|
+
const last = messages[messages.length - 1];
|
|
2335
|
+
const calls = last?.getType() === "ai" ? last.tool_calls ?? [] : [];
|
|
2336
|
+
if (calls.some((call) => delegatedNames.has(call.name))) {
|
|
2337
|
+
if (calls.some((call) => !delegatedNames.has(call.name) || call.id != null && this.invokedToolIds?.has(call.id) === true) || (last?.invalid_tool_calls?.length ?? 0) > 0 || getTruncationStopReason(last) != null) throw new InvalidModelToolCallError("Mixed client and graph-owned tool calls require separate model turns");
|
|
2338
|
+
return END;
|
|
2339
|
+
}
|
|
2340
|
+
}
|
|
2301
2341
|
const decision = toolsCondition(state, toolNode, this.invokedToolIds);
|
|
2302
2342
|
if (decision === END) {
|
|
2303
2343
|
const { messages } = state;
|