@falai/agent 3.4.3 → 3.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/dist/cjs/adapters/MemoryAdapter.d.ts +47 -0
  2. package/dist/cjs/adapters/MemoryAdapter.d.ts.map +1 -0
  3. package/dist/cjs/adapters/MemoryAdapter.js +208 -0
  4. package/dist/cjs/adapters/MemoryAdapter.js.map +1 -0
  5. package/dist/cjs/adapters/MongoAdapter.d.ts +97 -0
  6. package/dist/cjs/adapters/MongoAdapter.d.ts.map +1 -0
  7. package/dist/cjs/adapters/MongoAdapter.js +200 -0
  8. package/dist/cjs/adapters/MongoAdapter.js.map +1 -0
  9. package/dist/cjs/adapters/OpenSearchAdapter.d.ts +169 -0
  10. package/dist/cjs/adapters/OpenSearchAdapter.d.ts.map +1 -0
  11. package/dist/cjs/adapters/OpenSearchAdapter.js +475 -0
  12. package/dist/cjs/adapters/OpenSearchAdapter.js.map +1 -0
  13. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts +85 -0
  14. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts.map +1 -0
  15. package/dist/cjs/adapters/PostgreSQLAdapter.js +312 -0
  16. package/dist/cjs/adapters/PostgreSQLAdapter.js.map +1 -0
  17. package/dist/cjs/adapters/PrismaAdapter.d.ts +115 -0
  18. package/dist/cjs/adapters/PrismaAdapter.d.ts.map +1 -0
  19. package/dist/cjs/adapters/PrismaAdapter.js +410 -0
  20. package/dist/cjs/adapters/PrismaAdapter.js.map +1 -0
  21. package/dist/cjs/adapters/RedisAdapter.d.ts +72 -0
  22. package/dist/cjs/adapters/RedisAdapter.d.ts.map +1 -0
  23. package/dist/cjs/adapters/RedisAdapter.js +290 -0
  24. package/dist/cjs/adapters/RedisAdapter.js.map +1 -0
  25. package/dist/cjs/adapters/SQLiteAdapter.d.ts +86 -0
  26. package/dist/cjs/adapters/SQLiteAdapter.d.ts.map +1 -0
  27. package/dist/cjs/adapters/SQLiteAdapter.js +341 -0
  28. package/dist/cjs/adapters/SQLiteAdapter.js.map +1 -0
  29. package/dist/cjs/adapters/index.d.ts +17 -0
  30. package/dist/cjs/adapters/index.d.ts.map +1 -0
  31. package/dist/cjs/adapters/index.js +21 -0
  32. package/dist/cjs/adapters/index.js.map +1 -0
  33. package/dist/cjs/adapters/sessionRow.d.ts +22 -0
  34. package/dist/cjs/adapters/sessionRow.d.ts.map +1 -0
  35. package/dist/cjs/adapters/sessionRow.js +52 -0
  36. package/dist/cjs/adapters/sessionRow.js.map +1 -0
  37. package/dist/cjs/constants/index.d.ts +1 -0
  38. package/dist/cjs/constants/index.d.ts.map +1 -0
  39. package/dist/cjs/constants/index.js +4 -0
  40. package/dist/cjs/constants/index.js.map +1 -0
  41. package/dist/cjs/core/Agent.d.ts +382 -0
  42. package/dist/cjs/core/Agent.d.ts.map +1 -0
  43. package/dist/cjs/core/Agent.js +1198 -0
  44. package/dist/cjs/core/Agent.js.map +1 -0
  45. package/dist/cjs/core/ResponseModal.d.ts +305 -0
  46. package/dist/cjs/core/ResponseModal.d.ts.map +1 -0
  47. package/dist/cjs/core/ResponseModal.js +1414 -0
  48. package/dist/cjs/core/ResponseModal.js.map +1 -0
  49. package/dist/cjs/core/ToolLoopExecutor.d.ts +133 -0
  50. package/dist/cjs/core/ToolLoopExecutor.d.ts.map +1 -0
  51. package/dist/cjs/core/ToolLoopExecutor.js +568 -0
  52. package/dist/cjs/core/ToolLoopExecutor.js.map +1 -0
  53. package/dist/cjs/core/createAgent.d.ts +35 -0
  54. package/dist/cjs/core/createAgent.d.ts.map +1 -0
  55. package/dist/cjs/core/createAgent.js +39 -0
  56. package/dist/cjs/core/createAgent.js.map +1 -0
  57. package/dist/cjs/index.d.ts +61 -0
  58. package/dist/cjs/index.d.ts.map +1 -0
  59. package/dist/cjs/index.js +113 -0
  60. package/dist/cjs/index.js.map +1 -0
  61. package/dist/cjs/package.json +1 -0
  62. package/dist/cjs/providers/AnthropicProvider.d.ts +46 -0
  63. package/dist/cjs/providers/AnthropicProvider.d.ts.map +1 -0
  64. package/dist/cjs/providers/AnthropicProvider.js +50 -0
  65. package/dist/cjs/providers/AnthropicProvider.js.map +1 -0
  66. package/dist/cjs/providers/DeepSeekProvider.d.ts +47 -0
  67. package/dist/cjs/providers/DeepSeekProvider.d.ts.map +1 -0
  68. package/dist/cjs/providers/DeepSeekProvider.js +42 -0
  69. package/dist/cjs/providers/DeepSeekProvider.js.map +1 -0
  70. package/dist/cjs/providers/FallbackAiProvider.d.ts +26 -0
  71. package/dist/cjs/providers/FallbackAiProvider.d.ts.map +1 -0
  72. package/dist/cjs/providers/FallbackAiProvider.js +54 -0
  73. package/dist/cjs/providers/FallbackAiProvider.js.map +1 -0
  74. package/dist/cjs/providers/GeminiProvider.d.ts +51 -0
  75. package/dist/cjs/providers/GeminiProvider.d.ts.map +1 -0
  76. package/dist/cjs/providers/GeminiProvider.js +53 -0
  77. package/dist/cjs/providers/GeminiProvider.js.map +1 -0
  78. package/dist/cjs/providers/GenericOpenAICompatibleProvider.d.ts +80 -0
  79. package/dist/cjs/providers/GenericOpenAICompatibleProvider.d.ts.map +1 -0
  80. package/dist/cjs/providers/GenericOpenAICompatibleProvider.js +89 -0
  81. package/dist/cjs/providers/GenericOpenAICompatibleProvider.js.map +1 -0
  82. package/dist/cjs/providers/OpenAICompatibleProvider.d.ts +61 -0
  83. package/dist/cjs/providers/OpenAICompatibleProvider.d.ts.map +1 -0
  84. package/dist/cjs/providers/OpenAICompatibleProvider.js +58 -0
  85. package/dist/cjs/providers/OpenAICompatibleProvider.js.map +1 -0
  86. package/dist/cjs/providers/OpenAIProvider.d.ts +40 -0
  87. package/dist/cjs/providers/OpenAIProvider.d.ts.map +1 -0
  88. package/dist/cjs/providers/OpenAIProvider.js +42 -0
  89. package/dist/cjs/providers/OpenAIProvider.js.map +1 -0
  90. package/dist/cjs/providers/OpenRouterProvider.d.ts +56 -0
  91. package/dist/cjs/providers/OpenRouterProvider.d.ts.map +1 -0
  92. package/dist/cjs/providers/OpenRouterProvider.js +45 -0
  93. package/dist/cjs/providers/OpenRouterProvider.js.map +1 -0
  94. package/dist/cjs/providers/ProviderAdapter.d.ts +126 -0
  95. package/dist/cjs/providers/ProviderAdapter.d.ts.map +1 -0
  96. package/dist/cjs/providers/ProviderAdapter.js +313 -0
  97. package/dist/cjs/providers/ProviderAdapter.js.map +1 -0
  98. package/dist/cjs/providers/ZaiProvider.d.ts +45 -0
  99. package/dist/cjs/providers/ZaiProvider.d.ts.map +1 -0
  100. package/dist/cjs/providers/ZaiProvider.js +51 -0
  101. package/dist/cjs/providers/ZaiProvider.js.map +1 -0
  102. package/dist/cjs/providers/index.d.ts +26 -0
  103. package/dist/cjs/providers/index.d.ts.map +1 -0
  104. package/dist/cjs/providers/index.js +30 -0
  105. package/dist/cjs/providers/index.js.map +1 -0
  106. package/dist/cjs/utils/streamingMessage.d.ts +48 -0
  107. package/dist/cjs/utils/streamingMessage.d.ts.map +1 -0
  108. package/dist/cjs/utils/streamingMessage.js +210 -0
  109. package/dist/cjs/utils/streamingMessage.js.map +1 -0
  110. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseModal.js","sourceRoot":"","sources":["../../../src/core/ResponseModal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,133 @@
1
+ /**
2
+ * ToolLoopExecutor owns dynamic tool execution during response generation:
3
+ *
4
+ * - `runLoop()` — the run-tools-then-ask-LLM-again follow-up loop used by the
5
+ * non-streaming path (and as the streaming fallback): executes the initial
6
+ * tool calls sequentially, asks the provider whether more tools are needed,
7
+ * reconstructs tool-result history items, and forces a final text response
8
+ * when tools ran but no message was produced.
9
+ * - `runStreamingBatch()` — the streaming path's initial batch execution via
10
+ * ToolManager.executeWithConcurrency (StreamingToolExecutor concurrency
11
+ * rules), yielding tool-progress chunks; falls back to `runLoop()` when
12
+ * concurrent execution fails.
13
+ *
14
+ * ToolManager remains the registry/resolver and single-tool executor.
15
+ */
16
+ import type { AgentOptions, AgentResponseStreamChunk, AgentStructuredResponse, Directive, HistoryItem, SessionState } from "../types/index.js";
17
+ import type { Flow } from "./Flow.js";
18
+ import type { Step } from "./Step.js";
19
+ import type { ToolManager } from "./ToolManager.js";
20
+ export declare class ToolLoopExecutor<TContext = unknown, TData = unknown> {
21
+ private readonly deps;
22
+ constructor(deps: {
23
+ toolManager: ToolManager<TContext, TData>;
24
+ getAgentOptions: () => AgentOptions<TContext, TData>;
25
+ updateContext: (updates: Partial<TContext>) => Promise<void>;
26
+ updateCollectedData: (updates: Partial<TData>) => Promise<void>;
27
+ updateSessionData: (session: SessionState<TData>, dataUpdate: Partial<TData>) => Promise<SessionState<TData>>;
28
+ /** Maximum number of tool loops (defaults to 5). */
29
+ maxToolLoops?: number;
30
+ });
31
+ /**
32
+ * Unified tool execution logic with loop handling.
33
+ * Consolidates the complex tool execution logic from both streaming and
34
+ * non-streaming responses.
35
+ */
36
+ runLoop(params: {
37
+ toolCalls?: Array<{
38
+ toolName: string;
39
+ arguments: Record<string, unknown>;
40
+ }>;
41
+ context: TContext;
42
+ session: SessionState<TData>;
43
+ history: HistoryItem[];
44
+ selectedFlow?: Flow<TContext, TData>;
45
+ responsePrompt: string;
46
+ availableTools: Array<{
47
+ id: string;
48
+ name: string;
49
+ description?: string;
50
+ parameters?: unknown;
51
+ }>;
52
+ responseSchema?: Record<string, unknown>;
53
+ signal?: AbortSignal;
54
+ }): Promise<{
55
+ session: SessionState<TData>;
56
+ finalToolCalls?: Array<{
57
+ toolName: string;
58
+ arguments: Record<string, unknown>;
59
+ }>;
60
+ finalMessage?: string;
61
+ structured?: AgentStructuredResponse;
62
+ /** Directives emitted by tools this turn (ctx.dispatch / `{directive}` returns), merged. */
63
+ directives?: Directive<TContext, TData>;
64
+ }>;
65
+ /**
66
+ * The multi-round follow-up loop shared by the non-streaming (`runLoop`) and
67
+ * streaming (`runStreamingBatch`) tool paths: re-prompt the model with the
68
+ * tool results (tools available on the first round so it can chain further
69
+ * calls), execute any further tool calls, repeat up to `maxToolLoops`, then
70
+ * force a result-aware closing message if the model never produced one.
71
+ * Callers run the *initial* batch — sequentially for `runLoop`, concurrently
72
+ * (with progress) for `runStreamingBatch` — and pass the populated result
73
+ * maps; from here both paths behave identically.
74
+ */
75
+ private runFollowUpLoop;
76
+ /**
77
+ * After tools have executed but the model produced no closing text, make one
78
+ * more LLM call (no tools) that turns the tool results into a user-facing
79
+ * message. Shared by the non-streaming tool loop and the streaming batch so
80
+ * both paths behave identically. Returns an empty object if the call fails
81
+ * or yields nothing, leaving the caller to fall back to its prior message.
82
+ */
83
+ private forceFinalTextFromTools;
84
+ /**
85
+ * Execute the streaming path's initial batch of tool calls concurrently
86
+ * via ToolManager.executeWithConcurrency, yielding tool-progress chunks.
87
+ * When tools ran but the model produced no closing text, forces a final
88
+ * text response from the tool results (mirroring `runLoop()`). Falls back
89
+ * to `runLoop()` when concurrent execution fails.
90
+ *
91
+ * Returns the updated session, final tool calls, and any forced closing
92
+ * message/structured response.
93
+ */
94
+ runStreamingBatch(params: {
95
+ toolCalls: Array<{
96
+ toolName: string;
97
+ arguments: Record<string, unknown>;
98
+ }>;
99
+ context: TContext;
100
+ session: SessionState<TData>;
101
+ history: HistoryItem[];
102
+ selectedFlow: Flow<TContext, TData>;
103
+ step: Step<TContext, TData>;
104
+ /** Accumulated text of the LLM's final chunk, echoed on progress chunks. */
105
+ accumulated: string;
106
+ responsePrompt: string;
107
+ availableTools: Array<{
108
+ id: string;
109
+ name: string;
110
+ description?: string;
111
+ parameters?: unknown;
112
+ }>;
113
+ responseSchema?: Record<string, unknown>;
114
+ signal?: AbortSignal;
115
+ }): AsyncGenerator<AgentResponseStreamChunk<TData>, {
116
+ session: SessionState<TData>;
117
+ toolCalls: Array<{
118
+ toolName: string;
119
+ arguments: Record<string, unknown>;
120
+ }> | undefined;
121
+ /** Closing message forced from the tool results, if one was generated. */
122
+ finalMessage?: string;
123
+ structured?: AgentStructuredResponse;
124
+ /** Directives emitted by tools this turn (ctx.dispatch / `{directive}` returns), merged. */
125
+ directives?: Directive<TContext, TData>;
126
+ }>;
127
+ /**
128
+ * Find an available tool by name for the given flow.
129
+ * Delegates to ToolManager for unified tool resolution.
130
+ */
131
+ private findAvailableTool;
132
+ }
133
+ //# sourceMappingURL=ToolLoopExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolLoopExecutor.d.ts","sourceRoot":"","sources":["../../../src/core/ToolLoopExecutor.ts"],"names":[],"mappings":"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"}