intentkit 0.7.1.dev1__tar.gz → 0.7.1.dev3__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.

Potentially problematic release.


This version of intentkit might be problematic. Click here for more details.

Files changed (426) hide show
  1. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/PKG-INFO +1 -1
  2. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/__init__.py +1 -1
  3. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/credit.py +1 -1
  4. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/credit.py +210 -7
  5. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/db.py +17 -0
  6. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/llm.py +5 -4
  7. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/user.py +8 -3
  8. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/pyproject.toml +1 -1
  9. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/.gitignore +0 -0
  10. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/LICENSE +0 -0
  11. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/MANIFEST.in +0 -0
  12. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/README.md +0 -0
  13. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/abstracts/__init__.py +0 -0
  14. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/abstracts/agent.py +0 -0
  15. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/abstracts/api.py +0 -0
  16. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/abstracts/engine.py +0 -0
  17. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/abstracts/graph.py +0 -0
  18. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/abstracts/skill.py +0 -0
  19. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/abstracts/twitter.py +0 -0
  20. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/clients/__init__.py +0 -0
  21. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/clients/cdp.py +0 -0
  22. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/clients/twitter.py +0 -0
  23. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/clients/web3.py +0 -0
  24. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/config/__init__.py +0 -0
  25. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/config/config.py +0 -0
  26. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/__init__.py +0 -0
  27. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/agent.py +0 -0
  28. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/api.py +0 -0
  29. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/chat.py +0 -0
  30. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/client.py +0 -0
  31. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/engine.py +0 -0
  32. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/node.py +0 -0
  33. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/prompt.py +0 -0
  34. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/core/skill.py +0 -0
  35. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/agent.py +0 -0
  36. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/agent_data.py +0 -0
  37. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/agent_schema.json +0 -0
  38. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/app_setting.py +0 -0
  39. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/base.py +0 -0
  40. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/chat.py +0 -0
  41. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/conversation.py +0 -0
  42. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/db_mig.py +0 -0
  43. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/generator.py +0 -0
  44. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/redis.py +0 -0
  45. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/models/skill.py +0 -0
  46. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/__init__.py +0 -0
  47. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/acolyt/__init__.py +0 -0
  48. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/acolyt/acolyt.jpg +0 -0
  49. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/acolyt/ask.py +0 -0
  50. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/acolyt/base.py +0 -0
  51. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/acolyt/schema.json +0 -0
  52. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/aixbt/README.md +0 -0
  53. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/aixbt/__init__.py +0 -0
  54. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/aixbt/aixbt.jpg +0 -0
  55. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/aixbt/base.py +0 -0
  56. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/aixbt/projects.py +0 -0
  57. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/aixbt/schema.json +0 -0
  58. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/allora/__init__.py +0 -0
  59. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/allora/allora.jpeg +0 -0
  60. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/allora/base.py +0 -0
  61. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/allora/price.py +0 -0
  62. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/allora/schema.json +0 -0
  63. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/base.py +0 -0
  64. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/carv/README.md +0 -0
  65. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/carv/__init__.py +0 -0
  66. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/carv/base.py +0 -0
  67. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/carv/carv.webp +0 -0
  68. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/carv/fetch_news.py +0 -0
  69. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/carv/onchain_query.py +0 -0
  70. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/carv/schema.json +0 -0
  71. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/carv/token_info_and_price.py +0 -0
  72. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/README.md +0 -0
  73. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/__init__.py +0 -0
  74. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/base.py +0 -0
  75. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/casino.png +0 -0
  76. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/deck_draw.py +0 -0
  77. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/deck_shuffle.py +0 -0
  78. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/dice_roll.py +0 -0
  79. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/schema.json +0 -0
  80. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/casino/utils.py +0 -0
  81. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cdp/__init__.py +0 -0
  82. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cdp/base.py +0 -0
  83. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cdp/cdp.png +0 -0
  84. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cdp/get_balance.py +0 -0
  85. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cdp/schema.json +0 -0
  86. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cdp/swap.py +0 -0
  87. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/chainlist/README.md +0 -0
  88. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/chainlist/__init__.py +0 -0
  89. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/chainlist/base.py +0 -0
  90. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/chainlist/chain_lookup.py +0 -0
  91. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/chainlist/chainlist.png +0 -0
  92. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/chainlist/schema.json +0 -0
  93. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/common/__init__.py +0 -0
  94. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/common/base.py +0 -0
  95. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/common/common.jpg +0 -0
  96. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/common/current_time.py +0 -0
  97. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/common/schema.json +0 -0
  98. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/README.md +0 -0
  99. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/__init__.py +0 -0
  100. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/base.py +0 -0
  101. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/constants.py +0 -0
  102. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/cookiefun.png +0 -0
  103. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/get_account_details.py +0 -0
  104. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/get_account_feed.py +0 -0
  105. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/get_account_smart_followers.py +0 -0
  106. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/get_sectors.py +0 -0
  107. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/schema.json +0 -0
  108. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cookiefun/search_accounts.py +0 -0
  109. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/__init__.py +0 -0
  110. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/api.py +0 -0
  111. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/base.py +0 -0
  112. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/cryptocompare.png +0 -0
  113. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/fetch_news.py +0 -0
  114. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/fetch_price.py +0 -0
  115. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/fetch_top_exchanges.py +0 -0
  116. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/fetch_top_market_cap.py +0 -0
  117. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/fetch_top_volume.py +0 -0
  118. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/fetch_trading_signals.py +0 -0
  119. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptocompare/schema.json +0 -0
  120. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptopanic/__init__.py +0 -0
  121. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptopanic/base.py +0 -0
  122. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptopanic/cryptopanic.png +0 -0
  123. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptopanic/fetch_crypto_news.py +0 -0
  124. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptopanic/fetch_crypto_sentiment.py +0 -0
  125. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/cryptopanic/schema.json +0 -0
  126. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dapplooker/README.md +0 -0
  127. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dapplooker/__init__.py +0 -0
  128. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dapplooker/base.py +0 -0
  129. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dapplooker/dapplooker.jpg +0 -0
  130. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dapplooker/dapplooker_token_data.py +0 -0
  131. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dapplooker/schema.json +0 -0
  132. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/__init__.py +0 -0
  133. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/api.py +0 -0
  134. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/base.py +0 -0
  135. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/coins/__init__.py +0 -0
  136. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/coins/fetch_batch_historical_prices.py +0 -0
  137. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/coins/fetch_block.py +0 -0
  138. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/coins/fetch_current_prices.py +0 -0
  139. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/coins/fetch_first_price.py +0 -0
  140. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/coins/fetch_historical_prices.py +0 -0
  141. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/coins/fetch_price_chart.py +0 -0
  142. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/coins/fetch_price_percentage.py +0 -0
  143. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/config/__init__.py +0 -0
  144. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/config/chains.py +0 -0
  145. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/defillama.jpeg +0 -0
  146. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/fees/__init__.py +0 -0
  147. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/fees/fetch_fees_overview.py +0 -0
  148. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/schema.json +0 -0
  149. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/stablecoins/__init__.py +0 -0
  150. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/stablecoins/fetch_stablecoin_chains.py +0 -0
  151. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/stablecoins/fetch_stablecoin_charts.py +0 -0
  152. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/stablecoins/fetch_stablecoin_prices.py +0 -0
  153. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/stablecoins/fetch_stablecoins.py +0 -0
  154. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tests/__init__.py +0 -0
  155. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tests/api_integration.test.py +0 -0
  156. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tests/api_unit.test.py +0 -0
  157. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tvl/__init__.py +0 -0
  158. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tvl/fetch_chain_historical_tvl.py +0 -0
  159. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tvl/fetch_chains.py +0 -0
  160. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tvl/fetch_historical_tvl.py +0 -0
  161. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tvl/fetch_protocol.py +0 -0
  162. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tvl/fetch_protocol_current_tvl.py +0 -0
  163. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/tvl/fetch_protocols.py +0 -0
  164. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/volumes/__init__.py +0 -0
  165. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/volumes/fetch_dex_overview.py +0 -0
  166. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/volumes/fetch_dex_summary.py +0 -0
  167. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/volumes/fetch_options_overview.py +0 -0
  168. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/yields/__init__.py +0 -0
  169. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/yields/fetch_pool_chart.py +0 -0
  170. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/defillama/yields/fetch_pools.py +0 -0
  171. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/README.md +0 -0
  172. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/__init__.py +0 -0
  173. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/base.py +0 -0
  174. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/dexscreener.png +0 -0
  175. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/get_pair_info.py +0 -0
  176. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/get_token_pairs.py +0 -0
  177. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/get_tokens_info.py +0 -0
  178. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/model/__init__.py +0 -0
  179. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/model/search_token_response.py +0 -0
  180. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/schema.json +0 -0
  181. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/search_token.py +0 -0
  182. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dexscreener/utils.py +0 -0
  183. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dune_analytics/__init__.py +0 -0
  184. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dune_analytics/base.py +0 -0
  185. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dune_analytics/dune.png +0 -0
  186. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dune_analytics/fetch_kol_buys.py +0 -0
  187. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dune_analytics/fetch_nation_metrics.py +0 -0
  188. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/dune_analytics/schema.json +0 -0
  189. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/README.md +0 -0
  190. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/__init__.py +0 -0
  191. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/base.py +0 -0
  192. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/elfa.jpg +0 -0
  193. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/mention.py +0 -0
  194. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/schema.json +0 -0
  195. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/stats.py +0 -0
  196. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/tokens.py +0 -0
  197. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/elfa/utils.py +0 -0
  198. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/README.md +0 -0
  199. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/__init__.py +0 -0
  200. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/abi/__init__.py +0 -0
  201. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/abi/approval.py +0 -0
  202. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/abi/erc20.py +0 -0
  203. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/abi/route.py +0 -0
  204. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/base.py +0 -0
  205. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/best_yield.py +0 -0
  206. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/enso.jpg +0 -0
  207. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/networks.py +0 -0
  208. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/prices.py +0 -0
  209. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/route.py +0 -0
  210. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/schema.json +0 -0
  211. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/tokens.py +0 -0
  212. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/enso/wallet.py +0 -0
  213. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/README.md +0 -0
  214. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/__init__.py +0 -0
  215. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/base.py +0 -0
  216. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/clear.py +0 -0
  217. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/crawl.py +0 -0
  218. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/firecrawl.png +0 -0
  219. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/query.py +0 -0
  220. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/schema.json +0 -0
  221. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/scrape.py +0 -0
  222. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/firecrawl/utils.py +0 -0
  223. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/github/README.md +0 -0
  224. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/github/__init__.py +0 -0
  225. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/github/base.py +0 -0
  226. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/github/github.jpg +0 -0
  227. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/github/github_search.py +0 -0
  228. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/github/schema.json +0 -0
  229. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/__init__.py +0 -0
  230. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/base.py +0 -0
  231. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/heurist.png +0 -0
  232. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/image_generation_animagine_xl.py +0 -0
  233. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/image_generation_arthemy_comics.py +0 -0
  234. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/image_generation_arthemy_real.py +0 -0
  235. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/image_generation_braindance.py +0 -0
  236. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/image_generation_cyber_realistic_xl.py +0 -0
  237. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/image_generation_flux_1_dev.py +0 -0
  238. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/image_generation_sdxl.py +0 -0
  239. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/heurist/schema.json +0 -0
  240. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/http/README.md +0 -0
  241. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/http/__init__.py +0 -0
  242. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/http/base.py +0 -0
  243. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/http/get.py +0 -0
  244. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/http/http.svg +0 -0
  245. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/http/post.py +0 -0
  246. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/http/put.py +0 -0
  247. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/http/schema.json +0 -0
  248. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/lifi/README.md +0 -0
  249. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/lifi/__init__.py +0 -0
  250. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/lifi/base.py +0 -0
  251. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/lifi/lifi.png +0 -0
  252. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/lifi/schema.json +0 -0
  253. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/lifi/token_execute.py +0 -0
  254. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/lifi/token_quote.py +0 -0
  255. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/lifi/utils.py +0 -0
  256. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/README.md +0 -0
  257. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/__init__.py +0 -0
  258. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/api.py +0 -0
  259. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/base.py +0 -0
  260. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/fetch_chain_portfolio.py +0 -0
  261. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/fetch_nft_portfolio.py +0 -0
  262. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/fetch_solana_portfolio.py +0 -0
  263. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/fetch_wallet_portfolio.py +0 -0
  264. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/moralis.png +0 -0
  265. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/schema.json +0 -0
  266. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/tests/__init__.py +0 -0
  267. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/moralis/tests/test_wallet.py +0 -0
  268. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/nation/__init__.py +0 -0
  269. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/nation/base.py +0 -0
  270. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/nation/nation.png +0 -0
  271. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/nation/nft_check.py +0 -0
  272. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/nation/schema.json +0 -0
  273. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/openai/__init__.py +0 -0
  274. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/openai/base.py +0 -0
  275. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/openai/dalle_image_generation.py +0 -0
  276. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/openai/gpt_image_generation.py +0 -0
  277. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/openai/gpt_image_to_image.py +0 -0
  278. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/openai/image_to_text.py +0 -0
  279. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/openai/openai.png +0 -0
  280. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/openai/schema.json +0 -0
  281. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/README.md +0 -0
  282. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/__init__.py +0 -0
  283. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/base.py +0 -0
  284. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/constants.py +0 -0
  285. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/moralis.png +0 -0
  286. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/schema.json +0 -0
  287. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/token_balances.py +0 -0
  288. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_approvals.py +0 -0
  289. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_defi_positions.py +0 -0
  290. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_history.py +0 -0
  291. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_net_worth.py +0 -0
  292. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_nfts.py +0 -0
  293. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_profitability.py +0 -0
  294. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_profitability_summary.py +0 -0
  295. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_stats.py +0 -0
  296. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/portfolio/wallet_swaps.py +0 -0
  297. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/skills.toml +0 -0
  298. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/slack/__init__.py +0 -0
  299. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/slack/base.py +0 -0
  300. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/slack/get_channel.py +0 -0
  301. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/slack/get_message.py +0 -0
  302. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/slack/schedule_message.py +0 -0
  303. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/slack/schema.json +0 -0
  304. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/slack/send_message.py +0 -0
  305. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/slack/slack.jpg +0 -0
  306. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/__init__.py +0 -0
  307. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/base.py +0 -0
  308. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/delete_data.py +0 -0
  309. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/fetch_data.py +0 -0
  310. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/insert_data.py +0 -0
  311. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/invoke_function.py +0 -0
  312. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/schema.json +0 -0
  313. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/supabase.svg +0 -0
  314. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/update_data.py +0 -0
  315. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/supabase/upsert_data.py +0 -0
  316. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/__init__.py +0 -0
  317. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/add_autonomous_task.py +0 -0
  318. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/base.py +0 -0
  319. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/delete_autonomous_task.py +0 -0
  320. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/edit_autonomous_task.py +0 -0
  321. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/list_autonomous_tasks.py +0 -0
  322. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/read_agent_api_key.py +0 -0
  323. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/regenerate_agent_api_key.py +0 -0
  324. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/schema.json +0 -0
  325. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/system/system.svg +0 -0
  326. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/tavily/README.md +0 -0
  327. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/tavily/__init__.py +0 -0
  328. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/tavily/base.py +0 -0
  329. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/tavily/schema.json +0 -0
  330. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/tavily/tavily.jpg +0 -0
  331. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/tavily/tavily_extract.py +0 -0
  332. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/tavily/tavily_search.py +0 -0
  333. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/README.md +0 -0
  334. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/__init__.py +0 -0
  335. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/base.py +0 -0
  336. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/constants.py +0 -0
  337. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/erc20_transfers.py +0 -0
  338. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/moralis.png +0 -0
  339. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/schema.json +0 -0
  340. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/token_analytics.py +0 -0
  341. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/token_price.py +0 -0
  342. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/token/token_search.py +0 -0
  343. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/__init__.py +0 -0
  344. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/base.py +0 -0
  345. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/follow_user.py +0 -0
  346. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/get_mentions.py +0 -0
  347. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/get_timeline.py +0 -0
  348. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/get_user_by_username.py +0 -0
  349. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/get_user_tweets.py +0 -0
  350. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/like_tweet.py +0 -0
  351. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/post_tweet.py +0 -0
  352. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/reply_tweet.py +0 -0
  353. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/retweet.py +0 -0
  354. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/schema.json +0 -0
  355. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/search_tweets.py +0 -0
  356. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/twitter/twitter.png +0 -0
  357. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/unrealspeech/__init__.py +0 -0
  358. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/unrealspeech/base.py +0 -0
  359. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/unrealspeech/schema.json +0 -0
  360. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/unrealspeech/text_to_speech.py +0 -0
  361. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/unrealspeech/unrealspeech.jpg +0 -0
  362. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_audio/__init__.py +0 -0
  363. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_audio/base.py +0 -0
  364. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_audio/input.py +0 -0
  365. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_audio/schema.json +0 -0
  366. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_audio/venice_audio.py +0 -0
  367. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_audio/venice_logo.jpg +0 -0
  368. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/README.md +0 -0
  369. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/__init__.py +0 -0
  370. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/api.py +0 -0
  371. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/base.py +0 -0
  372. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/config.py +0 -0
  373. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_enhance/README.md +0 -0
  374. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_enhance/__init__.py +0 -0
  375. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_enhance/image_enhance.py +0 -0
  376. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_enhance/image_enhance_base.py +0 -0
  377. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_enhance/image_enhance_input.py +0 -0
  378. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/README.md +0 -0
  379. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/__init__.py +0 -0
  380. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_base.py +0 -0
  381. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_fluently_xl.py +0 -0
  382. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_flux_dev.py +0 -0
  383. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_flux_dev_uncensored.py +0 -0
  384. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_input.py +0 -0
  385. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_lustify_sdxl.py +0 -0
  386. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_pony_realism.py +0 -0
  387. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_stable_diffusion_3_5.py +0 -0
  388. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_generation/image_generation_venice_sd35.py +0 -0
  389. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_upscale/README.md +0 -0
  390. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_upscale/__init__.py +0 -0
  391. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_upscale/image_upscale.py +0 -0
  392. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_upscale/image_upscale_base.py +0 -0
  393. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_upscale/image_upscale_input.py +0 -0
  394. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_vision/README.md +0 -0
  395. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_vision/__init__.py +0 -0
  396. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_vision/image_vision.py +0 -0
  397. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_vision/image_vision_base.py +0 -0
  398. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/image_vision/image_vision_input.py +0 -0
  399. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/schema.json +0 -0
  400. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/utils.py +0 -0
  401. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/venice_image/venice_image.jpg +0 -0
  402. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/README.md +0 -0
  403. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/__init__.py +0 -0
  404. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/base.py +0 -0
  405. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/document_indexer.py +0 -0
  406. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/langchain.png +0 -0
  407. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/schema.json +0 -0
  408. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/scrape_and_index.py +0 -0
  409. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/utils.py +0 -0
  410. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/web_scraper/website_indexer.py +0 -0
  411. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/xmtp/README.md +0 -0
  412. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/xmtp/__init__.py +0 -0
  413. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/xmtp/base.py +0 -0
  414. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/xmtp/price.py +0 -0
  415. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/xmtp/schema.json +0 -0
  416. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/xmtp/swap.py +0 -0
  417. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/xmtp/transfer.py +0 -0
  418. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/skills/xmtp/xmtp.png +0 -0
  419. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/utils/__init__.py +0 -0
  420. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/utils/chain.py +0 -0
  421. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/utils/error.py +0 -0
  422. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/utils/logging.py +0 -0
  423. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/utils/random.py +0 -0
  424. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/utils/s3.py +0 -0
  425. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/utils/slack_alert.py +0 -0
  426. {intentkit-0.7.1.dev1 → intentkit-0.7.1.dev3}/utils/tx.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: intentkit
3
- Version: 0.7.1.dev1
3
+ Version: 0.7.1.dev3
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.7.1-dev1"
6
+ __version__ = "0.7.1-dev3"
7
7
  __author__ = "hyacinthus"
8
8
  __email__ = "hyacinthus@gmail.com"
9
9
 
@@ -1562,7 +1562,7 @@ async def refill_free_credits_for_account(
1562
1562
  # If adding refill_amount would exceed free_quota, only add what's needed to reach free_quota
1563
1563
  amount_to_add = min(
1564
1564
  account.refill_amount, account.free_quota - account.free_credits
1565
- )
1565
+ ).quantize(FOURPLACES, rounding=ROUND_HALF_UP)
1566
1566
 
1567
1567
  if amount_to_add <= Decimal("0"):
1568
1568
  return # Nothing to add
@@ -26,6 +26,9 @@ from sqlalchemy.ext.asyncio import AsyncSession
26
26
 
27
27
  logger = logging.getLogger(__name__)
28
28
 
29
+ # Precision constant for 4 decimal places
30
+ FOURPLACES = Decimal("0.0001")
31
+
29
32
 
30
33
  class CreditType(str, Enum):
31
34
  """Credit type is used in db column names, do not change it."""
@@ -114,6 +117,47 @@ class CreditAccountTable(Base):
114
117
  String,
115
118
  nullable=True,
116
119
  )
120
+ # Total statistics fields
121
+ total_income = Column(
122
+ Numeric(22, 4),
123
+ default=0,
124
+ nullable=False,
125
+ )
126
+ total_free_income = Column(
127
+ Numeric(22, 4),
128
+ default=0,
129
+ nullable=False,
130
+ )
131
+ total_reward_income = Column(
132
+ Numeric(22, 4),
133
+ default=0,
134
+ nullable=False,
135
+ )
136
+ total_permanent_income = Column(
137
+ Numeric(22, 4),
138
+ default=0,
139
+ nullable=False,
140
+ )
141
+ total_expense = Column(
142
+ Numeric(22, 4),
143
+ default=0,
144
+ nullable=False,
145
+ )
146
+ total_free_expense = Column(
147
+ Numeric(22, 4),
148
+ default=0,
149
+ nullable=False,
150
+ )
151
+ total_reward_expense = Column(
152
+ Numeric(22, 4),
153
+ default=0,
154
+ nullable=False,
155
+ )
156
+ total_permanent_expense = Column(
157
+ Numeric(22, 4),
158
+ default=0,
159
+ nullable=False,
160
+ )
117
161
  created_at = Column(
118
162
  DateTime(timezone=True),
119
163
  nullable=False,
@@ -186,6 +230,63 @@ class CreditAccount(BaseModel):
186
230
  Optional[str],
187
231
  Field(None, description="ID of the last event that modified this account"),
188
232
  ]
233
+ # Total statistics fields
234
+ total_income: Annotated[
235
+ Decimal,
236
+ Field(
237
+ default=Decimal("0"),
238
+ description="Total income from all credit transactions",
239
+ ),
240
+ ]
241
+ total_free_income: Annotated[
242
+ Decimal,
243
+ Field(
244
+ default=Decimal("0"),
245
+ description="Total income from free credit transactions",
246
+ ),
247
+ ]
248
+ total_reward_income: Annotated[
249
+ Decimal,
250
+ Field(
251
+ default=Decimal("0"),
252
+ description="Total income from reward credit transactions",
253
+ ),
254
+ ]
255
+ total_permanent_income: Annotated[
256
+ Decimal,
257
+ Field(
258
+ default=Decimal("0"),
259
+ description="Total income from permanent credit transactions",
260
+ ),
261
+ ]
262
+ total_expense: Annotated[
263
+ Decimal,
264
+ Field(
265
+ default=Decimal("0"),
266
+ description="Total expense from all credit transactions",
267
+ ),
268
+ ]
269
+ total_free_expense: Annotated[
270
+ Decimal,
271
+ Field(
272
+ default=Decimal("0"),
273
+ description="Total expense from free credit transactions",
274
+ ),
275
+ ]
276
+ total_reward_expense: Annotated[
277
+ Decimal,
278
+ Field(
279
+ default=Decimal("0"),
280
+ description="Total expense from reward credit transactions",
281
+ ),
282
+ ]
283
+ total_permanent_expense: Annotated[
284
+ Decimal,
285
+ Field(
286
+ default=Decimal("0"),
287
+ description="Total expense from permanent credit transactions",
288
+ ),
289
+ ]
189
290
  created_at: Annotated[
190
291
  datetime, Field(description="Timestamp when this account was created")
191
292
  ]
@@ -194,7 +295,19 @@ class CreditAccount(BaseModel):
194
295
  ]
195
296
 
196
297
  @field_validator(
197
- "free_quota", "refill_amount", "free_credits", "reward_credits", "credits"
298
+ "free_quota",
299
+ "refill_amount",
300
+ "free_credits",
301
+ "reward_credits",
302
+ "credits",
303
+ "total_income",
304
+ "total_free_income",
305
+ "total_reward_income",
306
+ "total_permanent_income",
307
+ "total_expense",
308
+ "total_free_expense",
309
+ "total_reward_expense",
310
+ "total_permanent_expense",
198
311
  )
199
312
  @classmethod
200
313
  def round_decimal(cls, v: Any) -> Decimal:
@@ -300,13 +413,32 @@ class CreditAccount(BaseModel):
300
413
  # check first, create if not exists
301
414
  await cls.get_or_create_in_session(session, owner_type, owner_id)
302
415
 
416
+ # Quantize the amount to ensure proper precision
417
+ quantized_amount = amount.quantize(FOURPLACES, rounding=ROUND_HALF_UP)
303
418
  values_dict = {
304
- credit_type.value: getattr(CreditAccountTable, credit_type.value) - amount,
419
+ credit_type.value: getattr(CreditAccountTable, credit_type.value)
420
+ - quantized_amount,
305
421
  "expense_at": datetime.now(timezone.utc),
422
+ # Update total expense statistics
423
+ "total_expense": CreditAccountTable.total_expense + quantized_amount,
306
424
  }
307
425
  if event_id:
308
426
  values_dict["last_event_id"] = event_id
309
427
 
428
+ # Update corresponding statistics fields based on credit type
429
+ if credit_type == CreditType.FREE:
430
+ values_dict["total_free_expense"] = (
431
+ CreditAccountTable.total_free_expense + quantized_amount
432
+ )
433
+ elif credit_type == CreditType.REWARD:
434
+ values_dict["total_reward_expense"] = (
435
+ CreditAccountTable.total_reward_expense + quantized_amount
436
+ )
437
+ elif credit_type == CreditType.PERMANENT:
438
+ values_dict["total_permanent_expense"] = (
439
+ CreditAccountTable.total_permanent_expense + quantized_amount
440
+ )
441
+
310
442
  stmt = (
311
443
  update(CreditAccountTable)
312
444
  .where(
@@ -348,14 +480,18 @@ class CreditAccount(BaseModel):
348
480
  else:
349
481
  if account.free_credits > 0:
350
482
  details[CreditType.FREE] = account.free_credits
351
- amount_left -= account.free_credits
483
+ amount_left = (amount_left - account.free_credits).quantize(
484
+ FOURPLACES, rounding=ROUND_HALF_UP
485
+ )
352
486
  if amount_left <= account.reward_credits:
353
487
  details[CreditType.REWARD] = amount_left
354
488
  amount_left = Decimal("0")
355
489
  else:
356
490
  if account.reward_credits > 0:
357
491
  details[CreditType.REWARD] = account.reward_credits
358
- amount_left -= account.reward_credits
492
+ amount_left = (amount_left - account.reward_credits).quantize(
493
+ FOURPLACES, rounding=ROUND_HALF_UP
494
+ )
359
495
  details[CreditType.PERMANENT] = amount_left
360
496
 
361
497
  # Create values dict based on what's in details, defaulting to 0 for missing keys
@@ -365,14 +501,41 @@ class CreditAccount(BaseModel):
365
501
  if event_id:
366
502
  values_dict["last_event_id"] = event_id
367
503
 
504
+ # Calculate total expense for statistics
505
+ total_expense_amount = Decimal("0")
506
+
368
507
  # Add credit type values only if they exist in details
369
508
  for credit_type in [CreditType.FREE, CreditType.REWARD, CreditType.PERMANENT]:
370
509
  if credit_type in details:
510
+ # Quantize the amount to ensure proper precision
511
+ quantized_amount = details[credit_type].quantize(
512
+ FOURPLACES, rounding=ROUND_HALF_UP
513
+ )
371
514
  values_dict[credit_type.value] = (
372
- getattr(CreditAccountTable, credit_type.value)
373
- - details[credit_type]
515
+ getattr(CreditAccountTable, credit_type.value) - quantized_amount
374
516
  )
375
517
 
518
+ # Update corresponding statistics fields
519
+ total_expense_amount += quantized_amount
520
+ if credit_type == CreditType.FREE:
521
+ values_dict["total_free_expense"] = (
522
+ CreditAccountTable.total_free_expense + quantized_amount
523
+ )
524
+ elif credit_type == CreditType.REWARD:
525
+ values_dict["total_reward_expense"] = (
526
+ CreditAccountTable.total_reward_expense + quantized_amount
527
+ )
528
+ elif credit_type == CreditType.PERMANENT:
529
+ values_dict["total_permanent_expense"] = (
530
+ CreditAccountTable.total_permanent_expense + quantized_amount
531
+ )
532
+
533
+ # Update total expense if there was any expense
534
+ if total_expense_amount > 0:
535
+ values_dict["total_expense"] = (
536
+ CreditAccountTable.total_expense + total_expense_amount
537
+ )
538
+
376
539
  stmt = (
377
540
  update(CreditAccountTable)
378
541
  .where(
@@ -416,13 +579,39 @@ class CreditAccount(BaseModel):
416
579
  if event_id:
417
580
  values_dict["last_event_id"] = event_id
418
581
 
582
+ # Calculate total income for statistics
583
+ total_income_amount = Decimal("0")
584
+
419
585
  # Add credit type values based on amount_details
420
586
  for credit_type, amount in amount_details.items():
421
587
  if amount > 0:
588
+ # Quantize the amount to ensure 4 decimal places precision
589
+ quantized_amount = amount.quantize(FOURPLACES, rounding=ROUND_HALF_UP)
422
590
  values_dict[credit_type.value] = (
423
- getattr(CreditAccountTable, credit_type.value) + amount
591
+ getattr(CreditAccountTable, credit_type.value) + quantized_amount
424
592
  )
425
593
 
594
+ # Update corresponding statistics fields
595
+ total_income_amount += quantized_amount
596
+ if credit_type == CreditType.FREE:
597
+ values_dict["total_free_income"] = (
598
+ CreditAccountTable.total_free_income + quantized_amount
599
+ )
600
+ elif credit_type == CreditType.REWARD:
601
+ values_dict["total_reward_income"] = (
602
+ CreditAccountTable.total_reward_income + quantized_amount
603
+ )
604
+ elif credit_type == CreditType.PERMANENT:
605
+ values_dict["total_permanent_income"] = (
606
+ CreditAccountTable.total_permanent_income + quantized_amount
607
+ )
608
+
609
+ # Update total income if there was any income
610
+ if total_income_amount > 0:
611
+ values_dict["total_income"] = (
612
+ CreditAccountTable.total_income + total_income_amount
613
+ )
614
+
426
615
  stmt = (
427
616
  update(CreditAccountTable)
428
617
  .where(
@@ -487,6 +676,16 @@ class CreditAccount(BaseModel):
487
676
  income_at=datetime.now(timezone.utc),
488
677
  expense_at=None,
489
678
  last_event_id=event_id if owner_type == OwnerType.USER else None,
679
+ # Initialize new statistics fields
680
+ # For USER accounts, initial free_quota counts as income
681
+ total_income=free_quota,
682
+ total_free_income=free_quota,
683
+ total_reward_income=0.0,
684
+ total_permanent_income=0.0,
685
+ total_expense=0.0,
686
+ total_free_expense=0.0,
687
+ total_reward_expense=0.0,
688
+ total_permanent_expense=0.0,
490
689
  )
491
690
  # Platform virtual accounts have fixed IDs, same as owner_id
492
691
  if owner_type == OwnerType.PLATFORM:
@@ -621,6 +820,10 @@ class CreditAccount(BaseModel):
621
820
  if not note:
622
821
  raise ValueError("Quota update requires a note explaining the reason")
623
822
 
823
+ # Quantize values to ensure proper precision (4 decimal places)
824
+ free_quota = free_quota.quantize(FOURPLACES, rounding=ROUND_HALF_UP)
825
+ refill_amount = refill_amount.quantize(FOURPLACES, rounding=ROUND_HALF_UP)
826
+
624
827
  # Update the free_quota field
625
828
  stmt = (
626
829
  update(CreditAccountTable)
@@ -6,6 +6,7 @@ from intentkit.models.db_mig import safe_migrate
6
6
  from langgraph.checkpoint.memory import InMemorySaver
7
7
  from langgraph.checkpoint.postgres.aio import AsyncPostgresSaver
8
8
  from langgraph.types import Checkpointer
9
+ from psycopg import OperationalError
9
10
  from psycopg_pool import AsyncConnectionPool
10
11
  from pydantic import Field
11
12
  from sqlalchemy.ext.asyncio import AsyncEngine, AsyncSession, create_async_engine
@@ -14,6 +15,18 @@ engine = None
14
15
  _langgraph_checkpointer: Optional[Checkpointer] = None
15
16
 
16
17
 
18
+ async def check_connection(conn):
19
+ """
20
+ Pre-ping function to validate connection health before returning to application.
21
+ This helps handle database restarts and failovers gracefully.
22
+ """
23
+ try:
24
+ await conn.execute("SELECT 1")
25
+ except OperationalError:
26
+ # Re-raise the exception to let the connection pool know this connection is broken
27
+ raise
28
+
29
+
17
30
  async def init_db(
18
31
  host: Optional[str],
19
32
  username: Optional[str],
@@ -51,6 +64,10 @@ async def init_db(
51
64
  max_size=pool_size * 2,
52
65
  timeout=60,
53
66
  max_idle=30 * 60,
67
+ # Add health check function to handle database restarts
68
+ check=check_connection,
69
+ # Set connection max lifetime to prevent stale connections
70
+ max_lifetime=3600, # 1 hour
54
71
  )
55
72
  _langgraph_checkpointer = AsyncPostgresSaver(pool)
56
73
  if auto_migrate:
@@ -1,7 +1,7 @@
1
1
  import json
2
2
  import logging
3
3
  from datetime import datetime, timezone
4
- from decimal import Decimal
4
+ from decimal import ROUND_HALF_UP, Decimal
5
5
  from enum import Enum
6
6
  from typing import Annotated, Any, Optional
7
7
 
@@ -17,6 +17,7 @@ from sqlalchemy import Boolean, Column, DateTime, Integer, Numeric, String, func
17
17
  logger = logging.getLogger(__name__)
18
18
 
19
19
  _credit_per_usdc = None
20
+ FOURPLACES = Decimal("0.0001")
20
21
 
21
22
 
22
23
  class LLMProvider(str, Enum):
@@ -219,14 +220,14 @@ class LLMModelInfo(BaseModel):
219
220
  * Decimal(input_tokens)
220
221
  * self.input_price
221
222
  / Decimal(1000000)
222
- )
223
+ ).quantize(FOURPLACES, rounding=ROUND_HALF_UP)
223
224
  output_cost = (
224
225
  _credit_per_usdc
225
226
  * Decimal(output_tokens)
226
227
  * self.output_price
227
228
  / Decimal(1000000)
228
- )
229
- return input_cost + output_cost
229
+ ).quantize(FOURPLACES, rounding=ROUND_HALF_UP)
230
+ return (input_cost + output_cost).quantize(FOURPLACES, rounding=ROUND_HALF_UP)
230
231
 
231
232
 
232
233
  # Define all available models
@@ -1,6 +1,6 @@
1
1
  import logging
2
2
  from datetime import datetime, timezone
3
- from decimal import Decimal
3
+ from decimal import ROUND_HALF_UP, Decimal
4
4
  from typing import Annotated, Optional, Type, TypeVar
5
5
 
6
6
  from intentkit.models.base import Base
@@ -148,8 +148,13 @@ class UserUpdate(BaseModel):
148
148
  upstream_tx_id = f"nft_{id}_{timestamp}"
149
149
 
150
150
  # Calculate new quota values based on nft_count
151
- free_quota = Decimal(480 + 48 * new_nft_count)
152
- refill_amount = Decimal(20 + 2 * new_nft_count)
151
+ FOURPLACES = Decimal("0.0001")
152
+ free_quota = Decimal(480 + 48 * new_nft_count).quantize(
153
+ FOURPLACES, rounding=ROUND_HALF_UP
154
+ )
155
+ refill_amount = Decimal(20 + 2 * new_nft_count).quantize(
156
+ FOURPLACES, rounding=ROUND_HALF_UP
157
+ )
153
158
  note = f"NFT count changed to {new_nft_count}"
154
159
 
155
160
  # Update daily quota
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "intentkit"
3
- version = "0.7.1-dev1"
3
+ version = "0.7.1-dev3"
4
4
  description = "Intent-based AI Agent Platform - Core Package"
5
5
  authors = [{ name = "hyacinthus", email = "hyacinthus@gmail.com" }]
6
6
  requires-python = ">=3.12"
File without changes
File without changes