@andrewkimjoseph/celina-sdk 0.9.8 → 0.10.0

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 (371) hide show
  1. package/build/a2a/skills.js +5 -0
  2. package/build/a2a/skills.js.map +1 -1
  3. package/build/index.d.ts +35 -1
  4. package/build/index.js +6 -0
  5. package/build/index.js.map +1 -1
  6. package/build/services/agentkarma.service.d.ts +89 -0
  7. package/build/services/agentkarma.service.js +102 -0
  8. package/build/services/agentkarma.service.js.map +1 -0
  9. package/build/src/a2a/agent-card.d.ts +37 -0
  10. package/build/src/a2a/agent-card.js +46 -0
  11. package/build/src/a2a/agent-card.js.map +1 -0
  12. package/build/src/a2a/index.d.ts +2 -0
  13. package/build/src/a2a/index.js +3 -0
  14. package/build/src/a2a/index.js.map +1 -0
  15. package/build/src/a2a/skills.d.ts +18 -0
  16. package/build/src/a2a/skills.js +106 -0
  17. package/build/src/a2a/skills.js.map +1 -0
  18. package/build/src/abis/aave-pool.d.ts +37 -0
  19. package/build/src/abis/aave-pool.js +26 -0
  20. package/build/src/abis/aave-pool.js.map +1 -0
  21. package/build/src/abis/accounts.d.ts +13 -0
  22. package/build/src/abis/accounts.js +10 -0
  23. package/build/src/abis/accounts.js.map +1 -0
  24. package/build/src/abis/election.d.ts +124 -0
  25. package/build/src/abis/election.js +88 -0
  26. package/build/src/abis/election.js.map +1 -0
  27. package/build/src/abis/gooddollar-broker.d.ts +77 -0
  28. package/build/src/abis/gooddollar-broker.js +44 -0
  29. package/build/src/abis/gooddollar-broker.js.map +1 -0
  30. package/build/src/abis/gooddollar-identity.d.ts +85 -0
  31. package/build/src/abis/gooddollar-identity.js +52 -0
  32. package/build/src/abis/gooddollar-identity.js.map +1 -0
  33. package/build/src/abis/governance.d.ts +86 -0
  34. package/build/src/abis/governance.js +68 -0
  35. package/build/src/abis/governance.js.map +1 -0
  36. package/build/src/abis/locked-gold.d.ts +10 -0
  37. package/build/src/abis/locked-gold.js +10 -0
  38. package/build/src/abis/locked-gold.js.map +1 -0
  39. package/build/src/abis/nft.d.ts +107 -0
  40. package/build/src/abis/nft.js +75 -0
  41. package/build/src/abis/nft.js.map +1 -0
  42. package/build/src/abis/permit2.d.ts +43 -0
  43. package/build/src/abis/permit2.js +30 -0
  44. package/build/src/abis/permit2.js.map +1 -0
  45. package/build/src/abis/self-registry.d.ts +194 -0
  46. package/build/src/abis/self-registry.js +120 -0
  47. package/build/src/abis/self-registry.js.map +1 -0
  48. package/build/src/abis/ubi-scheme.d.ts +91 -0
  49. package/build/src/abis/ubi-scheme.js +66 -0
  50. package/build/src/abis/ubi-scheme.js.map +1 -0
  51. package/build/src/abis/uniswap-state-view.d.ts +34 -0
  52. package/build/src/abis/uniswap-state-view.js +22 -0
  53. package/build/src/abis/uniswap-state-view.js.map +1 -0
  54. package/build/src/abis/uniswap-v4-quoter.d.ts +86 -0
  55. package/build/src/abis/uniswap-v4-quoter.js +64 -0
  56. package/build/src/abis/uniswap-v4-quoter.js.map +1 -0
  57. package/build/src/abis/universal-router.d.ts +16 -0
  58. package/build/src/abis/universal-router.js +14 -0
  59. package/build/src/abis/universal-router.js.map +1 -0
  60. package/build/src/abis/validators-minimal.d.ts +65 -0
  61. package/build/src/abis/validators-minimal.js +39 -0
  62. package/build/src/abis/validators-minimal.js.map +1 -0
  63. package/build/src/analytics/amplitude.d.ts +11 -0
  64. package/build/src/analytics/amplitude.js +76 -0
  65. package/build/src/analytics/amplitude.js.map +1 -0
  66. package/build/src/analytics/config.d.ts +7 -0
  67. package/build/src/analytics/config.js +28 -0
  68. package/build/src/analytics/config.js.map +1 -0
  69. package/build/src/analytics/consumer-package.d.ts +9 -0
  70. package/build/src/analytics/consumer-package.js +143 -0
  71. package/build/src/analytics/consumer-package.js.map +1 -0
  72. package/build/src/analytics/mcp-tool-events.d.ts +5 -0
  73. package/build/src/analytics/mcp-tool-events.js +53 -0
  74. package/build/src/analytics/mcp-tool-events.js.map +1 -0
  75. package/build/src/analytics/wallet-context.d.ts +11 -0
  76. package/build/src/analytics/wallet-context.js +81 -0
  77. package/build/src/analytics/wallet-context.js.map +1 -0
  78. package/build/src/analytics/wallet-extract.d.ts +9 -0
  79. package/build/src/analytics/wallet-extract.js +21 -0
  80. package/build/src/analytics/wallet-extract.js.map +1 -0
  81. package/build/src/analytics/wrap-service.d.ts +5 -0
  82. package/build/src/analytics/wrap-service.js +38 -0
  83. package/build/src/analytics/wrap-service.js.map +1 -0
  84. package/build/src/clients/celo-client.d.ts +17 -0
  85. package/build/src/clients/celo-client.js +28 -0
  86. package/build/src/clients/celo-client.js.map +1 -0
  87. package/build/src/clients/ens-client.d.ts +17 -0
  88. package/build/src/clients/ens-client.js +30 -0
  89. package/build/src/clients/ens-client.js.map +1 -0
  90. package/build/src/clients/mento-sdk.d.ts +2 -0
  91. package/build/src/clients/mento-sdk.js +9 -0
  92. package/build/src/clients/mento-sdk.js.map +1 -0
  93. package/build/src/clients/self-api.d.ts +82 -0
  94. package/build/src/clients/self-api.js +242 -0
  95. package/build/src/clients/self-api.js.map +1 -0
  96. package/build/src/clients/uniswap-sdk.d.ts +4 -0
  97. package/build/src/clients/uniswap-sdk.js +13 -0
  98. package/build/src/clients/uniswap-sdk.js.map +1 -0
  99. package/build/src/config/aave.d.ts +17 -0
  100. package/build/src/config/aave.js +77 -0
  101. package/build/src/config/aave.js.map +1 -0
  102. package/build/src/config/celina-tag.d.ts +4 -0
  103. package/build/src/config/celina-tag.js +13 -0
  104. package/build/src/config/celina-tag.js.map +1 -0
  105. package/build/src/config/celo-core-contracts.d.ts +8 -0
  106. package/build/src/config/celo-core-contracts.js +9 -0
  107. package/build/src/config/celo-core-contracts.js.map +1 -0
  108. package/build/src/config/chains.d.ts +937 -0
  109. package/build/src/config/chains.js +319 -0
  110. package/build/src/config/chains.js.map +1 -0
  111. package/build/src/config/gooddollar.d.ts +16 -0
  112. package/build/src/config/gooddollar.js +24 -0
  113. package/build/src/config/gooddollar.js.map +1 -0
  114. package/build/src/config/sdk-config.d.ts +33 -0
  115. package/build/src/config/sdk-config.js +31 -0
  116. package/build/src/config/sdk-config.js.map +1 -0
  117. package/build/src/config/self.d.ts +22 -0
  118. package/build/src/config/self.js +27 -0
  119. package/build/src/config/self.js.map +1 -0
  120. package/build/src/config/uniswap.d.ts +42 -0
  121. package/build/src/config/uniswap.js +76 -0
  122. package/build/src/config/uniswap.js.map +1 -0
  123. package/build/src/index.d.ts +124 -0
  124. package/build/src/index.js +71 -0
  125. package/build/src/index.js.map +1 -0
  126. package/build/src/oasf/index.d.ts +2 -0
  127. package/build/src/oasf/index.js +3 -0
  128. package/build/src/oasf/index.js.map +1 -0
  129. package/build/src/oasf/record.d.ts +39 -0
  130. package/build/src/oasf/record.js +35 -0
  131. package/build/src/oasf/record.js.map +1 -0
  132. package/build/src/oasf/taxonomy.d.ts +19 -0
  133. package/build/src/oasf/taxonomy.js +46 -0
  134. package/build/src/oasf/taxonomy.js.map +1 -0
  135. package/build/src/services/aave.service.d.ts +58 -0
  136. package/build/src/services/aave.service.js +210 -0
  137. package/build/src/services/aave.service.js.map +1 -0
  138. package/build/src/services/account.service.d.ts +22 -0
  139. package/build/src/services/account.service.js +29 -0
  140. package/build/src/services/account.service.js.map +1 -0
  141. package/build/src/services/agentkarma.service.d.ts +89 -0
  142. package/build/src/services/agentkarma.service.js +102 -0
  143. package/build/src/services/agentkarma.service.js.map +1 -0
  144. package/build/src/services/blockchain.service.d.ts +107 -0
  145. package/build/src/services/blockchain.service.js +151 -0
  146. package/build/src/services/blockchain.service.js.map +1 -0
  147. package/build/src/services/contract.service.d.ts +78 -0
  148. package/build/src/services/contract.service.js +117 -0
  149. package/build/src/services/contract.service.js.map +1 -0
  150. package/build/src/services/ens.service.d.ts +44 -0
  151. package/build/src/services/ens.service.js +92 -0
  152. package/build/src/services/ens.service.js.map +1 -0
  153. package/build/src/services/gooddollar.service.d.ts +183 -0
  154. package/build/src/services/gooddollar.service.js +675 -0
  155. package/build/src/services/gooddollar.service.js.map +1 -0
  156. package/build/src/services/governance.service.d.ts +96 -0
  157. package/build/src/services/governance.service.js +255 -0
  158. package/build/src/services/governance.service.js.map +1 -0
  159. package/build/src/services/mento-fx.service.d.ts +80 -0
  160. package/build/src/services/mento-fx.service.js +319 -0
  161. package/build/src/services/mento-fx.service.js.map +1 -0
  162. package/build/src/services/nft.service.d.ts +58 -0
  163. package/build/src/services/nft.service.js +222 -0
  164. package/build/src/services/nft.service.js.map +1 -0
  165. package/build/src/services/self-session-store.d.ts +19 -0
  166. package/build/src/services/self-session-store.js +28 -0
  167. package/build/src/services/self-session-store.js.map +1 -0
  168. package/build/src/services/self.service.d.ts +241 -0
  169. package/build/src/services/self.service.js +699 -0
  170. package/build/src/services/self.service.js.map +1 -0
  171. package/build/src/services/staking.service.d.ts +140 -0
  172. package/build/src/services/staking.service.js +444 -0
  173. package/build/src/services/staking.service.js.map +1 -0
  174. package/build/src/services/token.service.d.ts +110 -0
  175. package/build/src/services/token.service.js +189 -0
  176. package/build/src/services/token.service.js.map +1 -0
  177. package/build/src/services/transaction.service.d.ts +68 -0
  178. package/build/src/services/transaction.service.js +198 -0
  179. package/build/src/services/transaction.service.js.map +1 -0
  180. package/build/src/services/uniswap-path-router.d.ts +40 -0
  181. package/build/src/services/uniswap-path-router.js +168 -0
  182. package/build/src/services/uniswap-path-router.js.map +1 -0
  183. package/build/src/services/uniswap-pool-discovery.d.ts +55 -0
  184. package/build/src/services/uniswap-pool-discovery.js +198 -0
  185. package/build/src/services/uniswap-pool-discovery.js.map +1 -0
  186. package/build/src/services/uniswap.service.d.ts +82 -0
  187. package/build/src/services/uniswap.service.js +352 -0
  188. package/build/src/services/uniswap.service.js.map +1 -0
  189. package/build/src/simulation/index.d.ts +5 -0
  190. package/build/src/simulation/index.js +2 -0
  191. package/build/src/simulation/index.js.map +1 -0
  192. package/build/src/simulation/simulate-prepared-step.d.ts +17 -0
  193. package/build/src/simulation/simulate-prepared-step.js +42 -0
  194. package/build/src/simulation/simulate-prepared-step.js.map +1 -0
  195. package/build/src/tools/catalog.d.ts +11 -0
  196. package/build/src/tools/catalog.js +43 -0
  197. package/build/src/tools/catalog.js.map +1 -0
  198. package/build/src/tools/domains/aave.d.ts +2 -0
  199. package/build/src/tools/domains/aave.js +115 -0
  200. package/build/src/tools/domains/aave.js.map +1 -0
  201. package/build/src/tools/domains/agentkarma.d.ts +2 -0
  202. package/build/src/tools/domains/agentkarma.js +92 -0
  203. package/build/src/tools/domains/agentkarma.js.map +1 -0
  204. package/build/src/tools/domains/blockchain.d.ts +2 -0
  205. package/build/src/tools/domains/blockchain.js +86 -0
  206. package/build/src/tools/domains/blockchain.js.map +1 -0
  207. package/build/src/tools/domains/browser.d.ts +2 -0
  208. package/build/src/tools/domains/browser.js +45 -0
  209. package/build/src/tools/domains/browser.js.map +1 -0
  210. package/build/src/tools/domains/contract.d.ts +2 -0
  211. package/build/src/tools/domains/contract.js +67 -0
  212. package/build/src/tools/domains/contract.js.map +1 -0
  213. package/build/src/tools/domains/ens.d.ts +2 -0
  214. package/build/src/tools/domains/ens.js +16 -0
  215. package/build/src/tools/domains/ens.js.map +1 -0
  216. package/build/src/tools/domains/gooddollar.d.ts +2 -0
  217. package/build/src/tools/domains/gooddollar.js +171 -0
  218. package/build/src/tools/domains/gooddollar.js.map +1 -0
  219. package/build/src/tools/domains/governance.d.ts +2 -0
  220. package/build/src/tools/domains/governance.js +41 -0
  221. package/build/src/tools/domains/governance.js.map +1 -0
  222. package/build/src/tools/domains/index.d.ts +1 -0
  223. package/build/src/tools/domains/index.js +33 -0
  224. package/build/src/tools/domains/index.js.map +1 -0
  225. package/build/src/tools/domains/mento-fx.d.ts +2 -0
  226. package/build/src/tools/domains/mento-fx.js +67 -0
  227. package/build/src/tools/domains/mento-fx.js.map +1 -0
  228. package/build/src/tools/domains/nft.d.ts +2 -0
  229. package/build/src/tools/domains/nft.js +38 -0
  230. package/build/src/tools/domains/nft.js.map +1 -0
  231. package/build/src/tools/domains/self.d.ts +2 -0
  232. package/build/src/tools/domains/self.js +187 -0
  233. package/build/src/tools/domains/self.js.map +1 -0
  234. package/build/src/tools/domains/staking.d.ts +2 -0
  235. package/build/src/tools/domains/staking.js +74 -0
  236. package/build/src/tools/domains/staking.js.map +1 -0
  237. package/build/src/tools/domains/token.d.ts +2 -0
  238. package/build/src/tools/domains/token.js +74 -0
  239. package/build/src/tools/domains/token.js.map +1 -0
  240. package/build/src/tools/domains/transaction.d.ts +2 -0
  241. package/build/src/tools/domains/transaction.js +120 -0
  242. package/build/src/tools/domains/transaction.js.map +1 -0
  243. package/build/src/tools/domains/uniswap.d.ts +2 -0
  244. package/build/src/tools/domains/uniswap.js +67 -0
  245. package/build/src/tools/domains/uniswap.js.map +1 -0
  246. package/build/src/tools/filter.d.ts +2 -0
  247. package/build/src/tools/filter.js +50 -0
  248. package/build/src/tools/filter.js.map +1 -0
  249. package/build/src/tools/index.d.ts +7 -0
  250. package/build/src/tools/index.js +7 -0
  251. package/build/src/tools/index.js.map +1 -0
  252. package/build/src/tools/schemas/common.d.ts +165 -0
  253. package/build/src/tools/schemas/common.js +207 -0
  254. package/build/src/tools/schemas/common.js.map +1 -0
  255. package/build/src/tools/schemas/wallet-params.d.ts +9 -0
  256. package/build/src/tools/schemas/wallet-params.js +52 -0
  257. package/build/src/tools/schemas/wallet-params.js.map +1 -0
  258. package/build/src/tools/swap-routing.d.ts +25 -0
  259. package/build/src/tools/swap-routing.js +174 -0
  260. package/build/src/tools/swap-routing.js.map +1 -0
  261. package/build/src/tools/types.d.ts +124 -0
  262. package/build/src/tools/types.js +2 -0
  263. package/build/src/tools/types.js.map +1 -0
  264. package/build/src/tools/utils/normalize-token.d.ts +2 -0
  265. package/build/src/tools/utils/normalize-token.js +12 -0
  266. package/build/src/tools/utils/normalize-token.js.map +1 -0
  267. package/build/src/tools/utils/wallet.d.ts +4 -0
  268. package/build/src/tools/utils/wallet.js +8 -0
  269. package/build/src/tools/utils/wallet.js.map +1 -0
  270. package/build/src/tools/website-sync.d.ts +28 -0
  271. package/build/src/tools/website-sync.js +168 -0
  272. package/build/src/tools/website-sync.js.map +1 -0
  273. package/build/src/types/prepared.d.ts +28 -0
  274. package/build/src/types/prepared.js +12 -0
  275. package/build/src/types/prepared.js.map +1 -0
  276. package/build/src/utils/celo-format.d.ts +6 -0
  277. package/build/src/utils/celo-format.js +17 -0
  278. package/build/src/utils/celo-format.js.map +1 -0
  279. package/build/src/utils/erc20-allowance-storage.d.ts +20 -0
  280. package/build/src/utils/erc20-allowance-storage.js +64 -0
  281. package/build/src/utils/erc20-allowance-storage.js.map +1 -0
  282. package/build/src/utils/format-date.d.ts +2 -0
  283. package/build/src/utils/format-date.js +13 -0
  284. package/build/src/utils/format-date.js.map +1 -0
  285. package/build/src/utils/format-duration.d.ts +2 -0
  286. package/build/src/utils/format-duration.js +17 -0
  287. package/build/src/utils/format-duration.js.map +1 -0
  288. package/build/src/utils/format-unix-datetime.d.ts +4 -0
  289. package/build/src/utils/format-unix-datetime.js +18 -0
  290. package/build/src/utils/format-unix-datetime.js.map +1 -0
  291. package/build/src/utils/gooddollar-ubi-period.d.ts +23 -0
  292. package/build/src/utils/gooddollar-ubi-period.js +23 -0
  293. package/build/src/utils/gooddollar-ubi-period.js.map +1 -0
  294. package/build/src/utils/normalize-address.d.ts +7 -0
  295. package/build/src/utils/normalize-address.js +16 -0
  296. package/build/src/utils/normalize-address.js.map +1 -0
  297. package/build/src/utils/self-format.d.ts +28 -0
  298. package/build/src/utils/self-format.js +79 -0
  299. package/build/src/utils/self-format.js.map +1 -0
  300. package/build/src/utils/self-signing.d.ts +4 -0
  301. package/build/src/utils/self-signing.js +38 -0
  302. package/build/src/utils/self-signing.js.map +1 -0
  303. package/build/src/utils/transaction-errors.d.ts +3 -0
  304. package/build/src/utils/transaction-errors.js +17 -0
  305. package/build/src/utils/transaction-errors.js.map +1 -0
  306. package/build/tests/catalog/domains/blockchain.d.ts +2 -0
  307. package/build/tests/catalog/domains/blockchain.js +127 -0
  308. package/build/tests/catalog/domains/blockchain.js.map +1 -0
  309. package/build/tests/catalog/domains/chain-ext.d.ts +5 -0
  310. package/build/tests/catalog/domains/chain-ext.js +207 -0
  311. package/build/tests/catalog/domains/chain-ext.js.map +1 -0
  312. package/build/tests/catalog/domains/defi.d.ts +6 -0
  313. package/build/tests/catalog/domains/defi.js +581 -0
  314. package/build/tests/catalog/domains/defi.js.map +1 -0
  315. package/build/tests/catalog/domains/self.d.ts +2 -0
  316. package/build/tests/catalog/domains/self.js +208 -0
  317. package/build/tests/catalog/domains/self.js.map +1 -0
  318. package/build/tests/catalog/domains/token.d.ts +2 -0
  319. package/build/tests/catalog/domains/token.js +70 -0
  320. package/build/tests/catalog/domains/token.js.map +1 -0
  321. package/build/tests/catalog/domains/transaction.d.ts +2 -0
  322. package/build/tests/catalog/domains/transaction.js +96 -0
  323. package/build/tests/catalog/domains/transaction.js.map +1 -0
  324. package/build/tests/catalog/index.d.ts +2 -0
  325. package/build/tests/catalog/index.js +2 -0
  326. package/build/tests/catalog/index.js.map +1 -0
  327. package/build/tests/catalog/operations.d.ts +12 -0
  328. package/build/tests/catalog/operations.js +29 -0
  329. package/build/tests/catalog/operations.js.map +1 -0
  330. package/build/tests/catalog/types.d.ts +24 -0
  331. package/build/tests/catalog/types.js +2 -0
  332. package/build/tests/catalog/types.js.map +1 -0
  333. package/build/tests/fixtures/mainnet.d.ts +54 -0
  334. package/build/tests/fixtures/mainnet.js +53 -0
  335. package/build/tests/fixtures/mainnet.js.map +1 -0
  336. package/build/tests/helpers/assert.d.ts +4 -0
  337. package/build/tests/helpers/assert.js +24 -0
  338. package/build/tests/helpers/assert.js.map +1 -0
  339. package/build/tests/helpers/env.d.ts +11 -0
  340. package/build/tests/helpers/env.js +28 -0
  341. package/build/tests/helpers/env.js.map +1 -0
  342. package/build/tests/helpers/gating.d.ts +3 -0
  343. package/build/tests/helpers/gating.js +23 -0
  344. package/build/tests/helpers/gating.js.map +1 -0
  345. package/build/tests/testing-entry.d.ts +6 -0
  346. package/build/tests/testing-entry.js +6 -0
  347. package/build/tests/testing-entry.js.map +1 -0
  348. package/build/tools/domains/agentkarma.d.ts +2 -0
  349. package/build/tools/domains/agentkarma.js +92 -0
  350. package/build/tools/domains/agentkarma.js.map +1 -0
  351. package/build/tools/domains/index.js +2 -0
  352. package/build/tools/domains/index.js.map +1 -1
  353. package/build/tools/website-sync.d.ts +1 -1
  354. package/build/tools/website-sync.js +3 -0
  355. package/build/tools/website-sync.js.map +1 -1
  356. package/package.json +9 -12
  357. package/tests/README.md +0 -78
  358. package/tests/catalog/domains/blockchain.ts +0 -133
  359. package/tests/catalog/domains/chain-ext.ts +0 -219
  360. package/tests/catalog/domains/defi.ts +0 -647
  361. package/tests/catalog/domains/self.ts +0 -220
  362. package/tests/catalog/domains/token.ts +0 -74
  363. package/tests/catalog/domains/transaction.ts +0 -111
  364. package/tests/catalog/index.ts +0 -7
  365. package/tests/catalog/operations.ts +0 -53
  366. package/tests/catalog/types.ts +0 -27
  367. package/tests/fixtures/mainnet.ts +0 -93
  368. package/tests/helpers/assert.ts +0 -30
  369. package/tests/helpers/env.ts +0 -38
  370. package/tests/helpers/gating.ts +0 -36
  371. package/tests/testing-entry.ts +0 -27
@@ -71,6 +71,11 @@ export const CATEGORY_TO_A2A_SKILL = {
71
71
  name: "Contract reads",
72
72
  tags: ["celo", "contract", "abi"],
73
73
  },
74
+ AgentKarma: {
75
+ id: "agentkarma-reputation",
76
+ name: "AgentKarma reputation reads",
77
+ tags: ["celo", "agentkarma", "reputation", "trust", "erc-8004"],
78
+ },
74
79
  };
75
80
  export function buildSkillsFromToolNames(toolNames, categoryByName) {
76
81
  const bySkillId = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/a2a/skills.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/a2a/skills.ts"],"names":[],"mappings":"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"}
package/build/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { type SdkConfig } from "./config/sdk-config.js";
2
2
  import { AccountService } from "./services/account.service.js";
3
+ import { AgentKarmaService, type AgentKarmaServiceConfig } from "./services/agentkarma.service.js";
3
4
  import { AaveService } from "./services/aave.service.js";
4
5
  import { BlockchainService } from "./services/blockchain.service.js";
5
6
  import { ContractService } from "./services/contract.service.js";
@@ -14,7 +15,13 @@ import { TokenService } from "./services/token.service.js";
14
15
  import { TransactionService } from "./services/transaction.service.js";
15
16
  import { SelfService } from "./services/self.service.js";
16
17
  /** Optional RPC overrides when creating a Celina client. */
17
- export type CelinaClientOptions = Partial<SdkConfig>;
18
+ export type CelinaClientOptions = Partial<SdkConfig> & {
19
+ /**
20
+ * Optional AgentKarma reputation adapter config (baseUrl, timeout, fetch, …).
21
+ * Omit to read from https://agentkarma.io with SDK defaults.
22
+ */
23
+ agentKarma?: AgentKarmaServiceConfig;
24
+ };
18
25
  /** Domain services for Celo mainnet reads and unsigned transaction preparation. */
19
26
  export interface CelinaClient {
20
27
  /** Blocks, transactions, and network status. */
@@ -45,6 +52,12 @@ export interface CelinaClient {
45
52
  contract: ContractService;
46
53
  /** Self Agent ID on Celo mainnet (ai.self.xyz + on-chain registry). */
47
54
  self: SelfService;
55
+ /**
56
+ * Optional AgentKarma reputation insight (read-only, agentkarma.io).
57
+ * Ecosystem adapter: Provider/Consumer karma, ERC-8004 Celo agents, and
58
+ * local trust-policy checks. Never routes, signs, or holds custody.
59
+ */
60
+ agentKarma: AgentKarmaService;
48
61
  }
49
62
  /**
50
63
  * Create a Celina client for Celo mainnet reads and unsigned tx preparation.
@@ -88,3 +101,24 @@ export { resolveSelfSessionLinks, formatSelfSessionLinksDisplay, type SelfSessio
88
101
  export { clearSelfSessionsForTests } from "./services/self-session-store.js";
89
102
  export { flushCelinaAnalytics } from "./analytics/amplitude.js";
90
103
  export { runWithAnalyticsWallet } from "./analytics/wallet-context.js";
104
+ /** Optional read-only AgentKarma reputation adapter (agentkarma.io). */
105
+ export { AgentKarmaService } from "./services/agentkarma.service.js";
106
+ export type {
107
+ /** Config for the AgentKarma adapter (baseUrl, timeout, fetch, headers). */
108
+ AgentKarmaServiceConfig,
109
+ /** Which karma face(s) to read: provider, consumer, or both. */
110
+ AgentKarmaFace,
111
+ /** Options for an AgentKarma karma read. */
112
+ GetKarmaOptions,
113
+ /** Local counterparty trust evaluation result. */
114
+ CounterpartyDecision,
115
+ /** AgentKarma Provider/Consumer karma snapshot. */
116
+ KarmaSnapshot,
117
+ /** Per-face karma data (score, trust tier, confidence badge, tiers). */
118
+ KarmaFaceData,
119
+ /** ERC-8004 Celo agent identity + reputation snapshot. */
120
+ CeloAgentSnapshot,
121
+ /** Local trust policy config (minScore, requireReceiptBacked, …). */
122
+ TrustPolicy,
123
+ /** Explainable allow/deny trust decision. */
124
+ TrustDecision, } from "./services/agentkarma.service.js";
package/build/index.js CHANGED
@@ -8,6 +8,7 @@ import { CeloClientFactory } from "./clients/celo-client.js";
8
8
  import { EnsClientFactory } from "./clients/ens-client.js";
9
9
  import { resolveSdkConfig } from "./config/sdk-config.js";
10
10
  import { AccountService } from "./services/account.service.js";
11
+ import { AgentKarmaService, } from "./services/agentkarma.service.js";
11
12
  import { AaveService } from "./services/aave.service.js";
12
13
  import { BlockchainService } from "./services/blockchain.service.js";
13
14
  import { ContractService } from "./services/contract.service.js";
@@ -47,6 +48,9 @@ export function createCelinaClient(opts) {
47
48
  nft: wrap("nft", new NftService(clientFactory)),
48
49
  contract: wrap("contract", new ContractService(clientFactory)),
49
50
  self: wrap("self", new SelfService(clientFactory, config)),
51
+ // Optional ecosystem adapter. Not analytics-wrapped: AgentKarma is an
52
+ // external reputation service, not a Celo on-chain read Celina tracks.
53
+ agentKarma: new AgentKarmaService(opts?.agentKarma),
50
54
  };
51
55
  }
52
56
  export { serializePreparedFlow } from "./types/prepared.js";
@@ -62,4 +66,6 @@ export { resolveSelfSessionLinks, formatSelfSessionLinksDisplay, } from "./utils
62
66
  export { clearSelfSessionsForTests } from "./services/self-session-store.js";
63
67
  export { flushCelinaAnalytics } from "./analytics/amplitude.js";
64
68
  export { runWithAnalyticsWallet } from "./analytics/wallet-context.js";
69
+ /** Optional read-only AgentKarma reputation adapter (agentkarma.io). */
70
+ export { AgentKarmaService } from "./services/agentkarma.service.js";
65
71
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * AgentKarma reputation adapter (read-only).
3
+ *
4
+ * AgentKarma (https://agentkarma.io) is the reputation layer for autonomous
5
+ * on-chain agents. This service is a thin, optional ecosystem adapter over
6
+ * `@agentkarma/sdk`: it reads Provider/Consumer karma and ERC-8004 Celo agent
7
+ * data, and evaluates a local trust policy. It is pinned to Celo — the chain
8
+ * Celina operates on.
9
+ *
10
+ * Boundaries (mirrors the AgentKarma SDK's own contract):
11
+ * - read-only: never signs, never executes a transaction, never holds custody.
12
+ * - non-routing: never proxies an agent call; it only reads reputation.
13
+ * - no private keys / no env requirement.
14
+ *
15
+ * It is intentionally NOT wrapped in Celina's Amplitude analytics proxy: this
16
+ * is an external reputation service, not a Celo on-chain read Celina tracks.
17
+ */
18
+ import { type CeloAgentSnapshot, type ClientConfig, type KarmaFaceData, type KarmaSnapshot, type TrustDecision, type TrustPolicy } from "@agentkarma/sdk";
19
+ import { type AgentKarmaToolDescriptor } from "@agentkarma/sdk/tools";
20
+ /** Config for the AgentKarma adapter. Defaults to https://agentkarma.io. */
21
+ export type AgentKarmaServiceConfig = ClientConfig;
22
+ /** Which karma face(s) to read. A wallet always carries both. */
23
+ export type AgentKarmaFace = "provider" | "consumer" | "both";
24
+ /** Options for a karma read. */
25
+ export interface GetKarmaOptions {
26
+ /** Face to read. Defaults to `"both"`. */
27
+ face?: AgentKarmaFace;
28
+ }
29
+ /** Result of a local counterparty trust evaluation. */
30
+ export interface CounterpartyDecision {
31
+ /** Always `"celo"` — this adapter is Celo-pinned. */
32
+ chain: "celo";
33
+ /** The wallet that was evaluated. */
34
+ wallet: string;
35
+ /** Explainable allow/deny from the local policy (no network, pure function). */
36
+ decision: TrustDecision;
37
+ /** The karma snapshot the decision was computed from. */
38
+ snapshot: KarmaSnapshot;
39
+ }
40
+ /**
41
+ * Read-only AgentKarma reputation insight for Celo agents.
42
+ *
43
+ * Exposed from `createCelinaClient()` as `client.agentKarma`.
44
+ */
45
+ export declare class AgentKarmaService {
46
+ private readonly client;
47
+ /** This adapter only ever talks to AgentKarma on the Celo chain. */
48
+ readonly chain: "celo";
49
+ constructor(config?: AgentKarmaServiceConfig);
50
+ /** AgentKarma API base URL the adapter reads from. */
51
+ get baseUrl(): string;
52
+ /** The canonical `@agentkarma/sdk/tools` descriptors this adapter draws from. */
53
+ get catalog(): readonly AgentKarmaToolDescriptor[];
54
+ /**
55
+ * Execute a tool from the canonical `@agentkarma/sdk/tools` catalog,
56
+ * Celo-pinned. This is how Celina consumes the SHARED tool catalog instead of
57
+ * re-implementing each AgentKarma call: the names, schemas, arg-coercion, and
58
+ * handler logic all live in `@agentkarma/sdk`. `chain` is forced to `'celo'`.
59
+ * @param name - A catalog tool name (e.g. `get_karma`, `get_celo_agent`).
60
+ * @param input - Tool arguments; `chain` is overridden to `'celo'`.
61
+ */
62
+ runCatalogTool(name: string, input?: Record<string, unknown>): Promise<unknown>;
63
+ /**
64
+ * Provider + Consumer karma for a Celo agent wallet. Always queries Celo.
65
+ * Routed through the shared catalog's `get_karma` tool.
66
+ * @param wallet - Celo `0x` agent/wallet address to look up.
67
+ * @param options - Optional face selector (defaults to `"both"`).
68
+ */
69
+ getKarma(wallet: string, options?: GetKarmaOptions): Promise<KarmaSnapshot>;
70
+ /**
71
+ * Resolve a Celo ERC-8004 agent (IdentityRegistry + ReputationRegistry)
72
+ * and its AgentKarma reputation by numeric agent ID. Routed through the
73
+ * shared catalog's `get_celo_agent` tool.
74
+ * @param agentId - Positive integer ERC-8004 agent ID on Celo.
75
+ */
76
+ getCeloAgent(agentId: number): Promise<CeloAgentSnapshot>;
77
+ /**
78
+ * Fetch Celo karma and run a local, explainable trust policy against it.
79
+ * Pure evaluation — no routing, no signing, no side effects.
80
+ *
81
+ * Always fetches BOTH faces so whichever face `policy.face` scores on
82
+ * (`provider` by default) is guaranteed present — there is intentionally no
83
+ * separate fetch-face knob to drift out of sync with the scored face.
84
+ * @param wallet - Celo `0x` counterparty address.
85
+ * @param policy - Local trust policy (face, minScore, requireReceiptBacked, …).
86
+ */
87
+ evaluateCounterparty(wallet: string, policy?: TrustPolicy): Promise<CounterpartyDecision>;
88
+ }
89
+ export type { CeloAgentSnapshot, KarmaFaceData, KarmaSnapshot, TrustDecision, TrustPolicy, };
@@ -0,0 +1,102 @@
1
+ /**
2
+ * AgentKarma reputation adapter (read-only).
3
+ *
4
+ * AgentKarma (https://agentkarma.io) is the reputation layer for autonomous
5
+ * on-chain agents. This service is a thin, optional ecosystem adapter over
6
+ * `@agentkarma/sdk`: it reads Provider/Consumer karma and ERC-8004 Celo agent
7
+ * data, and evaluates a local trust policy. It is pinned to Celo — the chain
8
+ * Celina operates on.
9
+ *
10
+ * Boundaries (mirrors the AgentKarma SDK's own contract):
11
+ * - read-only: never signs, never executes a transaction, never holds custody.
12
+ * - non-routing: never proxies an agent call; it only reads reputation.
13
+ * - no private keys / no env requirement.
14
+ *
15
+ * It is intentionally NOT wrapped in Celina's Amplitude analytics proxy: this
16
+ * is an external reputation service, not a Celo on-chain read Celina tracks.
17
+ */
18
+ import { createAgentKarmaClient, evaluateTrust, } from "@agentkarma/sdk";
19
+ import { agentKarmaTools, runAgentKarmaTool, } from "@agentkarma/sdk/tools";
20
+ const CELINA_USER_AGENT = "@andrewkimjoseph/celina-sdk (+@agentkarma/sdk adapter)";
21
+ /** Celo (EVM) address shape. AgentKarma keys Celo agents by 0x address. */
22
+ const CELO_ADDRESS_RE = /^0x[a-fA-F0-9]{40}$/;
23
+ function assertCeloAddress(wallet) {
24
+ if (typeof wallet !== "string" || !CELO_ADDRESS_RE.test(wallet)) {
25
+ throw new Error(`AgentKarma: wallet must be a Celo 0x address (40 hex chars), got "${wallet}"`);
26
+ }
27
+ }
28
+ /**
29
+ * Read-only AgentKarma reputation insight for Celo agents.
30
+ *
31
+ * Exposed from `createCelinaClient()` as `client.agentKarma`.
32
+ */
33
+ export class AgentKarmaService {
34
+ client;
35
+ /** This adapter only ever talks to AgentKarma on the Celo chain. */
36
+ chain = "celo";
37
+ constructor(config = {}) {
38
+ this.client = createAgentKarmaClient({
39
+ ...config,
40
+ userAgent: config.userAgent ?? CELINA_USER_AGENT,
41
+ });
42
+ }
43
+ /** AgentKarma API base URL the adapter reads from. */
44
+ get baseUrl() {
45
+ return this.client.baseUrl;
46
+ }
47
+ /** The canonical `@agentkarma/sdk/tools` descriptors this adapter draws from. */
48
+ get catalog() {
49
+ return agentKarmaTools;
50
+ }
51
+ /**
52
+ * Execute a tool from the canonical `@agentkarma/sdk/tools` catalog,
53
+ * Celo-pinned. This is how Celina consumes the SHARED tool catalog instead of
54
+ * re-implementing each AgentKarma call: the names, schemas, arg-coercion, and
55
+ * handler logic all live in `@agentkarma/sdk`. `chain` is forced to `'celo'`.
56
+ * @param name - A catalog tool name (e.g. `get_karma`, `get_celo_agent`).
57
+ * @param input - Tool arguments; `chain` is overridden to `'celo'`.
58
+ */
59
+ runCatalogTool(name, input = {}) {
60
+ return runAgentKarmaTool(this.client, name, { ...input, chain: "celo" });
61
+ }
62
+ /**
63
+ * Provider + Consumer karma for a Celo agent wallet. Always queries Celo.
64
+ * Routed through the shared catalog's `get_karma` tool.
65
+ * @param wallet - Celo `0x` agent/wallet address to look up.
66
+ * @param options - Optional face selector (defaults to `"both"`).
67
+ */
68
+ async getKarma(wallet, options = {}) {
69
+ assertCeloAddress(wallet);
70
+ return this.runCatalogTool("get_karma", {
71
+ wallet,
72
+ face: options.face ?? "both",
73
+ });
74
+ }
75
+ /**
76
+ * Resolve a Celo ERC-8004 agent (IdentityRegistry + ReputationRegistry)
77
+ * and its AgentKarma reputation by numeric agent ID. Routed through the
78
+ * shared catalog's `get_celo_agent` tool.
79
+ * @param agentId - Positive integer ERC-8004 agent ID on Celo.
80
+ */
81
+ async getCeloAgent(agentId) {
82
+ return this.runCatalogTool("get_celo_agent", {
83
+ agent_id: agentId,
84
+ });
85
+ }
86
+ /**
87
+ * Fetch Celo karma and run a local, explainable trust policy against it.
88
+ * Pure evaluation — no routing, no signing, no side effects.
89
+ *
90
+ * Always fetches BOTH faces so whichever face `policy.face` scores on
91
+ * (`provider` by default) is guaranteed present — there is intentionally no
92
+ * separate fetch-face knob to drift out of sync with the scored face.
93
+ * @param wallet - Celo `0x` counterparty address.
94
+ * @param policy - Local trust policy (face, minScore, requireReceiptBacked, …).
95
+ */
96
+ async evaluateCounterparty(wallet, policy = {}) {
97
+ const snapshot = await this.getKarma(wallet, { face: "both" });
98
+ const decision = evaluateTrust(snapshot, policy);
99
+ return { chain: "celo", wallet, decision, snapshot };
100
+ }
101
+ }
102
+ //# sourceMappingURL=agentkarma.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentkarma.service.js","sourceRoot":"","sources":["../../src/services/agentkarma.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EACL,sBAAsB,EACtB,aAAa,GAQd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EACf,iBAAiB,GAElB,MAAM,uBAAuB,CAAC;AA0B/B,MAAM,iBAAiB,GAAG,wDAAwD,CAAC;AAEnF,2EAA2E;AAC3E,MAAM,eAAe,GAAG,qBAAqB,CAAC;AAE9C,SAAS,iBAAiB,CAAC,MAAc;IACvC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CACb,qEAAqE,MAAM,GAAG,CAC/E,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,iBAAiB;IACX,MAAM,CAAmB;IAE1C,oEAAoE;IAC3D,KAAK,GAAG,MAAe,CAAC;IAEjC,YAAY,SAAkC,EAAE;QAC9C,IAAI,CAAC,MAAM,GAAG,sBAAsB,CAAC;YACnC,GAAG,MAAM;YACT,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,iBAAiB;SACjD,CAAC,CAAC;IACL,CAAC;IAED,sDAAsD;IACtD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,iFAAiF;IACjF,IAAI,OAAO;QACT,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;;;;;;OAOG;IACH,cAAc,CACZ,IAAY,EACZ,QAAiC,EAAE;QAEnC,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CACZ,MAAc,EACd,UAA2B,EAAE;QAE7B,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE;YACtC,MAAM;YACN,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,MAAM;SAC7B,CAA2B,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAAC,OAAe;QAChC,OAAO,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE;YAC3C,QAAQ,EAAE,OAAO;SAClB,CAA+B,CAAC;IACnC,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,oBAAoB,CACxB,MAAc,EACd,SAAsB,EAAE;QAExB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACvD,CAAC;CACF"}
@@ -0,0 +1,37 @@
1
+ import { type CelinaA2ASkill } from "./skills.js";
2
+ export interface CelinaAgentCardOptions {
3
+ /** Public MCP host base URL for JSON-RPC execution, e.g. https://mcp.usecelina.xyz */
4
+ mcpBaseUrl?: string;
5
+ /** @deprecated Use mcpBaseUrl. Kept for backward compatibility. */
6
+ baseUrl?: string;
7
+ /** Celina package version shown on the card */
8
+ version: string;
9
+ }
10
+ export interface CelinaA2AAgentCard {
11
+ name: string;
12
+ description: string;
13
+ protocolVersion: string;
14
+ version: string;
15
+ url: string;
16
+ skills: Array<{
17
+ id: string;
18
+ name: string;
19
+ description: string;
20
+ tags: string[];
21
+ examples: string[];
22
+ }>;
23
+ capabilities: {
24
+ streaming: boolean;
25
+ pushNotifications: boolean;
26
+ };
27
+ defaultInputModes: string[];
28
+ defaultOutputModes: string[];
29
+ additionalInterfaces: Array<{
30
+ url: string;
31
+ transport: string;
32
+ }>;
33
+ /** Celina-specific task payload mime type */
34
+ extensions?: Record<string, unknown>;
35
+ }
36
+ export declare function buildCelinaA2ASkills(): CelinaA2ASkill[];
37
+ export declare function buildCelinaAgentCard(options: CelinaAgentCardOptions): CelinaA2AAgentCard;
@@ -0,0 +1,46 @@
1
+ import { buildSkillsFromToolNames, CELINA_TOOL_MIME, } from "./skills.js";
2
+ import { getHostedMcpToolNames, TOOL_CATEGORY_BY_NAME, } from "../tools/website-sync.js";
3
+ const DEFAULT_DESCRIPTION = "Celo mainnet specialist agent — hosted read-only access to balances, DeFi quotes, governance, staking, NFTs, and Self Agent ID verification via structured tool calls.";
4
+ export function buildCelinaA2ASkills() {
5
+ return buildSkillsFromToolNames(getHostedMcpToolNames(), TOOL_CATEGORY_BY_NAME);
6
+ }
7
+ export function buildCelinaAgentCard(options) {
8
+ const mcpBase = (options.mcpBaseUrl ??
9
+ options.baseUrl ??
10
+ "https://mcp.usecelina.xyz").replace(/\/$/, "");
11
+ const jsonRpcUrl = `${mcpBase}/api/a2a`;
12
+ const skills = buildCelinaA2ASkills();
13
+ return {
14
+ name: "Celina",
15
+ description: DEFAULT_DESCRIPTION,
16
+ protocolVersion: "0.3.0",
17
+ version: options.version,
18
+ url: jsonRpcUrl,
19
+ skills: skills.map((skill) => ({
20
+ id: skill.id,
21
+ name: skill.name,
22
+ description: skill.description,
23
+ tags: skill.tags,
24
+ examples: skill.examples,
25
+ })),
26
+ capabilities: {
27
+ streaming: false,
28
+ pushNotifications: false,
29
+ },
30
+ defaultInputModes: ["text", "data"],
31
+ defaultOutputModes: ["text", "data"],
32
+ additionalInterfaces: [
33
+ { url: jsonRpcUrl, transport: "JSONRPC" },
34
+ ],
35
+ extensions: {
36
+ celina: {
37
+ toolPayloadMime: CELINA_TOOL_MIME,
38
+ toolPayloadSchema: {
39
+ tool: "string — hosted MCP tool name",
40
+ arguments: "object — snake_case tool arguments",
41
+ },
42
+ },
43
+ },
44
+ };
45
+ }
46
+ //# sourceMappingURL=agent-card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-card.js","sourceRoot":"","sources":["../../../src/a2a/agent-card.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,gBAAgB,GAEjB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAsClC,MAAM,mBAAmB,GACvB,wKAAwK,CAAC;AAE3K,MAAM,UAAU,oBAAoB;IAClC,OAAO,wBAAwB,CAAC,qBAAqB,EAAE,EAAE,qBAAqB,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAA+B;IAClE,MAAM,OAAO,GAAG,CACd,OAAO,CAAC,UAAU;QAClB,OAAO,CAAC,OAAO;QACf,2BAA2B,CAC5B,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrB,MAAM,UAAU,GAAG,GAAG,OAAO,UAAU,CAAC;IACxC,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC;IAEtC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,mBAAmB;QAChC,eAAe,EAAE,OAAO;QACxB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,GAAG,EAAE,UAAU;QACf,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC7B,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QACH,YAAY,EAAE;YACZ,SAAS,EAAE,KAAK;YAChB,iBAAiB,EAAE,KAAK;SACzB;QACD,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QACnC,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QACpC,oBAAoB,EAAE;YACpB,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE;SAC1C;QACD,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,eAAe,EAAE,gBAAgB;gBACjC,iBAAiB,EAAE;oBACjB,IAAI,EAAE,+BAA+B;oBACrC,SAAS,EAAE,oCAAoC;iBAChD;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { buildCelinaAgentCard, buildCelinaA2ASkills, type CelinaAgentCardOptions, type CelinaA2AAgentCard, } from "./agent-card.js";
2
+ export { buildSkillsFromToolNames, CATEGORY_TO_A2A_SKILL, CELINA_TOOL_MIME, type CelinaA2ASkill, type CelinaA2ASkillMeta, } from "./skills.js";
@@ -0,0 +1,3 @@
1
+ export { buildCelinaAgentCard, buildCelinaA2ASkills, } from "./agent-card.js";
2
+ export { buildSkillsFromToolNames, CATEGORY_TO_A2A_SKILL, CELINA_TOOL_MIME, } from "./skills.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/a2a/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GAGrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,GAGjB,MAAM,aAAa,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { WebsiteToolCategory } from "../tools/website-sync.js";
2
+ export declare const CELINA_TOOL_MIME = "application/vnd.celina.tool+json";
3
+ export interface CelinaA2ASkillMeta {
4
+ id: string;
5
+ name: string;
6
+ tags: string[];
7
+ }
8
+ /** Maps website tool categories to A2A skill metadata (hosted read profile). */
9
+ export declare const CATEGORY_TO_A2A_SKILL: Record<WebsiteToolCategory, CelinaA2ASkillMeta>;
10
+ export interface CelinaA2ASkill {
11
+ id: string;
12
+ name: string;
13
+ description: string;
14
+ tags: string[];
15
+ tools: string[];
16
+ examples: string[];
17
+ }
18
+ export declare function buildSkillsFromToolNames(toolNames: string[], categoryByName: Record<string, WebsiteToolCategory>): CelinaA2ASkill[];
@@ -0,0 +1,106 @@
1
+ export const CELINA_TOOL_MIME = "application/vnd.celina.tool+json";
2
+ /** Maps website tool categories to A2A skill metadata (hosted read profile). */
3
+ export const CATEGORY_TO_A2A_SKILL = {
4
+ Blockchain: {
5
+ id: "celo-blockchain",
6
+ name: "Celo blockchain reads",
7
+ tags: ["celo", "blockchain", "mainnet"],
8
+ },
9
+ Account: {
10
+ id: "celo-balances",
11
+ name: "Celo balances",
12
+ tags: ["celo", "balances", "account"],
13
+ },
14
+ Token: {
15
+ id: "celo-balances",
16
+ name: "Celo balances",
17
+ tags: ["celo", "balances", "token"],
18
+ },
19
+ Transaction: {
20
+ id: "celo-transaction",
21
+ name: "Celo transaction reads",
22
+ tags: ["celo", "transaction"],
23
+ },
24
+ "Mento FX": {
25
+ id: "mento-fx",
26
+ name: "Mento FX quotes",
27
+ tags: ["celo", "mento", "fx", "swap"],
28
+ },
29
+ Uniswap: {
30
+ id: "uniswap",
31
+ name: "Uniswap v4 quotes",
32
+ tags: ["celo", "uniswap", "swap", "amm"],
33
+ },
34
+ Wallet: {
35
+ id: "ens",
36
+ name: "ENS resolution",
37
+ tags: ["celo", "ens", "wallet"],
38
+ },
39
+ GoodDollar: {
40
+ id: "gooddollar",
41
+ name: "GoodDollar reads",
42
+ tags: ["celo", "gooddollar", "ubi", "reserve"],
43
+ },
44
+ Aave: {
45
+ id: "aave",
46
+ name: "Aave V3 reads",
47
+ tags: ["celo", "aave", "defi"],
48
+ },
49
+ Self: {
50
+ id: "self-verify",
51
+ name: "Self Agent ID verification",
52
+ tags: ["celo", "self", "identity", "agent"],
53
+ },
54
+ Governance: {
55
+ id: "governance",
56
+ name: "Celo governance",
57
+ tags: ["celo", "governance", "cgp"],
58
+ },
59
+ Staking: {
60
+ id: "staking",
61
+ name: "Celo staking",
62
+ tags: ["celo", "staking", "validators"],
63
+ },
64
+ NFT: {
65
+ id: "nft",
66
+ name: "NFT reads",
67
+ tags: ["celo", "nft", "erc721", "erc1155"],
68
+ },
69
+ Contract: {
70
+ id: "contract-read",
71
+ name: "Contract reads",
72
+ tags: ["celo", "contract", "abi"],
73
+ },
74
+ AgentKarma: {
75
+ id: "agentkarma-reputation",
76
+ name: "AgentKarma reputation reads",
77
+ tags: ["celo", "agentkarma", "reputation", "trust", "erc-8004"],
78
+ },
79
+ };
80
+ export function buildSkillsFromToolNames(toolNames, categoryByName) {
81
+ const bySkillId = new Map();
82
+ for (const toolName of toolNames) {
83
+ const category = categoryByName[toolName] ?? "Blockchain";
84
+ const meta = CATEGORY_TO_A2A_SKILL[category];
85
+ const existing = bySkillId.get(meta.id);
86
+ if (existing) {
87
+ existing.tools.push(toolName);
88
+ continue;
89
+ }
90
+ bySkillId.set(meta.id, {
91
+ id: meta.id,
92
+ name: meta.name,
93
+ description: `${meta.name} on Celo mainnet. Tools: ${toolName}.`,
94
+ tags: [...meta.tags],
95
+ tools: [toolName],
96
+ examples: [
97
+ `Send a DataPart (${CELINA_TOOL_MIME}) with {"tool":"${toolName}","arguments":{...}}.`,
98
+ ],
99
+ });
100
+ }
101
+ for (const skill of bySkillId.values()) {
102
+ skill.description = `${skill.name} on Celo mainnet. Allowed tools: ${skill.tools.join(", ")}.`;
103
+ }
104
+ return [...bySkillId.values()].sort((a, b) => a.id.localeCompare(b.id));
105
+ }
106
+ //# sourceMappingURL=skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../src/a2a/skills.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ export declare const aavePoolAbi: readonly [{
2
+ readonly type: "function";
3
+ readonly name: "supply";
4
+ readonly inputs: readonly [{
5
+ readonly name: "asset";
6
+ readonly type: "address";
7
+ }, {
8
+ readonly name: "amount";
9
+ readonly type: "uint256";
10
+ }, {
11
+ readonly name: "onBehalfOf";
12
+ readonly type: "address";
13
+ }, {
14
+ readonly name: "referralCode";
15
+ readonly type: "uint16";
16
+ }];
17
+ readonly outputs: readonly [];
18
+ readonly stateMutability: "nonpayable";
19
+ }, {
20
+ readonly type: "function";
21
+ readonly name: "withdraw";
22
+ readonly inputs: readonly [{
23
+ readonly name: "asset";
24
+ readonly type: "address";
25
+ }, {
26
+ readonly name: "amount";
27
+ readonly type: "uint256";
28
+ }, {
29
+ readonly name: "to";
30
+ readonly type: "address";
31
+ }];
32
+ readonly outputs: readonly [{
33
+ readonly name: "";
34
+ readonly type: "uint256";
35
+ }];
36
+ readonly stateMutability: "nonpayable";
37
+ }];
@@ -0,0 +1,26 @@
1
+ export const aavePoolAbi = [
2
+ {
3
+ type: "function",
4
+ name: "supply",
5
+ inputs: [
6
+ { name: "asset", type: "address" },
7
+ { name: "amount", type: "uint256" },
8
+ { name: "onBehalfOf", type: "address" },
9
+ { name: "referralCode", type: "uint16" },
10
+ ],
11
+ outputs: [],
12
+ stateMutability: "nonpayable",
13
+ },
14
+ {
15
+ type: "function",
16
+ name: "withdraw",
17
+ inputs: [
18
+ { name: "asset", type: "address" },
19
+ { name: "amount", type: "uint256" },
20
+ { name: "to", type: "address" },
21
+ ],
22
+ outputs: [{ name: "", type: "uint256" }],
23
+ stateMutability: "nonpayable",
24
+ },
25
+ ];
26
+ //# sourceMappingURL=aave-pool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aave-pool.js","sourceRoot":"","sources":["../../../src/abis/aave-pool.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;YACvC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE;SACzC;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YACnC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;SAChC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACxC,eAAe,EAAE,YAAY;KAC9B;CACO,CAAC"}
@@ -0,0 +1,13 @@
1
+ export declare const accountsAbi: readonly [{
2
+ readonly type: "function";
3
+ readonly name: "getName";
4
+ readonly inputs: readonly [{
5
+ readonly name: "account";
6
+ readonly type: "address";
7
+ }];
8
+ readonly outputs: readonly [{
9
+ readonly name: "";
10
+ readonly type: "string";
11
+ }];
12
+ readonly stateMutability: "view";
13
+ }];