@nookplot/runtime 0.5.122 → 0.5.123

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 (397) hide show
  1. package/package.json +60 -60
  2. package/dist/__tests__/apiMarketplace.test.d.ts +0 -2
  3. package/dist/__tests__/apiMarketplace.test.d.ts.map +0 -1
  4. package/dist/__tests__/apiMarketplace.test.js +0 -102
  5. package/dist/__tests__/apiMarketplace.test.js.map +0 -1
  6. package/dist/__tests__/autonomous.actionDispatch.test.d.ts +0 -2
  7. package/dist/__tests__/autonomous.actionDispatch.test.d.ts.map +0 -1
  8. package/dist/__tests__/autonomous.actionDispatch.test.js +0 -287
  9. package/dist/__tests__/autonomous.actionDispatch.test.js.map +0 -1
  10. package/dist/__tests__/autonomous.dedup.test.d.ts +0 -2
  11. package/dist/__tests__/autonomous.dedup.test.d.ts.map +0 -1
  12. package/dist/__tests__/autonomous.dedup.test.js +0 -125
  13. package/dist/__tests__/autonomous.dedup.test.js.map +0 -1
  14. package/dist/__tests__/autonomous.doomLoop.test.d.ts +0 -2
  15. package/dist/__tests__/autonomous.doomLoop.test.d.ts.map +0 -1
  16. package/dist/__tests__/autonomous.doomLoop.test.js +0 -126
  17. package/dist/__tests__/autonomous.doomLoop.test.js.map +0 -1
  18. package/dist/__tests__/autonomous.getAvailableActions.test.d.ts +0 -2
  19. package/dist/__tests__/autonomous.getAvailableActions.test.d.ts.map +0 -1
  20. package/dist/__tests__/autonomous.getAvailableActions.test.js +0 -232
  21. package/dist/__tests__/autonomous.getAvailableActions.test.js.map +0 -1
  22. package/dist/__tests__/autonomous.guardrails.test.d.ts +0 -2
  23. package/dist/__tests__/autonomous.guardrails.test.d.ts.map +0 -1
  24. package/dist/__tests__/autonomous.guardrails.test.js +0 -215
  25. package/dist/__tests__/autonomous.guardrails.test.js.map +0 -1
  26. package/dist/__tests__/autonomous.hooks.test.d.ts +0 -2
  27. package/dist/__tests__/autonomous.hooks.test.d.ts.map +0 -1
  28. package/dist/__tests__/autonomous.hooks.test.js +0 -107
  29. package/dist/__tests__/autonomous.hooks.test.js.map +0 -1
  30. package/dist/__tests__/autonomous.latentSpace.test.d.ts +0 -2
  31. package/dist/__tests__/autonomous.latentSpace.test.d.ts.map +0 -1
  32. package/dist/__tests__/autonomous.latentSpace.test.js +0 -224
  33. package/dist/__tests__/autonomous.latentSpace.test.js.map +0 -1
  34. package/dist/__tests__/autonomous.lifecycle.test.d.ts +0 -2
  35. package/dist/__tests__/autonomous.lifecycle.test.d.ts.map +0 -1
  36. package/dist/__tests__/autonomous.lifecycle.test.js +0 -147
  37. package/dist/__tests__/autonomous.lifecycle.test.js.map +0 -1
  38. package/dist/__tests__/autonomous.loadedSkillRefs.test.d.ts +0 -2
  39. package/dist/__tests__/autonomous.loadedSkillRefs.test.d.ts.map +0 -1
  40. package/dist/__tests__/autonomous.loadedSkillRefs.test.js +0 -150
  41. package/dist/__tests__/autonomous.loadedSkillRefs.test.js.map +0 -1
  42. package/dist/__tests__/chatEngine.episodicHook.test.d.ts +0 -2
  43. package/dist/__tests__/chatEngine.episodicHook.test.d.ts.map +0 -1
  44. package/dist/__tests__/chatEngine.episodicHook.test.js +0 -160
  45. package/dist/__tests__/chatEngine.episodicHook.test.js.map +0 -1
  46. package/dist/__tests__/chatEngine.test.d.ts +0 -2
  47. package/dist/__tests__/chatEngine.test.d.ts.map +0 -1
  48. package/dist/__tests__/chatEngine.test.js +0 -482
  49. package/dist/__tests__/chatEngine.test.js.map +0 -1
  50. package/dist/__tests__/codegen-drift.test.d.ts +0 -23
  51. package/dist/__tests__/codegen-drift.test.d.ts.map +0 -1
  52. package/dist/__tests__/codegen-drift.test.js +0 -185
  53. package/dist/__tests__/codegen-drift.test.js.map +0 -1
  54. package/dist/__tests__/contentSafety.test.d.ts +0 -2
  55. package/dist/__tests__/contentSafety.test.d.ts.map +0 -1
  56. package/dist/__tests__/contentSafety.test.js +0 -90
  57. package/dist/__tests__/contentSafety.test.js.map +0 -1
  58. package/dist/__tests__/conversation/compactionMemory.test.d.ts +0 -2
  59. package/dist/__tests__/conversation/compactionMemory.test.d.ts.map +0 -1
  60. package/dist/__tests__/conversation/compactionMemory.test.js +0 -447
  61. package/dist/__tests__/conversation/compactionMemory.test.js.map +0 -1
  62. package/dist/__tests__/conversation/modelThresholdsParity.test.d.ts +0 -2
  63. package/dist/__tests__/conversation/modelThresholdsParity.test.d.ts.map +0 -1
  64. package/dist/__tests__/conversation/modelThresholdsParity.test.js +0 -79
  65. package/dist/__tests__/conversation/modelThresholdsParity.test.js.map +0 -1
  66. package/dist/__tests__/doomLoop.test.d.ts +0 -6
  67. package/dist/__tests__/doomLoop.test.d.ts.map +0 -1
  68. package/dist/__tests__/doomLoop.test.js +0 -144
  69. package/dist/__tests__/doomLoop.test.js.map +0 -1
  70. package/dist/__tests__/guardrails.test.d.ts +0 -2
  71. package/dist/__tests__/guardrails.test.d.ts.map +0 -1
  72. package/dist/__tests__/guardrails.test.js +0 -236
  73. package/dist/__tests__/guardrails.test.js.map +0 -1
  74. package/dist/__tests__/helpers/mockRuntime.d.ts +0 -11
  75. package/dist/__tests__/helpers/mockRuntime.d.ts.map +0 -1
  76. package/dist/__tests__/helpers/mockRuntime.js +0 -146
  77. package/dist/__tests__/helpers/mockRuntime.js.map +0 -1
  78. package/dist/__tests__/hooks.test.d.ts +0 -9
  79. package/dist/__tests__/hooks.test.d.ts.map +0 -1
  80. package/dist/__tests__/hooks.test.js +0 -192
  81. package/dist/__tests__/hooks.test.js.map +0 -1
  82. package/dist/__tests__/manifestActivationHook.test.d.ts +0 -2
  83. package/dist/__tests__/manifestActivationHook.test.d.ts.map +0 -1
  84. package/dist/__tests__/manifestActivationHook.test.js +0 -312
  85. package/dist/__tests__/manifestActivationHook.test.js.map +0 -1
  86. package/dist/__tests__/memory.test.d.ts +0 -2
  87. package/dist/__tests__/memory.test.d.ts.map +0 -1
  88. package/dist/__tests__/memory.test.js +0 -192
  89. package/dist/__tests__/memory.test.js.map +0 -1
  90. package/dist/__tests__/onChainActions.parity.test.d.ts +0 -12
  91. package/dist/__tests__/onChainActions.parity.test.d.ts.map +0 -1
  92. package/dist/__tests__/onChainActions.parity.test.js +0 -104
  93. package/dist/__tests__/onChainActions.parity.test.js.map +0 -1
  94. package/dist/__tests__/querySegmentation.test.d.ts +0 -2
  95. package/dist/__tests__/querySegmentation.test.d.ts.map +0 -1
  96. package/dist/__tests__/querySegmentation.test.js +0 -187
  97. package/dist/__tests__/querySegmentation.test.js.map +0 -1
  98. package/dist/__tests__/sandbox.test.d.ts +0 -13
  99. package/dist/__tests__/sandbox.test.d.ts.map +0 -1
  100. package/dist/__tests__/sandbox.test.js +0 -413
  101. package/dist/__tests__/sandbox.test.js.map +0 -1
  102. package/dist/__tests__/signing.test.d.ts +0 -2
  103. package/dist/__tests__/signing.test.d.ts.map +0 -1
  104. package/dist/__tests__/signing.test.js +0 -260
  105. package/dist/__tests__/signing.test.js.map +0 -1
  106. package/dist/__tests__/wakeUpStack.test.d.ts +0 -2
  107. package/dist/__tests__/wakeUpStack.test.d.ts.map +0 -1
  108. package/dist/__tests__/wakeUpStack.test.js +0 -239
  109. package/dist/__tests__/wakeUpStack.test.js.map +0 -1
  110. package/dist/actionCatalog.d.ts +0 -57
  111. package/dist/actionCatalog.d.ts.map +0 -1
  112. package/dist/actionCatalog.generated.d.ts +0 -4
  113. package/dist/actionCatalog.generated.d.ts.map +0 -1
  114. package/dist/actionCatalog.generated.js +0 -2149
  115. package/dist/actionCatalog.generated.js.map +0 -1
  116. package/dist/actionCatalog.js +0 -210
  117. package/dist/actionCatalog.js.map +0 -1
  118. package/dist/api-marketplace.d.ts +0 -111
  119. package/dist/api-marketplace.d.ts.map +0 -1
  120. package/dist/api-marketplace.js +0 -154
  121. package/dist/api-marketplace.js.map +0 -1
  122. package/dist/artifactEmbeddings.d.ts +0 -69
  123. package/dist/artifactEmbeddings.d.ts.map +0 -1
  124. package/dist/artifactEmbeddings.js +0 -52
  125. package/dist/artifactEmbeddings.js.map +0 -1
  126. package/dist/autonomous.d.ts +0 -271
  127. package/dist/autonomous.d.ts.map +0 -1
  128. package/dist/autonomous.js +0 -3515
  129. package/dist/autonomous.js.map +0 -1
  130. package/dist/bounties.d.ts +0 -112
  131. package/dist/bounties.d.ts.map +0 -1
  132. package/dist/bounties.js +0 -140
  133. package/dist/bounties.js.map +0 -1
  134. package/dist/bundles.d.ts +0 -174
  135. package/dist/bundles.d.ts.map +0 -1
  136. package/dist/bundles.js +0 -208
  137. package/dist/bundles.js.map +0 -1
  138. package/dist/channels.d.ts +0 -131
  139. package/dist/channels.d.ts.map +0 -1
  140. package/dist/channels.js +0 -227
  141. package/dist/channels.js.map +0 -1
  142. package/dist/chat/chatEngine.d.ts +0 -138
  143. package/dist/chat/chatEngine.d.ts.map +0 -1
  144. package/dist/chat/chatEngine.js +0 -605
  145. package/dist/chat/chatEngine.js.map +0 -1
  146. package/dist/chat/index.d.ts +0 -30
  147. package/dist/chat/index.d.ts.map +0 -1
  148. package/dist/chat/index.js +0 -29
  149. package/dist/chat/index.js.map +0 -1
  150. package/dist/chat/terminal.d.ts +0 -19
  151. package/dist/chat/terminal.d.ts.map +0 -1
  152. package/dist/chat/terminal.js +0 -17
  153. package/dist/chat/terminal.js.map +0 -1
  154. package/dist/chat/terminals/discordTerminal.d.ts +0 -22
  155. package/dist/chat/terminals/discordTerminal.d.ts.map +0 -1
  156. package/dist/chat/terminals/discordTerminal.js +0 -132
  157. package/dist/chat/terminals/discordTerminal.js.map +0 -1
  158. package/dist/chat/terminals/openclawTerminal.d.ts +0 -43
  159. package/dist/chat/terminals/openclawTerminal.d.ts.map +0 -1
  160. package/dist/chat/terminals/openclawTerminal.js +0 -186
  161. package/dist/chat/terminals/openclawTerminal.js.map +0 -1
  162. package/dist/chat/terminals/stdinTerminal.d.ts +0 -18
  163. package/dist/chat/terminals/stdinTerminal.d.ts.map +0 -1
  164. package/dist/chat/terminals/stdinTerminal.js +0 -58
  165. package/dist/chat/terminals/stdinTerminal.js.map +0 -1
  166. package/dist/chat/terminals/telegramTerminal.d.ts +0 -27
  167. package/dist/chat/terminals/telegramTerminal.d.ts.map +0 -1
  168. package/dist/chat/terminals/telegramTerminal.js +0 -123
  169. package/dist/chat/terminals/telegramTerminal.js.map +0 -1
  170. package/dist/cognitiveWorkspace.d.ts +0 -107
  171. package/dist/cognitiveWorkspace.d.ts.map +0 -1
  172. package/dist/cognitiveWorkspace.js +0 -94
  173. package/dist/cognitiveWorkspace.js.map +0 -1
  174. package/dist/communities.d.ts +0 -40
  175. package/dist/communities.d.ts.map +0 -1
  176. package/dist/communities.js +0 -53
  177. package/dist/communities.js.map +0 -1
  178. package/dist/connection.d.ts +0 -90
  179. package/dist/connection.d.ts.map +0 -1
  180. package/dist/connection.js +0 -427
  181. package/dist/connection.js.map +0 -1
  182. package/dist/contentSafety.d.ts +0 -64
  183. package/dist/contentSafety.d.ts.map +0 -1
  184. package/dist/contentSafety.js +0 -119
  185. package/dist/contentSafety.js.map +0 -1
  186. package/dist/conversation/compactionMemory.d.ts +0 -124
  187. package/dist/conversation/compactionMemory.d.ts.map +0 -1
  188. package/dist/conversation/compactionMemory.js +0 -379
  189. package/dist/conversation/compactionMemory.js.map +0 -1
  190. package/dist/conversation/conversationLogStore.d.ts +0 -111
  191. package/dist/conversation/conversationLogStore.d.ts.map +0 -1
  192. package/dist/conversation/conversationLogStore.js +0 -248
  193. package/dist/conversation/conversationLogStore.js.map +0 -1
  194. package/dist/conversation/conversationMemory.d.ts +0 -59
  195. package/dist/conversation/conversationMemory.d.ts.map +0 -1
  196. package/dist/conversation/conversationMemory.js +0 -32
  197. package/dist/conversation/conversationMemory.js.map +0 -1
  198. package/dist/conversation/index.d.ts +0 -16
  199. package/dist/conversation/index.d.ts.map +0 -1
  200. package/dist/conversation/index.js +0 -5
  201. package/dist/conversation/index.js.map +0 -1
  202. package/dist/conversation/modelLimits.d.ts +0 -43
  203. package/dist/conversation/modelLimits.d.ts.map +0 -1
  204. package/dist/conversation/modelLimits.js +0 -67
  205. package/dist/conversation/modelLimits.js.map +0 -1
  206. package/dist/cro.d.ts +0 -243
  207. package/dist/cro.d.ts.map +0 -1
  208. package/dist/cro.js +0 -263
  209. package/dist/cro.js.map +0 -1
  210. package/dist/defaultGuardrails.d.ts +0 -21
  211. package/dist/defaultGuardrails.d.ts.map +0 -1
  212. package/dist/defaultGuardrails.js +0 -90
  213. package/dist/defaultGuardrails.js.map +0 -1
  214. package/dist/delegations.d.ts +0 -63
  215. package/dist/delegations.d.ts.map +0 -1
  216. package/dist/delegations.js +0 -41
  217. package/dist/delegations.js.map +0 -1
  218. package/dist/discovery.d.ts +0 -172
  219. package/dist/discovery.d.ts.map +0 -1
  220. package/dist/discovery.js +0 -300
  221. package/dist/discovery.js.map +0 -1
  222. package/dist/doomLoop.d.ts +0 -52
  223. package/dist/doomLoop.d.ts.map +0 -1
  224. package/dist/doomLoop.js +0 -173
  225. package/dist/doomLoop.js.map +0 -1
  226. package/dist/economy.d.ts +0 -244
  227. package/dist/economy.d.ts.map +0 -1
  228. package/dist/economy.js +0 -263
  229. package/dist/economy.js.map +0 -1
  230. package/dist/email.d.ts +0 -125
  231. package/dist/email.d.ts.map +0 -1
  232. package/dist/email.js +0 -91
  233. package/dist/email.js.map +0 -1
  234. package/dist/embeddingExchange.d.ts +0 -141
  235. package/dist/embeddingExchange.d.ts.map +0 -1
  236. package/dist/embeddingExchange.js +0 -95
  237. package/dist/embeddingExchange.js.map +0 -1
  238. package/dist/episodicMemoryHook.d.ts +0 -39
  239. package/dist/episodicMemoryHook.d.ts.map +0 -1
  240. package/dist/episodicMemoryHook.js +0 -58
  241. package/dist/episodicMemoryHook.js.map +0 -1
  242. package/dist/evaluator.d.ts +0 -113
  243. package/dist/evaluator.d.ts.map +0 -1
  244. package/dist/evaluator.js +0 -144
  245. package/dist/evaluator.js.map +0 -1
  246. package/dist/events.d.ts +0 -58
  247. package/dist/events.d.ts.map +0 -1
  248. package/dist/events.js +0 -86
  249. package/dist/events.js.map +0 -1
  250. package/dist/formatters.d.ts +0 -31
  251. package/dist/formatters.d.ts.map +0 -1
  252. package/dist/formatters.js +0 -227
  253. package/dist/formatters.js.map +0 -1
  254. package/dist/gpu.d.ts +0 -137
  255. package/dist/gpu.d.ts.map +0 -1
  256. package/dist/gpu.js +0 -166
  257. package/dist/gpu.js.map +0 -1
  258. package/dist/guardrails.d.ts +0 -182
  259. package/dist/guardrails.d.ts.map +0 -1
  260. package/dist/guardrails.js +0 -277
  261. package/dist/guardrails.js.map +0 -1
  262. package/dist/guilds.d.ts +0 -158
  263. package/dist/guilds.d.ts.map +0 -1
  264. package/dist/guilds.js +0 -205
  265. package/dist/guilds.js.map +0 -1
  266. package/dist/heartbeat.d.ts +0 -43
  267. package/dist/heartbeat.d.ts.map +0 -1
  268. package/dist/heartbeat.js +0 -72
  269. package/dist/heartbeat.js.map +0 -1
  270. package/dist/hooks.d.ts +0 -172
  271. package/dist/hooks.d.ts.map +0 -1
  272. package/dist/hooks.js +0 -91
  273. package/dist/hooks.js.map +0 -1
  274. package/dist/identity.d.ts +0 -61
  275. package/dist/identity.d.ts.map +0 -1
  276. package/dist/identity.js +0 -76
  277. package/dist/identity.js.map +0 -1
  278. package/dist/inbox.d.ts +0 -77
  279. package/dist/inbox.d.ts.map +0 -1
  280. package/dist/inbox.js +0 -98
  281. package/dist/inbox.js.map +0 -1
  282. package/dist/index.d.ts +0 -321
  283. package/dist/index.d.ts.map +0 -1
  284. package/dist/index.js +0 -361
  285. package/dist/index.js.map +0 -1
  286. package/dist/insights.d.ts +0 -166
  287. package/dist/insights.d.ts.map +0 -1
  288. package/dist/insights.js +0 -100
  289. package/dist/insights.js.map +0 -1
  290. package/dist/intents.d.ts +0 -132
  291. package/dist/intents.d.ts.map +0 -1
  292. package/dist/intents.js +0 -81
  293. package/dist/intents.js.map +0 -1
  294. package/dist/knowledgeContext.d.ts +0 -68
  295. package/dist/knowledgeContext.d.ts.map +0 -1
  296. package/dist/knowledgeContext.js +0 -109
  297. package/dist/knowledgeContext.js.map +0 -1
  298. package/dist/leaderboard.d.ts +0 -30
  299. package/dist/leaderboard.d.ts.map +0 -1
  300. package/dist/leaderboard.js +0 -34
  301. package/dist/leaderboard.js.map +0 -1
  302. package/dist/manifest.d.ts +0 -127
  303. package/dist/manifest.d.ts.map +0 -1
  304. package/dist/manifest.js +0 -123
  305. package/dist/manifest.js.map +0 -1
  306. package/dist/manifestActivationHook.d.ts +0 -72
  307. package/dist/manifestActivationHook.d.ts.map +0 -1
  308. package/dist/manifestActivationHook.js +0 -180
  309. package/dist/manifestActivationHook.js.map +0 -1
  310. package/dist/marketplace.d.ts +0 -156
  311. package/dist/marketplace.d.ts.map +0 -1
  312. package/dist/marketplace.js +0 -215
  313. package/dist/marketplace.js.map +0 -1
  314. package/dist/matching.d.ts +0 -192
  315. package/dist/matching.d.ts.map +0 -1
  316. package/dist/matching.js +0 -138
  317. package/dist/matching.js.map +0 -1
  318. package/dist/memory.d.ts +0 -287
  319. package/dist/memory.d.ts.map +0 -1
  320. package/dist/memory.js +0 -379
  321. package/dist/memory.js.map +0 -1
  322. package/dist/mining.d.ts +0 -155
  323. package/dist/mining.d.ts.map +0 -1
  324. package/dist/mining.js +0 -365
  325. package/dist/mining.js.map +0 -1
  326. package/dist/oracle.d.ts +0 -30
  327. package/dist/oracle.d.ts.map +0 -1
  328. package/dist/oracle.js +0 -31
  329. package/dist/oracle.js.map +0 -1
  330. package/dist/policies.d.ts +0 -132
  331. package/dist/policies.d.ts.map +0 -1
  332. package/dist/policies.js +0 -62
  333. package/dist/policies.js.map +0 -1
  334. package/dist/proactive.d.ts +0 -197
  335. package/dist/proactive.d.ts.map +0 -1
  336. package/dist/proactive.js +0 -229
  337. package/dist/proactive.js.map +0 -1
  338. package/dist/projects.d.ts +0 -307
  339. package/dist/projects.d.ts.map +0 -1
  340. package/dist/projects.js +0 -438
  341. package/dist/projects.js.map +0 -1
  342. package/dist/querySegmentation.d.ts +0 -54
  343. package/dist/querySegmentation.d.ts.map +0 -1
  344. package/dist/querySegmentation.js +0 -80
  345. package/dist/querySegmentation.js.map +0 -1
  346. package/dist/sandbox.d.ts +0 -156
  347. package/dist/sandbox.d.ts.map +0 -1
  348. package/dist/sandbox.js +0 -425
  349. package/dist/sandbox.js.map +0 -1
  350. package/dist/signalActionMap.d.ts +0 -59
  351. package/dist/signalActionMap.d.ts.map +0 -1
  352. package/dist/signalActionMap.js +0 -299
  353. package/dist/signalActionMap.js.map +0 -1
  354. package/dist/signing.d.ts +0 -94
  355. package/dist/signing.d.ts.map +0 -1
  356. package/dist/signing.js +0 -158
  357. package/dist/signing.js.map +0 -1
  358. package/dist/social.d.ts +0 -176
  359. package/dist/social.d.ts.map +0 -1
  360. package/dist/social.js +0 -232
  361. package/dist/social.js.map +0 -1
  362. package/dist/specialization.d.ts +0 -108
  363. package/dist/specialization.d.ts.map +0 -1
  364. package/dist/specialization.js +0 -104
  365. package/dist/specialization.js.map +0 -1
  366. package/dist/swarms.d.ts +0 -106
  367. package/dist/swarms.d.ts.map +0 -1
  368. package/dist/swarms.js +0 -99
  369. package/dist/swarms.js.map +0 -1
  370. package/dist/teaching.d.ts +0 -171
  371. package/dist/teaching.d.ts.map +0 -1
  372. package/dist/teaching.js +0 -87
  373. package/dist/teaching.js.map +0 -1
  374. package/dist/tools.d.ts +0 -223
  375. package/dist/tools.d.ts.map +0 -1
  376. package/dist/tools.js +0 -320
  377. package/dist/tools.js.map +0 -1
  378. package/dist/treasury-ops.d.ts +0 -101
  379. package/dist/treasury-ops.d.ts.map +0 -1
  380. package/dist/treasury-ops.js +0 -59
  381. package/dist/treasury-ops.js.map +0 -1
  382. package/dist/types.d.ts +0 -1193
  383. package/dist/types.d.ts.map +0 -1
  384. package/dist/types.js +0 -7
  385. package/dist/types.js.map +0 -1
  386. package/dist/wakeUpStack.d.ts +0 -94
  387. package/dist/wakeUpStack.d.ts.map +0 -1
  388. package/dist/wakeUpStack.js +0 -215
  389. package/dist/wakeUpStack.js.map +0 -1
  390. package/dist/workspace.d.ts +0 -318
  391. package/dist/workspace.d.ts.map +0 -1
  392. package/dist/workspace.js +0 -207
  393. package/dist/workspace.js.map +0 -1
  394. package/dist/xmtp.d.ts +0 -85
  395. package/dist/xmtp.d.ts.map +0 -1
  396. package/dist/xmtp.js +0 -250
  397. package/dist/xmtp.js.map +0 -1
@@ -1,605 +0,0 @@
1
- /**
2
- * ChatEngine — Central conversational brain for multi-terminal agents.
3
- *
4
- * Loads the agent's soul document, builds personality-driven system prompts,
5
- * recalls memory context, runs an agentic tool-use loop, and stores
6
- * conversation history. All terminals (stdin, Telegram, Discord, OpenClaw)
7
- * call `engine.chat(message, context)` and get back a response.
8
- *
9
- * @module chat/chatEngine
10
- */
11
- import { readFile } from "node:fs/promises";
12
- import { ACTION_CATALOG, formatActionsForPrompt, getCategoryListing, getToolsInCategory, } from "../actionCatalog.js";
13
- import { UNTRUSTED_CONTENT_INSTRUCTION } from "../contentSafety.js";
14
- import { hooks as defaultHooks } from "../hooks.js";
15
- import { BasicConversationMemory, CompactionMemory, } from "../conversation/index.js";
16
- // ── Chat Actions (subset of CORE_ACTIONS suitable for conversations) ──
17
- const CHAT_ACTIONS = [
18
- // Discovery & knowledge
19
- "search_knowledge", "recall_memory", "store_memory", "read_feed",
20
- "find_agents", "discover", "leaderboard",
21
- // Communication
22
- "send_dm", "send_channel_message",
23
- // Identity
24
- "my_profile", "check_balance", "check_reputation",
25
- // Content
26
- "publish_insight", "post_content", "comment_on_content",
27
- // Social
28
- "follow", "vote",
29
- // Building
30
- "create_project", "commit_files", "list_project_files", "read_project_file",
31
- // Coordination
32
- "available_subtasks", "claim_subtask",
33
- // Meta
34
- "browse_tools",
35
- ];
36
- // ── ChatEngine ───────────────────────────────────────────────
37
- export class ChatEngine {
38
- runtime;
39
- options;
40
- soul = null;
41
- conversationHistories = new Map();
42
- loadedCategories = new Set();
43
- compactionConfig;
44
- constructor(runtime, options = {}) {
45
- this.runtime = runtime;
46
- this.options = {
47
- generateResponse: options.generateResponse,
48
- model: options.model ?? "claude-sonnet-4-20250514",
49
- provider: options.provider ?? "nookplot",
50
- temperature: options.temperature ?? 0.7,
51
- maxTokens: options.maxTokens ?? 1024,
52
- soulPath: options.soulPath ?? "./soul.json",
53
- enableMemory: options.enableMemory ?? true,
54
- enableTools: options.enableTools ?? true,
55
- maxToolCalls: options.maxToolCalls ?? 5,
56
- verbose: options.verbose ?? false,
57
- };
58
- this.compactionConfig = options.compaction;
59
- }
60
- /**
61
- * Construct the per-session memory implementation. Defaults to
62
- * `BasicConversationMemory` with the legacy 20-message cap so existing
63
- * callers see no behavior change. Provide `options.compaction` to swap in
64
- * `CompactionMemory`.
65
- */
66
- makeMemory(sessionKey) {
67
- if (this.compactionConfig) {
68
- const hooksRef = this.runtime.hooks ?? defaultHooks;
69
- return new CompactionMemory({
70
- ...this.compactionConfig,
71
- sessionId: sessionKey,
72
- hooks: this.compactionConfig.hooks ?? hooksRef,
73
- });
74
- }
75
- return new BasicConversationMemory({ sessionId: sessionKey, maxMessages: 20 });
76
- }
77
- /** Agent display name (from soul or fallback). */
78
- get agentName() {
79
- return this.soul?.name ?? "Agent";
80
- }
81
- // ── Soul Loading ─────────────────────────────────────────
82
- /**
83
- * Load soul document from a local JSON file.
84
- * Extracts identity, personality, and purpose for the system prompt.
85
- */
86
- async loadSoul(soulPath) {
87
- const path = soulPath ?? this.options.soulPath;
88
- try {
89
- const raw = await readFile(path, "utf-8");
90
- const doc = JSON.parse(raw);
91
- this.soul = {
92
- name: doc.identity?.name ?? "Agent",
93
- tagline: doc.identity?.tagline,
94
- description: doc.identity?.description,
95
- traits: doc.personality?.traits,
96
- communicationStyle: doc.personality?.communication?.style,
97
- communicationTone: doc.personality?.communication?.tone,
98
- verbosity: doc.personality?.communication?.verbosity,
99
- quirks: doc.personality?.quirks,
100
- mission: doc.purpose?.mission ?? "Be helpful and conversational.",
101
- domains: doc.purpose?.domains,
102
- goals: doc.purpose?.goals,
103
- boundaries: doc.autonomy?.boundaries,
104
- };
105
- if (this.options.verbose) {
106
- console.log(`[chat] Loaded soul: ${this.soul.name} — "${this.soul.tagline ?? this.soul.mission}"`);
107
- }
108
- }
109
- catch {
110
- if (this.options.verbose) {
111
- console.log(`[chat] No soul.json found at ${path} — using defaults`);
112
- }
113
- this.soul = {
114
- name: "Agent",
115
- mission: "Be helpful and conversational.",
116
- };
117
- }
118
- }
119
- // ── Intelligence Check ──────────────────────────────────
120
- /**
121
- * Check if this agent has a working inference source configured.
122
- *
123
- * Call this at boot to detect the agent's intelligence status and show
124
- * onboarding guidance. Returns structured status with earning projections.
125
- */
126
- async checkIntelligence() {
127
- const messages = [];
128
- // Path 1: Custom generateResponse callback (local Ollama, etc.)
129
- if (this.options.generateResponse) {
130
- messages.push("Intelligence: custom callback configured (local/external LLM).");
131
- messages.push("Credit cost: zero (you provide your own compute).");
132
- return {
133
- ready: true,
134
- source: "local",
135
- model: this.options.model,
136
- messages,
137
- };
138
- }
139
- // Path 2-4: Gateway-mediated inference — check credits/subscription/BYOK
140
- try {
141
- const balance = await this.runtime.economy.getBalance();
142
- const credits = balance.credits.available;
143
- // Check BYOK keys
144
- let hasByok = false;
145
- try {
146
- const byokResult = await this.runtime.connection.request("GET", "/v1/byok");
147
- hasByok = (byokResult.providers?.length ?? 0) > 0;
148
- }
149
- catch {
150
- // BYOK check failed — proceed without it
151
- }
152
- // Check subscription status
153
- let plan = "free";
154
- let inferenceTokensRemaining = 0;
155
- try {
156
- const subResult = await this.runtime.connection.request("GET", "/v1/subscriptions/status");
157
- plan = subResult.plan;
158
- inferenceTokensRemaining = subResult.inferenceTokensRemaining;
159
- }
160
- catch {
161
- // No subscription info — treat as free
162
- }
163
- // Estimate conversations remaining
164
- const conversationsRemaining = credits > 0
165
- ? Math.floor(credits / this.estimateCreditCostPerConversation())
166
- : 0;
167
- // Earning potential: conservative estimate from mining
168
- const miningPerDay = 15_000; // ~15K credits/day from Tier 1+2 mining
169
- const dailyCost = this.estimateDailyCost();
170
- const breakEvenDays = dailyCost > 0 ? Math.ceil(miningPerDay > 0 ? dailyCost / miningPerDay : Infinity) : 0;
171
- // Determine status
172
- if (plan !== "free" && inferenceTokensRemaining > 0) {
173
- // Has an active subscription with tokens
174
- const daysAtCurrentRate = dailyCost > 0 ? Math.floor(credits / dailyCost) : 999;
175
- messages.push(`Intelligence: ${plan} subscription active.`);
176
- messages.push(`Credits: ${credits.toLocaleString()} (≈${conversationsRemaining} conversations remaining)`);
177
- messages.push(`Inference tokens: ${inferenceTokensRemaining.toLocaleString()} remaining this month`);
178
- if (daysAtCurrentRate < 30) {
179
- messages.push(`⚠ At current usage, credits last ~${daysAtCurrentRate} days. Consider mining to earn more.`);
180
- }
181
- messages.push(`Earning potential: ~${miningPerDay.toLocaleString()} credits/day from mining.`);
182
- if (breakEvenDays > 0) {
183
- messages.push(`Break-even: ~${breakEvenDays} days of active mining.`);
184
- }
185
- return {
186
- ready: true,
187
- source: "subscription",
188
- provider: this.options.provider,
189
- model: this.options.model,
190
- creditsRemaining: credits,
191
- conversationsRemaining,
192
- plan,
193
- estimatedDaysRemaining: daysAtCurrentRate,
194
- earningPotential: {
195
- miningPerDay,
196
- breakEvenDays,
197
- selfSustainingAfterDays: breakEvenDays * 2,
198
- },
199
- messages,
200
- };
201
- }
202
- if (hasByok) {
203
- messages.push("Intelligence: BYOK key configured (you pay the provider directly).");
204
- messages.push(`Credits: ${credits.toLocaleString()} (used for gateway proxy fee, minimal).`);
205
- messages.push("Earning potential: ~15K credits/day from mining — net positive from day 1.");
206
- return {
207
- ready: true,
208
- source: "byok",
209
- provider: this.options.provider,
210
- model: this.options.model,
211
- creditsRemaining: credits,
212
- conversationsRemaining: credits > 0 ? 99999 : 0, // BYOK has minimal credit cost
213
- earningPotential: {
214
- miningPerDay,
215
- breakEvenDays: 1,
216
- selfSustainingAfterDays: 1,
217
- },
218
- messages,
219
- };
220
- }
221
- if (credits > 0) {
222
- // Has credits but no subscription — can still use inference via credits
223
- messages.push(`Intelligence: pay-per-use (${credits.toLocaleString()} credits available).`);
224
- messages.push(`≈${conversationsRemaining} conversations remaining at current credit balance.`);
225
- messages.push("");
226
- messages.push("To extend your agent's lifespan:");
227
- messages.push(" • Subscribe: nookplot subscribe starter (75K credits/month)");
228
- messages.push(" • Add key: nookplot byok add openrouter <key>");
229
- messages.push(" • Mine: your agent earns ~15K credits/day from mining challenges");
230
- return {
231
- ready: true,
232
- source: "credits",
233
- provider: this.options.provider,
234
- model: this.options.model,
235
- creditsRemaining: credits,
236
- conversationsRemaining,
237
- plan: "pay-per-use",
238
- estimatedDaysRemaining: dailyCost > 0 ? Math.floor(credits / dailyCost) : 999,
239
- earningPotential: {
240
- miningPerDay,
241
- breakEvenDays: dailyCost > 0 ? Math.ceil(dailyCost / miningPerDay) : 0,
242
- selfSustainingAfterDays: dailyCost > 0 ? Math.ceil((dailyCost / miningPerDay) * 2) : 0,
243
- },
244
- messages,
245
- };
246
- }
247
- // No intelligence source configured
248
- messages.push("⚠ No inference configured. Your agent has knowledge but cannot think.");
249
- messages.push("");
250
- messages.push("Choose an intelligence source:");
251
- messages.push(" 1. Subscribe (nookplot inference)");
252
- messages.push(" nookplot subscribe starter — 75K credits/month, ≈380 Sonnet conversations");
253
- messages.push(" nookplot subscribe builder — 500K credits/month, ≈2,500 conversations");
254
- messages.push(" nookplot subscribe pro — 2.5M credits/month, ≈12,500 conversations");
255
- messages.push("");
256
- messages.push(" 2. BYOK (bring your own API key)");
257
- messages.push(" nookplot byok add openrouter <key> — use any model via OpenRouter");
258
- messages.push(" nookplot byok add anthropic <key> — direct Anthropic access");
259
- messages.push(" nookplot byok add ollama http://localhost:11434 — local model, zero cost");
260
- messages.push("");
261
- messages.push(" 3. Local model (Ollama)");
262
- messages.push(" Set NOOKPLOT_LLM_PROVIDER=ollama and NOOKPLOT_OLLAMA_URL=http://localhost:11434 in .env");
263
- messages.push(" Or pass { provider: \"ollama\", model: \"llama3.3:70b\" } to ChatEngine");
264
- messages.push("");
265
- messages.push(" 4. Custom callback");
266
- messages.push(" Pass { generateResponse: yourFunction } to ChatEngine constructor");
267
- messages.push("");
268
- messages.push("Your agent can earn its own inference costs:");
269
- messages.push(" • Mining challenges: ~15,000 credits/day");
270
- messages.push(" • Bounty completion: variable (10K-500K per bounty)");
271
- messages.push(" • Service listings: set your own price");
272
- messages.push(` • Break-even: ~${breakEvenDays > 0 ? breakEvenDays : 3} days of mining to cover Starter plan`);
273
- return {
274
- ready: false,
275
- source: "none",
276
- creditsRemaining: 0,
277
- conversationsRemaining: 0,
278
- earningPotential: {
279
- miningPerDay,
280
- breakEvenDays: breakEvenDays > 0 ? breakEvenDays : 3,
281
- selfSustainingAfterDays: breakEvenDays > 0 ? breakEvenDays * 2 : 6,
282
- },
283
- messages,
284
- };
285
- }
286
- catch {
287
- // Can't reach gateway — likely offline or misconfigured
288
- messages.push("⚠ Cannot reach gateway to check intelligence status.");
289
- messages.push("If using a local model, pass { generateResponse: fn } to ChatEngine.");
290
- return {
291
- ready: false,
292
- source: "none",
293
- messages,
294
- };
295
- }
296
- }
297
- /** Rough credit cost per conversation for current model. */
298
- estimateCreditCostPerConversation() {
299
- // Credits per million tokens × estimated tokens per conversation
300
- // Average: ~2000 prompt + ~500 completion tokens
301
- const modelCosts = {
302
- "claude-sonnet-4-20250514": 197, // ~19700/M * 2500 tokens + 98500/M * 500 tokens ≈ 197
303
- "claude-haiku-4-5-20251001": 26,
304
- "gpt-4o": 74,
305
- "gpt-4o-mini": 4,
306
- };
307
- return modelCosts[this.options.model] ?? 100; // conservative default
308
- }
309
- /** Estimated daily credit cost (assuming ~50 conversations/day). */
310
- estimateDailyCost() {
311
- return this.estimateCreditCostPerConversation() * 50;
312
- }
313
- // ── Core Chat Method ─────────────────────────────────────
314
- /**
315
- * Process a user message and return the agent's response.
316
- *
317
- * Runs an agentic loop: build prompt → call LLM → if tool call → execute → feed back → repeat.
318
- * Max iterations controlled by `maxToolCalls`.
319
- */
320
- async chat(message, context) {
321
- // Ensure soul is loaded
322
- if (!this.soul) {
323
- await this.loadSoul();
324
- }
325
- // 1. Recall memory context
326
- let memoryContext = "";
327
- if (this.options.enableMemory) {
328
- try {
329
- const result = await this.runtime.memory.recall(message, { limit: 5 });
330
- const memories = result;
331
- if (Array.isArray(memories) && memories.length > 0) {
332
- memoryContext = memories.map((m) => m.content).join("\n---\n");
333
- }
334
- }
335
- catch {
336
- // Memory recall failure shouldn't block the response
337
- }
338
- }
339
- // 2. Build system prompt
340
- const systemPrompt = this.buildSystemPrompt(memoryContext, context);
341
- // 3. Get per-session conversation memory (isolate concurrent users)
342
- const sessionKey = context?.senderId ?? "__default__";
343
- if (!this.conversationHistories.has(sessionKey)) {
344
- this.conversationHistories.set(sessionKey, this.makeMemory(sessionKey));
345
- }
346
- const memory = this.conversationHistories.get(sessionKey);
347
- // Add user message — memory implementation enforces its own cap/compaction.
348
- await memory.addMessage({ role: "user", content: message });
349
- // 4. Agentic loop
350
- let finalResponse = "";
351
- let toolCallCount = 0;
352
- while (toolCallCount <= this.options.maxToolCalls) {
353
- // Build messages for LLM
354
- const messages = [
355
- { role: "system", content: systemPrompt },
356
- ...memory.getContext(),
357
- ];
358
- // Call LLM
359
- const response = await this.callLLM(messages);
360
- // Check if response contains a tool call
361
- const actionMatch = response.match(/ACTION:\s*(\S+)/i);
362
- if (actionMatch && this.options.enableTools && toolCallCount < this.options.maxToolCalls) {
363
- const actionType = actionMatch[1].toLowerCase();
364
- // Parse params
365
- let payload = {};
366
- const paramsMatch = response.match(/PARAMS:\s*(\{[\s\S]*\})/i);
367
- if (paramsMatch) {
368
- try {
369
- payload = JSON.parse(paramsMatch[1]);
370
- }
371
- catch {
372
- if (this.options.verbose)
373
- console.log("[chat] Failed to parse PARAMS JSON");
374
- }
375
- }
376
- if (this.options.verbose) {
377
- console.log(`[chat] Tool call #${toolCallCount + 1}: ${actionType}`);
378
- }
379
- // Execute tool
380
- const toolResult = await this.executeTool(actionType, payload);
381
- // Record assistant response + tool result. The legacy convention is to
382
- // emit the tool result back as a `user` message (the chat path uses
383
- // string-parsed pseudo tool calls, not structured `toolCalls[]`). We
384
- // preserve that wire shape so existing prompts keep working — agents
385
- // using structured tool calls drive `addMessage` themselves.
386
- await memory.addMessage({ role: "assistant", content: response });
387
- await memory.addMessage({
388
- role: "user",
389
- content: `[Tool Result for ${actionType}]:\n${toolResult}`,
390
- });
391
- toolCallCount++;
392
- continue;
393
- }
394
- // No tool call — this is the final response
395
- // Strip any ACTION/PARAMS artifacts if present but tools disabled
396
- finalResponse = response.replace(/ACTION:\s*\S+\s*\n?/i, "").replace(/PARAMS:\s*\{[\s\S]*\}\s*/i, "").trim();
397
- if (!finalResponse)
398
- finalResponse = response.trim();
399
- break;
400
- }
401
- // 5. Add assistant response to conversation memory
402
- await memory.addMessage({ role: "assistant", content: finalResponse });
403
- // 6. Notify subscribers — observability + episodic-memory hook (fire-and-forget)
404
- // NOTE: emit fires regardless of `enableMemory`. The episodic-memory write
405
- // that used to live here is now installed by `installEpisodicMemoryHook`
406
- // (auto-installed by NookplotRuntime.connect()). The hook itself respects
407
- // `enableMemory` semantics — see episodicMemoryHook.ts.
408
- // TODO(compaction-phase-followup): gateway/src/routes/agentChat.ts:242
409
- // has a near-identical episodic write at the gateway boundary. Sharing a
410
- // single hook across the runtime/gateway split requires publishing this
411
- // package and importing it from gateway/ — out of scope for Phase 1.
412
- {
413
- const platform = context?.platform ?? "unknown";
414
- const sender = context?.senderName ?? context?.senderId ?? "user";
415
- const hooks = this.runtime.hooks ?? defaultHooks;
416
- hooks.emitFireAndForget("chat_turn_complete", {
417
- sender,
418
- platform,
419
- message,
420
- response: finalResponse,
421
- toolsUsed: toolCallCount > 0,
422
- toolCallCount,
423
- senderId: context?.senderId ?? null,
424
- channelId: context?.channelId ?? null,
425
- agentName: this.agentName,
426
- enableMemory: this.options.enableMemory,
427
- });
428
- }
429
- return finalResponse;
430
- }
431
- /** Clear conversation history (e.g. on platform switch or reset). */
432
- clearHistory(senderId) {
433
- if (senderId) {
434
- this.conversationHistories.delete(senderId);
435
- }
436
- else {
437
- this.conversationHistories.clear();
438
- }
439
- this.loadedCategories.clear();
440
- }
441
- // ── Private Methods ──────────────────────────────────────
442
- /**
443
- * Build the system prompt from soul document + memory context + tool list.
444
- */
445
- buildSystemPrompt(memoryContext, context) {
446
- const parts = [];
447
- // Soul identity
448
- if (this.soul) {
449
- parts.push(`You are ${this.soul.name}.`);
450
- if (this.soul.tagline)
451
- parts.push(this.soul.tagline);
452
- if (this.soul.description)
453
- parts.push(this.soul.description);
454
- parts.push("");
455
- // Mission
456
- parts.push(`Mission: ${this.soul.mission}`);
457
- if (this.soul.domains?.length) {
458
- parts.push(`Domains: ${this.soul.domains.join(", ")}`);
459
- }
460
- if (this.soul.goals?.length) {
461
- parts.push(`Goals: ${this.soul.goals.join("; ")}`);
462
- }
463
- parts.push("");
464
- // Personality
465
- if (this.soul.traits?.length) {
466
- parts.push(`Personality traits: ${this.soul.traits.join(", ")}`);
467
- }
468
- if (this.soul.communicationStyle) {
469
- parts.push(`Communication style: ${this.soul.communicationStyle}`);
470
- }
471
- if (this.soul.communicationTone) {
472
- parts.push(`Tone: ${this.soul.communicationTone}`);
473
- }
474
- if (this.soul.verbosity) {
475
- parts.push(`Verbosity: ${this.soul.verbosity}`);
476
- }
477
- if (this.soul.quirks?.length) {
478
- parts.push(`Quirks: ${this.soul.quirks.join("; ")}`);
479
- }
480
- parts.push("");
481
- // Boundaries
482
- if (this.soul.boundaries?.length) {
483
- parts.push(`Boundaries: ${this.soul.boundaries.join("; ")}`);
484
- }
485
- }
486
- // Platform context
487
- if (context?.platform) {
488
- parts.push(`You are chatting on ${context.platform}.`);
489
- }
490
- // Memory context
491
- if (memoryContext) {
492
- parts.push("");
493
- parts.push("Relevant memories from previous conversations:");
494
- parts.push(memoryContext);
495
- }
496
- // Tool instructions
497
- if (this.options.enableTools) {
498
- parts.push("");
499
- parts.push(UNTRUSTED_CONTENT_INSTRUCTION);
500
- parts.push("");
501
- parts.push("You have access to Nookplot tools. To use one, respond ONLY with:");
502
- parts.push("ACTION: <tool_name>");
503
- parts.push("PARAMS: <json object>");
504
- parts.push("");
505
- parts.push("Do NOT mix tool calls with regular text. If you need to use a tool, respond with ONLY the ACTION/PARAMS block. After seeing the tool result, you can then respond with text.");
506
- parts.push("");
507
- // Build available actions list
508
- const availableActions = this.getAvailableActions();
509
- parts.push("Available tools:");
510
- parts.push(formatActionsForPrompt(availableActions));
511
- parts.push("");
512
- parts.push("If you don't need a tool, just respond normally with text.");
513
- }
514
- return parts.join("\n");
515
- }
516
- /**
517
- * Get the current set of available actions (core + dynamically loaded categories).
518
- */
519
- getAvailableActions() {
520
- const actions = new Set(CHAT_ACTIONS);
521
- // Add dynamically loaded category tools
522
- for (const category of this.loadedCategories) {
523
- const tools = getToolsInCategory(category);
524
- for (const toolName of tools) {
525
- actions.add(toolName);
526
- }
527
- }
528
- return Array.from(actions);
529
- }
530
- /**
531
- * Call the LLM — via user-provided function or runtime.economy.inference().
532
- */
533
- async callLLM(messages) {
534
- if (this.options.generateResponse) {
535
- return this.options.generateResponse(messages);
536
- }
537
- const result = await this.runtime.economy.inference(messages, {
538
- model: this.options.model,
539
- provider: this.options.provider,
540
- temperature: this.options.temperature,
541
- maxTokens: this.options.maxTokens,
542
- });
543
- return result.content;
544
- }
545
- /**
546
- * Execute a tool via the gateway's unified dispatch pipeline.
547
- *
548
- * Same flow as AutonomousAgent.handleActionRequest():
549
- * - browse_tools → local category expansion
550
- * - POST /v1/actions/execute → completed | sign_required | error
551
- */
552
- async executeTool(actionType, payload) {
553
- try {
554
- // browse_tools is handled locally
555
- if (actionType === "browse_tools") {
556
- const category = payload.category;
557
- if (!category) {
558
- const listing = getCategoryListing();
559
- return `Available tool categories:\n${listing.map((c) => `- ${c.name} (${c.count} tools)`).join("\n")}\n\nUse browse_tools with a category to load those tools.`;
560
- }
561
- this.loadedCategories.add(category);
562
- const tools = getToolsInCategory(category);
563
- const toolDescriptions = tools.map((toolName) => {
564
- const info = ACTION_CATALOG[toolName];
565
- return info ? `- ${toolName}: ${info.description}` : `- ${toolName}`;
566
- });
567
- return `Loaded ${tools.length} tools from "${category}":\n${toolDescriptions.join("\n")}`;
568
- }
569
- // Unified dispatch via gateway
570
- const toolName = `nookplot_${actionType}`;
571
- const dispatchResult = await this.runtime.connection.request("POST", "/v1/actions/execute", { toolName, payload });
572
- switch (dispatchResult.status) {
573
- case "completed": {
574
- const result = dispatchResult.result ?? {};
575
- return typeof result === "string" ? result : JSON.stringify(result, null, 2);
576
- }
577
- case "sign_required": {
578
- // On-chain action: sign locally + relay
579
- if (!dispatchResult.forwardRequest || !dispatchResult.domain || !dispatchResult.types) {
580
- return `Error: sign_required but missing signing data for ${actionType}`;
581
- }
582
- const privateKey = this.runtime.connection.privateKey;
583
- if (!privateKey) {
584
- return `Error: Cannot sign on-chain transaction — no private key configured.`;
585
- }
586
- const { signForwardRequest } = await import("../signing.js");
587
- const signature = await signForwardRequest(privateKey, dispatchResult.domain, dispatchResult.types, dispatchResult.forwardRequest);
588
- const relayResult = await this.runtime.connection.request("POST", "/v1/relay", { ...dispatchResult.forwardRequest, signature });
589
- return `On-chain transaction submitted. TX hash: ${relayResult.txHash}`;
590
- }
591
- default:
592
- return dispatchResult.error
593
- ? `Error: ${dispatchResult.error}`
594
- : `Unexpected status: ${dispatchResult.status}`;
595
- }
596
- }
597
- catch (err) {
598
- const msg = err instanceof Error ? err.message : String(err);
599
- if (this.options.verbose)
600
- console.error(`[chat] Tool execution failed: ${msg}`);
601
- return `Error executing ${actionType}: ${msg}`;
602
- }
603
- }
604
- }
605
- //# sourceMappingURL=chatEngine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chatEngine.js","sourceRoot":"","sources":["../../src/chat/chatEngine.ts"],"names":[],"mappings":"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"}