SuperAPI AI 工具集

ac-workspace-manager

编程与开发

查看项目

更新于 10-15 10:00

技能介绍

AC Workspace Manager 是一个用于管理 git worktree 的工具,主要目标是为隔离式自主开发提供工作区隔离能力。它利用 git worktree 机制,使开发者能够进行并行开发,并在不影响主分支的情况下实现安全回滚。

用途

该工具的核心用途是提供工作区隔离。通过 git worktree,每个开发任务可以在独立的工作区中进行,主分支保持稳定。这样既支持多个任务并行推进,也便于在出现问题时回滚,而不会干扰主分支上的代码。

主要能力

AC Workspace Manager 提供 WorkspaceManager 类,围绕 worktree 的生命周期提供以下操作:

  • 创建 worktree:从主分支创建新的隔离工作区。
  • 获取当前 worktree:查询当前所在的 worktree。
  • 列出所有 worktree:查看当前存在的全部 worktree。
  • 合并已完成的工作:将某个 worktree 中完成的工作合并回主分支。
  • 清理 worktree:在合并完成后移除不再需要的 worktree。

使用方式

基本用法如下:

from scripts.workspace_manager import WorkspaceManager

manager = WorkspaceManager(project_dir) worktree = await manager.create_worktree("feature-auth") await manager.merge_completed(worktree)

API 调用示例:

创建新 worktree

worktree = await manager.create_worktree("build-001")

获取当前 worktree

current = await manager.get_current_worktree()

列出所有 worktree

worktrees = await manager.list_worktrees()

合并已完成的工作

await manager.merge_completed(worktree)

清理 worktree

await manager.cleanup_worktree(worktree)

完整实现可参考 scripts/workspace_manager.py。

工作流

该工具建议的工作流包括以下步骤:

  1. 创建:从主分支创建新的 worktree。
  2. 开发:所有变更都在隔离工作区中进行。
  3. 审查:在合并前审查变更。
  4. 合并:将工作合并回主分支。
  5. 清理:移除 worktree。

目录结构示意如下:

main branch (stable) │ ├── .worktrees/ │ ├── build-001/ ← Isolated worktree │ ├── build-002/ ← Another build │ └── build-003/ ← Parallel work │ └── project files

集成关系

AC Workspace Manager 可与以下组件配合使用:

  • 被 ac-session-manager 使用,用于会话隔离。
  • 使用 ac-checkpoint-manager,用于提供回滚点。

适用场景

该工具适用于需要隔离开发环境的场景,例如:

  • 创建隔离工作区。
  • 管理并行开发。
  • 处理 worktree 生命周期。
  • 合并已完成的工作。

限制

关于该工具的具体限制、平台支持范围、收费方式或价格等信息,资料中暂未提供。