SuperAPI AI 工具集

codeup

编程与开发

查看项目

更新于 10-15 08:13

技能介绍

用途

Codeup Skill 提供与云效(Codeup)平台交互的 Python 脚本工具,统一通过 codeup.py 调用,用于在 Claude 等环境中完成代码仓库与组织管理相关操作。

主要能力

工具覆盖以下命令类别:

  • 用户与组织:get_current_user(获取当前用户信息)、list_organizations(列出用户所属组织,获取 org_id)。
  • 部门与成员:list_departments、get_department、list_members、get_organization_member、search_members、list_roles。
  • 仓库操作:get_repository、list_repositories。
  • 分支操作:get_branch、create_branch、delete_branch、list_branches。
  • 文件操作:get_file、create_file、update_file、delete_file、list_files、compare。
  • 合并请求(MR):get_change_request、list_merge_requests、create_merge_request、close_merge_request、merge_change_request、reopen_change_request、review_change_request、update_change_request、get_change_request_tree、create_merge_request_comment、list_merge_request_comments、delete_change_request_comment、update_change_request_comment、list_merge_request_patch_sets。

所有命令默认输出 JSON 格式结果。

使用方式

环境配置

使用前需配置环境变量:

export YUNXIAO_ACCESS_TOKEN="你的个人访问令牌"

获取访问令牌:登录阿里云控制台,进入云效(Codeup),设置 -> 访问令牌管理 -> 创建个人访问令牌。

调用格式

python scripts/codeup.py <command> [参数]

repo_id 参数格式

所有支持 repo_id 参数的命令都支持两种格式:

  • 数字 ID,例如 5822285。
  • URL-Encoder 路径,例如 abcyun%2Fabc-fed-common%2Fabc-nestjs-lib(编码后的 namespace/group/repoName)。

支持该参数的命令包括:仓库操作 get_repository;分支操作 get_branch、create_branch、delete_branch、list_branches;文件操作 get_file、create_file、update_file、delete_file、list_files;代码对比 compare;以及 MR 相关命令。

当用户提供仓库 URL(如 https://codeup.aliyun.com/abcyun/abc-fed-common/abc-nestjs-lib/change/1)时,可提取路径 abcyun/abc-fed-common/abc-nestjs-lib,将 / 编码为 %2F,直接调用命令,无需先查询 repo_id。

示例

python scripts/codeup.py get_repository --org_id 62d62893487c500c27f72e36 --repo_id 5822285

python scripts/codeup.py list_branches --org_id 62d62893487c500c27f72e36 --repo_id abcyun%2Fabc-fed-common%2Fabc-nestjs-lib

python scripts/codeup.py get_file --org_id 62d62893487c500c27f72e36 --repo_id abcyun%2Fabc-fed-common%2Fabc-nestjs-lib --file_path README.md --branch master

Claude 使用流程

  1. 获取 org_id:先调用 list_organizations 获取组织列表,选择目标组织。
  2. 获取 repo_id:调用 list_repositories 列出仓库获取数字 ID,或从用户提供的 URL/路径提取 namespace/group(可选)/repoName 后使用。
  3. 构建命令:根据需求构建相应参数。
  4. 执行脚本:使用 Bash 工具运行。
  5. 处理结果:解析输出,分析数据。

适用场景

  • 代码仓库操作:分支管理、文件操作、代码对比、合并请求/MR 管理。
  • 组织管理:部门管理、成员查询、角色管理。
  • 查询云效组织成员、部门列表。

限制与注意事项

  • 需配置有效的 YUNXIAO_ACCESS_TOKEN,且令牌需具备相应权限:仓库读取权限(查看仓库、分支、文件)、仓库写入权限(创建/更新/删除文件、创建分支)、MR 管理权限(创建/更新 MR、添加评论)。
  • 合并请求状态值包括 opened(打开中)、closed(已关闭)、merged(已合并)。
  • 文件结构:codeup/ 目录下包含 SKILL.md、references/(code-management.md、organization-management.md)、scripts/(codeup.py 统一入口脚本,含 34 个子命令;codeup_client.py API 客户端;requirements.txt 依赖 requests>=2.28.0)。
  • 其他收费、价格、平台支持范围等信息暂未提供。