TAPD Skill 提供与 TAPD 平台交互的 Python 脚本工具,统一通过 tapd.py 调用。
用途:本技能用于在 TAPD 敏捷研发管理平台上执行需求、缺陷、任务、迭代、测试用例、Wiki、评论、工时等实体的查询与管理操作。使用场景包括:查询/创建/更新需求、缺陷、任务、迭代;管理测试用例和 Wiki;管理评论和工时;关联需求与缺陷;获取源码提交关键字。
环境配置:使用前需要配置以下环境变量:
export TAPD_ACCESS_TOKEN="你的个人访问令牌" # 推荐
或
export TAPD_API_USER="API账号" export TAPD_API_PASSWORD="API密钥"
export TAPD_API_BASE_URL="https://api.tapd.cn" # 可选,默认 export TAPD_BASE_URL="https://www.tapd.cn" # 可选,默认 export CURRENT_USER_NICK="你的昵称" # 可选
使用方式:python scripts/tapd.py <command> [参数],所有命令默认输出 JSON 格式结果。
主要能力(命令列表): 项目与用户:get_user_participant_projects 获取用户参与的项目列表,get_workspace_info 获取项目信息,get_workitem_types 获取需求类别。 需求/任务:get_stories_or_tasks 查询需求/任务,create_story_or_task 创建需求/任务,update_story_or_task 更新需求/任务,get_story_or_task_count 获取数量,get_stories_fields_lable 字段中英文对照,get_stories_fields_info 字段及候选值。 缺陷:get_bug 查询缺陷,create_bug 创建缺陷,update_bug 更新缺陷,get_bug_count 获取数量。 迭代:get_iterations 查询迭代,create_iteration 创建迭代,update_iteration 更新迭代。 评论:get_comments 查询评论,create_comments 创建评论,update_comments 更新评论。 附件/图片:get_entity_attachments 获取附件,get_image 获取图片下载链接。 自定义字段:get_entity_custom_fields 获取自定义字段配置。 工作流:get_workflows_status_map 状态映射,get_workflows_all_transitions 状态流转,get_workflows_last_steps 结束状态。 测试用例:get_tcases 查询测试用例,create_or_update_tcases 创建/更新测试用例,create_tcases_batch 批量创建测试用例。 Wiki:get_wiki 查询 Wiki,create_wiki 创建 Wiki,update_wiki 更新 Wiki。 工时:get_timesheets 查询工时,add_timesheets 填写工时,update_timesheets 更新工时。 待办:get_todo 获取待办。 关联:get_related_bugs 获取关联缺陷,entity_relations 创建关联关系。 发布计划:get_release_info 获取发布计划。 源码:get_commit_msg 获取提交关键字。 消息:send_qiwei_message 发送企业微信消息。
使用示例: 查询需求:
查询指定需求
python scripts/tapd.py get_stories_or_tasks --workspace_id 123 --entity_type stories --id 1167459320001114969
模糊搜索需求
python scripts/tapd.py get_stories_or_tasks --workspace_id 123 --entity_type stories --name "%登录%" --limit 20
查询指定状态的需求
python scripts/tapd.py get_stories_or_tasks --workspace_id 123 --entity_type stories --v_status "已验收"
创建需求:
python scripts/tapd.py create_story_or_task --workspace_id 123
--name "用户登录功能"
--description "## 需求描述\n用户可以通过账号密码登录系统"
--priority_label "高"
--owner "zhangsan"
--iteration_name "Sprint 1"
更新需求状态:
python scripts/tapd.py update_story_or_task --workspace_id 123
--id 1167459320001114969
--v_status "实现中"
查询缺陷: python scripts/tapd.py get_bug --workspace_id 123 --title "%登录失败%" --priority_label "高"
创建缺陷:
python scripts/tapd.py create_bug --workspace_id 123
--title "登录页面显示异常"
--description "输入正确密码后提示错误"
--priority_label "高"
--severity "严重"
迭代管理:
查询迭代
python scripts/tapd.py get_iterations --workspace_id 123
创建迭代
python scripts/tapd.py create_iteration --workspace_id 123
--name "Sprint 1"
--startdate "2024-01-01"
--enddate "2024-01-14"
--creator "zhangsan"
工时管理:
查询工时
python scripts/tapd.py get_timesheets --workspace_id 123 --entity_type story --entity_id 1167459320001114969
填写工时
python scripts/tapd.py add_timesheets --workspace_id 123
--entity_type story
--entity_id 1167459320001114969
--timespent "4"
--spentdate "2024-01-08"
--memo "开发登录功能"
评论管理:
查询评论
python scripts/tapd.py get_comments --workspace_id 123
--entry_type stories
--entry_id 1167459320001114969
创建评论
python scripts/tapd.py create_comments --workspace_id 123
--entry_type stories
--entry_id 1167459320001114969
--description "看起来不错,可以继续完善"
关联需求与缺陷:
查询需求关联的缺陷
python scripts/tapd.py get_related_bugs --workspace_id 123 --story_id 1167459320001114969
创建关联
python scripts/tapd.py entity_relations --workspace_id 123
--source_type story
--target_type bug
--source_id 1167459320001114969
--target_id 1167459320001114970
工作流:
获取状态映射
python scripts/tapd.py get_workflows_status_map --workspace_id 123 --system story
获取可流转状态
python scripts/tapd.py get_workflows_all_transitions --workspace_id 123 --system story
状态值说明: 需求优先级 priority_label:High / Middle / Low / Nice To Have 缺陷优先级 priority_label:urgent / high / medium / low / insignificant 缺陷严重程度 severity:fatal / serious / normal / prompt / advice 任务状态 status:open / progressing / done 迭代状态 status:open / done
与 Claude 配合使用方式:当用户需要与 TAPD 交互时,读取脚本了解命令用法;根据需求构建参数;使用 Bash 工具运行脚本;解析输出并分析数据。示例工作流:用户提出「查看需求 1167459320001114969 的详情」,先执行 python scripts/tapd.py get_stories_or_tasks --workspace_id 67459320 --entity_type stories --id 1167459320001114969,再分析返回的需求信息。
图片处理:获取需求详情时,get_stories_or_tasks 命令会自动解析 description 中的图片并获取下载链接。返回结果包含 images 字段,其中包含 path、download_url、filename。处理步骤:从返回结果中读取 images 数组;使用 download_url 访问或下载图片;图片链接有效期约 300 秒。手动获取图片(备用方式):python scripts/tapd.py get_image --workspace_id 67459320 --image_path "/tfl/captures/2026-01/tapd_xxx.png"。
文件结构: scripts/ ├── tapd.py # 统一入口脚本(43个子命令) ├── tapd_client.py # TAPD API 客户端 └── requirements.txt