better-opencode-async-agents
v0.2.1
Published
Background task management plugin for OpenCode AI
Maintainers
Readme
Better OpenCode Async Agents
An unopinionated, Async, Forkable, Resumable, Parallelizable multi-agent plugin for OpenCode.
Configuration
Add the plugin to your opencode.json(c):
{
"plugin": ["better-opencode-async-agents"]
}Overview
This is the subagent/subtask plugin we all know and love, with some key features that support advanced agent control:
Async & Batch Task Execution: Run multiple agent tasks in parallel without blocking the main conversation. Launch tasks individually or in batches and continue working while they execute.
Real-time Progress Tracking: Live updates with spinner animations and tool call counts. See exactly what each agent is doing as it works.
Resumable & Cancellable: Resume completed tasks with follow-up messages for multi-turn conversations. Cancel running tasks at any time.
Context Forking Support: Fork the current conversation context to spawn new agent sessions that inherit the parent's context.
Automatic Context Truncation: When forking, context is intelligently truncated to fit within token limits while preserving the most relevant information.
Dynamic Agent Response Collection: Collect responses from agents in blocking or non-blocking modes. Wait for all tasks to complete or check progress incrementally.
Variable Timeouts: Configure custom timeouts per task. Some tasks need seconds, others need minutes - you decide.
Tools Provided
| Tool | Description |
|------|-------------|
| asyncagents_task | Launch async background agent tasks with description, prompt, and agent type |
| asyncagents_output | Get task results (blocking or non-blocking) with configurable timeout |
| asyncagents_cancel | Cancel a running task |
| asyncagents_list | List all tasks with optional status filter |
| asyncagents_clear | Abort and clear all tasks |
Philosophy
This is an unopinionated tool. It provides the primitives for async multi-agent orchestration without imposing a specific workflow. You decide:
- When to block vs. fire-and-forget
- How to structure your agent hierarchy
- What context to fork and when
- How long to wait for results
Build your own patterns on top of these building blocks.
Development
# Install dependencies
bun install
# Build the project
bun run build
# Run tests
bun test
# Type check
bun run typecheckLicense
MIT
For issues, questions, or contributions, visit the GitHub repository.
