@lleverage-ai/agent-sdk 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2321 -0
  3. package/dist/agent.d.ts +52 -0
  4. package/dist/agent.d.ts.map +1 -0
  5. package/dist/agent.js +2122 -0
  6. package/dist/agent.js.map +1 -0
  7. package/dist/backend.d.ts +378 -0
  8. package/dist/backend.d.ts.map +1 -0
  9. package/dist/backend.js +71 -0
  10. package/dist/backend.js.map +1 -0
  11. package/dist/backends/composite.d.ts +258 -0
  12. package/dist/backends/composite.d.ts.map +1 -0
  13. package/dist/backends/composite.js +437 -0
  14. package/dist/backends/composite.js.map +1 -0
  15. package/dist/backends/filesystem.d.ts +268 -0
  16. package/dist/backends/filesystem.d.ts.map +1 -0
  17. package/dist/backends/filesystem.js +623 -0
  18. package/dist/backends/filesystem.js.map +1 -0
  19. package/dist/backends/index.d.ts +14 -0
  20. package/dist/backends/index.d.ts.map +1 -0
  21. package/dist/backends/index.js +14 -0
  22. package/dist/backends/index.js.map +1 -0
  23. package/dist/backends/persistent.d.ts +312 -0
  24. package/dist/backends/persistent.d.ts.map +1 -0
  25. package/dist/backends/persistent.js +519 -0
  26. package/dist/backends/persistent.js.map +1 -0
  27. package/dist/backends/sandbox.d.ts +315 -0
  28. package/dist/backends/sandbox.d.ts.map +1 -0
  29. package/dist/backends/sandbox.js +490 -0
  30. package/dist/backends/sandbox.js.map +1 -0
  31. package/dist/backends/state.d.ts +225 -0
  32. package/dist/backends/state.d.ts.map +1 -0
  33. package/dist/backends/state.js +396 -0
  34. package/dist/backends/state.js.map +1 -0
  35. package/dist/checkpointer/file-saver.d.ts +182 -0
  36. package/dist/checkpointer/file-saver.d.ts.map +1 -0
  37. package/dist/checkpointer/file-saver.js +298 -0
  38. package/dist/checkpointer/file-saver.js.map +1 -0
  39. package/dist/checkpointer/index.d.ts +40 -0
  40. package/dist/checkpointer/index.d.ts.map +1 -0
  41. package/dist/checkpointer/index.js +40 -0
  42. package/dist/checkpointer/index.js.map +1 -0
  43. package/dist/checkpointer/kv-saver.d.ts +142 -0
  44. package/dist/checkpointer/kv-saver.d.ts.map +1 -0
  45. package/dist/checkpointer/kv-saver.js +176 -0
  46. package/dist/checkpointer/kv-saver.js.map +1 -0
  47. package/dist/checkpointer/memory-saver.d.ts +158 -0
  48. package/dist/checkpointer/memory-saver.d.ts.map +1 -0
  49. package/dist/checkpointer/memory-saver.js +222 -0
  50. package/dist/checkpointer/memory-saver.js.map +1 -0
  51. package/dist/checkpointer/types.d.ts +353 -0
  52. package/dist/checkpointer/types.d.ts.map +1 -0
  53. package/dist/checkpointer/types.js +159 -0
  54. package/dist/checkpointer/types.js.map +1 -0
  55. package/dist/context-manager.d.ts +627 -0
  56. package/dist/context-manager.d.ts.map +1 -0
  57. package/dist/context-manager.js +1039 -0
  58. package/dist/context-manager.js.map +1 -0
  59. package/dist/context.d.ts +57 -0
  60. package/dist/context.d.ts.map +1 -0
  61. package/dist/context.js +76 -0
  62. package/dist/context.js.map +1 -0
  63. package/dist/errors/index.d.ts +611 -0
  64. package/dist/errors/index.d.ts.map +1 -0
  65. package/dist/errors/index.js +1023 -0
  66. package/dist/errors/index.js.map +1 -0
  67. package/dist/generation-helpers.d.ts +126 -0
  68. package/dist/generation-helpers.d.ts.map +1 -0
  69. package/dist/generation-helpers.js +181 -0
  70. package/dist/generation-helpers.js.map +1 -0
  71. package/dist/hooks/audit.d.ts +210 -0
  72. package/dist/hooks/audit.d.ts.map +1 -0
  73. package/dist/hooks/audit.js +305 -0
  74. package/dist/hooks/audit.js.map +1 -0
  75. package/dist/hooks/cache.d.ts +180 -0
  76. package/dist/hooks/cache.d.ts.map +1 -0
  77. package/dist/hooks/cache.js +273 -0
  78. package/dist/hooks/cache.js.map +1 -0
  79. package/dist/hooks/guardrails.d.ts +145 -0
  80. package/dist/hooks/guardrails.d.ts.map +1 -0
  81. package/dist/hooks/guardrails.js +326 -0
  82. package/dist/hooks/guardrails.js.map +1 -0
  83. package/dist/hooks/index.d.ts +18 -0
  84. package/dist/hooks/index.d.ts.map +1 -0
  85. package/dist/hooks/index.js +32 -0
  86. package/dist/hooks/index.js.map +1 -0
  87. package/dist/hooks/logging.d.ts +193 -0
  88. package/dist/hooks/logging.d.ts.map +1 -0
  89. package/dist/hooks/logging.js +345 -0
  90. package/dist/hooks/logging.js.map +1 -0
  91. package/dist/hooks/parallel-guardrails.d.ts +268 -0
  92. package/dist/hooks/parallel-guardrails.d.ts.map +1 -0
  93. package/dist/hooks/parallel-guardrails.js +416 -0
  94. package/dist/hooks/parallel-guardrails.js.map +1 -0
  95. package/dist/hooks/rate-limit.d.ts +305 -0
  96. package/dist/hooks/rate-limit.d.ts.map +1 -0
  97. package/dist/hooks/rate-limit.js +372 -0
  98. package/dist/hooks/rate-limit.js.map +1 -0
  99. package/dist/hooks/retry.d.ts +144 -0
  100. package/dist/hooks/retry.d.ts.map +1 -0
  101. package/dist/hooks/retry.js +210 -0
  102. package/dist/hooks/retry.js.map +1 -0
  103. package/dist/hooks/secrets.d.ts +174 -0
  104. package/dist/hooks/secrets.d.ts.map +1 -0
  105. package/dist/hooks/secrets.js +306 -0
  106. package/dist/hooks/secrets.js.map +1 -0
  107. package/dist/hooks.d.ts +229 -0
  108. package/dist/hooks.d.ts.map +1 -0
  109. package/dist/hooks.js +352 -0
  110. package/dist/hooks.js.map +1 -0
  111. package/dist/index.d.ts +97 -0
  112. package/dist/index.d.ts.map +1 -0
  113. package/dist/index.js +182 -0
  114. package/dist/index.js.map +1 -0
  115. package/dist/mcp/env.d.ts +25 -0
  116. package/dist/mcp/env.d.ts.map +1 -0
  117. package/dist/mcp/env.js +18 -0
  118. package/dist/mcp/env.js.map +1 -0
  119. package/dist/mcp/index.d.ts +16 -0
  120. package/dist/mcp/index.d.ts.map +1 -0
  121. package/dist/mcp/index.js +17 -0
  122. package/dist/mcp/index.js.map +1 -0
  123. package/dist/mcp/manager.d.ts +184 -0
  124. package/dist/mcp/manager.d.ts.map +1 -0
  125. package/dist/mcp/manager.js +446 -0
  126. package/dist/mcp/manager.js.map +1 -0
  127. package/dist/mcp/types.d.ts +58 -0
  128. package/dist/mcp/types.d.ts.map +1 -0
  129. package/dist/mcp/types.js +7 -0
  130. package/dist/mcp/types.js.map +1 -0
  131. package/dist/mcp/validation.d.ts +119 -0
  132. package/dist/mcp/validation.d.ts.map +1 -0
  133. package/dist/mcp/validation.js +407 -0
  134. package/dist/mcp/validation.js.map +1 -0
  135. package/dist/mcp/virtual-server.d.ts +78 -0
  136. package/dist/mcp/virtual-server.d.ts.map +1 -0
  137. package/dist/mcp/virtual-server.js +137 -0
  138. package/dist/mcp/virtual-server.js.map +1 -0
  139. package/dist/memory/filesystem-store.d.ts +217 -0
  140. package/dist/memory/filesystem-store.d.ts.map +1 -0
  141. package/dist/memory/filesystem-store.js +343 -0
  142. package/dist/memory/filesystem-store.js.map +1 -0
  143. package/dist/memory/index.d.ts +46 -0
  144. package/dist/memory/index.d.ts.map +1 -0
  145. package/dist/memory/index.js +46 -0
  146. package/dist/memory/index.js.map +1 -0
  147. package/dist/memory/loader.d.ts +396 -0
  148. package/dist/memory/loader.d.ts.map +1 -0
  149. package/dist/memory/loader.js +419 -0
  150. package/dist/memory/loader.js.map +1 -0
  151. package/dist/memory/permissions.d.ts +282 -0
  152. package/dist/memory/permissions.d.ts.map +1 -0
  153. package/dist/memory/permissions.js +297 -0
  154. package/dist/memory/permissions.js.map +1 -0
  155. package/dist/memory/rules.d.ts +249 -0
  156. package/dist/memory/rules.d.ts.map +1 -0
  157. package/dist/memory/rules.js +362 -0
  158. package/dist/memory/rules.js.map +1 -0
  159. package/dist/memory/store.d.ts +286 -0
  160. package/dist/memory/store.d.ts.map +1 -0
  161. package/dist/memory/store.js +263 -0
  162. package/dist/memory/store.js.map +1 -0
  163. package/dist/middleware/apply.d.ts +73 -0
  164. package/dist/middleware/apply.d.ts.map +1 -0
  165. package/dist/middleware/apply.js +219 -0
  166. package/dist/middleware/apply.js.map +1 -0
  167. package/dist/middleware/context.d.ts +33 -0
  168. package/dist/middleware/context.d.ts.map +1 -0
  169. package/dist/middleware/context.js +176 -0
  170. package/dist/middleware/context.js.map +1 -0
  171. package/dist/middleware/index.d.ts +31 -0
  172. package/dist/middleware/index.d.ts.map +1 -0
  173. package/dist/middleware/index.js +32 -0
  174. package/dist/middleware/index.js.map +1 -0
  175. package/dist/middleware/logging.d.ts +137 -0
  176. package/dist/middleware/logging.d.ts.map +1 -0
  177. package/dist/middleware/logging.js +374 -0
  178. package/dist/middleware/logging.js.map +1 -0
  179. package/dist/middleware/types.d.ts +183 -0
  180. package/dist/middleware/types.d.ts.map +1 -0
  181. package/dist/middleware/types.js +11 -0
  182. package/dist/middleware/types.js.map +1 -0
  183. package/dist/observability/events.d.ts +183 -0
  184. package/dist/observability/events.d.ts.map +1 -0
  185. package/dist/observability/events.js +305 -0
  186. package/dist/observability/events.js.map +1 -0
  187. package/dist/observability/index.d.ts +55 -0
  188. package/dist/observability/index.d.ts.map +1 -0
  189. package/dist/observability/index.js +87 -0
  190. package/dist/observability/index.js.map +1 -0
  191. package/dist/observability/logger.d.ts +318 -0
  192. package/dist/observability/logger.d.ts.map +1 -0
  193. package/dist/observability/logger.js +436 -0
  194. package/dist/observability/logger.js.map +1 -0
  195. package/dist/observability/metrics.d.ts +341 -0
  196. package/dist/observability/metrics.d.ts.map +1 -0
  197. package/dist/observability/metrics.js +490 -0
  198. package/dist/observability/metrics.js.map +1 -0
  199. package/dist/observability/preset.d.ts +161 -0
  200. package/dist/observability/preset.d.ts.map +1 -0
  201. package/dist/observability/preset.js +133 -0
  202. package/dist/observability/preset.js.map +1 -0
  203. package/dist/observability/streaming.d.ts +113 -0
  204. package/dist/observability/streaming.d.ts.map +1 -0
  205. package/dist/observability/streaming.js +114 -0
  206. package/dist/observability/streaming.js.map +1 -0
  207. package/dist/observability/tracing.d.ts +378 -0
  208. package/dist/observability/tracing.d.ts.map +1 -0
  209. package/dist/observability/tracing.js +539 -0
  210. package/dist/observability/tracing.js.map +1 -0
  211. package/dist/plugins.d.ts +55 -0
  212. package/dist/plugins.d.ts.map +1 -0
  213. package/dist/plugins.js +63 -0
  214. package/dist/plugins.js.map +1 -0
  215. package/dist/presets/index.d.ts +7 -0
  216. package/dist/presets/index.d.ts.map +1 -0
  217. package/dist/presets/index.js +7 -0
  218. package/dist/presets/index.js.map +1 -0
  219. package/dist/presets/production.d.ts +262 -0
  220. package/dist/presets/production.d.ts.map +1 -0
  221. package/dist/presets/production.js +295 -0
  222. package/dist/presets/production.js.map +1 -0
  223. package/dist/security/index.d.ts +179 -0
  224. package/dist/security/index.d.ts.map +1 -0
  225. package/dist/security/index.js +323 -0
  226. package/dist/security/index.js.map +1 -0
  227. package/dist/subagents/advanced.d.ts +413 -0
  228. package/dist/subagents/advanced.d.ts.map +1 -0
  229. package/dist/subagents/advanced.js +396 -0
  230. package/dist/subagents/advanced.js.map +1 -0
  231. package/dist/subagents/index.d.ts +14 -0
  232. package/dist/subagents/index.d.ts.map +1 -0
  233. package/dist/subagents/index.js +15 -0
  234. package/dist/subagents/index.js.map +1 -0
  235. package/dist/subagents.d.ts +73 -0
  236. package/dist/subagents.d.ts.map +1 -0
  237. package/dist/subagents.js +213 -0
  238. package/dist/subagents.js.map +1 -0
  239. package/dist/task-store/file-store.d.ts +76 -0
  240. package/dist/task-store/file-store.d.ts.map +1 -0
  241. package/dist/task-store/file-store.js +190 -0
  242. package/dist/task-store/file-store.js.map +1 -0
  243. package/dist/task-store/index.d.ts +11 -0
  244. package/dist/task-store/index.d.ts.map +1 -0
  245. package/dist/task-store/index.js +10 -0
  246. package/dist/task-store/index.js.map +1 -0
  247. package/dist/task-store/kv-store.d.ts +140 -0
  248. package/dist/task-store/kv-store.d.ts.map +1 -0
  249. package/dist/task-store/kv-store.js +169 -0
  250. package/dist/task-store/kv-store.js.map +1 -0
  251. package/dist/task-store/memory-store.d.ts +66 -0
  252. package/dist/task-store/memory-store.d.ts.map +1 -0
  253. package/dist/task-store/memory-store.js +125 -0
  254. package/dist/task-store/memory-store.js.map +1 -0
  255. package/dist/task-store/types.d.ts +235 -0
  256. package/dist/task-store/types.d.ts.map +1 -0
  257. package/dist/task-store/types.js +110 -0
  258. package/dist/task-store/types.js.map +1 -0
  259. package/dist/testing/assertions.d.ts +401 -0
  260. package/dist/testing/assertions.d.ts.map +1 -0
  261. package/dist/testing/assertions.js +630 -0
  262. package/dist/testing/assertions.js.map +1 -0
  263. package/dist/testing/index.d.ts +343 -0
  264. package/dist/testing/index.d.ts.map +1 -0
  265. package/dist/testing/index.js +360 -0
  266. package/dist/testing/index.js.map +1 -0
  267. package/dist/testing/mock-agent.d.ts +214 -0
  268. package/dist/testing/mock-agent.d.ts.map +1 -0
  269. package/dist/testing/mock-agent.js +448 -0
  270. package/dist/testing/mock-agent.js.map +1 -0
  271. package/dist/testing/recorder.d.ts +288 -0
  272. package/dist/testing/recorder.d.ts.map +1 -0
  273. package/dist/testing/recorder.js +499 -0
  274. package/dist/testing/recorder.js.map +1 -0
  275. package/dist/tools/execute.d.ts +104 -0
  276. package/dist/tools/execute.d.ts.map +1 -0
  277. package/dist/tools/execute.js +191 -0
  278. package/dist/tools/execute.js.map +1 -0
  279. package/dist/tools/factory.d.ts +260 -0
  280. package/dist/tools/factory.d.ts.map +1 -0
  281. package/dist/tools/factory.js +241 -0
  282. package/dist/tools/factory.js.map +1 -0
  283. package/dist/tools/filesystem.d.ts +215 -0
  284. package/dist/tools/filesystem.d.ts.map +1 -0
  285. package/dist/tools/filesystem.js +311 -0
  286. package/dist/tools/filesystem.js.map +1 -0
  287. package/dist/tools/index.d.ts +33 -0
  288. package/dist/tools/index.d.ts.map +1 -0
  289. package/dist/tools/index.js +33 -0
  290. package/dist/tools/index.js.map +1 -0
  291. package/dist/tools/search.d.ts +59 -0
  292. package/dist/tools/search.d.ts.map +1 -0
  293. package/dist/tools/search.js +94 -0
  294. package/dist/tools/search.js.map +1 -0
  295. package/dist/tools/skills.d.ts +354 -0
  296. package/dist/tools/skills.d.ts.map +1 -0
  297. package/dist/tools/skills.js +413 -0
  298. package/dist/tools/skills.js.map +1 -0
  299. package/dist/tools/task.d.ts +272 -0
  300. package/dist/tools/task.d.ts.map +1 -0
  301. package/dist/tools/task.js +521 -0
  302. package/dist/tools/task.js.map +1 -0
  303. package/dist/tools/todos.d.ts +131 -0
  304. package/dist/tools/todos.d.ts.map +1 -0
  305. package/dist/tools/todos.js +120 -0
  306. package/dist/tools/todos.js.map +1 -0
  307. package/dist/tools/tool-registry.d.ts +424 -0
  308. package/dist/tools/tool-registry.d.ts.map +1 -0
  309. package/dist/tools/tool-registry.js +607 -0
  310. package/dist/tools/tool-registry.js.map +1 -0
  311. package/dist/tools/user-interaction.d.ts +116 -0
  312. package/dist/tools/user-interaction.d.ts.map +1 -0
  313. package/dist/tools/user-interaction.js +147 -0
  314. package/dist/tools/user-interaction.js.map +1 -0
  315. package/dist/tools/utils.d.ts +124 -0
  316. package/dist/tools/utils.d.ts.map +1 -0
  317. package/dist/tools/utils.js +189 -0
  318. package/dist/tools/utils.js.map +1 -0
  319. package/dist/tools.d.ts +74 -0
  320. package/dist/tools.d.ts.map +1 -0
  321. package/dist/tools.js +73 -0
  322. package/dist/tools.js.map +1 -0
  323. package/dist/types.d.ts +2421 -0
  324. package/dist/types.d.ts.map +1 -0
  325. package/dist/types.js +55 -0
  326. package/dist/types.js.map +1 -0
  327. package/package.json +81 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * Shared helpers for generation methods (generate, stream, streamResponse, etc.)
3
+ *
4
+ * These helpers extract common retry/hook handling patterns to ensure consistent
5
+ * behavior across all generation methods and reduce code duplication.
6
+ *
7
+ * @packageDocumentation
8
+ * @internal
9
+ */
10
+ import type { LanguageModel } from "ai";
11
+ import { AgentError } from "./errors/index.js";
12
+ import type { Agent, GenerateOptions, GenerateResult, HookCallback } from "./types.js";
13
+ /**
14
+ * Default maximum number of retry attempts for generation methods.
15
+ * @internal
16
+ */
17
+ export declare const DEFAULT_MAX_RETRIES = 10;
18
+ /**
19
+ * State for the retry loop used by generation methods.
20
+ * @internal
21
+ */
22
+ export interface RetryLoopState {
23
+ /** Current retry attempt (0 = first attempt) */
24
+ retryAttempt: number;
25
+ /** Maximum number of retries allowed */
26
+ maxRetries: number;
27
+ /** Current model being used (may change to fallback) */
28
+ currentModel: LanguageModel;
29
+ /** Whether fallback model has been used */
30
+ usedFallback: boolean;
31
+ }
32
+ /**
33
+ * Result of invoking PreGenerate hooks.
34
+ * @internal
35
+ */
36
+ export interface PreGenerateHookResult<T = GenerateResult> {
37
+ /** Effective options after hook transformations */
38
+ effectiveOptions: GenerateOptions;
39
+ /** Cached result from respondWith (if provided by a hook) */
40
+ cachedResult?: T;
41
+ }
42
+ /**
43
+ * Decision from error handling (PostGenerateFailure hooks + fallback logic).
44
+ * @internal
45
+ */
46
+ export interface ErrorHandlingDecision {
47
+ /** Whether to retry the operation */
48
+ shouldRetry: boolean;
49
+ /** Delay in ms before retrying (0 if no delay) */
50
+ retryDelayMs: number;
51
+ /** Updated model to use (if switched to fallback) */
52
+ updatedModel?: LanguageModel;
53
+ /** Whether fallback was just activated */
54
+ activatedFallback?: boolean;
55
+ }
56
+ /**
57
+ * Creates initial state for the retry loop.
58
+ *
59
+ * @param model - The primary model to use
60
+ * @param maxRetries - Maximum retry attempts (default: 10)
61
+ * @returns Initial retry loop state
62
+ *
63
+ * @internal
64
+ */
65
+ export declare function createRetryLoopState(model: LanguageModel, maxRetries?: number): RetryLoopState;
66
+ /**
67
+ * Invokes PreGenerate hooks and returns the effective options.
68
+ *
69
+ * This handles:
70
+ * - Cache short-circuit via respondWith
71
+ * - Input transformation via updatedInput
72
+ *
73
+ * @param hooks - PreGenerate hook callbacks
74
+ * @param genOptions - Original generation options
75
+ * @param agent - The agent instance
76
+ * @returns Result containing effective options and optional cached result
77
+ *
78
+ * @internal
79
+ */
80
+ export declare function invokePreGenerateHooks<T = GenerateResult>(hooks: HookCallback[], genOptions: GenerateOptions, agent: Agent): Promise<PreGenerateHookResult<T>>;
81
+ /**
82
+ * Normalizes an error to an AgentError.
83
+ *
84
+ * @param error - The error to normalize
85
+ * @param defaultMessage - Default message if error doesn't have one
86
+ * @param threadId - Optional thread ID for metadata
87
+ * @returns Normalized AgentError
88
+ *
89
+ * @internal
90
+ */
91
+ export declare function normalizeError(error: unknown, defaultMessage: string, threadId?: string): AgentError;
92
+ /**
93
+ * Handles errors during generation by invoking PostGenerateFailure hooks
94
+ * and checking for fallback model usage.
95
+ *
96
+ * @param error - The normalized error
97
+ * @param hooks - PostGenerateFailure hook callbacks
98
+ * @param genOptions - The generation options
99
+ * @param agent - The agent instance
100
+ * @param state - Current retry loop state
101
+ * @param fallbackModel - Optional fallback model
102
+ * @param shouldUseFallback - Function to check if fallback should be used
103
+ * @returns Decision on whether to retry and how
104
+ *
105
+ * @internal
106
+ */
107
+ export declare function handleGenerationError(error: AgentError, hooks: HookCallback[], genOptions: GenerateOptions, agent: Agent, state: RetryLoopState, fallbackModel?: LanguageModel, shouldUseFallback?: (error: AgentError) => boolean): Promise<ErrorHandlingDecision>;
108
+ /**
109
+ * Updates retry loop state based on error handling decision.
110
+ *
111
+ * @param state - Current retry loop state
112
+ * @param decision - Error handling decision
113
+ * @returns Updated retry loop state
114
+ *
115
+ * @internal
116
+ */
117
+ export declare function updateRetryLoopState(state: RetryLoopState, decision: ErrorHandlingDecision): RetryLoopState;
118
+ /**
119
+ * Waits for the specified retry delay.
120
+ *
121
+ * @param delayMs - Delay in milliseconds
122
+ *
123
+ * @internal
124
+ */
125
+ export declare function waitForRetryDelay(delayMs: number): Promise<void>;
126
+ //# sourceMappingURL=generation-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generation-helpers.d.ts","sourceRoot":"","sources":["../src/generation-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,EAAE,UAAU,EAA4C,MAAM,mBAAmB,CAAC;AAQzF,OAAO,KAAK,EACV,KAAK,EACL,eAAe,EACf,cAAc,EACd,YAAY,EAGb,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,YAAY,EAAE,aAAa,CAAC;IAC5B,2CAA2C;IAC3C,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,cAAc;IACvD,mDAAmD;IACnD,gBAAgB,EAAE,eAAe,CAAC;IAClC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,CAAC,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,qCAAqC;IACrC,WAAW,EAAE,OAAO,CAAC;IACrB,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,0CAA0C;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,aAAa,EACpB,UAAU,GAAE,MAA4B,GACvC,cAAc,CAOhB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,sBAAsB,CAAC,CAAC,GAAG,cAAc,EAC7D,KAAK,EAAE,YAAY,EAAE,EACrB,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CA0CnC;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,MAAM,EACtB,QAAQ,CAAC,EAAE,MAAM,GAChB,UAAU,CAQZ;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,YAAY,EAAE,EACrB,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,cAAc,EACrB,aAAa,CAAC,EAAE,aAAa,EAC7B,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,GACjD,OAAO,CAAC,qBAAqB,CAAC,CAkDhC;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,qBAAqB,GAC9B,cAAc,CAOhB;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAItE"}
@@ -0,0 +1,181 @@
1
+ /**
2
+ * Shared helpers for generation methods (generate, stream, streamResponse, etc.)
3
+ *
4
+ * These helpers extract common retry/hook handling patterns to ensure consistent
5
+ * behavior across all generation methods and reduce code duplication.
6
+ *
7
+ * @packageDocumentation
8
+ * @internal
9
+ */
10
+ import { AgentError, GeneratePermissionDeniedError, wrapError } from "./errors/index.js";
11
+ import { aggregatePermissionDecisions, extractRespondWith, extractRetryDecision, extractUpdatedInput, invokeHooksWithTimeout, } from "./hooks.js";
12
+ /**
13
+ * Default maximum number of retry attempts for generation methods.
14
+ * @internal
15
+ */
16
+ export const DEFAULT_MAX_RETRIES = 10;
17
+ /**
18
+ * Creates initial state for the retry loop.
19
+ *
20
+ * @param model - The primary model to use
21
+ * @param maxRetries - Maximum retry attempts (default: 10)
22
+ * @returns Initial retry loop state
23
+ *
24
+ * @internal
25
+ */
26
+ export function createRetryLoopState(model, maxRetries = DEFAULT_MAX_RETRIES) {
27
+ return {
28
+ retryAttempt: 0,
29
+ maxRetries,
30
+ currentModel: model,
31
+ usedFallback: false,
32
+ };
33
+ }
34
+ /**
35
+ * Invokes PreGenerate hooks and returns the effective options.
36
+ *
37
+ * This handles:
38
+ * - Cache short-circuit via respondWith
39
+ * - Input transformation via updatedInput
40
+ *
41
+ * @param hooks - PreGenerate hook callbacks
42
+ * @param genOptions - Original generation options
43
+ * @param agent - The agent instance
44
+ * @returns Result containing effective options and optional cached result
45
+ *
46
+ * @internal
47
+ */
48
+ export async function invokePreGenerateHooks(hooks, genOptions, agent) {
49
+ if (hooks.length === 0) {
50
+ return { effectiveOptions: genOptions };
51
+ }
52
+ const preGenerateInput = {
53
+ hook_event_name: "PreGenerate",
54
+ session_id: genOptions.threadId ?? "default",
55
+ cwd: process.cwd(),
56
+ options: genOptions,
57
+ };
58
+ const hookOutputs = await invokeHooksWithTimeout(hooks, preGenerateInput, null, agent);
59
+ // Check for permission denial (e.g., guardrails blocking input)
60
+ const permissionDecision = aggregatePermissionDecisions(hookOutputs);
61
+ if (permissionDecision === "deny") {
62
+ // Find the reason and blocked message IDs from hook outputs
63
+ const denyingOutput = hookOutputs.find((o) => o.hookSpecificOutput?.permissionDecision === "deny")?.hookSpecificOutput;
64
+ const reason = denyingOutput?.permissionDecisionReason;
65
+ const blockedMessageIds = denyingOutput?.blockedMessageIds;
66
+ throw new GeneratePermissionDeniedError("Generation denied by hook", {
67
+ reason,
68
+ blockedMessageIds,
69
+ });
70
+ }
71
+ // Check for cache short-circuit via respondWith
72
+ const cachedResult = extractRespondWith(hookOutputs);
73
+ if (cachedResult !== undefined) {
74
+ return { effectiveOptions: genOptions, cachedResult };
75
+ }
76
+ // Apply input transformation via updatedInput
77
+ const updatedOptions = extractUpdatedInput(hookOutputs);
78
+ const effectiveOptions = updatedOptions !== undefined ? updatedOptions : genOptions;
79
+ return { effectiveOptions };
80
+ }
81
+ /**
82
+ * Normalizes an error to an AgentError.
83
+ *
84
+ * @param error - The error to normalize
85
+ * @param defaultMessage - Default message if error doesn't have one
86
+ * @param threadId - Optional thread ID for metadata
87
+ * @returns Normalized AgentError
88
+ *
89
+ * @internal
90
+ */
91
+ export function normalizeError(error, defaultMessage, threadId) {
92
+ if (AgentError.is(error)) {
93
+ return error;
94
+ }
95
+ return wrapError(error, error instanceof Error ? error.message : defaultMessage, {
96
+ metadata: threadId ? { threadId } : undefined,
97
+ });
98
+ }
99
+ /**
100
+ * Handles errors during generation by invoking PostGenerateFailure hooks
101
+ * and checking for fallback model usage.
102
+ *
103
+ * @param error - The normalized error
104
+ * @param hooks - PostGenerateFailure hook callbacks
105
+ * @param genOptions - The generation options
106
+ * @param agent - The agent instance
107
+ * @param state - Current retry loop state
108
+ * @param fallbackModel - Optional fallback model
109
+ * @param shouldUseFallback - Function to check if fallback should be used
110
+ * @returns Decision on whether to retry and how
111
+ *
112
+ * @internal
113
+ */
114
+ export async function handleGenerationError(error, hooks, genOptions, agent, state, fallbackModel, shouldUseFallback) {
115
+ // Invoke PostGenerateFailure hooks to check for retry
116
+ if (hooks.length > 0) {
117
+ const failureInput = {
118
+ hook_event_name: "PostGenerateFailure",
119
+ session_id: genOptions.threadId ?? "default",
120
+ cwd: process.cwd(),
121
+ options: genOptions,
122
+ error,
123
+ };
124
+ const hookOutputs = await invokeHooksWithTimeout(hooks, failureInput, null, agent, 60000, state.retryAttempt);
125
+ // Check if hooks request a retry
126
+ const retryDecision = extractRetryDecision(hookOutputs);
127
+ if (retryDecision && state.retryAttempt < state.maxRetries) {
128
+ return {
129
+ shouldRetry: true,
130
+ retryDelayMs: retryDecision.retryDelayMs,
131
+ };
132
+ }
133
+ }
134
+ // Check if we should fallback to alternative model
135
+ if (fallbackModel &&
136
+ !state.usedFallback &&
137
+ shouldUseFallback?.(error) &&
138
+ state.retryAttempt < state.maxRetries) {
139
+ return {
140
+ shouldRetry: true,
141
+ retryDelayMs: 0,
142
+ updatedModel: fallbackModel,
143
+ activatedFallback: true,
144
+ };
145
+ }
146
+ // No retry requested or max retries exceeded
147
+ return {
148
+ shouldRetry: false,
149
+ retryDelayMs: 0,
150
+ };
151
+ }
152
+ /**
153
+ * Updates retry loop state based on error handling decision.
154
+ *
155
+ * @param state - Current retry loop state
156
+ * @param decision - Error handling decision
157
+ * @returns Updated retry loop state
158
+ *
159
+ * @internal
160
+ */
161
+ export function updateRetryLoopState(state, decision) {
162
+ return {
163
+ ...state,
164
+ retryAttempt: state.retryAttempt + 1,
165
+ currentModel: decision.updatedModel ?? state.currentModel,
166
+ usedFallback: state.usedFallback || decision.activatedFallback === true,
167
+ };
168
+ }
169
+ /**
170
+ * Waits for the specified retry delay.
171
+ *
172
+ * @param delayMs - Delay in milliseconds
173
+ *
174
+ * @internal
175
+ */
176
+ export async function waitForRetryDelay(delayMs) {
177
+ if (delayMs > 0) {
178
+ await new Promise((resolve) => setTimeout(resolve, delayMs));
179
+ }
180
+ }
181
+ //# sourceMappingURL=generation-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generation-helpers.js","sourceRoot":"","sources":["../src/generation-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,210 @@
1
+ /**
2
+ * Audit hook utilities.
3
+ *
4
+ * Provides structured audit event emission for compliance and monitoring
5
+ * using the unified hook system.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ import type { HookCallback } from "../types.js";
10
+ /**
11
+ * Audit event categories.
12
+ *
13
+ * @category Hooks
14
+ */
15
+ export type AuditEventCategory = "tool_execution" | "policy_denial" | "approval_prompt" | "file_access" | "command_execution" | "generation" | "error";
16
+ /**
17
+ * Structured audit event.
18
+ *
19
+ * @category Hooks
20
+ */
21
+ export interface AuditEvent {
22
+ /** Event category */
23
+ category: AuditEventCategory;
24
+ /** Event type (hook event name) */
25
+ event: string;
26
+ /** Timestamp (milliseconds since epoch) */
27
+ timestamp: number;
28
+ /** Session ID */
29
+ sessionId: string;
30
+ /** Tool use ID (for tool events) */
31
+ toolUseId?: string | null;
32
+ /** Tool name (for tool events) */
33
+ toolName?: string;
34
+ /** Tool input (for tool events) */
35
+ toolInput?: Record<string, unknown>;
36
+ /** Tool output (for PostToolUse) */
37
+ toolOutput?: unknown;
38
+ /** Error message (for failure events) */
39
+ error?: string;
40
+ /** Permission decision (for PreToolUse/PreGenerate with permission checks) */
41
+ permissionDecision?: "allow" | "deny" | "ask";
42
+ /** Permission decision reason */
43
+ permissionDecisionReason?: string;
44
+ /** Model used (for generation events) */
45
+ model?: string;
46
+ /** Token usage (for generation events) */
47
+ usage?: {
48
+ inputTokens?: number;
49
+ outputTokens?: number;
50
+ totalTokens?: number;
51
+ };
52
+ /** Additional metadata */
53
+ metadata?: Record<string, unknown>;
54
+ }
55
+ /**
56
+ * Audit event handler function.
57
+ *
58
+ * @category Hooks
59
+ */
60
+ export type AuditEventHandler = (event: AuditEvent) => void | Promise<void>;
61
+ /**
62
+ * Options for creating audit hooks.
63
+ *
64
+ * @category Hooks
65
+ */
66
+ export interface AuditHooksOptions {
67
+ /**
68
+ * Event handler function.
69
+ * Called for each audit event.
70
+ */
71
+ onEvent: AuditEventHandler;
72
+ /**
73
+ * Categories to audit.
74
+ * @defaultValue All categories
75
+ */
76
+ categories?: AuditEventCategory[];
77
+ /**
78
+ * Whether to audit tool execution.
79
+ * @defaultValue true
80
+ */
81
+ auditTools?: boolean;
82
+ /**
83
+ * Whether to audit generation.
84
+ * @defaultValue true
85
+ */
86
+ auditGeneration?: boolean;
87
+ /**
88
+ * Whether to audit errors.
89
+ * @defaultValue true
90
+ */
91
+ auditErrors?: boolean;
92
+ /**
93
+ * Additional metadata to include in all events.
94
+ */
95
+ metadata?: Record<string, unknown>;
96
+ }
97
+ /**
98
+ * Creates audit hooks for all lifecycle events.
99
+ *
100
+ * Emits structured audit events for tool execution, generation,
101
+ * and errors. Useful for compliance, security monitoring, and
102
+ * debugging.
103
+ *
104
+ * This addresses the audit events requirement from CODE_REVIEW.md
105
+ * using the unified hook system.
106
+ *
107
+ * @param options - Configuration options
108
+ * @returns Array of hooks for all audited events
109
+ *
110
+ * @example
111
+ * ```typescript
112
+ * const auditHooks = createAuditHooks({
113
+ * onEvent: (event) => {
114
+ * // Send to your logging service
115
+ * logger.info('Audit event', event);
116
+ *
117
+ * // Send to SIEM
118
+ * siem.send(event);
119
+ *
120
+ * // Store in database
121
+ * db.auditEvents.insert(event);
122
+ * },
123
+ * });
124
+ *
125
+ * const agent = createAgent({
126
+ * model,
127
+ * hooks: {
128
+ * PreToolUse: [{ hooks: [auditHooks[0]] }],
129
+ * PostToolUse: [{ hooks: [auditHooks[1]] }],
130
+ * PostToolUseFailure: [{ hooks: [auditHooks[2]] }],
131
+ * PreGenerate: [{ hooks: [auditHooks[3]] }],
132
+ * PostGenerate: [{ hooks: [auditHooks[4]] }],
133
+ * PostGenerateFailure: [{ hooks: [auditHooks[5]] }],
134
+ * },
135
+ * });
136
+ * ```
137
+ *
138
+ * @example
139
+ * ```typescript
140
+ * // Selective auditing
141
+ * const auditHooks = createAuditHooks({
142
+ * categories: ['command_execution', 'file_access', 'policy_denial'],
143
+ * onEvent: (event) => {
144
+ * if (event.category === 'command_execution') {
145
+ * securityLog.command(event);
146
+ * }
147
+ * },
148
+ * });
149
+ * ```
150
+ *
151
+ * @example
152
+ * ```typescript
153
+ * // JSON lines export for log aggregation
154
+ * const auditHooks = createAuditHooks({
155
+ * onEvent: (event) => {
156
+ * console.log(JSON.stringify(event));
157
+ * },
158
+ * });
159
+ * ```
160
+ *
161
+ * @category Hooks
162
+ */
163
+ export declare function createAuditHooks(options: AuditHooksOptions): HookCallback[];
164
+ /**
165
+ * Export audit events to JSON Lines format.
166
+ *
167
+ * Returns a function that writes audit events to console.log
168
+ * in JSON Lines format (one JSON object per line), suitable for
169
+ * log aggregation tools.
170
+ *
171
+ * @returns Audit event handler for JSON Lines export
172
+ *
173
+ * @example
174
+ * ```typescript
175
+ * const auditHooks = createAuditHooks({
176
+ * onEvent: exportAuditEventsJSONLines(),
177
+ * });
178
+ * ```
179
+ *
180
+ * @category Hooks
181
+ */
182
+ export declare function exportAuditEventsJSONLines(): AuditEventHandler;
183
+ /**
184
+ * Creates an in-memory audit event store.
185
+ *
186
+ * Useful for testing and development. Events are kept in memory
187
+ * with a configurable size limit.
188
+ *
189
+ * @param maxEvents - Maximum events to keep
190
+ * @returns Object with event handler and getter
191
+ *
192
+ * @example
193
+ * ```typescript
194
+ * const { onEvent, getEvents, clear } = createInMemoryAuditStore(1000);
195
+ *
196
+ * const auditHooks = createAuditHooks({ onEvent });
197
+ *
198
+ * // Later, retrieve events
199
+ * const events = getEvents();
200
+ * console.log(`Captured ${events.length} audit events`);
201
+ * ```
202
+ *
203
+ * @category Hooks
204
+ */
205
+ export declare function createInMemoryAuditStore(maxEvents?: number): {
206
+ onEvent: AuditEventHandler;
207
+ getEvents: () => AuditEvent[];
208
+ clear: () => void;
209
+ };
210
+ //# sourceMappingURL=audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/hooks/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,YAAY,EAOb,MAAM,aAAa,CAAC;AAErB;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAC1B,gBAAgB,GAChB,eAAe,GACf,iBAAiB,GACjB,aAAa,GACb,mBAAmB,GACnB,YAAY,GACZ,OAAO,CAAC;AAEZ;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,qBAAqB;IACrB,QAAQ,EAAE,kBAAkB,CAAC;IAE7B,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IAEd,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAElB,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAElB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEpC,oCAAoC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,8EAA8E;IAC9E,kBAAkB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;IAE9C,iCAAiC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,0CAA0C;IAC1C,KAAK,CAAC,EAAE;QACN,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5E;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,EAAE,iBAAiB,CAAC;IAE3B;;;OAGG;IACH,UAAU,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAElC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAyBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,YAAY,EAAE,CAkL3E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,0BAA0B,IAAI,iBAAiB,CAI9D;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,SAAO,GAAG;IAC1D,OAAO,EAAE,iBAAiB,CAAC;IAC3B,SAAS,EAAE,MAAM,UAAU,EAAE,CAAC;IAC9B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAiBA"}