-
Notifications
You must be signed in to change notification settings - Fork 9
[Feat]: Native Async Support for Skill Execution #18
Copy link
Copy link
Open
Labels
core frameworkChanges to loader, env, or base classes.Changes to loader, env, or base classes.enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed
Description
Feature Description
Many high-value agentic skills—such as web scraping, long-running database queries, or external API calls—are heavily I/O bound. The current Skillware framework and its provided examples (gemini_wallet_check.py, etc.) assume blocking, synchronous execution for all tool calls.
We need to add first-class asynchronous support to the framework so skills can be executed concurrently without blocking the main event loop.
Rationale
To enable scalable, high-performance agent orchestration. If a user deploys an agent ecosystem in production using FastAPI or WebSockets, synchronous skill execution will block the entire thread, causing massive bottlenecks when multiple agents are running simultaneously.
Implementation Idea
- Extend the
BaseSkilldefinition or the SkillLoader engine to optionally detect and gracefully invoke anasync def run(...)method in the skill payload. - Update the Claude and Gemini adapter documentation to show how to seamlessly handle promises/coroutines when the LLM triggers an asynchronous skill.
- Add a reference implementation (e.g.,
examples/async_gemini_agent.py) utilizingasyncio.gather()to showcase non-blocking tool execution to the community.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
core frameworkChanges to loader, env, or base classes.Changes to loader, env, or base classes.enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed