用途:当多个子任务之间没有共享文件、没有依赖关系时可以同时执行,用于加速包含多组件功能的实现。
主要能力与用法:先用 bash .opencode/skills/task-management/router.sh parallel {feature} 查看子任务 JSON 中 parallel: true 的任务,输出会列出可同时执行的批次(如 Batch 1 就绪任务、Batch 2 依赖前一批的任务)。执行时在单条消息中发起多个 task() 调用,例如 task(subagent_type="CoderAgent", description="Execute subtask 01", prompt="Read .tmp/tasks/feature/subtask_01.json and implement..."),关键点是所有 task() 必须放在同一条消息,而非分开发送。全部完成后用 bash .opencode/skills/task-management/router.sh status {feature} 检查批次内任务是否标记为 status: "completed",再执行下一批。共享上下文应在并行前一次性加载,如 Read .opencode/context/core/standards/code-quality.md 与 security-patterns.md,避免每个任务各自查找。
适用场景:转换多个互不相关的子代理文件、创建彼此独立的服务文件等。资料给出的示例是 5 个任务各 10 分钟,串行约 50 分钟,并行约 10 分钟。
限制:不能并行修改同一文件的多个任务(会产生合并冲突,应改为串行或把 parallel 标为 false),不能并行有依赖关系的任务;批次内所有任务完成前不得开始下一批;单个任务失败需先修复再进入下一批。建议批次规模为 2-4 个任务,真正独立时最多 8 个。其他上下文与限制资料暂未提供。