@falai/agent 1.2.7 → 2.0.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.
- package/README.md +40 -886
- package/dist/adapters/MemoryAdapter.js +2 -2
- package/dist/adapters/MemoryAdapter.js.map +1 -1
- package/dist/adapters/MongoAdapter.js +2 -2
- package/dist/adapters/MongoAdapter.js.map +1 -1
- package/dist/adapters/OpenSearchAdapter.d.ts.map +1 -1
- package/dist/adapters/OpenSearchAdapter.js +9 -7
- package/dist/adapters/OpenSearchAdapter.js.map +1 -1
- package/dist/adapters/PostgreSQLAdapter.d.ts +14 -0
- package/dist/adapters/PostgreSQLAdapter.d.ts.map +1 -1
- package/dist/adapters/PostgreSQLAdapter.js +25 -9
- package/dist/adapters/PostgreSQLAdapter.js.map +1 -1
- package/dist/adapters/PrismaAdapter.js +5 -5
- package/dist/adapters/PrismaAdapter.js.map +1 -1
- package/dist/adapters/RedisAdapter.js +2 -2
- package/dist/adapters/RedisAdapter.js.map +1 -1
- package/dist/adapters/SQLiteAdapter.d.ts +17 -0
- package/dist/adapters/SQLiteAdapter.d.ts.map +1 -1
- package/dist/adapters/SQLiteAdapter.js +30 -11
- package/dist/adapters/SQLiteAdapter.js.map +1 -1
- package/dist/cjs/adapters/MemoryAdapter.js +2 -2
- package/dist/cjs/adapters/MemoryAdapter.js.map +1 -1
- package/dist/cjs/adapters/MongoAdapter.js +2 -2
- package/dist/cjs/adapters/MongoAdapter.js.map +1 -1
- package/dist/cjs/adapters/OpenSearchAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/OpenSearchAdapter.js +9 -7
- package/dist/cjs/adapters/OpenSearchAdapter.js.map +1 -1
- package/dist/cjs/adapters/PostgreSQLAdapter.d.ts +14 -0
- package/dist/cjs/adapters/PostgreSQLAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/PostgreSQLAdapter.js +25 -9
- package/dist/cjs/adapters/PostgreSQLAdapter.js.map +1 -1
- package/dist/cjs/adapters/PrismaAdapter.js +5 -5
- package/dist/cjs/adapters/PrismaAdapter.js.map +1 -1
- package/dist/cjs/adapters/RedisAdapter.js +2 -2
- package/dist/cjs/adapters/RedisAdapter.js.map +1 -1
- package/dist/cjs/adapters/SQLiteAdapter.d.ts +17 -0
- package/dist/cjs/adapters/SQLiteAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/SQLiteAdapter.js +30 -11
- package/dist/cjs/adapters/SQLiteAdapter.js.map +1 -1
- package/dist/cjs/constants/index.d.ts +0 -9
- package/dist/cjs/constants/index.d.ts.map +1 -1
- package/dist/cjs/constants/index.js +2 -11
- package/dist/cjs/constants/index.js.map +1 -1
- package/dist/cjs/core/Agent.d.ts +119 -153
- package/dist/cjs/core/Agent.d.ts.map +1 -1
- package/dist/cjs/core/Agent.js +471 -324
- package/dist/cjs/core/Agent.js.map +1 -1
- package/dist/cjs/core/AutoChainExecutor.d.ts +107 -0
- package/dist/cjs/core/AutoChainExecutor.d.ts.map +1 -0
- package/dist/cjs/core/AutoChainExecutor.js +297 -0
- package/dist/cjs/core/AutoChainExecutor.js.map +1 -0
- package/dist/cjs/core/BranchEvaluator.d.ts +54 -0
- package/dist/cjs/core/BranchEvaluator.d.ts.map +1 -0
- package/dist/cjs/core/BranchEvaluator.js +130 -0
- package/dist/cjs/core/BranchEvaluator.js.map +1 -0
- package/dist/cjs/core/DirectiveBus.d.ts +88 -0
- package/dist/cjs/core/DirectiveBus.d.ts.map +1 -0
- package/dist/cjs/core/DirectiveBus.js +196 -0
- package/dist/cjs/core/DirectiveBus.js.map +1 -0
- package/dist/cjs/core/DirectiveChainTracker.d.ts +49 -0
- package/dist/cjs/core/DirectiveChainTracker.d.ts.map +1 -0
- package/dist/cjs/core/DirectiveChainTracker.js +121 -0
- package/dist/cjs/core/DirectiveChainTracker.js.map +1 -0
- package/dist/cjs/core/Flow.d.ts +186 -0
- package/dist/cjs/core/Flow.d.ts.map +1 -0
- package/dist/cjs/core/Flow.js +550 -0
- package/dist/cjs/core/Flow.js.map +1 -0
- package/dist/cjs/core/FlowRouter.d.ts +182 -0
- package/dist/cjs/core/FlowRouter.d.ts.map +1 -0
- package/dist/cjs/core/{RoutingEngine.js → FlowRouter.js} +323 -306
- package/dist/cjs/core/FlowRouter.js.map +1 -0
- package/dist/cjs/core/PersistenceManager.d.ts +2 -2
- package/dist/cjs/core/PersistenceManager.d.ts.map +1 -1
- package/dist/cjs/core/PersistenceManager.js +7 -7
- package/dist/cjs/core/PersistenceManager.js.map +1 -1
- package/dist/cjs/core/PromptComposer.d.ts +21 -8
- package/dist/cjs/core/PromptComposer.d.ts.map +1 -1
- package/dist/cjs/core/PromptComposer.js +182 -105
- package/dist/cjs/core/PromptComposer.js.map +1 -1
- package/dist/cjs/core/PromptSectionCache.d.ts +1 -1
- package/dist/cjs/core/PromptSectionCache.js +1 -1
- package/dist/cjs/core/ResponseEngine.d.ts +18 -8
- package/dist/cjs/core/ResponseEngine.d.ts.map +1 -1
- package/dist/cjs/core/ResponseEngine.js +38 -36
- package/dist/cjs/core/ResponseEngine.js.map +1 -1
- package/dist/cjs/core/ResponseModal.d.ts +73 -56
- package/dist/cjs/core/ResponseModal.d.ts.map +1 -1
- package/dist/cjs/core/ResponseModal.js +1196 -1015
- package/dist/cjs/core/ResponseModal.js.map +1 -1
- package/dist/cjs/core/ResponsePipeline.d.ts +124 -26
- package/dist/cjs/core/ResponsePipeline.d.ts.map +1 -1
- package/dist/cjs/core/ResponsePipeline.js +524 -134
- package/dist/cjs/core/ResponsePipeline.js.map +1 -1
- package/dist/cjs/core/SignalEvaluator.d.ts +86 -0
- package/dist/cjs/core/SignalEvaluator.d.ts.map +1 -0
- package/dist/cjs/core/SignalEvaluator.js +333 -0
- package/dist/cjs/core/SignalEvaluator.js.map +1 -0
- package/dist/cjs/core/SignalProcessor.d.ts +152 -0
- package/dist/cjs/core/SignalProcessor.d.ts.map +1 -0
- package/dist/cjs/core/SignalProcessor.js +562 -0
- package/dist/cjs/core/SignalProcessor.js.map +1 -0
- package/dist/cjs/core/Step.d.ts +43 -32
- package/dist/cjs/core/Step.d.ts.map +1 -1
- package/dist/cjs/core/Step.js +221 -126
- package/dist/cjs/core/Step.js.map +1 -1
- package/dist/cjs/core/StreamingToolExecutor.d.ts +2 -2
- package/dist/cjs/core/StreamingToolExecutor.d.ts.map +1 -1
- package/dist/cjs/core/StreamingToolExecutor.js.map +1 -1
- package/dist/cjs/core/ToolManager.d.ts +44 -13
- package/dist/cjs/core/ToolManager.d.ts.map +1 -1
- package/dist/cjs/core/ToolManager.js +174 -91
- package/dist/cjs/core/ToolManager.js.map +1 -1
- package/dist/cjs/core/createAgent.d.ts +35 -0
- package/dist/cjs/core/createAgent.d.ts.map +1 -0
- package/dist/cjs/core/createAgent.js +39 -0
- package/dist/cjs/core/createAgent.js.map +1 -0
- package/dist/cjs/core/flow-namespace.d.ts +49 -0
- package/dist/cjs/core/flow-namespace.d.ts.map +1 -0
- package/dist/cjs/core/flow-namespace.js +171 -0
- package/dist/cjs/core/flow-namespace.js.map +1 -0
- package/dist/cjs/index.d.ts +11 -14
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +18 -22
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/providers/GeminiProvider.d.ts +3 -3
- package/dist/cjs/providers/GeminiProvider.d.ts.map +1 -1
- package/dist/cjs/providers/GeminiProvider.js +16 -14
- package/dist/cjs/providers/GeminiProvider.js.map +1 -1
- package/dist/cjs/types/agent.d.ts +183 -54
- package/dist/cjs/types/agent.d.ts.map +1 -1
- package/dist/cjs/types/agent.js +0 -6
- package/dist/cjs/types/agent.js.map +1 -1
- package/dist/cjs/types/ai.d.ts +3 -3
- package/dist/cjs/types/ai.d.ts.map +1 -1
- package/dist/cjs/types/errors.d.ts +15 -0
- package/dist/cjs/types/errors.d.ts.map +1 -0
- package/dist/cjs/types/errors.js +22 -0
- package/dist/cjs/types/errors.js.map +1 -0
- package/dist/cjs/types/flow.d.ts +513 -0
- package/dist/cjs/types/flow.d.ts.map +1 -0
- package/dist/cjs/types/{route.js → flow.js} +2 -2
- package/dist/cjs/types/flow.js.map +1 -0
- package/dist/cjs/types/index.d.ts +7 -6
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/cjs/types/index.js +6 -2
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/persistence.d.ts +11 -7
- package/dist/cjs/types/persistence.d.ts.map +1 -1
- package/dist/cjs/types/routing.d.ts +1 -1
- package/dist/cjs/types/routing.d.ts.map +1 -1
- package/dist/cjs/types/session.d.ts +24 -23
- package/dist/cjs/types/session.d.ts.map +1 -1
- package/dist/cjs/types/signals.d.ts +248 -0
- package/dist/cjs/types/signals.d.ts.map +1 -0
- package/dist/cjs/types/signals.js +11 -0
- package/dist/cjs/types/signals.js.map +1 -0
- package/dist/cjs/types/template.d.ts +2 -8
- package/dist/cjs/types/template.d.ts.map +1 -1
- package/dist/cjs/types/tool.d.ts +36 -29
- package/dist/cjs/types/tool.d.ts.map +1 -1
- package/dist/cjs/types/tool.js +1 -1
- package/dist/cjs/types/tool.js.map +1 -1
- package/dist/cjs/utils/condition.d.ts +7 -1
- package/dist/cjs/utils/condition.d.ts.map +1 -1
- package/dist/cjs/utils/condition.js.map +1 -1
- package/dist/cjs/utils/id.d.ts +13 -5
- package/dist/cjs/utils/id.d.ts.map +1 -1
- package/dist/cjs/utils/id.js +24 -10
- package/dist/cjs/utils/id.js.map +1 -1
- package/dist/cjs/utils/index.d.ts +2 -2
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +7 -3
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/session.d.ts +44 -5
- package/dist/cjs/utils/session.d.ts.map +1 -1
- package/dist/cjs/utils/session.js +197 -38
- package/dist/cjs/utils/session.js.map +1 -1
- package/dist/constants/index.d.ts +0 -9
- package/dist/constants/index.d.ts.map +1 -1
- package/dist/constants/index.js +3 -9
- package/dist/constants/index.js.map +1 -1
- package/dist/core/Agent.d.ts +119 -153
- package/dist/core/Agent.d.ts.map +1 -1
- package/dist/core/Agent.js +472 -325
- package/dist/core/Agent.js.map +1 -1
- package/dist/core/AutoChainExecutor.d.ts +107 -0
- package/dist/core/AutoChainExecutor.d.ts.map +1 -0
- package/dist/core/AutoChainExecutor.js +293 -0
- package/dist/core/AutoChainExecutor.js.map +1 -0
- package/dist/core/BranchEvaluator.d.ts +54 -0
- package/dist/core/BranchEvaluator.d.ts.map +1 -0
- package/dist/core/BranchEvaluator.js +126 -0
- package/dist/core/BranchEvaluator.js.map +1 -0
- package/dist/core/DirectiveBus.d.ts +88 -0
- package/dist/core/DirectiveBus.d.ts.map +1 -0
- package/dist/core/DirectiveBus.js +192 -0
- package/dist/core/DirectiveBus.js.map +1 -0
- package/dist/core/DirectiveChainTracker.d.ts +49 -0
- package/dist/core/DirectiveChainTracker.d.ts.map +1 -0
- package/dist/core/DirectiveChainTracker.js +117 -0
- package/dist/core/DirectiveChainTracker.js.map +1 -0
- package/dist/core/Flow.d.ts +186 -0
- package/dist/core/Flow.d.ts.map +1 -0
- package/dist/core/Flow.js +546 -0
- package/dist/core/Flow.js.map +1 -0
- package/dist/core/FlowRouter.d.ts +182 -0
- package/dist/core/FlowRouter.d.ts.map +1 -0
- package/dist/core/{RoutingEngine.js → FlowRouter.js} +322 -305
- package/dist/core/FlowRouter.js.map +1 -0
- package/dist/core/PersistenceManager.d.ts +2 -2
- package/dist/core/PersistenceManager.d.ts.map +1 -1
- package/dist/core/PersistenceManager.js +7 -7
- package/dist/core/PersistenceManager.js.map +1 -1
- package/dist/core/PromptComposer.d.ts +21 -8
- package/dist/core/PromptComposer.d.ts.map +1 -1
- package/dist/core/PromptComposer.js +183 -106
- package/dist/core/PromptComposer.js.map +1 -1
- package/dist/core/PromptSectionCache.d.ts +1 -1
- package/dist/core/PromptSectionCache.js +1 -1
- package/dist/core/ResponseEngine.d.ts +18 -8
- package/dist/core/ResponseEngine.d.ts.map +1 -1
- package/dist/core/ResponseEngine.js +38 -36
- package/dist/core/ResponseEngine.js.map +1 -1
- package/dist/core/ResponseModal.d.ts +73 -56
- package/dist/core/ResponseModal.d.ts.map +1 -1
- package/dist/core/ResponseModal.js +1198 -1017
- package/dist/core/ResponseModal.js.map +1 -1
- package/dist/core/ResponsePipeline.d.ts +124 -26
- package/dist/core/ResponsePipeline.d.ts.map +1 -1
- package/dist/core/ResponsePipeline.js +524 -135
- package/dist/core/ResponsePipeline.js.map +1 -1
- package/dist/core/SignalEvaluator.d.ts +86 -0
- package/dist/core/SignalEvaluator.d.ts.map +1 -0
- package/dist/core/SignalEvaluator.js +326 -0
- package/dist/core/SignalEvaluator.js.map +1 -0
- package/dist/core/SignalProcessor.d.ts +152 -0
- package/dist/core/SignalProcessor.d.ts.map +1 -0
- package/dist/core/SignalProcessor.js +555 -0
- package/dist/core/SignalProcessor.js.map +1 -0
- package/dist/core/Step.d.ts +43 -32
- package/dist/core/Step.d.ts.map +1 -1
- package/dist/core/Step.js +220 -126
- package/dist/core/Step.js.map +1 -1
- package/dist/core/StreamingToolExecutor.d.ts +2 -2
- package/dist/core/StreamingToolExecutor.d.ts.map +1 -1
- package/dist/core/StreamingToolExecutor.js.map +1 -1
- package/dist/core/ToolManager.d.ts +44 -13
- package/dist/core/ToolManager.d.ts.map +1 -1
- package/dist/core/ToolManager.js +174 -91
- package/dist/core/ToolManager.js.map +1 -1
- package/dist/core/createAgent.d.ts +35 -0
- package/dist/core/createAgent.d.ts.map +1 -0
- package/dist/core/createAgent.js +36 -0
- package/dist/core/createAgent.js.map +1 -0
- package/dist/core/flow-namespace.d.ts +49 -0
- package/dist/core/flow-namespace.d.ts.map +1 -0
- package/dist/core/flow-namespace.js +168 -0
- package/dist/core/flow-namespace.js.map +1 -0
- package/dist/index.d.ts +11 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -12
- package/dist/index.js.map +1 -1
- package/dist/providers/GeminiProvider.d.ts +3 -3
- package/dist/providers/GeminiProvider.d.ts.map +1 -1
- package/dist/providers/GeminiProvider.js +16 -14
- package/dist/providers/GeminiProvider.js.map +1 -1
- package/dist/types/agent.d.ts +183 -54
- package/dist/types/agent.d.ts.map +1 -1
- package/dist/types/agent.js +0 -6
- package/dist/types/agent.js.map +1 -1
- package/dist/types/ai.d.ts +3 -3
- package/dist/types/ai.d.ts.map +1 -1
- package/dist/types/errors.d.ts +15 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +18 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/flow.d.ts +513 -0
- package/dist/types/flow.d.ts.map +1 -0
- package/dist/types/flow.js +5 -0
- package/dist/types/flow.js.map +1 -0
- package/dist/types/index.d.ts +7 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +4 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/persistence.d.ts +11 -7
- package/dist/types/persistence.d.ts.map +1 -1
- package/dist/types/routing.d.ts +1 -1
- package/dist/types/routing.d.ts.map +1 -1
- package/dist/types/session.d.ts +24 -23
- package/dist/types/session.d.ts.map +1 -1
- package/dist/types/signals.d.ts +248 -0
- package/dist/types/signals.d.ts.map +1 -0
- package/dist/types/signals.js +10 -0
- package/dist/types/signals.js.map +1 -0
- package/dist/types/template.d.ts +2 -8
- package/dist/types/template.d.ts.map +1 -1
- package/dist/types/tool.d.ts +36 -29
- package/dist/types/tool.d.ts.map +1 -1
- package/dist/types/tool.js +1 -1
- package/dist/types/tool.js.map +1 -1
- package/dist/utils/condition.d.ts +7 -1
- package/dist/utils/condition.d.ts.map +1 -1
- package/dist/utils/condition.js.map +1 -1
- package/dist/utils/id.d.ts +13 -5
- package/dist/utils/id.d.ts.map +1 -1
- package/dist/utils/id.js +22 -9
- package/dist/utils/id.js.map +1 -1
- package/dist/utils/index.d.ts +2 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/session.d.ts +44 -5
- package/dist/utils/session.d.ts.map +1 -1
- package/dist/utils/session.js +193 -37
- package/dist/utils/session.js.map +1 -1
- package/docs/README.md +15 -202
- package/docs/concepts/architecture.md +281 -0
- package/docs/concepts/directives.md +400 -0
- package/docs/concepts/pipeline.md +399 -0
- package/docs/guides/branching.md +263 -0
- package/docs/guides/compaction.md +163 -0
- package/docs/guides/conditions.md +167 -0
- package/docs/guides/error-handling.md +176 -0
- package/docs/guides/flow-control.md +409 -0
- package/docs/guides/instructions.md +210 -0
- package/docs/guides/persistence.md +182 -0
- package/docs/guides/streaming.md +137 -0
- package/docs/migration/README.md +15 -0
- package/docs/migration/route-to-flow.md +560 -0
- package/docs/migration/v1-to-v2.md +909 -0
- package/docs/reference/adapters.md +481 -0
- package/docs/reference/branches.md +241 -0
- package/docs/reference/create-agent.md +186 -0
- package/docs/reference/directive.md +243 -0
- package/docs/reference/errors.md +122 -0
- package/docs/reference/flow.md +238 -0
- package/docs/reference/instruction.md +177 -0
- package/docs/reference/pre-directive.md +131 -0
- package/docs/reference/providers.md +227 -0
- package/docs/reference/signals.md +356 -0
- package/docs/reference/step.md +339 -0
- package/docs/reference/tool.md +269 -0
- package/docs/start/01-install.md +81 -0
- package/docs/start/02-first-agent.md +196 -0
- package/docs/start/03-collect-data.md +222 -0
- package/docs/start/04-add-tools.md +276 -0
- package/docs/start/05-go-to-production.md +216 -0
- package/examples/01-quickstart.ts +20 -0
- package/examples/02-data-extraction.ts +90 -0
- package/examples/03-tools.ts +136 -0
- package/examples/04-instructions.ts +100 -0
- package/examples/05-branching.ts +140 -0
- package/examples/06-flow-control.ts +103 -0
- package/examples/07-streaming.ts +69 -0
- package/examples/08-persistence.ts +98 -0
- package/examples/09-signals.ts +144 -0
- package/examples/tsconfig.json +30 -0
- package/package.json +2 -1
- package/src/adapters/MemoryAdapter.ts +3 -3
- package/src/adapters/MongoAdapter.ts +3 -3
- package/src/adapters/OpenSearchAdapter.ts +10 -8
- package/src/adapters/PostgreSQLAdapter.ts +26 -10
- package/src/adapters/PrismaAdapter.ts +6 -6
- package/src/adapters/RedisAdapter.ts +3 -3
- package/src/adapters/SQLiteAdapter.ts +31 -12
- package/src/constants/index.ts +2 -10
- package/src/core/Agent.ts +585 -374
- package/src/core/AutoChainExecutor.ts +440 -0
- package/src/core/BranchEvaluator.ts +167 -0
- package/src/core/DirectiveBus.ts +248 -0
- package/src/core/DirectiveChainTracker.ts +144 -0
- package/src/core/Flow.ts +666 -0
- package/src/core/{RoutingEngine.ts → FlowRouter.ts} +385 -365
- package/src/core/PersistenceManager.ts +8 -8
- package/src/core/PromptComposer.ts +209 -140
- package/src/core/PromptSectionCache.ts +1 -1
- package/src/core/ResponseEngine.ts +61 -46
- package/src/core/ResponseModal.ts +1458 -1241
- package/src/core/ResponsePipeline.ts +675 -173
- package/src/core/SignalEvaluator.ts +420 -0
- package/src/core/SignalProcessor.ts +723 -0
- package/src/core/Step.ts +279 -176
- package/src/core/StreamingToolExecutor.ts +4 -4
- package/src/core/ToolManager.ts +200 -97
- package/src/core/createAgent.ts +40 -0
- package/src/core/flow-namespace.ts +219 -0
- package/src/index.ts +42 -36
- package/src/providers/GeminiProvider.ts +17 -15
- package/src/types/agent.ts +182 -53
- package/src/types/ai.ts +3 -3
- package/src/types/errors.ts +18 -0
- package/src/types/flow.ts +590 -0
- package/src/types/index.ts +43 -16
- package/src/types/persistence.ts +12 -8
- package/src/types/routing.ts +1 -1
- package/src/types/session.ts +26 -23
- package/src/types/signals.ts +321 -0
- package/src/types/template.ts +3 -11
- package/src/types/tool.ts +50 -42
- package/src/utils/condition.ts +13 -4
- package/src/utils/id.ts +27 -9
- package/src/utils/index.ts +6 -2
- package/src/utils/session.ts +238 -42
- package/dist/cjs/core/BatchExecutor.d.ts +0 -359
- package/dist/cjs/core/BatchExecutor.d.ts.map +0 -1
- package/dist/cjs/core/BatchExecutor.js +0 -861
- package/dist/cjs/core/BatchExecutor.js.map +0 -1
- package/dist/cjs/core/BatchPromptBuilder.d.ts +0 -89
- package/dist/cjs/core/BatchPromptBuilder.d.ts.map +0 -1
- package/dist/cjs/core/BatchPromptBuilder.js +0 -223
- package/dist/cjs/core/BatchPromptBuilder.js.map +0 -1
- package/dist/cjs/core/Route.d.ts +0 -180
- package/dist/cjs/core/Route.d.ts.map +0 -1
- package/dist/cjs/core/Route.js +0 -542
- package/dist/cjs/core/Route.js.map +0 -1
- package/dist/cjs/core/RoutingEngine.d.ts +0 -185
- package/dist/cjs/core/RoutingEngine.d.ts.map +0 -1
- package/dist/cjs/core/RoutingEngine.js.map +0 -1
- package/dist/cjs/types/route.d.ts +0 -336
- package/dist/cjs/types/route.d.ts.map +0 -1
- package/dist/cjs/types/route.js.map +0 -1
- package/dist/core/BatchExecutor.d.ts +0 -359
- package/dist/core/BatchExecutor.d.ts.map +0 -1
- package/dist/core/BatchExecutor.js +0 -856
- package/dist/core/BatchExecutor.js.map +0 -1
- package/dist/core/BatchPromptBuilder.d.ts +0 -89
- package/dist/core/BatchPromptBuilder.d.ts.map +0 -1
- package/dist/core/BatchPromptBuilder.js +0 -219
- package/dist/core/BatchPromptBuilder.js.map +0 -1
- package/dist/core/Route.d.ts +0 -180
- package/dist/core/Route.d.ts.map +0 -1
- package/dist/core/Route.js +0 -538
- package/dist/core/Route.js.map +0 -1
- package/dist/core/RoutingEngine.d.ts +0 -185
- package/dist/core/RoutingEngine.d.ts.map +0 -1
- package/dist/core/RoutingEngine.js.map +0 -1
- package/dist/types/route.d.ts +0 -336
- package/dist/types/route.d.ts.map +0 -1
- package/dist/types/route.js +0 -5
- package/dist/types/route.js.map +0 -1
- package/docs/CONTRIBUTING.md +0 -521
- package/docs/api/README.md +0 -3299
- package/docs/api/overview.md +0 -1410
- package/docs/architecture/data-extraction-flow.md +0 -360
- package/docs/architecture/multi-step-execution.md +0 -277
- package/docs/core/agent/README.md +0 -938
- package/docs/core/agent/context-management.md +0 -796
- package/docs/core/agent/rules-and-prohibitions.md +0 -113
- package/docs/core/agent/session-management.md +0 -693
- package/docs/core/ai-integration/prompt-composition.md +0 -355
- package/docs/core/ai-integration/providers.md +0 -515
- package/docs/core/ai-integration/response-processing.md +0 -433
- package/docs/core/conversation-flows/data-collection.md +0 -772
- package/docs/core/conversation-flows/route-dsl.md +0 -509
- package/docs/core/conversation-flows/routes.md +0 -249
- package/docs/core/conversation-flows/step-transitions.md +0 -731
- package/docs/core/conversation-flows/steps.md +0 -268
- package/docs/core/error-handling.md +0 -830
- package/docs/core/persistence/adapters.md +0 -255
- package/docs/core/persistence/session-storage.md +0 -656
- package/docs/core/routing/intelligent-routing.md +0 -470
- package/docs/core/tools/enhanced-tool.md +0 -186
- package/docs/core/tools/streaming-execution.md +0 -161
- package/docs/core/tools/tool-definition.md +0 -970
- package/docs/core/tools/tool-scoping.md +0 -819
- package/docs/guides/advanced-patterns/publishing.md +0 -186
- package/docs/guides/context-compaction.md +0 -96
- package/docs/guides/error-handling-patterns.md +0 -578
- package/docs/guides/getting-started/README.md +0 -795
- package/docs/guides/migration/README.md +0 -101
- package/docs/guides/migration/flexible-routing-conditions.md +0 -375
- package/docs/guides/migration/multi-step-execution.md +0 -393
- package/docs/guides/migration/response-modal-refactor.md +0 -518
- package/docs/guides/prompt-optimization.md +0 -164
- package/examples/advanced-patterns/context-compaction.ts +0 -223
- package/examples/advanced-patterns/knowledge-based-agent.ts +0 -735
- package/examples/advanced-patterns/persistent-onboarding.ts +0 -728
- package/examples/advanced-patterns/route-lifecycle-hooks.ts +0 -556
- package/examples/advanced-patterns/streaming-responses.ts +0 -656
- package/examples/ai-providers/anthropic-integration.ts +0 -388
- package/examples/ai-providers/openai-integration.ts +0 -228
- package/examples/condition-patterns/function-only-conditions.ts +0 -365
- package/examples/condition-patterns/mixed-array-conditions.ts +0 -477
- package/examples/condition-patterns/route-skipif-patterns.ts +0 -468
- package/examples/condition-patterns/step-skipif-patterns.ts +0 -0
- package/examples/condition-patterns/string-only-conditions.ts +0 -296
- package/examples/conversation-flows/completion-transitions.ts +0 -318
- package/examples/core-concepts/basic-agent.ts +0 -503
- package/examples/core-concepts/modern-streaming-api.ts +0 -309
- package/examples/core-concepts/schema-driven-extraction.ts +0 -332
- package/examples/core-concepts/session-management.ts +0 -494
- package/examples/integrations/database-integration.ts +0 -631
- package/examples/integrations/healthcare-integration.ts +0 -595
- package/examples/integrations/search-integration.ts +0 -530
- package/examples/integrations/server-session-management.ts +0 -307
- package/examples/persistence/custom-adapter.ts +0 -526
- package/examples/persistence/database-persistence.ts +0 -583
- package/examples/persistence/memory-sessions.ts +0 -495
- package/examples/persistence/prisma-schema.example.prisma +0 -74
- package/examples/persistence/redis-persistence.ts +0 -488
- package/examples/tools/basic-tools.ts +0 -765
- package/examples/tools/data-enrichment-tools.ts +0 -593
- package/examples/tools/enhanced-tool-metadata.ts +0 -268
- package/examples/tools/streaming-tool-execution.ts +0 -283
- package/src/core/BatchExecutor.ts +0 -1187
- package/src/core/BatchPromptBuilder.ts +0 -299
- package/src/core/Route.ts +0 -678
- package/src/types/route.ts +0 -392
package/dist/core/Agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-step chain executor.
|
|
3
|
+
*
|
|
4
|
+
* Walks consecutive `auto: true` steps in a single turn without making LLM calls.
|
|
5
|
+
* Each auto-step runs its pre-LLM hooks (onEnter, prepare), evaluates skipIf/requires,
|
|
6
|
+
* applies state writes, resolves branches, and advances to the next step.
|
|
7
|
+
*
|
|
8
|
+
* The chain terminates when:
|
|
9
|
+
* - An interactive step (auto !== true) is reached → returned as `resolvedStep`
|
|
10
|
+
* - A `prepare` returns `{ halt: true, reply? }` → turn ends with verbatim reply
|
|
11
|
+
* - A position-changing directive (goTo, goToStep, complete) is returned
|
|
12
|
+
* - The last auto-step has no successor → flow is complete
|
|
13
|
+
* - The chain exceeds `maxAutoStepsPerTurn` → throws FlowConfigurationError
|
|
14
|
+
*
|
|
15
|
+
* Implements Algorithm 1 from `.kiro/specs/auto-steps/design.md`.
|
|
16
|
+
*/
|
|
17
|
+
import type { SessionState } from "../types";
|
|
18
|
+
import type { Event } from "../types/history";
|
|
19
|
+
import { Step } from "./Step";
|
|
20
|
+
import { Flow } from "./Flow";
|
|
21
|
+
import type { StoppedReason } from "../types/flow";
|
|
22
|
+
/**
|
|
23
|
+
* The directive-like object that `prepare` may return on auto-steps.
|
|
24
|
+
* This is a structural subset of the full PreDirective that v2 will formalize.
|
|
25
|
+
*/
|
|
26
|
+
export interface AutoStepPrepareResult {
|
|
27
|
+
dataUpdate?: Record<string, unknown>;
|
|
28
|
+
contextUpdate?: Record<string, unknown>;
|
|
29
|
+
halt?: boolean;
|
|
30
|
+
reply?: string;
|
|
31
|
+
/** Position-changing: jump to a step within the current flow. */
|
|
32
|
+
goToStep?: string;
|
|
33
|
+
/** Position-changing: jump to another flow. */
|
|
34
|
+
goTo?: string;
|
|
35
|
+
/** Position-changing: mark the flow as complete. */
|
|
36
|
+
complete?: boolean;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Result of running the auto-chain.
|
|
40
|
+
*/
|
|
41
|
+
export interface AutoChainResult<TContext = unknown, TData = unknown> {
|
|
42
|
+
/** The interactive step to hand off to the LLM path (undefined if chain ended without one). */
|
|
43
|
+
resolvedStep?: Step<TContext, TData>;
|
|
44
|
+
/** The merged directive from the halting auto-step's prepare (only set when stoppedReason = 'halt'). */
|
|
45
|
+
mergedDirective?: AutoStepPrepareResult;
|
|
46
|
+
/** Why the chain stopped, if it didn't reach an interactive step normally. */
|
|
47
|
+
stoppedReason?: StoppedReason;
|
|
48
|
+
/** Updated session after all auto-step state writes. */
|
|
49
|
+
session: SessionState<TData>;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Configuration for AutoChainExecutor.
|
|
53
|
+
*/
|
|
54
|
+
export interface AutoChainExecutorOptions {
|
|
55
|
+
/** Maximum number of auto-steps walked in a single turn before throwing. */
|
|
56
|
+
maxAutoStepsPerTurn: number;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Parameters for a single chain run.
|
|
60
|
+
*/
|
|
61
|
+
export interface AutoChainRunParams<TContext, TData> {
|
|
62
|
+
session: SessionState<TData>;
|
|
63
|
+
context: TContext;
|
|
64
|
+
flow: Flow<TContext, TData>;
|
|
65
|
+
/** Conversation history (used for branch predicate context). Optional. */
|
|
66
|
+
history?: Event[];
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Executes the auto-step chain for a single turn.
|
|
70
|
+
*
|
|
71
|
+
* Algorithm 1 from design.md — walks while `currentStep.auto === true`,
|
|
72
|
+
* executing skipIf → requires → onEnter/prepare → state writes →
|
|
73
|
+
* halt check → position directives → branches → linear advance.
|
|
74
|
+
*/
|
|
75
|
+
export declare class AutoChainExecutor<TContext = unknown, TData = unknown> {
|
|
76
|
+
private readonly options;
|
|
77
|
+
constructor(options: AutoChainExecutorOptions);
|
|
78
|
+
/**
|
|
79
|
+
* Run the auto-step chain starting from the current step on the session.
|
|
80
|
+
*/
|
|
81
|
+
run(params: AutoChainRunParams<TContext, TData>): Promise<AutoChainResult<TContext, TData>>;
|
|
82
|
+
/**
|
|
83
|
+
* Run onEnter and prepare hooks for an auto-step, collecting any
|
|
84
|
+
* PreDirective-like return values.
|
|
85
|
+
*/
|
|
86
|
+
private runStepHooks;
|
|
87
|
+
/**
|
|
88
|
+
* Merge two directive-like objects. Later values override earlier ones
|
|
89
|
+
* for scalar fields; object fields (dataUpdate, contextUpdate) are deep-merged.
|
|
90
|
+
*/
|
|
91
|
+
private mergeDirectives;
|
|
92
|
+
/**
|
|
93
|
+
* Evaluate branches on an auto-step. Returns the target step/flow id
|
|
94
|
+
* if a branch matches, or undefined if no branch matched.
|
|
95
|
+
*
|
|
96
|
+
* This is a simplified evaluator for code-only (`if`) branches.
|
|
97
|
+
* AI-evaluated (`when`) branches are not supported in the auto-step
|
|
98
|
+
* context (no LLM call). If a branch entry has only `when`, it is skipped.
|
|
99
|
+
*/
|
|
100
|
+
private evaluateBranches;
|
|
101
|
+
/**
|
|
102
|
+
* Resolve a branch entry's `then` value to a string target.
|
|
103
|
+
* Handles both string targets and Directive objects.
|
|
104
|
+
*/
|
|
105
|
+
private resolveBranchThen;
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=AutoChainExecutor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AutoChainExecutor.d.ts","sourceRoot":"","sources":["../../src/core/AutoChainExecutor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAA0B,IAAI,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAmCD;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAChE,+FAA+F;IAC/F,YAAY,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACrC,wGAAwG;IACxG,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,8EAA8E;IAC9E,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wDAAwD;IACxD,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,4EAA4E;IAC5E,mBAAmB,EAAE,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,QAAQ,EAAE,KAAK;IAC/C,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5B,0EAA0E;IAC1E,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;CACrB;AAED;;;;;;GAMG;AACH,qBAAa,iBAAiB,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAClD,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,wBAAwB;IAE9D;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IA2KjG;;;OAGG;YACW,YAAY;IA2C1B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAoBvB;;;;;;;OAOG;YACW,gBAAgB;IAqD9B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;CAW5B"}
|
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-step chain executor.
|
|
3
|
+
*
|
|
4
|
+
* Walks consecutive `auto: true` steps in a single turn without making LLM calls.
|
|
5
|
+
* Each auto-step runs its pre-LLM hooks (onEnter, prepare), evaluates skipIf/requires,
|
|
6
|
+
* applies state writes, resolves branches, and advances to the next step.
|
|
7
|
+
*
|
|
8
|
+
* The chain terminates when:
|
|
9
|
+
* - An interactive step (auto !== true) is reached → returned as `resolvedStep`
|
|
10
|
+
* - A `prepare` returns `{ halt: true, reply? }` → turn ends with verbatim reply
|
|
11
|
+
* - A position-changing directive (goTo, goToStep, complete) is returned
|
|
12
|
+
* - The last auto-step has no successor → flow is complete
|
|
13
|
+
* - The chain exceeds `maxAutoStepsPerTurn` → throws FlowConfigurationError
|
|
14
|
+
*
|
|
15
|
+
* Implements Algorithm 1 from `.kiro/specs/auto-steps/design.md`.
|
|
16
|
+
*/
|
|
17
|
+
import { FlowConfigurationError } from "./Step";
|
|
18
|
+
import { enterStep, mergeCollected, logger } from "../utils";
|
|
19
|
+
import { createTemplateContext } from "../utils/template";
|
|
20
|
+
/**
|
|
21
|
+
* Executes the auto-step chain for a single turn.
|
|
22
|
+
*
|
|
23
|
+
* Algorithm 1 from design.md — walks while `currentStep.auto === true`,
|
|
24
|
+
* executing skipIf → requires → onEnter/prepare → state writes →
|
|
25
|
+
* halt check → position directives → branches → linear advance.
|
|
26
|
+
*/
|
|
27
|
+
export class AutoChainExecutor {
|
|
28
|
+
constructor(options) {
|
|
29
|
+
this.options = options;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Run the auto-step chain starting from the current step on the session.
|
|
33
|
+
*/
|
|
34
|
+
async run(params) {
|
|
35
|
+
const { context, flow, history = [] } = params;
|
|
36
|
+
const { maxAutoStepsPerTurn } = this.options;
|
|
37
|
+
let { session } = params;
|
|
38
|
+
const visited = [];
|
|
39
|
+
while (true) {
|
|
40
|
+
// Resolve the current step from session
|
|
41
|
+
const currentStepId = session.currentStep?.id;
|
|
42
|
+
if (!currentStepId) {
|
|
43
|
+
// No current step — nothing to walk. Return undefined resolvedStep.
|
|
44
|
+
return { session };
|
|
45
|
+
}
|
|
46
|
+
const step = flow.getStep(currentStepId);
|
|
47
|
+
if (!step) {
|
|
48
|
+
// Step not found in flow — shouldn't happen, but bail gracefully.
|
|
49
|
+
return { session };
|
|
50
|
+
}
|
|
51
|
+
// If the step is not auto, hand off to the interactive path
|
|
52
|
+
if (!step.auto) {
|
|
53
|
+
return { resolvedStep: step, session };
|
|
54
|
+
}
|
|
55
|
+
// Track visited steps for cap/cycle detection
|
|
56
|
+
visited.push(step.id);
|
|
57
|
+
if (visited.length > maxAutoStepsPerTurn) {
|
|
58
|
+
throw new FlowConfigurationError(`[FlowConfigurationError] Auto-step chain exceeded limit: visited ${visited.length} steps which exceeds maxAutoStepsPerTurn (${maxAutoStepsPerTurn}). ` +
|
|
59
|
+
`Break the cycle or increase maxAutoStepsPerTurn. Visited: ${visited.join(' → ')}.`);
|
|
60
|
+
}
|
|
61
|
+
logger.debug(`[AutoChainExecutor] Processing auto-step: ${step.id} (${visited.length}/${maxAutoStepsPerTurn})`);
|
|
62
|
+
// STEP 1: skip evaluation (code-only predicates, OR semantics)
|
|
63
|
+
if (step.skip) {
|
|
64
|
+
const templateContext = createTemplateContext({
|
|
65
|
+
context,
|
|
66
|
+
data: session.data,
|
|
67
|
+
session,
|
|
68
|
+
history,
|
|
69
|
+
});
|
|
70
|
+
const skipResult = await step.evaluateSkip(templateContext);
|
|
71
|
+
if (skipResult.shouldSkip) {
|
|
72
|
+
logger.debug(`[AutoChainExecutor] Skipping auto-step ${step.id} due to skip condition`);
|
|
73
|
+
const nextSteps = step.getTransitions();
|
|
74
|
+
if (nextSteps.length === 0) {
|
|
75
|
+
// Last step was skipped and has no successor → flow complete
|
|
76
|
+
return { stoppedReason: 'last_step', session };
|
|
77
|
+
}
|
|
78
|
+
session = enterStep(session, nextSteps[0].id, nextSteps[0].description);
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// STEP 2: requires assertion
|
|
83
|
+
if (step.requires && step.requires.length > 0) {
|
|
84
|
+
const sessionData = (session.data || {});
|
|
85
|
+
const missing = step.requires.filter(field => sessionData[String(field)] === undefined);
|
|
86
|
+
if (missing.length > 0) {
|
|
87
|
+
throw new FlowConfigurationError(`[FlowConfigurationError] Auto-step "${step.id}" missing required fields: fields [${missing.join(', ')}] must be populated before this step runs. ` +
|
|
88
|
+
`Ensure a preceding step or hook populates these fields.`);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// STEP 3: Run pre-LLM hooks (onEnter, prepare) and collect directives
|
|
92
|
+
const merged = await this.runStepHooks(step, session, context);
|
|
93
|
+
// Apply state writes immediately so subsequent steps see them
|
|
94
|
+
if (merged) {
|
|
95
|
+
if (merged.dataUpdate && Object.keys(merged.dataUpdate).length > 0) {
|
|
96
|
+
session = mergeCollected(session, merged.dataUpdate);
|
|
97
|
+
logger.debug(`[AutoChainExecutor] Applied dataUpdate from step ${step.id}`);
|
|
98
|
+
}
|
|
99
|
+
if (merged.contextUpdate && Object.keys(merged.contextUpdate).length > 0) {
|
|
100
|
+
// contextUpdate is reserved for future agent-level application.
|
|
101
|
+
// The caller can read mergedDirective.contextUpdate and apply it externally.
|
|
102
|
+
logger.debug(`[AutoChainExecutor] contextUpdate from step ${step.id} will be applied by caller`);
|
|
103
|
+
}
|
|
104
|
+
// STEP 4: halt short-circuit
|
|
105
|
+
if (merged.halt) {
|
|
106
|
+
logger.debug(`[AutoChainExecutor] Halt directive from step ${step.id}`);
|
|
107
|
+
return {
|
|
108
|
+
resolvedStep: step,
|
|
109
|
+
mergedDirective: merged,
|
|
110
|
+
stoppedReason: 'halt',
|
|
111
|
+
session,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
// STEP 5: position-changing directive (goToStep, goTo, complete)
|
|
115
|
+
if (merged.goToStep) {
|
|
116
|
+
const targetStep = flow.getStep(merged.goToStep);
|
|
117
|
+
if (!targetStep) {
|
|
118
|
+
throw new FlowConfigurationError(`[FlowConfigurationError] Auto-step "${step.id}" goToStep targets unknown step: "${merged.goToStep}" does not exist in the current flow. ` +
|
|
119
|
+
`Check the step id or use goTo to target a different flow.`);
|
|
120
|
+
}
|
|
121
|
+
session = enterStep(session, targetStep.id, targetStep.description);
|
|
122
|
+
logger.debug(`[AutoChainExecutor] Position directive goToStep → ${targetStep.id}`);
|
|
123
|
+
continue; // Re-enter loop at the new step (which may itself be auto)
|
|
124
|
+
}
|
|
125
|
+
if (merged.goTo) {
|
|
126
|
+
// goTo targets a flow — return to pipeline for cross-flow handling
|
|
127
|
+
return {
|
|
128
|
+
resolvedStep: step,
|
|
129
|
+
mergedDirective: merged,
|
|
130
|
+
stoppedReason: 'goto',
|
|
131
|
+
session,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
if (merged.complete) {
|
|
135
|
+
return {
|
|
136
|
+
resolvedStep: step,
|
|
137
|
+
mergedDirective: merged,
|
|
138
|
+
stoppedReason: 'completed',
|
|
139
|
+
session,
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
// STEP 6: branches resolution (if step has branches)
|
|
144
|
+
const stepWithBranches = step;
|
|
145
|
+
if (stepWithBranches.branches && Array.isArray(stepWithBranches.branches) && stepWithBranches.branches.length > 0) {
|
|
146
|
+
const branchTarget = await this.evaluateBranches(stepWithBranches.branches, session, context, history);
|
|
147
|
+
if (branchTarget) {
|
|
148
|
+
// Check if it resolves to a step in this flow
|
|
149
|
+
const targetStep = flow.getStep(branchTarget);
|
|
150
|
+
if (targetStep) {
|
|
151
|
+
session = enterStep(session, targetStep.id, targetStep.description);
|
|
152
|
+
logger.debug(`[AutoChainExecutor] Branch resolved → ${targetStep.id}`);
|
|
153
|
+
continue;
|
|
154
|
+
}
|
|
155
|
+
// Not a step in this flow — treat as a flow id, return to pipeline
|
|
156
|
+
return {
|
|
157
|
+
resolvedStep: step,
|
|
158
|
+
mergedDirective: { goTo: branchTarget },
|
|
159
|
+
stoppedReason: 'goto',
|
|
160
|
+
session,
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
// No branch matched — fall through to linear advance
|
|
164
|
+
}
|
|
165
|
+
// STEP 7: linear advance
|
|
166
|
+
const nextSteps = step.getTransitions();
|
|
167
|
+
if (nextSteps.length === 0) {
|
|
168
|
+
// Auto-step is the last step → flow completes
|
|
169
|
+
logger.debug(`[AutoChainExecutor] Auto-step ${step.id} is terminal — flow complete`);
|
|
170
|
+
return { stoppedReason: 'last_step', session };
|
|
171
|
+
}
|
|
172
|
+
// Take the first transition (linear advance)
|
|
173
|
+
session = enterStep(session, nextSteps[0].id, nextSteps[0].description);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Run onEnter and prepare hooks for an auto-step, collecting any
|
|
178
|
+
* PreDirective-like return values.
|
|
179
|
+
*/
|
|
180
|
+
async runStepHooks(step, session, context) {
|
|
181
|
+
let merged;
|
|
182
|
+
// onEnter (future hook — not yet in StepOptions, but handle if present)
|
|
183
|
+
const stepWithHooks = step;
|
|
184
|
+
if (typeof stepWithHooks.onEnter === 'function') {
|
|
185
|
+
const onEnterResult = await stepWithHooks.onEnter(context, session.data);
|
|
186
|
+
if (onEnterResult && typeof onEnterResult === 'object') {
|
|
187
|
+
merged = this.mergeDirectives(merged, onEnterResult);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
// prepare hook — for auto-steps, prepare may return a PreDirective-like object
|
|
191
|
+
if (step.prepare) {
|
|
192
|
+
if (typeof step.prepare === 'function') {
|
|
193
|
+
const prepareResult = await step.prepare(context, session.data);
|
|
194
|
+
// prepare may return void or a directive-like object
|
|
195
|
+
if (prepareResult && typeof prepareResult === 'object') {
|
|
196
|
+
merged = this.mergeDirectives(merged, prepareResult);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
// Tool reference (string or Tool object) — for auto-steps, tool-based
|
|
201
|
+
// prepare cannot return directives. Log a warning.
|
|
202
|
+
logger.warn(`[FlowConfigurationError] Auto-step "${step.id}" has a tool-based prepare: tool-based prepare on auto-steps cannot return directives. ` +
|
|
203
|
+
`Use a function-based prepare hook instead.`);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
return merged;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Merge two directive-like objects. Later values override earlier ones
|
|
210
|
+
* for scalar fields; object fields (dataUpdate, contextUpdate) are deep-merged.
|
|
211
|
+
*/
|
|
212
|
+
mergeDirectives(base, incoming) {
|
|
213
|
+
if (!base)
|
|
214
|
+
return { ...incoming };
|
|
215
|
+
return {
|
|
216
|
+
dataUpdate: incoming.dataUpdate
|
|
217
|
+
? { ...(base.dataUpdate || {}), ...incoming.dataUpdate }
|
|
218
|
+
: base.dataUpdate,
|
|
219
|
+
contextUpdate: incoming.contextUpdate
|
|
220
|
+
? { ...(base.contextUpdate || {}), ...incoming.contextUpdate }
|
|
221
|
+
: base.contextUpdate,
|
|
222
|
+
halt: incoming.halt ?? base.halt,
|
|
223
|
+
reply: incoming.reply ?? base.reply,
|
|
224
|
+
goTo: incoming.goTo ?? base.goTo,
|
|
225
|
+
goToStep: incoming.goToStep ?? base.goToStep,
|
|
226
|
+
complete: incoming.complete ?? base.complete,
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Evaluate branches on an auto-step. Returns the target step/flow id
|
|
231
|
+
* if a branch matches, or undefined if no branch matched.
|
|
232
|
+
*
|
|
233
|
+
* This is a simplified evaluator for code-only (`if`) branches.
|
|
234
|
+
* AI-evaluated (`when`) branches are not supported in the auto-step
|
|
235
|
+
* context (no LLM call). If a branch entry has only `when`, it is skipped.
|
|
236
|
+
*/
|
|
237
|
+
async evaluateBranches(branches, session, context, history) {
|
|
238
|
+
for (let i = 0; i < branches.length; i++) {
|
|
239
|
+
const entry = branches[i];
|
|
240
|
+
// Unconditional entry (no `if` and no `when`) — must be last, always matches
|
|
241
|
+
if (!entry.if && !entry.when) {
|
|
242
|
+
return this.resolveBranchThen(entry.then);
|
|
243
|
+
}
|
|
244
|
+
// Code predicate evaluation
|
|
245
|
+
if (entry.if) {
|
|
246
|
+
const predicates = Array.isArray(entry.if) ? entry.if : [entry.if];
|
|
247
|
+
const predicateContext = { data: session.data, context, session, history };
|
|
248
|
+
let allPassed = true;
|
|
249
|
+
for (const predicate of predicates) {
|
|
250
|
+
if (typeof predicate === 'function') {
|
|
251
|
+
const result = await predicate(predicateContext);
|
|
252
|
+
if (!result) {
|
|
253
|
+
allPassed = false;
|
|
254
|
+
break;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
if (!allPassed)
|
|
259
|
+
continue;
|
|
260
|
+
// If entry also has `when`, skip it in auto-step context (no LLM available)
|
|
261
|
+
if (entry.when) {
|
|
262
|
+
logger.debug(`[AutoChainExecutor] Branch entry has 'when' condition — ` +
|
|
263
|
+
`skipping AI evaluation in auto-step context`);
|
|
264
|
+
continue;
|
|
265
|
+
}
|
|
266
|
+
return this.resolveBranchThen(entry.then);
|
|
267
|
+
}
|
|
268
|
+
// Entry has only `when` (AI condition) — skip in auto-step context
|
|
269
|
+
if (entry.when && !entry.if) {
|
|
270
|
+
continue;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
return undefined;
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Resolve a branch entry's `then` value to a string target.
|
|
277
|
+
* Handles both string targets and Directive objects.
|
|
278
|
+
*/
|
|
279
|
+
resolveBranchThen(then) {
|
|
280
|
+
if (typeof then === 'string') {
|
|
281
|
+
return then;
|
|
282
|
+
}
|
|
283
|
+
// Directive object — extract position field
|
|
284
|
+
if (then && typeof then === 'object') {
|
|
285
|
+
if (then.goToStep)
|
|
286
|
+
return then.goToStep;
|
|
287
|
+
if (then.goTo)
|
|
288
|
+
return then.goTo;
|
|
289
|
+
}
|
|
290
|
+
return undefined;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
//# sourceMappingURL=AutoChainExecutor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AutoChainExecutor.js","sourceRoot":"","sources":["../../src/core/AutoChainExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Branch Evaluator — Resolution Algorithm (Algorithm 2 from design.md)
|
|
3
|
+
*
|
|
4
|
+
* Pure function that evaluates a BranchMap in declaration order.
|
|
5
|
+
* Code-first evaluation: `if` predicates run before `when` (AI) conditions
|
|
6
|
+
* to save tokens. First matching entry wins.
|
|
7
|
+
*
|
|
8
|
+
* @module BranchEvaluator
|
|
9
|
+
*/
|
|
10
|
+
import type { BranchMap, BranchPredicateContext, Directive } from "../types/flow";
|
|
11
|
+
import type { AiProvider } from "../types/ai";
|
|
12
|
+
import type { Event } from "../types/history";
|
|
13
|
+
/**
|
|
14
|
+
* The AI condition evaluator function signature.
|
|
15
|
+
* Accepts an array of condition strings (AND semantics) and returns
|
|
16
|
+
* whether all conditions are satisfied.
|
|
17
|
+
*
|
|
18
|
+
* This is the same evaluation mechanism used by `step.when` — condition
|
|
19
|
+
* strings are evaluated by the AI provider against the conversation context.
|
|
20
|
+
*/
|
|
21
|
+
export type AiConditionEvaluator = (conditions: string[]) => Promise<boolean>;
|
|
22
|
+
/**
|
|
23
|
+
* Creates an `AiConditionEvaluator` bound to a provider and conversation context.
|
|
24
|
+
*
|
|
25
|
+
* Reuses the same evaluation pattern as `step.when` array forms: condition
|
|
26
|
+
* strings are passed to the AI provider for evaluation against the conversation
|
|
27
|
+
* history. No new prompt scaffolding — the provider evaluates whether the
|
|
28
|
+
* conditions are met based on the conversation so far.
|
|
29
|
+
*
|
|
30
|
+
* String form (`when: "some condition"`) is normalized to a single-element
|
|
31
|
+
* array by the caller (`evaluateBranches`) for uniformity before reaching
|
|
32
|
+
* this function.
|
|
33
|
+
*
|
|
34
|
+
* @param provider - The AI provider to use for condition evaluation
|
|
35
|
+
* @param history - Conversation history (events) for context
|
|
36
|
+
* @param context - Agent-level context
|
|
37
|
+
* @returns An `AiConditionEvaluator` function
|
|
38
|
+
*/
|
|
39
|
+
export declare function createAiConditionEvaluator<TContext = unknown>(provider: AiProvider, history: Event[], context: TContext): AiConditionEvaluator;
|
|
40
|
+
/**
|
|
41
|
+
* Evaluates a BranchMap in declaration order, returning the first matching
|
|
42
|
+
* entry's `then` value, or `undefined` if no entry matches.
|
|
43
|
+
*
|
|
44
|
+
* Resolution rules per entry:
|
|
45
|
+
* 1. Unconditional (no `when`, no `if`) → return `then` immediately.
|
|
46
|
+
* 2. `if` first: normalize to array, await each predicate, short-circuit on first falsy.
|
|
47
|
+
* 3. `when` second: only if `if` passed (or absent); call evaluateAi with condition strings.
|
|
48
|
+
* 4. Both passed (or only one set and it passed) → return `then`.
|
|
49
|
+
*
|
|
50
|
+
* Errors in predicates or AI evaluation are caught, logged at ERROR, and
|
|
51
|
+
* cause `evaluateBranches` to return `undefined` (graceful degradation).
|
|
52
|
+
*/
|
|
53
|
+
export declare function evaluateBranches<TContext = unknown, TData = unknown>(branches: BranchMap<TContext, TData>, ctx: BranchPredicateContext<TContext, TData>, evaluateAi: AiConditionEvaluator): Promise<string | Directive<TContext, TData> | undefined>;
|
|
54
|
+
//# sourceMappingURL=BranchEvaluator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BranchEvaluator.d.ts","sourceRoot":"","sources":["../../src/core/BranchEvaluator.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACR,SAAS,EAET,sBAAsB,EACtB,SAAS,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAG9C;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,GAAG,OAAO,EACzD,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,KAAK,EAAE,EAChB,OAAO,EAAE,QAAQ,GAClB,oBAAoB,CAyCtB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO,EACtE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,EACpC,GAAG,EAAE,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAC5C,UAAU,EAAE,oBAAoB,GACjC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC,CAuD1D"}
|