intentkit 0.8.16.dev1__tar.gz → 0.8.17.dev1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of intentkit might be problematic. Click here for more details.
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/PKG-INFO +1 -1
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/__init__.py +1 -1
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/skills.csv +29 -28
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/pyproject.toml +1 -1
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/x402/__init__.py +12 -4
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/x402/ask_agent.py +5 -71
- intentkit-0.8.17.dev1/skills/x402/base.py +98 -0
- intentkit-0.8.17.dev1/skills/x402/http_request.py +117 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/x402/schema.json +15 -10
- intentkit-0.8.16.dev1/skills/x402/base.py +0 -9
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/.gitignore +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/LICENSE +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/MANIFEST.in +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/abstracts/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/abstracts/agent.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/abstracts/api.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/abstracts/engine.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/abstracts/graph.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/abstracts/skill.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/abstracts/twitter.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/clients/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/clients/cdp.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/clients/twitter.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/clients/web3.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/config/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/config/config.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/agent.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/api.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/asset.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/chat.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/client.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/credit.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/engine.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/node.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/prompt.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/scheduler.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/core/statistics.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/agent.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/agent_data.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/agent_public.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/agent_schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/app_setting.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/chat.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/conversation.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/credit.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/db.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/db_mig.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/generator.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/llm.csv +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/llm.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/redis.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/skill.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/models/user.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/acolyt/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/acolyt/acolyt.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/acolyt/ask.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/acolyt/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/acolyt/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/aixbt/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/aixbt/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/aixbt/aixbt.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/aixbt/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/aixbt/projects.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/aixbt/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/allora/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/allora/allora.jpeg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/allora/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/allora/price.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/allora/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/basename/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/basename/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/basename/basename.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/basename/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/carv/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/carv/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/carv/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/carv/carv.webp +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/carv/fetch_news.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/carv/onchain_query.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/carv/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/carv/token_info_and_price.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/casino.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/deck_draw.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/deck_shuffle.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/dice_roll.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/casino/utils.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cdp/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cdp/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cdp/cdp.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cdp/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/chainlist/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/chainlist/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/chainlist/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/chainlist/chain_lookup.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/chainlist/chainlist.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/chainlist/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/common/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/common/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/common/common.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/common/current_time.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/common/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/constants.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/cookiefun.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/get_account_details.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/get_account_feed.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/get_account_smart_followers.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/get_sectors.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cookiefun/search_accounts.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/api.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/cryptocompare.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/fetch_news.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/fetch_price.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/fetch_top_exchanges.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/fetch_top_market_cap.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/fetch_top_volume.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/fetch_trading_signals.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptocompare/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptopanic/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptopanic/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptopanic/cryptopanic.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptopanic/fetch_crypto_news.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptopanic/fetch_crypto_sentiment.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/cryptopanic/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dapplooker/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dapplooker/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dapplooker/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dapplooker/dapplooker.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dapplooker/dapplooker_token_data.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dapplooker/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/api.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/coins/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/coins/fetch_batch_historical_prices.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/coins/fetch_block.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/coins/fetch_current_prices.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/coins/fetch_first_price.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/coins/fetch_historical_prices.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/coins/fetch_price_chart.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/coins/fetch_price_percentage.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/config/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/config/chains.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/defillama.jpeg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/fees/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/fees/fetch_fees_overview.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/stablecoins/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/stablecoins/fetch_stablecoin_chains.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/stablecoins/fetch_stablecoin_charts.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/stablecoins/fetch_stablecoin_prices.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/stablecoins/fetch_stablecoins.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tests/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tests/api_integration.test.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tests/api_unit.test.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tvl/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tvl/fetch_chain_historical_tvl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tvl/fetch_chains.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tvl/fetch_historical_tvl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tvl/fetch_protocol.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tvl/fetch_protocol_current_tvl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/tvl/fetch_protocols.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/volumes/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/volumes/fetch_dex_overview.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/volumes/fetch_dex_summary.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/volumes/fetch_options_overview.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/yields/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/yields/fetch_pool_chart.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/defillama/yields/fetch_pools.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/dexscreener.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/get_pair_info.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/get_token_pairs.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/get_tokens_info.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/model/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/model/search_token_response.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/search_token.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dexscreener/utils.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dune_analytics/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dune_analytics/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dune_analytics/dune.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dune_analytics/fetch_kol_buys.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dune_analytics/fetch_nation_metrics.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/dune_analytics/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/elfa.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/mention.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/stats.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/tokens.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/elfa/utils.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/abi/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/abi/approval.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/abi/erc20.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/abi/route.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/best_yield.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/enso.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/networks.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/prices.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/route.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/tokens.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/enso/wallet.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/erc20/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/erc20/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/erc20/erc20.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/erc20/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/erc721/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/erc721/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/erc721/erc721.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/erc721/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/clear.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/crawl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/firecrawl.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/query.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/scrape.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/firecrawl/utils.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/github/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/github/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/github/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/github/github.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/github/github_search.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/github/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/heurist.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/image_generation_animagine_xl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/image_generation_arthemy_comics.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/image_generation_arthemy_real.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/image_generation_braindance.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/image_generation_cyber_realistic_xl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/image_generation_flux_1_dev.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/image_generation_sdxl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/heurist/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/http/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/http/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/http/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/http/get.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/http/http.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/http/post.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/http/put.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/http/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/lifi/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/lifi/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/lifi/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/lifi/lifi.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/lifi/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/lifi/token_execute.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/lifi/token_quote.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/lifi/utils.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/api.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/fetch_chain_portfolio.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/fetch_nft_portfolio.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/fetch_solana_portfolio.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/fetch_wallet_portfolio.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/moralis.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/moralis/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/morpho/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/morpho/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/morpho/morpho.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/morpho/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/nation/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/nation/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/nation/nation.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/nation/nft_check.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/nation/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/onchain.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/openai/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/openai/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/openai/dalle_image_generation.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/openai/gpt_image_generation.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/openai/gpt_image_to_image.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/openai/image_to_text.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/openai/openai.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/openai/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/constants.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/moralis.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/token_balances.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_approvals.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_defi_positions.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_history.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_net_worth.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_nfts.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_profitability.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_profitability_summary.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_stats.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/portfolio/wallet_swaps.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/pyth/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/pyth/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/pyth/pyth.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/pyth/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/skills.toml +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/slack/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/slack/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/slack/get_channel.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/slack/get_message.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/slack/schedule_message.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/slack/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/slack/send_message.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/slack/slack.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/delete_data.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/fetch_data.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/insert_data.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/invoke_function.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/supabase.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/update_data.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/supabase/upsert_data.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/superfluid/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/superfluid/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/superfluid/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/superfluid/superfluid.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/add_autonomous_task.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/delete_autonomous_task.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/edit_autonomous_task.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/list_autonomous_tasks.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/read_agent_api_key.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/regenerate_agent_api_key.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/system/system.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/tavily/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/tavily/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/tavily/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/tavily/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/tavily/tavily.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/tavily/tavily_extract.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/tavily/tavily_search.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/constants.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/erc20_transfers.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/moralis.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/token_analytics.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/token_price.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/token/token_search.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/follow_user.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/get_mentions.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/get_timeline.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/get_user_by_username.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/get_user_tweets.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/like_tweet.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/post_tweet.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/reply_tweet.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/retweet.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/search_tweets.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/twitter/twitter.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/unrealspeech/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/unrealspeech/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/unrealspeech/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/unrealspeech/text_to_speech.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/unrealspeech/unrealspeech.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_audio/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_audio/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_audio/input.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_audio/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_audio/venice_audio.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_audio/venice_logo.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/api.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/config.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_enhance/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_enhance/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_enhance/image_enhance.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_enhance/image_enhance_base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_enhance/image_enhance_input.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_fluently_xl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_flux_dev.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_flux_dev_uncensored.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_input.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_lustify_sdxl.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_pony_realism.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_stable_diffusion_3_5.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_generation/image_generation_venice_sd35.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_upscale/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_upscale/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_upscale/image_upscale.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_upscale/image_upscale_base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_upscale/image_upscale_input.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_vision/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_vision/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_vision/image_vision.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_vision/image_vision_base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/image_vision/image_vision_input.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/utils.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/venice_image/venice_image.jpg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/document_indexer.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/langchain.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/scrape_and_index.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/utils.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/web_scraper/website_indexer.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/weth/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/weth/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/weth/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/weth/weth.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/wow/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/wow/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/wow/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/wow/wow.svg +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/x402/x402.webp +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/xmtp/README.md +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/xmtp/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/xmtp/base.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/xmtp/price.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/xmtp/schema.json +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/xmtp/swap.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/xmtp/transfer.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/skills/xmtp/xmtp.png +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/utils/__init__.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/utils/chain.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/utils/error.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/utils/logging.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/utils/random.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/utils/s3.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/utils/schema.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/utils/slack_alert.py +0 -0
- {intentkit-0.8.16.dev1 → intentkit-0.8.17.dev1}/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.17.dev1
|
|
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
|
|
@@ -2,29 +2,29 @@ category,config_name,name,enabled,price_level,price,price_self_key,rate_limit_co
|
|
|
2
2
|
acolyt,ask_gpt,acolyt_ask_gpt,FALSE,1,1,1,,,0x2Bd32A312280bF5A01140e68ca630fB76cE8A3De
|
|
3
3
|
aixbt,aixbt_projects,aixbt_projects,TRUE,3,100,5,,,0x3cdd051eeC909f94965F9c1c657f5b70a172B2C0
|
|
4
4
|
allora,get_price_prediction,allora_get_price_prediction,TRUE,4,230,5,,,0x2Bd32A312280bF5A01140e68ca630fB76cE8A3De
|
|
5
|
-
basename,BasenameActionProvider_register_basename,BasenameActionProvider_register_basename,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
6
|
-
cdp,CdpApiActionProvider_request_faucet_funds,CdpApiActionProvider_request_faucet_funds,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
7
|
-
cdp,CdpEvmWalletActionProvider_get_swap_price,CdpEvmWalletActionProvider_get_swap_price,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
8
|
-
cdp,CdpEvmWalletActionProvider_swap,CdpEvmWalletActionProvider_swap,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
9
|
-
cdp,WalletActionProvider_get_balance,WalletActionProvider_get_balance,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
10
|
-
cdp,WalletActionProvider_get_wallet_details,WalletActionProvider_get_wallet_details,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
11
|
-
cdp,WalletActionProvider_native_transfer,WalletActionProvider_native_transfer,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
12
|
-
erc20,ERC20ActionProvider_get_balance,ERC20ActionProvider_get_balance,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
13
|
-
erc20,ERC20ActionProvider_transfer,ERC20ActionProvider_transfer,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
14
|
-
erc721,Erc721ActionProvider_get_balance,Erc721ActionProvider_get_balance,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
15
|
-
erc721,Erc721ActionProvider_mint,Erc721ActionProvider_mint,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
16
|
-
erc721,Erc721ActionProvider_transfer,Erc721ActionProvider_transfer,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
17
|
-
morpho,MorphoActionProvider_deposit,MorphoActionProvider_deposit,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
18
|
-
morpho,MorphoActionProvider_withdraw,MorphoActionProvider_withdraw,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
19
|
-
pyth,PythActionProvider_fetch_price,PythActionProvider_fetch_price,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
20
|
-
pyth,PythActionProvider_fetch_price_feed,PythActionProvider_fetch_price_feed,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
21
|
-
superfluid,SuperfluidActionProvider_create_flow,SuperfluidActionProvider_create_flow,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
22
|
-
superfluid,SuperfluidActionProvider_delete_flow,SuperfluidActionProvider_delete_flow,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
23
|
-
superfluid,SuperfluidActionProvider_update_flow,SuperfluidActionProvider_update_flow,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
24
|
-
weth,WethActionProvider_wrap_eth,WethActionProvider_wrap_eth,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
25
|
-
wow,WowActionProvider_buy_token,WowActionProvider_buy_token,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
26
|
-
wow,WowActionProvider_create_token,WowActionProvider_create_token,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
27
|
-
wow,WowActionProvider_sell_token,WowActionProvider_sell_token,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
5
|
+
basename,BasenameActionProvider_register_basename,BasenameActionProvider_register_basename,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
6
|
+
cdp,CdpApiActionProvider_request_faucet_funds,CdpApiActionProvider_request_faucet_funds,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
7
|
+
cdp,CdpEvmWalletActionProvider_get_swap_price,CdpEvmWalletActionProvider_get_swap_price,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
8
|
+
cdp,CdpEvmWalletActionProvider_swap,CdpEvmWalletActionProvider_swap,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
9
|
+
cdp,WalletActionProvider_get_balance,WalletActionProvider_get_balance,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
10
|
+
cdp,WalletActionProvider_get_wallet_details,WalletActionProvider_get_wallet_details,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
11
|
+
cdp,WalletActionProvider_native_transfer,WalletActionProvider_native_transfer,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
12
|
+
erc20,ERC20ActionProvider_get_balance,ERC20ActionProvider_get_balance,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
13
|
+
erc20,ERC20ActionProvider_transfer,ERC20ActionProvider_transfer,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
14
|
+
erc721,Erc721ActionProvider_get_balance,Erc721ActionProvider_get_balance,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
15
|
+
erc721,Erc721ActionProvider_mint,Erc721ActionProvider_mint,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
16
|
+
erc721,Erc721ActionProvider_transfer,Erc721ActionProvider_transfer,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
17
|
+
morpho,MorphoActionProvider_deposit,MorphoActionProvider_deposit,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
18
|
+
morpho,MorphoActionProvider_withdraw,MorphoActionProvider_withdraw,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
19
|
+
pyth,PythActionProvider_fetch_price,PythActionProvider_fetch_price,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
20
|
+
pyth,PythActionProvider_fetch_price_feed,PythActionProvider_fetch_price_feed,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
21
|
+
superfluid,SuperfluidActionProvider_create_flow,SuperfluidActionProvider_create_flow,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
22
|
+
superfluid,SuperfluidActionProvider_delete_flow,SuperfluidActionProvider_delete_flow,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
23
|
+
superfluid,SuperfluidActionProvider_update_flow,SuperfluidActionProvider_update_flow,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
24
|
+
weth,WethActionProvider_wrap_eth,WethActionProvider_wrap_eth,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
25
|
+
wow,WowActionProvider_buy_token,WowActionProvider_buy_token,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
26
|
+
wow,WowActionProvider_create_token,WowActionProvider_create_token,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
27
|
+
wow,WowActionProvider_sell_token,WowActionProvider_sell_token,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
28
28
|
chainlist,chain_lookup,chain-lookup,TRUE,1,5,5,,,0x3cdd051eeC909f94965F9c1c657f5b70a172B2C0
|
|
29
29
|
common,current_time,common_current_time,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
30
30
|
cookiefun,get_account_details,cookiefun_get_account_details,TRUE,2,70,5,,,0x3cdd051eeC909f94965F9c1c657f5b70a172B2C0
|
|
@@ -162,10 +162,11 @@ firecrawl,firecrawl_scrape,firecrawl_scrape,TRUE,3,100,5,,,0x3cdd051eeC909f94965
|
|
|
162
162
|
firecrawl,firecrawl_crawl,firecrawl_crawl,TRUE,3,100,5,,,0x3cdd051eeC909f94965F9c1c657f5b70a172B2C0
|
|
163
163
|
firecrawl,firecrawl_query_indexed_content,firecrawl_query_indexed_content,TRUE,1,5,5,,,0x3cdd051eeC909f94965F9c1c657f5b70a172B2C0
|
|
164
164
|
firecrawl,firecrawl_clear_indexed_content,firecrawl_clear_indexed_content,TRUE,1,5,5,,,0x3cdd051eeC909f94965F9c1c657f5b70a172B2C0
|
|
165
|
-
xmtp,xmtp_transfer,xmtp_transfer,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
166
|
-
xmtp,xmtp_swap,xmtp_swap,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
167
|
-
xmtp,xmtp_get_swap_price,xmtp_get_swap_price,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
168
|
-
x402,x402_ask_agent,x402_ask_agent,TRUE,1,1,1,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
169
|
-
|
|
165
|
+
xmtp,xmtp_transfer,xmtp_transfer,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
166
|
+
xmtp,xmtp_swap,xmtp_swap,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
167
|
+
xmtp,xmtp_get_swap_price,xmtp_get_swap_price,TRUE,1,5,5,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
168
|
+
x402,x402_ask_agent,x402_ask_agent,TRUE,1,1,1,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
169
|
+
x402,x402_http_request,x402_http_request,TRUE,1,1,1,,,0x445750026A4a1906b61302442E085f9cbAfe206a
|
|
170
|
+
casino,deck_shuffle,casino_deck_shuffle,true,1,5,5,,,0x3cdd051eec909f94965f9c1c657f5b70a172b2c0
|
|
170
171
|
casino,deck_draw,casino_deck_draw,true,1,5,5,,,0x3cdd051eec909f94965f9c1c657f5b70a172b2c0
|
|
171
172
|
casino,dice_roll,casino_dice_roll,true,1,5,5,,,0x3cdd051eec909f94965f9c1c657f5b70a172b2c0
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"""x402 skill category."""
|
|
2
2
|
|
|
3
3
|
import logging
|
|
4
|
-
from typing import TypedDict
|
|
4
|
+
from typing import Type, TypedDict
|
|
5
5
|
|
|
6
6
|
from intentkit.skills.base import SkillConfig, SkillState
|
|
7
7
|
from intentkit.skills.x402.ask_agent import X402AskAgent
|
|
8
8
|
from intentkit.skills.x402.base import X402BaseSkill
|
|
9
|
+
from intentkit.skills.x402.http_request import X402HttpRequest
|
|
9
10
|
|
|
10
11
|
logger = logging.getLogger(__name__)
|
|
11
12
|
|
|
@@ -14,6 +15,7 @@ _cache: dict[str, X402BaseSkill] = {}
|
|
|
14
15
|
|
|
15
16
|
class SkillStates(TypedDict):
|
|
16
17
|
x402_ask_agent: SkillState
|
|
18
|
+
x402_http_request: SkillState
|
|
17
19
|
|
|
18
20
|
|
|
19
21
|
class Config(SkillConfig):
|
|
@@ -22,6 +24,12 @@ class Config(SkillConfig):
|
|
|
22
24
|
states: SkillStates
|
|
23
25
|
|
|
24
26
|
|
|
27
|
+
_SKILL_BUILDERS: dict[str, Type[X402BaseSkill]] = {
|
|
28
|
+
"x402_ask_agent": X402AskAgent,
|
|
29
|
+
"x402_http_request": X402HttpRequest,
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
|
|
25
33
|
async def get_skills(
|
|
26
34
|
config: "Config",
|
|
27
35
|
is_private: bool,
|
|
@@ -44,10 +52,10 @@ async def get_skills(
|
|
|
44
52
|
|
|
45
53
|
|
|
46
54
|
def _get_skill(name: str) -> X402BaseSkill | None:
|
|
47
|
-
|
|
55
|
+
builder = _SKILL_BUILDERS.get(name)
|
|
56
|
+
if builder:
|
|
48
57
|
if name not in _cache:
|
|
49
|
-
_cache[name] =
|
|
58
|
+
_cache[name] = builder()
|
|
50
59
|
return _cache[name]
|
|
51
|
-
|
|
52
60
|
logger.warning("Unknown x402 skill requested: %s", name)
|
|
53
61
|
return None
|
|
@@ -1,15 +1,9 @@
|
|
|
1
1
|
import logging
|
|
2
|
-
import threading
|
|
3
2
|
from typing import Any, Dict, Optional, Type
|
|
4
3
|
|
|
5
|
-
from coinbase_agentkit.wallet_providers.evm_wallet_provider import (
|
|
6
|
-
EvmWalletSigner as CoinbaseEvmWalletSigner,
|
|
7
|
-
)
|
|
8
4
|
from langchain_core.tools import ToolException
|
|
9
5
|
from pydantic import BaseModel, Field
|
|
10
|
-
from x402.clients.httpx import x402HttpxClient
|
|
11
6
|
|
|
12
|
-
from intentkit.clients import get_wallet_provider
|
|
13
7
|
from intentkit.config.config import config
|
|
14
8
|
from intentkit.models.chat import AuthorType
|
|
15
9
|
from intentkit.skills.x402.base import X402BaseSkill
|
|
@@ -47,15 +41,11 @@ class X402AskAgent(X402BaseSkill):
|
|
|
47
41
|
super_mode: Optional[bool] = None,
|
|
48
42
|
) -> str:
|
|
49
43
|
try:
|
|
44
|
+
# Use wallet provider signer to satisfy eth_account.BaseAccount interface requirements
|
|
50
45
|
base_url = (config.open_api_base_url or "").rstrip("/")
|
|
51
46
|
if not base_url:
|
|
52
|
-
raise
|
|
53
|
-
|
|
54
|
-
# Use wallet provider signer to satisfy eth_account.BaseAccount interface requirements
|
|
55
|
-
context = self.get_context()
|
|
56
|
-
wallet_provider = await get_wallet_provider(context.agent)
|
|
57
|
-
account = ThreadSafeEvmWalletSigner(wallet_provider)
|
|
58
|
-
|
|
47
|
+
raise ToolException("X402 API base URL is not configured.")
|
|
48
|
+
target_url = f"{base_url}/x402"
|
|
59
49
|
payload: Dict[str, Any] = {
|
|
60
50
|
"agent_id": agent_id,
|
|
61
51
|
"message": message,
|
|
@@ -66,12 +56,8 @@ class X402AskAgent(X402BaseSkill):
|
|
|
66
56
|
if super_mode is not None:
|
|
67
57
|
payload["super_mode"] = super_mode
|
|
68
58
|
|
|
69
|
-
async with
|
|
70
|
-
|
|
71
|
-
base_url=base_url,
|
|
72
|
-
timeout=20.0,
|
|
73
|
-
) as client:
|
|
74
|
-
response = await client.post("/x402", json=payload)
|
|
59
|
+
async with self.http_client(timeout=20.0) as client:
|
|
60
|
+
response = await client.post(target_url, json=payload)
|
|
75
61
|
try:
|
|
76
62
|
response.raise_for_status()
|
|
77
63
|
except Exception as e:
|
|
@@ -110,55 +96,3 @@ class X402AskAgent(X402BaseSkill):
|
|
|
110
96
|
except Exception as e:
|
|
111
97
|
logger.error(f"Unexpected error in x402_ask_agent: {str(e)}")
|
|
112
98
|
raise ToolException(f"Unexpected error occurred: {str(e)}") from e
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
class ThreadSafeEvmWalletSigner(CoinbaseEvmWalletSigner):
|
|
116
|
-
"""EVM wallet signer that avoids nested event loop errors.
|
|
117
|
-
|
|
118
|
-
Coinbase's signer runs async wallet calls in the current thread. When invoked
|
|
119
|
-
inside an active asyncio loop (as happens in async skills), it trips over the
|
|
120
|
-
loop already running. We hop work to a background thread so the provider can
|
|
121
|
-
spin up its own loop safely.
|
|
122
|
-
"""
|
|
123
|
-
|
|
124
|
-
def _run_in_thread(self, func: Any, *args: Any, **kwargs: Any) -> Any:
|
|
125
|
-
result: list[Any] = []
|
|
126
|
-
error: list[BaseException] = []
|
|
127
|
-
|
|
128
|
-
def _target() -> None:
|
|
129
|
-
try:
|
|
130
|
-
result.append(func(*args, **kwargs))
|
|
131
|
-
except BaseException as exc: # pragma: no cover - bubble up original error
|
|
132
|
-
error.append(exc)
|
|
133
|
-
|
|
134
|
-
thread = threading.Thread(target=_target, daemon=True)
|
|
135
|
-
thread.start()
|
|
136
|
-
thread.join()
|
|
137
|
-
|
|
138
|
-
if error:
|
|
139
|
-
raise error[0]
|
|
140
|
-
return result[0] if result else None
|
|
141
|
-
|
|
142
|
-
def unsafe_sign_hash(self, message_hash: Any) -> Any:
|
|
143
|
-
return self._run_in_thread(super().unsafe_sign_hash, message_hash)
|
|
144
|
-
|
|
145
|
-
def sign_message(self, signable_message: Any) -> Any:
|
|
146
|
-
return self._run_in_thread(super().sign_message, signable_message)
|
|
147
|
-
|
|
148
|
-
def sign_transaction(self, transaction_dict: Any) -> Any:
|
|
149
|
-
return self._run_in_thread(super().sign_transaction, transaction_dict)
|
|
150
|
-
|
|
151
|
-
def sign_typed_data(
|
|
152
|
-
self,
|
|
153
|
-
domain_data: Optional[Dict[str, Any]] = None,
|
|
154
|
-
message_types: Optional[Dict[str, Any]] = None,
|
|
155
|
-
message_data: Optional[Dict[str, Any]] = None,
|
|
156
|
-
full_message: Optional[Dict[str, Any]] = None,
|
|
157
|
-
) -> Any:
|
|
158
|
-
return self._run_in_thread(
|
|
159
|
-
super().sign_typed_data,
|
|
160
|
-
domain_data=domain_data,
|
|
161
|
-
message_types=message_types,
|
|
162
|
-
message_data=message_data,
|
|
163
|
-
full_message=full_message,
|
|
164
|
-
)
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
import threading
|
|
3
|
+
from contextlib import asynccontextmanager
|
|
4
|
+
from typing import Any, AsyncIterator
|
|
5
|
+
|
|
6
|
+
from coinbase_agentkit.wallet_providers.evm_wallet_provider import (
|
|
7
|
+
EvmWalletSigner as CoinbaseEvmWalletSigner,
|
|
8
|
+
)
|
|
9
|
+
from x402.clients.httpx import x402HttpxClient
|
|
10
|
+
|
|
11
|
+
from intentkit.clients import get_wallet_provider
|
|
12
|
+
from intentkit.skills.onchain import IntentKitOnChainSkill
|
|
13
|
+
|
|
14
|
+
logger = logging.getLogger(__name__)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class X402BaseSkill(IntentKitOnChainSkill):
|
|
18
|
+
"""Base class for x402 skills."""
|
|
19
|
+
|
|
20
|
+
@property
|
|
21
|
+
def category(self) -> str:
|
|
22
|
+
return "x402"
|
|
23
|
+
|
|
24
|
+
async def _get_signer(self) -> "ThreadSafeEvmWalletSigner":
|
|
25
|
+
context = self.get_context()
|
|
26
|
+
wallet_provider = await get_wallet_provider(context.agent)
|
|
27
|
+
return ThreadSafeEvmWalletSigner(wallet_provider)
|
|
28
|
+
|
|
29
|
+
@asynccontextmanager
|
|
30
|
+
async def http_client(
|
|
31
|
+
self,
|
|
32
|
+
timeout: float = 30.0,
|
|
33
|
+
) -> AsyncIterator[x402HttpxClient]:
|
|
34
|
+
account = await self._get_signer()
|
|
35
|
+
try:
|
|
36
|
+
async with x402HttpxClient(
|
|
37
|
+
account=account,
|
|
38
|
+
timeout=timeout,
|
|
39
|
+
) as client:
|
|
40
|
+
yield client
|
|
41
|
+
except Exception:
|
|
42
|
+
logger.exception("Failed to create x402 HTTP client")
|
|
43
|
+
raise
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
class ThreadSafeEvmWalletSigner(CoinbaseEvmWalletSigner):
|
|
47
|
+
"""EVM wallet signer that avoids nested event loop errors.
|
|
48
|
+
|
|
49
|
+
Coinbase's signer runs async wallet calls in the current thread. When invoked
|
|
50
|
+
inside an active asyncio loop (as happens in async skills), it trips over the
|
|
51
|
+
loop already running. We hop work to a background thread so the provider can
|
|
52
|
+
spin up its own loop safely.
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
def __init__(self, wallet_provider: Any):
|
|
56
|
+
super().__init__(wallet_provider=wallet_provider)
|
|
57
|
+
|
|
58
|
+
def _run_in_thread(self, func: Any, *args: Any, **kwargs: Any) -> Any:
|
|
59
|
+
result: list[Any] = []
|
|
60
|
+
error: list[BaseException] = []
|
|
61
|
+
|
|
62
|
+
def _target() -> None:
|
|
63
|
+
try:
|
|
64
|
+
result.append(func(*args, **kwargs))
|
|
65
|
+
except BaseException as exc: # pragma: no cover - bubble up original error
|
|
66
|
+
error.append(exc)
|
|
67
|
+
|
|
68
|
+
thread = threading.Thread(target=_target, daemon=True)
|
|
69
|
+
thread.start()
|
|
70
|
+
thread.join()
|
|
71
|
+
|
|
72
|
+
if error:
|
|
73
|
+
raise error[0]
|
|
74
|
+
return result[0] if result else None
|
|
75
|
+
|
|
76
|
+
def unsafe_sign_hash(self, message_hash: Any) -> Any:
|
|
77
|
+
return self._run_in_thread(super().unsafe_sign_hash, message_hash)
|
|
78
|
+
|
|
79
|
+
def sign_message(self, signable_message: Any) -> Any:
|
|
80
|
+
return self._run_in_thread(super().sign_message, signable_message)
|
|
81
|
+
|
|
82
|
+
def sign_transaction(self, transaction_dict: Any) -> Any:
|
|
83
|
+
return self._run_in_thread(super().sign_transaction, transaction_dict)
|
|
84
|
+
|
|
85
|
+
def sign_typed_data(
|
|
86
|
+
self,
|
|
87
|
+
domain_data: Any | None = None,
|
|
88
|
+
message_types: Any | None = None,
|
|
89
|
+
message_data: Any | None = None,
|
|
90
|
+
full_message: Any | None = None,
|
|
91
|
+
) -> Any:
|
|
92
|
+
return self._run_in_thread(
|
|
93
|
+
super().sign_typed_data,
|
|
94
|
+
domain_data=domain_data,
|
|
95
|
+
message_types=message_types,
|
|
96
|
+
message_data=message_data,
|
|
97
|
+
full_message=full_message,
|
|
98
|
+
)
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
from typing import Any, Dict, Optional, Type, Union
|
|
3
|
+
from urllib.parse import urlparse
|
|
4
|
+
|
|
5
|
+
import httpx
|
|
6
|
+
from langchain_core.tools import ToolException
|
|
7
|
+
from pydantic import BaseModel, Field
|
|
8
|
+
|
|
9
|
+
from intentkit.skills.x402.base import X402BaseSkill
|
|
10
|
+
|
|
11
|
+
logger = logging.getLogger(__name__)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class X402HttpRequestInput(BaseModel):
|
|
15
|
+
"""Arguments for a generic x402 HTTP request."""
|
|
16
|
+
|
|
17
|
+
method: str = Field(description="HTTP method to use. Supported values: GET, POST.")
|
|
18
|
+
url: str = Field(
|
|
19
|
+
description="Absolute URL for the request (must include scheme and host)."
|
|
20
|
+
)
|
|
21
|
+
headers: Optional[Dict[str, str]] = Field(
|
|
22
|
+
default=None,
|
|
23
|
+
description="Optional headers to include in the request.",
|
|
24
|
+
)
|
|
25
|
+
params: Optional[Dict[str, Any]] = Field(
|
|
26
|
+
default=None,
|
|
27
|
+
description="Optional query parameters to include in the request.",
|
|
28
|
+
)
|
|
29
|
+
data: Optional[Union[Dict[str, Any], str]] = Field(
|
|
30
|
+
default=None,
|
|
31
|
+
description=(
|
|
32
|
+
"Optional request body. Dictionaries are sent as JSON; strings are sent as raw data. "
|
|
33
|
+
"Only supported for POST requests."
|
|
34
|
+
),
|
|
35
|
+
)
|
|
36
|
+
timeout: Optional[float] = Field(
|
|
37
|
+
default=30.0,
|
|
38
|
+
description="Request timeout in seconds.",
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class X402HttpRequest(X402BaseSkill):
|
|
43
|
+
"""Skill that performs signed HTTP requests via the x402 client."""
|
|
44
|
+
|
|
45
|
+
name: str = "x402_http_request"
|
|
46
|
+
description: str = (
|
|
47
|
+
"Send an HTTP GET or POST request using the x402 payment protocol. "
|
|
48
|
+
"Provide the method, absolute URL, optional headers, query parameters, and request body. "
|
|
49
|
+
"Returns the response status and body text."
|
|
50
|
+
)
|
|
51
|
+
args_schema: Type[BaseModel] = X402HttpRequestInput
|
|
52
|
+
|
|
53
|
+
async def _arun(
|
|
54
|
+
self,
|
|
55
|
+
method: str,
|
|
56
|
+
url: str,
|
|
57
|
+
headers: Optional[Dict[str, str]] = None,
|
|
58
|
+
params: Optional[Dict[str, Any]] = None,
|
|
59
|
+
data: Optional[Union[Dict[str, Any], str]] = None,
|
|
60
|
+
timeout: float = 30.0,
|
|
61
|
+
**_: Any,
|
|
62
|
+
) -> str:
|
|
63
|
+
method_upper = method.upper()
|
|
64
|
+
if method_upper not in {"GET", "POST"}:
|
|
65
|
+
raise ToolException(
|
|
66
|
+
f"Unsupported HTTP method '{method}'. Only GET and POST are allowed."
|
|
67
|
+
)
|
|
68
|
+
|
|
69
|
+
parsed = urlparse(url)
|
|
70
|
+
if not (parsed.scheme and parsed.netloc):
|
|
71
|
+
raise ToolException("URL must include scheme and host (absolute URL).")
|
|
72
|
+
|
|
73
|
+
request_headers = dict(headers or {})
|
|
74
|
+
request_kwargs: Dict[str, Any] = {
|
|
75
|
+
"url": url,
|
|
76
|
+
"headers": request_headers or None,
|
|
77
|
+
"params": params,
|
|
78
|
+
"timeout": timeout,
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
if method_upper == "POST":
|
|
82
|
+
if isinstance(data, dict):
|
|
83
|
+
header_keys = {key.lower() for key in request_headers}
|
|
84
|
+
if "content-type" not in header_keys:
|
|
85
|
+
request_headers["Content-Type"] = "application/json"
|
|
86
|
+
request_kwargs["json"] = data
|
|
87
|
+
elif isinstance(data, str):
|
|
88
|
+
request_kwargs["content"] = data
|
|
89
|
+
elif data is not None:
|
|
90
|
+
raise ToolException(
|
|
91
|
+
"POST body must be either a JSON-serializable object or a string."
|
|
92
|
+
)
|
|
93
|
+
elif data is not None:
|
|
94
|
+
raise ToolException("Request body is only supported for POST requests.")
|
|
95
|
+
|
|
96
|
+
try:
|
|
97
|
+
async with self.http_client(timeout=timeout) as client:
|
|
98
|
+
response = await client.request(method_upper, **request_kwargs)
|
|
99
|
+
response.raise_for_status()
|
|
100
|
+
return f"Status: {response.status_code}\nContent: {response.text}"
|
|
101
|
+
except ValueError as exc:
|
|
102
|
+
raise ToolException(str(exc)) from exc
|
|
103
|
+
except httpx.TimeoutException as exc:
|
|
104
|
+
raise ToolException(
|
|
105
|
+
f"Request to {url} timed out after {timeout} seconds"
|
|
106
|
+
) from exc
|
|
107
|
+
except httpx.HTTPStatusError as exc:
|
|
108
|
+
raise ToolException(
|
|
109
|
+
f"HTTP {exc.response.status_code} - {exc.response.text}"
|
|
110
|
+
) from exc
|
|
111
|
+
except httpx.RequestError as exc:
|
|
112
|
+
raise ToolException(f"Failed to connect to {url} - {str(exc)}") from exc
|
|
113
|
+
except ToolException:
|
|
114
|
+
raise
|
|
115
|
+
except Exception as exc:
|
|
116
|
+
logger.error("Unexpected error in x402_http_request", exc_info=exc)
|
|
117
|
+
raise ToolException(f"Unexpected error occurred - {str(exc)}") from exc
|
|
@@ -4,10 +4,7 @@
|
|
|
4
4
|
"title": "x402",
|
|
5
5
|
"description": "Interact with other IntentKit agents through the x402 payment protocol.",
|
|
6
6
|
"x-icon": "https://ai.service.crestal.dev/skills/x402/x402.webp",
|
|
7
|
-
"x-tags": [
|
|
8
|
-
"Communication",
|
|
9
|
-
"Infrastructure"
|
|
10
|
-
],
|
|
7
|
+
"x-tags": ["Communication", "Infrastructure"],
|
|
11
8
|
"properties": {
|
|
12
9
|
"enabled": {
|
|
13
10
|
"type": "boolean",
|
|
@@ -21,11 +18,7 @@
|
|
|
21
18
|
"x402_ask_agent": {
|
|
22
19
|
"type": "string",
|
|
23
20
|
"title": "Ask Agent",
|
|
24
|
-
"enum": [
|
|
25
|
-
"disabled",
|
|
26
|
-
"public",
|
|
27
|
-
"private"
|
|
28
|
-
],
|
|
21
|
+
"enum": ["disabled", "public", "private"],
|
|
29
22
|
"x-enum-title": [
|
|
30
23
|
"Disabled",
|
|
31
24
|
"Agent Owner + All Users",
|
|
@@ -33,8 +26,20 @@
|
|
|
33
26
|
],
|
|
34
27
|
"description": "Send a message to another IntentKit agent via the x402 API and return the final agent response.",
|
|
35
28
|
"default": "disabled"
|
|
29
|
+
},
|
|
30
|
+
"x402_http_request": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"title": "HTTP Request",
|
|
33
|
+
"enum": ["disabled", "public", "private"],
|
|
34
|
+
"x-enum-title": [
|
|
35
|
+
"Disabled",
|
|
36
|
+
"Agent Owner + All Users",
|
|
37
|
+
"Agent Owner Only"
|
|
38
|
+
],
|
|
39
|
+
"description": "Perform a signed HTTP GET or POST request via the x402 payment protocol.",
|
|
40
|
+
"default": "disabled"
|
|
36
41
|
}
|
|
37
42
|
}
|
|
38
43
|
}
|
|
39
44
|
}
|
|
40
|
-
}
|
|
45
|
+
}
|
|
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
|