intentkit 1.2.1__tar.gz → 1.2.2__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-1.2.1 → intentkit-1.2.2}/PKG-INFO +1 -1
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/__init__.py +1 -1
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/engine.py +2 -2
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/call_agent.py +1 -1
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/sub_agents/__init__.py +3 -15
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/sub_agents/agent_manager.py +53 -3
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/engine.py +6 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/service.py +55 -11
- intentkit-1.2.2/intentkit/skills/availability.py +118 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/pyproject.toml +1 -1
- intentkit-1.2.1/intentkit/core/lead/sub_agents/task_manager.py +0 -94
- {intentkit-1.2.1 → intentkit-1.2.2}/.gitignore +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/LICENSE +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/app/team/intentkit/docker-compose.yml +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/.dockerignore +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/LICENSE +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/MANIFEST.in +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/abstracts/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/abstracts/agent.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/abstracts/api.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/abstracts/engine.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/abstracts/graph.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/abstracts/skill.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/abstracts/twitter.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/abstracts/wallet.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/mcp/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/mcp/client.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/mcp/registry.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/mcp/tool.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/mcp/wrapper.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/moralis.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/s3.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/s3_setup.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/supabase.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/twitter.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/clients/web3_ens.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/config/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/config/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/config/config.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/config/db.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/config/db_mig.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/config/redis.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/account_checking.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/analytics.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/management.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/notifications.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/public_info.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/publish.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/queries.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent/wallet.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent_activity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/agent_post.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/api.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/asset.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/autonomous.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/avatar.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/budget.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/chat.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/cleanup.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/client.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/adjustment.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/expense.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/list_events.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/plan_credit.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/recharge.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/refill.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/reward.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/credit/withdraw.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/draft.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/draft_chat.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/engine.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/executor.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/cache.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/service.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/add_autonomous_task.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/create_team_agent.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/delete_autonomous_task.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/edit_autonomous_task.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/get_post.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/get_self_info.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/get_team_agent.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/get_team_info.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/list_autonomous_tasks.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/list_skills.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/list_team_agents.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/llm.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/recent_team_activities.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/recent_team_posts.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/update_self.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/update_self_memory.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/update_team_agent.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/skills/update_user_profile.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/sub_agents/content_manager.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/sub_agents/self_updater.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/lead/sub_agents/user_manager.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/add_autonomous_task.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/delete_autonomous_task.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/draft.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/edit_autonomous_task.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/list_autonomous_tasks.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/llm.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/manager/skills/public_info.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/memory.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/middleware.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/prompt.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/public_agents.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/public_api.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/scheduler.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/share_link.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/statistics.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/call_agent.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/create_activity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/create_post.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/current_time.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/get_post.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/read_webpage.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/recent_activities.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/recent_posts.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/search_web.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/system_skills/update_memory.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/task_registry.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/team/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/team/channel.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/team/feed.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/team/membership.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/team/push.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/team/subscription.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/team/wechat_session_notice.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/template.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/core/user.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/agent.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/autonomous.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/core.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/db.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/public.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/public_info.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/response.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent/user_input.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent_activity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/agent_post.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/app_setting.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/chat.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/credit/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/credit/account.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/credit/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/credit/event.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/credit/price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/credit/transaction.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/draft.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/llm.csv +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/llm.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/llm_picker.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/share_link.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/skill.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/team.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/team_channel.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/team_feed.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/template.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/user.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/user_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/models/x402_order.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/aave_v3.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/borrow.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/get_reserve_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/get_user_account_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/repay.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/set_collateral.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/supply.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aave_v3/withdraw.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/acp.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/cancel_checkout.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/complete_checkout.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/create_checkout.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/get_checkout.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/list_products.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/acp/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/add_liquidity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/aerodrome.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/get_positions.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/quote.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/remove_liquidity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/swap.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aerodrome/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aixbt/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aixbt/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aixbt/aixbt.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aixbt/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aixbt/projects.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/aixbt/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/allora/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/allora/allora.jpeg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/allora/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/allora/price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/allora/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/basename/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/basename/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/basename/basename.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/basename/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/basename/register.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/basename/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/carv/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/carv/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/carv/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/carv/carv.webp +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/carv/fetch_news.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/carv/onchain_query.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/carv/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/carv/token_info_and_price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/casino.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/deck_draw.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/deck_shuffle.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/dice_roll.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/casino/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cdp/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cdp/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cdp/cdp.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cdp/get_balance.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cdp/get_wallet_details.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cdp/native_transfer.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cdp/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/chainlist/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/chainlist/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/chainlist/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/chainlist/chain_lookup.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/chainlist/chainlist.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/chainlist/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/cookiefun.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/get_account_details.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/get_account_feed.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/get_account_smart_followers.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/get_sectors.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cookiefun/search_accounts.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/api.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/cryptocompare.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/fetch_news.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/fetch_price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/fetch_top_exchanges.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/fetch_top_market_cap.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/fetch_top_volume.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/fetch_trading_signals.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptocompare/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptopanic/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptopanic/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptopanic/cryptopanic.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptopanic/fetch_crypto_news.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptopanic/fetch_crypto_sentiment.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/cryptopanic/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dapplooker/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dapplooker/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dapplooker/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dapplooker/dapplooker.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dapplooker/dapplooker_token_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dapplooker/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/api.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/coins/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/coins/fetch_batch_historical_prices.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/coins/fetch_block.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/coins/fetch_current_prices.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/coins/fetch_first_price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/coins/fetch_historical_prices.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/coins/fetch_price_chart.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/coins/fetch_price_percentage.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/config/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/config/chains.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/defillama.jpeg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/fees/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/fees/fetch_fees_overview.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/stablecoins/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/stablecoins/fetch_stablecoin_chains.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/stablecoins/fetch_stablecoin_charts.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/stablecoins/fetch_stablecoin_prices.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/stablecoins/fetch_stablecoins.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tests/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tests/api_integration.test.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tests/api_unit.test.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tvl/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tvl/fetch_chain_historical_tvl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tvl/fetch_chains.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tvl/fetch_historical_tvl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tvl/fetch_protocol.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tvl/fetch_protocol_current_tvl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/tvl/fetch_protocols.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/volumes/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/volumes/fetch_dex_overview.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/volumes/fetch_dex_summary.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/volumes/fetch_options_overview.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/yields/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/yields/fetch_pool_chart.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/defillama/yields/fetch_pools.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/dexscreener.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/get_pair_info.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/get_token_pairs.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/get_tokens_info.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/model/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/model/search_token_response.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/search_token.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dexscreener/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dune/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dune/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dune/dune.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dune/execute_query.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dune/get_query_results.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dune/run_sql.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/dune/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/elfa.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/mention.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/stats.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/tokens.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/elfa/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/abi/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/abi/approval.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/abi/erc20.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/abi/route.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/best_yield.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/enso.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/networks.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/prices.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/route.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/tokens.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/enso/wallet.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/erc20.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/get_balance.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/get_token_address.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/transfer.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc20/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc721/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc721/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc721/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc721/erc721.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc721/get_balance.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc721/mint.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc721/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/erc721/transfer.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/clear.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/crawl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/firecrawl.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/query.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/scrape.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/firecrawl/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/github/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/github/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/github/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/github/github.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/github/github_search.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/github/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/heurist.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/image_generation_animagine_xl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/image_generation_arthemy_comics.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/image_generation_arthemy_real.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/image_generation_braindance.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/image_generation_cyber_realistic_xl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/image_generation_flux_1_dev.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/image_generation_sdxl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/heurist/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/http/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/http/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/http/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/http/get.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/http/http.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/http/post.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/http/put.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/http/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/gemini.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/gpt.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/grok.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/image.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/minimax.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/openrouter.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/image/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/jupiter/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/jupiter/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/jupiter/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/jupiter/jupiter.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/jupiter/price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/jupiter/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/jupiter/swap.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/lifi/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/lifi/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/lifi/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/lifi/lifi.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/lifi/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/lifi/token_execute.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/lifi/token_quote.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/lifi/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/mcp_coingecko/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/mcp_coingecko/coingecko.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/mcp_coingecko/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/api.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/fetch_chain_portfolio.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/fetch_nft_portfolio.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/fetch_solana_portfolio.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/fetch_wallet_portfolio.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/moralis.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/moralis/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/borrow.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/deposit.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/get_position.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/get_vault_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/morpho.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/repay.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/supply_collateral.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/withdraw.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/morpho/withdraw_collateral.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/onchain.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/buy_nft.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/cancel_listing.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/create_listing.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/get_collection.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/get_collection_stats.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/get_events.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/get_listings.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/get_nft.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/get_nfts_by_account.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/get_offers.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/onchain_base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/opensea.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/opensea/update_listing.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/add_liquidity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/get_positions.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/pancakeswap.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/quote.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/remove_liquidity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/swap.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pancakeswap/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/cancel_order.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/get_market.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/get_orderbook.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/get_orders.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/get_positions.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/get_price_history.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/get_trades.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/place_order.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/polymarket.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/polymarket/search_markets.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/moralis.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/token_balances.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_approvals.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_defi_positions.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_history.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_net_worth.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_nfts.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_profitability.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_profitability_summary.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_stats.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/portfolio/wallet_swaps.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pyth/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pyth/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pyth/fetch_price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pyth/fetch_price_feed.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pyth/pyth.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/pyth/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/slack/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/slack/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/slack/get_channel.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/slack/get_message.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/slack/schedule_message.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/slack/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/slack/send_message.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/slack/slack.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/delete_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/fetch_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/insert_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/invoke_function.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/supabase.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/update_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/supabase/upsert_data.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/superfluid/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/superfluid/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/superfluid/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/superfluid/create_flow.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/superfluid/delete_flow.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/superfluid/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/superfluid/superfluid.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/superfluid/update_flow.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/tavily/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/tavily/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/tavily/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/tavily/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/tavily/tavily.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/tavily/tavily_extract.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/tavily/tavily_search.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/erc20_transfers.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/moralis.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/token_analytics.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/token_price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/token/token_search.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/follow_user.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/get_mentions.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/get_timeline.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/get_user_by_username.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/get_user_tweets.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/like_tweet.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/post_tweet.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/reply_tweet.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/retweet.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/search_tweets.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/twitter/twitter.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/ui/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/ui/ask_user.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/ui/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/ui/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/ui/show_card.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/ui/ui.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/add_liquidity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/get_positions.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/quote.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/remove_liquidity.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/swap.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/uniswap.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/uniswap/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/unrealspeech/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/unrealspeech/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/unrealspeech/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/unrealspeech/text_to_speech.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/unrealspeech/unrealspeech.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_audio/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_audio/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_audio/input.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_audio/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_audio/venice_audio.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_audio/venice_logo.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/api.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/config.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_enhance/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_enhance/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_enhance/image_enhance.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_enhance/image_enhance_base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_enhance/image_enhance_input.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_fluently_xl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_flux_dev.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_flux_dev_uncensored.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_input.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_lustify_sdxl.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_pony_realism.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_stable_diffusion_3_5.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_generation/image_generation_venice_sd35.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_upscale/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_upscale/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_upscale/image_upscale.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_upscale/image_upscale_base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_upscale/image_upscale_input.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_vision/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_vision/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_vision/image_vision.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_vision/image_vision_base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/image_vision/image_vision_input.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/venice_image/venice_image.jpg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/video/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/video/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/video/gemini.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/video/gpt.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/video/grok.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/video/minimax.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/video/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/video/video.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/document_indexer.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/langchain.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/scrape_and_index.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/web_scraper/website_indexer.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/weth/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/weth/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/weth/constants.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/weth/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/weth/unwrap_eth.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/weth/weth.svg +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/weth/wrap_eth.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/check_price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/get_orders.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/http_request.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/httpx_compat.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/pay.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/x402/x402.webp +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/xmtp/README.md +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/xmtp/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/xmtp/base.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/xmtp/price.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/xmtp/schema.json +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/xmtp/swap.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/xmtp/transfer.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/skills/xmtp/xmtp.png +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/alert.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/alert_handler.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/chain.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/ens.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/error.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/logging.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/opengraph.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/pdf.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/random.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/s3_setup.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/schema.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/slack_alert.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/telegram_alert.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/templates/post_pdf.html +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/time.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/tx.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/utils/upload.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/__init__.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/cdp.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/evm_wallet.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/native.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/privy.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/privy_client.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/privy_nonce.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/privy_safe.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/privy_signer.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/privy_types.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/privy_utils.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/signer.py +0 -0
- {intentkit-1.2.1 → intentkit-1.2.2}/intentkit/wallets/web3.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: intentkit
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.2
|
|
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
|
|
@@ -70,8 +70,8 @@ async def _build_lead_agent(team_id: str) -> Agent:
|
|
|
70
70
|
prompt = (
|
|
71
71
|
"### Sub-Agents\n\n"
|
|
72
72
|
"Use `lead_call_agent` to delegate:\n\n"
|
|
73
|
-
"- `agent-manager`:
|
|
74
|
-
"
|
|
73
|
+
"- `agent-manager`: Manage team agents — create, configure, update, "
|
|
74
|
+
"and schedule autonomous (cron) tasks on them.\n"
|
|
75
75
|
"- `self-updater`: Update your own name, avatar, personality, or memory.\n"
|
|
76
76
|
"- `content-manager`: Read team activities and posts.\n"
|
|
77
77
|
"- `user-manager`: Update the current user's profile (name, timezone, language).\n\n"
|
|
@@ -43,7 +43,7 @@ class LeadCallAgent(LeadSkill):
|
|
|
43
43
|
"""Team-aware call_agent that supports both in-memory sub-agents and DB agents.
|
|
44
44
|
|
|
45
45
|
Resolution order:
|
|
46
|
-
1. Check in-memory sub-agent registry (agent-manager,
|
|
46
|
+
1. Check in-memory sub-agent registry (agent-manager, self-updater, etc.)
|
|
47
47
|
2. Fall back to database agent lookup (scoped to team)
|
|
48
48
|
"""
|
|
49
49
|
|
|
@@ -20,7 +20,6 @@ logger = logging.getLogger(__name__)
|
|
|
20
20
|
|
|
21
21
|
# Sub-agent slug constants
|
|
22
22
|
SLUG_AGENT_MANAGER = "agent-manager"
|
|
23
|
-
SLUG_TASK_MANAGER = "task-manager"
|
|
24
23
|
SLUG_SELF_UPDATER = "self-updater"
|
|
25
24
|
SLUG_CONTENT_MANAGER = "content-manager"
|
|
26
25
|
SLUG_USER_MANAGER = "user-manager"
|
|
@@ -109,10 +108,6 @@ from intentkit.core.lead.sub_agents.self_updater import ( # noqa: E402
|
|
|
109
108
|
build_self_updater,
|
|
110
109
|
get_self_updater_skills,
|
|
111
110
|
)
|
|
112
|
-
from intentkit.core.lead.sub_agents.task_manager import ( # noqa: E402
|
|
113
|
-
build_task_manager,
|
|
114
|
-
get_task_manager_skills,
|
|
115
|
-
)
|
|
116
111
|
from intentkit.core.lead.sub_agents.user_manager import ( # noqa: E402
|
|
117
112
|
build_user_manager,
|
|
118
113
|
get_user_manager_skills,
|
|
@@ -122,20 +117,13 @@ SUB_AGENT_REGISTRY: dict[str, SubAgentDefinition] = {
|
|
|
122
117
|
SLUG_AGENT_MANAGER: SubAgentDefinition(
|
|
123
118
|
slug=SLUG_AGENT_MANAGER,
|
|
124
119
|
description=(
|
|
125
|
-
"Manages team agents: create, update, configure, list
|
|
126
|
-
"
|
|
120
|
+
"Manages team agents end-to-end: create, update, configure, list "
|
|
121
|
+
"agents, and schedule autonomous tasks on them. Also exposes LLM "
|
|
122
|
+
"model info and available skills for agent configuration."
|
|
127
123
|
),
|
|
128
124
|
build_fn=build_agent_manager,
|
|
129
125
|
skills_fn=get_agent_manager_skills,
|
|
130
126
|
),
|
|
131
|
-
SLUG_TASK_MANAGER: SubAgentDefinition(
|
|
132
|
-
slug=SLUG_TASK_MANAGER,
|
|
133
|
-
description=(
|
|
134
|
-
"Manages autonomous tasks: list, add, edit, delete scheduled tasks for agents."
|
|
135
|
-
),
|
|
136
|
-
build_fn=build_task_manager,
|
|
137
|
-
skills_fn=get_task_manager_skills,
|
|
138
|
-
),
|
|
139
127
|
SLUG_SELF_UPDATER: SubAgentDefinition(
|
|
140
128
|
slug=SLUG_SELF_UPDATER,
|
|
141
129
|
description=(
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"""Agent Manager sub-agent
|
|
1
|
+
"""Agent Manager sub-agent: agent CRUD plus autonomous tasks scheduled on those agents."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
@@ -7,9 +7,21 @@ from datetime import datetime, timezone
|
|
|
7
7
|
|
|
8
8
|
from langchain_core.tools import BaseTool
|
|
9
9
|
|
|
10
|
+
from intentkit.core.lead.skills.add_autonomous_task import (
|
|
11
|
+
lead_add_autonomous_task_skill,
|
|
12
|
+
)
|
|
10
13
|
from intentkit.core.lead.skills.create_team_agent import create_team_agent_skill
|
|
14
|
+
from intentkit.core.lead.skills.delete_autonomous_task import (
|
|
15
|
+
lead_delete_autonomous_task_skill,
|
|
16
|
+
)
|
|
17
|
+
from intentkit.core.lead.skills.edit_autonomous_task import (
|
|
18
|
+
lead_edit_autonomous_task_skill,
|
|
19
|
+
)
|
|
11
20
|
from intentkit.core.lead.skills.get_team_agent import get_team_agent_skill
|
|
12
21
|
from intentkit.core.lead.skills.get_team_info import get_team_info_skill
|
|
22
|
+
from intentkit.core.lead.skills.list_autonomous_tasks import (
|
|
23
|
+
lead_list_autonomous_tasks_skill,
|
|
24
|
+
)
|
|
13
25
|
from intentkit.core.lead.skills.list_skills import lead_list_available_skills_skill
|
|
14
26
|
from intentkit.core.lead.skills.list_team_agents import list_team_agents_skill
|
|
15
27
|
from intentkit.core.lead.skills.llm import lead_get_available_llms_skill
|
|
@@ -28,6 +40,10 @@ def get_agent_manager_skills() -> Sequence[BaseTool]:
|
|
|
28
40
|
update_team_agent_skill,
|
|
29
41
|
lead_get_available_llms_skill,
|
|
30
42
|
lead_list_available_skills_skill,
|
|
43
|
+
lead_list_autonomous_tasks_skill,
|
|
44
|
+
lead_add_autonomous_task_skill,
|
|
45
|
+
lead_edit_autonomous_task_skill,
|
|
46
|
+
lead_delete_autonomous_task_skill,
|
|
31
47
|
]
|
|
32
48
|
|
|
33
49
|
|
|
@@ -76,6 +92,37 @@ def build_agent_manager(team_id: str) -> Agent:
|
|
|
76
92
|
"- Access levels: `public` (all users), `private` (owner only)\n"
|
|
77
93
|
"- Only include skills you want to enable — omitted skills stay disabled\n"
|
|
78
94
|
"- The backend will reject unknown categories or skill names with an error\n\n"
|
|
95
|
+
"### Internet Search\n\n"
|
|
96
|
+
"To give an agent web search ability, set the agent field "
|
|
97
|
+
"`search_internet` to `true`. That switch enables the LLM provider's "
|
|
98
|
+
"native web search and is the correct way to add general-purpose "
|
|
99
|
+
"search. Do NOT add categories like `tavily`, `firecrawl`, "
|
|
100
|
+
"`web_scraper`, etc. just to grant search — those are backups for "
|
|
101
|
+
"specialised scraping/extraction needs and only belong in `skills` "
|
|
102
|
+
"when the agent really needs them.\n\n"
|
|
103
|
+
"### Autonomous Tasks\n\n"
|
|
104
|
+
"Tasks belong to an agent and run on a cron schedule. Use these tools:\n"
|
|
105
|
+
"- `lead_list_autonomous_tasks` — list tasks on an agent (call before "
|
|
106
|
+
"edit/delete to discover task IDs).\n"
|
|
107
|
+
"- `lead_add_autonomous_task` — schedule a new task.\n"
|
|
108
|
+
"- `lead_edit_autonomous_task` — update fields on an existing task.\n"
|
|
109
|
+
"- `lead_delete_autonomous_task` — remove a task.\n\n"
|
|
110
|
+
"Workflow:\n"
|
|
111
|
+
"1. If the user did not name an agent, call `lead_list_team_agents`.\n"
|
|
112
|
+
"2. Call `lead_list_autonomous_tasks` to see existing tasks before "
|
|
113
|
+
"adding/editing/deleting.\n"
|
|
114
|
+
"3. Apply the change.\n\n"
|
|
115
|
+
"Cron expressions (5 fields: min hour day month weekday):\n"
|
|
116
|
+
"- `*/5 * * * *` — every 5 min\n"
|
|
117
|
+
"- `0 */2 * * *` — every 2 hours\n"
|
|
118
|
+
"- `0 9 * * *` — daily 9:00 UTC\n"
|
|
119
|
+
"- `0 9 * * 1-5` — weekdays 9:00 UTC\n\n"
|
|
120
|
+
"Conditional tasks: for condition-based work, schedule a polling "
|
|
121
|
+
"task (e.g. every 5 min). Unless the user wants it to run forever, "
|
|
122
|
+
"tell the task to delete itself once the condition is met.\n\n"
|
|
123
|
+
"Tips:\n"
|
|
124
|
+
"- Set `has_memory=True` only when the task needs context between runs.\n"
|
|
125
|
+
"- Prefer disabling (`enabled=False`) over deleting for temporary pauses.\n\n"
|
|
79
126
|
"### Agent Fields Reference\n\n"
|
|
80
127
|
"- `name`: Display name (max 50 chars)\n"
|
|
81
128
|
"- `purpose`, `personality`, `principles`: Agent character\n"
|
|
@@ -99,9 +146,12 @@ def build_agent_manager(team_id: str) -> Agent:
|
|
|
99
146
|
"owner": "system",
|
|
100
147
|
"team_id": team_id,
|
|
101
148
|
"name": "Agent Manager",
|
|
102
|
-
"purpose":
|
|
149
|
+
"purpose": (
|
|
150
|
+
"Create, configure, and update team agents, including the "
|
|
151
|
+
"autonomous tasks scheduled on those agents."
|
|
152
|
+
),
|
|
103
153
|
"principles": (
|
|
104
|
-
"1. Speak to users in their language, but use English in agent configuration.\n"
|
|
154
|
+
"1. Speak to users in their language, but use English in agent and task configuration.\n"
|
|
105
155
|
"2. All changes are directly deployed (no draft flow).\n"
|
|
106
156
|
"3. Update is override — provide complete field values, not just changes."
|
|
107
157
|
),
|
|
@@ -102,6 +102,12 @@ def _build_manager_agent(agent_id: str, user_id: str) -> Agent:
|
|
|
102
102
|
```
|
|
103
103
|
The `enabled` flag is at the category level, and `states` refers to specific skills.
|
|
104
104
|
For content involving sensitive material, select `private`. For content suitable for all users, select `public`.
|
|
105
|
+
|
|
106
|
+
Internet search: to give an agent web search, set the agent field `search_internet` to `true`.
|
|
107
|
+
That switch enables the LLM provider's native web search and is the right tool for general-purpose
|
|
108
|
+
searching. Do NOT add categories like `tavily`, `firecrawl`, `web_scraper`, etc. just to give the
|
|
109
|
+
agent search ability — those categories are backups for specialised scraping/extraction needs and
|
|
110
|
+
only belong in the skills config when the agent really requires them.
|
|
105
111
|
"""
|
|
106
112
|
"\n\n### Public Information\n\n"
|
|
107
113
|
"Only agents that have already been deployed at least once can have their public"
|
|
@@ -13,6 +13,12 @@ from fastapi import status
|
|
|
13
13
|
|
|
14
14
|
from intentkit.core.agent import get_agent
|
|
15
15
|
from intentkit.models.agent import AgentPublicInfo, AgentUserInput
|
|
16
|
+
from intentkit.skills.availability import (
|
|
17
|
+
filter_unavailable_states,
|
|
18
|
+
import_skill_category,
|
|
19
|
+
is_individual_skill_available,
|
|
20
|
+
is_skill_category_available,
|
|
21
|
+
)
|
|
16
22
|
from intentkit.utils.error import IntentKitAPIError
|
|
17
23
|
|
|
18
24
|
logger = logging.getLogger(__name__)
|
|
@@ -50,8 +56,18 @@ def agent_draft_json_schema() -> dict[str, object]:
|
|
|
50
56
|
if not schema_path.is_file():
|
|
51
57
|
continue
|
|
52
58
|
|
|
59
|
+
category = entry.name
|
|
60
|
+
|
|
61
|
+
module = import_skill_category(category)
|
|
62
|
+
if module is None or not is_skill_category_available(module):
|
|
63
|
+
logger.info(
|
|
64
|
+
"Skipped skill category '%s' for manager schema: not available",
|
|
65
|
+
category,
|
|
66
|
+
)
|
|
67
|
+
continue
|
|
68
|
+
|
|
53
69
|
try:
|
|
54
|
-
|
|
70
|
+
skill_schema = _load_skill_schema(schema_path)
|
|
55
71
|
except (
|
|
56
72
|
OSError,
|
|
57
73
|
ValueError,
|
|
@@ -59,9 +75,19 @@ def agent_draft_json_schema() -> dict[str, object]:
|
|
|
59
75
|
jsonref.JsonRefError,
|
|
60
76
|
) as exc:
|
|
61
77
|
logger.warning(
|
|
62
|
-
"Failed to load schema for skill '%s': %s",
|
|
78
|
+
"Failed to load schema for skill '%s': %s", category, exc
|
|
63
79
|
)
|
|
64
80
|
continue
|
|
81
|
+
|
|
82
|
+
schema_props = skill_schema.get("properties")
|
|
83
|
+
if isinstance(schema_props, dict):
|
|
84
|
+
states = schema_props.get("states")
|
|
85
|
+
if isinstance(states, dict):
|
|
86
|
+
schema_props["states"] = filter_unavailable_states(
|
|
87
|
+
module, category, states
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
skills_properties[category] = skill_schema
|
|
65
91
|
except (AttributeError, ModuleNotFoundError, ImportError):
|
|
66
92
|
logger.warning("intentkit skills package not found when building schema")
|
|
67
93
|
return schema
|
|
@@ -88,28 +114,38 @@ def get_skills_hierarchical_text() -> str:
|
|
|
88
114
|
if not schema_path.is_file():
|
|
89
115
|
continue
|
|
90
116
|
|
|
117
|
+
category = entry.name
|
|
118
|
+
|
|
119
|
+
module = import_skill_category(category)
|
|
120
|
+
if module is None or not is_skill_category_available(module):
|
|
121
|
+
logger.info(
|
|
122
|
+
"Skipped skill category '%s' for hierarchical text: "
|
|
123
|
+
"not available",
|
|
124
|
+
category,
|
|
125
|
+
)
|
|
126
|
+
continue
|
|
127
|
+
|
|
91
128
|
try:
|
|
92
129
|
skill_schema = _load_skill_schema(schema_path)
|
|
93
|
-
skill_name = entry.name
|
|
94
130
|
skill_title = skill_schema.get(
|
|
95
|
-
"title",
|
|
131
|
+
"title", category.replace("_", " ").title()
|
|
96
132
|
)
|
|
97
133
|
skill_description = skill_schema.get(
|
|
98
134
|
"description", "No description available"
|
|
99
135
|
)
|
|
100
136
|
skill_tags = cast(list[str], skill_schema.get("x-tags", ["Other"]))
|
|
101
137
|
|
|
102
|
-
# Use the first tag as the primary
|
|
138
|
+
# Use the first tag as the primary group
|
|
103
139
|
primary_category = skill_tags[0] if skill_tags else "Other"
|
|
104
140
|
|
|
105
|
-
if primary_category not in categories:
|
|
106
|
-
categories[primary_category] = []
|
|
107
|
-
|
|
108
|
-
# Extract individual skills from states.properties
|
|
109
141
|
individual_skills: list[dict[str, str]] = []
|
|
110
142
|
states_props = _get_states_properties(skill_schema)
|
|
111
143
|
if states_props:
|
|
112
144
|
for ind_name, ind_def in states_props.items():
|
|
145
|
+
if not is_individual_skill_available(
|
|
146
|
+
module, category, ind_name
|
|
147
|
+
):
|
|
148
|
+
continue
|
|
113
149
|
ind_desc = (
|
|
114
150
|
ind_def.get("description", "No description available")
|
|
115
151
|
if isinstance(ind_def, dict)
|
|
@@ -119,9 +155,17 @@ def get_skills_hierarchical_text() -> str:
|
|
|
119
155
|
{"name": ind_name, "description": ind_desc}
|
|
120
156
|
)
|
|
121
157
|
|
|
158
|
+
# Drop the category entirely if every skill was filtered;
|
|
159
|
+
# surfacing an empty group would just be noise to the LLM.
|
|
160
|
+
if states_props and not individual_skills:
|
|
161
|
+
continue
|
|
162
|
+
|
|
163
|
+
if primary_category not in categories:
|
|
164
|
+
categories[primary_category] = []
|
|
165
|
+
|
|
122
166
|
categories[primary_category].append(
|
|
123
167
|
{
|
|
124
|
-
"name":
|
|
168
|
+
"name": category,
|
|
125
169
|
"title": skill_title,
|
|
126
170
|
"description": skill_description,
|
|
127
171
|
"individual_skills": individual_skills,
|
|
@@ -135,7 +179,7 @@ def get_skills_hierarchical_text() -> str:
|
|
|
135
179
|
jsonref.JsonRefError,
|
|
136
180
|
) as exc:
|
|
137
181
|
logger.warning(
|
|
138
|
-
"Failed to load schema for skill '%s': %s",
|
|
182
|
+
"Failed to load schema for skill '%s': %s", category, exc
|
|
139
183
|
)
|
|
140
184
|
continue
|
|
141
185
|
except (AttributeError, ModuleNotFoundError, ImportError):
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"""Helpers for inspecting which skills are usable in the current deployment.
|
|
2
|
+
|
|
3
|
+
A skill category exposes a module-level ``available()`` callable that checks
|
|
4
|
+
its system config (API keys, env vars, etc.). Individual skills inside a
|
|
5
|
+
category may also expose ``available()`` on the instance for finer-grained
|
|
6
|
+
gating (e.g. wallet/scope checks). These helpers wrap both layers so callers
|
|
7
|
+
that build user-facing skill listings (``app/common/schema.py``,
|
|
8
|
+
``intentkit/core/manager/service.py``) can drop everything that wouldn't
|
|
9
|
+
actually run.
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
from __future__ import annotations
|
|
13
|
+
|
|
14
|
+
import importlib
|
|
15
|
+
import logging
|
|
16
|
+
from types import ModuleType
|
|
17
|
+
from typing import Any, Callable
|
|
18
|
+
|
|
19
|
+
logger = logging.getLogger(__name__)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def import_skill_category(category: str) -> ModuleType | None:
|
|
23
|
+
"""Import a skill category module, returning None on failure."""
|
|
24
|
+
try:
|
|
25
|
+
return importlib.import_module(f"intentkit.skills.{category}")
|
|
26
|
+
except Exception as exc:
|
|
27
|
+
logger.warning("Could not import skill category '%s': %s", category, exc)
|
|
28
|
+
return None
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def is_skill_category_available(module: ModuleType) -> bool:
|
|
32
|
+
"""Whether the category module reports itself available.
|
|
33
|
+
|
|
34
|
+
Missing ``available()`` defaults to True; a raising ``available()``
|
|
35
|
+
defaults to False so a misconfigured skill never blocks the listing.
|
|
36
|
+
"""
|
|
37
|
+
available_fn = getattr(module, "available", None)
|
|
38
|
+
if available_fn is None:
|
|
39
|
+
return True
|
|
40
|
+
try:
|
|
41
|
+
return bool(available_fn())
|
|
42
|
+
except Exception as exc:
|
|
43
|
+
logger.debug(
|
|
44
|
+
"available() raised for category module %r: %s", module.__name__, exc
|
|
45
|
+
)
|
|
46
|
+
return False
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def find_skill_getter(module: ModuleType, category: str) -> Callable[..., Any] | None:
|
|
50
|
+
"""Locate the ``get_<name>_skill`` accessor for a category module.
|
|
51
|
+
|
|
52
|
+
Convention is ``get_{category}_skill``; falls back to any ``get_*_skill``
|
|
53
|
+
attribute (e.g. ``moralis`` exposes ``get_wallet_skill``).
|
|
54
|
+
"""
|
|
55
|
+
getter = getattr(module, f"get_{category}_skill", None)
|
|
56
|
+
if getter is not None:
|
|
57
|
+
return getter
|
|
58
|
+
for attr_name in dir(module):
|
|
59
|
+
if attr_name.startswith("get_") and attr_name.endswith("_skill"):
|
|
60
|
+
return getattr(module, attr_name)
|
|
61
|
+
return None
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
def is_individual_skill_available(
|
|
65
|
+
module: ModuleType, category: str, skill_name: str
|
|
66
|
+
) -> bool:
|
|
67
|
+
"""Whether a specific skill within a category reports itself available.
|
|
68
|
+
|
|
69
|
+
Defaults to True when the module has no getter, the getter raises, the
|
|
70
|
+
skill instance is None, or the skill exposes no ``available()``.
|
|
71
|
+
"""
|
|
72
|
+
getter = find_skill_getter(module, category)
|
|
73
|
+
if getter is None:
|
|
74
|
+
return True
|
|
75
|
+
try:
|
|
76
|
+
skill = getter(skill_name)
|
|
77
|
+
except Exception as exc:
|
|
78
|
+
logger.debug("Skill getter raised for '%s/%s': %s", category, skill_name, exc)
|
|
79
|
+
return True
|
|
80
|
+
if skill is None:
|
|
81
|
+
return True
|
|
82
|
+
available_fn = getattr(skill, "available", None)
|
|
83
|
+
if available_fn is None:
|
|
84
|
+
return True
|
|
85
|
+
try:
|
|
86
|
+
return bool(available_fn())
|
|
87
|
+
except Exception as exc:
|
|
88
|
+
logger.debug(
|
|
89
|
+
"available() raised for skill '%s/%s': %s", category, skill_name, exc
|
|
90
|
+
)
|
|
91
|
+
return False
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
def filter_unavailable_states(
|
|
95
|
+
module: ModuleType, category: str, states_schema: dict[str, Any]
|
|
96
|
+
) -> dict[str, Any]:
|
|
97
|
+
"""Drop unavailable individual skills from a JSON-schema ``states`` block.
|
|
98
|
+
|
|
99
|
+
Returns a new dict with ``properties`` (and ``required``, if present)
|
|
100
|
+
pruned. The input is not mutated.
|
|
101
|
+
"""
|
|
102
|
+
properties = states_schema.get("properties")
|
|
103
|
+
if not isinstance(properties, dict):
|
|
104
|
+
return states_schema
|
|
105
|
+
|
|
106
|
+
filtered_properties: dict[str, Any] = {}
|
|
107
|
+
for skill_name, skill_schema in properties.items():
|
|
108
|
+
if not is_individual_skill_available(module, category, skill_name):
|
|
109
|
+
logger.info(
|
|
110
|
+
"Filtered out skill '%s/%s': not available", category, skill_name
|
|
111
|
+
)
|
|
112
|
+
continue
|
|
113
|
+
filtered_properties[skill_name] = skill_schema
|
|
114
|
+
|
|
115
|
+
result = {**states_schema, "properties": filtered_properties}
|
|
116
|
+
if "required" in result and isinstance(result["required"], list):
|
|
117
|
+
result["required"] = [r for r in result["required"] if r in filtered_properties]
|
|
118
|
+
return result
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"""Task Manager sub-agent definition."""
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
|
|
5
|
-
from collections.abc import Sequence
|
|
6
|
-
from datetime import datetime, timezone
|
|
7
|
-
|
|
8
|
-
from langchain_core.tools import BaseTool
|
|
9
|
-
|
|
10
|
-
from intentkit.core.lead.skills.add_autonomous_task import (
|
|
11
|
-
lead_add_autonomous_task_skill,
|
|
12
|
-
)
|
|
13
|
-
from intentkit.core.lead.skills.delete_autonomous_task import (
|
|
14
|
-
lead_delete_autonomous_task_skill,
|
|
15
|
-
)
|
|
16
|
-
from intentkit.core.lead.skills.edit_autonomous_task import (
|
|
17
|
-
lead_edit_autonomous_task_skill,
|
|
18
|
-
)
|
|
19
|
-
from intentkit.core.lead.skills.list_autonomous_tasks import (
|
|
20
|
-
lead_list_autonomous_tasks_skill,
|
|
21
|
-
)
|
|
22
|
-
from intentkit.core.lead.skills.list_team_agents import list_team_agents_skill
|
|
23
|
-
from intentkit.models.agent import Agent
|
|
24
|
-
from intentkit.models.llm_picker import pick_default_model
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
def get_task_manager_skills() -> Sequence[BaseTool]:
|
|
28
|
-
"""Return skills for the task manager sub-agent."""
|
|
29
|
-
return [
|
|
30
|
-
list_team_agents_skill,
|
|
31
|
-
lead_list_autonomous_tasks_skill,
|
|
32
|
-
lead_add_autonomous_task_skill,
|
|
33
|
-
lead_edit_autonomous_task_skill,
|
|
34
|
-
lead_delete_autonomous_task_skill,
|
|
35
|
-
]
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
def build_task_manager(team_id: str) -> Agent:
|
|
39
|
-
"""Build an in-memory Task Manager sub-agent."""
|
|
40
|
-
now = datetime.now(timezone.utc)
|
|
41
|
-
|
|
42
|
-
prompt = (
|
|
43
|
-
"### Workflow\n\n"
|
|
44
|
-
"1. If agent unspecified, call `lead_list_team_agents`.\n"
|
|
45
|
-
"2. `lead_list_autonomous_tasks` to see existing tasks.\n"
|
|
46
|
-
"3. Add, edit, or delete as needed.\n\n"
|
|
47
|
-
"### Cron Expressions\n\n"
|
|
48
|
-
"5 fields: min hour day month weekday\n"
|
|
49
|
-
"- `*/5 * * * *` — every 5 min\n"
|
|
50
|
-
"- `0 */2 * * *` — every 2 hours\n"
|
|
51
|
-
"- `0 9 * * *` — daily 9:00 UTC\n"
|
|
52
|
-
"- `0 9 * * 1-5` — weekdays 9:00 UTC\n\n"
|
|
53
|
-
"### Conditional Tasks\n\n"
|
|
54
|
-
"For condition-based tasks, create a polling task (e.g., every 5 min). "
|
|
55
|
-
"Unless user says continuous, add self-deletion after success in the prompt.\n\n"
|
|
56
|
-
"### Tips\n\n"
|
|
57
|
-
"- `has_memory=True` only when needing context between runs\n"
|
|
58
|
-
"- Disable (`enabled=False`) rather than delete for temporary pauses\n"
|
|
59
|
-
)
|
|
60
|
-
|
|
61
|
-
agent_data = {
|
|
62
|
-
"id": f"team-{team_id}-task-manager",
|
|
63
|
-
"owner": "system",
|
|
64
|
-
"team_id": team_id,
|
|
65
|
-
"name": "Task Manager",
|
|
66
|
-
"purpose": "Manage autonomous scheduled tasks for team agents.",
|
|
67
|
-
"principles": (
|
|
68
|
-
"1. Speak to users in their language, but use English in task configuration.\n"
|
|
69
|
-
"2. Use clear, descriptive task names."
|
|
70
|
-
),
|
|
71
|
-
"model": pick_default_model(),
|
|
72
|
-
"prompt": prompt,
|
|
73
|
-
"temperature": 0.2,
|
|
74
|
-
"search_internet": False,
|
|
75
|
-
"super_mode": False,
|
|
76
|
-
"enable_todo": False,
|
|
77
|
-
"enable_activity": False,
|
|
78
|
-
"enable_post": False,
|
|
79
|
-
"enable_long_term_memory": False,
|
|
80
|
-
"sub_agents": None,
|
|
81
|
-
"skills": {
|
|
82
|
-
"ui": {
|
|
83
|
-
"enabled": True,
|
|
84
|
-
"states": {
|
|
85
|
-
"ui_show_card": "private",
|
|
86
|
-
"ui_ask_user": "private",
|
|
87
|
-
},
|
|
88
|
-
},
|
|
89
|
-
},
|
|
90
|
-
"created_at": now,
|
|
91
|
-
"updated_at": now,
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
return Agent.model_validate(agent_data)
|
|
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
|