Worktree Manager
/install worktree-manager
Worktree Manager
Manages Docker app instances and git worktrees for local development.
Each instance gets its own docker-compose stack (backend + frontend), isolated git branch, and .env.worktree-\x3Cname> file. MySQL and nginx-proxy are managed separately by their own plugins.
Prerequisites
Start these first (order matters):
proxy-manager start— creates the shared Docker network (nginx-proxy_net)mysql-manager start— starts the shared MySQL container
Architecture
project/
├── docker-compose.yml # app stack template (backend + frontend)
├── run.sh # this plugin's entry point (copy to project root)
├── .env.base # main instance env
├── .env.worktree-\x3Cname> # per-worktree env (gitignored)
└── .worktrees/
└── \x3Cname>/ # git worktree (gitignored)
main→.env.base, project rootworktree→.env.worktree-\x3Cname>, checked out at.worktrees/\x3Cname>- URLs:
http://\x3Cname>.frontend.localhost/http://\x3Cname>.backend.localhost
Commands
All commands run from the project root:
./run.sh list # show all instances + mysql/proxy status
./run.sh start [main|\x3Cname>] # seed db, start containers, connect proxy
./run.sh stop [main|\x3Cname>] # stop containers (db persists)
./run.sh restart [main|\x3Cname>] # stop then start
./run.sh logs [main|\x3Cname>] # follow container logs
./run.sh create-worktree \x3Cname> # git worktree + branch + env file
./run.sh remove-worktree \x3Cname> # stop containers + drop db + remove worktree
How to Execute Tasks
Full environment setup (first time)
proxy-manager/run.sh start # network + nginx-proxy
mysql-manager/run.sh start # MySQL
./run.sh start main # main app instance
Create a new worktree and start it
./run.sh create-worktree \x3Cname>— creates branchworktree/\x3Cname>, dir.worktrees/\x3Cname>, env file./run.sh start \x3Cname>— seeds db from main snapshot, starts containers, activates proxy route- URLs reported at the end
Stop an instance
./run.sh stop \x3Cname>
Remove a worktree (destructive — always confirm first)
Confirm with user: "Remove worktree '\x3Cname>'? Deletes containers, database, git worktree (branch worktree/\x3Cname>), and .env.worktree-\x3Cname>."
./run.sh remove-worktree \x3Cname>
List all instances
./run.sh list
What start Does
- Checks MySQL container is running (exits with error if not)
CREATE DATABASE IF NOT EXISTSfor the instance- For non-main instances: dumps
codai_main→ instance db docker compose up --build -ddocker network connect— proxy to instance network (activates routes)
Rules
- Always check
./run.sh listbefore starting — it shows MySQL/proxy status. - Always confirm before
remove-worktree— it is irreversible. - After
start, print the frontend and backend URLs. - If
./run.shis not executable:chmod +x run.sh .env.worktree-*files and.worktrees/dir must be gitignored.
Configuration
| Variable | Default | Purpose |
|---|---|---|
MYSQL_CONTAINER |
codai_db |
MySQL container name |
MYSQL_ROOT_PASS |
secret |
MySQL root password |
MYSQL_MAIN_DB |
codai_main |
Source DB for snapshots |
PROXY_CONTAINER |
codai_nginx_proxy |
nginx-proxy container name |
PROJECT_PREFIX |
codai-dev |
Docker Compose project prefix |
Related Plugins
proxy-manager— nginx-proxy lifecycle and network management (start first)mysql-manager— MySQL lifecycle and database admin (start second)
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install worktree-manager - 安装完成后,直接呼叫该 Skill 的名称或使用
/worktree-manager触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Worktree Manager 是什么?
Manage Docker-based dev instances and git worktrees. Handles app container lifecycle, database seeding, and proxy route activation. Requires mysql-manager an... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 64 次。
如何安装 Worktree Manager?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install worktree-manager」即可一键安装,无需额外配置。
Worktree Manager 是免费的吗?
是的,Worktree Manager 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Worktree Manager 支持哪些平台?
Worktree Manager 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(linux, darwin)。
谁开发了 Worktree Manager?
由 Jair Pereira(@pereirajair)开发并维护,当前版本 v1.0.3。