opc-agent 4.1.1 → 4.1.3

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 (744) hide show
  1. package/dist/analytics/index.d.ts.map +1 -0
  2. package/dist/analytics/index.js.map +1 -0
  3. package/dist/channels/dingtalk.d.ts.map +1 -0
  4. package/dist/channels/dingtalk.js.map +1 -0
  5. package/dist/channels/discord.d.ts.map +1 -0
  6. package/dist/channels/discord.js.map +1 -0
  7. package/dist/channels/email.d.ts.map +1 -0
  8. package/dist/channels/email.js.map +1 -0
  9. package/dist/channels/feishu.d.ts.map +1 -0
  10. package/dist/channels/feishu.js.map +1 -0
  11. package/dist/channels/googlechat.d.ts.map +1 -0
  12. package/dist/channels/googlechat.js.map +1 -0
  13. package/dist/channels/imessage.d.ts.map +1 -0
  14. package/dist/channels/imessage.js.map +1 -0
  15. package/dist/channels/index.d.ts.map +1 -0
  16. package/dist/channels/index.js.map +1 -0
  17. package/dist/channels/irc.d.ts.map +1 -0
  18. package/dist/channels/irc.js.map +1 -0
  19. package/dist/channels/line.d.ts.map +1 -0
  20. package/dist/channels/line.js.map +1 -0
  21. package/dist/channels/matrix.d.ts.map +1 -0
  22. package/dist/channels/matrix.js.map +1 -0
  23. package/dist/channels/mattermost.d.ts.map +1 -0
  24. package/dist/channels/mattermost.js.map +1 -0
  25. package/dist/channels/msteams.d.ts.map +1 -0
  26. package/dist/channels/msteams.js.map +1 -0
  27. package/dist/channels/nostr.d.ts.map +1 -0
  28. package/dist/channels/nostr.js.map +1 -0
  29. package/dist/channels/qq.d.ts.map +1 -0
  30. package/dist/channels/qq.js.map +1 -0
  31. package/dist/channels/signal.d.ts.map +1 -0
  32. package/dist/channels/signal.js.map +1 -0
  33. package/dist/channels/slack.d.ts.map +1 -0
  34. package/dist/channels/slack.js.map +1 -0
  35. package/dist/channels/sms.d.ts.map +1 -0
  36. package/dist/channels/sms.js.map +1 -0
  37. package/dist/channels/telegram.d.ts.map +1 -0
  38. package/dist/channels/telegram.js.map +1 -0
  39. package/dist/channels/twitch.d.ts.map +1 -0
  40. package/dist/channels/twitch.js.map +1 -0
  41. package/dist/channels/voice-call.d.ts.map +1 -0
  42. package/dist/channels/voice-call.js.map +1 -0
  43. package/dist/channels/voice.d.ts.map +1 -0
  44. package/dist/channels/voice.js.map +1 -0
  45. package/dist/channels/web.d.ts.map +1 -0
  46. package/dist/channels/web.js +8 -2
  47. package/dist/channels/web.js.map +1 -0
  48. package/dist/channels/webhook.d.ts.map +1 -0
  49. package/dist/channels/webhook.js.map +1 -0
  50. package/dist/channels/websocket.d.ts.map +1 -0
  51. package/dist/channels/websocket.js.map +1 -0
  52. package/dist/channels/wechat.d.ts.map +1 -0
  53. package/dist/channels/wechat.js.map +1 -0
  54. package/dist/channels/whatsapp.d.ts.map +1 -0
  55. package/dist/channels/whatsapp.js.map +1 -0
  56. package/dist/cli/chat.d.ts.map +1 -0
  57. package/dist/cli/chat.js.map +1 -0
  58. package/dist/cli/setup.d.ts.map +1 -0
  59. package/dist/cli/setup.js.map +1 -0
  60. package/dist/cli.d.ts.map +1 -0
  61. package/dist/cli.js +261 -85
  62. package/dist/cli.js.map +1 -0
  63. package/dist/core/a2a.d.ts.map +1 -0
  64. package/dist/core/a2a.js.map +1 -0
  65. package/dist/core/agent.d.ts.map +1 -0
  66. package/dist/core/agent.js.map +1 -0
  67. package/dist/core/analytics-engine.d.ts.map +1 -0
  68. package/dist/core/analytics-engine.js.map +1 -0
  69. package/dist/core/api-server.d.ts.map +1 -0
  70. package/dist/core/api-server.js.map +1 -0
  71. package/dist/core/audio.d.ts.map +1 -0
  72. package/dist/core/audio.js.map +1 -0
  73. package/dist/core/auth.d.ts.map +1 -0
  74. package/dist/core/auth.js.map +1 -0
  75. package/dist/core/cache.d.ts.map +1 -0
  76. package/dist/core/cache.js.map +1 -0
  77. package/dist/core/collaboration.d.ts.map +1 -0
  78. package/dist/core/collaboration.js.map +1 -0
  79. package/dist/core/compose.d.ts.map +1 -0
  80. package/dist/core/compose.js.map +1 -0
  81. package/dist/core/config.d.ts.map +1 -0
  82. package/dist/core/config.js.map +1 -0
  83. package/dist/core/context-discovery.d.ts.map +1 -0
  84. package/dist/core/context-discovery.js.map +1 -0
  85. package/dist/core/context-refs.d.ts.map +1 -0
  86. package/dist/core/context-refs.js.map +1 -0
  87. package/dist/core/errors.d.ts.map +1 -0
  88. package/dist/core/errors.js.map +1 -0
  89. package/dist/core/gateway.d.ts.map +1 -0
  90. package/dist/core/gateway.js.map +1 -0
  91. package/dist/core/heartbeat.d.ts.map +1 -0
  92. package/dist/core/heartbeat.js.map +1 -0
  93. package/dist/core/hitl.d.ts.map +1 -0
  94. package/dist/core/hitl.js.map +1 -0
  95. package/dist/core/hooks.d.ts.map +1 -0
  96. package/dist/core/hooks.js.map +1 -0
  97. package/dist/core/ide-bridge.d.ts.map +1 -0
  98. package/dist/core/ide-bridge.js.map +1 -0
  99. package/dist/core/knowledge.d.ts.map +1 -0
  100. package/dist/core/knowledge.js.map +1 -0
  101. package/dist/core/logger.d.ts.map +1 -0
  102. package/dist/core/logger.js.map +1 -0
  103. package/dist/core/node-network.d.ts.map +1 -0
  104. package/dist/core/node-network.js.map +1 -0
  105. package/dist/core/orchestrator.d.ts.map +1 -0
  106. package/dist/core/orchestrator.js.map +1 -0
  107. package/dist/core/performance.d.ts.map +1 -0
  108. package/dist/core/performance.js.map +1 -0
  109. package/dist/core/profiles.d.ts.map +1 -0
  110. package/dist/core/profiles.js.map +1 -0
  111. package/dist/core/rate-limiter.d.ts.map +1 -0
  112. package/dist/core/rate-limiter.js.map +1 -0
  113. package/dist/core/room.d.ts.map +1 -0
  114. package/dist/core/room.js.map +1 -0
  115. package/dist/core/runtime.d.ts.map +1 -0
  116. package/dist/core/runtime.js +37 -15
  117. package/dist/core/runtime.js.map +1 -0
  118. package/dist/core/sandbox.d.ts.map +1 -0
  119. package/dist/core/sandbox.js.map +1 -0
  120. package/dist/core/scheduler.d.ts.map +1 -0
  121. package/dist/core/scheduler.js.map +1 -0
  122. package/dist/core/security.d.ts.map +1 -0
  123. package/dist/core/security.js.map +1 -0
  124. package/dist/core/session-manager.d.ts.map +1 -0
  125. package/dist/core/session-manager.js.map +1 -0
  126. package/dist/core/streaming.d.ts.map +1 -0
  127. package/dist/core/streaming.js.map +1 -0
  128. package/dist/core/subagent.d.ts.map +1 -0
  129. package/dist/core/subagent.js.map +1 -0
  130. package/dist/core/types.d.ts.map +1 -0
  131. package/dist/core/types.js.map +1 -0
  132. package/dist/core/versioning.d.ts.map +1 -0
  133. package/dist/core/versioning.js.map +1 -0
  134. package/dist/core/vision.d.ts.map +1 -0
  135. package/dist/core/vision.js.map +1 -0
  136. package/dist/core/watch.d.ts.map +1 -0
  137. package/dist/core/watch.js.map +1 -0
  138. package/dist/core/workflow-graph.d.ts.map +1 -0
  139. package/dist/core/workflow-graph.js.map +1 -0
  140. package/dist/core/workflow.d.ts.map +1 -0
  141. package/dist/core/workflow.js.map +1 -0
  142. package/dist/daemon.d.ts.map +1 -0
  143. package/dist/daemon.js.map +1 -0
  144. package/dist/deploy/hermes.d.ts.map +1 -0
  145. package/dist/deploy/hermes.js.map +1 -0
  146. package/dist/deploy/index.d.ts.map +1 -0
  147. package/dist/deploy/index.js.map +1 -0
  148. package/dist/deploy/openclaw.d.ts.map +1 -0
  149. package/dist/deploy/openclaw.js.map +1 -0
  150. package/dist/doctor.d.ts +1 -0
  151. package/dist/doctor.d.ts.map +1 -0
  152. package/dist/doctor.js +105 -10
  153. package/dist/doctor.js.map +1 -0
  154. package/dist/eval/index.d.ts.map +1 -0
  155. package/dist/eval/index.js.map +1 -0
  156. package/dist/hub/brain-seed.d.ts.map +1 -0
  157. package/dist/hub/brain-seed.js.map +1 -0
  158. package/dist/hub/client.d.ts.map +1 -0
  159. package/dist/hub/client.js.map +1 -0
  160. package/dist/i18n/index.d.ts.map +1 -0
  161. package/dist/i18n/index.js.map +1 -0
  162. package/dist/index.d.ts.map +1 -0
  163. package/dist/index.js.map +1 -0
  164. package/dist/mcp/servers/calculator-mcp.d.ts.map +1 -0
  165. package/dist/mcp/servers/calculator-mcp.js.map +1 -0
  166. package/dist/mcp/servers/crypto-mcp.d.ts.map +1 -0
  167. package/dist/mcp/servers/crypto-mcp.js.map +1 -0
  168. package/dist/mcp/servers/database-mcp.d.ts.map +1 -0
  169. package/dist/mcp/servers/database-mcp.js.map +1 -0
  170. package/dist/mcp/servers/datetime-mcp.d.ts.map +1 -0
  171. package/dist/mcp/servers/datetime-mcp.js.map +1 -0
  172. package/dist/mcp/servers/filesystem.d.ts.map +1 -0
  173. package/dist/mcp/servers/filesystem.js.map +1 -0
  174. package/dist/mcp/servers/github-mcp.d.ts.map +1 -0
  175. package/dist/mcp/servers/github-mcp.js.map +1 -0
  176. package/dist/mcp/servers/index.d.ts.map +1 -0
  177. package/dist/mcp/servers/index.js.map +1 -0
  178. package/dist/mcp/servers/json-mcp.d.ts.map +1 -0
  179. package/dist/mcp/servers/json-mcp.js.map +1 -0
  180. package/dist/mcp/servers/memory-mcp.d.ts.map +1 -0
  181. package/dist/mcp/servers/memory-mcp.js.map +1 -0
  182. package/dist/mcp/servers/regex-mcp.d.ts.map +1 -0
  183. package/dist/mcp/servers/regex-mcp.js.map +1 -0
  184. package/dist/mcp/servers/web-mcp.d.ts.map +1 -0
  185. package/dist/mcp/servers/web-mcp.js.map +1 -0
  186. package/dist/memory/context-compressor.d.ts.map +1 -0
  187. package/dist/memory/context-compressor.js.map +1 -0
  188. package/dist/memory/deepbrain.d.ts +1 -1
  189. package/dist/memory/deepbrain.d.ts.map +1 -0
  190. package/dist/memory/deepbrain.js +95 -4
  191. package/dist/memory/deepbrain.js.map +1 -0
  192. package/dist/memory/index.d.ts.map +1 -0
  193. package/dist/memory/index.js.map +1 -0
  194. package/dist/memory/seed-loader.d.ts.map +1 -0
  195. package/dist/memory/seed-loader.js.map +1 -0
  196. package/dist/memory/user-profiler.d.ts.map +1 -0
  197. package/dist/memory/user-profiler.js.map +1 -0
  198. package/dist/plugins/content-filter.d.ts.map +1 -0
  199. package/dist/plugins/content-filter.js.map +1 -0
  200. package/dist/plugins/index.d.ts.map +1 -0
  201. package/dist/plugins/index.js.map +1 -0
  202. package/dist/plugins/logger.d.ts.map +1 -0
  203. package/dist/plugins/logger.js.map +1 -0
  204. package/dist/plugins/rate-limiter.d.ts.map +1 -0
  205. package/dist/plugins/rate-limiter.js.map +1 -0
  206. package/dist/protocols/a2a/client.d.ts.map +1 -0
  207. package/dist/protocols/a2a/client.js.map +1 -0
  208. package/dist/protocols/a2a/index.d.ts.map +1 -0
  209. package/dist/protocols/a2a/index.js.map +1 -0
  210. package/dist/protocols/a2a/server.d.ts.map +1 -0
  211. package/dist/protocols/a2a/server.js.map +1 -0
  212. package/dist/protocols/a2a/types.d.ts.map +1 -0
  213. package/dist/protocols/a2a/types.js.map +1 -0
  214. package/dist/protocols/a2a/utils.d.ts.map +1 -0
  215. package/dist/protocols/a2a/utils.js.map +1 -0
  216. package/dist/protocols/agui/client.d.ts.map +1 -0
  217. package/dist/protocols/agui/client.js.map +1 -0
  218. package/dist/protocols/agui/index.d.ts.map +1 -0
  219. package/dist/protocols/agui/index.js.map +1 -0
  220. package/dist/protocols/agui/server.d.ts.map +1 -0
  221. package/dist/protocols/agui/server.js.map +1 -0
  222. package/dist/protocols/agui/types.d.ts.map +1 -0
  223. package/dist/protocols/agui/types.js.map +1 -0
  224. package/dist/protocols/index.d.ts.map +1 -0
  225. package/dist/protocols/index.js.map +1 -0
  226. package/dist/protocols/mcp/agent-tools.d.ts.map +1 -0
  227. package/dist/protocols/mcp/agent-tools.js.map +1 -0
  228. package/dist/protocols/mcp/index.d.ts.map +1 -0
  229. package/dist/protocols/mcp/index.js.map +1 -0
  230. package/dist/protocols/mcp/server.d.ts.map +1 -0
  231. package/dist/protocols/mcp/server.js.map +1 -0
  232. package/dist/protocols/mcp/types.d.ts.map +1 -0
  233. package/dist/protocols/mcp/types.js.map +1 -0
  234. package/dist/providers/index.d.ts.map +1 -0
  235. package/dist/providers/index.js.map +1 -0
  236. package/dist/publish/index.d.ts.map +1 -0
  237. package/dist/publish/index.js.map +1 -0
  238. package/dist/scheduler/cron-engine.d.ts.map +1 -0
  239. package/dist/scheduler/cron-engine.js +3 -36
  240. package/dist/scheduler/cron-engine.js.map +1 -0
  241. package/dist/scheduler/index.d.ts.map +1 -0
  242. package/dist/scheduler/index.js.map +1 -0
  243. package/dist/schema/oad.d.ts.map +1 -0
  244. package/dist/schema/oad.js.map +1 -0
  245. package/dist/security/approval.d.ts.map +1 -0
  246. package/dist/security/approval.js.map +1 -0
  247. package/dist/security/approvals.d.ts.map +1 -0
  248. package/dist/security/approvals.js.map +1 -0
  249. package/dist/security/elevated.d.ts.map +1 -0
  250. package/dist/security/elevated.js.map +1 -0
  251. package/dist/security/guardrails.d.ts.map +1 -0
  252. package/dist/security/guardrails.js.map +1 -0
  253. package/dist/security/index.d.ts.map +1 -0
  254. package/dist/security/index.js.map +1 -0
  255. package/dist/security/keys.d.ts.map +1 -0
  256. package/dist/security/keys.js.map +1 -0
  257. package/dist/security/secrets.d.ts.map +1 -0
  258. package/dist/security/secrets.js.map +1 -0
  259. package/dist/skills/auto-learn.d.ts.map +1 -0
  260. package/dist/skills/auto-learn.js.map +1 -0
  261. package/dist/skills/base.d.ts.map +1 -0
  262. package/dist/skills/base.js.map +1 -0
  263. package/dist/skills/builtin/index.d.ts.map +1 -0
  264. package/dist/skills/builtin/index.js.map +1 -0
  265. package/dist/skills/document.d.ts.map +1 -0
  266. package/dist/skills/document.js.map +1 -0
  267. package/dist/skills/http.d.ts.map +1 -0
  268. package/dist/skills/http.js.map +1 -0
  269. package/dist/skills/index.d.ts.map +1 -0
  270. package/dist/skills/index.js.map +1 -0
  271. package/dist/skills/marketplace.d.ts.map +1 -0
  272. package/dist/skills/marketplace.js.map +1 -0
  273. package/dist/skills/scheduler.d.ts.map +1 -0
  274. package/dist/skills/scheduler.js.map +1 -0
  275. package/dist/skills/types.d.ts.map +1 -0
  276. package/dist/skills/types.js.map +1 -0
  277. package/dist/skills/webhook-trigger.d.ts.map +1 -0
  278. package/dist/skills/webhook-trigger.js.map +1 -0
  279. package/dist/studio/server.d.ts.map +1 -0
  280. package/dist/studio/server.js.map +1 -0
  281. package/dist/studio/templates-data.d.ts.map +1 -0
  282. package/dist/studio/templates-data.js.map +1 -0
  283. package/dist/telemetry/index.d.ts.map +1 -0
  284. package/dist/telemetry/index.js.map +1 -0
  285. package/dist/templates/code-reviewer.d.ts.map +1 -0
  286. package/dist/templates/code-reviewer.js.map +1 -0
  287. package/dist/templates/content-writer.d.ts.map +1 -0
  288. package/dist/templates/content-writer.js.map +1 -0
  289. package/dist/templates/customer-service.d.ts.map +1 -0
  290. package/dist/templates/customer-service.js.map +1 -0
  291. package/dist/templates/data-analyst.d.ts.map +1 -0
  292. package/dist/templates/data-analyst.js.map +1 -0
  293. package/dist/templates/executive-assistant.d.ts.map +1 -0
  294. package/dist/templates/executive-assistant.js.map +1 -0
  295. package/dist/templates/financial-advisor.d.ts.map +1 -0
  296. package/dist/templates/financial-advisor.js.map +1 -0
  297. package/dist/templates/hr-recruiter.d.ts.map +1 -0
  298. package/dist/templates/hr-recruiter.js.map +1 -0
  299. package/dist/templates/knowledge-base.d.ts.map +1 -0
  300. package/dist/templates/knowledge-base.js.map +1 -0
  301. package/dist/templates/legal-assistant.d.ts.map +1 -0
  302. package/dist/templates/legal-assistant.js.map +1 -0
  303. package/dist/templates/project-manager.d.ts.map +1 -0
  304. package/dist/templates/project-manager.js.map +1 -0
  305. package/dist/templates/sales-assistant.d.ts.map +1 -0
  306. package/dist/templates/sales-assistant.js.map +1 -0
  307. package/dist/templates/teacher.d.ts.map +1 -0
  308. package/dist/templates/teacher.js.map +1 -0
  309. package/dist/testing/index.d.ts.map +1 -0
  310. package/dist/testing/index.js.map +1 -0
  311. package/dist/tools/builtin/browser.d.ts.map +1 -0
  312. package/dist/tools/builtin/browser.js.map +1 -0
  313. package/dist/tools/builtin/datetime.d.ts.map +1 -0
  314. package/dist/tools/builtin/datetime.js.map +1 -0
  315. package/dist/tools/builtin/file.d.ts.map +1 -0
  316. package/dist/tools/builtin/file.js.map +1 -0
  317. package/dist/tools/builtin/home-assistant.d.ts.map +1 -0
  318. package/dist/tools/builtin/home-assistant.js.map +1 -0
  319. package/dist/tools/builtin/index.d.ts.map +1 -0
  320. package/dist/tools/builtin/index.js.map +1 -0
  321. package/dist/tools/builtin/rl-tools.d.ts.map +1 -0
  322. package/dist/tools/builtin/rl-tools.js.map +1 -0
  323. package/dist/tools/builtin/shell.d.ts.map +1 -0
  324. package/dist/tools/builtin/shell.js.map +1 -0
  325. package/dist/tools/builtin/vision.d.ts.map +1 -0
  326. package/dist/tools/builtin/vision.js.map +1 -0
  327. package/dist/tools/builtin/web-search.d.ts.map +1 -0
  328. package/dist/tools/builtin/web-search.js.map +1 -0
  329. package/dist/tools/builtin/web.d.ts.map +1 -0
  330. package/dist/tools/builtin/web.js.map +1 -0
  331. package/dist/tools/calculator.d.ts.map +1 -0
  332. package/dist/tools/calculator.js.map +1 -0
  333. package/dist/tools/datetime.d.ts.map +1 -0
  334. package/dist/tools/datetime.js.map +1 -0
  335. package/dist/tools/document-processor.d.ts.map +1 -0
  336. package/dist/tools/document-processor.js.map +1 -0
  337. package/dist/tools/gateway.d.ts.map +1 -0
  338. package/dist/tools/gateway.js.map +1 -0
  339. package/dist/tools/image-generator.d.ts.map +1 -0
  340. package/dist/tools/image-generator.js.map +1 -0
  341. package/dist/tools/integrations/calendar.d.ts.map +1 -0
  342. package/dist/tools/integrations/calendar.js.map +1 -0
  343. package/dist/tools/integrations/code-exec.d.ts.map +1 -0
  344. package/dist/tools/integrations/code-exec.js.map +1 -0
  345. package/dist/tools/integrations/csv-analyzer.d.ts.map +1 -0
  346. package/dist/tools/integrations/csv-analyzer.js.map +1 -0
  347. package/dist/tools/integrations/database.d.ts.map +1 -0
  348. package/dist/tools/integrations/database.js.map +1 -0
  349. package/dist/tools/integrations/email-send.d.ts.map +1 -0
  350. package/dist/tools/integrations/email-send.js.map +1 -0
  351. package/dist/tools/integrations/git-tool.d.ts.map +1 -0
  352. package/dist/tools/integrations/git-tool.js.map +1 -0
  353. package/dist/tools/integrations/github-tool.d.ts.map +1 -0
  354. package/dist/tools/integrations/github-tool.js.map +1 -0
  355. package/dist/tools/integrations/image-gen.d.ts.map +1 -0
  356. package/dist/tools/integrations/image-gen.js.map +1 -0
  357. package/dist/tools/integrations/index.d.ts.map +1 -0
  358. package/dist/tools/integrations/index.js.map +1 -0
  359. package/dist/tools/integrations/jira.d.ts.map +1 -0
  360. package/dist/tools/integrations/jira.js.map +1 -0
  361. package/dist/tools/integrations/notion.d.ts.map +1 -0
  362. package/dist/tools/integrations/notion.js.map +1 -0
  363. package/dist/tools/integrations/npm-tool.d.ts.map +1 -0
  364. package/dist/tools/integrations/npm-tool.js.map +1 -0
  365. package/dist/tools/integrations/pdf-reader.d.ts.map +1 -0
  366. package/dist/tools/integrations/pdf-reader.js.map +1 -0
  367. package/dist/tools/integrations/slack.d.ts.map +1 -0
  368. package/dist/tools/integrations/slack.js.map +1 -0
  369. package/dist/tools/integrations/summarizer.d.ts.map +1 -0
  370. package/dist/tools/integrations/summarizer.js.map +1 -0
  371. package/dist/tools/integrations/translator.d.ts.map +1 -0
  372. package/dist/tools/integrations/translator.js.map +1 -0
  373. package/dist/tools/integrations/trello.d.ts.map +1 -0
  374. package/dist/tools/integrations/trello.js.map +1 -0
  375. package/dist/tools/integrations/vector-search.d.ts.map +1 -0
  376. package/dist/tools/integrations/vector-search.js.map +1 -0
  377. package/dist/tools/integrations/web-scraper.d.ts.map +1 -0
  378. package/dist/tools/integrations/web-scraper.js.map +1 -0
  379. package/dist/tools/integrations/web-search.d.ts.map +1 -0
  380. package/dist/tools/integrations/web-search.js.map +1 -0
  381. package/dist/tools/integrations/webhook.d.ts.map +1 -0
  382. package/dist/tools/integrations/webhook.js.map +1 -0
  383. package/dist/tools/json-transform.d.ts.map +1 -0
  384. package/dist/tools/json-transform.js.map +1 -0
  385. package/dist/tools/mcp-client.d.ts.map +1 -0
  386. package/dist/tools/mcp-client.js.map +1 -0
  387. package/dist/tools/mcp.d.ts.map +1 -0
  388. package/dist/tools/mcp.js.map +1 -0
  389. package/dist/tools/text-analysis.d.ts.map +1 -0
  390. package/dist/tools/text-analysis.js.map +1 -0
  391. package/dist/tools/web-scraper.d.ts.map +1 -0
  392. package/dist/tools/web-scraper.js.map +1 -0
  393. package/dist/tools/web-search.d.ts.map +1 -0
  394. package/dist/tools/web-search.js.map +1 -0
  395. package/dist/traces/index.d.ts.map +1 -0
  396. package/dist/traces/index.js.map +1 -0
  397. package/dist/ui/components.d.ts.map +1 -0
  398. package/dist/ui/components.js.map +1 -0
  399. package/package.json +1 -1
  400. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -20
  401. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -14
  402. package/.github/PULL_REQUEST_TEMPLATE.md +0 -13
  403. package/.github/workflows/ci.yml +0 -24
  404. package/docs/.vitepress/config.ts +0 -103
  405. package/docs/api/cli.md +0 -48
  406. package/docs/api/oad-schema.md +0 -64
  407. package/docs/api/sdk.md +0 -80
  408. package/docs/guide/concepts.md +0 -51
  409. package/docs/guide/configuration.md +0 -79
  410. package/docs/guide/deployment.md +0 -42
  411. package/docs/guide/getting-started.md +0 -44
  412. package/docs/guide/templates.md +0 -28
  413. package/docs/guide/testing.md +0 -84
  414. package/docs/index.md +0 -27
  415. package/docs/zh/api/cli.md +0 -54
  416. package/docs/zh/api/oad-schema.md +0 -87
  417. package/docs/zh/api/sdk.md +0 -102
  418. package/docs/zh/guide/concepts.md +0 -104
  419. package/docs/zh/guide/configuration.md +0 -135
  420. package/docs/zh/guide/deployment.md +0 -81
  421. package/docs/zh/guide/getting-started.md +0 -82
  422. package/docs/zh/guide/templates.md +0 -84
  423. package/docs/zh/guide/testing.md +0 -88
  424. package/docs/zh/index.md +0 -27
  425. package/fix-sidebar.mjs +0 -188
  426. package/serve-studio.js +0 -13
  427. package/serve-test.js +0 -25
  428. package/src/analytics/index.ts +0 -66
  429. package/src/channels/dingtalk.ts +0 -46
  430. package/src/channels/discord.ts +0 -192
  431. package/src/channels/email.ts +0 -351
  432. package/src/channels/feishu.ts +0 -349
  433. package/src/channels/googlechat.ts +0 -42
  434. package/src/channels/imessage.ts +0 -32
  435. package/src/channels/index.ts +0 -15
  436. package/src/channels/irc.ts +0 -82
  437. package/src/channels/line.ts +0 -33
  438. package/src/channels/matrix.ts +0 -34
  439. package/src/channels/mattermost.ts +0 -57
  440. package/src/channels/msteams.ts +0 -33
  441. package/src/channels/nostr.ts +0 -33
  442. package/src/channels/qq.ts +0 -34
  443. package/src/channels/signal.ts +0 -33
  444. package/src/channels/slack.ts +0 -217
  445. package/src/channels/sms.ts +0 -34
  446. package/src/channels/telegram.ts +0 -616
  447. package/src/channels/twitch.ts +0 -65
  448. package/src/channels/voice-call.ts +0 -100
  449. package/src/channels/voice.ts +0 -471
  450. package/src/channels/web.ts +0 -632
  451. package/src/channels/webhook.ts +0 -199
  452. package/src/channels/websocket.ts +0 -399
  453. package/src/channels/wechat.ts +0 -329
  454. package/src/channels/whatsapp.ts +0 -33
  455. package/src/cli/chat.ts +0 -99
  456. package/src/cli/setup.ts +0 -314
  457. package/src/cli.ts +0 -2723
  458. package/src/core/a2a.ts +0 -203
  459. package/src/core/agent.ts +0 -476
  460. package/src/core/analytics-engine.ts +0 -186
  461. package/src/core/api-server.ts +0 -277
  462. package/src/core/audio.ts +0 -98
  463. package/src/core/auth.ts +0 -57
  464. package/src/core/cache.ts +0 -141
  465. package/src/core/collaboration.ts +0 -275
  466. package/src/core/compose.ts +0 -77
  467. package/src/core/config.ts +0 -14
  468. package/src/core/context-discovery.ts +0 -85
  469. package/src/core/context-refs.ts +0 -140
  470. package/src/core/errors.ts +0 -148
  471. package/src/core/gateway.ts +0 -106
  472. package/src/core/heartbeat.ts +0 -51
  473. package/src/core/hitl.ts +0 -138
  474. package/src/core/hooks.ts +0 -105
  475. package/src/core/ide-bridge.ts +0 -133
  476. package/src/core/knowledge.ts +0 -255
  477. package/src/core/logger.ts +0 -57
  478. package/src/core/node-network.ts +0 -86
  479. package/src/core/orchestrator.ts +0 -215
  480. package/src/core/performance.ts +0 -187
  481. package/src/core/profiles.ts +0 -122
  482. package/src/core/rate-limiter.ts +0 -128
  483. package/src/core/room.ts +0 -109
  484. package/src/core/runtime.ts +0 -410
  485. package/src/core/sandbox.ts +0 -344
  486. package/src/core/scheduler.ts +0 -187
  487. package/src/core/security.ts +0 -171
  488. package/src/core/session-manager.ts +0 -137
  489. package/src/core/streaming.ts +0 -195
  490. package/src/core/subagent.ts +0 -98
  491. package/src/core/types.ts +0 -68
  492. package/src/core/versioning.ts +0 -106
  493. package/src/core/vision.ts +0 -180
  494. package/src/core/watch.ts +0 -178
  495. package/src/core/workflow-graph.ts +0 -365
  496. package/src/core/workflow.ts +0 -235
  497. package/src/daemon.ts +0 -96
  498. package/src/deploy/hermes.ts +0 -156
  499. package/src/deploy/index.ts +0 -255
  500. package/src/deploy/openclaw.ts +0 -190
  501. package/src/doctor.ts +0 -156
  502. package/src/eval/index.ts +0 -211
  503. package/src/eval/suites/basic.json +0 -16
  504. package/src/eval/suites/memory.json +0 -12
  505. package/src/eval/suites/safety.json +0 -14
  506. package/src/hub/brain-seed.ts +0 -54
  507. package/src/hub/client.ts +0 -60
  508. package/src/i18n/index.ts +0 -216
  509. package/src/index.ts +0 -283
  510. package/src/mcp/servers/calculator-mcp.ts +0 -65
  511. package/src/mcp/servers/crypto-mcp.ts +0 -73
  512. package/src/mcp/servers/database-mcp.ts +0 -72
  513. package/src/mcp/servers/datetime-mcp.ts +0 -69
  514. package/src/mcp/servers/filesystem.ts +0 -66
  515. package/src/mcp/servers/github-mcp.ts +0 -58
  516. package/src/mcp/servers/index.ts +0 -63
  517. package/src/mcp/servers/json-mcp.ts +0 -102
  518. package/src/mcp/servers/memory-mcp.ts +0 -56
  519. package/src/mcp/servers/regex-mcp.ts +0 -53
  520. package/src/mcp/servers/web-mcp.ts +0 -49
  521. package/src/memory/context-compressor.ts +0 -189
  522. package/src/memory/deepbrain.ts +0 -108
  523. package/src/memory/index.ts +0 -41
  524. package/src/memory/seed-loader.ts +0 -212
  525. package/src/memory/user-profiler.ts +0 -215
  526. package/src/plugins/content-filter.ts +0 -23
  527. package/src/plugins/index.ts +0 -339
  528. package/src/plugins/logger.ts +0 -18
  529. package/src/plugins/rate-limiter.ts +0 -38
  530. package/src/protocols/a2a/client.ts +0 -132
  531. package/src/protocols/a2a/index.ts +0 -8
  532. package/src/protocols/a2a/server.ts +0 -333
  533. package/src/protocols/a2a/types.ts +0 -88
  534. package/src/protocols/a2a/utils.ts +0 -50
  535. package/src/protocols/agui/client.ts +0 -83
  536. package/src/protocols/agui/index.ts +0 -4
  537. package/src/protocols/agui/server.ts +0 -218
  538. package/src/protocols/agui/types.ts +0 -153
  539. package/src/protocols/index.ts +0 -2
  540. package/src/protocols/mcp/agent-tools.ts +0 -134
  541. package/src/protocols/mcp/index.ts +0 -8
  542. package/src/protocols/mcp/server.ts +0 -262
  543. package/src/protocols/mcp/types.ts +0 -69
  544. package/src/providers/index.ts +0 -632
  545. package/src/publish/index.ts +0 -376
  546. package/src/scheduler/cron-engine.ts +0 -191
  547. package/src/scheduler/index.ts +0 -2
  548. package/src/schema/oad.ts +0 -217
  549. package/src/security/approval.ts +0 -131
  550. package/src/security/approvals.ts +0 -143
  551. package/src/security/elevated.ts +0 -105
  552. package/src/security/guardrails.ts +0 -248
  553. package/src/security/index.ts +0 -9
  554. package/src/security/keys.ts +0 -87
  555. package/src/security/secrets.ts +0 -129
  556. package/src/skills/auto-learn.ts +0 -262
  557. package/src/skills/base.ts +0 -16
  558. package/src/skills/builtin/index.ts +0 -408
  559. package/src/skills/document.ts +0 -100
  560. package/src/skills/http.ts +0 -35
  561. package/src/skills/index.ts +0 -27
  562. package/src/skills/marketplace.ts +0 -113
  563. package/src/skills/scheduler.ts +0 -80
  564. package/src/skills/types.ts +0 -42
  565. package/src/skills/webhook-trigger.ts +0 -59
  566. package/src/studio/server.ts +0 -1791
  567. package/src/studio/templates-data.ts +0 -178
  568. package/src/studio-ui/index.html +0 -3076
  569. package/src/telemetry/index.ts +0 -324
  570. package/src/templates/code-reviewer.ts +0 -30
  571. package/src/templates/content-writer.ts +0 -58
  572. package/src/templates/customer-service.ts +0 -76
  573. package/src/templates/data-analyst.ts +0 -66
  574. package/src/templates/executive-assistant.ts +0 -71
  575. package/src/templates/financial-advisor.ts +0 -60
  576. package/src/templates/hr-recruiter.ts +0 -58
  577. package/src/templates/knowledge-base.ts +0 -27
  578. package/src/templates/legal-assistant.ts +0 -71
  579. package/src/templates/project-manager.ts +0 -58
  580. package/src/templates/sales-assistant.ts +0 -75
  581. package/src/templates/teacher.ts +0 -75
  582. package/src/testing/index.ts +0 -181
  583. package/src/tools/builtin/browser.ts +0 -299
  584. package/src/tools/builtin/datetime.ts +0 -41
  585. package/src/tools/builtin/file.ts +0 -107
  586. package/src/tools/builtin/home-assistant.ts +0 -116
  587. package/src/tools/builtin/index.ts +0 -37
  588. package/src/tools/builtin/rl-tools.ts +0 -243
  589. package/src/tools/builtin/shell.ts +0 -43
  590. package/src/tools/builtin/vision.ts +0 -64
  591. package/src/tools/builtin/web-search.ts +0 -126
  592. package/src/tools/builtin/web.ts +0 -35
  593. package/src/tools/calculator.ts +0 -73
  594. package/src/tools/datetime.ts +0 -149
  595. package/src/tools/document-processor.ts +0 -213
  596. package/src/tools/gateway.ts +0 -220
  597. package/src/tools/image-generator.ts +0 -150
  598. package/src/tools/integrations/calendar.ts +0 -73
  599. package/src/tools/integrations/code-exec.ts +0 -39
  600. package/src/tools/integrations/csv-analyzer.ts +0 -92
  601. package/src/tools/integrations/database.ts +0 -44
  602. package/src/tools/integrations/email-send.ts +0 -76
  603. package/src/tools/integrations/git-tool.ts +0 -42
  604. package/src/tools/integrations/github-tool.ts +0 -76
  605. package/src/tools/integrations/image-gen.ts +0 -56
  606. package/src/tools/integrations/index.ts +0 -92
  607. package/src/tools/integrations/jira.ts +0 -83
  608. package/src/tools/integrations/notion.ts +0 -71
  609. package/src/tools/integrations/npm-tool.ts +0 -48
  610. package/src/tools/integrations/pdf-reader.ts +0 -58
  611. package/src/tools/integrations/slack.ts +0 -65
  612. package/src/tools/integrations/summarizer.ts +0 -49
  613. package/src/tools/integrations/translator.ts +0 -48
  614. package/src/tools/integrations/trello.ts +0 -60
  615. package/src/tools/integrations/vector-search.ts +0 -42
  616. package/src/tools/integrations/web-scraper.ts +0 -47
  617. package/src/tools/integrations/web-search.ts +0 -58
  618. package/src/tools/integrations/webhook.ts +0 -38
  619. package/src/tools/json-transform.ts +0 -187
  620. package/src/tools/mcp-client.ts +0 -131
  621. package/src/tools/mcp.ts +0 -76
  622. package/src/tools/text-analysis.ts +0 -116
  623. package/src/tools/web-scraper.ts +0 -179
  624. package/src/tools/web-search.ts +0 -180
  625. package/src/traces/index.ts +0 -132
  626. package/src/types/agent-workstation.d.ts +0 -2
  627. package/src/ui/components.ts +0 -127
  628. package/srv-err.txt +0 -0
  629. package/srv-out.txt +0 -1
  630. package/test-agent/Dockerfile +0 -9
  631. package/test-agent/README.md +0 -50
  632. package/test-agent/agent.yaml +0 -23
  633. package/test-agent/docker-compose.yml +0 -11
  634. package/test-agent/oad.yaml +0 -31
  635. package/test-agent/package-lock.json +0 -1492
  636. package/test-agent/package.json +0 -18
  637. package/test-agent/src/index.ts +0 -24
  638. package/test-agent/src/skills/echo.ts +0 -15
  639. package/test-agent/tsconfig.json +0 -25
  640. package/test-full.js +0 -43
  641. package/test-sidebar.js +0 -22
  642. package/test-studio3.js +0 -75
  643. package/test-studio4.js +0 -41
  644. package/tests/a2a-protocol.test.ts +0 -285
  645. package/tests/a2a.test.ts +0 -66
  646. package/tests/agent.test.ts +0 -72
  647. package/tests/agui-protocol.test.ts +0 -246
  648. package/tests/analytics.test.ts +0 -50
  649. package/tests/api-server.test.ts +0 -148
  650. package/tests/approvals.test.ts +0 -89
  651. package/tests/audio.test.ts +0 -40
  652. package/tests/auto-learn.test.ts +0 -105
  653. package/tests/brain-seed-extended.test.ts +0 -490
  654. package/tests/brain-seed.test.ts +0 -239
  655. package/tests/browser.test.ts +0 -179
  656. package/tests/builtin-tools.test.ts +0 -83
  657. package/tests/channel.test.ts +0 -39
  658. package/tests/channels/discord.test.ts +0 -79
  659. package/tests/channels/email.test.ts +0 -148
  660. package/tests/channels/feishu.test.ts +0 -123
  661. package/tests/channels/telegram.test.ts +0 -129
  662. package/tests/channels/websocket.test.ts +0 -53
  663. package/tests/channels/wechat.test.ts +0 -170
  664. package/tests/channels-extra.test.ts +0 -45
  665. package/tests/chat-cli.test.ts +0 -160
  666. package/tests/cli.test.ts +0 -46
  667. package/tests/collaboration.test.ts +0 -319
  668. package/tests/context-compressor.test.ts +0 -172
  669. package/tests/context-refs.test.ts +0 -121
  670. package/tests/cron-engine.test.ts +0 -101
  671. package/tests/daemon.test.ts +0 -135
  672. package/tests/deepbrain-wire.test.ts +0 -234
  673. package/tests/deploy-and-dag.test.ts +0 -196
  674. package/tests/doctor.test.ts +0 -38
  675. package/tests/document-processor.test.ts +0 -69
  676. package/tests/e2e-nocode.test.ts +0 -442
  677. package/tests/e2e.test.ts +0 -134
  678. package/tests/elevated.test.ts +0 -69
  679. package/tests/errors.test.ts +0 -83
  680. package/tests/eval.test.ts +0 -173
  681. package/tests/gateway.test.ts +0 -63
  682. package/tests/guardrails.test.ts +0 -177
  683. package/tests/hitl.test.ts +0 -71
  684. package/tests/home-assistant.test.ts +0 -40
  685. package/tests/hooks.test.ts +0 -79
  686. package/tests/i18n.test.ts +0 -41
  687. package/tests/ide-bridge.test.ts +0 -38
  688. package/tests/image-generator.test.ts +0 -84
  689. package/tests/init-role.test.ts +0 -124
  690. package/tests/integrations.test.ts +0 -249
  691. package/tests/mcp-client.test.ts +0 -92
  692. package/tests/mcp-server.test.ts +0 -178
  693. package/tests/mcp-servers.test.ts +0 -260
  694. package/tests/mcp.test.ts +0 -54
  695. package/tests/node-network.test.ts +0 -74
  696. package/tests/oad.test.ts +0 -68
  697. package/tests/performance.test.ts +0 -115
  698. package/tests/plugin-a2a-enhanced.test.ts +0 -230
  699. package/tests/plugin.test.ts +0 -74
  700. package/tests/profiles.test.ts +0 -61
  701. package/tests/publish.test.ts +0 -231
  702. package/tests/rl-tools.test.ts +0 -93
  703. package/tests/room.test.ts +0 -106
  704. package/tests/runtime.test.ts +0 -42
  705. package/tests/sandbox-manager.test.ts +0 -46
  706. package/tests/sandbox.test.ts +0 -46
  707. package/tests/scheduler.test.ts +0 -200
  708. package/tests/secrets.test.ts +0 -107
  709. package/tests/security-enhanced.test.ts +0 -233
  710. package/tests/security.test.ts +0 -60
  711. package/tests/settings-api.test.ts +0 -148
  712. package/tests/setup.test.ts +0 -73
  713. package/tests/skill-learner.test.ts +0 -161
  714. package/tests/streaming.test.ts +0 -109
  715. package/tests/studio.test.ts +0 -402
  716. package/tests/subagent.test.ts +0 -193
  717. package/tests/telegram-discord.test.ts +0 -60
  718. package/tests/telemetry.test.ts +0 -186
  719. package/tests/templates.test.ts +0 -77
  720. package/tests/tools/builtin-extended.test.ts +0 -138
  721. package/tests/user-profiler.test.ts +0 -169
  722. package/tests/v070.test.ts +0 -76
  723. package/tests/v090-features.test.ts +0 -254
  724. package/tests/versioning.test.ts +0 -75
  725. package/tests/vision.test.ts +0 -61
  726. package/tests/voice-call.test.ts +0 -47
  727. package/tests/voice-enhanced.test.ts +0 -169
  728. package/tests/voice-interaction.test.ts +0 -38
  729. package/tests/voice.test.ts +0 -61
  730. package/tests/web-search.test.ts +0 -155
  731. package/tests/webhook.test.ts +0 -29
  732. package/tests/workflow-graph.test.ts +0 -279
  733. package/tests/workflow.test.ts +0 -143
  734. package/tmp-js-test.js +0 -1532
  735. package/tmp-sc.js +0 -1716
  736. package/tutorial/customer-service-agent/README.md +0 -612
  737. package/tutorial/customer-service-agent/SOUL.md +0 -26
  738. package/tutorial/customer-service-agent/agent.yaml +0 -63
  739. package/tutorial/customer-service-agent/package.json +0 -19
  740. package/tutorial/customer-service-agent/src/index.ts +0 -69
  741. package/tutorial/customer-service-agent/src/skills/faq.ts +0 -27
  742. package/tutorial/customer-service-agent/src/skills/ticket.ts +0 -22
  743. package/tutorial/customer-service-agent/tsconfig.json +0 -14
  744. package/vitest.config.ts +0 -9
@@ -1,234 +0,0 @@
1
- import { describe, it, expect, vi, beforeEach } from 'vitest';
2
- import { BaseAgent } from '../src/core/agent';
3
- import type { Message } from '../src/core/types';
4
-
5
- // Mock LLM provider
6
- const mockProvider = {
7
- chat: vi.fn().mockResolvedValue('Hello from LLM'),
8
- chatStream: vi.fn(),
9
- listModels: vi.fn(),
10
- };
11
-
12
- vi.mock('../src/providers', () => ({
13
- createProvider: () => mockProvider,
14
- }));
15
-
16
- function createAgent(opts?: any) {
17
- return new BaseAgent({
18
- name: 'test-agent',
19
- systemPrompt: 'You are a test agent.',
20
- ...opts,
21
- });
22
- }
23
-
24
- function createMessage(content: string): Message {
25
- return {
26
- id: `msg_${Date.now()}`,
27
- role: 'user',
28
- content,
29
- timestamp: Date.now(),
30
- };
31
- }
32
-
33
- describe('BaseAgent long-term memory', () => {
34
- let agent: BaseAgent;
35
- let mockBrain: any;
36
-
37
- beforeEach(() => {
38
- vi.clearAllMocks();
39
- agent = createAgent();
40
- mockBrain = {
41
- recall: vi.fn().mockResolvedValue([{ content: 'remembered fact' }]),
42
- learn: vi.fn().mockResolvedValue(undefined),
43
- };
44
- });
45
-
46
- it('setLongTermMemory sets the brain', () => {
47
- agent.setLongTermMemory(mockBrain);
48
- expect(agent.getLongTermMemory()).toBe(mockBrain);
49
- });
50
-
51
- it('setLongTermMemory with config sets autoLearn/autoRecall', () => {
52
- agent.setLongTermMemory(mockBrain, { autoLearn: false, autoRecall: true });
53
- const config = agent.getLongTermMemoryConfig();
54
- expect(config.autoLearn).toBe(false);
55
- expect(config.autoRecall).toBe(true);
56
- });
57
-
58
- it('handleMessage calls recall before LLM when autoRecall is true', async () => {
59
- agent.setLongTermMemory(mockBrain);
60
- const callOrder: string[] = [];
61
- mockBrain.recall.mockImplementation(async () => {
62
- callOrder.push('recall');
63
- return [{ content: 'memory' }];
64
- });
65
- mockProvider.chat.mockImplementation(async () => {
66
- callOrder.push('llm');
67
- return 'response';
68
- });
69
-
70
- await agent.init();
71
- await agent.handleMessage(createMessage('hello'));
72
-
73
- expect(callOrder[0]).toBe('recall');
74
- expect(callOrder[1]).toBe('llm');
75
- expect(mockBrain.recall).toHaveBeenCalledWith('hello');
76
- });
77
-
78
- it('handleMessage calls learn after LLM when autoLearn is true', async () => {
79
- agent.setLongTermMemory(mockBrain);
80
- const callOrder: string[] = [];
81
- mockProvider.chat.mockImplementation(async () => {
82
- callOrder.push('llm');
83
- return 'response';
84
- });
85
- mockBrain.learn.mockImplementation(async () => {
86
- callOrder.push('learn');
87
- });
88
-
89
- await agent.init();
90
- await agent.handleMessage(createMessage('hello'));
91
-
92
- expect(callOrder.indexOf('llm')).toBeLessThan(callOrder.indexOf('learn'));
93
- expect(mockBrain.learn).toHaveBeenCalled();
94
- });
95
-
96
- it('recall failure does not crash handleMessage', async () => {
97
- mockBrain.recall.mockRejectedValue(new Error('DB down'));
98
- agent.setLongTermMemory(mockBrain);
99
-
100
- await agent.init();
101
- const response = await agent.handleMessage(createMessage('hello'));
102
- expect(response.content).toBeDefined();
103
- });
104
-
105
- it('learn failure does not crash handleMessage', async () => {
106
- mockBrain.learn.mockRejectedValue(new Error('DB down'));
107
- agent.setLongTermMemory(mockBrain);
108
-
109
- await agent.init();
110
- const response = await agent.handleMessage(createMessage('hello'));
111
- expect(response.content).toBeDefined();
112
- });
113
-
114
- it('does not recall when autoRecall is false', async () => {
115
- agent.setLongTermMemory(mockBrain, { autoRecall: false, autoLearn: true });
116
-
117
- await agent.init();
118
- await agent.handleMessage(createMessage('hello'));
119
-
120
- expect(mockBrain.recall).not.toHaveBeenCalled();
121
- });
122
-
123
- it('does not learn when autoLearn is false', async () => {
124
- agent.setLongTermMemory(mockBrain, { autoRecall: true, autoLearn: false });
125
-
126
- await agent.init();
127
- await agent.handleMessage(createMessage('hello'));
128
-
129
- expect(mockBrain.learn).not.toHaveBeenCalled();
130
- });
131
-
132
- it('injects memory context into LLM prompt', async () => {
133
- mockBrain.recall.mockResolvedValue([{ content: 'user likes cats' }]);
134
- agent.setLongTermMemory(mockBrain);
135
-
136
- await agent.init();
137
- await agent.handleMessage(createMessage('hello'));
138
-
139
- const systemPromptArg = mockProvider.chat.mock.calls[0][1];
140
- expect(systemPromptArg).toContain('[Relevant memories]');
141
- expect(systemPromptArg).toContain('user likes cats');
142
- });
143
-
144
- it('handles empty recall array gracefully', async () => {
145
- mockBrain.recall.mockResolvedValue([]);
146
- agent.setLongTermMemory(mockBrain);
147
-
148
- await agent.init();
149
- await agent.handleMessage(createMessage('hello'));
150
-
151
- const systemPromptArg = mockProvider.chat.mock.calls[0][1];
152
- expect(systemPromptArg).not.toContain('[Relevant memories]');
153
- });
154
-
155
- it('handles string recall results', async () => {
156
- mockBrain.recall.mockResolvedValue('a single memory string');
157
- agent.setLongTermMemory(mockBrain);
158
-
159
- await agent.init();
160
- await agent.handleMessage(createMessage('hello'));
161
-
162
- const systemPromptArg = mockProvider.chat.mock.calls[0][1];
163
- expect(systemPromptArg).toContain('a single memory string');
164
- });
165
-
166
- it('learn includes user and assistant content', async () => {
167
- mockProvider.chat.mockResolvedValue('I am fine');
168
- agent.setLongTermMemory(mockBrain);
169
-
170
- await agent.init();
171
- await agent.handleMessage(createMessage('how are you'));
172
-
173
- const learnArg = mockBrain.learn.mock.calls[0][0];
174
- expect(learnArg).toContain('User: how are you');
175
- expect(learnArg).toContain('Assistant: I am fine');
176
- });
177
-
178
- it('no long-term memory means no recall/learn calls', async () => {
179
- // No setLongTermMemory called
180
- await agent.init();
181
- await agent.handleMessage(createMessage('hello'));
182
-
183
- // Should work fine without any brain
184
- expect(mockBrain.recall).not.toHaveBeenCalled();
185
- expect(mockBrain.learn).not.toHaveBeenCalled();
186
- });
187
-
188
- it('getLongTermMemory returns undefined when not set', () => {
189
- expect(agent.getLongTermMemory()).toBeUndefined();
190
- });
191
-
192
- it('default config has autoLearn and autoRecall true', () => {
193
- const config = agent.getLongTermMemoryConfig();
194
- expect(config.autoLearn).toBe(true);
195
- expect(config.autoRecall).toBe(true);
196
- });
197
-
198
- it('recall with compiled_truth format', async () => {
199
- mockBrain.recall.mockResolvedValue([{ compiled_truth: 'agent is helpful' }]);
200
- agent.setLongTermMemory(mockBrain);
201
-
202
- await agent.init();
203
- await agent.handleMessage(createMessage('hello'));
204
-
205
- const systemPromptArg = mockProvider.chat.mock.calls[0][1];
206
- expect(systemPromptArg).toContain('agent is helpful');
207
- });
208
- });
209
-
210
- describe('OAD LongTerm memory schema', () => {
211
- it('accepts deepbrain config with new fields', async () => {
212
- const { LongTermMemorySchema } = await import('../src/schema/oad');
213
- const result = LongTermMemorySchema.parse({
214
- provider: 'deepbrain',
215
- collection: 'test',
216
- config: {
217
- database: './data/brain.db',
218
- embeddingProvider: 'ollama',
219
- autoLearn: true,
220
- autoRecall: true,
221
- evolveInterval: 3600000,
222
- },
223
- });
224
- expect(result.provider).toBe('deepbrain');
225
- expect(result.config?.database).toBe('./data/brain.db');
226
- expect(result.config?.evolveInterval).toBe(3600000);
227
- });
228
-
229
- it('accepts minimal config', async () => {
230
- const { LongTermMemorySchema } = await import('../src/schema/oad');
231
- const result = LongTermMemorySchema.parse({ provider: 'deepbrain' });
232
- expect(result.provider).toBe('deepbrain');
233
- });
234
- });
@@ -1,196 +0,0 @@
1
- import { describe, it, expect, beforeEach, afterEach } from 'vitest';
2
- import { AgentDeployer } from '../src/deploy/index';
3
- import * as fs from 'fs';
4
- import * as path from 'path';
5
- import * as os from 'os';
6
-
7
- describe('AgentDeployer', () => {
8
- let deployer: AgentDeployer;
9
- let tmpDir: string;
10
-
11
- beforeEach(() => {
12
- deployer = new AgentDeployer();
13
- tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'opc-deploy-test-'));
14
- // Create a minimal package.json
15
- fs.writeFileSync(path.join(tmpDir, 'package.json'), JSON.stringify({
16
- name: 'test-agent',
17
- version: '1.0.0',
18
- main: 'dist/index.js',
19
- scripts: { start: 'node dist/index.js' },
20
- }));
21
- });
22
-
23
- afterEach(() => {
24
- fs.rmSync(tmpDir, { recursive: true, force: true });
25
- });
26
-
27
- it('should generate a valid Dockerfile', async () => {
28
- const dockerfile = await deployer.generateDockerfile(tmpDir);
29
- expect(dockerfile).toContain('FROM node:22-slim');
30
- expect(dockerfile).toContain('WORKDIR /app');
31
- expect(dockerfile).toContain('npm ci --production');
32
- expect(dockerfile).toContain('EXPOSE 3000');
33
- expect(dockerfile).toContain('NODE_ENV=production');
34
- });
35
-
36
- it('should generate Dockerfile with custom port', async () => {
37
- const dockerfile = await deployer.generateDockerfile(tmpDir, { port: 8080 });
38
- expect(dockerfile).toContain('EXPOSE 8080');
39
- expect(dockerfile).toContain('PORT=8080');
40
- });
41
-
42
- it('should generate docker-compose.yml', async () => {
43
- const compose = await deployer.generateCompose(tmpDir);
44
- expect(compose).toContain('version: "3.8"');
45
- expect(compose).toContain('build: .');
46
- expect(compose).toContain('3000:3000');
47
- expect(compose).toContain('NODE_ENV=production');
48
- expect(compose).toContain('restart: unless-stopped');
49
- });
50
-
51
- it('should generate docker-compose.yml with custom options', async () => {
52
- const compose = await deployer.generateCompose(tmpDir, { port: 8080, replicas: 3 });
53
- expect(compose).toContain('8080:8080');
54
- expect(compose).toContain('replicas: 3');
55
- });
56
-
57
- it('should generate docker-compose.yml with env vars', async () => {
58
- const compose = await deployer.generateCompose(tmpDir, { env: { API_KEY: 'test123', DEBUG: 'true' } });
59
- expect(compose).toContain('API_KEY=test123');
60
- expect(compose).toContain('DEBUG=true');
61
- });
62
-
63
- it('should generate all deployment files', async () => {
64
- const result = await deployer.generateFiles(tmpDir);
65
- expect(result.success).toBe(true);
66
- expect(result.files).toContain('Dockerfile');
67
- expect(result.files).toContain('docker-compose.yml');
68
- expect(result.files).toContain('.dockerignore');
69
- expect(fs.existsSync(path.join(tmpDir, 'Dockerfile'))).toBe(true);
70
- expect(fs.existsSync(path.join(tmpDir, 'docker-compose.yml'))).toBe(true);
71
- expect(fs.existsSync(path.join(tmpDir, '.dockerignore'))).toBe(true);
72
- });
73
-
74
- it('should include node_modules in .dockerignore', async () => {
75
- await deployer.generateFiles(tmpDir);
76
- const content = fs.readFileSync(path.join(tmpDir, '.dockerignore'), 'utf-8');
77
- expect(content).toContain('node_modules');
78
- expect(content).toContain('.git');
79
- });
80
-
81
- it('should handle missing package.json gracefully', async () => {
82
- const emptyDir = fs.mkdtempSync(path.join(os.tmpdir(), 'opc-empty-'));
83
- const dockerfile = await deployer.generateDockerfile(emptyDir);
84
- expect(dockerfile).toContain('FROM node:22-slim');
85
- fs.rmSync(emptyDir, { recursive: true, force: true });
86
- });
87
-
88
- it('should fail railway deploy without CLI installed', async () => {
89
- const result = await deployer.deployRailway(tmpDir);
90
- // Railway CLI likely not installed in test env
91
- expect(result.platform).toBe('railway');
92
- expect(typeof result.success).toBe('boolean');
93
- expect(typeof result.message).toBe('string');
94
- });
95
-
96
- it('should fail fly deploy without CLI installed', async () => {
97
- const result = await deployer.deployFly(tmpDir);
98
- expect(result.platform).toBe('fly');
99
- expect(typeof result.success).toBe('boolean');
100
- expect(typeof result.message).toBe('string');
101
- });
102
- });
103
-
104
- describe('Workflow JSON serialization', () => {
105
- it('should serialize workflow to valid JSON', () => {
106
- const workflow = {
107
- id: 'wf-1',
108
- name: 'Test Workflow',
109
- nodes: [
110
- { id: 'n1', type: 'input', name: 'Start', x: 0, y: 0, config: {} },
111
- { id: 'n2', type: 'agent', name: 'GPT Agent', x: 200, y: 0, config: { systemPrompt: 'You are helpful', model: 'gpt-4o' } },
112
- { id: 'n3', type: 'output', name: 'End', x: 400, y: 0, config: {} },
113
- ],
114
- edges: [
115
- { id: 'e1', from: 'n1', to: 'n2', fromPort: 'out', toPort: 'in' },
116
- { id: 'e2', from: 'n2', to: 'n3', fromPort: 'out', toPort: 'in' },
117
- ],
118
- created: '2026-04-18T00:00:00Z',
119
- updated: '2026-04-18T00:00:00Z',
120
- };
121
-
122
- const json = JSON.stringify(workflow);
123
- const parsed = JSON.parse(json);
124
- expect(parsed.nodes).toHaveLength(3);
125
- expect(parsed.edges).toHaveLength(2);
126
- expect(parsed.name).toBe('Test Workflow');
127
- });
128
-
129
- it('should deserialize workflow from JSON', () => {
130
- const json = '{"name":"W1","nodes":[{"id":"n1","type":"input","name":"In","x":0,"y":0,"config":{}}],"edges":[]}';
131
- const wf = JSON.parse(json);
132
- expect(wf.name).toBe('W1');
133
- expect(wf.nodes[0].type).toBe('input');
134
- expect(wf.edges).toHaveLength(0);
135
- });
136
-
137
- it('should handle all node types', () => {
138
- const types = ['agent', 'tool', 'condition', 'loop', 'parallel', 'input', 'output'];
139
- const nodes = types.map((type, i) => ({
140
- id: `n${i}`, type, name: type, x: i * 200, y: 0, config: {},
141
- }));
142
- const json = JSON.stringify({ nodes, edges: [] });
143
- const parsed = JSON.parse(json);
144
- expect(parsed.nodes).toHaveLength(7);
145
- for (let i = 0; i < types.length; i++) {
146
- expect(parsed.nodes[i].type).toBe(types[i]);
147
- }
148
- });
149
-
150
- it('should preserve node config through serialization', () => {
151
- const node = {
152
- id: 'n1', type: 'agent', name: 'Test',
153
- x: 100, y: 200,
154
- config: { systemPrompt: 'Be helpful', model: 'claude-3' },
155
- };
156
- const parsed = JSON.parse(JSON.stringify(node));
157
- expect(parsed.config.systemPrompt).toBe('Be helpful');
158
- expect(parsed.config.model).toBe('claude-3');
159
- expect(parsed.x).toBe(100);
160
- });
161
-
162
- it('should validate edge references', () => {
163
- const nodes = [
164
- { id: 'n1', type: 'input', name: 'In', x: 0, y: 0, config: {} },
165
- { id: 'n2', type: 'output', name: 'Out', x: 200, y: 0, config: {} },
166
- ];
167
- const edges = [{ id: 'e1', from: 'n1', to: 'n2', fromPort: 'out', toPort: 'in' }];
168
- const nodeIds = new Set(nodes.map(n => n.id));
169
- for (const e of edges) {
170
- expect(nodeIds.has(e.from)).toBe(true);
171
- expect(nodeIds.has(e.to)).toBe(true);
172
- }
173
- });
174
- });
175
-
176
- describe('Deploy config validation', () => {
177
- it('should accept valid deploy options', () => {
178
- const opts = { port: 3000, platform: 'docker' as const, replicas: 1 };
179
- expect(opts.port).toBeGreaterThan(0);
180
- expect(opts.port).toBeLessThan(65536);
181
- expect(['docker', 'railway', 'fly', 'render']).toContain(opts.platform);
182
- });
183
-
184
- it('should use defaults for missing options', () => {
185
- const defaults = { port: 3000, platform: 'docker', replicas: 1 };
186
- const opts = { ...defaults };
187
- expect(opts.port).toBe(3000);
188
- expect(opts.replicas).toBe(1);
189
- });
190
-
191
- it('should handle env vars in deploy options', () => {
192
- const opts = { env: { NODE_ENV: 'production', API_KEY: 'secret' } };
193
- expect(Object.keys(opts.env)).toHaveLength(2);
194
- expect(opts.env.NODE_ENV).toBe('production');
195
- });
196
- });
@@ -1,38 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { getDoctorChecks, runDoctor } from '../src/doctor';
3
-
4
- describe('opc doctor', () => {
5
- it('runDoctor runs without error', async () => {
6
- // Suppress console output
7
- const orig = console.log;
8
- console.log = () => {};
9
- const result = await runDoctor();
10
- console.log = orig;
11
- expect(result).toHaveProperty('passed');
12
- expect(result).toHaveProperty('total');
13
- expect(result.total).toBeGreaterThan(0);
14
- expect(result.passed).toBeGreaterThanOrEqual(0);
15
- expect(result.passed).toBeLessThanOrEqual(result.total);
16
- });
17
-
18
- it('Node.js check passes (we are running in Node)', async () => {
19
- const checks = getDoctorChecks();
20
- const nodeCheck = checks.find(c => c.name === 'Node.js version');
21
- expect(nodeCheck).toBeDefined();
22
- const result = await nodeCheck!.check();
23
- expect(result.ok).toBe(true);
24
- expect(result.detail).toMatch(/^v\d+/);
25
- });
26
-
27
- it('check result format has ok and detail fields', async () => {
28
- const checks = getDoctorChecks();
29
- for (const check of checks) {
30
- const result = await check.check();
31
- expect(typeof result.ok).toBe('boolean');
32
- expect(typeof result.detail).toBe('string');
33
- if (result.fix !== undefined) {
34
- expect(typeof result.fix).toBe('string');
35
- }
36
- }
37
- });
38
- });
@@ -1,69 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { DocumentProcessor } from '../src/tools/document-processor';
3
-
4
- describe('DocumentProcessor', () => {
5
- const processor = new DocumentProcessor();
6
-
7
- it('should process plain text', async () => {
8
- const text = 'Hello world. This is a test document.\n\nSecond paragraph here.';
9
- const buffer = Buffer.from(text, 'utf-8');
10
- const doc = await processor.process(buffer, 'test.txt');
11
-
12
- expect(doc.filename).toBe('test.txt');
13
- expect(doc.format).toBe('txt');
14
- expect(doc.chunks.length).toBeGreaterThan(0);
15
- expect(doc.chunks[0].content).toContain('Hello world');
16
- expect(doc.chunks[0].metadata.source).toBe('test.txt');
17
- });
18
-
19
- it('should process markdown with headings', async () => {
20
- const md = `# Title\n\nFirst section content.\n\n## Section Two\n\nSecond section content.\n\n## Section Three\n\nThird section.`;
21
- const buffer = Buffer.from(md, 'utf-8');
22
- const doc = await processor.process(buffer, 'test.md');
23
-
24
- expect(doc.format).toBe('md');
25
- expect(doc.chunks.length).toBeGreaterThan(0);
26
- });
27
-
28
- it('should process CSV', async () => {
29
- const csv = 'Name,Age,City\nAlice,30,Beijing\nBob,25,Shanghai';
30
- const buffer = Buffer.from(csv, 'utf-8');
31
- const doc = await processor.process(buffer, 'data.csv');
32
-
33
- expect(doc.format).toBe('csv');
34
- expect(doc.chunks.length).toBeGreaterThan(0);
35
- expect(doc.chunks[0].content).toContain('Alice');
36
- });
37
-
38
- it('should process JSON array', async () => {
39
- const json = JSON.stringify([{ name: 'Alice', role: 'engineer' }, { name: 'Bob', role: 'designer' }]);
40
- const buffer = Buffer.from(json, 'utf-8');
41
- const doc = await processor.process(buffer, 'data.json');
42
-
43
- expect(doc.format).toBe('json');
44
- expect(doc.chunks[0].content).toContain('Alice');
45
- });
46
-
47
- it('should chunk large text properly', async () => {
48
- const bigText = Array(200).fill('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.').join('\n\n');
49
- const buffer = Buffer.from(bigText, 'utf-8');
50
- const doc = await processor.process(buffer, 'big.txt');
51
-
52
- expect(doc.chunks.length).toBeGreaterThan(1);
53
- for (const chunk of doc.chunks) {
54
- expect(chunk.content.length).toBeLessThanOrEqual(5000); // some tolerance
55
- expect(chunk.metadata.totalChunks).toBe(doc.chunks.length);
56
- }
57
- });
58
-
59
- it('should reject files over 50MB', async () => {
60
- const bigBuffer = Buffer.alloc(51 * 1024 * 1024);
61
- await expect(processor.process(bigBuffer, 'huge.txt')).rejects.toThrow('too large');
62
- });
63
-
64
- it('should handle empty content', async () => {
65
- const buffer = Buffer.from('', 'utf-8');
66
- const doc = await processor.process(buffer, 'empty.txt');
67
- expect(doc.chunks.length).toBe(0);
68
- });
69
- });