@hellotombruce

禅道代码定位

禅道代码定位 - 管理禅道项目到 Git 仓库和本地代码目录的映射

Current version
v1.0.0
bundle-pluginCommunitystructural

禅道代码定位插件 (Zentao-to-Code)

📍 管理禅道项目到 Git 仓库和本地代码目录的映射

概述

Zentao-to-Code 是一个 OpenClaw 插件,用于在禅道项目管理系统和本地代码仓库之间建立映射关系。通过这个插件,你可以:

  • 📋 管理禅道项目的本地代码仓库映射
  • 🔍 根据 Bug ID 快速定位相关代码仓库
  • 🔄 自动同步禅道项目列表
  • 📁 支持多种代码仓库类型(前端、后端、小程序、H5 等)
  • 💾 使用 SQLite 本地存储,离线可用

安装

该插件包含在 OpenClaw 扩展目录中,无需额外安装。

配置

基础配置

在 OpenClaw 配置文件中添加如下配置:

{
  "plugins": {
    "entries": {
      "zentao-to-code": {
        "config": {
          "dbPath": "~/.openclaw/data/zentao-manager.db",
          "zentaoUrl": "",
          "zentaoUser": "your-username",
          "zentaoPassword": "your-password"
        }
      }
    }
  }
}

配置参数

参数类型默认值说明
dbPathstring~/.openclaw/data/zentao-manager.dbSQLite 数据库存储路径
zentaoUrlstring``禅道系统 API 地址
zentaoUserstring``禅道登录用户名
zentaoPasswordstring-禅道登录密码

功能

提供的工具

1. 列出所有项目

工具名称: zentao_list_projects

列出所有已配置的禅道项目。

参数:

  • search (可选): 搜索项目的关键词

示例:

zentao_list_projects search="mobile"

2. 获取项目的仓库映射

工具名称: zentao_get_repos

获取指定禅道项目关联的所有代码仓库。

参数:

  • projectId (必需): 禅道项目 ID

示例:

zentao_get_repos projectId="1"

3. 添加禅道项目

工具名称: zentao_add_project

添加一个新的禅道项目到本地数据库。

参数:

  • projectId (必需): 禅道项目 ID
  • name (必需): 项目名称
  • description (可选): 项目描述

示例:

zentao_add_project projectId="1" name="电商平台" description="新一代电商系统"

4. 添加仓库映射

工具名称: zentao_add_repo

为禅道项目添加代码仓库映射。

参数:

  • projectId (必需): 禅道项目 ID
  • repoType (必需): 仓库类型 - frontend, backend, miniprogram, h5, other
  • name (必需): 仓库名称
  • localPath (必需): 本地代码路径(绝对路径)
  • gitRepo (可选): GitLab/GitHub 仓库地址
  • defaultBranch (可选): 默认分支,默认为 main
  • notes (可选): 备注

示例:

zentao_add_repo \
  projectId="1" \
  repoType="backend" \
  name="电商后端" \
  localPath="/Users/dev/ecommerce-backend" \
  gitRepo="git@github.com:company/ecommerce-backend.git" \
  defaultBranch="main"

5. 更新仓库映射

工具名称: zentao_update_repo

更新已有的代码仓库映射信息。

参数:

  • repoId (必需): 仓库 ID
  • localPath (可选): 本地代码路径
  • gitRepo (可选): GitLab/GitHub 仓库地址
  • defaultBranch (可选): 默认分支
  • notes (可选): 备注

示例:

zentao_update_repo repoId="repo-123" localPath="/Users/dev/new-path" defaultBranch="develop"

6. 删除仓库映射

工具名称: zentao_delete_repo

删除已有的代码仓库映射。

参数:

  • repoId (必需): 仓库 ID

示例:

zentao_delete_repo repoId="repo-123"

7. 同步禅道项目列表

工具名称: zentao_sync_projects

从禅道 API 同步所有项目列表到本地数据库。

参数: 无

示例:

zentao_sync_projects

8. 根据 Bug ID 定位仓库

工具名称: zentao_locate_repo_by_bug

根据禅道 Bug ID 自动定位相关的代码仓库。

参数:

  • bugId (必需): 禅道 Bug ID
  • repoType (可选): 仓库类型筛选 - frontend, backend, miniprogram, h5, other

示例:

zentao_locate_repo_by_bug bugId="BUG-2024-001" repoType="backend"

使用场景

场景 1: 快速定位 Bug 所在仓库

当你收到一个 Bug 编号(如 BUG-2024-001)时,可以直接使用 zentao_locate_repo_by_bug 工具自动定位相关的代码仓库和文件位置。

zentao_locate_repo_by_bug bugId="BUG-2024-001"

场景 2: 管理多项目映射

在一个大型项目中,前端、后端、小程序分别对应不同的代码仓库。使用本插件可以统一管理这些映射关系。

zentao_add_repo projectId="1" repoType="frontend" name="PC前端" localPath="/path/to/pc-frontend"
zentao_add_repo projectId="1" repoType="backend" name="后端服务" localPath="/path/to/backend"
zentao_add_repo projectId="1" repoType="miniprogram" name="小程序" localPath="/path/to/miniapp"

场景 3: 定期同步禅道项目

定期执行 zentao_sync_projects 来保持本地数据库的项目列表与禅道系统同步。

数据存储

数据库架构

插件使用 SQLite 数据库存储以下信息:

  • 项目表: 禅道项目 ID、名称、描述
  • 仓库映射表: 项目 ID、仓库类型、仓库名称、本地路径、Git 地址、默认分支、备注

默认路径

~/.openclaw/data/zentao-manager.db

技术栈

  • TypeScript: 类型安全的编程语言
  • SQLite: 轻量级数据库
  • Typebox: Schema 定义和验证
  • Fetch API: HTTP 请求调用

开发

构建项目

npm run build

运行测试

npm test

文件结构

zentao-to-code/
├── index.ts                    # 插件主文件,注册所有工具
├── db/
│   └── store.ts               # 数据库存储层实现
├── package.json               # 项目依赖配置
├── openclaw.plugin.json       # 插件配置和 Schema 定义
└── README.md                  # 本文件

常见问题

Q: 如何更改数据库存储位置?

A: 在 OpenClaw 配置文件中修改 dbPath 参数:

{
  "plugins": {
    "entries": {
      "zentao-to-code": {
        "config": {
          "dbPath": "/custom/path/zentao.db"
        }
      }
    }
  }
}

Q: 支持哪些仓库类型?

A: 当前支持以下仓库类型:

  • frontend - 前端项目
  • backend - 后端项目
  • miniprogram - 小程序
  • h5 - H5 项目
  • other - 其他类型

Q: 如何同步最新的禅道项目列表?

A: 使用 zentao_sync_projects 工具从禅道 API 同步:

zentao_sync_projects

Q: 是否需要联网才能使用?

A: 初次同步和获取 Bug 信息需要联网连接到禅道系统。添加、查询本地映射后的数据可以离线使用。

许可

此插件是 OpenClaw 平台的扩展组件。

支持

如有问题或建议,请联系开发团队。

Source and release

Install command

openclaw plugins install clawhub:zentao-to-code

Metadata

  • Package: zentao-to-code
  • Created: 2026/04/04
  • Updated: 2026/04/04
  • Executes code: No

Compatibility

  • Built with OpenClaw: >=2026.3.24-beta.2
  • Plugin API range: >=2026.3.24-beta.2
  • Tags: latest
  • Files: 7