@falai/agent 1.0.1 → 1.1.0

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 (63) hide show
  1. package/dist/cjs/core/Agent.d.ts.map +1 -1
  2. package/dist/cjs/core/Agent.js +1 -3
  3. package/dist/cjs/core/Agent.js.map +1 -1
  4. package/dist/cjs/core/BatchExecutor.d.ts +6 -0
  5. package/dist/cjs/core/BatchExecutor.d.ts.map +1 -1
  6. package/dist/cjs/core/BatchExecutor.js +13 -1
  7. package/dist/cjs/core/BatchExecutor.js.map +1 -1
  8. package/dist/cjs/core/ResponseModal.d.ts.map +1 -1
  9. package/dist/cjs/core/ResponseModal.js +1 -0
  10. package/dist/cjs/core/ResponseModal.js.map +1 -1
  11. package/dist/cjs/core/RoutingEngine.d.ts +8 -9
  12. package/dist/cjs/core/RoutingEngine.d.ts.map +1 -1
  13. package/dist/cjs/core/RoutingEngine.js +29 -23
  14. package/dist/cjs/core/RoutingEngine.js.map +1 -1
  15. package/dist/cjs/types/agent.d.ts +18 -0
  16. package/dist/cjs/types/agent.d.ts.map +1 -1
  17. package/dist/cjs/types/route.d.ts +1 -1
  18. package/dist/cjs/types/route.d.ts.map +1 -1
  19. package/dist/cjs/types/routing.d.ts +0 -4
  20. package/dist/cjs/types/routing.d.ts.map +1 -1
  21. package/dist/core/Agent.d.ts.map +1 -1
  22. package/dist/core/Agent.js +1 -3
  23. package/dist/core/Agent.js.map +1 -1
  24. package/dist/core/BatchExecutor.d.ts +6 -0
  25. package/dist/core/BatchExecutor.d.ts.map +1 -1
  26. package/dist/core/BatchExecutor.js +13 -1
  27. package/dist/core/BatchExecutor.js.map +1 -1
  28. package/dist/core/ResponseModal.d.ts.map +1 -1
  29. package/dist/core/ResponseModal.js +1 -0
  30. package/dist/core/ResponseModal.js.map +1 -1
  31. package/dist/core/RoutingEngine.d.ts +8 -9
  32. package/dist/core/RoutingEngine.d.ts.map +1 -1
  33. package/dist/core/RoutingEngine.js +29 -23
  34. package/dist/core/RoutingEngine.js.map +1 -1
  35. package/dist/types/agent.d.ts +18 -0
  36. package/dist/types/agent.d.ts.map +1 -1
  37. package/dist/types/route.d.ts +1 -1
  38. package/dist/types/route.d.ts.map +1 -1
  39. package/dist/types/routing.d.ts +0 -4
  40. package/dist/types/routing.d.ts.map +1 -1
  41. package/docs/README.md +6 -17
  42. package/docs/api/README.md +12 -16
  43. package/docs/api/overview.md +11 -7
  44. package/docs/architecture/data-extraction-flow.md +0 -1
  45. package/docs/architecture/multi-step-execution.md +37 -3
  46. package/docs/core/agent/context-management.md +6 -6
  47. package/docs/core/agent/session-management.md +3 -4
  48. package/docs/core/conversation-flows/data-collection.md +1 -1
  49. package/docs/core/conversation-flows/step-transitions.md +4 -0
  50. package/docs/core/conversation-flows/steps.md +3 -1
  51. package/docs/core/routing/intelligent-routing.md +12 -8
  52. package/docs/guides/getting-started/README.md +10 -13
  53. package/docs/guides/migration/README.md +2 -0
  54. package/docs/guides/migration/multi-step-execution.md +29 -9
  55. package/docs/guides/migration/response-modal-refactor.md +2 -2
  56. package/package.json +1 -1
  57. package/src/core/Agent.ts +1 -3
  58. package/src/core/BatchExecutor.ts +22 -1
  59. package/src/core/ResponseModal.ts +1 -0
  60. package/src/core/RoutingEngine.ts +63 -50
  61. package/src/types/agent.ts +18 -0
  62. package/src/types/route.ts +8 -7
  63. package/src/types/routing.ts +0 -5
@@ -99,6 +99,24 @@ export interface AgentOptions<TContext = unknown, TData = unknown> {
99
99
  schema?: StructuredSchema;
100
100
  /** Initial data to pre-populate when creating the agent */
101
101
  initialData?: Partial<TData>;
102
+ /**
103
+ * Margin (0-100) the best alternative route must exceed the current route's score
104
+ * by before the agent switches. Higher values make the agent "stickier" to the
105
+ * current route. Set to 0 to switch whenever any route scores higher.
106
+ * @default 15
107
+ */
108
+ routeSwitchMargin?: number;
109
+ /**
110
+ * Maximum number of steps to execute in a single batch.
111
+ * Controls how many consecutive steps can run together in one LLM call.
112
+ *
113
+ * - `1` (default): Steps execute one at a time (classic behavior)
114
+ * - `Infinity`: No limit — all eligible steps batch together
115
+ * - Any positive integer: Cap the batch to that many steps
116
+ *
117
+ * @default 1
118
+ */
119
+ maxStepsPerBatch?: number;
102
120
  }
103
121
  /**
104
122
  * A term in the domain glossary
@@ -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,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEzD;;GAEG;AACH,oBAAY,eAAe;IACzB,2DAA2D;IAC3D,KAAK,UAAU;IACf,2CAA2C;IAC3C,YAAY,iBAAiB;IAC7B,kCAAkC;IAClC,iBAAiB,sBAAsB;IACvC,mCAAmC;IACnC,aAAa,kBAAkB;CAChC;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,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,WAAW,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC9B,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,oDAAoD;IACpD,QAAQ,EAAE,UAAU,CAAC;IACrB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,wCAAwC;IACxC,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,4CAA4C;IAC5C,UAAU,CAAC,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC1C,2CAA2C;IAC3C,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;IACzC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACzC,+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,6DAA6D;IAC7D,KAAK,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,sEAAsE;IACtE,YAAY,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,kFAAkF;IAClF,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,2DAA2D;IAC3D,WAAW,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CAC9B;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;;GAEG;AACH,MAAM,WAAW,SAAS,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC5D,wBAAwB;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,qFAAqF;IACrF,SAAS,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC/C,6DAA6D;IAC7D,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClC,kDAAkD;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACjE,4BAA4B;IAC5B,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtC,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;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,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iEAAiE;IACjE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;IAC1B,uDAAuD;IACvD,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;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,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,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;CACf;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":"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,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEzD;;GAEG;AACH,oBAAY,eAAe;IACzB,2DAA2D;IAC3D,KAAK,UAAU;IACf,2CAA2C;IAC3C,YAAY,iBAAiB;IAC7B,kCAAkC;IAClC,iBAAiB,sBAAsB;IACvC,mCAAmC;IACnC,aAAa,kBAAkB;CAChC;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,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,WAAW,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC9B,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,oDAAoD;IACpD,QAAQ,EAAE,UAAU,CAAC;IACrB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,wCAAwC;IACxC,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,4CAA4C;IAC5C,UAAU,CAAC,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC1C,2CAA2C;IAC3C,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;IACzC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACzC,+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,6DAA6D;IAC7D,KAAK,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,sEAAsE;IACtE,YAAY,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,kFAAkF;IAClF,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,2DAA2D;IAC3D,WAAW,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;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;;GAEG;AACH,MAAM,WAAW,SAAS,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC5D,wBAAwB;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,qFAAqF;IACrF,SAAS,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC/C,6DAA6D;IAC7D,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClC,kDAAkD;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACjE,4BAA4B;IAC5B,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtC,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;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,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iEAAiE;IACjE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;IAC1B,uDAAuD;IACvD,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;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,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,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;CACf;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"}
@@ -9,7 +9,7 @@ import { Template, ConditionTemplate } from "./template";
9
9
  * Reason why batch execution stopped
10
10
  * Used to indicate the stopping condition for multi-step execution
11
11
  */
12
- export type StoppedReason = 'needs_input' | 'end_route' | 'route_complete' | 'prepare_error' | 'llm_error' | 'validation_error' | 'finalize_error';
12
+ export type StoppedReason = 'needs_input' | 'end_route' | 'route_complete' | 'max_steps_reached' | 'prepare_error' | 'llm_error' | 'validation_error' | 'finalize_error';
13
13
  /**
14
14
  * Event types for batch execution observability
15
15
  */
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/types/route.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/types/route.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB,aAAa,GACb,WAAW,GACX,gBAAgB,GAChB,mBAAmB,GACnB,eAAe,GACf,WAAW,GACX,kBAAkB,GAClB,gBAAgB,CAAC;AAErB;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAC/B,aAAa,GACb,eAAe,GACf,cAAc,GACd,YAAY,GACZ,gBAAgB,CAAC;AAErB;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,oCAAoC;IACpC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,wCAAwC;IACxC,SAAS,EAAE,IAAI,CAAC;IAChB,6BAA6B;IAC7B,OAAO,EAAE;QACP,sEAAsE;QACtE,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,yEAAyE;QACzE,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,2DAA2D;QAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,sDAAsD;QACtD,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,oDAAoD;QACpD,MAAM,CAAC,EAAE,oBAAoB,CAAC;KAC/B,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yCAAyC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0CAA0C;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;AAE/E;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,uBAAuB;IACvB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,sBAAsB;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC9D,mCAAmC;IACnC,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,4BAA4B;IAC5B,aAAa,EAAE,aAAa,CAAC;IAC7B,oDAAoD;IACpD,aAAa,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,IAAI,EAAE,gBAAgB,GAAG,mBAAmB,GAAG,cAAc,GACvD,UAAU,GAAG,iBAAiB,GAAG,eAAe,CAAC;IACvD,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB,CAAC,KAAK,GAAG,OAAO;IACnD,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,4BAA4B;IAC5B,OAAO,EAAE,OAAO,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IACjD,+BAA+B;IAC/B,aAAa,EAAE,OAAO,EAAE,CAAC;IACzB,4BAA4B;IAC5B,aAAa,EAAE,aAAa,CAAC;IAC7B,oCAAoC;IACpC,aAAa,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,+BAA+B;IAC/B,KAAK,CAAC,EAAE,mBAAmB,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACtE;;;;;;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;IAE9C;;;;;OAKG;IACH,eAAe,CAAC,EAAE,CAChB,UAAU,EAAE,QAAQ,EACpB,eAAe,EAAE,QAAQ,KACtB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IACxE,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,SAAS,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CACvC;AAED;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO,IAAI,CACxE,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;CAAE,EAClC,OAAO,CAAC,EAAE,QAAQ,KAEhB,MAAM,GACN,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,GACtC,SAAS,GACT,OAAO,CAAC,MAAM,GAAG,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC/D,qGAAqG;IACrG,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACrC,0FAA0F;IAC1F,WAAW,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACxC,0CAA0C;IAC1C,IAAI,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC1C,+DAA+D;IAC/D,MAAM,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5C,wCAAwC;IACxC,UAAU,CAAC,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC1C,oDAAoD;IACpD,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzB,oCAAoC;IACpC,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;IAC3C,yDAAyD;IACzD,KAAK,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,kEAAkE;IAClE,YAAY,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,4EAA4E;IAC5E,mBAAmB,CAAC,EAAE,gBAAgB,CAAC;IACvC,6EAA6E;IAC7E,oBAAoB,CAAC,EAAE,gBAAgB,CAAC;IACxC;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IACjC;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IACjC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B;;;;OAIG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IACvC;;;;OAIG;IACH,WAAW,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACzD;;;;;OAKG;IACH,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC,CAAC;IAC9E;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,UAAU,CAAC,EACP,MAAM,GACN,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,GACtC,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5C;;OAEG;IACH,KAAK,CAAC,EAAE,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7C,6FAA6F;IAC7F,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC9D,0FAA0F;IAC1F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,MAAM,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACnC,yFAAyF;IACzF,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;IAC3C,8DAA8D;IAC9D,OAAO,CAAC,EACJ,MAAM,GACN,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GACrB,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,6DAA6D;IAC7D,QAAQ,CAAC,EACL,MAAM,GACN,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GACrB,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,kDAAkD;IAClD,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACxB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAC1B;;;;OAIG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAC3B;;;;OAIG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC1C,uCAAuC;IACvC,UAAU,CAAC,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC7D,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,yCAAyC;IACzC,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC/D,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CACnD;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO,CAC7D,SAAQ,OAAO;IACf,iCAAiC;IACjC,QAAQ,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC9E,8CAA8C;IAC9C,MAAM,EAAE,CACN,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,KACpC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACnC,wCAAwC;IACxC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;CACjG"}
@@ -6,10 +6,6 @@ export interface RoutingDecision {
6
6
  extractions?: unknown;
7
7
  contextUpdate?: Record<string, unknown>;
8
8
  }
9
- export interface RoutingDecisionWithRoute extends RoutingDecision {
10
- selectedRouteId: string;
11
- maxScore: number;
12
- }
13
9
  export interface RoutingSchemaOptions {
14
10
  extrasSchema?: StructuredSchema;
15
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/types/routing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,wBAAyB,SAAQ,eAAe;IAC/D,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC"}
1
+ {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/types/routing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC"}
package/docs/README.md CHANGED
@@ -48,7 +48,6 @@ Welcome to the `@falai/agent` documentation! This comprehensive framework enable
48
48
  #### Tools & Execution
49
49
 
50
50
  - **[Tool Definition](./core/tools/tool-definition.md)** - Creating and configuring tools
51
- - **[Tool Execution](./core/tools/tool-execution.md)** - Dynamic tool calling and context updates
52
51
  - **[Tool Scoping](./core/tools/tool-scoping.md)** - Agent, route, and step-level tool management
53
52
 
54
53
  #### Persistence
@@ -63,7 +62,6 @@ Welcome to the `@falai/agent` documentation! This comprehensive framework enable
63
62
 
64
63
  ### 🚀 Advanced Guides
65
64
 
66
- - **[Building Agents](./guides/building-agents/)** - Complete agent construction patterns
67
65
  - **[Advanced Patterns](./guides/advanced-patterns/)** - Complex use cases & integrations
68
66
  - **[Migration Guides](./guides/migration/)** - Upgrade guides for major changes
69
67
  - **[API Reference](./api/README.md)** - Complete API documentation
@@ -85,13 +83,13 @@ Welcome to the `@falai/agent` documentation! This comprehensive framework enable
85
83
  → Learn [Agent-Level Data Collection](./core/conversation-flows/data-collection.md) and [Schema-Driven Extraction](../examples/core-concepts/schema-driven-extraction.ts)
86
84
 
87
85
  **🔧 Working with tools?**
88
- → See [Tool Definition](./core/tools/tool-definition.md), [Tool Execution](./core/tools/tool-execution.md), and [Tool Scoping](./core/tools/tool-scoping.md)
86
+ → See [Tool Definition](./core/tools/tool-definition.md) and [Tool Scoping](./core/tools/tool-scoping.md)
89
87
 
90
88
  **💾 Need persistence?**
91
89
  → See [Session Storage](./core/persistence/session-storage.md) and [Database Adapters](./core/persistence/adapters.md)
92
90
 
93
91
  **🚀 Going to production?**
94
- → Check [Server Deployment](../examples/integrations/server-deployment.ts) and [Advanced Patterns](./guides/advanced-patterns/)
92
+ → Check [Advanced Patterns](./guides/advanced-patterns/) and [Server Session Management](../examples/integrations/server-session-management.ts)
95
93
 
96
94
  ### By Topic
97
95
 
@@ -99,10 +97,10 @@ Welcome to the `@falai/agent` documentation! This comprehensive framework enable
99
97
  - **AI Routing System**: [Intelligent Routing](./core/routing/intelligent-routing.md) | [Route DSL](./core/conversation-flows/route-dsl.md) | [Step Transitions](./core/conversation-flows/step-transitions.md)
100
98
  - **Conversation Flows**: [Routes](./core/conversation-flows/routes.md) | [Steps](./core/conversation-flows/steps.md) | [Agent-Level Data Collection](./core/conversation-flows/data-collection.md)
101
99
  - **AI Integration**: [Providers](./core/ai-integration/providers.md) | [Prompts](./core/ai-integration/prompt-composition.md) | [Responses](./core/ai-integration/response-processing.md)
102
- - **Tools & Execution**: [Tool Definition](./core/tools/tool-definition.md) | [Tool Execution](./core/tools/tool-execution.md) | [Tool Scoping](./core/tools/tool-scoping.md)
100
+ - **Tools & Execution**: [Tool Definition](./core/tools/tool-definition.md) | [Tool Scoping](./core/tools/tool-scoping.md)
103
101
  - **Persistence**: [Session Storage](./core/persistence/session-storage.md) | [Adapters](./core/persistence/adapters.md)
104
102
  - **Error Handling**: [Core Error Handling](./core/error-handling.md) | [Error Patterns](./guides/error-handling-patterns.md)
105
- - **Advanced**: [Building Agents](./guides/building-agents/) | [Patterns](./guides/advanced-patterns/) | [Migration](./guides/migration/) | [API Reference](./api/)
103
+ - **Advanced**: [Patterns](./guides/advanced-patterns/) | [Migration](./guides/migration/) | [API Reference](./api/)
106
104
 
107
105
  ## 💡 Examples by Domain
108
106
 
@@ -113,34 +111,26 @@ Check out the [`examples/`](../examples/) directory for complete, runnable examp
113
111
  - **[Basic Agent](../examples/core-concepts/basic-agent.ts)** - Minimal agent setup and configuration
114
112
  - **[Schema-Driven Extraction](../examples/core-concepts/schema-driven-extraction.ts)** - Type-safe data collection with JSON Schema
115
113
  - **[Session Management](../examples/core-concepts/session-management.ts)** - Multi-turn conversations with persistence
116
- - **[Context Providers](../examples/core-concepts/context-providers.ts)** - Dynamic context fetching and updates
114
+ - **[Modern Streaming API](../examples/core-concepts/modern-streaming-api.ts)** - Streaming responses with the modern API
117
115
 
118
116
  ### 🤖 AI Routing System
119
117
 
120
- - **[Simple Route](../examples/conversation-flows/simple-route.ts)** - Basic route with linear step progression
121
- - **[Multi-Route Agent](../examples/conversation-flows/multi-route-agent.ts)** - AI-powered route selection from multiple options
122
- - **[Data-Driven Flows](../examples/conversation-flows/data-driven-flows.ts)** - Conditional logic with skipIf and requires
123
- - **[Conditional Branching](../examples/conversation-flows/conditional-branching.ts)** - AI-powered branching decisions
124
118
  - **[Completion Transitions](../examples/conversation-flows/completion-transitions.ts)** - Automatic route transitions when flows complete
125
119
 
126
120
  ### 💬 Conversation Flows
127
121
 
128
122
  - **[Knowledge-Based Agent](../examples/advanced-patterns/knowledge-based-agent.ts)** - Agents with domain-specific knowledge bases
129
123
  - **[Persistent Onboarding](../examples/advanced-patterns/persistent-onboarding.ts)** - Multi-step onboarding with data persistence
130
- - **[Behavioral Control](../examples/advanced-patterns/behavioral-control.ts)** - Guidelines and prohibitions for agent behavior
131
124
 
132
125
  ### 🤖 AI Providers
133
126
 
134
127
  - **[OpenAI Integration](../examples/ai-providers/openai-integration.ts)** - GPT-4 and GPT-3.5 Turbo with backup models
135
128
  - **[Anthropic Integration](../examples/ai-providers/anthropic-integration.ts)** - Claude with streaming and tool calling
136
- - **[Custom Provider](../examples/ai-providers/custom-provider.ts)** - Build your own AI provider integration
137
129
 
138
130
  ### 🔧 Tools & Execution
139
131
 
140
132
  - **[Basic Tools](../examples/tools/basic-tools.ts)** - Unified Tool interface with simple return values
141
133
  - **[Data Enrichment Tools](../examples/tools/data-enrichment-tools.ts)** - Pattern helpers for data modification
142
- - **[Context Updating Tools](../examples/tools/context-updating-tools.ts)** - Advanced ToolResult patterns with context updates
143
- - **[Domain Scoped Tools](../examples/tools/domain-scoped-tools.ts)** - Tool registry and scoping with agent.tool.register()
144
134
 
145
135
  ### 💾 Persistence
146
136
 
@@ -151,16 +141,15 @@ Check out the [`examples/`](../examples/) directory for complete, runnable examp
151
141
 
152
142
  ### 🚀 Advanced Patterns
153
143
 
154
- - **[Multi-Turn Conversations](../examples/advanced-patterns/multi-turn-conversations.ts)** - Complex dialogue flows with backtracking
155
144
  - **[Streaming Responses](../examples/advanced-patterns/streaming-responses.ts)** - Real-time response streaming
156
145
  - **[Route Lifecycle Hooks](../examples/advanced-patterns/route-lifecycle-hooks.ts)** - Custom route behavior and data transformation
157
146
 
158
147
  ### 🔗 Integrations
159
148
 
160
- - **[Server Deployment](../examples/integrations/server-deployment.ts)** - HTTP API with WebSocket streaming
161
149
  - **[Database Integration](../examples/integrations/database-integration.ts)** - Direct database access patterns
162
150
  - **[Healthcare Integration](../examples/integrations/healthcare-integration.ts)** - Domain-specific healthcare workflows
163
151
  - **[Search Integration](../examples/integrations/search-integration.ts)** - Integration with search engines
152
+ - **[Server Session Management](../examples/integrations/server-session-management.ts)** - Server-side session handling
164
153
 
165
154
  ## 🤝 Contributing
166
155
 
@@ -9,7 +9,7 @@ Complete API documentation for `@falai/agent`. This framework provides a strongl
9
9
  - **[AI Routing System](../core/routing/intelligent-routing.md)** - Intelligent route and step selection
10
10
  - **[Route DSL](../core/conversation-flows/route-dsl.md)** - Declarative conversation flow design
11
11
  - **[Data Collection](../core/conversation-flows/data-collection.md)** - Schema-driven data extraction
12
- - **[Tool Execution](../core/tools/tool-execution.md)** - Dynamic tool calling and context updates
12
+ - **[Tool Definition](../core/tools/tool-definition.md)** - Tool creation and configuration
13
13
  - **[Session Storage](../core/persistence/session-storage.md)** - Persistence and session management
14
14
  - **[AI Providers](../core/ai-integration/providers.md)** - Provider integrations and configuration
15
15
 
@@ -127,7 +127,7 @@ Main agent class for managing conversational AI with agent-level data collection
127
127
  new Agent<TContext, TData>(options: AgentOptions<TContext, TData>)
128
128
  ```
129
129
 
130
- See [Agent](./AGENT.md) for full details.
130
+ See `AgentOptions` type definition for full details.
131
131
 
132
132
  #### Methods
133
133
 
@@ -632,7 +632,7 @@ return response.message;
632
632
  - If all steps are skipped (due to `skipIf` conditions), the route can complete immediately on entry
633
633
  - Use `agent.getData(session)` to retrieve all collected data
634
634
 
635
- See also: [Custom Database Integration Example](../examples/custom-database-persistence.ts)
635
+ See also: [Database Integration Example](../../examples/integrations/database-integration.ts)
636
636
 
637
637
  ##### `respondStream(input: RespondInput<TContext>): AsyncGenerator<StreamChunk>`
638
638
 
@@ -808,7 +808,7 @@ await db.agentMessages.create({
808
808
  });
809
809
  ```
810
810
 
811
- **See Also:** [streaming-agent.ts](../examples/streaming-agent.ts) for comprehensive examples.
811
+ **See Also:** [streaming-responses.ts](../../examples/advanced-patterns/streaming-responses.ts) for comprehensive examples.
812
812
 
813
813
  #### Properties
814
814
 
@@ -1461,7 +1461,7 @@ Route this step belongs to (readonly).
1461
1461
 
1462
1462
  Tools provide a powerful way to execute custom logic, access external APIs, and enrich conversation context before AI response generation.
1463
1463
 
1464
- **See Also:** [TOOLS.md](./TOOLS.md) - Complete guide to tool execution, lifecycle, and best practices
1464
+ **See Also:** [Tool Definition](../core/tools/tool-definition.md) - Complete guide to tool creation and configuration
1465
1465
 
1466
1466
  ---
1467
1467
 
@@ -1642,7 +1642,7 @@ const provider = new OpenRouterProvider({
1642
1642
  });
1643
1643
  ```
1644
1644
 
1645
- **See Also:** [Providers Guide](./PROVIDERS.md) for detailed provider comparison and configuration examples.
1645
+ **See Also:** [AI Providers](../core/ai-integration/providers.md) for detailed provider comparison and configuration examples.
1646
1646
 
1647
1647
  ---
1648
1648
 
@@ -1789,9 +1789,7 @@ Handles route and step selection logic for conversation orchestration.
1789
1789
  new RoutingEngine<TContext, TData>(options?: RoutingEngineOptions)
1790
1790
 
1791
1791
  interface RoutingEngineOptions {
1792
- allowRouteSwitch?: boolean; // Default: true
1793
- switchThreshold?: number; // Default: 70 (0-100)
1794
- maxCandidates?: number; // Default: 5
1792
+ routeSwitchMargin?: number; // Default: 15 (0-100)
1795
1793
  }
1796
1794
  ```
1797
1795
 
@@ -1927,9 +1925,9 @@ const agent = new Agent({
1927
1925
  });
1928
1926
  ```
1929
1927
 
1930
- **Schema Example:** See [examples/prisma-schema.example.prisma](../examples/prisma-schema.example.prisma)
1928
+ **Schema Example:** See [examples/prisma-schema.example.prisma](../../examples/persistence/prisma-schema.example.prisma)
1931
1929
 
1932
- **Full Example:** See [examples/prisma-persistence.ts](../examples/prisma-persistence.ts)
1930
+ **Full Example:** See [examples/database-persistence.ts](../../examples/persistence/database-persistence.ts)
1933
1931
 
1934
1932
  ---
1935
1933
 
@@ -1972,7 +1970,7 @@ const agent = new Agent({
1972
1970
 
1973
1971
  **Install:** `npm install ioredis` or `npm install redis`
1974
1972
 
1975
- **Full Example:** See [examples/redis-persistence.ts](../examples/redis-persistence.ts)
1973
+ **Full Example:** See [examples/redis-persistence.ts](../../examples/persistence/redis-persistence.ts)
1976
1974
 
1977
1975
  ---
1978
1976
 
@@ -2185,8 +2183,6 @@ const agent = new Agent({
2185
2183
 
2186
2184
  **Perfect for:** Full-text search, analytics, time-series analysis, AWS OpenSearch Service, Elasticsearch 7.x users
2187
2185
 
2188
- **Full Example:** See [examples/opensearch-persistence.ts](../examples/opensearch-persistence.ts)
2189
-
2190
2186
  ---
2191
2187
 
2192
2188
  ### `MemoryAdapter`
@@ -2310,8 +2306,8 @@ interface PersistenceAdapter {
2310
2306
 
2311
2307
  **See Also:**
2312
2308
 
2313
- - [docs/PERSISTENCE.md](./PERSISTENCE.md) - Complete persistence guide
2314
- - [docs/ADAPTERS.md](./ADAPTERS.md) - Adapter comparison and details
2309
+ - [Session Storage](../core/persistence/session-storage.md) - Session persistence patterns
2310
+ - [Database Adapters](../core/persistence/adapters.md) - Adapter comparison and details
2315
2311
 
2316
2312
  ---
2317
2313
 
@@ -761,6 +761,9 @@ interface AgentOptions<TContext = unknown, TData = unknown> {
761
761
  rules?: Template<TContext, TData>[];
762
762
  prohibitions?: Template<TContext, TData>[];
763
763
 
764
+ // NEW: Control multi-step batching
765
+ maxStepsPerBatch?: number; // Default: 1 (single-step). Set higher or Infinity to batch.
766
+
764
767
  hooks?: ContextLifecycleHooks<TContext, TData>;
765
768
  debug?: boolean;
766
769
  session?: SessionState;
@@ -935,13 +938,14 @@ Types for multi-step batch execution:
935
938
  * Reason why batch execution stopped
936
939
  */
937
940
  type StoppedReason =
938
- | 'needs_input' // Step requires uncollected data
939
- | 'end_route' // Reached END_ROUTE
940
- | 'route_complete' // All Steps processed
941
- | 'prepare_error' // Error in prepare hook
942
- | 'llm_error' // Error during LLM call
943
- | 'validation_error' // Error validating collected data
944
- | 'finalize_error'; // Error in finalize hook (non-fatal)
941
+ | 'needs_input' // Step requires uncollected data
942
+ | 'end_route' // Reached END_ROUTE
943
+ | 'route_complete' // All Steps processed
944
+ | 'max_steps_reached' // Batch hit the maxStepsPerBatch limit
945
+ | 'prepare_error' // Error in prepare hook
946
+ | 'llm_error' // Error during LLM call
947
+ | 'validation_error' // Error validating collected data
948
+ | 'finalize_error'; // Error in finalize hook (non-fatal)
945
949
 
946
950
  /**
947
951
  * Result of batch determination - which steps can execute together
@@ -360,4 +360,3 @@ This results in natural, efficient conversations that respect user time.
360
360
  **Next Steps:**
361
361
  - [Route Configuration](../core/conversation-flows/routes.md)
362
362
  - [Step Configuration](../core/conversation-flows/steps.md)
363
- - [Schema Design](../guides/building-agents/schema-design.md)
@@ -6,6 +6,28 @@
6
6
 
7
7
  The core insight is simple: **if a Step's data requirements are already satisfied, there's no reason to pause and wait for user input**. By detecting which Steps can execute together and combining them into a single batch, we reduce LLM calls while improving conversation UX.
8
8
 
9
+ > **Note:** Multi-step batching is **opt-in**. By default, `maxStepsPerBatch` is `1`, meaning steps execute one at a time (classic behavior). Set `maxStepsPerBatch` to a higher value or `Infinity` to enable batching.
10
+
11
+ ## Configuration
12
+
13
+ Control batching behavior with the `maxStepsPerBatch` option on the agent:
14
+
15
+ ```typescript
16
+ const agent = new Agent({
17
+ name: "Assistant",
18
+ provider: provider,
19
+ // Default: 1 (single-step execution)
20
+ // Set higher to enable batching
21
+ maxStepsPerBatch: Infinity, // No limit — batch all eligible steps
22
+ });
23
+ ```
24
+
25
+ | Value | Behavior |
26
+ |-------|----------|
27
+ | `1` (default) | Steps execute one at a time |
28
+ | `N` (e.g. `3`) | Up to N steps per batch |
29
+ | `Infinity` | No limit — all eligible steps batch together |
30
+
9
31
  ## Design Priorities
10
32
 
11
33
  1. **Conversation UX** - Reduce unnecessary back-and-forth
@@ -23,7 +45,9 @@ flowchart TD
23
45
  D -->|Yes| E[Evaluate Step]
24
46
  E --> F{Needs Input?}
25
47
  F -->|No| G[Add to Batch]
26
- G --> D
48
+ G --> G2{maxStepsPerBatch reached?}
49
+ G2 -->|No| D
50
+ G2 -->|Yes| H[Stop Batch]
27
51
  F -->|Yes| H[Stop Batch]
28
52
  D -->|No| H
29
53
  H --> I[Execute Prepare Hooks]
@@ -67,8 +91,10 @@ For each Step starting from current position:
67
91
  c. If skipIf is true → skip Step, continue to next
68
92
  d. If skipIf throws error → treat as non-skippable
69
93
  e. Evaluate needsInput(step, sessionDataAfterPreExtraction)
70
- f. If needsInput is false → include Step in batch, continue to next
94
+ f. If needsInput is false → include Step in batch
71
95
  g. If needsInput is true → stop with 'needs_input'
96
+ h. Check if batch size reached maxStepsPerBatch → stop with 'max_steps_reached'
97
+ i. Continue to next Step
72
98
  ```
73
99
 
74
100
  ### Phase 3: Hook Execution (Prepare)
@@ -170,6 +196,13 @@ Combines multiple Step prompts into a single coherent prompt:
170
196
  ## Example: Multi-Step Batch
171
197
 
172
198
  ```typescript
199
+ // Enable batching to process multiple steps at once
200
+ const agent = new Agent({
201
+ name: "Booking Agent",
202
+ provider: provider,
203
+ maxStepsPerBatch: Infinity, // Enable full batching
204
+ });
205
+
173
206
  // User provides all booking info at once
174
207
  const response = await agent.respond(
175
208
  "I want to book the Grand Hotel for 2 people next Friday"
@@ -202,7 +235,8 @@ Enable debug mode to see batch execution decisions:
202
235
  const agent = new Agent({
203
236
  name: "Assistant",
204
237
  provider: provider,
205
- debug: true // Enable detailed logging
238
+ debug: true, // Enable detailed logging
239
+ maxStepsPerBatch: 5, // Allow up to 5 steps per batch
206
240
  });
207
241
  ```
208
242
 
@@ -773,10 +773,10 @@ hooks: {
773
773
 
774
774
  ## 📚 Related Resources
775
775
 
776
- - [Complete Example: Persistent Onboarding](../examples/persistent-onboarding.ts)
777
- - [API Reference: AgentOptions](../api/overview.md#agentoptions)
778
- - [API Reference: ContextLifecycleHooks](../api/overview.md#contextlifecyclehooks)
779
- - [Getting Started](../guides/getting-started/README.md)
776
+ - [Complete Example: Persistent Onboarding](../../../examples/advanced-patterns/persistent-onboarding.ts)
777
+ - [API Reference: AgentOptions](../../api/overview.md#agentoptions)
778
+ - [API Reference: ContextLifecycleHooks](../../api/overview.md#contextlifecyclehooks)
779
+ - [Getting Started](../../guides/getting-started/README.md)
780
780
 
781
781
  ---
782
782
 
@@ -784,8 +784,8 @@ hooks: {
784
784
 
785
785
  If you're still having issues:
786
786
 
787
- 1. Check the [examples](../examples/) for working implementations
788
- 2. Review the [API Reference](../api/README.md) for detailed type information
787
+ 1. Check the [examples](../../../examples/) for working implementations
788
+ 2. Review the [API Reference](../../api/README.md) for detailed type information
789
789
  3. Open an issue on GitHub with your use case
790
790
 
791
791
  **Remember:** The key to persistent conversations is:
@@ -631,10 +631,9 @@ This framework draws inspiration from:
631
631
 
632
632
  ## Further Reading
633
633
 
634
- - [Getting Started Guide](../guides/getting-started/README.md) - Build your first agent
635
- - [Session Step Guide](./CONTEXT_MANAGEMENT.md) - Session management patterns
636
- - [API Reference](../api/README.md) - Complete API documentation
637
- - [Examples](../examples/) - Real-world implementations
634
+ - [Getting Started Guide](../../guides/getting-started/README.md) - Build your first agent
635
+ - [Context Management](./context-management.md) - Context providers and updates
636
+ - [API Reference](../../api/README.md) - Complete API documentation
638
637
 
639
638
  ---
640
639
 
@@ -17,7 +17,7 @@ The agent-level data collection system provides:
17
17
 
18
18
  ## Data Collection Across Batched Steps
19
19
 
20
- When multiple steps execute in a single batch, data collection works across all steps simultaneously.
20
+ When multiple steps execute in a single batch (requires `maxStepsPerBatch` > 1), data collection works across all steps simultaneously.
21
21
 
22
22
  ### How Batch Data Collection Works
23
23
 
@@ -23,6 +23,7 @@ When executing multiple steps in a batch, the engine stops for specific reasons
23
23
  | `needs_input` | Step requires data not yet available | Batch stops, LLM generates response to collect data |
24
24
  | `end_route` | Reached END_ROUTE marker | Route is complete, no more steps to execute |
25
25
  | `route_complete` | All steps in route processed | Route finished successfully |
26
+ | `max_steps_reached` | Batch hit the `maxStepsPerBatch` limit | Batch stops, remaining steps execute in subsequent calls |
26
27
  | `prepare_error` | Error in prepare hook | Batch stops, error returned with last successful state |
27
28
  | `llm_error` | Error during LLM call | Batch stops, session state preserved |
28
29
  | `validation_error` | Data validation failed | Batch continues, errors included in response |
@@ -130,6 +131,9 @@ switch (response.stoppedReason) {
130
131
  case 'needs_input':
131
132
  console.log("Waiting for user input");
132
133
  break;
134
+ case 'max_steps_reached':
135
+ console.log("Batch limit reached, more steps pending");
136
+ break;
133
137
  case 'end_route':
134
138
  case 'route_complete':
135
139
  console.log("Route finished:", response.isRouteComplete);
@@ -147,7 +147,9 @@ const dataStep = previousStep.nextStep({
147
147
 
148
148
  ## Multi-Step Batch Execution
149
149
 
150
- Steps can execute together in a single LLM call when their data requirements are already satisfied. This reduces unnecessary back-and-forth and minimizes LLM costs.
150
+ Steps can execute together in a single LLM call when their data requirements are already satisfied and `maxStepsPerBatch` is set higher than `1`. This reduces unnecessary back-and-forth and minimizes LLM costs.
151
+
152
+ > **Note:** By default, `maxStepsPerBatch` is `1` (single-step execution). Set it to a higher value or `Infinity` on the agent to enable batching.
151
153
 
152
154
  ### How Steps Are Batched
153
155
 
@@ -376,14 +376,19 @@ if (routes.length === 1) {
376
376
  }
377
377
  ```
378
378
 
379
- ### Candidate Limiting
379
+ ### Sticky Route Switching
380
380
 
381
- Applies configurable limits to prevent excessive AI calls:
381
+ When the agent is already on a route, it won't switch unless an alternative route scores higher by a configurable margin. This prevents flip-flopping on marginal score differences:
382
382
 
383
383
  ```typescript
384
- const limited = maxCandidates ? entries.slice(0, maxCandidates) : entries;
384
+ const agent = new Agent({
385
+ // ...
386
+ routeSwitchMargin: 15, // default: 15, range 0-100
387
+ });
385
388
  ```
386
389
 
390
+ A margin of 15 means the best alternative must outscore the current route by at least 15 points before a switch occurs.
391
+
387
392
  ## Error Handling & Resilience
388
393
 
389
394
  ### Backup Model Support
@@ -408,13 +413,12 @@ Robust validation ensures system stability:
408
413
 
409
414
  ## Configuration Options
410
415
 
411
- ### Routing Engine Options
416
+ ### Routing Configuration
412
417
 
413
418
  ```typescript
414
- const routingEngine = new RoutingEngine({
415
- allowRouteSwitch: true, // Allow switching between routes
416
- switchThreshold: 70, // Minimum score to switch routes
417
- maxCandidates: 5, // Limit AI evaluation candidates
419
+ const agent = new Agent({
420
+ // ...
421
+ routeSwitchMargin: 15, // Score margin before switching routes (0-100, default: 15)
418
422
  });
419
423
  ```
420
424
 
@@ -717,27 +717,24 @@ console.log(response2.message); // Agent remembers: "Your name is Alice"
717
717
 
718
718
  ### Level 2: Core Concepts
719
719
 
720
- - **[Schema-Driven Extraction](../core-concepts/schema-driven-extraction.ts)** - Advanced data collection patterns
721
- - **[Session Management](../core-concepts/session-management.ts)** - Multi-turn conversations
722
- - **[Context Providers](../core-concepts/context-providers.ts)** - Dynamic context fetching
720
+ - **[Schema-Driven Extraction](../../../examples/core-concepts/schema-driven-extraction.ts)** - Advanced data collection patterns
721
+ - **[Session Management](../../../examples/core-concepts/session-management.ts)** - Multi-turn conversations
722
+ - **[Modern Streaming API](../../../examples/core-concepts/modern-streaming-api.ts)** - Streaming with the modern API
723
723
 
724
724
  ### Level 3: Conversation Flows
725
725
 
726
- - **[Simple Routes](../conversation-flows/simple-route.ts)** - Basic route patterns
727
- - **[Data-Driven Flows](../conversation-flows/data-driven-flows.ts)** - Conditional logic and requirements
728
- - **[Branching](../conversation-flows/branching/README.md)** - Non-linear conversations
726
+ - **[Completion Transitions](../../../examples/conversation-flows/completion-transitions.ts)** - Route completion and transitions
729
727
 
730
728
  ### Level 4: Advanced Features
731
729
 
732
- - **[Custom Providers](../ai-providers/custom-provider.ts)** - Integrate any AI service
733
- - **[Context Tools](../tools/context-updating-tools.ts)** - Modify agent state
734
- - **[Multi-Turn Conversations](../advanced-patterns/multi-turn-conversations.ts)** - Complex dialogues
730
+ - **[Knowledge-Based Agent](../../../examples/advanced-patterns/knowledge-based-agent.ts)** - Domain-specific knowledge bases
731
+ - **[Route Lifecycle Hooks](../../../examples/advanced-patterns/route-lifecycle-hooks.ts)** - Custom route behavior
735
732
 
736
733
  ### Level 5: Production
737
734
 
738
- - **[Server Deployment](../integrations/server-deployment.ts)** - HTTP API with WebSockets
739
- - **[Database Persistence](../persistence/custom-adapter.ts)** - Custom storage adapters
740
- - **[Streaming Responses](../advanced-patterns/streaming-responses.ts)** - Real-time UX
735
+ - **[Server Session Management](../../../examples/integrations/server-session-management.ts)** - Server-side sessions
736
+ - **[Database Persistence](../../../examples/persistence/custom-adapter.ts)** - Custom storage adapters
737
+ - **[Streaming Responses](../../../examples/advanced-patterns/streaming-responses.ts)** - Real-time UX
741
738
 
742
739
  ---
743
740
 
@@ -783,7 +780,7 @@ console.log("Provider:", agent.options.provider.name);
783
780
  ### Getting Help
784
781
 
785
782
  - 📖 **[Full Documentation](../../README.md)** - Complete API reference
786
- - 💬 **[Examples Directory](../../examples/)** - Working code samples
783
+ - 💬 **[Examples Directory](../../../examples/)** - Working code samples
787
784
  - 🐛 **[GitHub Issues](https://github.com/falai-dev/agent/issues)** - Report bugs
788
785
  - 💡 **[Discussions](https://github.com/falai-dev/agent/discussions)** - Ask questions
789
786
 
@@ -6,6 +6,8 @@ This directory contains migration guides for major changes and updates to the `@
6
6
 
7
7
  ### [Multi-Step Execution Migration Guide](./multi-step-execution.md)
8
8
 
9
+ **v1.1.0 - Breaking Change** - `maxStepsPerBatch` now defaults to `1` (single-step execution). Set `maxStepsPerBatch: Infinity` to restore v1.0.x batching behavior.
10
+
9
11
  **v1.0.0 - Major Release** - Guide for understanding and migrating to multi-step batch execution.
10
12
 
11
13
  **Breaking Changes:**