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.
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/PKG-INFO +1 -1
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/__init__.py +1 -1
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/asset.py +17 -3
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/credit.py +10 -10
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/skills.csv +5 -3
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/pyproject.toml +1 -1
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/utils.py +1 -1
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/__init__.py +12 -0
- intentkit-0.8.21/skills/openai/gpt_avatar_generator.py +102 -0
- intentkit-0.8.21/skills/openai/gpt_image_mini_generator.py +92 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/schema.json +32 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/.gitignore +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/LICENSE +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/MANIFEST.in +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/agent.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/api.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/engine.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/graph.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/skill.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/abstracts/twitter.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/clients/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/clients/cdp.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/clients/twitter.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/clients/web3.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/config/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/config/config.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/agent.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/api.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/chat.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/client.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/engine.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/node.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/prompt.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/scheduler.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/core/statistics.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/agent.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/agent_data.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/agent_public.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/agent_schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/app_setting.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/chat.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/conversation.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/credit.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/db.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/db_mig.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/llm.csv +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/llm.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/redis.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/skill.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/models/user.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/acolyt.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/ask.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/acolyt/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/aixbt.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/projects.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/aixbt/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/allora.jpeg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/price.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/allora/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/basename/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/basename/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/basename/basename.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/basename/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/carv.webp +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/fetch_news.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/onchain_query.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/carv/token_info_and_price.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/casino.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/deck_draw.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/deck_shuffle.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/dice_roll.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/casino/utils.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cdp/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cdp/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cdp/cdp.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cdp/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/chain_lookup.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/chainlist.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/chainlist/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/common.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/current_time.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/common/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/constants.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/cookiefun.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/get_account_details.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/get_account_feed.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/get_account_smart_followers.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/get_sectors.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cookiefun/search_accounts.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/api.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/cryptocompare.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_news.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_price.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_top_exchanges.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_top_market_cap.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_top_volume.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/fetch_trading_signals.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptocompare/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/cryptopanic.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/fetch_crypto_news.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/fetch_crypto_sentiment.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/cryptopanic/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/dapplooker.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/dapplooker_token_data.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dapplooker/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/api.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_batch_historical_prices.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_block.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_current_prices.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_first_price.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_historical_prices.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_price_chart.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/coins/fetch_price_percentage.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/config/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/config/chains.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/defillama.jpeg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/fees/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/fees/fetch_fees_overview.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/fetch_stablecoin_chains.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/fetch_stablecoin_charts.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/fetch_stablecoin_prices.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/stablecoins/fetch_stablecoins.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tests/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tests/api_integration.test.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tests/api_unit.test.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_chain_historical_tvl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_chains.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_historical_tvl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_protocol.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_protocol_current_tvl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/tvl/fetch_protocols.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/volumes/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/volumes/fetch_dex_overview.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/volumes/fetch_dex_summary.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/volumes/fetch_options_overview.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/yields/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/yields/fetch_pool_chart.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/defillama/yields/fetch_pools.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/dexscreener.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/get_pair_info.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/get_token_pairs.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/get_tokens_info.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/model/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/model/search_token_response.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/search_token.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dexscreener/utils.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/dune.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/fetch_kol_buys.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/fetch_nation_metrics.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/dune_analytics/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/elfa.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/mention.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/stats.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/tokens.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/elfa/utils.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/abi/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/abi/approval.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/abi/erc20.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/abi/route.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/best_yield.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/enso.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/networks.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/prices.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/route.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/tokens.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/enso/wallet.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc20/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc20/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc20/erc20.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc20/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc721/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc721/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc721/erc721.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/erc721/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/clear.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/crawl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/firecrawl.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/query.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/firecrawl/scrape.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/github.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/github_search.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/github/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/heurist.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_animagine_xl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_arthemy_comics.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_arthemy_real.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_braindance.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_cyber_realistic_xl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_flux_1_dev.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/image_generation_sdxl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/heurist/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/get.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/http.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/post.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/put.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/http/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/lifi.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/token_execute.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/token_quote.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/lifi/utils.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/api.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/fetch_chain_portfolio.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/fetch_nft_portfolio.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/fetch_solana_portfolio.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/fetch_wallet_portfolio.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/moralis.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/moralis/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/morpho/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/morpho/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/morpho/morpho.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/morpho/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/nation.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/nft_check.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/nation/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/onchain.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/dalle_image_generation.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/gpt_image_generation.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/gpt_image_to_image.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/image_to_text.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/openai/openai.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/constants.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/moralis.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/token_balances.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_approvals.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_defi_positions.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_history.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_net_worth.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_nfts.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_profitability.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_profitability_summary.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_stats.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/portfolio/wallet_swaps.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/pyth/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/pyth/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/pyth/pyth.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/pyth/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/skills.toml +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/get_channel.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/get_message.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/schedule_message.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/send_message.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/slack/slack.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/delete_data.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/fetch_data.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/insert_data.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/invoke_function.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/supabase.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/update_data.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/supabase/upsert_data.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/superfluid/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/superfluid/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/superfluid/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/superfluid/superfluid.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/add_autonomous_task.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/delete_autonomous_task.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/edit_autonomous_task.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/list_autonomous_tasks.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/read_agent_api_key.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/regenerate_agent_api_key.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/system/system.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/tavily.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/tavily_extract.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/tavily/tavily_search.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/constants.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/erc20_transfers.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/moralis.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/token_analytics.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/token_price.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/token/token_search.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/follow_user.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/get_mentions.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/get_timeline.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/get_user_by_username.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/get_user_tweets.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/like_tweet.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/post_tweet.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/reply_tweet.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/retweet.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/search_tweets.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/twitter/twitter.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/text_to_speech.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/unrealspeech/unrealspeech.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/input.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/venice_audio.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_audio/venice_logo.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/api.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/config.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/image_enhance.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/image_enhance_base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_enhance/image_enhance_input.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_fluently_xl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_flux_dev.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_flux_dev_uncensored.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_input.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_lustify_sdxl.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_pony_realism.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_stable_diffusion_3_5.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_generation/image_generation_venice_sd35.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/image_upscale.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/image_upscale_base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_upscale/image_upscale_input.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/image_vision.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/image_vision_base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/image_vision/image_vision_input.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/utils.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/venice_image/venice_image.jpg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/document_indexer.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/langchain.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/scrape_and_index.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/utils.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/web_scraper/website_indexer.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/weth/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/weth/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/weth/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/weth/weth.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/wow/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/wow/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/wow/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/wow/wow.svg +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/ask_agent.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/http_request.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/x402/x402.webp +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/README.md +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/base.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/price.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/schema.json +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/swap.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/transfer.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/skills/xmtp/xmtp.png +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/__init__.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/chain.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/error.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/logging.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/random.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/s3.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/schema.py +0 -0
- {intentkit-0.8.17.dev2 → intentkit-0.8.21}/utils/slack_alert.py +0 -0
- {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.
|
|
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
|
|
@@ -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": [
|
|
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(
|
|
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
|
-
|
|
1289
|
-
if
|
|
1290
|
-
agent_skill_config
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
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,
|
|
101
|
-
openai,gpt_image_generation,gpt_image_generation,TRUE,5,400,
|
|
102
|
-
openai,
|
|
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
|
|
@@ -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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|