beeai-framework 0.1.21 → 0.1.22

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 (303) hide show
  1. package/dist/adapters/a2a/agents/agent.d.cts +6 -10
  2. package/dist/adapters/a2a/agents/agent.d.ts +6 -10
  3. package/dist/adapters/a2a/agents/events.d.cts +1 -1
  4. package/dist/adapters/a2a/agents/events.d.ts +1 -1
  5. package/dist/adapters/a2a/agents/types.d.cts +2 -2
  6. package/dist/adapters/a2a/agents/types.d.ts +2 -2
  7. package/dist/adapters/a2a/serve/agent_executor.d.cts +3 -3
  8. package/dist/adapters/a2a/serve/agent_executor.d.ts +3 -3
  9. package/dist/adapters/a2a/serve/server.d.cts +2 -2
  10. package/dist/adapters/a2a/serve/server.d.ts +2 -2
  11. package/dist/adapters/acp/agents/agent.d.cts +6 -10
  12. package/dist/adapters/acp/agents/agent.d.ts +6 -10
  13. package/dist/adapters/acp/agents/events.d.cts +1 -1
  14. package/dist/adapters/acp/agents/events.d.ts +1 -1
  15. package/dist/adapters/agentstack/agents/agent.d.cts +8 -6
  16. package/dist/adapters/agentstack/agents/agent.d.ts +8 -6
  17. package/dist/adapters/agentstack/agents/events.d.cts +1 -1
  18. package/dist/adapters/agentstack/agents/events.d.ts +1 -1
  19. package/dist/adapters/amazon-bedrock/backend/chat.d.cts +2 -2
  20. package/dist/adapters/amazon-bedrock/backend/chat.d.ts +2 -2
  21. package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +2 -2
  22. package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +2 -2
  23. package/dist/adapters/anthropic/backend/chat.d.cts +2 -2
  24. package/dist/adapters/anthropic/backend/chat.d.ts +2 -2
  25. package/dist/adapters/anthropic/backend/embedding.d.cts +2 -2
  26. package/dist/adapters/anthropic/backend/embedding.d.ts +2 -2
  27. package/dist/adapters/azure-openai/backend/chat.d.cts +2 -2
  28. package/dist/adapters/azure-openai/backend/chat.d.ts +2 -2
  29. package/dist/adapters/azure-openai/backend/embedding.d.cts +2 -2
  30. package/dist/adapters/azure-openai/backend/embedding.d.ts +2 -2
  31. package/dist/adapters/dummy/backend/chat.d.cts +2 -2
  32. package/dist/adapters/dummy/backend/chat.d.ts +2 -2
  33. package/dist/adapters/dummy/backend/embedding.d.cts +2 -2
  34. package/dist/adapters/dummy/backend/embedding.d.ts +2 -2
  35. package/dist/adapters/google-vertex/backend/chat.d.cts +2 -2
  36. package/dist/adapters/google-vertex/backend/chat.d.ts +2 -2
  37. package/dist/adapters/google-vertex/backend/embedding.d.cts +2 -2
  38. package/dist/adapters/google-vertex/backend/embedding.d.ts +2 -2
  39. package/dist/adapters/groq/backend/chat.d.cts +2 -2
  40. package/dist/adapters/groq/backend/chat.d.ts +2 -2
  41. package/dist/adapters/groq/backend/embedding.d.cts +2 -2
  42. package/dist/adapters/groq/backend/embedding.d.ts +2 -2
  43. package/dist/adapters/langchain/backend/chat.d.cts +2 -2
  44. package/dist/adapters/langchain/backend/chat.d.ts +2 -2
  45. package/dist/adapters/langchain/backend/embedding.d.cts +2 -2
  46. package/dist/adapters/langchain/backend/embedding.d.ts +2 -2
  47. package/dist/adapters/langchain/tools.d.cts +1 -1
  48. package/dist/adapters/langchain/tools.d.ts +1 -1
  49. package/dist/adapters/ollama/backend/chat.d.cts +2 -2
  50. package/dist/adapters/ollama/backend/chat.d.ts +2 -2
  51. package/dist/adapters/ollama/backend/embedding.d.cts +2 -2
  52. package/dist/adapters/ollama/backend/embedding.d.ts +2 -2
  53. package/dist/adapters/openai/backend/chat.d.cts +2 -2
  54. package/dist/adapters/openai/backend/chat.d.ts +2 -2
  55. package/dist/adapters/openai/backend/embedding.d.cts +2 -2
  56. package/dist/adapters/openai/backend/embedding.d.ts +2 -2
  57. package/dist/adapters/vercel/backend/chat.d.cts +2 -2
  58. package/dist/adapters/vercel/backend/chat.d.ts +2 -2
  59. package/dist/adapters/vercel/backend/embedding.d.cts +2 -2
  60. package/dist/adapters/vercel/backend/embedding.d.ts +2 -2
  61. package/dist/adapters/vercel/backend/utils.cjs +15 -0
  62. package/dist/adapters/vercel/backend/utils.cjs.map +1 -1
  63. package/dist/adapters/vercel/backend/utils.d.cts +4 -3
  64. package/dist/adapters/vercel/backend/utils.d.ts +4 -3
  65. package/dist/adapters/vercel/backend/utils.js +15 -1
  66. package/dist/adapters/vercel/backend/utils.js.map +1 -1
  67. package/dist/adapters/watsonx/backend/chat.d.cts +2 -2
  68. package/dist/adapters/watsonx/backend/chat.d.ts +2 -2
  69. package/dist/adapters/watsonx/backend/embedding.d.cts +2 -2
  70. package/dist/adapters/watsonx/backend/embedding.d.ts +2 -2
  71. package/dist/adapters/xai/backend/chat.d.cts +2 -2
  72. package/dist/adapters/xai/backend/chat.d.ts +2 -2
  73. package/dist/{agent-DvvVGvLr.d.cts → agent-BMfyig7X.d.cts} +5 -4
  74. package/dist/{agent-CHebzsQB.d.ts → agent-Dxw8AGWb.d.ts} +5 -4
  75. package/dist/agents/base.cjs +5 -2
  76. package/dist/agents/base.cjs.map +1 -1
  77. package/dist/agents/base.d.cts +2 -2
  78. package/dist/agents/base.d.ts +2 -2
  79. package/dist/agents/base.js +5 -2
  80. package/dist/agents/base.js.map +1 -1
  81. package/dist/agents/experimental/replan/agent.d.cts +3 -3
  82. package/dist/agents/experimental/replan/agent.d.ts +3 -3
  83. package/dist/agents/experimental/replan/prompts.d.cts +1 -1
  84. package/dist/agents/experimental/replan/prompts.d.ts +1 -1
  85. package/dist/agents/experimental/streamlit/agent.d.cts +8 -12
  86. package/dist/agents/experimental/streamlit/agent.d.ts +8 -12
  87. package/dist/agents/react/agent.d.cts +4 -4
  88. package/dist/agents/react/agent.d.ts +4 -4
  89. package/dist/agents/react/prompts.d.cts +1 -1
  90. package/dist/agents/react/prompts.d.ts +1 -1
  91. package/dist/agents/react/runners/base.d.cts +4 -4
  92. package/dist/agents/react/runners/base.d.ts +4 -4
  93. package/dist/agents/react/runners/deep-think/prompts.d.cts +1 -1
  94. package/dist/agents/react/runners/deep-think/prompts.d.ts +1 -1
  95. package/dist/agents/react/runners/deep-think/runner.d.cts +5 -5
  96. package/dist/agents/react/runners/deep-think/runner.d.ts +5 -5
  97. package/dist/agents/react/runners/default/runner.d.cts +5 -5
  98. package/dist/agents/react/runners/default/runner.d.ts +5 -5
  99. package/dist/agents/react/runners/granite/prompts.d.cts +1 -1
  100. package/dist/agents/react/runners/granite/prompts.d.ts +1 -1
  101. package/dist/agents/react/runners/granite/runner.d.cts +5 -5
  102. package/dist/agents/react/runners/granite/runner.d.ts +5 -5
  103. package/dist/agents/react/types.d.cts +2 -2
  104. package/dist/agents/react/types.d.ts +2 -2
  105. package/dist/agents/requirement/agent.cjs +162 -0
  106. package/dist/agents/requirement/agent.cjs.map +1 -0
  107. package/dist/agents/requirement/agent.d.cts +29 -0
  108. package/dist/agents/requirement/agent.d.ts +29 -0
  109. package/dist/agents/requirement/agent.js +160 -0
  110. package/dist/agents/requirement/agent.js.map +1 -0
  111. package/dist/agents/requirement/prompts.cjs +95 -0
  112. package/dist/agents/requirement/prompts.cjs.map +1 -0
  113. package/dist/agents/requirement/prompts.d.cts +107 -0
  114. package/dist/agents/requirement/prompts.d.ts +107 -0
  115. package/dist/agents/requirement/prompts.js +90 -0
  116. package/dist/agents/requirement/prompts.js.map +1 -0
  117. package/dist/agents/requirement/requirements/conditional.cjs +190 -0
  118. package/dist/agents/requirement/requirements/conditional.cjs.map +1 -0
  119. package/dist/agents/requirement/requirements/conditional.d.cts +71 -0
  120. package/dist/agents/requirement/requirements/conditional.d.ts +71 -0
  121. package/dist/agents/requirement/requirements/conditional.js +188 -0
  122. package/dist/agents/requirement/requirements/conditional.js.map +1 -0
  123. package/dist/agents/requirement/requirements/requirement.cjs +107 -0
  124. package/dist/agents/requirement/requirements/requirement.cjs.map +1 -0
  125. package/dist/agents/requirement/requirements/requirement.d.cts +59 -0
  126. package/dist/agents/requirement/requirements/requirement.d.ts +59 -0
  127. package/dist/agents/requirement/requirements/requirement.js +104 -0
  128. package/dist/agents/requirement/requirements/requirement.js.map +1 -0
  129. package/dist/agents/requirement/requirements/utils.cjs +74 -0
  130. package/dist/agents/requirement/requirements/utils.cjs.map +1 -0
  131. package/dist/agents/requirement/requirements/utils.d.cts +40 -0
  132. package/dist/agents/requirement/requirements/utils.d.ts +40 -0
  133. package/dist/agents/requirement/requirements/utils.js +69 -0
  134. package/dist/agents/requirement/requirements/utils.js.map +1 -0
  135. package/dist/agents/requirement/runner.cjs +252 -0
  136. package/dist/agents/requirement/runner.cjs.map +1 -0
  137. package/dist/agents/requirement/runner.d.cts +117 -0
  138. package/dist/agents/requirement/runner.d.ts +117 -0
  139. package/dist/agents/requirement/runner.js +250 -0
  140. package/dist/agents/requirement/runner.js.map +1 -0
  141. package/dist/agents/requirement/types.cjs +40 -0
  142. package/dist/agents/requirement/types.cjs.map +1 -0
  143. package/dist/agents/requirement/types.d.cts +24 -0
  144. package/dist/agents/requirement/types.d.ts +24 -0
  145. package/dist/agents/requirement/types.js +35 -0
  146. package/dist/agents/requirement/types.js.map +1 -0
  147. package/dist/agents/requirement/utils/llm.cjs +202 -0
  148. package/dist/agents/requirement/utils/llm.cjs.map +1 -0
  149. package/dist/agents/requirement/utils/llm.d.cts +50 -0
  150. package/dist/agents/requirement/utils/llm.d.ts +50 -0
  151. package/dist/agents/requirement/utils/llm.js +199 -0
  152. package/dist/agents/requirement/utils/llm.js.map +1 -0
  153. package/dist/agents/requirement/utils/tool.cjs +94 -0
  154. package/dist/agents/requirement/utils/tool.cjs.map +1 -0
  155. package/dist/agents/requirement/utils/tool.d.cts +24 -0
  156. package/dist/agents/requirement/utils/tool.d.ts +24 -0
  157. package/dist/agents/requirement/utils/tool.js +91 -0
  158. package/dist/agents/requirement/utils/tool.js.map +1 -0
  159. package/dist/agents/requirement/utils/toolCallChecker.cjs +61 -0
  160. package/dist/agents/requirement/utils/toolCallChecker.cjs.map +1 -0
  161. package/dist/agents/requirement/utils/toolCallChecker.d.cts +28 -0
  162. package/dist/agents/requirement/utils/toolCallChecker.d.ts +28 -0
  163. package/dist/agents/requirement/utils/toolCallChecker.js +59 -0
  164. package/dist/agents/requirement/utils/toolCallChecker.js.map +1 -0
  165. package/dist/agents/toolCalling/agent.d.cts +8 -12
  166. package/dist/agents/toolCalling/agent.d.ts +8 -12
  167. package/dist/agents/toolCalling/types.d.cts +1 -1
  168. package/dist/agents/toolCalling/types.d.ts +1 -1
  169. package/dist/agents/types.d.cts +2 -2
  170. package/dist/agents/types.d.ts +2 -2
  171. package/dist/backend/backend.d.cts +2 -2
  172. package/dist/backend/backend.d.ts +2 -2
  173. package/dist/backend/chat.d.cts +2 -2
  174. package/dist/backend/chat.d.ts +2 -2
  175. package/dist/backend/core.d.cts +2 -2
  176. package/dist/backend/core.d.ts +2 -2
  177. package/dist/backend/embedding.d.cts +2 -2
  178. package/dist/backend/embedding.d.ts +2 -2
  179. package/dist/backend/utils.d.cts +2 -2
  180. package/dist/backend/utils.d.ts +2 -2
  181. package/dist/{base-BQgDlcGa.d.ts → base-BurRTBA7.d.ts} +4 -2
  182. package/dist/{base-CwcxwybB.d.cts → base-v-PYIq5G.d.cts} +4 -2
  183. package/dist/{chat-C0s-o6ll.d.ts → chat-BbCYMAdE.d.ts} +1 -1
  184. package/dist/{chat-CRb3vUVg.d.cts → chat-DB_cf15S.d.cts} +1 -1
  185. package/dist/context.cjs +22 -5
  186. package/dist/context.cjs.map +1 -1
  187. package/dist/context.d.cts +19 -6
  188. package/dist/context.d.ts +19 -6
  189. package/dist/context.js +23 -7
  190. package/dist/context.js.map +1 -1
  191. package/dist/emitter/emitter.cjs +19 -13
  192. package/dist/emitter/emitter.cjs.map +1 -1
  193. package/dist/emitter/emitter.d.cts +1 -1
  194. package/dist/emitter/emitter.d.ts +1 -1
  195. package/dist/emitter/emitter.js +19 -13
  196. package/dist/emitter/emitter.js.map +1 -1
  197. package/dist/emitter/types.d.cts +1 -1
  198. package/dist/emitter/types.d.ts +1 -1
  199. package/dist/{emitter-DpqUYjXH.d.cts → emitter-CGKd_-kK.d.cts} +3 -2
  200. package/dist/{emitter-CZFbzlUi.d.ts → emitter-CN7I4uSV.d.ts} +3 -2
  201. package/dist/index.d.cts +5 -5
  202. package/dist/index.d.ts +5 -5
  203. package/dist/internals/fetcher.d.cts +1 -1
  204. package/dist/internals/fetcher.d.ts +1 -1
  205. package/dist/internals/helpers/prototype.cjs +5 -0
  206. package/dist/internals/helpers/prototype.cjs.map +1 -1
  207. package/dist/internals/helpers/prototype.d.cts +2 -1
  208. package/dist/internals/helpers/prototype.d.ts +2 -1
  209. package/dist/internals/helpers/prototype.js +5 -1
  210. package/dist/internals/helpers/prototype.js.map +1 -1
  211. package/dist/internals/types.cjs.map +1 -1
  212. package/dist/internals/types.d.cts +1 -1
  213. package/dist/internals/types.d.ts +1 -1
  214. package/dist/internals/types.js.map +1 -1
  215. package/dist/memory/summarizeMemory.d.cts +2 -2
  216. package/dist/memory/summarizeMemory.d.ts +2 -2
  217. package/dist/middleware/trajectory.cjs +322 -0
  218. package/dist/middleware/trajectory.cjs.map +1 -0
  219. package/dist/middleware/trajectory.d.cts +115 -0
  220. package/dist/middleware/trajectory.d.ts +115 -0
  221. package/dist/middleware/trajectory.js +320 -0
  222. package/dist/middleware/trajectory.js.map +1 -0
  223. package/dist/parsers/linePrefix.d.cts +1 -1
  224. package/dist/parsers/linePrefix.d.ts +1 -1
  225. package/dist/serializer/serializer.cjs +5 -4
  226. package/dist/serializer/serializer.cjs.map +1 -1
  227. package/dist/serializer/serializer.d.cts +1 -1
  228. package/dist/serializer/serializer.d.ts +1 -1
  229. package/dist/serializer/serializer.js +5 -4
  230. package/dist/serializer/serializer.js.map +1 -1
  231. package/dist/serializer/utils.cjs +3 -0
  232. package/dist/serializer/utils.cjs.map +1 -1
  233. package/dist/serializer/utils.d.cts +1 -1
  234. package/dist/serializer/utils.d.ts +1 -1
  235. package/dist/serializer/utils.js +3 -0
  236. package/dist/serializer/utils.js.map +1 -1
  237. package/dist/{serializer-CQxucveV.d.ts → serializer-53t8gGQa.d.ts} +3 -2
  238. package/dist/{serializer-BKn50Vnx.d.cts → serializer-c51B2z6d.d.cts} +3 -2
  239. package/dist/template.cjs +20 -0
  240. package/dist/template.cjs.map +1 -1
  241. package/dist/template.d.cts +1 -0
  242. package/dist/template.d.ts +1 -0
  243. package/dist/template.js +20 -0
  244. package/dist/template.js.map +1 -1
  245. package/dist/tools/arxiv.d.cts +1 -1
  246. package/dist/tools/arxiv.d.ts +1 -1
  247. package/dist/tools/base.cjs.map +1 -1
  248. package/dist/tools/base.d.cts +3 -2
  249. package/dist/tools/base.d.ts +3 -2
  250. package/dist/tools/base.js.map +1 -1
  251. package/dist/tools/calculator.d.cts +1 -1
  252. package/dist/tools/calculator.d.ts +1 -1
  253. package/dist/tools/custom.d.cts +2 -2
  254. package/dist/tools/custom.d.ts +2 -2
  255. package/dist/tools/database/elasticsearch.d.cts +1 -1
  256. package/dist/tools/database/elasticsearch.d.ts +1 -1
  257. package/dist/tools/database/milvus.d.cts +1 -1
  258. package/dist/tools/database/milvus.d.ts +1 -1
  259. package/dist/tools/database/qdrant.d.cts +1 -1
  260. package/dist/tools/database/qdrant.d.ts +1 -1
  261. package/dist/tools/database/sql.d.cts +1 -1
  262. package/dist/tools/database/sql.d.ts +1 -1
  263. package/dist/tools/llm.d.cts +2 -2
  264. package/dist/tools/llm.d.ts +2 -2
  265. package/dist/tools/mcp.d.cts +1 -1
  266. package/dist/tools/mcp.d.ts +1 -1
  267. package/dist/tools/openapi.d.cts +1 -1
  268. package/dist/tools/openapi.d.ts +1 -1
  269. package/dist/tools/python/output.d.cts +1 -1
  270. package/dist/tools/python/output.d.ts +1 -1
  271. package/dist/tools/python/python.d.cts +2 -2
  272. package/dist/tools/python/python.d.ts +2 -2
  273. package/dist/tools/search/base.d.cts +1 -1
  274. package/dist/tools/search/base.d.ts +1 -1
  275. package/dist/tools/search/duckDuckGoSearch.d.cts +1 -1
  276. package/dist/tools/search/duckDuckGoSearch.d.ts +1 -1
  277. package/dist/tools/search/googleSearch.d.cts +1 -1
  278. package/dist/tools/search/googleSearch.d.ts +1 -1
  279. package/dist/tools/search/searXNGSearch.d.cts +1 -1
  280. package/dist/tools/search/searXNGSearch.d.ts +1 -1
  281. package/dist/tools/search/wikipedia.d.cts +1 -1
  282. package/dist/tools/search/wikipedia.d.ts +1 -1
  283. package/dist/tools/similarity.d.cts +1 -1
  284. package/dist/tools/similarity.d.ts +1 -1
  285. package/dist/tools/think.cjs +52 -0
  286. package/dist/tools/think.cjs.map +1 -0
  287. package/dist/tools/think.d.cts +47 -0
  288. package/dist/tools/think.d.ts +47 -0
  289. package/dist/tools/think.js +50 -0
  290. package/dist/tools/think.js.map +1 -0
  291. package/dist/tools/weather/openMeteo.d.cts +1 -1
  292. package/dist/tools/weather/openMeteo.d.ts +1 -1
  293. package/dist/tools/web/webCrawler.d.cts +1 -1
  294. package/dist/tools/web/webCrawler.d.ts +1 -1
  295. package/dist/types-BXkkbABd.d.ts +213 -0
  296. package/dist/types-Cx6f43du.d.cts +213 -0
  297. package/dist/version.cjs +1 -1
  298. package/dist/version.js +1 -1
  299. package/dist/workflows/agent.d.cts +3 -3
  300. package/dist/workflows/agent.d.ts +3 -3
  301. package/dist/workflows/workflow.d.cts +1 -1
  302. package/dist/workflows/workflow.d.ts +1 -1
  303. package/package.json +4 -4
@@ -0,0 +1,107 @@
1
+ 'use strict';
2
+
3
+ var context_cjs = require('../../../context.cjs');
4
+ var emitter_cjs = require('../../../emitter/emitter.cjs');
5
+ var errors_cjs = require('../../../errors.cjs');
6
+ var remeda = require('remeda');
7
+ var decoratorCache_cjs = require('../../../cache/decoratorCache.cjs');
8
+
9
+ var __defProp = Object.defineProperty;
10
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
11
+ function _ts_decorate(decorators, target, key, desc) {
12
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
15
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
16
+ }
17
+ __name(_ts_decorate, "_ts_decorate");
18
+ function _ts_metadata(k, v) {
19
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
20
+ }
21
+ __name(_ts_metadata, "_ts_metadata");
22
+ class Requirement {
23
+ static {
24
+ __name(this, "Requirement");
25
+ }
26
+ name;
27
+ state = {};
28
+ enabled = true;
29
+ middlewares = [];
30
+ _priority = 10;
31
+ constructor(name) {
32
+ this.name = name || this.constructor.name;
33
+ }
34
+ get priority() {
35
+ return this._priority;
36
+ }
37
+ set priority(value) {
38
+ if (value <= 0) {
39
+ throw new errors_cjs.ValueError("Priority must be a positive integer.");
40
+ }
41
+ this._priority = value;
42
+ }
43
+ get emitter() {
44
+ return emitter_cjs.Emitter.root.child({
45
+ namespace: [
46
+ "requirement",
47
+ remeda.toCamelCase(this.name)
48
+ ],
49
+ creator: this
50
+ });
51
+ }
52
+ run(state) {
53
+ return context_cjs.RunContext.enter(this, {
54
+ signal: void 0,
55
+ params: [
56
+ state
57
+ ]
58
+ }, async (context) => {
59
+ return await this._run(state, context);
60
+ });
61
+ }
62
+ async init(tools, _) {
63
+ await this.emitter.emit("init", {
64
+ tools
65
+ });
66
+ }
67
+ async clone() {
68
+ const instance = Object.create(Object.getPrototypeOf(this));
69
+ instance.name = this.name;
70
+ instance.priority = this.priority;
71
+ instance.enabled = this.enabled;
72
+ instance.state = {
73
+ ...this.state
74
+ };
75
+ instance.middlewares = [
76
+ ...this.middlewares
77
+ ];
78
+ return instance;
79
+ }
80
+ }
81
+ _ts_decorate([
82
+ decoratorCache_cjs.Cache({
83
+ enumerable: false
84
+ }),
85
+ _ts_metadata("design:type", typeof emitter_cjs.Emitter === "undefined" ? Object : emitter_cjs.Emitter),
86
+ _ts_metadata("design:paramtypes", [])
87
+ ], Requirement.prototype, "emitter", null);
88
+ class RequirementError extends errors_cjs.FrameworkError {
89
+ static {
90
+ __name(this, "RequirementError");
91
+ }
92
+ requirement;
93
+ constructor(message, requirement, cause, context) {
94
+ super(message, cause ? [
95
+ cause
96
+ ] : void 0, {
97
+ isFatal: true,
98
+ isRetryable: false,
99
+ context
100
+ }), this.requirement = requirement;
101
+ }
102
+ }
103
+
104
+ exports.Requirement = Requirement;
105
+ exports.RequirementError = RequirementError;
106
+ //# sourceMappingURL=requirement.cjs.map
107
+ //# sourceMappingURL=requirement.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/agents/requirement/requirements/requirement.ts"],"names":["Requirement","name","state","enabled","middlewares","_priority","priority","value","ValueError","emitter","Emitter","root","child","namespace","toCamelCase","creator","run","RunContext","enter","signal","undefined","params","context","_run","init","tools","_","emit","clone","instance","Object","create","getPrototypeOf","enumerable","RequirementError","FrameworkError","message","requirement","cause","isFatal","isRetryable"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAwBO,MAAeA,WAAAA,CAAAA;AAAAA,EAAAA;;;AACbC,EAAAA,IAAAA;AACAC,EAAAA,KAAAA,GAA6B,EAAC;EAC9BC,OAAAA,GAAU,IAAA;AACVC,EAAAA,WAAAA,GAA6C,EAAA;EAE1CC,SAAAA,GAAY,EAAA;AAEtB,EAAA,WAAA,CAAYJ,IAAAA,EAAe;AACzB,IAAA,IAAA,CAAKA,IAAAA,GAAOA,IAAAA,IAAQ,IAAA,CAAK,WAAA,CAAYA,IAAAA;AACvC;AAEA,EAAA,IAAIK,QAAAA,GAAmB;AACrB,IAAA,OAAO,IAAA,CAAKD,SAAAA;AACd;AAEA,EAAA,IAAIC,SAASC,KAAAA,EAAe;AAC1B,IAAA,IAAIA,SAAS,CAAA,EAAG;AACd,MAAA,MAAM,IAAIC,sBAAW,sCAAA,CAAA;AACvB;AACA,IAAA,IAAA,CAAKH,SAAAA,GAAYE,KAAAA;AACnB;AAEA,EAAA,IACIE,OAAAA,GAAyC;AAC3C,IAAA,OAAOC,mBAAAA,CAAQC,KAAKC,KAAAA,CAAM;MACxBC,SAAAA,EAAW;AAAC,QAAA,aAAA;AAAeC,QAAAA,kBAAAA,CAAY,KAAKb,IAAI;;MAChDc,OAAAA,EAAS;KACX,CAAA;AACF;AAEAC,EAAAA,GAAAA,CAAId,KAAAA,EAAiC;AACnC,IAAA,OAAOe,sBAAAA,CAAWC,MAChB,IAAA,EACA;MAAEC,MAAAA,EAAQC,MAAAA;MAAWC,MAAAA,EAAQ;AAACnB,QAAAA;;AAAgB,KAAA,EAC9C,OAAOoB,OAAAA,KAAAA;AACL,MAAA,OAAO,MAAM,IAAA,CAAKC,IAAAA,CAAKrB,KAAAA,EAAOoB,OAAAA,CAAAA;KAChC,CAAA;AAEJ;EAIA,MAAME,IAAAA,CAAKC,OAAkBC,CAAAA,EAAmC;AAC9D,IAAA,MAAM,IAAA,CAAKjB,OAAAA,CAAQkB,IAAAA,CAAK,MAAA,EAAQ;AAAEF,MAAAA;KAAM,CAAA;AAC1C;AAEA,EAAA,MAAMG,KAAAA,GAAuB;AAC3B,IAAA,MAAMC,WAAWC,MAAAA,CAAOC,MAAAA,CAAOD,MAAAA,CAAOE,cAAAA,CAAe,IAAI,CAAA,CAAA;AACzDH,IAAAA,QAAAA,CAAS5B,OAAO,IAAA,CAAKA,IAAAA;AACrB4B,IAAAA,QAAAA,CAASvB,WAAW,IAAA,CAAKA,QAAAA;AACzBuB,IAAAA,QAAAA,CAAS1B,UAAU,IAAA,CAAKA,OAAAA;AACxB0B,IAAAA,QAAAA,CAAS3B,KAAAA,GAAQ;AAAE,MAAA,GAAG,IAAA,CAAKA;AAAM,KAAA;AACjC2B,IAAAA,QAAAA,CAASzB,WAAAA,GAAc;SAAI,IAAA,CAAKA;;AAChC,IAAA,OAAOyB,QAAAA;AACT;AACF;;;IAjCWI,UAAAA,EAAY;;;;;AAoChB,MAAMC,yBAAyBC,yBAAAA,CAAAA;AAAAA,EAAAA;;;;EACpC,WAAA,CACEC,OAAAA,EACgBC,WAAAA,EAChBC,KAAAA,EACAhB,OAAAA,EACA;AACA,IAAA,KAAA,CAAMc,SAASE,KAAAA,GAAQ;AAACA,MAAAA;QAASlB,MAAAA,EAAW;MAC1CmB,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa,KAAA;AACblB,MAAAA;KACF,CAAA,EAAA,KARgBe,WAAAA,GAAAA,WAAAA;AASlB;AACF","file":"requirement.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AnyTool } from \"@/tools/base.js\";\nimport { MiddlewareType, RunContext } from \"@/context.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { FrameworkError, ValueError } from \"@/errors.js\";\nimport { toCamelCase } from \"remeda\";\nimport type { RequirementAgentRunState } from \"@/agents/requirement/types.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\n// Rule definition\nexport interface Rule {\n target: string;\n allowed: boolean;\n reason?: string;\n preventStop: boolean;\n forced: boolean;\n hidden: boolean;\n}\n\n// Base Requirement class\nexport abstract class Requirement {\n public name: string;\n public state: Record<string, any> = {};\n public enabled = true;\n public middlewares: MiddlewareType<typeof this>[] = [];\n\n protected _priority = 10;\n\n constructor(name?: string) {\n this.name = name || this.constructor.name;\n }\n\n get priority(): number {\n return this._priority;\n }\n\n set priority(value: number) {\n if (value <= 0) {\n throw new ValueError(\"Priority must be a positive integer.\");\n }\n this._priority = value;\n }\n\n @Cache({ enumerable: false })\n get emitter(): Emitter<RequirementCallbacks> {\n return Emitter.root.child({\n namespace: [\"requirement\", toCamelCase(this.name)],\n creator: this,\n });\n }\n\n run(state: RequirementAgentRunState) {\n return RunContext.enter(\n this,\n { signal: undefined, params: [state] as const },\n async (context) => {\n return await this._run(state, context);\n },\n );\n }\n\n abstract _run(state: RequirementAgentRunState, _: RunContext<typeof this>): Promise<Rule[]>;\n\n async init(tools: AnyTool[], _: RunContext<any>): Promise<void> {\n await this.emitter.emit(\"init\", { tools });\n }\n\n async clone(): Promise<this> {\n const instance = Object.create(Object.getPrototypeOf(this));\n instance.name = this.name;\n instance.priority = this.priority;\n instance.enabled = this.enabled;\n instance.state = { ...this.state };\n instance.middlewares = [...this.middlewares];\n return instance;\n }\n}\n\n// Requirement error\nexport class RequirementError extends FrameworkError {\n constructor(\n message: string,\n public readonly requirement?: Requirement,\n cause?: Error,\n context?: Record<string, any>,\n ) {\n super(message, cause ? [cause] : undefined, {\n isFatal: true,\n isRetryable: false,\n context,\n });\n }\n}\n\nexport interface RequirementCallbacks {\n init: Callback<{ tools: AnyTool[] }>;\n}\n"]}
@@ -0,0 +1,59 @@
1
+ import { MiddlewareType, Run, RunContext } from '../../../context.cjs';
2
+ import { AnyTool } from '../../../tools/base.cjs';
3
+ import { E as Emitter, C as Callback } from '../../../emitter-CGKd_-kK.cjs';
4
+ import { FrameworkError } from '../../../errors.cjs';
5
+ import { R as RequirementAgentRunState } from '../../../types-Cx6f43du.cjs';
6
+ import '../../../internals/serializable.cjs';
7
+ import '../../../internals/types.cjs';
8
+ import '../../../internals/helpers/guards.cjs';
9
+ import '../../../internals/helpers/promise.cjs';
10
+ import 'ajv';
11
+ import 'promise-based-task';
12
+ import '../../../cache/base.cjs';
13
+ import '../../../internals/helpers/schema.cjs';
14
+ import 'zod';
15
+ import 'zod-to-json-schema';
16
+ import '../../../memory/base.cjs';
17
+ import '../../../backend/message.cjs';
18
+ import 'ai';
19
+ import '../../../template.cjs';
20
+ import '../../../chat-DB_cf15S.cjs';
21
+ import '../../../backend/constants.cjs';
22
+ import '../../../logger/logger.cjs';
23
+ import 'pino';
24
+ import '../../../base-v-PYIq5G.cjs';
25
+
26
+ interface Rule {
27
+ target: string;
28
+ allowed: boolean;
29
+ reason?: string;
30
+ preventStop: boolean;
31
+ forced: boolean;
32
+ hidden: boolean;
33
+ }
34
+ declare abstract class Requirement {
35
+ name: string;
36
+ state: Record<string, any>;
37
+ enabled: boolean;
38
+ middlewares: MiddlewareType<typeof this>[];
39
+ protected _priority: number;
40
+ constructor(name?: string);
41
+ get priority(): number;
42
+ set priority(value: number);
43
+ get emitter(): Emitter<RequirementCallbacks>;
44
+ run(state: RequirementAgentRunState): Run<Rule[], this, readonly [RequirementAgentRunState]>;
45
+ abstract _run(state: RequirementAgentRunState, _: RunContext<typeof this>): Promise<Rule[]>;
46
+ init(tools: AnyTool[], _: RunContext<any>): Promise<void>;
47
+ clone(): Promise<this>;
48
+ }
49
+ declare class RequirementError extends FrameworkError {
50
+ readonly requirement?: Requirement | undefined;
51
+ constructor(message: string, requirement?: Requirement | undefined, cause?: Error, context?: Record<string, any>);
52
+ }
53
+ interface RequirementCallbacks {
54
+ init: Callback<{
55
+ tools: AnyTool[];
56
+ }>;
57
+ }
58
+
59
+ export { Requirement, type RequirementCallbacks, RequirementError, type Rule };
@@ -0,0 +1,59 @@
1
+ import { MiddlewareType, Run, RunContext } from '../../../context.js';
2
+ import { AnyTool } from '../../../tools/base.js';
3
+ import { E as Emitter, C as Callback } from '../../../emitter-CN7I4uSV.js';
4
+ import { FrameworkError } from '../../../errors.js';
5
+ import { R as RequirementAgentRunState } from '../../../types-BXkkbABd.js';
6
+ import '../../../internals/serializable.js';
7
+ import '../../../internals/types.js';
8
+ import '../../../internals/helpers/guards.js';
9
+ import '../../../internals/helpers/promise.js';
10
+ import 'ajv';
11
+ import 'promise-based-task';
12
+ import '../../../cache/base.js';
13
+ import '../../../internals/helpers/schema.js';
14
+ import 'zod';
15
+ import 'zod-to-json-schema';
16
+ import '../../../memory/base.js';
17
+ import '../../../backend/message.js';
18
+ import 'ai';
19
+ import '../../../template.js';
20
+ import '../../../chat-BbCYMAdE.js';
21
+ import '../../../backend/constants.js';
22
+ import '../../../logger/logger.js';
23
+ import 'pino';
24
+ import '../../../base-BurRTBA7.js';
25
+
26
+ interface Rule {
27
+ target: string;
28
+ allowed: boolean;
29
+ reason?: string;
30
+ preventStop: boolean;
31
+ forced: boolean;
32
+ hidden: boolean;
33
+ }
34
+ declare abstract class Requirement {
35
+ name: string;
36
+ state: Record<string, any>;
37
+ enabled: boolean;
38
+ middlewares: MiddlewareType<typeof this>[];
39
+ protected _priority: number;
40
+ constructor(name?: string);
41
+ get priority(): number;
42
+ set priority(value: number);
43
+ get emitter(): Emitter<RequirementCallbacks>;
44
+ run(state: RequirementAgentRunState): Run<Rule[], this, readonly [RequirementAgentRunState]>;
45
+ abstract _run(state: RequirementAgentRunState, _: RunContext<typeof this>): Promise<Rule[]>;
46
+ init(tools: AnyTool[], _: RunContext<any>): Promise<void>;
47
+ clone(): Promise<this>;
48
+ }
49
+ declare class RequirementError extends FrameworkError {
50
+ readonly requirement?: Requirement | undefined;
51
+ constructor(message: string, requirement?: Requirement | undefined, cause?: Error, context?: Record<string, any>);
52
+ }
53
+ interface RequirementCallbacks {
54
+ init: Callback<{
55
+ tools: AnyTool[];
56
+ }>;
57
+ }
58
+
59
+ export { Requirement, type RequirementCallbacks, RequirementError, type Rule };
@@ -0,0 +1,104 @@
1
+ import { RunContext } from '../../../context.js';
2
+ import { Emitter } from '../../../emitter/emitter.js';
3
+ import { ValueError, FrameworkError } from '../../../errors.js';
4
+ import { toCamelCase } from 'remeda';
5
+ import { Cache } from '../../../cache/decoratorCache.js';
6
+
7
+ var __defProp = Object.defineProperty;
8
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
+ function _ts_decorate(decorators, target, key, desc) {
10
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
14
+ }
15
+ __name(_ts_decorate, "_ts_decorate");
16
+ function _ts_metadata(k, v) {
17
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
18
+ }
19
+ __name(_ts_metadata, "_ts_metadata");
20
+ class Requirement {
21
+ static {
22
+ __name(this, "Requirement");
23
+ }
24
+ name;
25
+ state = {};
26
+ enabled = true;
27
+ middlewares = [];
28
+ _priority = 10;
29
+ constructor(name) {
30
+ this.name = name || this.constructor.name;
31
+ }
32
+ get priority() {
33
+ return this._priority;
34
+ }
35
+ set priority(value) {
36
+ if (value <= 0) {
37
+ throw new ValueError("Priority must be a positive integer.");
38
+ }
39
+ this._priority = value;
40
+ }
41
+ get emitter() {
42
+ return Emitter.root.child({
43
+ namespace: [
44
+ "requirement",
45
+ toCamelCase(this.name)
46
+ ],
47
+ creator: this
48
+ });
49
+ }
50
+ run(state) {
51
+ return RunContext.enter(this, {
52
+ signal: void 0,
53
+ params: [
54
+ state
55
+ ]
56
+ }, async (context) => {
57
+ return await this._run(state, context);
58
+ });
59
+ }
60
+ async init(tools, _) {
61
+ await this.emitter.emit("init", {
62
+ tools
63
+ });
64
+ }
65
+ async clone() {
66
+ const instance = Object.create(Object.getPrototypeOf(this));
67
+ instance.name = this.name;
68
+ instance.priority = this.priority;
69
+ instance.enabled = this.enabled;
70
+ instance.state = {
71
+ ...this.state
72
+ };
73
+ instance.middlewares = [
74
+ ...this.middlewares
75
+ ];
76
+ return instance;
77
+ }
78
+ }
79
+ _ts_decorate([
80
+ Cache({
81
+ enumerable: false
82
+ }),
83
+ _ts_metadata("design:type", typeof Emitter === "undefined" ? Object : Emitter),
84
+ _ts_metadata("design:paramtypes", [])
85
+ ], Requirement.prototype, "emitter", null);
86
+ class RequirementError extends FrameworkError {
87
+ static {
88
+ __name(this, "RequirementError");
89
+ }
90
+ requirement;
91
+ constructor(message, requirement, cause, context) {
92
+ super(message, cause ? [
93
+ cause
94
+ ] : void 0, {
95
+ isFatal: true,
96
+ isRetryable: false,
97
+ context
98
+ }), this.requirement = requirement;
99
+ }
100
+ }
101
+
102
+ export { Requirement, RequirementError };
103
+ //# sourceMappingURL=requirement.js.map
104
+ //# sourceMappingURL=requirement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/agents/requirement/requirements/requirement.ts"],"names":["Requirement","name","state","enabled","middlewares","_priority","priority","value","ValueError","emitter","Emitter","root","child","namespace","toCamelCase","creator","run","RunContext","enter","signal","undefined","params","context","_run","init","tools","_","emit","clone","instance","Object","create","getPrototypeOf","enumerable","RequirementError","FrameworkError","message","requirement","cause","isFatal","isRetryable"],"mappings":";;;;;;;;;;;;;;;;;;;AAwBO,MAAeA,WAAAA,CAAAA;AAAAA,EAAAA;;;AACbC,EAAAA,IAAAA;AACAC,EAAAA,KAAAA,GAA6B,EAAC;EAC9BC,OAAAA,GAAU,IAAA;AACVC,EAAAA,WAAAA,GAA6C,EAAA;EAE1CC,SAAAA,GAAY,EAAA;AAEtB,EAAA,WAAA,CAAYJ,IAAAA,EAAe;AACzB,IAAA,IAAA,CAAKA,IAAAA,GAAOA,IAAAA,IAAQ,IAAA,CAAK,WAAA,CAAYA,IAAAA;AACvC;AAEA,EAAA,IAAIK,QAAAA,GAAmB;AACrB,IAAA,OAAO,IAAA,CAAKD,SAAAA;AACd;AAEA,EAAA,IAAIC,SAASC,KAAAA,EAAe;AAC1B,IAAA,IAAIA,SAAS,CAAA,EAAG;AACd,MAAA,MAAM,IAAIC,WAAW,sCAAA,CAAA;AACvB;AACA,IAAA,IAAA,CAAKH,SAAAA,GAAYE,KAAAA;AACnB;AAEA,EAAA,IACIE,OAAAA,GAAyC;AAC3C,IAAA,OAAOC,OAAAA,CAAQC,KAAKC,KAAAA,CAAM;MACxBC,SAAAA,EAAW;AAAC,QAAA,aAAA;AAAeC,QAAAA,WAAAA,CAAY,KAAKb,IAAI;;MAChDc,OAAAA,EAAS;KACX,CAAA;AACF;AAEAC,EAAAA,GAAAA,CAAId,KAAAA,EAAiC;AACnC,IAAA,OAAOe,UAAAA,CAAWC,MAChB,IAAA,EACA;MAAEC,MAAAA,EAAQC,MAAAA;MAAWC,MAAAA,EAAQ;AAACnB,QAAAA;;AAAgB,KAAA,EAC9C,OAAOoB,OAAAA,KAAAA;AACL,MAAA,OAAO,MAAM,IAAA,CAAKC,IAAAA,CAAKrB,KAAAA,EAAOoB,OAAAA,CAAAA;KAChC,CAAA;AAEJ;EAIA,MAAME,IAAAA,CAAKC,OAAkBC,CAAAA,EAAmC;AAC9D,IAAA,MAAM,IAAA,CAAKjB,OAAAA,CAAQkB,IAAAA,CAAK,MAAA,EAAQ;AAAEF,MAAAA;KAAM,CAAA;AAC1C;AAEA,EAAA,MAAMG,KAAAA,GAAuB;AAC3B,IAAA,MAAMC,WAAWC,MAAAA,CAAOC,MAAAA,CAAOD,MAAAA,CAAOE,cAAAA,CAAe,IAAI,CAAA,CAAA;AACzDH,IAAAA,QAAAA,CAAS5B,OAAO,IAAA,CAAKA,IAAAA;AACrB4B,IAAAA,QAAAA,CAASvB,WAAW,IAAA,CAAKA,QAAAA;AACzBuB,IAAAA,QAAAA,CAAS1B,UAAU,IAAA,CAAKA,OAAAA;AACxB0B,IAAAA,QAAAA,CAAS3B,KAAAA,GAAQ;AAAE,MAAA,GAAG,IAAA,CAAKA;AAAM,KAAA;AACjC2B,IAAAA,QAAAA,CAASzB,WAAAA,GAAc;SAAI,IAAA,CAAKA;;AAChC,IAAA,OAAOyB,QAAAA;AACT;AACF;;;IAjCWI,UAAAA,EAAY;;;;;AAoChB,MAAMC,yBAAyBC,cAAAA,CAAAA;AAAAA,EAAAA;;;;EACpC,WAAA,CACEC,OAAAA,EACgBC,WAAAA,EAChBC,KAAAA,EACAhB,OAAAA,EACA;AACA,IAAA,KAAA,CAAMc,SAASE,KAAAA,GAAQ;AAACA,MAAAA;QAASlB,MAAAA,EAAW;MAC1CmB,OAAAA,EAAS,IAAA;MACTC,WAAAA,EAAa,KAAA;AACblB,MAAAA;KACF,CAAA,EAAA,KARgBe,WAAAA,GAAAA,WAAAA;AASlB;AACF","file":"requirement.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AnyTool } from \"@/tools/base.js\";\nimport { MiddlewareType, RunContext } from \"@/context.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { FrameworkError, ValueError } from \"@/errors.js\";\nimport { toCamelCase } from \"remeda\";\nimport type { RequirementAgentRunState } from \"@/agents/requirement/types.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\n// Rule definition\nexport interface Rule {\n target: string;\n allowed: boolean;\n reason?: string;\n preventStop: boolean;\n forced: boolean;\n hidden: boolean;\n}\n\n// Base Requirement class\nexport abstract class Requirement {\n public name: string;\n public state: Record<string, any> = {};\n public enabled = true;\n public middlewares: MiddlewareType<typeof this>[] = [];\n\n protected _priority = 10;\n\n constructor(name?: string) {\n this.name = name || this.constructor.name;\n }\n\n get priority(): number {\n return this._priority;\n }\n\n set priority(value: number) {\n if (value <= 0) {\n throw new ValueError(\"Priority must be a positive integer.\");\n }\n this._priority = value;\n }\n\n @Cache({ enumerable: false })\n get emitter(): Emitter<RequirementCallbacks> {\n return Emitter.root.child({\n namespace: [\"requirement\", toCamelCase(this.name)],\n creator: this,\n });\n }\n\n run(state: RequirementAgentRunState) {\n return RunContext.enter(\n this,\n { signal: undefined, params: [state] as const },\n async (context) => {\n return await this._run(state, context);\n },\n );\n }\n\n abstract _run(state: RequirementAgentRunState, _: RunContext<typeof this>): Promise<Rule[]>;\n\n async init(tools: AnyTool[], _: RunContext<any>): Promise<void> {\n await this.emitter.emit(\"init\", { tools });\n }\n\n async clone(): Promise<this> {\n const instance = Object.create(Object.getPrototypeOf(this));\n instance.name = this.name;\n instance.priority = this.priority;\n instance.enabled = this.enabled;\n instance.state = { ...this.state };\n instance.middlewares = [...this.middlewares];\n return instance;\n }\n}\n\n// Requirement error\nexport class RequirementError extends FrameworkError {\n constructor(\n message: string,\n public readonly requirement?: Requirement,\n cause?: Error,\n context?: Record<string, any>,\n ) {\n super(message, cause ? [cause] : undefined, {\n isFatal: true,\n isRetryable: false,\n context,\n });\n }\n}\n\nexport interface RequirementCallbacks {\n init: Callback<{ tools: AnyTool[] }>;\n}\n"]}
@@ -0,0 +1,74 @@
1
+ 'use strict';
2
+
3
+ var base_cjs = require('../../../tools/base.cjs');
4
+ var errors_cjs = require('../../../errors.cjs');
5
+ var remeda = require('remeda');
6
+ var prototype_cjs = require('../../../internals/helpers/prototype.cjs');
7
+
8
+ var __defProp = Object.defineProperty;
9
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
+ function extractTargetName(target) {
11
+ if (typeof target === "string") {
12
+ return target;
13
+ }
14
+ if (typeof target === "function") {
15
+ return target.name;
16
+ }
17
+ return target.name;
18
+ }
19
+ __name(extractTargetName, "extractTargetName");
20
+ function extractTargets(targets) {
21
+ if (!targets) {
22
+ return /* @__PURE__ */ new Set();
23
+ }
24
+ const targetArray = Array.isArray(targets) ? targets : [
25
+ targets
26
+ ];
27
+ return new Set(targetArray);
28
+ }
29
+ __name(extractTargets, "extractTargets");
30
+ function targetSeenIn(target, haystack) {
31
+ if (!target) {
32
+ return null;
33
+ }
34
+ if (!(haystack instanceof Set)) {
35
+ haystack = /* @__PURE__ */ new Set([
36
+ haystack
37
+ ]);
38
+ }
39
+ for (const needle of haystack.values()) {
40
+ if (remeda.isString(needle) && needle === target.name) {
41
+ return needle;
42
+ }
43
+ if (needle instanceof base_cjs.Tool && needle === target) {
44
+ return needle;
45
+ }
46
+ if (prototype_cjs.isConstructor(needle) && target instanceof needle) {
47
+ return needle;
48
+ }
49
+ }
50
+ return null;
51
+ }
52
+ __name(targetSeenIn, "targetSeenIn");
53
+ function assertAllRulesFound(targets, tools) {
54
+ for (const target of targets) {
55
+ let found = false;
56
+ for (const tool of tools) {
57
+ if (targetSeenIn(tool, target)) {
58
+ found = true;
59
+ break;
60
+ }
61
+ }
62
+ if (!found) {
63
+ throw new errors_cjs.ValueError(`Tool '${target}' is specified as 'source', 'before', 'after' or 'force_after' but not found.`);
64
+ }
65
+ }
66
+ }
67
+ __name(assertAllRulesFound, "assertAllRulesFound");
68
+
69
+ exports.assertAllRulesFound = assertAllRulesFound;
70
+ exports.extractTargetName = extractTargetName;
71
+ exports.extractTargets = extractTargets;
72
+ exports.targetSeenIn = targetSeenIn;
73
+ //# sourceMappingURL=utils.cjs.map
74
+ //# sourceMappingURL=utils.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/agents/requirement/requirements/utils.ts"],"names":["extractTargetName","target","name","extractTargets","targets","Set","targetArray","Array","isArray","targetSeenIn","haystack","needle","values","isString","Tool","isConstructor","assertAllRulesFound","tools","found","tool","ValueError"],"mappings":";;;;;;;;;AAgBO,SAASA,kBAAkBC,MAAAA,EAAkB;AAClD,EAAA,IAAI,OAAOA,WAAW,QAAA,EAAU;AAC9B,IAAA,OAAOA,MAAAA;AACT;AACA,EAAA,IAAI,OAAOA,WAAW,UAAA,EAAY;AAChC,IAAA,OAAOA,MAAAA,CAAOC,IAAAA;AAChB;AACA,EAAA,OAAOD,MAAAA,CAAOC,IAAAA;AAChB;AARgBF,MAAAA,CAAAA,iBAAAA,EAAAA,mBAAAA,CAAAA;AAaT,SAASG,eAAeC,OAAAA,EAAyB;AACtD,EAAA,IAAI,CAACA,OAAAA,EAAS;AACZ,IAAA,2BAAWC,GAAAA,EAAAA;AACb;AAEA,EAAA,MAAMC,WAAAA,GAAcC,KAAAA,CAAMC,OAAAA,CAAQJ,OAAAA,IAAWA,OAAAA,GAAU;AAACA,IAAAA;;AACxD,EAAA,OAAO,IAAIC,IAAIC,WAAAA,CAAAA;AACjB;AAPgBH,MAAAA,CAAAA,cAAAA,EAAAA,gBAAAA,CAAAA;AAYT,SAASM,YAAAA,CACdR,QACAS,QAAAA,EAAsC;AAEtC,EAAA,IAAI,CAACT,MAAAA,EAAQ;AACX,IAAA,OAAO,IAAA;AACT;AAEA,EAAA,IAAI,EAAES,oBAAoBL,GAAAA,CAAAA,EAAM;AAC9BK,IAAAA,QAAAA,uBAAeL,GAAAA,CAAI;AAACK,MAAAA;AAAS,KAAA,CAAA;AAC/B;AAEA,EAAA,KAAA,MAAWC,MAAAA,IAAUD,QAAAA,CAASE,MAAAA,EAAM,EAAI;AACtC,IAAA,IAAIC,eAAAA,CAASF,MAAAA,CAAAA,IAAWA,MAAAA,KAAWV,OAAOC,IAAAA,EAAM;AAC9C,MAAA,OAAOS,MAAAA;AACT;AACA,IAAA,IAAIA,MAAAA,YAAkBG,aAAAA,IAAQH,MAAAA,KAAWV,MAAAA,EAAQ;AAC/C,MAAA,OAAOU,MAAAA;AACT;AACA,IAAA,IAAII,2BAAAA,CAAcJ,MAAAA,CAAAA,IAAWV,MAAAA,YAAkBU,MAAAA,EAAQ;AACrD,MAAA,OAAOA,MAAAA;AACT;AACF;AAEA,EAAA,OAAO,IAAA;AACT;AAzBgBF,MAAAA,CAAAA,YAAAA,EAAAA,cAAAA,CAAAA;AA8BT,SAASO,mBAAAA,CAAoBZ,SAA0Ba,KAAAA,EAAgB;AAC5E,EAAA,KAAA,MAAWhB,UAAUG,OAAAA,EAAS;AAC5B,IAAA,IAAIc,KAAAA,GAAQ,KAAA;AACZ,IAAA,KAAA,MAAWC,QAAQF,KAAAA,EAAO;AACxB,MAAA,IAAIR,YAAAA,CAAaU,IAAAA,EAAMlB,MAAAA,CAAAA,EAAS;AAC9BiB,QAAAA,KAAAA,GAAQ,IAAA;AACR,QAAA;AACF;AACF;AACA,IAAA,IAAI,CAACA,KAAAA,EAAO;AACV,MAAA,MAAM,IAAIE,qBAAAA,CACR,CAAA,MAAA,EAASnB,MAAAA,CAAAA,6EAAAA,CAAqF,CAAA;AAElG;AACF;AACF;AAfgBe,MAAAA,CAAAA,mBAAAA,EAAAA,qBAAAA,CAAAA","file":"utils.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AnyTool, AnyToolClass, Tool } from \"@/tools/base.js\";\nimport { ValueError } from \"@/errors.js\";\nimport { isString } from \"remeda\";\nimport { isConstructor } from \"@/internals/helpers/prototype.js\";\n\nexport type TargetType = string | AnyTool | AnyToolClass;\nexport type MultiTargetType = TargetType | TargetType[];\n\n/**\n * Extract target name from various input types\n */\nexport function extractTargetName(target: TargetType): string {\n if (typeof target === \"string\") {\n return target;\n }\n if (typeof target === \"function\") {\n return target.name;\n }\n return target.name;\n}\n\n/**\n * Extract set of target names from various input types\n */\nexport function extractTargets(targets?: MultiTargetType): Set<TargetType> {\n if (!targets) {\n return new Set();\n }\n\n const targetArray = Array.isArray(targets) ? targets : [targets];\n return new Set(targetArray);\n}\n\n/**\n * Check if a tool matches any target in the set\n */\nexport function targetSeenIn(\n target: AnyTool | null | undefined,\n haystack: Set<TargetType> | TargetType,\n): TargetType | null {\n if (!target) {\n return null;\n }\n\n if (!(haystack instanceof Set)) {\n haystack = new Set([haystack]);\n }\n\n for (const needle of haystack.values()) {\n if (isString(needle) && needle === target.name) {\n return needle;\n }\n if (needle instanceof Tool && needle === target) {\n return needle;\n }\n if (isConstructor(needle) && target instanceof needle) {\n return needle;\n }\n }\n\n return null;\n}\n\n/**\n * Assert that all targets exist in the tools list\n */\nexport function assertAllRulesFound(targets: Set<TargetType>, tools: AnyTool[]): void {\n for (const target of targets) {\n let found = false;\n for (const tool of tools) {\n if (targetSeenIn(tool, target)) {\n found = true;\n break;\n }\n }\n if (!found) {\n throw new ValueError(\n `Tool '${target}' is specified as 'source', 'before', 'after' or 'force_after' but not found.`,\n );\n }\n }\n}\n"]}
@@ -0,0 +1,40 @@
1
+ import { AnyTool, AnyToolClass } from '../../../tools/base.cjs';
2
+ import 'ajv';
3
+ import '../../../context.cjs';
4
+ import '../../../emitter-CGKd_-kK.cjs';
5
+ import '../../../internals/types.cjs';
6
+ import '../../../internals/helpers/guards.cjs';
7
+ import '../../../internals/serializable.cjs';
8
+ import '../../../internals/helpers/promise.cjs';
9
+ import '../../../errors.cjs';
10
+ import 'promise-based-task';
11
+ import '../../../cache/base.cjs';
12
+ import '../../../internals/helpers/schema.cjs';
13
+ import 'zod';
14
+ import 'zod-to-json-schema';
15
+
16
+ /**
17
+ * Copyright 2025 © BeeAI a Series of LF Projects, LLC
18
+ * SPDX-License-Identifier: Apache-2.0
19
+ */
20
+
21
+ type TargetType = string | AnyTool | AnyToolClass;
22
+ type MultiTargetType = TargetType | TargetType[];
23
+ /**
24
+ * Extract target name from various input types
25
+ */
26
+ declare function extractTargetName(target: TargetType): string;
27
+ /**
28
+ * Extract set of target names from various input types
29
+ */
30
+ declare function extractTargets(targets?: MultiTargetType): Set<TargetType>;
31
+ /**
32
+ * Check if a tool matches any target in the set
33
+ */
34
+ declare function targetSeenIn(target: AnyTool | null | undefined, haystack: Set<TargetType> | TargetType): TargetType | null;
35
+ /**
36
+ * Assert that all targets exist in the tools list
37
+ */
38
+ declare function assertAllRulesFound(targets: Set<TargetType>, tools: AnyTool[]): void;
39
+
40
+ export { type MultiTargetType, type TargetType, assertAllRulesFound, extractTargetName, extractTargets, targetSeenIn };
@@ -0,0 +1,40 @@
1
+ import { AnyTool, AnyToolClass } from '../../../tools/base.js';
2
+ import 'ajv';
3
+ import '../../../context.js';
4
+ import '../../../emitter-CN7I4uSV.js';
5
+ import '../../../internals/types.js';
6
+ import '../../../internals/helpers/guards.js';
7
+ import '../../../internals/serializable.js';
8
+ import '../../../internals/helpers/promise.js';
9
+ import '../../../errors.js';
10
+ import 'promise-based-task';
11
+ import '../../../cache/base.js';
12
+ import '../../../internals/helpers/schema.js';
13
+ import 'zod';
14
+ import 'zod-to-json-schema';
15
+
16
+ /**
17
+ * Copyright 2025 © BeeAI a Series of LF Projects, LLC
18
+ * SPDX-License-Identifier: Apache-2.0
19
+ */
20
+
21
+ type TargetType = string | AnyTool | AnyToolClass;
22
+ type MultiTargetType = TargetType | TargetType[];
23
+ /**
24
+ * Extract target name from various input types
25
+ */
26
+ declare function extractTargetName(target: TargetType): string;
27
+ /**
28
+ * Extract set of target names from various input types
29
+ */
30
+ declare function extractTargets(targets?: MultiTargetType): Set<TargetType>;
31
+ /**
32
+ * Check if a tool matches any target in the set
33
+ */
34
+ declare function targetSeenIn(target: AnyTool | null | undefined, haystack: Set<TargetType> | TargetType): TargetType | null;
35
+ /**
36
+ * Assert that all targets exist in the tools list
37
+ */
38
+ declare function assertAllRulesFound(targets: Set<TargetType>, tools: AnyTool[]): void;
39
+
40
+ export { type MultiTargetType, type TargetType, assertAllRulesFound, extractTargetName, extractTargets, targetSeenIn };
@@ -0,0 +1,69 @@
1
+ import { Tool } from '../../../tools/base.js';
2
+ import { ValueError } from '../../../errors.js';
3
+ import { isString } from 'remeda';
4
+ import { isConstructor } from '../../../internals/helpers/prototype.js';
5
+
6
+ var __defProp = Object.defineProperty;
7
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
+ function extractTargetName(target) {
9
+ if (typeof target === "string") {
10
+ return target;
11
+ }
12
+ if (typeof target === "function") {
13
+ return target.name;
14
+ }
15
+ return target.name;
16
+ }
17
+ __name(extractTargetName, "extractTargetName");
18
+ function extractTargets(targets) {
19
+ if (!targets) {
20
+ return /* @__PURE__ */ new Set();
21
+ }
22
+ const targetArray = Array.isArray(targets) ? targets : [
23
+ targets
24
+ ];
25
+ return new Set(targetArray);
26
+ }
27
+ __name(extractTargets, "extractTargets");
28
+ function targetSeenIn(target, haystack) {
29
+ if (!target) {
30
+ return null;
31
+ }
32
+ if (!(haystack instanceof Set)) {
33
+ haystack = /* @__PURE__ */ new Set([
34
+ haystack
35
+ ]);
36
+ }
37
+ for (const needle of haystack.values()) {
38
+ if (isString(needle) && needle === target.name) {
39
+ return needle;
40
+ }
41
+ if (needle instanceof Tool && needle === target) {
42
+ return needle;
43
+ }
44
+ if (isConstructor(needle) && target instanceof needle) {
45
+ return needle;
46
+ }
47
+ }
48
+ return null;
49
+ }
50
+ __name(targetSeenIn, "targetSeenIn");
51
+ function assertAllRulesFound(targets, tools) {
52
+ for (const target of targets) {
53
+ let found = false;
54
+ for (const tool of tools) {
55
+ if (targetSeenIn(tool, target)) {
56
+ found = true;
57
+ break;
58
+ }
59
+ }
60
+ if (!found) {
61
+ throw new ValueError(`Tool '${target}' is specified as 'source', 'before', 'after' or 'force_after' but not found.`);
62
+ }
63
+ }
64
+ }
65
+ __name(assertAllRulesFound, "assertAllRulesFound");
66
+
67
+ export { assertAllRulesFound, extractTargetName, extractTargets, targetSeenIn };
68
+ //# sourceMappingURL=utils.js.map
69
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/agents/requirement/requirements/utils.ts"],"names":["extractTargetName","target","name","extractTargets","targets","Set","targetArray","Array","isArray","targetSeenIn","haystack","needle","values","isString","Tool","isConstructor","assertAllRulesFound","tools","found","tool","ValueError"],"mappings":";;;;;;;AAgBO,SAASA,kBAAkBC,MAAAA,EAAkB;AAClD,EAAA,IAAI,OAAOA,WAAW,QAAA,EAAU;AAC9B,IAAA,OAAOA,MAAAA;AACT;AACA,EAAA,IAAI,OAAOA,WAAW,UAAA,EAAY;AAChC,IAAA,OAAOA,MAAAA,CAAOC,IAAAA;AAChB;AACA,EAAA,OAAOD,MAAAA,CAAOC,IAAAA;AAChB;AARgBF,MAAAA,CAAAA,iBAAAA,EAAAA,mBAAAA,CAAAA;AAaT,SAASG,eAAeC,OAAAA,EAAyB;AACtD,EAAA,IAAI,CAACA,OAAAA,EAAS;AACZ,IAAA,2BAAWC,GAAAA,EAAAA;AACb;AAEA,EAAA,MAAMC,WAAAA,GAAcC,KAAAA,CAAMC,OAAAA,CAAQJ,OAAAA,IAAWA,OAAAA,GAAU;AAACA,IAAAA;;AACxD,EAAA,OAAO,IAAIC,IAAIC,WAAAA,CAAAA;AACjB;AAPgBH,MAAAA,CAAAA,cAAAA,EAAAA,gBAAAA,CAAAA;AAYT,SAASM,YAAAA,CACdR,QACAS,QAAAA,EAAsC;AAEtC,EAAA,IAAI,CAACT,MAAAA,EAAQ;AACX,IAAA,OAAO,IAAA;AACT;AAEA,EAAA,IAAI,EAAES,oBAAoBL,GAAAA,CAAAA,EAAM;AAC9BK,IAAAA,QAAAA,uBAAeL,GAAAA,CAAI;AAACK,MAAAA;AAAS,KAAA,CAAA;AAC/B;AAEA,EAAA,KAAA,MAAWC,MAAAA,IAAUD,QAAAA,CAASE,MAAAA,EAAM,EAAI;AACtC,IAAA,IAAIC,QAAAA,CAASF,MAAAA,CAAAA,IAAWA,MAAAA,KAAWV,OAAOC,IAAAA,EAAM;AAC9C,MAAA,OAAOS,MAAAA;AACT;AACA,IAAA,IAAIA,MAAAA,YAAkBG,IAAAA,IAAQH,MAAAA,KAAWV,MAAAA,EAAQ;AAC/C,MAAA,OAAOU,MAAAA;AACT;AACA,IAAA,IAAII,aAAAA,CAAcJ,MAAAA,CAAAA,IAAWV,MAAAA,YAAkBU,MAAAA,EAAQ;AACrD,MAAA,OAAOA,MAAAA;AACT;AACF;AAEA,EAAA,OAAO,IAAA;AACT;AAzBgBF,MAAAA,CAAAA,YAAAA,EAAAA,cAAAA,CAAAA;AA8BT,SAASO,mBAAAA,CAAoBZ,SAA0Ba,KAAAA,EAAgB;AAC5E,EAAA,KAAA,MAAWhB,UAAUG,OAAAA,EAAS;AAC5B,IAAA,IAAIc,KAAAA,GAAQ,KAAA;AACZ,IAAA,KAAA,MAAWC,QAAQF,KAAAA,EAAO;AACxB,MAAA,IAAIR,YAAAA,CAAaU,IAAAA,EAAMlB,MAAAA,CAAAA,EAAS;AAC9BiB,QAAAA,KAAAA,GAAQ,IAAA;AACR,QAAA;AACF;AACF;AACA,IAAA,IAAI,CAACA,KAAAA,EAAO;AACV,MAAA,MAAM,IAAIE,UAAAA,CACR,CAAA,MAAA,EAASnB,MAAAA,CAAAA,6EAAAA,CAAqF,CAAA;AAElG;AACF;AACF;AAfgBe,MAAAA,CAAAA,mBAAAA,EAAAA,qBAAAA,CAAAA","file":"utils.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AnyTool, AnyToolClass, Tool } from \"@/tools/base.js\";\nimport { ValueError } from \"@/errors.js\";\nimport { isString } from \"remeda\";\nimport { isConstructor } from \"@/internals/helpers/prototype.js\";\n\nexport type TargetType = string | AnyTool | AnyToolClass;\nexport type MultiTargetType = TargetType | TargetType[];\n\n/**\n * Extract target name from various input types\n */\nexport function extractTargetName(target: TargetType): string {\n if (typeof target === \"string\") {\n return target;\n }\n if (typeof target === \"function\") {\n return target.name;\n }\n return target.name;\n}\n\n/**\n * Extract set of target names from various input types\n */\nexport function extractTargets(targets?: MultiTargetType): Set<TargetType> {\n if (!targets) {\n return new Set();\n }\n\n const targetArray = Array.isArray(targets) ? targets : [targets];\n return new Set(targetArray);\n}\n\n/**\n * Check if a tool matches any target in the set\n */\nexport function targetSeenIn(\n target: AnyTool | null | undefined,\n haystack: Set<TargetType> | TargetType,\n): TargetType | null {\n if (!target) {\n return null;\n }\n\n if (!(haystack instanceof Set)) {\n haystack = new Set([haystack]);\n }\n\n for (const needle of haystack.values()) {\n if (isString(needle) && needle === target.name) {\n return needle;\n }\n if (needle instanceof Tool && needle === target) {\n return needle;\n }\n if (isConstructor(needle) && target instanceof needle) {\n return needle;\n }\n }\n\n return null;\n}\n\n/**\n * Assert that all targets exist in the tools list\n */\nexport function assertAllRulesFound(targets: Set<TargetType>, tools: AnyTool[]): void {\n for (const target of targets) {\n let found = false;\n for (const tool of tools) {\n if (targetSeenIn(tool, target)) {\n found = true;\n break;\n }\n }\n if (!found) {\n throw new ValueError(\n `Tool '${target}' is specified as 'source', 'before', 'after' or 'force_after' but not found.`,\n );\n }\n }\n}\n"]}