用途 worktree 让每个智能体在共享仓库中拥有独立检出,避免多个会话争抢同一工作树。worktree::create 会基于指定分支或 PR 头创建加锁的 git worktree 并记录归属,返回路径作为智能体的工作目录;worktree::land 负责合并回目标分支。建树返回的路径同时作为该轮的文件系统作用域根(metadata.fs_scope.root),由 shell worker 围栏文件访问。
主要能力与用法 create 支持从基础 ref 或 pr: <number>(抓取 origin 的 refs/pull/<n>/head)建树;list、get、validate 用于查看登记、状态与校验;claim、release 在会话间移交归属;status 报告干净标记、ahead/behind、暂存与未跟踪计数、diffstat、进行中的 rebase;remove、prune 负责清理;land 将 rebase、可选测试、快进目标、清理串成流水线,立即返回 job_id,按仓库经引擎 FIFO 队列串行执行。land 的测试关卡委托 shell::exec,因此需安装 shell worker,且 worktree_root 必须位于其 fs.host_roots 受限范围内。启用 provision.copy_ignored 后,create 会在后台把源仓库被 gitignore 的文件复制到新工作树。需要监听落地结果时,注册 worktree::landed、land-blocked、claimed、released、removed 等触发类型,可带 repo_path、worktree_id、session_id 过滤。
适用场景 并行智能体隔离作业、在隔离环境审查或试跑 GitHub PR、先跑测试再把完成分支合并回 main、land 因冲突被阻断后原地解决再重跑。
限制 不推送远端、不开 PR、不与代码托管平台交互;land 仅快进本地分支,无合并提交或 squash 策略;非 create 产生的工作树视为 unmanaged 且不会被接管;每个引擎只能运行一个实例,多实例需按仓库分片;破坏性操作受配置门控,force 路径默认关闭,出错码 W5xx 表示配置拒绝而非执行失败,消息会给出需调整的键。命令或编辑文件请使用 shell worker,以工作树路径为 cwd。其余细节资料暂未提供。