intentkit 0.8.17.dev2__tar.gz → 0.8.21__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 (468) hide show
  1. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/PKG-INFO +1 -1
  2. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/__init__.py +1 -1
  3. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/asset.py +17 -3
  4. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/credit.py +10 -10
  5. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/skills.csv +5 -3
  6. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/pyproject.toml +1 -1
  7. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/utils.py +1 -1
  8. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/__init__.py +12 -0
  9. intentkit-0.8.21/skills/openai/gpt_avatar_generator.py +102 -0
  10. intentkit-0.8.21/skills/openai/gpt_image_mini_generator.py +92 -0
  11. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/schema.json +32 -0
  12. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/.gitignore +0 -0
  13. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/LICENSE +0 -0
  14. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/MANIFEST.in +0 -0
  15. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/README.md +0 -0
  16. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/__init__.py +0 -0
  17. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/agent.py +0 -0
  18. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/api.py +0 -0
  19. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/engine.py +0 -0
  20. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/graph.py +0 -0
  21. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/skill.py +0 -0
  22. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/twitter.py +0 -0
  23. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/clients/__init__.py +0 -0
  24. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/clients/cdp.py +0 -0
  25. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/clients/twitter.py +0 -0
  26. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/clients/web3.py +0 -0
  27. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/config/__init__.py +0 -0
  28. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/config/config.py +0 -0
  29. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/__init__.py +0 -0
  30. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/agent.py +0 -0
  31. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/api.py +0 -0
  32. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/chat.py +0 -0
  33. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/client.py +0 -0
  34. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/engine.py +0 -0
  35. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/node.py +0 -0
  36. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/prompt.py +0 -0
  37. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/scheduler.py +0 -0
  38. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/statistics.py +0 -0
  39. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/agent.py +0 -0
  40. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/agent_data.py +0 -0
  41. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/agent_public.json +0 -0
  42. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/agent_schema.json +0 -0
  43. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/app_setting.py +0 -0
  44. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/base.py +0 -0
  45. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/chat.py +0 -0
  46. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/conversation.py +0 -0
  47. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/credit.py +0 -0
  48. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/db.py +0 -0
  49. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/db_mig.py +0 -0
  50. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/llm.csv +0 -0
  51. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/llm.py +0 -0
  52. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/redis.py +0 -0
  53. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/skill.py +0 -0
  54. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/user.py +0 -0
  55. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/__init__.py +0 -0
  56. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/__init__.py +0 -0
  57. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/acolyt.jpg +0 -0
  58. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/ask.py +0 -0
  59. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/base.py +0 -0
  60. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/schema.json +0 -0
  61. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/README.md +0 -0
  62. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/__init__.py +0 -0
  63. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/aixbt.jpg +0 -0
  64. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/base.py +0 -0
  65. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/projects.py +0 -0
  66. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/schema.json +0 -0
  67. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/__init__.py +0 -0
  68. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/allora.jpeg +0 -0
  69. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/base.py +0 -0
  70. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/price.py +0 -0
  71. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/schema.json +0 -0
  72. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/base.py +0 -0
  73. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/basename/__init__.py +0 -0
  74. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/basename/base.py +0 -0
  75. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/basename/basename.svg +0 -0
  76. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/basename/schema.json +0 -0
  77. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/README.md +0 -0
  78. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/__init__.py +0 -0
  79. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/base.py +0 -0
  80. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/carv.webp +0 -0
  81. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/fetch_news.py +0 -0
  82. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/onchain_query.py +0 -0
  83. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/schema.json +0 -0
  84. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/token_info_and_price.py +0 -0
  85. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/README.md +0 -0
  86. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/__init__.py +0 -0
  87. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/base.py +0 -0
  88. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/casino.png +0 -0
  89. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/deck_draw.py +0 -0
  90. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/deck_shuffle.py +0 -0
  91. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/dice_roll.py +0 -0
  92. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/schema.json +0 -0
  93. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/utils.py +0 -0
  94. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cdp/__init__.py +0 -0
  95. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cdp/base.py +0 -0
  96. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cdp/cdp.png +0 -0
  97. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cdp/schema.json +0 -0
  98. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/README.md +0 -0
  99. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/__init__.py +0 -0
  100. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/base.py +0 -0
  101. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/chain_lookup.py +0 -0
  102. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/chainlist.png +0 -0
  103. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/schema.json +0 -0
  104. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/__init__.py +0 -0
  105. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/base.py +0 -0
  106. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/common.jpg +0 -0
  107. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/current_time.py +0 -0
  108. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/schema.json +0 -0
  109. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/README.md +0 -0
  110. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/__init__.py +0 -0
  111. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/base.py +0 -0
  112. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/constants.py +0 -0
  113. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/cookiefun.png +0 -0
  114. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/get_account_details.py +0 -0
  115. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/get_account_feed.py +0 -0
  116. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/get_account_smart_followers.py +0 -0
  117. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/get_sectors.py +0 -0
  118. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/schema.json +0 -0
  119. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/search_accounts.py +0 -0
  120. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/__init__.py +0 -0
  121. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/api.py +0 -0
  122. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/base.py +0 -0
  123. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/cryptocompare.png +0 -0
  124. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_news.py +0 -0
  125. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_price.py +0 -0
  126. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_top_exchanges.py +0 -0
  127. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_top_market_cap.py +0 -0
  128. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_top_volume.py +0 -0
  129. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_trading_signals.py +0 -0
  130. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/schema.json +0 -0
  131. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/__init__.py +0 -0
  132. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/base.py +0 -0
  133. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/cryptopanic.png +0 -0
  134. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/fetch_crypto_news.py +0 -0
  135. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/fetch_crypto_sentiment.py +0 -0
  136. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/schema.json +0 -0
  137. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/README.md +0 -0
  138. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/__init__.py +0 -0
  139. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/base.py +0 -0
  140. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/dapplooker.jpg +0 -0
  141. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/dapplooker_token_data.py +0 -0
  142. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/schema.json +0 -0
  143. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/__init__.py +0 -0
  144. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/api.py +0 -0
  145. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/base.py +0 -0
  146. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/__init__.py +0 -0
  147. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_batch_historical_prices.py +0 -0
  148. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_block.py +0 -0
  149. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_current_prices.py +0 -0
  150. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_first_price.py +0 -0
  151. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_historical_prices.py +0 -0
  152. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_price_chart.py +0 -0
  153. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_price_percentage.py +0 -0
  154. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/config/__init__.py +0 -0
  155. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/config/chains.py +0 -0
  156. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/defillama.jpeg +0 -0
  157. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/fees/__init__.py +0 -0
  158. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/fees/fetch_fees_overview.py +0 -0
  159. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/schema.json +0 -0
  160. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/__init__.py +0 -0
  161. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/fetch_stablecoin_chains.py +0 -0
  162. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/fetch_stablecoin_charts.py +0 -0
  163. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/fetch_stablecoin_prices.py +0 -0
  164. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/fetch_stablecoins.py +0 -0
  165. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tests/__init__.py +0 -0
  166. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tests/api_integration.test.py +0 -0
  167. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tests/api_unit.test.py +0 -0
  168. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/__init__.py +0 -0
  169. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_chain_historical_tvl.py +0 -0
  170. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_chains.py +0 -0
  171. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_historical_tvl.py +0 -0
  172. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_protocol.py +0 -0
  173. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_protocol_current_tvl.py +0 -0
  174. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_protocols.py +0 -0
  175. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/volumes/__init__.py +0 -0
  176. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/volumes/fetch_dex_overview.py +0 -0
  177. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/volumes/fetch_dex_summary.py +0 -0
  178. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/volumes/fetch_options_overview.py +0 -0
  179. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/yields/__init__.py +0 -0
  180. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/yields/fetch_pool_chart.py +0 -0
  181. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/yields/fetch_pools.py +0 -0
  182. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/README.md +0 -0
  183. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/__init__.py +0 -0
  184. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/base.py +0 -0
  185. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/dexscreener.png +0 -0
  186. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/get_pair_info.py +0 -0
  187. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/get_token_pairs.py +0 -0
  188. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/get_tokens_info.py +0 -0
  189. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/model/__init__.py +0 -0
  190. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/model/search_token_response.py +0 -0
  191. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/schema.json +0 -0
  192. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/search_token.py +0 -0
  193. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/utils.py +0 -0
  194. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/__init__.py +0 -0
  195. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/base.py +0 -0
  196. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/dune.png +0 -0
  197. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/fetch_kol_buys.py +0 -0
  198. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/fetch_nation_metrics.py +0 -0
  199. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/schema.json +0 -0
  200. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/README.md +0 -0
  201. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/__init__.py +0 -0
  202. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/base.py +0 -0
  203. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/elfa.jpg +0 -0
  204. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/mention.py +0 -0
  205. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/schema.json +0 -0
  206. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/stats.py +0 -0
  207. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/tokens.py +0 -0
  208. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/utils.py +0 -0
  209. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/README.md +0 -0
  210. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/__init__.py +0 -0
  211. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/abi/__init__.py +0 -0
  212. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/abi/approval.py +0 -0
  213. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/abi/erc20.py +0 -0
  214. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/abi/route.py +0 -0
  215. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/base.py +0 -0
  216. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/best_yield.py +0 -0
  217. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/enso.jpg +0 -0
  218. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/networks.py +0 -0
  219. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/prices.py +0 -0
  220. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/route.py +0 -0
  221. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/schema.json +0 -0
  222. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/tokens.py +0 -0
  223. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/wallet.py +0 -0
  224. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc20/__init__.py +0 -0
  225. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc20/base.py +0 -0
  226. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc20/erc20.svg +0 -0
  227. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc20/schema.json +0 -0
  228. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc721/__init__.py +0 -0
  229. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc721/base.py +0 -0
  230. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc721/erc721.svg +0 -0
  231. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc721/schema.json +0 -0
  232. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/README.md +0 -0
  233. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/__init__.py +0 -0
  234. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/base.py +0 -0
  235. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/clear.py +0 -0
  236. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/crawl.py +0 -0
  237. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/firecrawl.png +0 -0
  238. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/query.py +0 -0
  239. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/schema.json +0 -0
  240. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/scrape.py +0 -0
  241. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/README.md +0 -0
  242. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/__init__.py +0 -0
  243. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/base.py +0 -0
  244. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/github.jpg +0 -0
  245. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/github_search.py +0 -0
  246. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/schema.json +0 -0
  247. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/__init__.py +0 -0
  248. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/base.py +0 -0
  249. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/heurist.png +0 -0
  250. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_animagine_xl.py +0 -0
  251. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_arthemy_comics.py +0 -0
  252. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_arthemy_real.py +0 -0
  253. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_braindance.py +0 -0
  254. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_cyber_realistic_xl.py +0 -0
  255. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_flux_1_dev.py +0 -0
  256. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_sdxl.py +0 -0
  257. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/schema.json +0 -0
  258. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/README.md +0 -0
  259. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/__init__.py +0 -0
  260. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/base.py +0 -0
  261. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/get.py +0 -0
  262. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/http.svg +0 -0
  263. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/post.py +0 -0
  264. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/put.py +0 -0
  265. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/schema.json +0 -0
  266. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/README.md +0 -0
  267. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/__init__.py +0 -0
  268. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/base.py +0 -0
  269. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/lifi.png +0 -0
  270. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/schema.json +0 -0
  271. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/token_execute.py +0 -0
  272. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/token_quote.py +0 -0
  273. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/utils.py +0 -0
  274. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/README.md +0 -0
  275. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/__init__.py +0 -0
  276. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/api.py +0 -0
  277. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/base.py +0 -0
  278. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/fetch_chain_portfolio.py +0 -0
  279. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/fetch_nft_portfolio.py +0 -0
  280. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/fetch_solana_portfolio.py +0 -0
  281. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/fetch_wallet_portfolio.py +0 -0
  282. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/moralis.png +0 -0
  283. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/schema.json +0 -0
  284. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/morpho/__init__.py +0 -0
  285. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/morpho/base.py +0 -0
  286. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/morpho/morpho.svg +0 -0
  287. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/morpho/schema.json +0 -0
  288. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/__init__.py +0 -0
  289. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/base.py +0 -0
  290. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/nation.png +0 -0
  291. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/nft_check.py +0 -0
  292. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/schema.json +0 -0
  293. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/onchain.py +0 -0
  294. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/base.py +0 -0
  295. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/dalle_image_generation.py +0 -0
  296. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/gpt_image_generation.py +0 -0
  297. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/gpt_image_to_image.py +0 -0
  298. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/image_to_text.py +0 -0
  299. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/openai.png +0 -0
  300. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/README.md +0 -0
  301. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/__init__.py +0 -0
  302. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/base.py +0 -0
  303. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/constants.py +0 -0
  304. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/moralis.png +0 -0
  305. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/schema.json +0 -0
  306. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/token_balances.py +0 -0
  307. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_approvals.py +0 -0
  308. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_defi_positions.py +0 -0
  309. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_history.py +0 -0
  310. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_net_worth.py +0 -0
  311. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_nfts.py +0 -0
  312. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_profitability.py +0 -0
  313. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_profitability_summary.py +0 -0
  314. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_stats.py +0 -0
  315. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_swaps.py +0 -0
  316. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/pyth/__init__.py +0 -0
  317. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/pyth/base.py +0 -0
  318. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/pyth/pyth.svg +0 -0
  319. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/pyth/schema.json +0 -0
  320. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/skills.toml +0 -0
  321. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/__init__.py +0 -0
  322. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/base.py +0 -0
  323. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/get_channel.py +0 -0
  324. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/get_message.py +0 -0
  325. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/schedule_message.py +0 -0
  326. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/schema.json +0 -0
  327. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/send_message.py +0 -0
  328. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/slack.jpg +0 -0
  329. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/__init__.py +0 -0
  330. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/base.py +0 -0
  331. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/delete_data.py +0 -0
  332. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/fetch_data.py +0 -0
  333. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/insert_data.py +0 -0
  334. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/invoke_function.py +0 -0
  335. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/schema.json +0 -0
  336. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/supabase.svg +0 -0
  337. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/update_data.py +0 -0
  338. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/upsert_data.py +0 -0
  339. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/superfluid/__init__.py +0 -0
  340. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/superfluid/base.py +0 -0
  341. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/superfluid/schema.json +0 -0
  342. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/superfluid/superfluid.svg +0 -0
  343. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/__init__.py +0 -0
  344. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/add_autonomous_task.py +0 -0
  345. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/base.py +0 -0
  346. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/delete_autonomous_task.py +0 -0
  347. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/edit_autonomous_task.py +0 -0
  348. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/list_autonomous_tasks.py +0 -0
  349. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/read_agent_api_key.py +0 -0
  350. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/regenerate_agent_api_key.py +0 -0
  351. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/schema.json +0 -0
  352. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/system.svg +0 -0
  353. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/README.md +0 -0
  354. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/__init__.py +0 -0
  355. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/base.py +0 -0
  356. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/schema.json +0 -0
  357. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/tavily.jpg +0 -0
  358. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/tavily_extract.py +0 -0
  359. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/tavily_search.py +0 -0
  360. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/README.md +0 -0
  361. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/__init__.py +0 -0
  362. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/base.py +0 -0
  363. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/constants.py +0 -0
  364. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/erc20_transfers.py +0 -0
  365. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/moralis.png +0 -0
  366. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/schema.json +0 -0
  367. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/token_analytics.py +0 -0
  368. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/token_price.py +0 -0
  369. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/token_search.py +0 -0
  370. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/__init__.py +0 -0
  371. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/base.py +0 -0
  372. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/follow_user.py +0 -0
  373. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/get_mentions.py +0 -0
  374. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/get_timeline.py +0 -0
  375. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/get_user_by_username.py +0 -0
  376. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/get_user_tweets.py +0 -0
  377. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/like_tweet.py +0 -0
  378. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/post_tweet.py +0 -0
  379. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/reply_tweet.py +0 -0
  380. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/retweet.py +0 -0
  381. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/schema.json +0 -0
  382. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/search_tweets.py +0 -0
  383. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/twitter.png +0 -0
  384. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/__init__.py +0 -0
  385. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/base.py +0 -0
  386. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/schema.json +0 -0
  387. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/text_to_speech.py +0 -0
  388. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/unrealspeech.jpg +0 -0
  389. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/__init__.py +0 -0
  390. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/base.py +0 -0
  391. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/input.py +0 -0
  392. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/schema.json +0 -0
  393. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/venice_audio.py +0 -0
  394. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/venice_logo.jpg +0 -0
  395. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/README.md +0 -0
  396. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/__init__.py +0 -0
  397. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/api.py +0 -0
  398. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/base.py +0 -0
  399. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/config.py +0 -0
  400. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/README.md +0 -0
  401. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/__init__.py +0 -0
  402. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/image_enhance.py +0 -0
  403. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/image_enhance_base.py +0 -0
  404. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/image_enhance_input.py +0 -0
  405. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/README.md +0 -0
  406. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/__init__.py +0 -0
  407. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_base.py +0 -0
  408. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_fluently_xl.py +0 -0
  409. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_flux_dev.py +0 -0
  410. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_flux_dev_uncensored.py +0 -0
  411. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_input.py +0 -0
  412. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_lustify_sdxl.py +0 -0
  413. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_pony_realism.py +0 -0
  414. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_stable_diffusion_3_5.py +0 -0
  415. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_venice_sd35.py +0 -0
  416. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/README.md +0 -0
  417. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/__init__.py +0 -0
  418. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/image_upscale.py +0 -0
  419. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/image_upscale_base.py +0 -0
  420. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/image_upscale_input.py +0 -0
  421. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/README.md +0 -0
  422. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/__init__.py +0 -0
  423. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/image_vision.py +0 -0
  424. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/image_vision_base.py +0 -0
  425. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/image_vision_input.py +0 -0
  426. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/schema.json +0 -0
  427. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/utils.py +0 -0
  428. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/venice_image.jpg +0 -0
  429. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/README.md +0 -0
  430. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/__init__.py +0 -0
  431. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/base.py +0 -0
  432. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/document_indexer.py +0 -0
  433. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/langchain.png +0 -0
  434. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/schema.json +0 -0
  435. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/scrape_and_index.py +0 -0
  436. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/utils.py +0 -0
  437. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/website_indexer.py +0 -0
  438. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/weth/__init__.py +0 -0
  439. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/weth/base.py +0 -0
  440. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/weth/schema.json +0 -0
  441. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/weth/weth.svg +0 -0
  442. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/wow/__init__.py +0 -0
  443. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/wow/base.py +0 -0
  444. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/wow/schema.json +0 -0
  445. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/wow/wow.svg +0 -0
  446. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/__init__.py +0 -0
  447. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/ask_agent.py +0 -0
  448. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/base.py +0 -0
  449. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/http_request.py +0 -0
  450. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/schema.json +0 -0
  451. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/x402.webp +0 -0
  452. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/README.md +0 -0
  453. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/__init__.py +0 -0
  454. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/base.py +0 -0
  455. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/price.py +0 -0
  456. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/schema.json +0 -0
  457. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/swap.py +0 -0
  458. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/transfer.py +0 -0
  459. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/xmtp.png +0 -0
  460. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/__init__.py +0 -0
  461. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/chain.py +0 -0
  462. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/error.py +0 -0
  463. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/logging.py +0 -0
  464. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/random.py +0 -0
  465. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/s3.py +0 -0
  466. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/schema.py +0 -0
  467. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/slack_alert.py +0 -0
  468. {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/tx.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: intentkit
3
- Version: 0.8.17.dev2
3
+ Version: 0.8.21
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.17-dev2"
6
+ __version__ = "0.8.21"
7
7
  __author__ = "hyacinthus"
8
8
  __email__ = "hyacinthus@gmail.com"
9
9
 
@@ -33,6 +33,14 @@ USDC_ADDRESSES = {
33
33
  # NATION token address for base-mainnet
34
34
  NATION_ADDRESS = "0x2f74f818e81685c8086dd783837a4605a90474b8"
35
35
 
36
+ MORALIS_CHAIN_BY_NETWORK = {
37
+ "ethereum-mainnet": "eth",
38
+ "base-mainnet": "base",
39
+ "polygon-mainnet": "polygon",
40
+ "arbitrum-mainnet": "arbitrum",
41
+ "optimism-mainnet": "optimism",
42
+ }
43
+
36
44
 
37
45
  class Asset(BaseModel):
38
46
  """Model for individual asset with symbol and balance."""
@@ -101,8 +109,12 @@ async def _get_eth_balance(web3_client: Web3, wallet_address: str) -> Decimal:
101
109
  return Decimal("0")
102
110
 
103
111
 
104
- async def _get_wallet_net_worth(wallet_address: str) -> str:
112
+ async def _get_wallet_net_worth(wallet_address: str, network_id: str | None) -> str:
105
113
  """Get wallet net worth using Moralis API."""
114
+ moralis_chain = MORALIS_CHAIN_BY_NETWORK.get(network_id or "")
115
+ if not moralis_chain:
116
+ return "0"
117
+
106
118
  try:
107
119
  async with httpx.AsyncClient() as client:
108
120
  url = (
@@ -116,7 +128,7 @@ async def _get_wallet_net_worth(wallet_address: str) -> str:
116
128
  params = {
117
129
  "exclude_spam": "true",
118
130
  "exclude_unverified_contracts": "true",
119
- "chains": ["eth", "base", "polygon", "arbitrum", "optimism"],
131
+ "chains": [moralis_chain],
120
132
  }
121
133
 
122
134
  response = await client.get(url, headers=headers, params=params)
@@ -206,7 +218,9 @@ async def agent_asset(agent_id: str) -> AgentAssets:
206
218
  try:
207
219
  web3_client = get_web3_client(str(agent.network_id))
208
220
  tokens = await _build_assets_list(agent, agent_data, web3_client)
209
- net_worth = await _get_wallet_net_worth(agent_data.evm_wallet_address)
221
+ net_worth = await _get_wallet_net_worth(
222
+ agent_data.evm_wallet_address, str(agent.network_id)
223
+ )
210
224
  assets_result = AgentAssets(net_worth=net_worth, tokens=tokens)
211
225
  except IntentKitAPIError:
212
226
  raise
@@ -1285,16 +1285,16 @@ async def skill_cost(
1285
1285
  skill = await Skill.get(skill_name)
1286
1286
  if not skill:
1287
1287
  raise ValueError(f"The price of {skill_name} not set yet")
1288
- agent_skill_config = agent.skills.get(skill.category)
1289
- if (
1290
- agent_skill_config
1291
- and agent_skill_config.get("api_key_provider") == "agent_owner"
1292
- ):
1293
- base_skill_amount = skill.price_self_key.quantize(
1294
- FOURPLACES, rounding=ROUND_HALF_UP
1295
- )
1296
- else:
1297
- base_skill_amount = skill.price.quantize(FOURPLACES, rounding=ROUND_HALF_UP)
1288
+ base_skill_amount = skill.price.quantize(FOURPLACES, rounding=ROUND_HALF_UP)
1289
+ if agent.skills:
1290
+ agent_skill_config = agent.skills.get(skill.category)
1291
+ if (
1292
+ agent_skill_config
1293
+ and agent_skill_config.get("api_key_provider") == "agent_owner"
1294
+ ):
1295
+ base_skill_amount = skill.price_self_key.quantize(
1296
+ FOURPLACES, rounding=ROUND_HALF_UP
1297
+ )
1298
1298
  # Get payment settings
1299
1299
  payment_settings = await AppSetting.payment()
1300
1300
 
@@ -97,9 +97,11 @@ moralis,fetch_nft_portfolio,moralis_fetch_nft_portfolio,TRUE,1,5,5,,,0xd1a8Dd23e
97
97
  moralis,fetch_solana_portfolio,moralis_fetch_solana_portfolio,TRUE,1,5,5,,,0xd1a8Dd23e356B9fAE27dF5DeF9ea025A602EC81e
98
98
  moralis,fetch_wallet_portfolio,moralis_fetch_wallet_portfolio,TRUE,1,5,5,,,0xd1a8Dd23e356B9fAE27dF5DeF9ea025A602EC81e
99
99
  nation,nft_check,nft_check,FALSE,1,5,5,,,0x275960ad41DbE218bBf72cDF612F88b5C6f40648
100
- openai,dalle_image_generation,dalle_image_generation,TRUE,4,200,15,,,0x445750026A4a1906b61302442E085f9cbAfe206a
101
- openai,gpt_image_generation,gpt_image_generation,TRUE,5,400,15,,,0x445750026A4a1906b61302442E085f9cbAfe206a
102
- openai,gpt_image_to_image,gpt_image_to_image,TRUE,5,400,15,,,0x445750026A4a1906b61302442E085f9cbAfe206a
100
+ openai,dalle_image_generation,dalle_image_generation,TRUE,4,200,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
101
+ openai,gpt_image_generation,gpt_image_generation,TRUE,5,400,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
102
+ openai,gpt_image_mini_generator,gpt_image_mini_generator,TRUE,3,100,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
103
+ openai,gpt_avatar_generator,gpt_avatar_generator,TRUE,2,50,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
104
+ openai,gpt_image_to_image,gpt_image_to_image,TRUE,5,400,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
103
105
  openai,image_to_text,image_to_text,TRUE,4,200,15,,,0x445750026A4a1906b61302442E085f9cbAfe206a
104
106
  portfolio,token_balances,portfolio_token_balances,TRUE,1,5,5,,,0x3cdd051eeC909f94965F9c1c657f5b70a172B2C0
105
107
  portfolio,wallet_approvals,portfolio_wallet_approvals,TRUE,1,5,5,,,0x3cdd051eeC909f94965F9c1c657f5b70a172B2C0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "intentkit"
3
- version = "0.8.17-dev2"
3
+ version = "0.8.21"
4
4
  description = "Intent-based AI Agent Platform - Core Package"
5
5
  authors = [{ name = "hyacinthus", email = "hyacinthus@gmail.com" }]
6
6
  requires-python = "==3.13.*"
@@ -4,10 +4,10 @@ import logging
4
4
  import re
5
5
  from typing import Any
6
6
 
7
- from langchain.text_splitter import RecursiveCharacterTextSplitter
8
7
  from langchain_community.vectorstores import FAISS
9
8
  from langchain_core.documents import Document
10
9
  from langchain_openai import OpenAIEmbeddings
10
+ from langchain_text_splitters import RecursiveCharacterTextSplitter
11
11
 
12
12
  from intentkit.config.config import config
13
13
  from intentkit.models.skill import AgentSkillData, AgentSkillDataCreate
@@ -6,7 +6,9 @@ from typing import TypedDict
6
6
  from intentkit.skills.base import SkillConfig, SkillState
7
7
  from intentkit.skills.openai.base import OpenAIBaseTool
8
8
  from intentkit.skills.openai.dalle_image_generation import DALLEImageGeneration
9
+ from intentkit.skills.openai.gpt_avatar_generator import GPTAvatarGenerator
9
10
  from intentkit.skills.openai.gpt_image_generation import GPTImageGeneration
11
+ from intentkit.skills.openai.gpt_image_mini_generator import GPTImageMiniGenerator
10
12
  from intentkit.skills.openai.gpt_image_to_image import GPTImageToImage
11
13
  from intentkit.skills.openai.image_to_text import ImageToText
12
14
 
@@ -20,6 +22,8 @@ class SkillStates(TypedDict):
20
22
  image_to_text: SkillState
21
23
  dalle_image_generation: SkillState
22
24
  gpt_image_generation: SkillState
25
+ gpt_image_mini_generator: SkillState
26
+ gpt_avatar_generator: SkillState
23
27
  gpt_image_to_image: SkillState
24
28
 
25
29
 
@@ -85,6 +89,14 @@ def get_openai_skill(
85
89
  if name not in _cache:
86
90
  _cache[name] = GPTImageGeneration()
87
91
  return _cache[name]
92
+ elif name == "gpt_image_mini_generator":
93
+ if name not in _cache:
94
+ _cache[name] = GPTImageMiniGenerator()
95
+ return _cache[name]
96
+ elif name == "gpt_avatar_generator":
97
+ if name not in _cache:
98
+ _cache[name] = GPTAvatarGenerator()
99
+ return _cache[name]
88
100
  elif name == "gpt_image_to_image":
89
101
  if name not in _cache:
90
102
  _cache[name] = GPTImageToImage()
@@ -0,0 +1,102 @@
1
+ """GPT avatar generator skill for OpenAI."""
2
+
3
+ import base64
4
+ import logging
5
+
6
+ import openai
7
+ from epyxid import XID
8
+ from pydantic import BaseModel, Field
9
+
10
+ from intentkit.skills.openai.base import OpenAIBaseTool
11
+ from intentkit.utils.s3 import store_image_bytes
12
+
13
+ logger = logging.getLogger(__name__)
14
+
15
+ AVATAR_PROMPT_PREFIX = (
16
+ "Create an image suitable for a profile picture, with a clean background but not pure white, "
17
+ "and a clear subject that is recognizable even at small sizes. If there are no style requirements "
18
+ "in the subsequent description, use anime style. The content is as follows:"
19
+ )
20
+
21
+
22
+ class GPTAvatarGeneratorInput(BaseModel):
23
+ """Input schema for the GPT avatar generator skill."""
24
+
25
+ prompt: str = Field(
26
+ description="Description of the avatar or profile image to generate.",
27
+ )
28
+
29
+
30
+ class GPTAvatarGenerator(OpenAIBaseTool):
31
+ """Tool for generating avatar-friendly images using OpenAI's GPT-Image-1-Mini model."""
32
+
33
+ name: str = "gpt_avatar_generator"
34
+ description: str = (
35
+ "Generate avatar-ready profile images using OpenAI's GPT-Image-1-Mini model."
36
+ )
37
+ args_schema: type[BaseModel] = GPTAvatarGeneratorInput
38
+
39
+ async def _arun(self, prompt: str, **kwargs) -> str:
40
+ """Generate avatar-friendly images using OpenAI's GPT-Image-1-Mini model."""
41
+ context = self.get_context()
42
+ api_key = self.get_api_key()
43
+ job_id = str(XID())
44
+
45
+ composed_prompt = (
46
+ f"{AVATAR_PROMPT_PREFIX}\n{prompt.strip()}"
47
+ if prompt
48
+ else AVATAR_PROMPT_PREFIX
49
+ )
50
+
51
+ try:
52
+ client = openai.OpenAI(api_key=api_key)
53
+
54
+ response = client.images.generate(
55
+ model="gpt-image-1-mini",
56
+ prompt=composed_prompt,
57
+ size="1024x1024",
58
+ quality="medium",
59
+ background="opaque",
60
+ moderation="low",
61
+ n=1,
62
+ )
63
+
64
+ base64_image = response.data[0].b64_json
65
+
66
+ if hasattr(response, "usage") and response.usage:
67
+ usage = response.usage
68
+ logger.info(
69
+ "GPT-Image-1-Mini avatar generation usage: "
70
+ f"input_tokens={usage.input_tokens}, "
71
+ f"output_tokens={usage.output_tokens}, "
72
+ f"total_tokens={usage.total_tokens}"
73
+ )
74
+
75
+ if (
76
+ hasattr(usage, "input_tokens_details")
77
+ and usage.input_tokens_details
78
+ ):
79
+ details = usage.input_tokens_details
80
+ logger.info(f"Input tokens details: {details}")
81
+
82
+ image_bytes = base64.b64decode(base64_image)
83
+
84
+ image_key = f"{context.agent_id}/gpt-avatar/{job_id}"
85
+
86
+ stored_url = await store_image_bytes(
87
+ image_bytes,
88
+ image_key,
89
+ "image/jpeg",
90
+ )
91
+
92
+ return stored_url
93
+
94
+ except openai.OpenAIError as e:
95
+ error_message = f"OpenAI API error: {str(e)}"
96
+ logger.error(error_message)
97
+ raise Exception(error_message)
98
+
99
+ except Exception as e:
100
+ error_message = f"Error generating avatar with GPT-Image-1-Mini: {str(e)}"
101
+ logger.error(error_message)
102
+ raise Exception(error_message)
@@ -0,0 +1,92 @@
1
+ """GPT image mini generator skill for OpenAI."""
2
+
3
+ import base64
4
+ import logging
5
+ from typing import Literal
6
+
7
+ import openai
8
+ from epyxid import XID
9
+ from pydantic import BaseModel
10
+
11
+ from intentkit.skills.openai.base import OpenAIBaseTool
12
+ from intentkit.skills.openai.gpt_image_generation import GPTImageGenerationInput
13
+ from intentkit.utils.s3 import store_image_bytes
14
+
15
+ logger = logging.getLogger(__name__)
16
+
17
+
18
+ class GPTImageMiniGenerator(OpenAIBaseTool):
19
+ """Tool for generating images using OpenAI's GPT-Image-1-Mini model."""
20
+
21
+ name: str = "gpt_image_mini_generator"
22
+ description: str = (
23
+ "Generate images using OpenAI's GPT-Image-1-Mini model.\n"
24
+ "Provide a text prompt describing the image you want to generate.\n"
25
+ "GPT-Image-1-Mini delivers high-quality images with faster performance at a lower cost.\n"
26
+ "You can specify size, quality, and background parameters for more control.\n"
27
+ )
28
+ args_schema: type[BaseModel] = GPTImageGenerationInput
29
+
30
+ async def _arun(
31
+ self,
32
+ prompt: str,
33
+ size: Literal["1024x1024", "1536x1024", "1024x1536", "auto"] = "auto",
34
+ quality: Literal["high", "medium", "low", "auto"] = "auto",
35
+ background: Literal["transparent", "opaque", "auto"] = "auto",
36
+ **kwargs,
37
+ ) -> str:
38
+ """Generate images using OpenAI's GPT-Image-1-Mini model."""
39
+ context = self.get_context()
40
+ api_key = self.get_api_key()
41
+ job_id = str(XID())
42
+
43
+ try:
44
+ client = openai.OpenAI(api_key=api_key)
45
+
46
+ content_type = "image/png" if background == "transparent" else "image/jpeg"
47
+
48
+ response = client.images.generate(
49
+ model="gpt-image-1-mini",
50
+ prompt=prompt,
51
+ size=size,
52
+ quality=quality,
53
+ background=background,
54
+ moderation="low",
55
+ n=1,
56
+ )
57
+
58
+ base64_image = response.data[0].b64_json
59
+
60
+ if hasattr(response, "usage") and response.usage:
61
+ usage = response.usage
62
+ logger.info(
63
+ "GPT-Image-1-Mini generation usage: "
64
+ f"input_tokens={usage.input_tokens}, "
65
+ f"output_tokens={usage.output_tokens}, "
66
+ f"total_tokens={usage.total_tokens}"
67
+ )
68
+
69
+ if (
70
+ hasattr(usage, "input_tokens_details")
71
+ and usage.input_tokens_details
72
+ ):
73
+ details = usage.input_tokens_details
74
+ logger.info(f"Input tokens details: {details}")
75
+
76
+ image_bytes = base64.b64decode(base64_image)
77
+
78
+ image_key = f"{context.agent_id}/gpt-image-mini/{job_id}"
79
+
80
+ stored_url = await store_image_bytes(image_bytes, image_key, content_type)
81
+
82
+ return stored_url
83
+
84
+ except openai.OpenAIError as e:
85
+ error_message = f"OpenAI API error: {str(e)}"
86
+ logger.error(error_message)
87
+ raise Exception(error_message)
88
+
89
+ except Exception as e:
90
+ error_message = f"Error generating image with GPT-Image-1-Mini: {str(e)}"
91
+ logger.error(error_message)
92
+ raise Exception(error_message)
@@ -66,6 +66,38 @@
66
66
  "description": "Generate images using OpenAI's GPT-Image-1 model based on text prompts",
67
67
  "default": "private"
68
68
  },
69
+ "gpt_image_mini_generator": {
70
+ "type": "string",
71
+ "title": "Image Generation by GPT Mini",
72
+ "enum": [
73
+ "disabled",
74
+ "public",
75
+ "private"
76
+ ],
77
+ "x-enum-title": [
78
+ "Disabled",
79
+ "Agent Owner + All Users",
80
+ "Agent Owner Only"
81
+ ],
82
+ "description": "Generate images using OpenAI's GPT-Image-1-Mini model based on text prompts",
83
+ "default": "private"
84
+ },
85
+ "gpt_avatar_generator": {
86
+ "type": "string",
87
+ "title": "Avatar Generation by GPT Mini",
88
+ "enum": [
89
+ "disabled",
90
+ "public",
91
+ "private"
92
+ ],
93
+ "x-enum-title": [
94
+ "Disabled",
95
+ "Agent Owner + All Users",
96
+ "Agent Owner Only"
97
+ ],
98
+ "description": "Generate avatar-ready profile images using OpenAI's GPT-Image-1-Mini model",
99
+ "default": "private"
100
+ },
69
101
  "gpt_image_to_image": {
70
102
  "type": "string",
71
103
  "title": "Image Editing by GPT",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes