Background Agents
Background Agents
Background Agents 为 OpenCode 带来了 Claude Code 风格的异步委派功能。发起研究任务后,你可以继续头脑风暴或编码,在需要时获取结果。结果以 Markdown 文件保存到磁盘,即使上下文被压缩也不会丢失。
核心特性
| 特性 | 说明 |
|---|---|
| 保持工作 | 研究任务在后台运行,你可以继续编码 |
| 抗压缩 | 结果以 Markdown 文件保存到磁盘 |
| 即发即忘 | ”服务员模式” — 结果就绪时收到通知 |
| 稳定的委派 ID | 在状态、产物路径、通知和检索中复用 |
| 终态保护 | 延迟的进度事件不能回退终态状态 |
工作原理
1. 委派 → "研究 OAuth2 PKCE 最佳实践"
2. 继续 → 继续编码、头脑风暴、代码审查
3. 通知 → <task-notification> 在终态时到达
4. 获取 → AI 调用 delegation_read() 获取结果
结果持久化到 ~/.local/share/opencode/delegations/ 目录下的 Markdown 文件中。
安装
通过 KDCO 注册表安装(推荐)
ocx add kdco/background-agents --from https://registry.kdco.dev
或安装完整的工作区套件:
ocx add kdco/workspace --from https://registry.kdco.dev
手动安装
将 src/ 中的源文件复制到 .opencode/plugin/background-agents.ts。需要手动安装 unique-names-generator 依赖。
工具
| 工具 | 用途 |
|---|---|
delegate(prompt, agent) | 启动后台任务 |
delegation_read(id) | 获取特定委派的结果 |
delegation_list() | 列出所有委派及其标题和摘要 |
限制
- 仅支持只读子代理(
edit=deny、write=deny、bash deny) — 需要写操作的子代理必须使用原生task工具 - 15 分钟委派超时
- 插件兼容的生命周期对等,非运行时内部对等
链接
- GitHub 仓库 — 源代码和问题反馈
- OCX Monorepo — 贡献和开发
- Awesome OpenCode — 浏览更多插件