intentkit 0.8.22.dev4__tar.gz → 0.8.22.dev6__tar.gz

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 (472) hide show
  1. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/PKG-INFO +1 -1
  2. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/__init__.py +1 -1
  3. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/config/config.py +0 -3
  4. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/agent.py +14 -3
  5. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/chat.py +49 -107
  6. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/carv/token_info_and_price.py +1 -1
  7. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/base.py +6 -2
  8. intentkit-0.8.22.dev6/intentkit/utils/__init__.py +5 -0
  9. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/utils/chain.py +198 -96
  10. intentkit-0.8.22.dev6/intentkit/utils/ens.py +135 -0
  11. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/pyproject.toml +1 -1
  12. intentkit-0.8.22.dev4/intentkit/utils/__init__.py +0 -1
  13. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/.gitignore +0 -0
  14. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/LICENSE +0 -0
  15. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/LICENSE +0 -0
  16. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/MANIFEST.in +0 -0
  17. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/README.md +0 -0
  18. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/abstracts/__init__.py +0 -0
  19. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/abstracts/agent.py +0 -0
  20. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/abstracts/api.py +0 -0
  21. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/abstracts/engine.py +0 -0
  22. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/abstracts/graph.py +0 -0
  23. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/abstracts/skill.py +0 -0
  24. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/abstracts/twitter.py +0 -0
  25. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/clients/__init__.py +0 -0
  26. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/clients/cdp.py +0 -0
  27. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/clients/twitter.py +0 -0
  28. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/clients/web3.py +0 -0
  29. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/config/__init__.py +0 -0
  30. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/__init__.py +0 -0
  31. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/agent.py +0 -0
  32. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/api.py +0 -0
  33. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/asset.py +0 -0
  34. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/chat.py +0 -0
  35. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/client.py +0 -0
  36. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/credit.py +0 -0
  37. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/engine.py +0 -0
  38. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/node.py +0 -0
  39. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/prompt.py +0 -0
  40. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/scheduler.py +0 -0
  41. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/core/statistics.py +0 -0
  42. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/agent_data.py +0 -0
  43. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/agent_public.json +0 -0
  44. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/agent_schema.json +0 -0
  45. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/app_setting.py +0 -0
  46. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/base.py +0 -0
  47. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/conversation.py +0 -0
  48. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/credit.py +0 -0
  49. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/db.py +0 -0
  50. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/db_mig.py +0 -0
  51. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/llm.csv +0 -0
  52. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/llm.py +0 -0
  53. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/redis.py +0 -0
  54. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/skill.py +0 -0
  55. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/skills.csv +0 -0
  56. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/models/user.py +0 -0
  57. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/__init__.py +0 -0
  58. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/acolyt/__init__.py +0 -0
  59. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/acolyt/acolyt.jpg +0 -0
  60. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/acolyt/ask.py +0 -0
  61. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/acolyt/base.py +0 -0
  62. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/acolyt/schema.json +0 -0
  63. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/aixbt/README.md +0 -0
  64. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/aixbt/__init__.py +0 -0
  65. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/aixbt/aixbt.jpg +0 -0
  66. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/aixbt/base.py +0 -0
  67. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/aixbt/projects.py +0 -0
  68. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/aixbt/schema.json +0 -0
  69. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/allora/__init__.py +0 -0
  70. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/allora/allora.jpeg +0 -0
  71. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/allora/base.py +0 -0
  72. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/allora/price.py +0 -0
  73. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/allora/schema.json +0 -0
  74. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/base.py +0 -0
  75. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/basename/__init__.py +0 -0
  76. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/basename/base.py +0 -0
  77. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/basename/basename.svg +0 -0
  78. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/basename/schema.json +0 -0
  79. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/carv/README.md +0 -0
  80. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/carv/__init__.py +0 -0
  81. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/carv/base.py +0 -0
  82. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/carv/carv.webp +0 -0
  83. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/carv/fetch_news.py +0 -0
  84. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/carv/onchain_query.py +0 -0
  85. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/carv/schema.json +0 -0
  86. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/README.md +0 -0
  87. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/__init__.py +0 -0
  88. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/base.py +0 -0
  89. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/casino.png +0 -0
  90. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/deck_draw.py +0 -0
  91. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/deck_shuffle.py +0 -0
  92. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/dice_roll.py +0 -0
  93. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/schema.json +0 -0
  94. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/casino/utils.py +0 -0
  95. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cdp/__init__.py +0 -0
  96. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cdp/base.py +0 -0
  97. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cdp/cdp.png +0 -0
  98. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cdp/schema.json +0 -0
  99. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/chainlist/README.md +0 -0
  100. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/chainlist/__init__.py +0 -0
  101. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/chainlist/base.py +0 -0
  102. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/chainlist/chain_lookup.py +0 -0
  103. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/chainlist/chainlist.png +0 -0
  104. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/chainlist/schema.json +0 -0
  105. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/common/__init__.py +0 -0
  106. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/common/base.py +0 -0
  107. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/common/common.jpg +0 -0
  108. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/common/current_time.py +0 -0
  109. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/common/schema.json +0 -0
  110. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/README.md +0 -0
  111. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/__init__.py +0 -0
  112. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/base.py +0 -0
  113. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/constants.py +0 -0
  114. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/cookiefun.png +0 -0
  115. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/get_account_details.py +0 -0
  116. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/get_account_feed.py +0 -0
  117. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/get_account_smart_followers.py +0 -0
  118. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/get_sectors.py +0 -0
  119. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/schema.json +0 -0
  120. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cookiefun/search_accounts.py +0 -0
  121. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/__init__.py +0 -0
  122. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/api.py +0 -0
  123. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/base.py +0 -0
  124. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/cryptocompare.png +0 -0
  125. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/fetch_news.py +0 -0
  126. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/fetch_price.py +0 -0
  127. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/fetch_top_exchanges.py +0 -0
  128. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/fetch_top_market_cap.py +0 -0
  129. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/fetch_top_volume.py +0 -0
  130. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/fetch_trading_signals.py +0 -0
  131. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptocompare/schema.json +0 -0
  132. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptopanic/__init__.py +0 -0
  133. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptopanic/base.py +0 -0
  134. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptopanic/cryptopanic.png +0 -0
  135. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptopanic/fetch_crypto_news.py +0 -0
  136. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptopanic/fetch_crypto_sentiment.py +0 -0
  137. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/cryptopanic/schema.json +0 -0
  138. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dapplooker/README.md +0 -0
  139. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dapplooker/__init__.py +0 -0
  140. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dapplooker/base.py +0 -0
  141. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dapplooker/dapplooker.jpg +0 -0
  142. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dapplooker/dapplooker_token_data.py +0 -0
  143. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dapplooker/schema.json +0 -0
  144. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/__init__.py +0 -0
  145. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/api.py +0 -0
  146. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/base.py +0 -0
  147. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/coins/__init__.py +0 -0
  148. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/coins/fetch_batch_historical_prices.py +0 -0
  149. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/coins/fetch_block.py +0 -0
  150. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/coins/fetch_current_prices.py +0 -0
  151. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/coins/fetch_first_price.py +0 -0
  152. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/coins/fetch_historical_prices.py +0 -0
  153. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/coins/fetch_price_chart.py +0 -0
  154. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/coins/fetch_price_percentage.py +0 -0
  155. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/config/__init__.py +0 -0
  156. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/config/chains.py +0 -0
  157. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/defillama.jpeg +0 -0
  158. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/fees/__init__.py +0 -0
  159. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/fees/fetch_fees_overview.py +0 -0
  160. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/schema.json +0 -0
  161. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/stablecoins/__init__.py +0 -0
  162. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/stablecoins/fetch_stablecoin_chains.py +0 -0
  163. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/stablecoins/fetch_stablecoin_charts.py +0 -0
  164. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/stablecoins/fetch_stablecoin_prices.py +0 -0
  165. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/stablecoins/fetch_stablecoins.py +0 -0
  166. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tests/__init__.py +0 -0
  167. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tests/api_integration.test.py +0 -0
  168. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tests/api_unit.test.py +0 -0
  169. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tvl/__init__.py +0 -0
  170. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tvl/fetch_chain_historical_tvl.py +0 -0
  171. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tvl/fetch_chains.py +0 -0
  172. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tvl/fetch_historical_tvl.py +0 -0
  173. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tvl/fetch_protocol.py +0 -0
  174. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tvl/fetch_protocol_current_tvl.py +0 -0
  175. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/tvl/fetch_protocols.py +0 -0
  176. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/volumes/__init__.py +0 -0
  177. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/volumes/fetch_dex_overview.py +0 -0
  178. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/volumes/fetch_dex_summary.py +0 -0
  179. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/volumes/fetch_options_overview.py +0 -0
  180. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/yields/__init__.py +0 -0
  181. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/yields/fetch_pool_chart.py +0 -0
  182. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/defillama/yields/fetch_pools.py +0 -0
  183. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/README.md +0 -0
  184. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/__init__.py +0 -0
  185. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/base.py +0 -0
  186. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/dexscreener.png +0 -0
  187. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/get_pair_info.py +0 -0
  188. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/get_token_pairs.py +0 -0
  189. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/get_tokens_info.py +0 -0
  190. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/model/__init__.py +0 -0
  191. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/model/search_token_response.py +0 -0
  192. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/schema.json +0 -0
  193. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/search_token.py +0 -0
  194. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dexscreener/utils.py +0 -0
  195. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dune_analytics/__init__.py +0 -0
  196. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dune_analytics/base.py +0 -0
  197. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dune_analytics/dune.png +0 -0
  198. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dune_analytics/fetch_kol_buys.py +0 -0
  199. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dune_analytics/fetch_nation_metrics.py +0 -0
  200. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/dune_analytics/schema.json +0 -0
  201. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/README.md +0 -0
  202. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/__init__.py +0 -0
  203. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/base.py +0 -0
  204. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/elfa.jpg +0 -0
  205. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/mention.py +0 -0
  206. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/schema.json +0 -0
  207. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/stats.py +0 -0
  208. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/tokens.py +0 -0
  209. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/elfa/utils.py +0 -0
  210. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/README.md +0 -0
  211. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/__init__.py +0 -0
  212. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/abi/__init__.py +0 -0
  213. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/abi/approval.py +0 -0
  214. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/abi/erc20.py +0 -0
  215. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/abi/route.py +0 -0
  216. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/best_yield.py +0 -0
  217. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/enso.jpg +0 -0
  218. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/networks.py +0 -0
  219. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/prices.py +0 -0
  220. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/route.py +0 -0
  221. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/schema.json +0 -0
  222. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/tokens.py +0 -0
  223. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/enso/wallet.py +0 -0
  224. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/erc20/__init__.py +0 -0
  225. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/erc20/base.py +0 -0
  226. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/erc20/erc20.svg +0 -0
  227. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/erc20/schema.json +0 -0
  228. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/erc721/__init__.py +0 -0
  229. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/erc721/base.py +0 -0
  230. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/erc721/erc721.svg +0 -0
  231. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/erc721/schema.json +0 -0
  232. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/README.md +0 -0
  233. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/__init__.py +0 -0
  234. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/base.py +0 -0
  235. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/clear.py +0 -0
  236. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/crawl.py +0 -0
  237. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/firecrawl.png +0 -0
  238. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/query.py +0 -0
  239. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/schema.json +0 -0
  240. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/scrape.py +0 -0
  241. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/firecrawl/utils.py +0 -0
  242. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/github/README.md +0 -0
  243. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/github/__init__.py +0 -0
  244. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/github/base.py +0 -0
  245. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/github/github.jpg +0 -0
  246. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/github/github_search.py +0 -0
  247. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/github/schema.json +0 -0
  248. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/__init__.py +0 -0
  249. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/base.py +0 -0
  250. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/heurist.png +0 -0
  251. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/image_generation_animagine_xl.py +0 -0
  252. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/image_generation_arthemy_comics.py +0 -0
  253. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/image_generation_arthemy_real.py +0 -0
  254. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/image_generation_braindance.py +0 -0
  255. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/image_generation_cyber_realistic_xl.py +0 -0
  256. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/image_generation_flux_1_dev.py +0 -0
  257. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/image_generation_sdxl.py +0 -0
  258. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/heurist/schema.json +0 -0
  259. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/http/README.md +0 -0
  260. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/http/__init__.py +0 -0
  261. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/http/base.py +0 -0
  262. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/http/get.py +0 -0
  263. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/http/http.svg +0 -0
  264. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/http/post.py +0 -0
  265. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/http/put.py +0 -0
  266. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/http/schema.json +0 -0
  267. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/lifi/README.md +0 -0
  268. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/lifi/__init__.py +0 -0
  269. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/lifi/base.py +0 -0
  270. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/lifi/lifi.png +0 -0
  271. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/lifi/schema.json +0 -0
  272. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/lifi/token_execute.py +0 -0
  273. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/lifi/token_quote.py +0 -0
  274. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/lifi/utils.py +0 -0
  275. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/README.md +0 -0
  276. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/__init__.py +0 -0
  277. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/api.py +0 -0
  278. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/base.py +0 -0
  279. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/fetch_chain_portfolio.py +0 -0
  280. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/fetch_nft_portfolio.py +0 -0
  281. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/fetch_solana_portfolio.py +0 -0
  282. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/fetch_wallet_portfolio.py +0 -0
  283. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/moralis.png +0 -0
  284. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/moralis/schema.json +0 -0
  285. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/morpho/__init__.py +0 -0
  286. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/morpho/base.py +0 -0
  287. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/morpho/morpho.svg +0 -0
  288. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/morpho/schema.json +0 -0
  289. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/nation/__init__.py +0 -0
  290. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/nation/base.py +0 -0
  291. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/nation/nation.png +0 -0
  292. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/nation/nft_check.py +0 -0
  293. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/nation/schema.json +0 -0
  294. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/onchain.py +0 -0
  295. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/__init__.py +0 -0
  296. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/base.py +0 -0
  297. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/dalle_image_generation.py +0 -0
  298. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/gpt_avatar_generator.py +0 -0
  299. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/gpt_image_generation.py +0 -0
  300. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/gpt_image_mini_generator.py +0 -0
  301. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/gpt_image_to_image.py +0 -0
  302. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/image_to_text.py +0 -0
  303. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/openai.png +0 -0
  304. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/openai/schema.json +0 -0
  305. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/README.md +0 -0
  306. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/__init__.py +0 -0
  307. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/base.py +0 -0
  308. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/constants.py +0 -0
  309. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/moralis.png +0 -0
  310. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/schema.json +0 -0
  311. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/token_balances.py +0 -0
  312. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_approvals.py +0 -0
  313. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_defi_positions.py +0 -0
  314. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_history.py +0 -0
  315. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_net_worth.py +0 -0
  316. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_nfts.py +0 -0
  317. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_profitability.py +0 -0
  318. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_profitability_summary.py +0 -0
  319. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_stats.py +0 -0
  320. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/portfolio/wallet_swaps.py +0 -0
  321. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/pyth/__init__.py +0 -0
  322. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/pyth/base.py +0 -0
  323. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/pyth/pyth.svg +0 -0
  324. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/pyth/schema.json +0 -0
  325. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/skills.toml +0 -0
  326. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/slack/__init__.py +0 -0
  327. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/slack/base.py +0 -0
  328. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/slack/get_channel.py +0 -0
  329. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/slack/get_message.py +0 -0
  330. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/slack/schedule_message.py +0 -0
  331. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/slack/schema.json +0 -0
  332. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/slack/send_message.py +0 -0
  333. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/slack/slack.jpg +0 -0
  334. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/__init__.py +0 -0
  335. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/base.py +0 -0
  336. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/delete_data.py +0 -0
  337. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/fetch_data.py +0 -0
  338. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/insert_data.py +0 -0
  339. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/invoke_function.py +0 -0
  340. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/schema.json +0 -0
  341. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/supabase.svg +0 -0
  342. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/update_data.py +0 -0
  343. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/supabase/upsert_data.py +0 -0
  344. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/superfluid/__init__.py +0 -0
  345. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/superfluid/base.py +0 -0
  346. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/superfluid/schema.json +0 -0
  347. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/superfluid/superfluid.svg +0 -0
  348. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/__init__.py +0 -0
  349. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/add_autonomous_task.py +0 -0
  350. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/base.py +0 -0
  351. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/delete_autonomous_task.py +0 -0
  352. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/edit_autonomous_task.py +0 -0
  353. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/list_autonomous_tasks.py +0 -0
  354. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/read_agent_api_key.py +0 -0
  355. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/regenerate_agent_api_key.py +0 -0
  356. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/schema.json +0 -0
  357. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/system/system.svg +0 -0
  358. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/tavily/README.md +0 -0
  359. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/tavily/__init__.py +0 -0
  360. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/tavily/base.py +0 -0
  361. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/tavily/schema.json +0 -0
  362. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/tavily/tavily.jpg +0 -0
  363. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/tavily/tavily_extract.py +0 -0
  364. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/tavily/tavily_search.py +0 -0
  365. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/README.md +0 -0
  366. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/__init__.py +0 -0
  367. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/base.py +0 -0
  368. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/constants.py +0 -0
  369. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/erc20_transfers.py +0 -0
  370. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/moralis.png +0 -0
  371. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/schema.json +0 -0
  372. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/token_analytics.py +0 -0
  373. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/token_price.py +0 -0
  374. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/token/token_search.py +0 -0
  375. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/__init__.py +0 -0
  376. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/base.py +0 -0
  377. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/follow_user.py +0 -0
  378. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/get_mentions.py +0 -0
  379. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/get_timeline.py +0 -0
  380. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/get_user_by_username.py +0 -0
  381. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/get_user_tweets.py +0 -0
  382. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/like_tweet.py +0 -0
  383. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/post_tweet.py +0 -0
  384. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/reply_tweet.py +0 -0
  385. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/retweet.py +0 -0
  386. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/schema.json +0 -0
  387. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/search_tweets.py +0 -0
  388. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/twitter/twitter.png +0 -0
  389. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/unrealspeech/__init__.py +0 -0
  390. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/unrealspeech/base.py +0 -0
  391. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/unrealspeech/schema.json +0 -0
  392. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/unrealspeech/text_to_speech.py +0 -0
  393. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/unrealspeech/unrealspeech.jpg +0 -0
  394. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_audio/__init__.py +0 -0
  395. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_audio/base.py +0 -0
  396. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_audio/input.py +0 -0
  397. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_audio/schema.json +0 -0
  398. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_audio/venice_audio.py +0 -0
  399. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_audio/venice_logo.jpg +0 -0
  400. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/README.md +0 -0
  401. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/__init__.py +0 -0
  402. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/api.py +0 -0
  403. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/base.py +0 -0
  404. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/config.py +0 -0
  405. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_enhance/README.md +0 -0
  406. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_enhance/__init__.py +0 -0
  407. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_enhance/image_enhance.py +0 -0
  408. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_enhance/image_enhance_base.py +0 -0
  409. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_enhance/image_enhance_input.py +0 -0
  410. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/README.md +0 -0
  411. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/__init__.py +0 -0
  412. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_base.py +0 -0
  413. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_fluently_xl.py +0 -0
  414. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_flux_dev.py +0 -0
  415. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_flux_dev_uncensored.py +0 -0
  416. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_input.py +0 -0
  417. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_lustify_sdxl.py +0 -0
  418. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_pony_realism.py +0 -0
  419. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_stable_diffusion_3_5.py +0 -0
  420. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_generation/image_generation_venice_sd35.py +0 -0
  421. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_upscale/README.md +0 -0
  422. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_upscale/__init__.py +0 -0
  423. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_upscale/image_upscale.py +0 -0
  424. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_upscale/image_upscale_base.py +0 -0
  425. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_upscale/image_upscale_input.py +0 -0
  426. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_vision/README.md +0 -0
  427. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_vision/__init__.py +0 -0
  428. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_vision/image_vision.py +0 -0
  429. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_vision/image_vision_base.py +0 -0
  430. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/image_vision/image_vision_input.py +0 -0
  431. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/schema.json +0 -0
  432. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/utils.py +0 -0
  433. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/venice_image/venice_image.jpg +0 -0
  434. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/README.md +0 -0
  435. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/__init__.py +0 -0
  436. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/base.py +0 -0
  437. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/document_indexer.py +0 -0
  438. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/langchain.png +0 -0
  439. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/schema.json +0 -0
  440. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/scrape_and_index.py +0 -0
  441. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/utils.py +0 -0
  442. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/web_scraper/website_indexer.py +0 -0
  443. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/weth/__init__.py +0 -0
  444. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/weth/base.py +0 -0
  445. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/weth/schema.json +0 -0
  446. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/weth/weth.svg +0 -0
  447. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/wow/__init__.py +0 -0
  448. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/wow/base.py +0 -0
  449. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/wow/schema.json +0 -0
  450. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/wow/wow.svg +0 -0
  451. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/x402/__init__.py +0 -0
  452. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/x402/ask_agent.py +0 -0
  453. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/x402/base.py +0 -0
  454. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/x402/http_request.py +0 -0
  455. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/x402/schema.json +0 -0
  456. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/x402/x402.webp +0 -0
  457. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/xmtp/README.md +0 -0
  458. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/xmtp/__init__.py +0 -0
  459. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/xmtp/base.py +0 -0
  460. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/xmtp/price.py +0 -0
  461. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/xmtp/schema.json +0 -0
  462. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/xmtp/swap.py +0 -0
  463. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/xmtp/transfer.py +0 -0
  464. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/skills/xmtp/xmtp.png +0 -0
  465. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/utils/error.py +0 -0
  466. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/utils/logging.py +0 -0
  467. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/utils/random.py +0 -0
  468. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/utils/s3.py +0 -0
  469. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/utils/schema.py +0 -0
  470. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/utils/slack_alert.py +0 -0
  471. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/utils/tx.py +0 -0
  472. {intentkit-0.8.22.dev4 → intentkit-0.8.22.dev6}/intentkit/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: intentkit
3
- Version: 0.8.22.dev4
3
+ Version: 0.8.22.dev6
4
4
  Summary: Intent-based AI Agent Platform - Core Package
5
5
  Project-URL: Homepage, https://github.com/crestalnetwork/intentkit
6
6
  Project-URL: Repository, https://github.com/crestalnetwork/intentkit
@@ -3,7 +3,7 @@
3
3
  A powerful platform for building AI agents with blockchain and cryptocurrency capabilities.
4
4
  """
5
5
 
6
- __version__ = "0.8.22-dev4"
6
+ __version__ = "0.8.22-dev6"
7
7
  __author__ = "Ruihua"
8
8
  __email__ = "ruihua@crestal.network"
9
9
 
@@ -151,9 +151,6 @@ class Config:
151
151
  )
152
152
  if hasattr(self, "chain_provider"):
153
153
  self.chain_provider.init_chain_configs()
154
- self.rpc_networks = self.load(
155
- "RPC_NETWORKS", "base-mainnet,base-sepolia,ethereum-sepolia,solana-mainnet"
156
- )
157
154
 
158
155
  # Nation
159
156
  self.nation_api_key = self.load("NATION_API_KEY")
@@ -38,11 +38,18 @@ from intentkit.models.credit import CreditAccount
38
38
  from intentkit.models.db import get_session
39
39
  from intentkit.models.llm import LLMModelInfo, LLMProvider
40
40
  from intentkit.models.skill import Skill
41
+ from intentkit.utils.ens import resolve_ens_to_address
41
42
  from intentkit.utils.error import IntentKitAPIError
42
43
 
43
44
  logger = logging.getLogger(__name__)
44
45
 
45
46
 
47
+ ENS_NAME_PATTERN = re.compile(
48
+ r"^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+(?:eth|base\.eth)$",
49
+ re.IGNORECASE,
50
+ )
51
+
52
+
46
53
  class AgentAutonomous(BaseModel):
47
54
  """Autonomous agent configuration."""
48
55
 
@@ -1337,16 +1344,20 @@ class Agent(AgentCreate, AgentPublicInfo):
1337
1344
  Returns:
1338
1345
  Agent if found, None otherwise
1339
1346
  """
1347
+ query_id = agent_id
1348
+ if ENS_NAME_PATTERN.fullmatch(agent_id):
1349
+ query_id = await resolve_ens_to_address(agent_id)
1350
+
1340
1351
  async with get_session() as db:
1341
1352
  agent = None
1342
1353
 
1343
1354
  # Try to get by ID if length <= 20
1344
- if len(agent_id) <= 20:
1345
- agent = await Agent.get(agent_id)
1355
+ if len(query_id) <= 20 or query_id.startswith("0x"):
1356
+ agent = await Agent.get(query_id)
1346
1357
 
1347
1358
  # If not found, try to get by slug
1348
1359
  if agent is None:
1349
- slug_stmt = select(AgentTable).where(AgentTable.slug == agent_id)
1360
+ slug_stmt = select(AgentTable).where(AgentTable.slug == query_id)
1350
1361
  agent_row = await db.scalar(slug_stmt)
1351
1362
  if agent_row is not None:
1352
1363
  agent = Agent.model_validate(agent_row)
@@ -3,7 +3,7 @@ from __future__ import annotations
3
3
  from datetime import UTC, datetime
4
4
  from decimal import Decimal
5
5
  from enum import Enum
6
- from typing import Annotated, NotRequired, TypedDict
6
+ from typing import Annotated, ClassVar, NotRequired, TypedDict, final
7
7
 
8
8
  from epyxid import XID
9
9
  from pydantic import BaseModel, ConfigDict, Field
@@ -23,6 +23,7 @@ from sqlalchemy import (
23
23
  )
24
24
  from sqlalchemy.dialects.postgresql import JSON, JSONB
25
25
  from sqlalchemy.ext.asyncio import AsyncSession
26
+ from sqlalchemy.orm import Mapped, mapped_column
26
27
 
27
28
  from intentkit.models.app_setting import AppSetting, SystemMessageType
28
29
  from intentkit.models.base import Base
@@ -77,7 +78,7 @@ class ChatMessageAttachment(TypedDict):
77
78
  ),
78
79
  ]
79
80
  json: Annotated[
80
- dict | None,
81
+ dict[str, object] | None,
81
82
  Field(
82
83
  None,
83
84
  description="JSON data of the attachment",
@@ -90,7 +91,7 @@ class ChatMessageSkillCall(TypedDict):
90
91
 
91
92
  id: NotRequired[str]
92
93
  name: str
93
- parameters: dict
94
+ parameters: dict[str, object]
94
95
  success: bool
95
96
  response: NotRequired[
96
97
  str
@@ -167,126 +168,67 @@ class ChatMessageRequest(BaseModel):
167
168
  ),
168
169
  ]
169
170
 
170
- model_config = ConfigDict(
171
+ model_config: ClassVar[ConfigDict] = ConfigDict(
171
172
  use_enum_values=True,
172
173
  json_schema_extra={
173
174
  "example": {
174
175
  "chat_id": "chat-123",
175
176
  "app_id": "app-789",
176
177
  "user_id": "user-456",
177
- "message": "Hello, how can you help me today?",
178
- "search_mode": True,
178
+ "message": "Hello, what can you do?",
179
+ "search_mode": False,
179
180
  "super_mode": False,
180
- "attachments": [
181
- {
182
- "type": "link",
183
- "url": "https://example.com",
184
- }
185
- ],
186
181
  }
187
182
  },
188
183
  )
189
184
 
190
185
 
186
+ @final
191
187
  class ChatMessageTable(Base):
192
188
  """Chat message database table model."""
193
189
 
194
190
  __tablename__ = "chat_messages"
195
- __table_args__ = (
191
+ __table_args__ = ( # pyright: ignore[reportAny]
196
192
  Index("ix_chat_messages_chat_id", "chat_id"),
197
193
  Index("ix_chat_messages_agent_id_author_type", "agent_id", "author_type"),
198
194
  Index("ix_chat_messages_agent_id_chat_id", "agent_id", "chat_id"),
199
195
  )
200
196
 
201
- id = Column(
202
- String,
203
- primary_key=True,
204
- )
205
- agent_id = Column(
206
- String,
207
- nullable=False,
208
- )
209
- chat_id = Column(
210
- String,
211
- nullable=False,
212
- )
213
- user_id = Column(
214
- String,
215
- nullable=True,
216
- )
217
- author_id = Column(
218
- String,
219
- nullable=False,
220
- )
221
- author_type = Column(
222
- String,
223
- nullable=False,
224
- )
225
- model = Column(
226
- String,
227
- nullable=True,
228
- )
229
- thread_type = Column(
230
- String,
231
- nullable=True,
232
- )
233
- reply_to = Column(
234
- String,
235
- nullable=True,
236
- )
237
- message = Column(
238
- String,
239
- nullable=False,
240
- )
241
- attachments = Column(
197
+ id: Mapped[str] = mapped_column(String, primary_key=True)
198
+ agent_id: Mapped[str] = mapped_column(String, nullable=False)
199
+ chat_id: Mapped[str] = mapped_column(String, nullable=False)
200
+ user_id: Mapped[str | None] = mapped_column(String, nullable=True)
201
+ author_id: Mapped[str] = mapped_column(String, nullable=False)
202
+ author_type: Mapped[str] = mapped_column(String, nullable=False)
203
+ model: Mapped[str | None] = mapped_column(String, nullable=True)
204
+ thread_type: Mapped[AuthorType | None] = mapped_column(String, nullable=True)
205
+ reply_to: Mapped[str | None] = mapped_column(String, nullable=True)
206
+ message: Mapped[str] = mapped_column(String, nullable=False)
207
+ attachments: Mapped[list[ChatMessageAttachment] | None] = mapped_column(
242
208
  JSON().with_variant(JSONB(), "postgresql"),
243
209
  nullable=True,
244
210
  )
245
- skill_calls = Column(
211
+ skill_calls: Mapped[list[ChatMessageSkillCall] | None] = mapped_column(
246
212
  JSON().with_variant(JSONB(), "postgresql"),
247
213
  nullable=True,
248
214
  )
249
- input_tokens = Column(
250
- Integer,
251
- default=0,
252
- )
253
- output_tokens = Column(
254
- Integer,
255
- default=0,
256
- )
257
- time_cost = Column(
258
- Float,
259
- default=0,
260
- )
261
- credit_event_id = Column(
262
- String,
263
- nullable=True,
264
- )
265
- credit_cost = Column(
215
+ input_tokens: Mapped[int] = mapped_column(Integer, default=0)
216
+ output_tokens: Mapped[int] = mapped_column(Integer, default=0)
217
+ time_cost: Mapped[float] = mapped_column(Float, default=0)
218
+ credit_event_id: Mapped[str | None] = mapped_column(String, nullable=True)
219
+ credit_cost: Mapped[Decimal | None] = mapped_column(
266
220
  Numeric(22, 4),
267
221
  nullable=True,
268
222
  )
269
- cold_start_cost = Column(
270
- Float,
271
- default=0,
272
- )
273
- app_id = Column(
274
- String,
275
- nullable=True,
276
- )
277
- search_mode = Column(
278
- Boolean,
279
- nullable=True,
280
- )
281
- super_mode = Column(
282
- Boolean,
283
- nullable=True,
284
- )
285
- error_type = Column(
223
+ cold_start_cost: Mapped[float] = mapped_column(Float, default=0)
224
+ app_id: Mapped[str | None] = mapped_column(String, nullable=True)
225
+ search_mode: Mapped[bool | None] = mapped_column(Boolean, nullable=True)
226
+ super_mode: Mapped[bool | None] = mapped_column(Boolean, nullable=True)
227
+ error_type: Mapped[SystemMessageType | None] = mapped_column(
286
228
  String,
287
229
  nullable=True,
288
230
  )
289
- created_at = Column(
231
+ created_at: Mapped[datetime] = mapped_column(
290
232
  DateTime(timezone=True),
291
233
  nullable=False,
292
234
  server_default=func.now(),
@@ -296,7 +238,7 @@ class ChatMessageTable(Base):
296
238
  class ChatMessageCreate(BaseModel):
297
239
  """Base model for creating chat messages with fields needed for creation."""
298
240
 
299
- model_config = ConfigDict(
241
+ model_config: ClassVar[ConfigDict] = ConfigDict(
300
242
  use_enum_values=True,
301
243
  from_attributes=True,
302
244
  )
@@ -320,61 +262,61 @@ class ChatMessageCreate(BaseModel):
320
262
  author_type: Annotated[AuthorType, Field(description="Type of the message author")]
321
263
  model: Annotated[
322
264
  str | None, Field(None, description="LLM model used if applicable")
323
- ]
265
+ ] = None
324
266
  thread_type: Annotated[
325
267
  AuthorType | None,
326
268
  Field(None, description="Author Type of the message thread start"),
327
- ]
269
+ ] = None
328
270
  reply_to: Annotated[
329
271
  str | None,
330
272
  Field(None, description="ID of the message this message is a reply to"),
331
- ]
273
+ ] = None
332
274
  message: Annotated[str, Field(description="Content of the message")]
333
275
  attachments: Annotated[
334
276
  list[ChatMessageAttachment] | None,
335
277
  Field(None, description="List of attachments in the message"),
336
- ]
278
+ ] = None
337
279
  skill_calls: Annotated[
338
280
  list[ChatMessageSkillCall] | None,
339
281
  Field(None, description="Skill call details"),
340
- ]
282
+ ] = None
341
283
  input_tokens: Annotated[
342
284
  int, Field(0, description="Number of tokens in the input message")
343
- ]
285
+ ] = 0
344
286
  output_tokens: Annotated[
345
287
  int, Field(0, description="Number of tokens in the output message")
346
- ]
288
+ ] = 0
347
289
  time_cost: Annotated[
348
290
  float, Field(0.0, description="Time cost for the message in seconds")
349
- ]
291
+ ] = 0.0
350
292
  credit_event_id: Annotated[
351
293
  str | None,
352
294
  Field(None, description="ID of the credit event for this message"),
353
- ]
295
+ ] = None
354
296
  credit_cost: Annotated[
355
297
  Decimal | None,
356
298
  Field(None, description="Credit cost for the message in credits"),
357
- ]
299
+ ] = None
358
300
  cold_start_cost: Annotated[
359
301
  float,
360
302
  Field(0.0, description="Cost for the cold start of the message in seconds"),
361
- ]
303
+ ] = 0.0
362
304
  app_id: Annotated[
363
305
  str | None,
364
306
  Field(None, description="Optional application identifier"),
365
- ]
307
+ ] = None
366
308
  search_mode: Annotated[
367
309
  bool | None,
368
310
  Field(None, description="Optional flag to enable search mode"),
369
- ]
311
+ ] = None
370
312
  super_mode: Annotated[
371
313
  bool | None,
372
314
  Field(None, description="Optional flag to enable super mode"),
373
- ]
315
+ ] = None
374
316
  error_type: Annotated[
375
317
  SystemMessageType | None,
376
318
  Field(None, description="Optional error type, used when author_type is system"),
377
- ]
319
+ ] = None
378
320
 
379
321
  async def save_in_session(self, db: AsyncSession) -> "ChatMessage":
380
322
  """Save the chat message to the database.
@@ -438,7 +380,7 @@ class ChatMessageCreate(BaseModel):
438
380
  class ChatMessage(ChatMessageCreate):
439
381
  """Chat message model with all fields including server-generated ones."""
440
382
 
441
- model_config = ConfigDict(
383
+ model_config: ClassVar[ConfigDict] = ConfigDict(
442
384
  use_enum_values=True,
443
385
  json_encoders={
444
386
  datetime: lambda v: v.isoformat(timespec="milliseconds"),
@@ -26,7 +26,7 @@ class TokenInfoAndPriceTool(CarvBaseTool):
26
26
  Fetches detailed information and the current USD price of a cryptocurrency token from the CARV API,
27
27
  given its ticker symbol (e.g., 'eth', 'btc', 'aave').
28
28
  Returns metadata including the token's name, symbol, platform, category tags, and contract addresses
29
- Useful for understanding a token's identity, ecosystem, and market valu
29
+ Useful for understanding a token's identity, ecosystem, and market value
30
30
  Use this tool when you need comprehensive token data and live pricing from CARV
31
31
  """
32
32
 
@@ -8,7 +8,11 @@ from intentkit.abstracts.graph import AgentContext
8
8
  from intentkit.clients import get_wallet_provider as get_agent_wallet_provider
9
9
  from intentkit.config.config import config
10
10
  from intentkit.skills.base import IntentKitSkill
11
- from intentkit.utils.chain import ChainProvider, Network, network_to_id
11
+ from intentkit.utils.chain import (
12
+ ChainProvider,
13
+ network_to_id,
14
+ resolve_quicknode_network,
15
+ )
12
16
 
13
17
  base_url = "https://api.enso.finance"
14
18
 
@@ -65,7 +69,7 @@ class EnsoBaseTool(IntentKitSkill):
65
69
 
66
70
  agent = context.agent
67
71
  try:
68
- network = Network(agent.network_id)
72
+ network = resolve_quicknode_network(agent.network_id)
69
73
  except ValueError as exc: # pragma: no cover - defensive
70
74
  raise ToolException(
71
75
  f"Unsupported network configured for agent: {agent.network_id}"
@@ -0,0 +1,5 @@
1
+ """Utility exports for IntentKit."""
2
+
3
+ from intentkit.utils.ens import resolve_ens_to_address
4
+
5
+ __all__ = ["resolve_ens_to_address"]