工作目录改进 #102

Closed
opened 2026-06-05 17:25:13 +08:00 by pzhang_zywl · 4 comments
Owner

改进工作目录避免冲突

C:\Users\peterz\projects
document_analyzer\ ← 人类工作区
da-worktrees
dev-agent-01\ ← Dev-Agent 独立工作区
qe-agent-01\ ← QE-Agent 独立工作区

  • 共享同一个 .git,不重复下载,各自切换分支互不影响
  • Claude Code 内置支持 EnterWorktree,直接创建隔离工作区
  • Agent 启动脚本自动创建 worktree,用完可删
改进工作目录避免冲突 C:\Users\peterz\projects\ document_analyzer\ ← 人类工作区 da-worktrees\ dev-agent-01\ ← Dev-Agent 独立工作区 qe-agent-01\ ← QE-Agent 独立工作区 - 共享同一个 .git,不重复下载,各自切换分支互不影响 - Claude Code 内置支持 EnterWorktree,直接创建隔离工作区 - Agent 启动脚本自动创建 worktree,用完可删
Author
Owner

通过PR来完成改进。
PR merge to main以后自动close issue.

通过PR来完成改进。 PR merge to main以后自动close issue.
Author
Owner

Dev-Agent 已领取,正在实现 worktree 隔离方案。


[pzhangzywl]

Dev-Agent 已领取,正在实现 worktree 隔离方案。 --- [pzhangzywl]
Author
Owner

改动方案

  1. _common.sh — 新增两个函数:

    • setup_worktree() — 在 ~/.gitea/worktrees/<user>/ 创建/复用 git worktree,切换到独立分支
    • cleanup_worktree() — 关闭时清理 worktree
    • 新增 _MAIN_REPO_DIR 常量指向原始仓库,与 PROJECT_DIR(最终指向 worktree)分离
  2. start_dev_agent.sh / start_qe_agent.sh — 开头增加 setup_worktree $GITEA_USER,退出时调用 cleanup_worktree

  3. DEV_AGENT.md / QE_AGENT.md — 启动行为增加 worktree 说明

最终效果

启动 agent 后自动创建隔离目录:

多个 agent 同时改不同文件、不同分支,互不干扰。


[pzhangzywl]

## 改动方案 1. **_common.sh** — 新增两个函数: - `setup_worktree()` — 在 `~/.gitea/worktrees/<user>/` 创建/复用 git worktree,切换到独立分支 - `cleanup_worktree()` — 关闭时清理 worktree - 新增 `_MAIN_REPO_DIR` 常量指向原始仓库,与 `PROJECT_DIR`(最终指向 worktree)分离 2. **start_dev_agent.sh / start_qe_agent.sh** — 开头增加 `setup_worktree $GITEA_USER`,退出时调用 `cleanup_worktree` 3. **DEV_AGENT.md / QE_AGENT.md** — 启动行为增加 worktree 说明 ### 最终效果 启动 agent 后自动创建隔离目录: 多个 agent 同时改不同文件、不同分支,互不干扰。 --- [pzhangzywl]
Author
Owner

PR #103 已创建,等待 CI 通过后合并。


[pzhangzywl]

PR #103 已创建,等待 CI 通过后合并。 --- [pzhangzywl]
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: zeekrAI/document_analyzer#102