agentvault 1.0.2 → 1.0.5

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 (776) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/README.md +66 -6
  3. package/dist/cli/commands/approve.d.ts.map +1 -0
  4. package/dist/cli/commands/approve.js +357 -1
  5. package/dist/cli/commands/approve.js.map +1 -0
  6. package/dist/cli/commands/archive.d.ts.map +1 -0
  7. package/dist/cli/commands/archive.js.map +1 -0
  8. package/dist/cli/commands/backup.d.ts.map +1 -0
  9. package/dist/cli/commands/backup.js +303 -20
  10. package/dist/cli/commands/backup.js.map +1 -0
  11. package/dist/cli/commands/cloud-backup.d.ts.map +1 -0
  12. package/dist/cli/commands/cloud-backup.js +17 -0
  13. package/dist/cli/commands/cloud-backup.js.map +1 -0
  14. package/dist/cli/commands/cron.d.ts +14 -0
  15. package/dist/cli/commands/cron.d.ts.map +1 -0
  16. package/dist/cli/commands/cron.js +144 -0
  17. package/dist/cli/commands/cron.js.map +1 -0
  18. package/dist/cli/commands/cycles.d.ts.map +1 -0
  19. package/dist/cli/commands/cycles.js.map +1 -0
  20. package/dist/cli/commands/decrypt.d.ts.map +1 -0
  21. package/dist/cli/commands/decrypt.js.map +1 -0
  22. package/dist/cli/commands/deploy.d.ts.map +1 -0
  23. package/dist/cli/commands/deploy.js.map +1 -0
  24. package/dist/cli/commands/exec.d.ts.map +1 -0
  25. package/dist/cli/commands/exec.js.map +1 -0
  26. package/dist/cli/commands/fetch.d.ts +3 -0
  27. package/dist/cli/commands/fetch.d.ts.map +1 -0
  28. package/dist/cli/commands/fetch.js +68 -4
  29. package/dist/cli/commands/fetch.js.map +1 -0
  30. package/dist/cli/commands/health.d.ts.map +1 -0
  31. package/dist/cli/commands/health.js +57 -2
  32. package/dist/cli/commands/health.js.map +1 -0
  33. package/dist/cli/commands/identity.d.ts.map +1 -0
  34. package/dist/cli/commands/identity.js.map +1 -0
  35. package/dist/cli/commands/inference.d.ts.map +1 -0
  36. package/dist/cli/commands/inference.js.map +1 -0
  37. package/dist/cli/commands/info.d.ts.map +1 -0
  38. package/dist/cli/commands/info.js.map +1 -0
  39. package/dist/cli/commands/init.d.ts +18 -1
  40. package/dist/cli/commands/init.d.ts.map +1 -0
  41. package/dist/cli/commands/init.js +152 -27
  42. package/dist/cli/commands/init.js.map +1 -0
  43. package/dist/cli/commands/instrument.d.ts.map +1 -0
  44. package/dist/cli/commands/instrument.js.map +1 -0
  45. package/dist/cli/commands/list.d.ts.map +1 -0
  46. package/dist/cli/commands/list.js.map +1 -0
  47. package/dist/cli/commands/logs.d.ts.map +1 -0
  48. package/dist/cli/commands/logs.js.map +1 -0
  49. package/dist/cli/commands/mcp.d.ts +4 -0
  50. package/dist/cli/commands/mcp.d.ts.map +1 -0
  51. package/dist/cli/commands/mcp.js +228 -0
  52. package/dist/cli/commands/mcp.js.map +1 -0
  53. package/dist/cli/commands/memory.d.ts +26 -0
  54. package/dist/cli/commands/memory.d.ts.map +1 -0
  55. package/dist/cli/commands/memory.js +509 -0
  56. package/dist/cli/commands/memory.js.map +1 -0
  57. package/dist/cli/commands/mint.d.ts +25 -0
  58. package/dist/cli/commands/mint.d.ts.map +1 -0
  59. package/dist/cli/commands/mint.js +276 -0
  60. package/dist/cli/commands/mint.js.map +1 -0
  61. package/dist/cli/commands/mirror.d.ts +19 -0
  62. package/dist/cli/commands/mirror.d.ts.map +1 -0
  63. package/dist/cli/commands/mirror.js +216 -0
  64. package/dist/cli/commands/mirror.js.map +1 -0
  65. package/dist/cli/commands/monitor.d.ts.map +1 -0
  66. package/dist/cli/commands/monitor.js.map +1 -0
  67. package/dist/cli/commands/network.d.ts.map +1 -0
  68. package/dist/cli/commands/network.js.map +1 -0
  69. package/dist/cli/commands/orchestrate.d.ts +35 -0
  70. package/dist/cli/commands/orchestrate.d.ts.map +1 -0
  71. package/dist/cli/commands/orchestrate.js +190 -0
  72. package/dist/cli/commands/orchestrate.js.map +1 -0
  73. package/dist/cli/commands/package.d.ts.map +1 -0
  74. package/dist/cli/commands/package.js.map +1 -0
  75. package/dist/cli/commands/pilot.d.ts +17 -0
  76. package/dist/cli/commands/pilot.d.ts.map +1 -0
  77. package/dist/cli/commands/pilot.js +490 -0
  78. package/dist/cli/commands/pilot.js.map +1 -0
  79. package/dist/cli/commands/polytician.d.ts +4 -0
  80. package/dist/cli/commands/polytician.d.ts.map +1 -0
  81. package/dist/cli/commands/polytician.js +229 -0
  82. package/dist/cli/commands/polytician.js.map +1 -0
  83. package/dist/cli/commands/profile.d.ts.map +1 -0
  84. package/dist/cli/commands/profile.js +1 -1
  85. package/dist/cli/commands/profile.js.map +1 -0
  86. package/dist/cli/commands/promote.d.ts.map +1 -0
  87. package/dist/cli/commands/promote.js.map +1 -0
  88. package/dist/cli/commands/rebase.d.ts +85 -0
  89. package/dist/cli/commands/rebase.d.ts.map +1 -0
  90. package/dist/cli/commands/rebase.js +175 -0
  91. package/dist/cli/commands/rebase.js.map +1 -0
  92. package/dist/cli/commands/rebuild.d.ts.map +1 -0
  93. package/dist/cli/commands/rebuild.js.map +1 -0
  94. package/dist/cli/commands/repo.d.ts +19 -0
  95. package/dist/cli/commands/repo.d.ts.map +1 -0
  96. package/dist/cli/commands/repo.js +187 -0
  97. package/dist/cli/commands/repo.js.map +1 -0
  98. package/dist/cli/commands/rollback.d.ts.map +1 -0
  99. package/dist/cli/commands/rollback.js.map +1 -0
  100. package/dist/cli/commands/safehouse.d.ts +11 -0
  101. package/dist/cli/commands/safehouse.d.ts.map +1 -0
  102. package/dist/cli/commands/safehouse.js +323 -0
  103. package/dist/cli/commands/safehouse.js.map +1 -0
  104. package/dist/cli/commands/show.d.ts.map +1 -0
  105. package/dist/cli/commands/show.js.map +1 -0
  106. package/dist/cli/commands/skills.d.ts +12 -0
  107. package/dist/cli/commands/skills.d.ts.map +1 -0
  108. package/dist/cli/commands/skills.js +248 -0
  109. package/dist/cli/commands/skills.js.map +1 -0
  110. package/dist/cli/commands/stats.d.ts.map +1 -0
  111. package/dist/cli/commands/stats.js +2 -2
  112. package/dist/cli/commands/stats.js.map +1 -0
  113. package/dist/cli/commands/status.d.ts +2 -0
  114. package/dist/cli/commands/status.d.ts.map +1 -0
  115. package/dist/cli/commands/status.js +25 -0
  116. package/dist/cli/commands/status.js.map +1 -0
  117. package/dist/cli/commands/test.d.ts.map +1 -0
  118. package/dist/cli/commands/test.js.map +1 -0
  119. package/dist/cli/commands/tokens.d.ts.map +1 -0
  120. package/dist/cli/commands/tokens.js.map +1 -0
  121. package/dist/cli/commands/trace.d.ts.map +1 -0
  122. package/dist/cli/commands/trace.js +3 -3
  123. package/dist/cli/commands/trace.js.map +1 -0
  124. package/dist/cli/commands/vault.d.ts +7 -0
  125. package/dist/cli/commands/vault.d.ts.map +1 -0
  126. package/dist/cli/commands/vault.js +551 -0
  127. package/dist/cli/commands/vault.js.map +1 -0
  128. package/dist/cli/commands/wallet-export.d.ts.map +1 -0
  129. package/dist/cli/commands/wallet-export.js.map +1 -0
  130. package/dist/cli/commands/wallet-history.d.ts.map +1 -0
  131. package/dist/cli/commands/wallet-history.js +2 -26
  132. package/dist/cli/commands/wallet-history.js.map +1 -0
  133. package/dist/cli/commands/wallet-import.d.ts.map +1 -0
  134. package/dist/cli/commands/wallet-import.js.map +1 -0
  135. package/dist/cli/commands/wallet-multi-send.d.ts.map +1 -0
  136. package/dist/cli/commands/wallet-multi-send.js.map +1 -0
  137. package/dist/cli/commands/wallet-process-queue.d.ts.map +1 -0
  138. package/dist/cli/commands/wallet-process-queue.js +2 -23
  139. package/dist/cli/commands/wallet-process-queue.js.map +1 -0
  140. package/dist/cli/commands/wallet-sign.d.ts.map +1 -0
  141. package/dist/cli/commands/wallet-sign.js +2 -26
  142. package/dist/cli/commands/wallet-sign.js.map +1 -0
  143. package/dist/cli/commands/wallet.d.ts +61 -0
  144. package/dist/cli/commands/wallet.d.ts.map +1 -0
  145. package/dist/cli/commands/wallet.js +312 -42
  146. package/dist/cli/commands/wallet.js.map +1 -0
  147. package/dist/cli/commands/wiki.d.ts +29 -0
  148. package/dist/cli/commands/wiki.d.ts.map +1 -0
  149. package/dist/cli/commands/wiki.js +528 -0
  150. package/dist/cli/commands/wiki.js.map +1 -0
  151. package/dist/cli/index.d.ts.map +1 -0
  152. package/dist/cli/index.js +74 -2
  153. package/dist/cli/index.js.map +1 -0
  154. package/dist/cli/merge.d.ts +70 -0
  155. package/dist/cli/merge.d.ts.map +1 -0
  156. package/dist/cli/merge.js +232 -0
  157. package/dist/cli/merge.js.map +1 -0
  158. package/dist/src/archival/archive-manager.d.ts +4 -0
  159. package/dist/src/archival/archive-manager.d.ts.map +1 -0
  160. package/dist/src/archival/archive-manager.js +6 -0
  161. package/dist/src/archival/archive-manager.js.map +1 -0
  162. package/dist/src/archival/arweave-archiver.d.ts +173 -0
  163. package/dist/src/archival/arweave-archiver.d.ts.map +1 -0
  164. package/dist/src/archival/arweave-archiver.js +279 -0
  165. package/dist/src/archival/arweave-archiver.js.map +1 -0
  166. package/dist/src/archival/arweave-client.d.ts +1 -0
  167. package/dist/src/archival/arweave-client.d.ts.map +1 -0
  168. package/dist/src/archival/arweave-client.js +5 -2
  169. package/dist/src/archival/arweave-client.js.map +1 -0
  170. package/dist/src/archival/index.d.ts +4 -1
  171. package/dist/src/archival/index.d.ts.map +1 -0
  172. package/dist/src/archival/index.js +2 -1
  173. package/dist/src/archival/index.js.map +1 -0
  174. package/dist/src/backbone/constants.d.ts +30 -0
  175. package/dist/src/backbone/constants.d.ts.map +1 -0
  176. package/dist/src/backbone/constants.js +62 -0
  177. package/dist/src/backbone/constants.js.map +1 -0
  178. package/dist/src/backbone/index.d.ts +15 -0
  179. package/dist/src/backbone/index.d.ts.map +1 -0
  180. package/dist/src/backbone/index.js +18 -0
  181. package/dist/src/backbone/index.js.map +1 -0
  182. package/dist/src/backbone/services/communication.d.ts +42 -0
  183. package/dist/src/backbone/services/communication.d.ts.map +1 -0
  184. package/dist/src/backbone/services/communication.js +107 -0
  185. package/dist/src/backbone/services/communication.js.map +1 -0
  186. package/dist/src/backbone/services/consensus.d.ts +61 -0
  187. package/dist/src/backbone/services/consensus.d.ts.map +1 -0
  188. package/dist/src/backbone/services/consensus.js +210 -0
  189. package/dist/src/backbone/services/consensus.js.map +1 -0
  190. package/dist/src/backbone/services/index.d.ts +10 -0
  191. package/dist/src/backbone/services/index.d.ts.map +1 -0
  192. package/dist/src/backbone/services/index.js +6 -0
  193. package/dist/src/backbone/services/index.js.map +1 -0
  194. package/dist/src/backbone/services/knowledge.d.ts +44 -0
  195. package/dist/src/backbone/services/knowledge.d.ts.map +1 -0
  196. package/dist/src/backbone/services/knowledge.js +99 -0
  197. package/dist/src/backbone/services/knowledge.js.map +1 -0
  198. package/dist/src/backbone/services/memory.d.ts +36 -0
  199. package/dist/src/backbone/services/memory.d.ts.map +1 -0
  200. package/dist/src/backbone/services/memory.js +94 -0
  201. package/dist/src/backbone/services/memory.js.map +1 -0
  202. package/dist/src/backbone/services/vault-health.d.ts +18 -0
  203. package/dist/src/backbone/services/vault-health.d.ts.map +1 -0
  204. package/dist/src/backbone/services/vault-health.js +74 -0
  205. package/dist/src/backbone/services/vault-health.js.map +1 -0
  206. package/dist/src/backbone/types.d.ts +211 -0
  207. package/dist/src/backbone/types.d.ts.map +1 -0
  208. package/dist/src/backbone/types.js +8 -0
  209. package/dist/src/backbone/types.js.map +1 -0
  210. package/dist/src/backbone/validators.d.ts +211 -0
  211. package/dist/src/backbone/validators.d.ts.map +1 -0
  212. package/dist/src/backbone/validators.js +122 -0
  213. package/dist/src/backbone/validators.js.map +1 -0
  214. package/dist/src/backup/backup.d.ts +107 -1
  215. package/dist/src/backup/backup.d.ts.map +1 -0
  216. package/dist/src/backup/backup.js +413 -4
  217. package/dist/src/backup/backup.js.map +1 -0
  218. package/dist/src/backup/index.d.ts +3 -1
  219. package/dist/src/backup/index.d.ts.map +1 -0
  220. package/dist/src/backup/index.js +3 -1
  221. package/dist/src/backup/index.js.map +1 -0
  222. package/dist/src/backup/merkle.d.ts +44 -0
  223. package/dist/src/backup/merkle.d.ts.map +1 -0
  224. package/dist/src/backup/merkle.js +85 -0
  225. package/dist/src/backup/merkle.js.map +1 -0
  226. package/dist/src/backup/thoughtform-bundle.d.ts +42 -0
  227. package/dist/src/backup/thoughtform-bundle.d.ts.map +1 -0
  228. package/dist/src/backup/thoughtform-bundle.js +200 -0
  229. package/dist/src/backup/thoughtform-bundle.js.map +1 -0
  230. package/dist/src/canister/actor.d.ts +310 -0
  231. package/dist/src/canister/actor.d.ts.map +1 -0
  232. package/dist/src/canister/actor.idl.d.ts +8 -0
  233. package/dist/src/canister/actor.idl.d.ts.map +1 -0
  234. package/dist/src/canister/actor.idl.js +518 -0
  235. package/dist/src/canister/actor.idl.js.map +1 -0
  236. package/dist/src/canister/actor.js +51 -0
  237. package/dist/src/canister/actor.js.map +1 -0
  238. package/dist/src/canister/encryption.d.ts +158 -0
  239. package/dist/src/canister/encryption.d.ts.map +1 -0
  240. package/dist/src/canister/encryption.js +296 -0
  241. package/dist/src/canister/encryption.js.map +1 -0
  242. package/dist/src/canister/memory-repo-actor.d.ts +162 -0
  243. package/dist/src/canister/memory-repo-actor.d.ts.map +1 -0
  244. package/dist/src/canister/memory-repo-actor.idl.d.ts +8 -0
  245. package/dist/src/canister/memory-repo-actor.idl.d.ts.map +1 -0
  246. package/dist/src/canister/memory-repo-actor.idl.js +90 -0
  247. package/dist/src/canister/memory-repo-actor.idl.js.map +1 -0
  248. package/dist/src/canister/memory-repo-actor.js +69 -0
  249. package/dist/src/canister/memory-repo-actor.js.map +1 -0
  250. package/dist/src/canister/types.d.ts +54 -0
  251. package/dist/src/canister/types.d.ts.map +1 -0
  252. package/dist/src/canister/types.js +7 -0
  253. package/dist/src/canister/types.js.map +1 -0
  254. package/dist/src/cloud-storage/cloud-sync.d.ts.map +1 -0
  255. package/dist/src/cloud-storage/cloud-sync.js +10 -5
  256. package/dist/src/cloud-storage/cloud-sync.js.map +1 -0
  257. package/dist/src/cloud-storage/index.d.ts.map +1 -0
  258. package/dist/src/cloud-storage/index.js.map +1 -0
  259. package/dist/src/cloud-storage/provider-detector.d.ts.map +1 -0
  260. package/dist/src/cloud-storage/provider-detector.js.map +1 -0
  261. package/dist/src/cloud-storage/types.d.ts +5 -0
  262. package/dist/src/cloud-storage/types.d.ts.map +1 -0
  263. package/dist/src/cloud-storage/types.js.map +1 -0
  264. package/dist/src/debugging/debug-logger.d.ts +8 -0
  265. package/dist/src/debugging/debug-logger.d.ts.map +1 -0
  266. package/dist/src/debugging/debug-logger.js +11 -0
  267. package/dist/src/debugging/debug-logger.js.map +1 -0
  268. package/dist/src/debugging/index.d.ts +1 -0
  269. package/dist/src/debugging/index.d.ts.map +1 -0
  270. package/dist/src/debugging/index.js +1 -0
  271. package/dist/src/debugging/index.js.map +1 -0
  272. package/dist/src/debugging/logs.d.ts.map +1 -0
  273. package/dist/src/debugging/logs.js.map +1 -0
  274. package/dist/src/debugging/types.d.ts.map +1 -0
  275. package/dist/src/debugging/types.js.map +1 -0
  276. package/dist/src/deployment/deployer.d.ts.map +1 -0
  277. package/dist/src/deployment/deployer.js +133 -1
  278. package/dist/src/deployment/deployer.js.map +1 -0
  279. package/dist/src/deployment/icpClient.d.ts.map +1 -0
  280. package/dist/src/deployment/icpClient.js +4 -0
  281. package/dist/src/deployment/icpClient.js.map +1 -0
  282. package/dist/src/deployment/index.d.ts.map +1 -0
  283. package/dist/src/deployment/index.js.map +1 -0
  284. package/dist/src/deployment/promotion.d.ts.map +1 -0
  285. package/dist/src/deployment/promotion.js.map +1 -0
  286. package/dist/src/deployment/types.d.ts +2 -1
  287. package/dist/src/deployment/types.d.ts.map +1 -0
  288. package/dist/src/deployment/types.js.map +1 -0
  289. package/dist/src/fault-tolerance/backup-status.d.ts +31 -0
  290. package/dist/src/fault-tolerance/backup-status.d.ts.map +1 -0
  291. package/dist/src/fault-tolerance/backup-status.js +76 -0
  292. package/dist/src/fault-tolerance/backup-status.js.map +1 -0
  293. package/dist/src/fault-tolerance/cron-check.d.ts +66 -0
  294. package/dist/src/fault-tolerance/cron-check.d.ts.map +1 -0
  295. package/dist/src/fault-tolerance/cron-check.js +177 -0
  296. package/dist/src/fault-tolerance/cron-check.js.map +1 -0
  297. package/dist/src/fault-tolerance/index.d.ts +12 -0
  298. package/dist/src/fault-tolerance/index.d.ts.map +1 -0
  299. package/dist/src/fault-tolerance/index.js +12 -0
  300. package/dist/src/fault-tolerance/index.js.map +1 -0
  301. package/dist/src/fault-tolerance/mirror-sync.d.ts +61 -0
  302. package/dist/src/fault-tolerance/mirror-sync.d.ts.map +1 -0
  303. package/dist/src/fault-tolerance/mirror-sync.js +203 -0
  304. package/dist/src/fault-tolerance/mirror-sync.js.map +1 -0
  305. package/dist/src/icp/batch.d.ts.map +1 -0
  306. package/dist/src/icp/batch.js +10 -4
  307. package/dist/src/icp/batch.js.map +1 -0
  308. package/dist/src/icp/cycles.d.ts.map +1 -0
  309. package/dist/src/icp/cycles.js.map +1 -0
  310. package/dist/src/icp/environment.d.ts.map +1 -0
  311. package/dist/src/icp/environment.js.map +1 -0
  312. package/dist/src/icp/icpcli.d.ts.map +1 -0
  313. package/dist/src/icp/icpcli.js.map +1 -0
  314. package/dist/src/icp/icwasm.d.ts.map +1 -0
  315. package/dist/src/icp/icwasm.js.map +1 -0
  316. package/dist/src/icp/identity.d.ts.map +1 -0
  317. package/dist/src/icp/identity.js.map +1 -0
  318. package/dist/src/icp/index.d.ts.map +1 -0
  319. package/dist/src/icp/index.js.map +1 -0
  320. package/dist/src/icp/optimization.d.ts.map +1 -0
  321. package/dist/src/icp/optimization.js.map +1 -0
  322. package/dist/src/icp/tokens.d.ts.map +1 -0
  323. package/dist/src/icp/tokens.js.map +1 -0
  324. package/dist/src/icp/tool-detector.d.ts.map +1 -0
  325. package/dist/src/icp/tool-detector.js +19 -5
  326. package/dist/src/icp/tool-detector.js.map +1 -0
  327. package/dist/src/icp/types.d.ts.map +1 -0
  328. package/dist/src/icp/types.js.map +1 -0
  329. package/dist/src/index.d.ts +1 -1
  330. package/dist/src/index.d.ts.map +1 -0
  331. package/dist/src/index.js +22 -1
  332. package/dist/src/index.js.map +1 -0
  333. package/dist/src/inference/bittensor-client.d.ts +54 -1
  334. package/dist/src/inference/bittensor-client.d.ts.map +1 -0
  335. package/dist/src/inference/bittensor-client.js +96 -3
  336. package/dist/src/inference/bittensor-client.js.map +1 -0
  337. package/dist/src/inference/fallback-chain.d.ts +90 -0
  338. package/dist/src/inference/fallback-chain.d.ts.map +1 -0
  339. package/dist/src/inference/fallback-chain.js +219 -0
  340. package/dist/src/inference/fallback-chain.js.map +1 -0
  341. package/dist/src/inference/index.d.ts +6 -1
  342. package/dist/src/inference/index.d.ts.map +1 -0
  343. package/dist/src/inference/index.js +6 -1
  344. package/dist/src/inference/index.js.map +1 -0
  345. package/dist/src/inference/inference-manager.d.ts.map +1 -0
  346. package/dist/src/inference/inference-manager.js.map +1 -0
  347. package/dist/src/inference/local-model-client.d.ts +46 -0
  348. package/dist/src/inference/local-model-client.d.ts.map +1 -0
  349. package/dist/src/inference/local-model-client.js +92 -0
  350. package/dist/src/inference/local-model-client.js.map +1 -0
  351. package/dist/src/inference/secure-inference.d.ts +105 -0
  352. package/dist/src/inference/secure-inference.d.ts.map +1 -0
  353. package/dist/src/inference/secure-inference.js +237 -0
  354. package/dist/src/inference/secure-inference.js.map +1 -0
  355. package/dist/src/inference/venice-client.d.ts +149 -0
  356. package/dist/src/inference/venice-client.d.ts.map +1 -0
  357. package/dist/src/inference/venice-client.js +333 -0
  358. package/dist/src/inference/venice-client.js.map +1 -0
  359. package/dist/src/metrics/index.d.ts.map +1 -0
  360. package/dist/src/metrics/index.js.map +1 -0
  361. package/dist/src/metrics/metrics.d.ts.map +1 -0
  362. package/dist/src/metrics/metrics.js.map +1 -0
  363. package/dist/src/mint/google-adk.d.ts +19 -0
  364. package/dist/src/mint/google-adk.d.ts.map +1 -0
  365. package/dist/src/mint/google-adk.js +180 -0
  366. package/dist/src/mint/google-adk.js.map +1 -0
  367. package/dist/src/monitoring/alerting.d.ts.map +1 -0
  368. package/dist/src/monitoring/alerting.js.map +1 -0
  369. package/dist/src/monitoring/health.d.ts +9 -1
  370. package/dist/src/monitoring/health.d.ts.map +1 -0
  371. package/dist/src/monitoring/health.js +63 -0
  372. package/dist/src/monitoring/health.js.map +1 -0
  373. package/dist/src/monitoring/index.d.ts +2 -2
  374. package/dist/src/monitoring/index.d.ts.map +1 -0
  375. package/dist/src/monitoring/index.js +1 -1
  376. package/dist/src/monitoring/index.js.map +1 -0
  377. package/dist/src/monitoring/info.d.ts.map +1 -0
  378. package/dist/src/monitoring/info.js.map +1 -0
  379. package/dist/src/monitoring/types.d.ts +26 -0
  380. package/dist/src/monitoring/types.d.ts.map +1 -0
  381. package/dist/src/monitoring/types.js.map +1 -0
  382. package/dist/src/network/index.d.ts.map +1 -0
  383. package/dist/src/network/index.js.map +1 -0
  384. package/dist/src/network/network-config.d.ts.map +1 -0
  385. package/dist/src/network/network-config.js.map +1 -0
  386. package/dist/src/orchestration/claude.d.ts +125 -0
  387. package/dist/src/orchestration/claude.d.ts.map +1 -0
  388. package/dist/src/orchestration/claude.js +639 -0
  389. package/dist/src/orchestration/claude.js.map +1 -0
  390. package/dist/src/orchestration/google-adk.d.ts +77 -0
  391. package/dist/src/orchestration/google-adk.d.ts.map +1 -0
  392. package/dist/src/orchestration/google-adk.js +659 -0
  393. package/dist/src/orchestration/google-adk.js.map +1 -0
  394. package/dist/src/orchestration/mcp-client.d.ts +47 -0
  395. package/dist/src/orchestration/mcp-client.d.ts.map +1 -0
  396. package/dist/src/orchestration/mcp-client.js +179 -0
  397. package/dist/src/orchestration/mcp-client.js.map +1 -0
  398. package/dist/src/orchestration/polytician-enricher.d.ts +21 -0
  399. package/dist/src/orchestration/polytician-enricher.d.ts.map +1 -0
  400. package/dist/src/orchestration/polytician-enricher.js +131 -0
  401. package/dist/src/orchestration/polytician-enricher.js.map +1 -0
  402. package/dist/src/orchestration/smallchat-bridge.d.ts +121 -0
  403. package/dist/src/orchestration/smallchat-bridge.d.ts.map +1 -0
  404. package/dist/src/orchestration/smallchat-bridge.js +331 -0
  405. package/dist/src/orchestration/smallchat-bridge.js.map +1 -0
  406. package/dist/src/orchestration/smallchat-compression.d.ts +100 -0
  407. package/dist/src/orchestration/smallchat-compression.d.ts.map +1 -0
  408. package/dist/src/orchestration/smallchat-compression.js +203 -0
  409. package/dist/src/orchestration/smallchat-compression.js.map +1 -0
  410. package/dist/src/orchestration/smallchat-policy.d.ts +158 -0
  411. package/dist/src/orchestration/smallchat-policy.d.ts.map +1 -0
  412. package/dist/src/orchestration/smallchat-policy.js +314 -0
  413. package/dist/src/orchestration/smallchat-policy.js.map +1 -0
  414. package/dist/src/orchestration/smallchat-tools.d.ts +69 -0
  415. package/dist/src/orchestration/smallchat-tools.d.ts.map +1 -0
  416. package/dist/src/orchestration/smallchat-tools.js +501 -0
  417. package/dist/src/orchestration/smallchat-tools.js.map +1 -0
  418. package/dist/src/packaging/compiler.d.ts.map +1 -0
  419. package/dist/src/packaging/compiler.js.map +1 -0
  420. package/dist/src/packaging/config-persistence.d.ts.map +1 -0
  421. package/dist/src/packaging/config-persistence.js.map +1 -0
  422. package/dist/src/packaging/config-schemas.d.ts +44 -2
  423. package/dist/src/packaging/config-schemas.d.ts.map +1 -0
  424. package/dist/src/packaging/config-schemas.js +19 -0
  425. package/dist/src/packaging/config-schemas.js.map +1 -0
  426. package/dist/src/packaging/detector.d.ts.map +1 -0
  427. package/dist/src/packaging/detector.js +15 -1
  428. package/dist/src/packaging/detector.js.map +1 -0
  429. package/dist/src/packaging/index.d.ts +11 -5
  430. package/dist/src/packaging/index.d.ts.map +1 -0
  431. package/dist/src/packaging/index.js +10 -4
  432. package/dist/src/packaging/index.js.map +1 -0
  433. package/dist/src/packaging/packager.d.ts.map +1 -0
  434. package/dist/src/packaging/packager.js.map +1 -0
  435. package/dist/src/packaging/parsers/clawdbot.d.ts +1 -1
  436. package/dist/src/packaging/parsers/clawdbot.d.ts.map +1 -0
  437. package/dist/src/packaging/parsers/clawdbot.js +26 -28
  438. package/dist/src/packaging/parsers/clawdbot.js.map +1 -0
  439. package/dist/src/packaging/parsers/cline.d.ts.map +1 -0
  440. package/dist/src/packaging/parsers/cline.js.map +1 -0
  441. package/dist/src/packaging/parsers/generic.d.ts +1 -1
  442. package/dist/src/packaging/parsers/generic.d.ts.map +1 -0
  443. package/dist/src/packaging/parsers/generic.js +13 -20
  444. package/dist/src/packaging/parsers/generic.js.map +1 -0
  445. package/dist/src/packaging/parsers/goose.d.ts.map +1 -0
  446. package/dist/src/packaging/parsers/goose.js.map +1 -0
  447. package/dist/src/packaging/parsers/index.d.ts +2 -0
  448. package/dist/src/packaging/parsers/index.d.ts.map +1 -0
  449. package/dist/src/packaging/parsers/index.js +2 -0
  450. package/dist/src/packaging/parsers/index.js.map +1 -0
  451. package/dist/src/packaging/parsers/nemoclaw.d.ts +4 -0
  452. package/dist/src/packaging/parsers/nemoclaw.d.ts.map +1 -0
  453. package/dist/src/packaging/parsers/nemoclaw.js +145 -0
  454. package/dist/src/packaging/parsers/nemoclaw.js.map +1 -0
  455. package/dist/src/packaging/parsers/polytician.d.ts +4 -0
  456. package/dist/src/packaging/parsers/polytician.d.ts.map +1 -0
  457. package/dist/src/packaging/parsers/polytician.js +121 -0
  458. package/dist/src/packaging/parsers/polytician.js.map +1 -0
  459. package/dist/src/packaging/serializer.d.ts +7 -1
  460. package/dist/src/packaging/serializer.d.ts.map +1 -0
  461. package/dist/src/packaging/serializer.js +14 -3
  462. package/dist/src/packaging/serializer.js.map +1 -0
  463. package/dist/src/packaging/serializers/index.d.ts +3 -0
  464. package/dist/src/packaging/serializers/index.d.ts.map +1 -0
  465. package/dist/src/packaging/serializers/index.js +2 -0
  466. package/dist/src/packaging/serializers/index.js.map +1 -0
  467. package/dist/src/packaging/serializers/thoughtform.d.ts +89 -0
  468. package/dist/src/packaging/serializers/thoughtform.d.ts.map +1 -0
  469. package/dist/src/packaging/serializers/thoughtform.js +84 -0
  470. package/dist/src/packaging/serializers/thoughtform.js.map +1 -0
  471. package/dist/src/packaging/state-format.d.ts +332 -0
  472. package/dist/src/packaging/state-format.d.ts.map +1 -0
  473. package/dist/src/packaging/state-format.js +602 -0
  474. package/dist/src/packaging/state-format.js.map +1 -0
  475. package/dist/src/packaging/types.d.ts +2 -2
  476. package/dist/src/packaging/types.d.ts.map +1 -0
  477. package/dist/src/packaging/types.js.map +1 -0
  478. package/dist/src/packaging/wasm-compiler.d.ts +160 -0
  479. package/dist/src/packaging/wasm-compiler.d.ts.map +1 -0
  480. package/dist/src/packaging/wasm-compiler.js +662 -0
  481. package/dist/src/packaging/wasm-compiler.js.map +1 -0
  482. package/dist/src/packaging/wasmedge-compiler.d.ts.map +1 -0
  483. package/dist/src/packaging/wasmedge-compiler.js +6 -4
  484. package/dist/src/packaging/wasmedge-compiler.js.map +1 -0
  485. package/dist/src/pilot/air-gap.d.ts +51 -0
  486. package/dist/src/pilot/air-gap.d.ts.map +1 -0
  487. package/dist/src/pilot/air-gap.js +118 -0
  488. package/dist/src/pilot/air-gap.js.map +1 -0
  489. package/dist/src/pilot/index.d.ts +14 -0
  490. package/dist/src/pilot/index.d.ts.map +1 -0
  491. package/dist/src/pilot/index.js +16 -0
  492. package/dist/src/pilot/index.js.map +1 -0
  493. package/dist/src/pilot/private-replica.d.ts +67 -0
  494. package/dist/src/pilot/private-replica.d.ts.map +1 -0
  495. package/dist/src/pilot/private-replica.js +429 -0
  496. package/dist/src/pilot/private-replica.js.map +1 -0
  497. package/dist/src/pilot/proxy-config.d.ts +36 -0
  498. package/dist/src/pilot/proxy-config.d.ts.map +1 -0
  499. package/dist/src/pilot/proxy-config.js +96 -0
  500. package/dist/src/pilot/proxy-config.js.map +1 -0
  501. package/dist/src/pilot/types.d.ts +181 -0
  502. package/dist/src/pilot/types.d.ts.map +1 -0
  503. package/dist/src/pilot/types.js +7 -0
  504. package/dist/src/pilot/types.js.map +1 -0
  505. package/dist/src/security/icp-audit.d.ts +63 -0
  506. package/dist/src/security/icp-audit.d.ts.map +1 -0
  507. package/dist/src/security/icp-audit.js +234 -0
  508. package/dist/src/security/icp-audit.js.map +1 -0
  509. package/dist/src/security/index.d.ts +7 -1
  510. package/dist/src/security/index.d.ts.map +1 -0
  511. package/dist/src/security/index.js +12 -2
  512. package/dist/src/security/index.js.map +1 -0
  513. package/dist/src/security/mfa-approval.d.ts +219 -0
  514. package/dist/src/security/mfa-approval.d.ts.map +1 -0
  515. package/dist/src/security/mfa-approval.js +668 -0
  516. package/dist/src/security/mfa-approval.js.map +1 -0
  517. package/dist/src/security/multisig.d.ts.map +1 -0
  518. package/dist/src/security/multisig.js.map +1 -0
  519. package/dist/src/security/totp.d.ts +67 -0
  520. package/dist/src/security/totp.d.ts.map +1 -0
  521. package/dist/src/security/totp.js +148 -0
  522. package/dist/src/security/totp.js.map +1 -0
  523. package/dist/src/security/types.d.ts +7 -2
  524. package/dist/src/security/types.d.ts.map +1 -0
  525. package/dist/src/security/types.js +14 -14
  526. package/dist/src/security/types.js.map +1 -0
  527. package/dist/src/security/vetkeys.d.ts +43 -0
  528. package/dist/src/security/vetkeys.d.ts.map +1 -0
  529. package/dist/src/security/vetkeys.js +144 -15
  530. package/dist/src/security/vetkeys.js.map +1 -0
  531. package/dist/src/security/webauthn.d.ts +127 -0
  532. package/dist/src/security/webauthn.d.ts.map +1 -0
  533. package/dist/src/security/webauthn.js +246 -0
  534. package/dist/src/security/webauthn.js.map +1 -0
  535. package/dist/src/testing/index.d.ts.map +1 -0
  536. package/dist/src/testing/index.js.map +1 -0
  537. package/dist/src/testing/local-runner.d.ts.map +1 -0
  538. package/dist/src/testing/local-runner.js.map +1 -0
  539. package/dist/src/testing/types.d.ts.map +1 -0
  540. package/dist/src/testing/types.js.map +1 -0
  541. package/dist/src/trading/api-key-manager.d.ts +96 -0
  542. package/dist/src/trading/api-key-manager.d.ts.map +1 -0
  543. package/dist/src/trading/api-key-manager.js +201 -0
  544. package/dist/src/trading/api-key-manager.js.map +1 -0
  545. package/dist/src/trading/consensus.d.ts +171 -0
  546. package/dist/src/trading/consensus.d.ts.map +1 -0
  547. package/dist/src/trading/consensus.js +291 -0
  548. package/dist/src/trading/consensus.js.map +1 -0
  549. package/dist/src/trading/index.d.ts +19 -0
  550. package/dist/src/trading/index.d.ts.map +1 -0
  551. package/dist/src/trading/index.js +15 -0
  552. package/dist/src/trading/index.js.map +1 -0
  553. package/dist/src/trading/ip-whitelist.d.ts +70 -0
  554. package/dist/src/trading/ip-whitelist.d.ts.map +1 -0
  555. package/dist/src/trading/ip-whitelist.js +239 -0
  556. package/dist/src/trading/ip-whitelist.js.map +1 -0
  557. package/dist/src/trading/skill-sandbox.d.ts +88 -0
  558. package/dist/src/trading/skill-sandbox.d.ts.map +1 -0
  559. package/dist/src/trading/skill-sandbox.js +175 -0
  560. package/dist/src/trading/skill-sandbox.js.map +1 -0
  561. package/dist/src/utils/path-validation.d.ts +34 -0
  562. package/dist/src/utils/path-validation.d.ts.map +1 -0
  563. package/dist/src/utils/path-validation.js +88 -0
  564. package/dist/src/utils/path-validation.js.map +1 -0
  565. package/dist/src/vault/bitwarden.d.ts +51 -0
  566. package/dist/src/vault/bitwarden.d.ts.map +1 -0
  567. package/dist/src/vault/bitwarden.js +172 -0
  568. package/dist/src/vault/bitwarden.js.map +1 -0
  569. package/dist/src/vault/client.d.ts +44 -0
  570. package/dist/src/vault/client.d.ts.map +1 -0
  571. package/dist/src/vault/client.js +523 -0
  572. package/dist/src/vault/client.js.map +1 -0
  573. package/dist/src/vault/config.d.ts +68 -0
  574. package/dist/src/vault/config.d.ts.map +1 -0
  575. package/dist/src/vault/config.js +265 -0
  576. package/dist/src/vault/config.js.map +1 -0
  577. package/dist/src/vault/encrypted-memory-store.d.ts +80 -0
  578. package/dist/src/vault/encrypted-memory-store.d.ts.map +1 -0
  579. package/dist/src/vault/encrypted-memory-store.js +175 -0
  580. package/dist/src/vault/encrypted-memory-store.js.map +1 -0
  581. package/dist/src/vault/hashicorp-provider.d.ts +22 -0
  582. package/dist/src/vault/hashicorp-provider.d.ts.map +1 -0
  583. package/dist/src/vault/hashicorp-provider.js +63 -0
  584. package/dist/src/vault/hashicorp-provider.js.map +1 -0
  585. package/dist/src/vault/index.d.ts +40 -0
  586. package/dist/src/vault/index.d.ts.map +1 -0
  587. package/dist/src/vault/index.js +38 -0
  588. package/dist/src/vault/index.js.map +1 -0
  589. package/dist/src/vault/memory-provider.d.ts +26 -0
  590. package/dist/src/vault/memory-provider.d.ts.map +1 -0
  591. package/dist/src/vault/memory-provider.js +42 -0
  592. package/dist/src/vault/memory-provider.js.map +1 -0
  593. package/dist/src/vault/provider.d.ts +68 -0
  594. package/dist/src/vault/provider.d.ts.map +1 -0
  595. package/dist/src/vault/provider.js +50 -0
  596. package/dist/src/vault/provider.js.map +1 -0
  597. package/dist/src/vault/safehouse-types.d.ts +204 -0
  598. package/dist/src/vault/safehouse-types.d.ts.map +1 -0
  599. package/dist/src/vault/safehouse-types.js +9 -0
  600. package/dist/src/vault/safehouse-types.js.map +1 -0
  601. package/dist/src/vault/secret-audit.d.ts +91 -0
  602. package/dist/src/vault/secret-audit.d.ts.map +1 -0
  603. package/dist/src/vault/secret-audit.js +224 -0
  604. package/dist/src/vault/secret-audit.js.map +1 -0
  605. package/dist/src/vault/secret-injector.d.ts +62 -0
  606. package/dist/src/vault/secret-injector.d.ts.map +1 -0
  607. package/dist/src/vault/secret-injector.js +237 -0
  608. package/dist/src/vault/secret-injector.js.map +1 -0
  609. package/dist/src/vault/secret-leak-detector.d.ts +94 -0
  610. package/dist/src/vault/secret-leak-detector.d.ts.map +1 -0
  611. package/dist/src/vault/secret-leak-detector.js +218 -0
  612. package/dist/src/vault/secret-leak-detector.js.map +1 -0
  613. package/dist/src/vault/secret-management-layer.d.ts +139 -0
  614. package/dist/src/vault/secret-management-layer.d.ts.map +1 -0
  615. package/dist/src/vault/secret-management-layer.js +366 -0
  616. package/dist/src/vault/secret-management-layer.js.map +1 -0
  617. package/dist/src/vault/secret-rotation.d.ts +54 -0
  618. package/dist/src/vault/secret-rotation.d.ts.map +1 -0
  619. package/dist/src/vault/secret-rotation.js +156 -0
  620. package/dist/src/vault/secret-rotation.js.map +1 -0
  621. package/dist/src/vault/secret-sandbox.d.ts +94 -0
  622. package/dist/src/vault/secret-sandbox.d.ts.map +1 -0
  623. package/dist/src/vault/secret-sandbox.js +232 -0
  624. package/dist/src/vault/secret-sandbox.js.map +1 -0
  625. package/dist/src/vault/types.d.ts +148 -0
  626. package/dist/src/vault/types.d.ts.map +1 -0
  627. package/dist/src/vault/types.js +7 -0
  628. package/dist/src/vault/types.js.map +1 -0
  629. package/dist/src/wallet/cbor-serializer.d.ts.map +1 -0
  630. package/dist/src/wallet/cbor-serializer.js +7 -2
  631. package/dist/src/wallet/cbor-serializer.js.map +1 -0
  632. package/dist/src/wallet/chain-dispatcher.d.ts +1 -1
  633. package/dist/src/wallet/chain-dispatcher.d.ts.map +1 -0
  634. package/dist/src/wallet/chain-dispatcher.js +8 -19
  635. package/dist/src/wallet/chain-dispatcher.js.map +1 -0
  636. package/dist/src/wallet/cross-chain-aggregator.d.ts.map +1 -0
  637. package/dist/src/wallet/cross-chain-aggregator.js.map +1 -0
  638. package/dist/src/wallet/hsm/index.d.ts +39 -0
  639. package/dist/src/wallet/hsm/index.d.ts.map +1 -0
  640. package/dist/src/wallet/hsm/index.js +60 -0
  641. package/dist/src/wallet/hsm/index.js.map +1 -0
  642. package/dist/src/wallet/hsm/ledger-provider.d.ts +75 -0
  643. package/dist/src/wallet/hsm/ledger-provider.d.ts.map +1 -0
  644. package/dist/src/wallet/hsm/ledger-provider.js +272 -0
  645. package/dist/src/wallet/hsm/ledger-provider.js.map +1 -0
  646. package/dist/src/wallet/hsm/sgx-provider.d.ts +83 -0
  647. package/dist/src/wallet/hsm/sgx-provider.d.ts.map +1 -0
  648. package/dist/src/wallet/hsm/sgx-provider.js +281 -0
  649. package/dist/src/wallet/hsm/sgx-provider.js.map +1 -0
  650. package/dist/src/wallet/hsm/types.d.ts +134 -0
  651. package/dist/src/wallet/hsm/types.d.ts.map +1 -0
  652. package/dist/src/wallet/hsm/types.js +46 -0
  653. package/dist/src/wallet/hsm/types.js.map +1 -0
  654. package/dist/src/wallet/index.d.ts +8 -2
  655. package/dist/src/wallet/index.d.ts.map +1 -0
  656. package/dist/src/wallet/index.js +9 -2
  657. package/dist/src/wallet/index.js.map +1 -0
  658. package/dist/src/wallet/key-derivation.d.ts +29 -1
  659. package/dist/src/wallet/key-derivation.d.ts.map +1 -0
  660. package/dist/src/wallet/key-derivation.js +106 -23
  661. package/dist/src/wallet/key-derivation.js.map +1 -0
  662. package/dist/src/wallet/providers/arweave-provider.d.ts +34 -0
  663. package/dist/src/wallet/providers/arweave-provider.d.ts.map +1 -0
  664. package/dist/src/wallet/providers/arweave-provider.js +126 -0
  665. package/dist/src/wallet/providers/arweave-provider.js.map +1 -0
  666. package/dist/src/wallet/providers/base-provider.d.ts.map +1 -0
  667. package/dist/src/wallet/providers/base-provider.js.map +1 -0
  668. package/dist/src/wallet/providers/cketh-provider.d.ts.map +1 -0
  669. package/dist/src/wallet/providers/cketh-provider.js.map +1 -0
  670. package/dist/src/wallet/providers/icp-provider.d.ts +34 -0
  671. package/dist/src/wallet/providers/icp-provider.d.ts.map +1 -0
  672. package/dist/src/wallet/providers/icp-provider.js +114 -0
  673. package/dist/src/wallet/providers/icp-provider.js.map +1 -0
  674. package/dist/src/wallet/providers/polkadot-provider.d.ts.map +1 -0
  675. package/dist/src/wallet/providers/polkadot-provider.js +5 -6
  676. package/dist/src/wallet/providers/polkadot-provider.js.map +1 -0
  677. package/dist/src/wallet/providers/provider-factory.d.ts +23 -0
  678. package/dist/src/wallet/providers/provider-factory.d.ts.map +1 -0
  679. package/dist/src/wallet/providers/provider-factory.js +74 -0
  680. package/dist/src/wallet/providers/provider-factory.js.map +1 -0
  681. package/dist/src/wallet/providers/solana-provider.d.ts.map +1 -0
  682. package/dist/src/wallet/providers/solana-provider.js +6 -7
  683. package/dist/src/wallet/providers/solana-provider.js.map +1 -0
  684. package/dist/src/wallet/secure-wallet.d.ts +132 -0
  685. package/dist/src/wallet/secure-wallet.d.ts.map +1 -0
  686. package/dist/src/wallet/secure-wallet.js +298 -0
  687. package/dist/src/wallet/secure-wallet.js.map +1 -0
  688. package/dist/src/wallet/transaction-queue.d.ts.map +1 -0
  689. package/dist/src/wallet/transaction-queue.js.map +1 -0
  690. package/dist/src/wallet/types.d.ts +57 -2
  691. package/dist/src/wallet/types.d.ts.map +1 -0
  692. package/dist/src/wallet/types.js.map +1 -0
  693. package/dist/src/wallet/vetkeys-adapter.d.ts.map +1 -0
  694. package/dist/src/wallet/vetkeys-adapter.js +16 -25
  695. package/dist/src/wallet/vetkeys-adapter.js.map +1 -0
  696. package/dist/src/wallet/wallet-crypto.d.ts +101 -0
  697. package/dist/src/wallet/wallet-crypto.d.ts.map +1 -0
  698. package/dist/src/wallet/wallet-crypto.js +185 -0
  699. package/dist/src/wallet/wallet-crypto.js.map +1 -0
  700. package/dist/src/wallet/wallet-manager.d.ts +24 -4
  701. package/dist/src/wallet/wallet-manager.d.ts.map +1 -0
  702. package/dist/src/wallet/wallet-manager.js +70 -3
  703. package/dist/src/wallet/wallet-manager.js.map +1 -0
  704. package/dist/src/wallet/wallet-storage.d.ts +15 -7
  705. package/dist/src/wallet/wallet-storage.d.ts.map +1 -0
  706. package/dist/src/wallet/wallet-storage.js +34 -18
  707. package/dist/src/wallet/wallet-storage.js.map +1 -0
  708. package/dist/src/wiki/index.d.ts +30 -0
  709. package/dist/src/wiki/index.d.ts.map +1 -0
  710. package/dist/src/wiki/index.js +30 -0
  711. package/dist/src/wiki/index.js.map +1 -0
  712. package/dist/src/wiki/ingest.d.ts +51 -0
  713. package/dist/src/wiki/ingest.d.ts.map +1 -0
  714. package/dist/src/wiki/ingest.js +197 -0
  715. package/dist/src/wiki/ingest.js.map +1 -0
  716. package/dist/src/wiki/lint.d.ts +43 -0
  717. package/dist/src/wiki/lint.d.ts.map +1 -0
  718. package/dist/src/wiki/lint.js +187 -0
  719. package/dist/src/wiki/lint.js.map +1 -0
  720. package/dist/src/wiki/mcp-tools.d.ts +35 -0
  721. package/dist/src/wiki/mcp-tools.d.ts.map +1 -0
  722. package/dist/src/wiki/mcp-tools.js +353 -0
  723. package/dist/src/wiki/mcp-tools.js.map +1 -0
  724. package/dist/src/wiki/query.d.ts +38 -0
  725. package/dist/src/wiki/query.d.ts.map +1 -0
  726. package/dist/src/wiki/query.js +117 -0
  727. package/dist/src/wiki/query.js.map +1 -0
  728. package/dist/src/wiki/wiki-store.d.ts +53 -0
  729. package/dist/src/wiki/wiki-store.d.ts.map +1 -0
  730. package/dist/src/wiki/wiki-store.js +132 -0
  731. package/dist/src/wiki/wiki-store.js.map +1 -0
  732. package/package.json +35 -11
  733. package/.claude/settings.local.json +0 -9
  734. package/.dfx/local/network-id +0 -4
  735. package/.next/trace +0 -2
  736. package/.vercel/README.txt +0 -11
  737. package/.vercel/project.json +0 -1
  738. package/AGENTS.md +0 -43
  739. package/PLAN_VAULT_INTEGRATION.md +0 -318
  740. package/dist/vitest.config.d.ts +0 -3
  741. package/dist/vitest.config.js +0 -14
  742. package/fixup_1_0_OSS_release.md +0 -136
  743. package/fixup_REALEASE_PRD.md +0 -136
  744. package/macos-wallet-app/AgentVaultWallet/App/AgentVaultWalletApp.swift +0 -54
  745. package/macos-wallet-app/AgentVaultWallet/Models/AppState.swift +0 -102
  746. package/macos-wallet-app/AgentVaultWallet/Models/Chain.swift +0 -121
  747. package/macos-wallet-app/AgentVaultWallet/Models/Wallet.swift +0 -98
  748. package/macos-wallet-app/AgentVaultWallet/Resources/AgentVaultWallet.entitlements +0 -27
  749. package/macos-wallet-app/AgentVaultWallet/Resources/Info.plist +0 -69
  750. package/macos-wallet-app/AgentVaultWallet/Services/BackupService.swift +0 -270
  751. package/macos-wallet-app/AgentVaultWallet/Services/CLIBridge.swift +0 -367
  752. package/macos-wallet-app/AgentVaultWallet/Services/CryptoService.swift +0 -157
  753. package/macos-wallet-app/AgentVaultWallet/Services/FileService.swift +0 -120
  754. package/macos-wallet-app/AgentVaultWallet/Services/KeychainService.swift +0 -219
  755. package/macos-wallet-app/AgentVaultWallet/Utilities/Constants.swift +0 -44
  756. package/macos-wallet-app/AgentVaultWallet/Utilities/Extensions.swift +0 -115
  757. package/macos-wallet-app/AgentVaultWallet/ViewModels/BackupViewModel.swift +0 -237
  758. package/macos-wallet-app/AgentVaultWallet/ViewModels/CreateWalletViewModel.swift +0 -137
  759. package/macos-wallet-app/AgentVaultWallet/ViewModels/ImportWalletViewModel.swift +0 -179
  760. package/macos-wallet-app/AgentVaultWallet/ViewModels/WalletStore.swift +0 -286
  761. package/macos-wallet-app/AgentVaultWallet/Views/Backup/BackupView.swift +0 -235
  762. package/macos-wallet-app/AgentVaultWallet/Views/Backup/RestoreView.swift +0 -316
  763. package/macos-wallet-app/AgentVaultWallet/Views/Create/CreateWalletFlow.swift +0 -438
  764. package/macos-wallet-app/AgentVaultWallet/Views/Import/ImportWalletFlow.swift +0 -399
  765. package/macos-wallet-app/AgentVaultWallet/Views/MainView.swift +0 -134
  766. package/macos-wallet-app/AgentVaultWallet/Views/Settings/SettingsView.swift +0 -276
  767. package/macos-wallet-app/AgentVaultWallet/Views/Sidebar/SidebarView.swift +0 -133
  768. package/macos-wallet-app/AgentVaultWallet/Views/Wallet/DashboardView.swift +0 -233
  769. package/macos-wallet-app/AgentVaultWallet/Views/Wallet/WalletDetailView.swift +0 -281
  770. package/macos-wallet-app/AgentVaultWallet/Views/Wallet/WalletListView.swift +0 -280
  771. package/macos-wallet-app/AgentVaultWallet/Views/Welcome/WelcomeView.swift +0 -176
  772. package/macos-wallet-app/Makefile +0 -47
  773. package/macos-wallet-app/project.yml +0 -40
  774. package/macos-wallet-app/setup.sh +0 -73
  775. package/pnpm-workspace.yaml +0 -5
  776. package/vercel.json +0 -8
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Multi-Agent Trade Consensus
3
+ *
4
+ * Implements a 2-of-2 vote gate that must pass before any trade is executed.
5
+ * Protects against:
6
+ * - Laggy ICP agent double-execution (each proposal carries a monotonic nonce)
7
+ * - Solo-agent trading (both agents must sign within the 30-second window)
8
+ * - Replay attacks (nonce is unique per proposal; votes bind nonce + agentId)
9
+ *
10
+ * Flow:
11
+ * 1. Any agent calls proposeConsensus(signal) → returns sessionId + nonce
12
+ * 2. Both agents call castVote(sessionId, agentId, signature, approve=true)
13
+ * Signature covers: sha256(sessionId + ":" + nonce + ":" + agentId + ":approve")
14
+ * 3. TradeConsensusManager.watchSession() resolves APPROVED once both votes arrive
15
+ * or CANCELLED if the 30-second window expires with < 2 approvals.
16
+ * 4. Callers MUST await the result and abort if status !== 'approved'.
17
+ */
18
+ /** Hard deadline: both agents must vote within this window or the trade cancels. */
19
+ export declare const CONSENSUS_TIMEOUT_MS = 30000;
20
+ /** Required number of approving votes before a trade may fire. */
21
+ export declare const REQUIRED_VOTES = 2;
22
+ /** Chain where an agent lives. */
23
+ export type AgentChain = 'icp' | 'solana';
24
+ /** The direction of a trade. */
25
+ export type TradeDirection = 'buy' | 'sell';
26
+ /** A trade intent submitted by a strategy or signal generator. */
27
+ export interface TradeSignal {
28
+ /** Asset pair, e.g. "SOL/USDC" */
29
+ pair: string;
30
+ direction: TradeDirection;
31
+ /** Quantity expressed as a string to avoid float precision loss */
32
+ quantity: string;
33
+ /** Maximum acceptable price (limit) or undefined for market orders */
34
+ limitPrice?: string;
35
+ /** Originating chain */
36
+ chain: AgentChain;
37
+ /** ISO-8601 timestamp */
38
+ requestedAt: string;
39
+ }
40
+ /** An agent's vote on a consensus proposal. */
41
+ export interface ConsensusVote {
42
+ agentId: string;
43
+ chain: AgentChain;
44
+ /** HMAC-SHA256 over the canonical vote payload (see signVote / verifyVote) */
45
+ signature: string;
46
+ /** Echo of the session nonce — must match the proposal to be accepted */
47
+ nonce: string;
48
+ /** true = approve, false = veto */
49
+ approve: boolean;
50
+ /** ISO-8601 */
51
+ votedAt: string;
52
+ }
53
+ /** Lifecycle states of a consensus session. */
54
+ export type ConsensusStatus = 'pending' | 'approved' | 'cancelled' | 'expired';
55
+ /** A single round of consensus for one trade signal. */
56
+ export interface ConsensusSession {
57
+ sessionId: string;
58
+ /** One-time random value — included in every vote signature to prevent replay */
59
+ nonce: string;
60
+ signal: TradeSignal;
61
+ status: ConsensusStatus;
62
+ votes: ConsensusVote[];
63
+ createdAt: string;
64
+ /** Set when status moves to approved/cancelled */
65
+ resolvedAt?: string;
66
+ /** Human-readable reason for cancellation */
67
+ cancelReason?: string;
68
+ }
69
+ /**
70
+ * Sign a vote using HMAC-SHA256.
71
+ *
72
+ * @param agentSecret - 32-byte (or longer) secret key unique to this agent.
73
+ * On ICP this can be derived from a VetKey.
74
+ * On Solana this can be derived from the wallet keypair.
75
+ */
76
+ export declare function signVote(sessionId: string, nonce: string, agentId: string, approve: boolean, agentSecret: Buffer): string;
77
+ /**
78
+ * Verify a vote signature using timing-safe comparison.
79
+ *
80
+ * @returns true if the signature is valid.
81
+ */
82
+ export declare function verifyVote(vote: ConsensusVote, sessionId: string, agentSecret: Buffer): boolean;
83
+ export interface ConsensusManagerOptions {
84
+ /**
85
+ * Shared secrets for each agent, keyed by agentId.
86
+ *
87
+ * In production these are fetched from VetKeys or the wallet HSM.
88
+ * They must NEVER be logged or stored in plaintext.
89
+ */
90
+ agentSecrets: Map<string, Buffer>;
91
+ /** Override the default 30-second timeout (useful in tests). */
92
+ timeoutMs?: number;
93
+ /** Optional hook called whenever a session changes state. */
94
+ onSessionUpdate?: (session: ConsensusSession) => void;
95
+ }
96
+ /**
97
+ * Manages the full lifecycle of multi-agent trade consensus sessions.
98
+ *
99
+ * Thread-safety note: JS is single-threaded, so Map operations are safe.
100
+ * However, the 30-second timer fires asynchronously — always check session
101
+ * status before acting on a resolved promise.
102
+ */
103
+ export declare class TradeConsensusManager {
104
+ private readonly sessions;
105
+ private readonly timers;
106
+ private readonly opts;
107
+ constructor(options: ConsensusManagerOptions);
108
+ /**
109
+ * Open a new consensus session for a trade signal.
110
+ *
111
+ * @returns The session (status = 'pending'). Callers should then
112
+ * distribute the sessionId + nonce to both agents so they can vote.
113
+ */
114
+ proposeConsensus(signal: TradeSignal): ConsensusSession;
115
+ /**
116
+ * Cast an agent's vote on a pending session.
117
+ *
118
+ * Accepts only if:
119
+ * 1. The session exists and is still 'pending'.
120
+ * 2. The nonce in the vote matches the session nonce (anti-replay).
121
+ * 3. The agent secret is registered in the manager.
122
+ * 4. The HMAC-SHA256 signature over the canonical payload verifies.
123
+ * 5. The agentId has not already voted in this session (no double-vote).
124
+ *
125
+ * @returns The updated session snapshot.
126
+ * @throws If the session is not found, already resolved, or the vote is invalid.
127
+ */
128
+ castVote(sessionId: string, vote: ConsensusVote): ConsensusSession;
129
+ /** Return a snapshot of a session, or undefined if not found. */
130
+ getSession(sessionId: string): ConsensusSession | undefined;
131
+ /** Return all sessions that match a given status. */
132
+ listSessions(status?: ConsensusStatus): ConsensusSession[];
133
+ /**
134
+ * Await the final outcome of a consensus session.
135
+ *
136
+ * Resolves once the session reaches 'approved' or 'cancelled'.
137
+ * The returned status is authoritative — callers must check it before executing
138
+ * any trade.
139
+ *
140
+ * @example
141
+ * ```ts
142
+ * const { status } = await manager.watchSession(sessionId);
143
+ * if (status !== 'approved') return; // abort — no solo trades
144
+ * await executeTrade(signal);
145
+ * ```
146
+ */
147
+ watchSession(sessionId: string): Promise<ConsensusSession>;
148
+ /**
149
+ * Remove a session from memory after it has been acted upon.
150
+ * Call this once the trade outcome (executed or cancelled) has been recorded.
151
+ */
152
+ pruneSession(sessionId: string): void;
153
+ /** Cancel all pending sessions and clear all timers (e.g. on shutdown). */
154
+ shutdown(): void;
155
+ private _resolve;
156
+ private _expire;
157
+ }
158
+ /**
159
+ * Build a ConsensusVote ready to submit.
160
+ *
161
+ * Agents call this locally before sending the vote to the consensus manager.
162
+ *
163
+ * @param sessionId - Returned by proposeConsensus()
164
+ * @param nonce - Returned by proposeConsensus()
165
+ * @param agentId - Unique identifier for this agent (e.g. "icp-agent-1")
166
+ * @param chain - The chain this agent runs on
167
+ * @param approve - true to approve, false to veto
168
+ * @param agentSecret - The agent's signing secret
169
+ */
170
+ export declare function buildVote(sessionId: string, nonce: string, agentId: string, chain: AgentChain, approve: boolean, agentSecret: Buffer): ConsensusVote;
171
+ //# sourceMappingURL=consensus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consensus.d.ts","sourceRoot":"","sources":["../../../src/trading/consensus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,291 @@
1
+ /**
2
+ * Multi-Agent Trade Consensus
3
+ *
4
+ * Implements a 2-of-2 vote gate that must pass before any trade is executed.
5
+ * Protects against:
6
+ * - Laggy ICP agent double-execution (each proposal carries a monotonic nonce)
7
+ * - Solo-agent trading (both agents must sign within the 30-second window)
8
+ * - Replay attacks (nonce is unique per proposal; votes bind nonce + agentId)
9
+ *
10
+ * Flow:
11
+ * 1. Any agent calls proposeConsensus(signal) → returns sessionId + nonce
12
+ * 2. Both agents call castVote(sessionId, agentId, signature, approve=true)
13
+ * Signature covers: sha256(sessionId + ":" + nonce + ":" + agentId + ":approve")
14
+ * 3. TradeConsensusManager.watchSession() resolves APPROVED once both votes arrive
15
+ * or CANCELLED if the 30-second window expires with < 2 approvals.
16
+ * 4. Callers MUST await the result and abort if status !== 'approved'.
17
+ */
18
+ import crypto from 'node:crypto';
19
+ // ── Constants ────────────────────────────────────────────────────────────────
20
+ /** Hard deadline: both agents must vote within this window or the trade cancels. */
21
+ export const CONSENSUS_TIMEOUT_MS = 30_000;
22
+ /** Required number of approving votes before a trade may fire. */
23
+ export const REQUIRED_VOTES = 2;
24
+ // ── Signature Helpers ────────────────────────────────────────────────────────
25
+ /**
26
+ * Canonical vote payload string.
27
+ *
28
+ * Both agents must agree on this format — any deviation makes the signature invalid.
29
+ */
30
+ function votePayload(sessionId, nonce, agentId, approve) {
31
+ const decision = approve ? 'approve' : 'veto';
32
+ return `${sessionId}:${nonce}:${agentId}:${decision}`;
33
+ }
34
+ /**
35
+ * Sign a vote using HMAC-SHA256.
36
+ *
37
+ * @param agentSecret - 32-byte (or longer) secret key unique to this agent.
38
+ * On ICP this can be derived from a VetKey.
39
+ * On Solana this can be derived from the wallet keypair.
40
+ */
41
+ export function signVote(sessionId, nonce, agentId, approve, agentSecret) {
42
+ const payload = votePayload(sessionId, nonce, agentId, approve);
43
+ return crypto
44
+ .createHmac('sha256', agentSecret)
45
+ .update(payload)
46
+ .digest('hex');
47
+ }
48
+ /**
49
+ * Verify a vote signature using timing-safe comparison.
50
+ *
51
+ * @returns true if the signature is valid.
52
+ */
53
+ export function verifyVote(vote, sessionId, agentSecret) {
54
+ const expected = signVote(sessionId, vote.nonce, vote.agentId, vote.approve, agentSecret);
55
+ const expectedBuf = Buffer.from(expected, 'hex');
56
+ const actualBuf = Buffer.from(vote.signature, 'hex');
57
+ // Buffers must be same length for timingSafeEqual; reject mismatched lengths.
58
+ if (expectedBuf.length !== actualBuf.length)
59
+ return false;
60
+ return crypto.timingSafeEqual(expectedBuf, actualBuf);
61
+ }
62
+ /**
63
+ * Manages the full lifecycle of multi-agent trade consensus sessions.
64
+ *
65
+ * Thread-safety note: JS is single-threaded, so Map operations are safe.
66
+ * However, the 30-second timer fires asynchronously — always check session
67
+ * status before acting on a resolved promise.
68
+ */
69
+ export class TradeConsensusManager {
70
+ sessions = new Map();
71
+ timers = new Map();
72
+ opts;
73
+ constructor(options) {
74
+ this.opts = {
75
+ agentSecrets: options.agentSecrets,
76
+ timeoutMs: options.timeoutMs ?? CONSENSUS_TIMEOUT_MS,
77
+ onSessionUpdate: options.onSessionUpdate ?? (() => { }),
78
+ };
79
+ }
80
+ // ── Propose ───────────────────────────────────────────────────────────────
81
+ /**
82
+ * Open a new consensus session for a trade signal.
83
+ *
84
+ * @returns The session (status = 'pending'). Callers should then
85
+ * distribute the sessionId + nonce to both agents so they can vote.
86
+ */
87
+ proposeConsensus(signal) {
88
+ const sessionId = `cs_${Date.now()}_${crypto.randomBytes(6).toString('hex')}`;
89
+ const nonce = crypto.randomBytes(16).toString('hex');
90
+ const session = {
91
+ sessionId,
92
+ nonce,
93
+ signal,
94
+ status: 'pending',
95
+ votes: [],
96
+ createdAt: new Date().toISOString(),
97
+ };
98
+ this.sessions.set(sessionId, session);
99
+ // Arm the 30-second kill timer.
100
+ const timer = setTimeout(() => {
101
+ this._expire(sessionId, 'timeout: 30-second window elapsed without 2 approvals');
102
+ }, this.opts.timeoutMs);
103
+ // Allow Node to exit even if a session is pending (don't block teardown).
104
+ if (typeof timer === 'object' && 'unref' in timer) {
105
+ timer.unref();
106
+ }
107
+ this.timers.set(sessionId, timer);
108
+ this.opts.onSessionUpdate(session);
109
+ return { ...session };
110
+ }
111
+ // ── Vote ──────────────────────────────────────────────────────────────────
112
+ /**
113
+ * Cast an agent's vote on a pending session.
114
+ *
115
+ * Accepts only if:
116
+ * 1. The session exists and is still 'pending'.
117
+ * 2. The nonce in the vote matches the session nonce (anti-replay).
118
+ * 3. The agent secret is registered in the manager.
119
+ * 4. The HMAC-SHA256 signature over the canonical payload verifies.
120
+ * 5. The agentId has not already voted in this session (no double-vote).
121
+ *
122
+ * @returns The updated session snapshot.
123
+ * @throws If the session is not found, already resolved, or the vote is invalid.
124
+ */
125
+ castVote(sessionId, vote) {
126
+ const session = this.sessions.get(sessionId);
127
+ if (!session) {
128
+ throw new Error(`Consensus session not found: ${sessionId}`);
129
+ }
130
+ if (session.status !== 'pending') {
131
+ throw new Error(`Session ${sessionId} is already ${session.status} — votes are no longer accepted`);
132
+ }
133
+ // Anti-replay: nonce must exactly match.
134
+ if (vote.nonce !== session.nonce) {
135
+ throw new Error(`Vote nonce mismatch for session ${sessionId} — possible replay attack`);
136
+ }
137
+ // Check for duplicate vote from this agent.
138
+ if (session.votes.some((v) => v.agentId === vote.agentId)) {
139
+ throw new Error(`Agent ${vote.agentId} has already voted in session ${sessionId}`);
140
+ }
141
+ // Verify signature.
142
+ const secret = this.opts.agentSecrets.get(vote.agentId);
143
+ if (!secret) {
144
+ throw new Error(`Unknown agentId ${vote.agentId} — no secret registered`);
145
+ }
146
+ if (!verifyVote(vote, sessionId, secret)) {
147
+ throw new Error(`Invalid vote signature from agent ${vote.agentId}`);
148
+ }
149
+ // Record the vote.
150
+ session.votes.push({ ...vote });
151
+ // If any agent vetoes, cancel immediately — no trade.
152
+ if (!vote.approve) {
153
+ this._resolve(session, 'cancelled', `agent ${vote.agentId} vetoed the trade`);
154
+ return { ...session };
155
+ }
156
+ // Check if we have reached the required quorum.
157
+ const approvals = session.votes.filter((v) => v.approve).length;
158
+ if (approvals >= REQUIRED_VOTES) {
159
+ this._resolve(session, 'approved');
160
+ }
161
+ else {
162
+ this.opts.onSessionUpdate(session);
163
+ }
164
+ return { ...session };
165
+ }
166
+ // ── Query ─────────────────────────────────────────────────────────────────
167
+ /** Return a snapshot of a session, or undefined if not found. */
168
+ getSession(sessionId) {
169
+ const s = this.sessions.get(sessionId);
170
+ return s ? { ...s } : undefined;
171
+ }
172
+ /** Return all sessions that match a given status. */
173
+ listSessions(status) {
174
+ const result = [];
175
+ for (const s of this.sessions.values()) {
176
+ if (!status || s.status === status) {
177
+ result.push({ ...s });
178
+ }
179
+ }
180
+ return result;
181
+ }
182
+ // ── Watch ─────────────────────────────────────────────────────────────────
183
+ /**
184
+ * Await the final outcome of a consensus session.
185
+ *
186
+ * Resolves once the session reaches 'approved' or 'cancelled'.
187
+ * The returned status is authoritative — callers must check it before executing
188
+ * any trade.
189
+ *
190
+ * @example
191
+ * ```ts
192
+ * const { status } = await manager.watchSession(sessionId);
193
+ * if (status !== 'approved') return; // abort — no solo trades
194
+ * await executeTrade(signal);
195
+ * ```
196
+ */
197
+ watchSession(sessionId) {
198
+ return new Promise((resolve, reject) => {
199
+ const poll = () => {
200
+ const session = this.sessions.get(sessionId);
201
+ if (!session) {
202
+ return reject(new Error(`Session ${sessionId} not found`));
203
+ }
204
+ if (session.status === 'approved' || session.status === 'cancelled') {
205
+ return resolve({ ...session });
206
+ }
207
+ // Re-install the hook by wrapping onSessionUpdate.
208
+ const original = this.opts.onSessionUpdate;
209
+ this.opts.onSessionUpdate = (updated) => {
210
+ original(updated);
211
+ if (updated.sessionId === sessionId &&
212
+ (updated.status === 'approved' || updated.status === 'cancelled')) {
213
+ this.opts.onSessionUpdate = original;
214
+ resolve({ ...updated });
215
+ }
216
+ };
217
+ };
218
+ poll();
219
+ });
220
+ }
221
+ // ── Cleanup ───────────────────────────────────────────────────────────────
222
+ /**
223
+ * Remove a session from memory after it has been acted upon.
224
+ * Call this once the trade outcome (executed or cancelled) has been recorded.
225
+ */
226
+ pruneSession(sessionId) {
227
+ this.sessions.delete(sessionId);
228
+ const timer = this.timers.get(sessionId);
229
+ if (timer) {
230
+ clearTimeout(timer);
231
+ this.timers.delete(sessionId);
232
+ }
233
+ }
234
+ /** Cancel all pending sessions and clear all timers (e.g. on shutdown). */
235
+ shutdown() {
236
+ for (const [id, session] of this.sessions.entries()) {
237
+ if (session.status === 'pending') {
238
+ this._resolve(session, 'cancelled', 'manager shutdown');
239
+ }
240
+ const timer = this.timers.get(id);
241
+ if (timer)
242
+ clearTimeout(timer);
243
+ }
244
+ this.timers.clear();
245
+ }
246
+ // ── Private ───────────────────────────────────────────────────────────────
247
+ _resolve(session, status, cancelReason) {
248
+ session.status = status;
249
+ session.resolvedAt = new Date().toISOString();
250
+ if (cancelReason)
251
+ session.cancelReason = cancelReason;
252
+ // Disarm the timeout timer.
253
+ const timer = this.timers.get(session.sessionId);
254
+ if (timer) {
255
+ clearTimeout(timer);
256
+ this.timers.delete(session.sessionId);
257
+ }
258
+ this.opts.onSessionUpdate({ ...session });
259
+ }
260
+ _expire(sessionId, reason) {
261
+ const session = this.sessions.get(sessionId);
262
+ if (session && session.status === 'pending') {
263
+ this._resolve(session, 'cancelled', reason);
264
+ }
265
+ this.timers.delete(sessionId);
266
+ }
267
+ }
268
+ // ── Standalone Helpers ───────────────────────────────────────────────────────
269
+ /**
270
+ * Build a ConsensusVote ready to submit.
271
+ *
272
+ * Agents call this locally before sending the vote to the consensus manager.
273
+ *
274
+ * @param sessionId - Returned by proposeConsensus()
275
+ * @param nonce - Returned by proposeConsensus()
276
+ * @param agentId - Unique identifier for this agent (e.g. "icp-agent-1")
277
+ * @param chain - The chain this agent runs on
278
+ * @param approve - true to approve, false to veto
279
+ * @param agentSecret - The agent's signing secret
280
+ */
281
+ export function buildVote(sessionId, nonce, agentId, chain, approve, agentSecret) {
282
+ return {
283
+ agentId,
284
+ chain,
285
+ nonce,
286
+ approve,
287
+ signature: signVote(sessionId, nonce, agentId, approve, agentSecret),
288
+ votedAt: new Date().toISOString(),
289
+ };
290
+ }
291
+ //# sourceMappingURL=consensus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consensus.js","sourceRoot":"","sources":["../../../src/trading/consensus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Trading Security Module
3
+ *
4
+ * Exports all components that implement the trading-specific threat model:
5
+ *
6
+ * - ApiKeyManager: Binance API key storage with mandatory weekly rotation.
7
+ * - IpWhitelistManager: IP / CIDR allowlist with firewall rule generation.
8
+ * - SkillSandbox: Runtime sandbox enforcing no-root + /tmp write confinement
9
+ * for OpenClaw / Clawdbot skills.
10
+ */
11
+ export { ApiKeyManager, getRotationStatus, isKeyValid, KEY_ROTATION_INTERVAL_DAYS, } from './api-key-manager.js';
12
+ export type { BinanceApiKey, KeyRotationStatus, } from './api-key-manager.js';
13
+ export { IpWhitelistManager, isIpAllowed, validateCidr, generateFirewallRules, } from './ip-whitelist.js';
14
+ export type { WhitelistEntry, WhitelistValidationResult, FirewallRules, } from './ip-whitelist.js';
15
+ export { SkillSandbox, defaultSandbox, SKILL_WRITE_ROOT, } from './skill-sandbox.js';
16
+ export type { SandboxViolation, } from './skill-sandbox.js';
17
+ export { TradeConsensusManager, buildVote, signVote, verifyVote, CONSENSUS_TIMEOUT_MS, REQUIRED_VOTES, } from './consensus.js';
18
+ export type { AgentChain, TradeDirection, TradeSignal, ConsensusVote, ConsensusSession, ConsensusStatus, ConsensusManagerOptions, } from './consensus.js';
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/trading/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,aAAa,EACb,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,cAAc,EACd,yBAAyB,EACzB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,QAAQ,EACR,UAAU,EACV,oBAAoB,EACpB,cAAc,GACf,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,uBAAuB,GACxB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Trading Security Module
3
+ *
4
+ * Exports all components that implement the trading-specific threat model:
5
+ *
6
+ * - ApiKeyManager: Binance API key storage with mandatory weekly rotation.
7
+ * - IpWhitelistManager: IP / CIDR allowlist with firewall rule generation.
8
+ * - SkillSandbox: Runtime sandbox enforcing no-root + /tmp write confinement
9
+ * for OpenClaw / Clawdbot skills.
10
+ */
11
+ export { ApiKeyManager, getRotationStatus, isKeyValid, KEY_ROTATION_INTERVAL_DAYS, } from './api-key-manager.js';
12
+ export { IpWhitelistManager, isIpAllowed, validateCidr, generateFirewallRules, } from './ip-whitelist.js';
13
+ export { SkillSandbox, defaultSandbox, SKILL_WRITE_ROOT, } from './skill-sandbox.js';
14
+ export { TradeConsensusManager, buildVote, signVote, verifyVote, CONSENSUS_TIMEOUT_MS, REQUIRED_VOTES, } from './consensus.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/trading/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,QAAQ,EACR,UAAU,EACV,oBAAoB,EACpB,cAAc,GACf,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * IP Whitelist Manager
3
+ *
4
+ * Manages the set of IPs / CIDR blocks that are permitted to reach the
5
+ * trading VPS. Provides:
6
+ * - Validation of individual addresses and CIDR blocks.
7
+ * - Membership testing (does this source IP pass the whitelist?).
8
+ * - Firewall rule generation for iptables and ufw so the VPS can be
9
+ * bootstrapped from the same config that the application uses.
10
+ *
11
+ * Threat model: only traffic originating from known, controlled IPs should
12
+ * reach the Binance proxy endpoint. This module makes that policy explicit
13
+ * and machine-verifiable.
14
+ */
15
+ export interface WhitelistEntry {
16
+ /** Human-readable label (e.g. "office-nat", "vps-egress"). */
17
+ label: string;
18
+ /** IPv4 / IPv6 address or CIDR block, e.g. "203.0.113.5" or "10.0.0.0/8". */
19
+ cidr: string;
20
+ /** Optional note about why this entry exists. */
21
+ note?: string;
22
+ }
23
+ export interface WhitelistValidationResult {
24
+ valid: boolean;
25
+ errors: string[];
26
+ }
27
+ export interface FirewallRules {
28
+ /** Raw iptables commands (IPv4). */
29
+ iptables: string[];
30
+ /** ufw allow commands. */
31
+ ufw: string[];
32
+ /** ip6tables commands (IPv6). */
33
+ ip6tables: string[];
34
+ }
35
+ /** Validate a single CIDR / address string. */
36
+ export declare function validateCidr(value: string): WhitelistValidationResult;
37
+ /**
38
+ * Test whether `sourceIp` is permitted by the given whitelist entries.
39
+ */
40
+ export declare function isIpAllowed(sourceIp: string, entries: WhitelistEntry[]): boolean;
41
+ /**
42
+ * Generate iptables / ufw / ip6tables rules that allow only whitelisted IPs
43
+ * to reach `port` (TCP) and drop everything else.
44
+ *
45
+ * The generated commands are idempotent-safe: they use INSERT (iptables) and
46
+ * `ufw allow from ... to any port ...` forms that are safe to run repeatedly.
47
+ */
48
+ export declare function generateFirewallRules(entries: WhitelistEntry[], port: number, chain?: string): FirewallRules;
49
+ export declare class IpWhitelistManager {
50
+ private entries;
51
+ constructor(entries?: WhitelistEntry[]);
52
+ /** Add a new entry, validating first. Throws on invalid input. */
53
+ add(entry: WhitelistEntry): void;
54
+ /** Remove all entries matching `label`. */
55
+ remove(label: string): void;
56
+ /** Return all entries. */
57
+ getEntries(): Readonly<WhitelistEntry[]>;
58
+ /** Test whether `sourceIp` is allowed by the current whitelist. */
59
+ isAllowed(sourceIp: string): boolean;
60
+ /**
61
+ * Assert that `sourceIp` is whitelisted. Throws if it is not.
62
+ * Use this as a guard at trade-execution entry points.
63
+ */
64
+ assertAllowed(sourceIp: string): void;
65
+ /** Validate every entry and return aggregated errors. */
66
+ validate(): WhitelistValidationResult;
67
+ /** Generate firewall rules for a given port. */
68
+ generateRules(port: number, chain?: string): FirewallRules;
69
+ }
70
+ //# sourceMappingURL=ip-whitelist.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ip-whitelist.d.ts","sourceRoot":"","sources":["../../../src/trading/ip-whitelist.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAQH,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,oCAAoC;IACpC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,0BAA0B;IAC1B,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,iCAAiC;IACjC,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AA+BD,+CAA+C;AAC/C,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,yBAAyB,CAcrE;AAgED;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,OAAO,CA0BhF;AAMD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,cAAc,EAAE,EACzB,IAAI,EAAE,MAAM,EACZ,KAAK,SAAU,GACd,aAAa,CAsCf;AAMD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAmB;gBAEtB,OAAO,GAAE,cAAc,EAAO;IAI1C,kEAAkE;IAClE,GAAG,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAQhC,2CAA2C;IAC3C,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3B,0BAA0B;IAC1B,UAAU,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;IAIxC,mEAAmE;IACnE,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIpC;;;OAGG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IASrC,yDAAyD;IACzD,QAAQ,IAAI,yBAAyB;IAWrC,gDAAgD;IAChD,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa;CAG3D"}