@falai/agent 2.2.0 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/cjs/core/BranchEvaluator.d.ts +2 -2
  2. package/dist/cjs/core/BranchEvaluator.js +2 -2
  3. package/dist/cjs/core/BranchEvaluator.js.map +1 -1
  4. package/dist/cjs/core/Flow.d.ts +2 -1
  5. package/dist/cjs/core/Flow.d.ts.map +1 -1
  6. package/dist/cjs/core/Flow.js +2 -1
  7. package/dist/cjs/core/Flow.js.map +1 -1
  8. package/dist/cjs/core/FlowRouter.js +2 -2
  9. package/dist/cjs/core/FlowRouter.js.map +1 -1
  10. package/dist/cjs/core/PromptComposer.d.ts.map +1 -1
  11. package/dist/cjs/core/PromptComposer.js +8 -20
  12. package/dist/cjs/core/PromptComposer.js.map +1 -1
  13. package/dist/cjs/core/Step.d.ts +2 -1
  14. package/dist/cjs/core/Step.d.ts.map +1 -1
  15. package/dist/cjs/core/Step.js +2 -1
  16. package/dist/cjs/core/Step.js.map +1 -1
  17. package/dist/cjs/types/agent.d.ts +5 -3
  18. package/dist/cjs/types/agent.d.ts.map +1 -1
  19. package/dist/cjs/types/flow.d.ts +4 -4
  20. package/dist/core/BranchEvaluator.d.ts +2 -2
  21. package/dist/core/BranchEvaluator.js +2 -2
  22. package/dist/core/BranchEvaluator.js.map +1 -1
  23. package/dist/core/Flow.d.ts +2 -1
  24. package/dist/core/Flow.d.ts.map +1 -1
  25. package/dist/core/Flow.js +2 -1
  26. package/dist/core/Flow.js.map +1 -1
  27. package/dist/core/FlowRouter.js +2 -2
  28. package/dist/core/FlowRouter.js.map +1 -1
  29. package/dist/core/PromptComposer.d.ts.map +1 -1
  30. package/dist/core/PromptComposer.js +8 -20
  31. package/dist/core/PromptComposer.js.map +1 -1
  32. package/dist/core/Step.d.ts +2 -1
  33. package/dist/core/Step.d.ts.map +1 -1
  34. package/dist/core/Step.js +2 -1
  35. package/dist/core/Step.js.map +1 -1
  36. package/dist/types/agent.d.ts +5 -3
  37. package/dist/types/agent.d.ts.map +1 -1
  38. package/dist/types/flow.d.ts +4 -4
  39. package/docs/guides/branching.md +3 -1
  40. package/docs/guides/conditions.md +9 -8
  41. package/docs/guides/instructions.md +7 -7
  42. package/docs/reference/branches.md +2 -2
  43. package/docs/reference/flow.md +1 -1
  44. package/docs/reference/instruction.md +7 -5
  45. package/docs/reference/step.md +2 -2
  46. package/package.json +10 -11
  47. package/src/core/BranchEvaluator.ts +4 -4
  48. package/src/core/Flow.ts +2 -1
  49. package/src/core/FlowRouter.ts +2 -2
  50. package/src/core/PromptComposer.ts +9 -20
  51. package/src/core/Step.ts +2 -1
  52. package/src/types/agent.ts +5 -3
  53. package/src/types/flow.ts +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"Step.js","sourceRoot":"","sources":["../../src/core/Step.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Step.js","sourceRoot":"","sources":["../../src/core/Step.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,OAAO,EAAE,SAAS,EAA6B,MAAM,UAAU,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlD;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,IAAI;IA0Bf,uEAAuE;IACvE,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,uDAAuD;IACvD,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAKD,YACE,OAAe,EACf,UAAwC,EAAE,EAC1C,WAAoC;QAxC9B,cAAS,GAA4B,EAAE,CAAC;QACxC,kBAAa,GAAmC,EAAE,CAAC;QAyCzD,kDAAkD;QAClD,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QAEvC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAE3B,+DAA+D;QAC/D,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;YAC5B,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;gBACpC,MAAM,IAAI,sBAAsB,CAC9B,kCAAkC,IAAI,CAAC,EAAE,iGAAiG,CAC3I,CAAC;YACJ,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC1C,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;wBACvC,MAAM,IAAI,sBAAsB,CAC9B,kCAAkC,IAAI,CAAC,EAAE,6BAA6B,CAAC,yEAAyE,CACjJ,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,yFAAyF;QACzF,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,eAAe,GAAa,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;gBAAE,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrF,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/E,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI;gBAAE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE5D,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,IAAI,sBAAsB,CAC9B,uCAAuC,IAAI,CAAC,EAAE,oBAAoB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,wIAAwI,CACrO,CAAC;YACJ,CAAC;QACH,CAAC;QAED,uGAAuG;QACvG,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,iBAAiB,GAAa,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;gBAAE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1D,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvF,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjF,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI;gBAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9D,IAAI,IAAI,CAAC,KAAK;gBAAE,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAErD,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,sBAAsB,CAC9B,kCAAkC,IAAI,CAAC,EAAE,oDAAoD,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,sGAAsG,CAChO,CAAC;YACJ,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QAED,uCAAuC;QACvC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;gBAC3C,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;QACL,CAAC;QAED,yDAAyD;QACzD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,MAeT;QACC,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACxC,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC;QAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAClC,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAClC,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC5B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,QAAQ,CAAC,IAAkC;QACzC,4CAA4C;QAC5C,MAAM,UAAU,GAAG,IAAI,IAAI,CAAkB,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAClF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEhC,OAAO,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACH,MAAM,CACJ,QAAuC;QAEvC,MAAM,MAAM,GAAG,EAAmC,CAAC;QAEnD,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE,CAAC;YAClC,uCAAuC;YACvC,MAAM,WAAW,GAAiC,UAAU,CAAC,EAAE;gBAC7D,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE;gBAC3C,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;YAEpB,oCAAoC;YACpC,MAAM,UAAU,GAAG,IAAI,IAAI,CAAkB,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACzF,4BAA4B;YAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAChC,oCAAoC;YACpC,MAAM,UAAU,GAAW,UAAU,CAAC,IAAI,CAAC;YAC3C,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,2BAA2B,CACnD,UAAU,CAAC,MAAM,EAAE,EACnB,UAAU,CACX,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,WAAyC;QACtD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACtB,GAAG,WAAW;YACd,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,QAAiB;YAC3C,EAAE,EAAE,WAAW,CAAC,EAAE,IAAI,eAAe,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;YAC3E,OAAO,EAAE,WAAW,CAAC,OAAO,KAAK,KAAK,EAAE,kBAAkB;SAC3D,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,OAAO,CACL,IAA2B;QAE3B,8BAA8B;QAC9B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,aAAa,GAA4B,EAAE,CAAC;QAElD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACjC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,0EAA0E;gBAC1E,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;oBAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC3D,IAAI,cAAc,EAAE,CAAC;wBACnB,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACrC,CAAC;yBAAM,CAAC;wBACN,8CAA8C;wBAC9C,MAAM,CAAC,IAAI,CAAC,mBAAmB,OAAO,qCAAqC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxF,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,wDAAwD,OAAO,cAAc,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,iDAAiD;gBACjD,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACnE,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,6CAA6C,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,oBAAoB;QAClB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YAC5B,2DAA2D;YAC3D,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;QAC7B,CAAC;QAED,mEAAmE;QACnE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5E,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,MAAc,EAAE,KAAiB;QACxC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YAC5B,2DAA2D;YAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACrC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;QACzE,CAAC;QAED,gEAAgE;QAChE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,KAAgB;QAChC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YAC5B,2DAA2D;YAC3D,OAAO,KAAK,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACtD,CAAC;IAED;;;OAGG;IACH,sBAAsB;QAMpB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAC9D,CAAC;QAED,wCAAwC;QACxC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACjC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC;iBAAM,IAAI,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YAC5B,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;YAChE,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;YAE7D,OAAO;gBACL,KAAK,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC;gBAC3B,OAAO;gBACP,KAAK;gBACL,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;aACtE,CAAC;QACJ,CAAC;QAED,6BAA6B;QAC7B,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAChB,eAAiD;QAMjD,6DAA6D;QAC7D,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YAC3B,OAAO;gBACL,cAAc,EAAE,IAAI;gBACpB,gBAAgB,EAAE,EAAE;gBACpB,yBAAyB,EAAE,KAAK;aACjC,CAAC;QACJ,CAAC;QAED,wCAAwC;QACxC,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;wBAC7B,IAAI,EAAE,eAAe,CAAC,IAAI;wBAC1B,OAAO,EAAE,eAAe,CAAC,OAAmB;wBAC5C,OAAO,EAAE,eAAe,CAAC,OAA8B;wBACvD,OAAO,EAAE,eAAe,CAAC,OAAO,IAAI,EAAE;qBACvC,CAAC,CAAC;oBACH,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,wDAAwD;wBACxD,OAAO;4BACL,cAAc,EAAE,KAAK;4BACrB,gBAAgB,EAAE,EAAE;4BACpB,yBAAyB,EAAE,IAAI;yBAChC,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,IAAI,CAAC,0CAA0C,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;oBAC1E,OAAO;wBACL,cAAc,EAAE,KAAK;wBACrB,gBAAgB,EAAE,EAAE;wBACpB,yBAAyB,EAAE,IAAI;qBAChC,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvE,wEAAwE;YACxE,wEAAwE;YACxE,4CAA4C;YAC5C,OAAO;gBACL,cAAc,EAAE,IAAI;gBACpB,gBAAgB,EAAE,WAAW;gBAC7B,yBAAyB,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE;aACrC,CAAC;QACJ,CAAC;QAED,kCAAkC;QAClC,OAAO;YACL,cAAc,EAAE,IAAI;YACpB,gBAAgB,EAAE,EAAE;YACpB,yBAAyB,EAAE,IAAI;SAChC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAChB,eAAiD;QAMjD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO;gBACL,UAAU,EAAE,KAAK;gBACjB,gBAAgB,EAAE,EAAE;gBACpB,yBAAyB,EAAE,KAAK;aACjC,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtE,oDAAoD;QACpD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;oBAC7B,IAAI,EAAE,eAAe,CAAC,IAAI;oBAC1B,OAAO,EAAE,eAAe,CAAC,OAAmB;oBAC5C,OAAO,EAAE,eAAe,CAAC,OAA8B;oBACvD,OAAO,EAAE,eAAe,CAAC,OAAO,IAAI,EAAE;iBACvC,CAAC,CAAC;gBACH,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO;wBACL,UAAU,EAAE,IAAI;wBAChB,gBAAgB,EAAE,EAAE;wBACpB,yBAAyB,EAAE,IAAI;qBAChC,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,4CAA4C,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC5E,oDAAoD;YACtD,CAAC;QACH,CAAC;QAED,OAAO;YACL,UAAU,EAAE,KAAK;YACjB,gBAAgB,EAAE,EAAE;YACpB,yBAAyB,EAAE,IAAI;SAChC,CAAC;IACJ,CAAC;IAID;;OAEG;IACH,WAAW,CAAC,IAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9D,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,2BAA2B,CACjC,GAAY,EACZ,IAA4B;QAE5B,MAAM,YAAY,GAAG,IAAI,IAAI,IAAI,CAAC;QAElC,OAAO;YACL,GAAG,GAAG;YACN,QAAQ,EAAE,CAAC,IAAkC,EAAE,EAAE,CAC/C,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC7B,MAAM,EAAE,CAAC,QAAuC,EAAE,EAAE,CAClD,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO;YACL,GAAG,IAAI,CAAC,MAAM,EAAE;YAChB,QAAQ,EAAE,CAAC,IAAkC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrE,MAAM,EAAE,CAAC,QAAuC,EAAE,EAAE,CAClD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;SACxB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;SACrC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACK,gBAAgB,CAAC,QAAoC;QAC3D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,sBAAsB,CAC9B,0DAA0D,IAAI,CAAC,EAAE,+FAA+F,CACjK,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;QAEpF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,MAAM,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;YAEzC,qFAAqF;YACrF,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;gBACxC,MAAM,IAAI,sBAAsB,CAC9B,sDAAsD,CAAC,cAAc,CAAC,gFAAgF,CAAC,+EAA+E,CACvO,CAAC;YACJ,CAAC;YAED,mCAAmC;YACnC,IAAI,KAAK,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACjD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;gBAE7B,qCAAqC;gBACrC,MAAM,iBAAiB,GAAG,eAAe,CAAC,MAAM,CAC9C,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,SAAS,CAC1C,CAAC;gBACF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjC,MAAM,IAAI,sBAAsB,CAC9B,iEAAiE,CAAC,0BAA0B,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,4EAA4E,CACrM,CAAC;gBACJ,CAAC;gBAED,2BAA2B;gBAC3B,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;oBAClG,MAAM,OAAO,GAAG,SAAS,CAAC,IAA+B,CAAC;oBAC1D,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACtC,MAAM,IAAI,sBAAsB,CAC9B,mDAAmD,CAAC,4FAA4F,CACjJ,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
@@ -245,7 +245,7 @@ export interface Instruction<TContext = unknown, TData = unknown> {
245
245
  */
246
246
  kind?: 'must' | 'never' | 'should';
247
247
  /**
248
- * AI-evaluated activation condition. String or array of strings (AND semantics).
248
+ * AI-evaluated activation condition. String or array of strings (OR semantics).
249
249
  * Undefined = always active. Functions are NOT allowed here — use `if`.
250
250
  */
251
251
  when?: ConditionWhen;
@@ -289,7 +289,8 @@ export interface ScopedInstructions<TContext = unknown, TData = unknown> {
289
289
  };
290
290
  }
291
291
  /**
292
- * Observability record for an instruction that was active and rendered into a turn's prompt.
292
+ * Observability record for an instruction that was rendered into a turn's prompt.
293
+ * Textual `when` conditions are included in the prompt for the AI to evaluate.
293
294
  * Deterministic — derived from rendering, not from LLM self-report.
294
295
  */
295
296
  export interface AppliedInstruction {
@@ -313,7 +314,8 @@ export interface AgentResponse<TData = Record<string, unknown>> {
313
314
  /** Why execution stopped (for multi-step execution) */
314
315
  stoppedReason?: StoppedReason;
315
316
  /**
316
- * Instructions whose conditions passed and were rendered into this turn's prompt.
317
+ * Instructions rendered into this turn's prompt after code-evaluated gates passed.
318
+ * Textual `when` conditions remain in the prompt for the AI to evaluate.
317
319
  * Deterministic — derived from rendering, not from LLM self-report.
318
320
  */
319
321
  appliedInstructions?: AppliedInstruction[];
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/types/agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAChE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAC7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;GAIG;AACH,MAAM,WAAW,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC9D,2BAA2B;IAC3B,OAAO,EAAE,QAAQ,CAAC;IAClB,0DAA0D;IAC1D,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACrB,0BAA0B;IAC1B,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,sCAAsC;IACtC,OAAO,EAAE,KAAK,EAAE,CAAC;IACjB;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC;CACvD;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;AAE7E;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACxE;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,cAAc,EAAE,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;IAE3E;;;OAGG;IACH,eAAe,CAAC,EAAE,CAChB,UAAU,EAAE,QAAQ,EACpB,eAAe,EAAE,QAAQ,KACtB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAE1B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,CACb,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,EACpB,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,KAC9B,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;CAC/C;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,CAAC,QAAQ,GAAG,OAAO,IAAI,MAC9C,OAAO,CAAC,QAAQ,CAAC,GACjB,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC/D,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7B,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kDAAkD;IAClD,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,uDAAuD;IACvD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yFAAyF;IACzF,eAAe,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC5C,6CAA6C;IAC7C,KAAK,CAAC,EAAE,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC/C,2CAA2C;IAC3C,QAAQ,EAAE,UAAU,CAAC;IACrB,wCAAwC;IACxC,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC;;;OAGG;IACH,YAAY,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9C,0CAA0C;IAC1C,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;IACzC,2DAA2D;IAC3D,KAAK,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACvC,+EAA+E;IAC/E,WAAW,CAAC,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACvC,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,kFAAkF;IAClF,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,2DAA2D;IAC3D,WAAW,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;OASG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC;;;;OAIG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC;IAElB;;;OAGG;IAEH,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;IAEzC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,IAAI,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACvD,uBAAuB;IACvB,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChC,yCAAyC;IACzC,WAAW,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACvC,oCAAoC;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;CACxC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC9D,qDAAqD;IACrD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IACnC;;;OAGG;IACH,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB;;;;OAIG;IACH,EAAE,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClC,4DAA4D;IAC5D,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClC,mEAAmE;IACnE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACrE,sDAAsD;IACtD,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACvC;;;OAGG;IACH,IAAI,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAA;KAAE,CAAC;IACpE;;;OAGG;IACH,IAAI,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAA;KAAE,CAAC;CAClE;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,2GAA2G;IAC3G,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAC5E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iEAAiE;IACjE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;IAC1B,uDAAuD;IACvD,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC3C;;;OAGG;IACH,gBAAgB,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,wBAAwB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAC5E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iEAAiE;IACjE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;IAC1B,uDAAuD;IACvD,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,EAAE;QACT,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;OAGG;IACH,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC3C;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/types/agent.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ export type ConditionPredicate<TContext = unknown, TData = unknown> = (ctx: {
20
20
  */
21
21
  export type ConditionIf<TContext = unknown, TData = unknown> = ConditionPredicate<TContext, TData> | ConditionPredicate<TContext, TData>[];
22
22
  /**
23
- * The `when` field shape: a single AI-evaluated string or array of strings (AND semantics).
23
+ * The `when` field shape: a single AI-evaluated string or array of strings (OR semantics).
24
24
  * Functions are NOT allowed on `when` — they belong on `if` only.
25
25
  */
26
26
  export type ConditionWhen = string | string[];
@@ -176,7 +176,7 @@ export type BranchPredicate<TContext = unknown, TData = unknown> = (ctx: BranchP
176
176
  */
177
177
  export interface BranchEntry<TContext = unknown, TData = unknown> {
178
178
  /**
179
- * AI-evaluated condition. String or array of strings (AND semantics).
179
+ * AI-evaluated condition. String or array of strings (OR semantics).
180
180
  * Costs LLM tokens. Reuses the same machinery as `step.when`.
181
181
  * Only evaluated if `if` passes (or is absent) — code-first short-circuit.
182
182
  */
@@ -272,7 +272,7 @@ export interface FlowOptions<TContext = unknown, TData = unknown> {
272
272
  /** Description of what this flow accomplishes */
273
273
  description?: string;
274
274
  /**
275
- * AI-evaluated activation condition(s). String or array of strings (AND semantics).
275
+ * AI-evaluated activation condition(s). String or array of strings (OR semantics).
276
276
  * Costs LLM tokens. Functions are NOT allowed here — use `if` for code predicates.
277
277
  */
278
278
  when?: ConditionWhen;
@@ -423,7 +423,7 @@ export interface StepOptions<TContext = unknown, TData = unknown> {
423
423
  */
424
424
  requires?: (keyof TData)[];
425
425
  /**
426
- * AI-evaluated activation condition(s). String or array of strings (AND semantics).
426
+ * AI-evaluated activation condition(s). String or array of strings (OR semantics).
427
427
  * Costs LLM tokens. Functions are NOT allowed here — use `if` for code predicates.
428
428
  */
429
429
  when?: ConditionWhen;
@@ -19,7 +19,7 @@ By the end of this page you will have written four branch points: a pure-code fo
19
19
 
20
20
  ```typescript
21
21
  interface BranchEntry<TContext, TData> {
22
- /** AI-evaluated condition. String or array of strings (AND). */
22
+ /** AI-evaluated condition. String or array of strings (OR). */
23
23
  when?: string | string[];
24
24
 
25
25
  /** Code predicate. Function or array of functions (AND). */
@@ -101,6 +101,8 @@ flow({
101
101
 
102
102
  `when` strings reuse the same machinery as `step.when`. One LLM call evaluates each entry's condition in declaration order; the first match wins. Conditions are written from the agent's perspective — `"user wants to cancel"` reads naturally and matches the prompts the model already speaks. Don't try to compress them into keywords; the AI is doing classification, not pattern matching.
103
103
 
104
+ When one branch has several alternative phrasings, use an array. The entries use OR semantics: any one match activates the branch.
105
+
104
106
  The fallback at the end is doing real work too. When the model can't classify the message into any of the three buckets — say the user typed "hi" — `general_help` catches it instead of dropping the user into AI step selection.
105
107
 
106
108
  ## Combining `if` and `when`
@@ -7,7 +7,7 @@ order: 1
7
7
 
8
8
  # When and if
9
9
 
10
- Conditions decide whether a flow activates, a step runs, an instruction renders, or a branch fires. v2 splits them into two distinct fields with different evaluators:
10
+ Conditions decide whether a flow activates, a step runs, an instruction applies, or a branch fires. v2 splits them into two distinct fields with different evaluators:
11
11
 
12
12
  - `when` — strings the LLM evaluates against intent and the conversation. Costs tokens.
13
13
  - `if` — TypeScript predicates the engine evaluates locally. Free.
@@ -38,19 +38,19 @@ If the answer lives in `data`, `context`, or `session`, it's `if`. If the answer
38
38
  }
39
39
  ```
40
40
 
41
- Multiple strings combine with **AND** semantics — every clause must pass for the condition to match.
41
+ Multiple strings combine with **OR** semantics — any clause may pass for the condition to match. Use the array form for alternative natural-language expressions of the same intent:
42
42
 
43
43
  ```typescript
44
44
  {
45
- title: "Premium Refund",
45
+ title: "Address",
46
46
  when: [
47
- "the user is requesting a refund",
48
- "the user is asking about an enterprise plan",
47
+ "the user asked about the address",
48
+ "the user asked where we are located",
49
49
  ],
50
50
  }
51
51
  ```
52
52
 
53
- The strings are sent to the LLM as part of the routing or activation prompt. Keep them short, intent-shaped, and free of code-style boolean expressions — `"the user wants to cancel"` lands; `"data.cancelRequested === true"` does not.
53
+ The strings are sent to the LLM as part of the routing or activation prompt. For instructions, the string is appended to the instruction bullet so the response model can apply the instruction conditionally. Keep conditions short, intent-shaped, and free of code-style boolean expressions — `"the user wants to cancel"` lands; `"data.cancelRequested === true"` does not.
54
54
 
55
55
  ## `if` — code predicates
56
56
 
@@ -120,7 +120,7 @@ The same `when` / `if` shape attaches to four primitives. Semantics are identica
120
120
  | --------------- | ----------------------- | -------------------------------------------------- |
121
121
  | Flow | `FlowOptions.when/if` | Whether the router selects this flow this turn |
122
122
  | Step | `StepOptions.when/if` | Whether the step is reachable in the current flow |
123
- | Instruction | `Instruction.when/if` | Whether the instruction renders into the prompt |
123
+ | Instruction | `Instruction.when/if` | Whether the instruction applies to the response |
124
124
  | BranchEntry | `BranchEntry.when/if` | Whether this branch entry matches inside `step.branches` |
125
125
 
126
126
  ```typescript
@@ -160,7 +160,8 @@ A short checklist before shipping a condition:
160
160
 
161
161
  - Does it read a field, flag, or context value? Use `if`.
162
162
  - Does it interpret natural language? Use `when`.
163
- - Multiple clauses that all must pass? Drop them in an array both fields AND.
163
+ - Multiple natural-language alternatives where any may match? Put them in `when`arrays use OR.
164
+ - Multiple code predicates that must all pass? Put them in `if` — arrays use AND.
164
165
  - Need to skip when a value is already collected? `step.skip` (OR semantics).
165
166
  - Both fields set? `if` runs first, free; `when` only fires if `if` passes.
166
167
 
@@ -62,7 +62,7 @@ createAgent({
62
62
  });
63
63
  ```
64
64
 
65
- Reach narrows as you nest. Agent-scope instructions render on every turn for every flow. Flow-scope instructions render only while that flow is active. Step-scope instructions render only while that step is current. Conditions on `when` and `if` apply on top an agent-scope instruction with `when: "User is angry"` still requires that activation to fire, just like a step-scope one.
65
+ Reach narrows as you nest. Agent-scope instructions render on every turn for every flow. Flow-scope instructions render only while that flow is active. Step-scope instructions render only while that step is current. Conditions apply on top: `if` removes an instruction locally when its predicate fails, while `when` is rendered with the instruction so the model can decide whether the natural-language condition applies.
66
66
 
67
67
  The composer renders the resolved set under a single `## Instructions` heading and tags each line with a scope caption so the model can read both *what* and *where from* in one pass:
68
68
 
@@ -74,28 +74,28 @@ The composer renders the resolved set under a single `## Instructions` heading a
74
74
 
75
75
  ## Rendering format
76
76
 
77
- Each active instruction lands in the prompt as a single bullet:
77
+ Each eligible instruction lands in the prompt as a single bullet:
78
78
 
79
79
  ```
80
- - [<kind>] [<scope>] <prompt>
80
+ - [<kind>] [<scope>] <prompt> (apply only when: <when-clause> OR <when-clause>)
81
81
  ```
82
82
 
83
- A composed block looks like this:
83
+ The condition suffix is omitted when `when` is not set. A composed block looks like this:
84
84
 
85
85
  ```
86
86
  ## Instructions
87
87
 
88
88
  - [must] [Always] Validate dates are in the future before booking.
89
89
  - [never] [Always] Promise rates you have not looked up.
90
- - [should] [In: Booking] Offer to compare two options before committing.
90
+ - [should] [In: Booking] Offer to compare two options before committing. (apply only when: the user is comparing hotel options)
91
91
  - [must] [Step: payment] If the card is declined, never retry without confirmation.
92
92
  ```
93
93
 
94
- The format is fixed. The kind prefix is always present (defaulting to `[should]`), the scope caption is always present, and the prompt text follows verbatim. There is nothing to configure what you write in `prompt` is what the model reads.
94
+ The format is fixed. The kind prefix is always present (defaulting to `[should]`), the scope caption is always present, and the prompt text follows verbatim. When present, `when` clauses are joined with `OR` and appended for the model to evaluate.
95
95
 
96
96
  ## `appliedInstructions` on the response
97
97
 
98
- Every `respond()` call returns an `appliedInstructions` array listing exactly which instructions were rendered into that turn's prompt. The set is deterministic — it comes from the prompt composer, not the model — so you can use it for observability, audits, and tests:
98
+ Every `respond()` call returns an `appliedInstructions` array listing exactly which instructions were rendered into that turn's prompt. The set is deterministic — it comes from the prompt composer, not the model — so you can use it for observability, audits, and tests. For an instruction with `when`, inclusion means the conditional instruction reached the model; it does not claim that the model judged the condition true:
99
99
 
100
100
  ```typescript
101
101
  const response = await agent.respond("I want to book a room.");
@@ -19,7 +19,7 @@ Branches resolve **after** the step's post-LLM phase (tool execution, `finalize`
19
19
 
20
20
  ```typescript
21
21
  interface BranchEntry<TContext = unknown, TData = unknown> {
22
- /** AI-evaluated condition. String or array of strings (AND semantics). */
22
+ /** AI-evaluated condition. String or array of strings (OR semantics). */
23
23
  when?: string | string[];
24
24
 
25
25
  /** Code predicate. Function or array of functions (AND semantics). */
@@ -64,7 +64,7 @@ interface BranchPredicateContext<TContext = unknown, TData = unknown> {
64
64
 
65
65
  | Field | Type | Required | Default | Notes |
66
66
  |-------|------|----------|---------|-------|
67
- | `when` | `string \| string[]` | no | — | AI-evaluated condition. Reuses the same machinery as `step.when`. Only evaluated if `if` passes (or is absent). Costs LLM tokens. |
67
+ | `when` | `string \| string[]` | no | — | AI-evaluated condition. Arrays use OR semantics. Reuses the same machinery as `step.when`. Only evaluated if `if` passes (or is absent). Costs LLM tokens. |
68
68
  | `if` | `BranchPredicate \| BranchPredicate[]` | no | — | Code predicate. Free to evaluate. When both `when` and `if` are set, `if` runs first; `when` is only evaluated if all `if` predicates pass. |
69
69
  | `then` | `string \| Directive` | yes | — | Target. See [Resolution of `then`](#resolution-of-then) below. |
70
70
  | `label` | `string` | no | — | Optional label surfaced in event traces and flow visualization. |
@@ -77,7 +77,7 @@ class Flow<TContext = unknown, TData = unknown> {
77
77
  | `id` | `string` | no | derived from `title` | Stable identifier. Auto-generated deterministically from the title when omitted. |
78
78
  | `title` | `string` | yes | — | Human-readable name. Shown to the router and used as the default flow id. |
79
79
  | `description` | `string` | no | — | One-line summary surfaced to the router prompt. |
80
- | `when` | `string \| string[]` | no | — | AI-evaluated activation condition(s). Strings only — functions belong on `if`. Multiple strings combine with AND semantics. |
80
+ | `when` | `string \| string[]` | no | — | AI-evaluated activation condition(s). Strings only — functions belong on `if`. Multiple strings combine with OR semantics. |
81
81
  | `if` | `(ctx) => boolean \| Promise<boolean>` or array | no | — | Code-evaluated activation condition(s). Free to evaluate. When both are set, `if` runs first; `when` only evaluates if `if` passes. |
82
82
  | `instructions` | `Instruction<TContext, TData>[]` | no | `[]` | Flow-scoped instructions. Apply only while this flow is active. See [Instruction](./instruction.md). |
83
83
  | `tools` | `(string \| Tool)[]` | no | `[]` | Tool ids (resolved via the agent's tool registry) or inline `Tool` objects. Available only while this flow is active. |
@@ -11,7 +11,7 @@ order: 5
11
11
 
12
12
  An `Instruction` is a single statement of behavior the agent should follow. v2 collapses three v1 types into one — every instruction now carries a `kind` discriminator (`'must'`, `'never'`, or `'should'`) and a `prompt` that is rendered into the system prompt with a scope caption. The same shape works at agent, flow, and step scope; only its position in the configuration changes.
13
13
 
14
- The set of instructions actually rendered into a given turn's prompt is reported back on the response as `appliedInstructions` — observability is deterministic, derived from rendering, not self-reported by the model.
14
+ The set of instructions actually rendered into a given turn's prompt is reported back on the response as `appliedInstructions` — observability is deterministic, derived from rendering, not self-reported by the model. For instructions with a textual `when`, this means the condition was presented to the model, not that the model reported a match.
15
15
 
16
16
  ## Signature
17
17
 
@@ -19,7 +19,7 @@ The set of instructions actually rendered into a given turn's prompt is reported
19
19
  interface Instruction<TContext = unknown, TData = unknown> {
20
20
  id?: string;
21
21
  kind?: 'must' | 'never' | 'should'; // default: 'should'
22
- when?: ConditionWhen; // AI-evaluated string(s), AND semantics
22
+ when?: ConditionWhen; // AI-evaluated string(s), OR semantics
23
23
  if?: ConditionIf<TContext, TData>; // code-evaluated function(s), AND semantics
24
24
  prompt: Template<TContext, TData>;
25
25
  enabled?: boolean; // default: true
@@ -48,7 +48,7 @@ interface AppliedInstruction {
48
48
  |-------|------|----------|---------|-------|
49
49
  | `prompt` | `Template<TContext, TData>` | yes | — | Behavioral text rendered into the prompt under the `## Instructions` section. |
50
50
  | `kind` | `'must' \| 'never' \| 'should'` | no | `'should'` | Severity. `'must'` = absolute do, `'never'` = absolute don't, `'should'` = conditional nudge. |
51
- | `when` | `ConditionWhen` | no | — | AI-evaluated activation string (or array, AND semantics). Functions are not allowed here; use `if`. |
51
+ | `when` | `ConditionWhen` | no | — | AI-evaluated activation string (or array, OR semantics). Functions are not allowed here; use `if`. |
52
52
  | `if` | `ConditionIf<TContext, TData>` | no | — | Code-evaluated activation function (or array). Free to evaluate. When both `when` and `if` are set, `if` runs first; `when` is only evaluated if `if` passes. |
53
53
  | `id` | `string` | no | auto | Stable identifier used in `AppliedInstruction.id`. Auto-generated when omitted. |
54
54
  | `enabled` | `boolean` | no | `true` | Set `false` to skip the instruction without removing it from configuration. |
@@ -71,12 +71,14 @@ The same `Instruction` shape attaches at three positions:
71
71
  - **Flow:** `FlowOptions.instructions` — considered when the active flow matches.
72
72
  - **Step:** `StepOptions.instructions` — considered when the active step matches.
73
73
 
74
- At prompt-build time the composer renders each active instruction as a single bullet:
74
+ At prompt-build time the composer renders each eligible instruction as a single bullet:
75
75
 
76
76
  ```
77
- - [<kind>] [<scope-caption>] <prompt>
77
+ - [<kind>] [<scope-caption>] <prompt> (apply only when: <when-clause> OR <when-clause>)
78
78
  ```
79
79
 
80
+ The parenthesized condition is omitted when `when` is not set. Code-evaluated `if` predicates run first; a failing predicate removes the entire bullet before the prompt reaches the model.
81
+
80
82
  Scope captions are fixed by where the instruction was declared:
81
83
 
82
84
  | Scope | Caption |
@@ -96,7 +96,7 @@ interface StepLifecycleHooks<TContext = unknown, TData = unknown> {
96
96
  | `auto` | `boolean` | no | `false` | When `true`, the step runs without an LLM call — only `onEnter`, `prepare`, and `branches` execute. Cannot coexist with `prompt`, `collect`, `tools`, or `finalize`. Counts against `maxAutoStepsPerTurn`. |
97
97
  | `collect` | `(keyof TData)[]` | no | `[]` | Schema field keys this step is responsible for extracting from the user message. Every key must exist in the agent's `schema`. The engine skips the step automatically when every listed key is already present in `session.data` (pre-extraction). |
98
98
  | `requires` | `(keyof TData)[]` | no | `[]` | Prerequisite field keys. The engine refuses to enter the step until every key is present in `session.data`. When fields covered by `requires` are read inside `branches[].if` predicates, they are guaranteed to be defined. |
99
- | `when` | `string \| string[]` | no | — | AI-evaluated activation strings (AND semantics). Evaluated by the LLM at routing time. Functions are not allowed here — the constructor throws `FlowConfigurationError` if a function is found. |
99
+ | `when` | `string \| string[]` | no | — | AI-evaluated activation strings (OR semantics). Evaluated by the LLM at routing time. Functions are not allowed here — the constructor throws `FlowConfigurationError` if a function is found. |
100
100
  | `if` | `(ctx) => boolean \| Promise<boolean>` or array | no | — | Code-evaluated activation predicates (AND semantics). Evaluated locally — no LLM cost. When both `when` and `if` are set, `if` runs first; `when` is only evaluated if every `if` predicate passes. |
101
101
  | `skip` | `(ctx) => boolean \| Promise<boolean>` or array | no | — | Code-evaluated skip predicates (OR semantics). When any predicate returns `true`, the step is bypassed. Only code predicates — no AI strings. |
102
102
  | `tools` | `(string \| Tool<TContext, TData>)[]` | no | `[]` | Tools available during this step. Strings are resolved against the agent's tool registry; objects are inline tools. Stacked on top of agent and flow scopes. |
@@ -130,7 +130,7 @@ or the full `Directive` surface (`appendPrompt`,
130
130
 
131
131
  For one step, the engine walks this sequence per turn:
132
132
 
133
- 1. Evaluate `if` (code, AND) and `when` (AI, AND) — fails skip the step entirely.
133
+ 1. Evaluate `if` (code, AND) and `when` (AI, OR) — fails skip the step entirely.
134
134
  2. Evaluate `skip` (code, OR) — true means bypass and fall through.
135
135
  3. Check `requires` — refuse entry if any required field is missing.
136
136
  4. Run `onEnter`, then `prepare` / `hooks.prepare`. May emit a `Directive` (pre-LLM fields honored).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@falai/agent",
3
- "version": "2.2.0",
3
+ "version": "2.2.1",
4
4
  "description": "Conversational state engine for TypeScript where the AI understands, but the code is in control",
5
5
  "type": "module",
6
6
  "main": "./dist/cjs/index.js",
@@ -38,7 +38,7 @@
38
38
  },
39
39
  "homepage": "https://falai.dev",
40
40
  "scripts": {
41
- "build": "npm run build:esm && npm run build:cjs && npm run fix:cjs",
41
+ "build": "bun run build:esm && bun run build:cjs && bun run fix:cjs",
42
42
  "build:esm": "tsc",
43
43
  "build:cjs": "tsc --project tsconfig.cjs.json",
44
44
  "fix:cjs": "echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
@@ -48,15 +48,14 @@
48
48
  "lint": "eslint src/**/*.ts",
49
49
  "lint:fix": "eslint src/**/*.ts --fix",
50
50
  "clean": "rm -rf dist",
51
- "prebuild": "npm run clean",
52
- "prepublishOnly": "npm run lint && npm run typecheck && npm run build && bun run test",
53
- "release:patch": "npm version patch && npm publish",
54
- "release:minor": "npm version minor && npm publish",
55
- "release:major": "npm version major && npm publish",
56
- "release:alpha": "npm publish --tag alpha",
57
- "release": "npm publish",
58
- "test": "bun test tests/*.test.ts",
59
- "preinstall": "node preinstall.js"
51
+ "prebuild": "bun run clean",
52
+ "prepublishOnly": "bun run lint && bun run typecheck && bun run build && bun run test",
53
+ "release:patch": "bun pm version patch && bun publish",
54
+ "release:minor": "bun pm version minor && bun publish",
55
+ "release:major": "bun pm version major && bun publish",
56
+ "release:alpha": "bun publish --tag alpha",
57
+ "release": "bun publish",
58
+ "test": "bun test tests/*.test.ts"
60
59
  },
61
60
  "keywords": [
62
61
  "ai",
@@ -20,8 +20,8 @@ import { eventsToHistory, logger } from "../utils";
20
20
 
21
21
  /**
22
22
  * The AI condition evaluator function signature.
23
- * Accepts an array of condition strings (AND semantics) and returns
24
- * whether all conditions are satisfied.
23
+ * Accepts an array of condition strings (OR semantics) and returns
24
+ * whether any condition is satisfied.
25
25
  *
26
26
  * This is the same evaluation mechanism used by `step.when` — condition
27
27
  * strings are evaluated by the AI provider against the conversation context.
@@ -65,7 +65,7 @@ export function createAiConditionEvaluator<TContext = unknown>(
65
65
  "Condition(s):",
66
66
  conditionText,
67
67
  "",
68
- "Return JSON with a single boolean field `result`: true if ALL conditions are satisfied, false otherwise.",
68
+ "Return JSON with a single boolean field `result`: true if ANY condition is satisfied, false otherwise.",
69
69
  ].join("\n");
70
70
 
71
71
  const result = await provider.generateMessage<TContext, { result: boolean }>({
@@ -78,7 +78,7 @@ export function createAiConditionEvaluator<TContext = unknown>(
78
78
  properties: {
79
79
  result: {
80
80
  type: "boolean",
81
- description: "Whether all conditions are met based on the conversation context",
81
+ description: "Whether any condition is met based on the conversation context",
82
82
  },
83
83
  },
84
84
  required: ["result"],
package/src/core/Flow.ts CHANGED
@@ -246,7 +246,8 @@ export class Flow<TContext = unknown, TData = unknown> {
246
246
  /**
247
247
  * Evaluate when/if conditions using the v2 split logic.
248
248
  * `if` (code predicate) evaluates first (free); `when` (AI) evaluates only when `if` passes.
249
- * Both are combined with AND semantics.
249
+ * `if` predicates use AND semantics. `when` strings use OR semantics.
250
+ * When both fields are set, the passing `if` gate and AI match are combined with AND.
250
251
  */
251
252
  async evaluateWhen(
252
253
  templateContext: TemplateContext<TContext, TData>
@@ -1151,7 +1151,7 @@ export class FlowRouter<TContext = unknown, TData = unknown> {
1151
1151
  if (candidate.step.when) {
1152
1152
  const whenResult = await candidate.step.evaluateWhen(templateContext);
1153
1153
  if (whenResult.aiContextStrings.length > 0) {
1154
- parts.push(` When conditions: ${whenResult.aiContextStrings.join(", ")}`);
1154
+ parts.push(` When any condition matches: ${whenResult.aiContextStrings.join(" OR ")}`);
1155
1155
  } else if (typeof candidate.step.when === 'string') {
1156
1156
  parts.push(` When this step should be completed: ${candidate.step.when}`);
1157
1157
  }
@@ -1436,7 +1436,7 @@ export class FlowRouter<TContext = unknown, TData = unknown> {
1436
1436
  if (step.when) {
1437
1437
  const whenResult = await step.evaluateWhen(templateContext);
1438
1438
  if (whenResult.aiContextStrings.length > 0) {
1439
- stepInfo.push(` When conditions: ${whenResult.aiContextStrings.join(", ")}`);
1439
+ stepInfo.push(` When any condition matches: ${whenResult.aiContextStrings.join(" OR ")}`);
1440
1440
  activeStepConditionContext.push(...whenResult.aiContextStrings);
1441
1441
  } else if (typeof step.when === 'string') {
1442
1442
  stepInfo.push(` When this step should be completed: ${step.when}`);
@@ -2,7 +2,6 @@ import type { Event, Term, Instruction, AgentOptions, ScopedInstructions, Applie
2
2
  import type { Flow } from "./Flow";
3
3
  import { render, renderMany, formatKnowledgeBase, createTemplateContext } from "../utils/template";
4
4
  import { TemplateContext } from "../types/template";
5
- import { ConditionEvaluator } from "../utils/condition";
6
5
  import { PromptSectionCache } from "./PromptSectionCache";
7
6
  import { logger } from "../utils";
8
7
 
@@ -155,8 +154,6 @@ export class PromptComposer<TContext = unknown, TData = unknown> {
155
154
  // Reset the per-turn applied set
156
155
  this.lastAppliedInstructions = [];
157
156
 
158
- const evaluator = new ConditionEvaluator(this.renderContext);
159
-
160
157
  /**
161
158
  * Evaluate a single instruction's `if` code predicate(s).
162
159
  * Returns true if all predicates pass (AND semantics).
@@ -182,17 +179,6 @@ export class PromptComposer<TContext = unknown, TData = unknown> {
182
179
  return true;
183
180
  };
184
181
 
185
- /**
186
- * Evaluate a single instruction's `when` condition.
187
- * Returns true if the instruction should be active.
188
- */
189
- const evaluateWhen = async (when: Instruction<TContext, TData>['when']): Promise<boolean> => {
190
- if (when === undefined) return true;
191
- const evaluation = await evaluator.evaluateCondition(when, 'AND');
192
- if (!evaluation.hasProgrammaticConditions) return true;
193
- return evaluation.programmaticResult;
194
- };
195
-
196
182
  /**
197
183
  * Resolve the kind prefix for rendering.
198
184
  * Default kind is 'should'.
@@ -203,7 +189,7 @@ export class PromptComposer<TContext = unknown, TData = unknown> {
203
189
  };
204
190
 
205
191
  /**
206
- * Process a scope bucket: filter enabled, evaluate when, collect active lines and applied records.
192
+ * Process a scope bucket: filter enabled, gate by `if`, render `when`, and collect applied records.
207
193
  */
208
194
  const processScope = async (
209
195
  items: Instruction<TContext, TData>[],
@@ -219,14 +205,17 @@ export class PromptComposer<TContext = unknown, TData = unknown> {
219
205
  const ifPassed = await evaluateIf(g.if);
220
206
  if (!ifPassed) continue;
221
207
 
222
- // Evaluate `when` (AI condition) only when `if` passed
223
- const active = await evaluateWhen(g.when);
224
- if (!active) continue;
225
-
226
208
  const text = await render(g.prompt, this.renderContext);
227
209
  if (!text) continue;
228
210
 
229
- lines.push(`- ${kindPrefix(g.kind)} ${caption} ${text}`);
211
+ const whenContextStrings = g.when
212
+ ? (Array.isArray(g.when) ? g.when : [g.when])
213
+ : [];
214
+ const condition = whenContextStrings.length > 0
215
+ ? ` (apply only when: ${whenContextStrings.join(" OR ")})`
216
+ : "";
217
+
218
+ lines.push(`- ${kindPrefix(g.kind)} ${caption} ${text}${condition}`);
230
219
  this.lastAppliedInstructions.push({
231
220
  id: g.id || '',
232
221
  scope,
package/src/core/Step.ts CHANGED
@@ -448,7 +448,8 @@ export class Step<TContext = unknown, TData = unknown> {
448
448
  /**
449
449
  * Evaluate when/if conditions using the v2 split logic.
450
450
  * `if` (code predicate) evaluates first (free); `when` (AI) evaluates only when `if` passes.
451
- * Both are combined with AND semantics.
451
+ * `if` predicates use AND semantics. `when` strings use OR semantics.
452
+ * When both fields are set, the passing `if` gate and AI match are combined with AND.
452
453
  */
453
454
  async evaluateWhen(
454
455
  templateContext: TemplateContext<TContext, TData>
@@ -267,7 +267,7 @@ export interface Instruction<TContext = unknown, TData = unknown> {
267
267
  */
268
268
  kind?: 'must' | 'never' | 'should';
269
269
  /**
270
- * AI-evaluated activation condition. String or array of strings (AND semantics).
270
+ * AI-evaluated activation condition. String or array of strings (OR semantics).
271
271
  * Undefined = always active. Functions are NOT allowed here — use `if`.
272
272
  */
273
273
  when?: ConditionWhen;
@@ -307,7 +307,8 @@ export interface ScopedInstructions<TContext = unknown, TData = unknown> {
307
307
  }
308
308
 
309
309
  /**
310
- * Observability record for an instruction that was active and rendered into a turn's prompt.
310
+ * Observability record for an instruction that was rendered into a turn's prompt.
311
+ * Textual `when` conditions are included in the prompt for the AI to evaluate.
311
312
  * Deterministic — derived from rendering, not from LLM self-report.
312
313
  */
313
314
  export interface AppliedInstruction {
@@ -329,7 +330,8 @@ export interface AgentResponse<TData = Record<string, unknown>> {
329
330
  /** Why execution stopped (for multi-step execution) */
330
331
  stoppedReason?: StoppedReason;
331
332
  /**
332
- * Instructions whose conditions passed and were rendered into this turn's prompt.
333
+ * Instructions rendered into this turn's prompt after code-evaluated gates passed.
334
+ * Textual `when` conditions remain in the prompt for the AI to evaluate.
333
335
  * Deterministic — derived from rendering, not from LLM self-report.
334
336
  */
335
337
  appliedInstructions?: AppliedInstruction[];