Integrates with TAPD agile R&D platform via Python CLI to query, create, update stories, bugs, tasks, iterations, test cases, wiki, comments, timesheets, and relations. Useful for agile project entity management and API automation.
How this skill is triggered — by the user, by Claude, or both
Slash command
/abc-development-plugin:tapdThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
本 skill 提供与 TAPD 平台交互的 Python 脚本工具,统一通过 `tapd.py` 调用。
本 skill 提供与 TAPD 平台交互的 Python 脚本工具,统一通过 tapd.py 调用。
使用前需要配置以下环境变量:
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 | 批量创建测试用例 |
| 命令 | 说明 |
|---|---|
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
# 需求
python scripts/tapd.py get_stories_or_tasks --workspace_id $WS_ID --entity_type stories
python scripts/tapd.py create_story_or_task --workspace_id $WS_ID --name "标题"
python scripts/tapd.py update_story_or_task --workspace_id $WS_ID --id $ID --v_status "状态"
# 缺陷
python scripts/tapd.py get_bug --workspace_id $WS_ID
python scripts/tapd.py create_bug --workspace_id $WS_ID --title "标题"
# 迭代
python scripts/tapd.py get_iterations --workspace_id $WS_ID
python scripts/tapd.py create_iteration --workspace_id $WS_ID --name "Sprint X" --startdate "2024-01-01" --enddate "2024-01-14"
# 工时
python scripts/tapd.py add_timesheets --workspace_id $WS_ID --entity_type story --entity_id $ID --timespent 4 --spentdate "2024-01-08"
# 评论
python scripts/tapd.py create_comments --workspace_id $WS_ID --entry_type stories --entry_id $ID --description "评论内容"
| 类型 | 字段 | 可用值 |
|---|---|---|
| 需求优先级 | 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 |
当用户需要与 TAPD 交互时:
示例工作流:
用户: "查看需求 1167459320001114969 的详情"
Claude:
1. python scripts/tapd.py get_stories_or_tasks --workspace_id 67459320 --entity_type stories --id 1167459320001114969
2. 分析返回的需求信息
当获取需求详情时,get_stories_or_tasks 命令会自动解析 description 中的图片并获取下载链接。
返回结果包含 images 字段:
{
"data": [
{
"Story": { "id": "1167459320001114969", "name": "需求标题", ... },
"images": [
{
"path": "/tfl/captures/2026-01/tapd_67459320_base64_1767668922_121.png",
"download_url": "https://file.tapd.cn/attachments/tmp_download/...?salt=...&time=...",
"filename": "tapd_67459320_base64_1767668922_121.png"
}
]
}
]
}
处理步骤:
images 数组download_url 访问或下载图片手动获取图片(备用方式):
# 如果需要单独获取某张图片
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
npx claudepluginhub abcfed/claude-marketplace --plugin abc-development-pluginInteracts with RHDH Jira projects (RHIDP, RHDHPLAN, RHDHBUGS, RHDHSUPP) using acli and GraphQL. Covers the full lifecycle: create issues, assign, refine, plan sprints, report, track releases, update status.
Converts Confluence spec pages into Jira backlogs with Epics and linked tickets. Use for generating backlogs from specs, breaking down requirements, or creating issues from Confluence.
YouTrack issue tracker domain knowledge — data model, custom fields, query language, commands, linking, state machines, and tags. Invoke whenever task involves any interaction with YouTrack — creating issues, searching, updating fields, linking, querying, or understanding workflows.