【免费下载链接】marvin-template
MARVIN is your personal AI assistant that can help you connect to the apps you need and handle your day.
MARVIN 是一个个人 AI 首席参谋助手,它的并行会话能力让你借助 git worktrees 同时运行多个独立的 AI 会话:主线会话继续处理邮件、日历和每日简报,同时你可以在另一个目录里专注开发新功能或做实验性尝试,互不干扰。MARVIN 的并行会话方案不需要克隆多份仓库,几条 git 命令就能搭好完整的多任务工作流,新手也能快速上手。
为什么需要 MARVIN 并行会话?
大多数人的使用习惯是"一个会话干所有事",但这会带来两个痛点:
- 上下文互相污染:日常事务和新功能开发混在同一个会话里,AI 容易顾此失彼
- 不敢做实验:怕搞坏主线环境,想尝试的新思路迟迟不敢动手
💡 MARVIN 的并行会话正是为此设计的,官方建议同时存在三类会话:
| 会话类型 | 运行位置 | 分支 | 用途 |
|---|---|---|---|
| 主线会话 | ~/marvin | main | 日常运营:邮件、日历、简报 |
| 专注开发 | ~/marvin-* | feature/* | 新功能或集成开发 |
| 实验探索 | ~/marvin-* | experiment/* | 可能放弃的探索性工作 |
什么是 git worktree?一文讲懂原理
worktree 是 git 官方内置的"关联工作目录"功能:同一个仓库可以有多个检出目录,每个目录各自独立在一个分支上,但共享同一份.git历史记录。
~/marvin/ # 主工作树(main 分支) ├── .git/ # 共享的 git 数据库 ├── CLAUDE.md └── state/ ~/marvin-website/ # 新工作树(feature/personal-site 分支) ├── .git -> ~/marvin/.git # 指回主仓库 ├── CLAUDE.md └── state/用大白话理解就是:
- 历史共享:在一个目录提交的改动,另一个目录立刻可见
- 工作区隔离:每个目录有自己的分支、暂存区和未提交改动
- 零额外成本:不用 clone 第二份仓库,磁盘开销极小
一行命令创建新工作树
在你的主 marvin 目录中执行这一条命令,即可创建一个并行的工作目录:
git worktree add ../marvin-website -b feature/personal-siteMARVIN 官方文档建议保持统一命名规范(见 docs/patterns/parallel-worktrees.md):
| 项目 | 命名约定 | 示例 |
|---|---|---|
| 目录名 | ../marvin-短名称(与主目录并列) | ../marvin-website |
| 分支名 | feature/描述性名称 | feature/personal-site |
更多真实场景示例:
git worktree add ../marvin-new-integration -b feature/slack-integration git worktree add ../marvin-experiment -b feature/daemon-v2同时运行多个 AI 会话
创建好 worktree 后,打开两个终端各自启动会话即可:
终端 1: cd ~/marvin && claude # 主线:日常运营 终端 2: cd ~/marvin-website && claude # 专注:网站开发每个并行会话都具备完整能力(见 docs/patterns/parallel-worktrees.md):
- ✅ 拥有自己的工作目录和独立分支
- ✅ 拥有完整的 MARVIN 上下文(能读到
CLAUDE.md配置和state/状态) - ✅ 与主仓库共享 git 历史
- ✅ 完成后随时可以合并回主线
MARVIN 会主动帮你创建工作树吗?
会!这是 MARVIN 的一个贴心设计:当你开始的工作属于以下情况时,MARVIN 会主动建议"要不要建一个 git worktree 单独跑一个会话?"(逻辑见 docs/patterns/parallel-worktrees.md):
- 开发新的功能或集成
- 做可能不会合并的实验
- 需要隔离的独立项目
- 工作可能与主线上的改动冲突
你不需要自己记着这套规则,MARVIN 会替你判断。
工作完成后的合并与清理步骤
功能开发完成后,回到主目录把成果合并回来,然后清理现场:
cd ~/marvin git checkout main git merge feature/personal-site git push # 清理 worktree 和分支 git worktree remove ../marvin-website git branch -d feature/personal-site⚠️ 完整步骤可参考 docs/patterns/parallel-worktrees.md 的 Merging Back 章节。
日常管理:三条 worktree 维护命令
worktree 建多了容易忘,用这三条命令随时掌握全局:
| 命令 | 作用 |
|---|---|
git worktree list | 查看所有工作树及其分支 |
git worktree remove ../marvin-xxx | 移除指定工作树 |
git worktree prune | 清理残留的失效引用 |
官方经验总结(Key Decisions)见 docs/patterns/parallel-worktrees.md:主分支永远保持稳定的"日常态",专注工作一律放分支隔离,并且——不要让 worktree 越积越多,定期跑一次git worktree list检查并做合并或丢弃。
快速上手清单
- 零安装:git worktrees 是 git 内置功能,打开即用
- 主动分流:一有专注的 feature 工作,就建一个 worktree 单独跑
- 统一命名:目录
../marvin-xxx+ 分支feature/xxx,管理不混乱 - 定期清理:完成后合并或丢弃,保持工作区清爽
延伸阅读
- 并行会话完整模式文档:docs/patterns/parallel-worktrees.md
- MARVIN 全部高级模式索引:docs/patterns/README.md
- MARVIN 核心配置与会话流程:CLAUDE.md
【免费下载链接】marvin-template
MARVIN is your personal AI assistant that can help you connect to the apps you need and handle your day.
相关推荐
Gemini CLI 怎么用 Git worktrees 为并行会话创建隔离分支并清理残留工作树
Gemini CLI 怎么用 Git worktrees 为并行会话创建隔离分支并清理残留工作树 同时处理多个任务时,多个 Gemini CLI 会话如果共享同
人工智能AI 应用AI Agent代码智能体工具调用MCP Clients交互助手CLI三个分支并行开发:Rune中Git Worktrees工作流完全指南
三个分支并行开发:Rune中Git Worktrees工作流完全指南 Rune 是一款面向专业开发者的 GPU 渲染终端 IDE,它对 Git Worktree
30 个标签页同时操作:Actionbook 多会话并行浏览器自动化指南
30 个标签页同时操作:Actionbook 多会话并行浏览器自动化指南 Actionbook 是一款面向 AI 代理的浏览器自动化工具。通过它的多会话(Mul
人工智能AI Agent浏览器控制GUI 自动化MCP 服务AI 应用
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考