using-grove

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese
I'm using the using-grove skill to create an isolated workspace with warm build state.
我正在使用using-grove技能创建一个带有预热构建状态的隔离工作区。

Workflow

工作流程

Step 1: Verify Grove is initialized

步骤1:验证Grove已初始化

bash
test -f "$(git rev-parse --show-toplevel)/.grove/config.json"
If
.grove/config.json
is not found: Grove is not initialized in this repo. Use the
grove:grove-init
skill to set it up first.
bash
test -f "$(git rev-parse --show-toplevel)/.grove/config.json"
如果未找到
.grove/config.json
:说明此仓库中未初始化Grove。请先使用
grove:grove-init
技能完成设置。

Step 2: Verify grove CLI is installed

步骤2:验证Grove CLI已安装

bash
command -v grove
If not found: Grove CLI is not installed. See https://github.com/chrisbanes/grove for installation instructions.
bash
command -v grove
如果未找到:说明Grove CLI未安装。请查看https://github.com/chrisbanes/grove获取安装说明。

Step 3: Create workspace

步骤3:创建工作区

bash
grove create --branch <branch-name> --json
Parse the JSON output for
path
and
id
:
json
{
  "id": "abc1",
  "path": "/tmp/grove/myapp/abc1",
  "branch": "agent/fix-login",
  "created_at": "2026-02-17T10:20:00Z",
  "golden_copy": "/Users/chris/dev/myapp"
}
bash
grove create --branch <branch-name> --json
解析JSON输出中的
path
id
json
{
  "id": "abc1",
  "path": "/tmp/grove/myapp/abc1",
  "branch": "agent/fix-login",
  "created_at": "2026-02-17T10:20:00Z",
  "golden_copy": "/Users/chris/dev/myapp"
}

Step 4: Enter the workspace

步骤4:进入工作区

bash
cd <path-from-json>
bash
cd <path-from-json>

Step 5: Verify baseline

步骤5:验证基准状态

Run the project test suite. Auto-detect the test command from marker files:
Marker fileTest command
go.mod
go test ./...
package.json
npm test
Cargo.toml
cargo test
build.gradle
/
build.gradle.kts
./gradlew test
pyproject.toml
/
requirements.txt
pytest
Makefile
make test
If tests fail, report the failures and ask whether to proceed.
运行项目测试套件。系统会根据标记文件自动检测测试命令:
标记文件测试命令
go.mod
go test ./...
package.json
npm test
Cargo.toml
cargo test
build.gradle
/
build.gradle.kts
./gradlew test
pyproject.toml
/
requirements.txt
pytest
Makefile
make test
如果测试失败,请报告失败情况并询问是否继续。

Step 6: Report ready

步骤6:报告准备完成

Grove workspace ready.
  Path:        <workspace-path>
  Branch:      <branch-name>
  Build state: warm (cloned from golden copy)
Grove工作区已准备就绪。
  路径:        <workspace-path>
  分支:      <branch-name>
  构建状态: 预热状态(从黄金副本克隆)

Quick Reference

快速参考

CommandPurpose
grove create --branch <name> --json
Create workspace, get JSON output
grove list
List active workspaces
grove destroy <id>
Remove a workspace
命令用途
grove create --branch <name> --json
创建工作区并获取JSON输出
grove list
列出所有活跃工作区
grove destroy <id>
删除工作区

Common Mistakes

常见错误

  • Using plain
    git worktree
    — worktrees start with a cold build cache. Grove's CoW clone preserves warm build state, making the first build incremental rather than from scratch.
  • Skipping
    --json
    flag
    — the JSON output is required to reliably extract the workspace path and ID for later use.
  • Not verifying grove initialized
    grove create
    will fail confusingly if
    .grove/
    is absent. Always check first.
  • 使用普通
    git worktree
    —— worktree的构建缓存是冷启动的。Grove的写时复制(CoW)克隆会保留预热的构建状态,使得首次构建是增量式而非从头开始。
  • 遗漏
    --json
    参数
    —— JSON输出是后续可靠提取工作区路径和ID的必需项。
  • 未验证Grove是否初始化 —— 如果
    .grove/
    目录不存在,
    grove create
    会出现难以理解的错误。请务必先进行检查。

Red Flags

预警信号

  • grove create
    errors about uncommitted changes on the golden copy — clean up or commit the golden copy first, or use
    --force
    if the changes are intentional.
  • Tests fail at baseline — the golden copy's build state is stale. Run
    grove update
    on the golden copy before creating workspaces.
  • grove
    command not found after install — check PATH; grove installs to
    $GOPATH/bin
    by default.
  • grove create
    提示黄金副本存在未提交更改 —— 请先清理或提交黄金副本的更改,若更改是有意的,可使用
    --force
    参数。
  • 基准测试失败 —— 黄金副本的构建状态已过期。创建工作区前,请在黄金副本上运行
    grove update
  • 安装后找不到
    grove
    命令 —— 检查PATH环境变量;Grove默认安装到
    $GOPATH/bin

Integration

集成说明

  • Replaces:
    superpowers:using-git-worktrees
    — prefer this skill in any Grove project. Disable
    using-git-worktrees
    to avoid conflicts.
  • Called by:
    superpowers:brainstorming
    (Phase 4),
    superpowers:subagent-driven-development
    ,
    superpowers:executing-plans
  • Pairs with:
    grove:finishing-grove-workspace
    — use that skill when implementation is complete and the workspace is ready to clean up.
  • 替代:
    superpowers:using-git-worktrees
    —— 在任何Grove项目中优先使用此技能。禁用
    using-git-worktrees
    以避免冲突。
  • 被调用方:
    superpowers:brainstorming
    (第4阶段)、
    superpowers:subagent-driven-development
    superpowers:executing-plans
  • 配套使用:
    grove:finishing-grove-workspace
    —— 当实现完成且工作区准备清理时,使用该技能。