mit einem Klick
tapd-bug-analyzer
自动化分析和定位 TAPD Bug 单中的问题,支持多种分析策略。
Menü
自动化分析和定位 TAPD Bug 单中的问题,支持多种分析策略。
ABC 医疗云 API 文档查询工具。读取和查询 ABC API 的 OpenAPI 规范文档(5000+ 接口),支持按模块、路径、方法搜索,自动解析 $ref 引用。采用按模块拆分的缓存结构,查询速度快。使用场景:(1) 查询 API 接口定义 (2) 搜索特定功能接口 (3) 查询 Schema 定义 (4) 查看接口统计信息
根据 traceId 或 URL(带时间戳)查询阿里云日志服务 (SLS) 获取日志,分析日志内容,定位代码中的问题。
ABC 后台 Git 分支管理工作流辅助。用于执行 git abc 命令进行分支操作、提供开发流程指导。当用户提到"开新分支"、"feature"、"hotfix"、"发布"、"提测"、"合并"、"灰度"、"全量"、"rc"、"tag"、"MR"、"merge request" 等关键词时使用此技能。
ABC 后端开发指南。涵盖 Java/Spring Boot 基础、新建 API 接口、新建 RPC 服务、数据库变更、后端调试排查、项目启动、Git 分支管理。当用户提到"后端开发"、"Java"、"Spring Boot"、"新建接口"、"新建API"、"RPC"、"Feign"、"数据库变更"、"加字段"、"建表"、"后端调试"、"排查问题"、"日志查询"、"启动项目"、"端口"、"分支管理"等关键词时使用此技能。
ABC Jenkins 项目发布技能。支持智能参数推断和交互式触发 Jenkins 构建,自动获取 Git 分支和标签信息。当用户请求"发布 Jenkins"、"触发构建"、"部署项目"、"Jenkins 发布"或类似操作时触发此技能。需要环境变量 JENKINS_USER 和 JENKINS_TOKEN。
墨刀原型稿抓取工具。自动从墨刀原型稿链接抓取所有页面、截图和批注,生成 Markdown 文档。使用场景包括:(1) 抓取原型稿页面 (2) 生成页面截图 (3) 提取批注内容 (4) 导出 Markdown 文档
| name | tapd-bug-analyzer |
| description | 自动化分析和定位 TAPD Bug 单中的问题,支持多种分析策略。 |
自动化分析和定位 TAPD Bug 单中的问题,支持多种分析策略。
/tapd-bug <bug_url> [--env <environment>] [--region <region>]
bug_url: 必填,TAPD Bug 单链接(如:https://www.tapd.cn/xxxxx/bugtrace/bugs/view/xxxxxx)--env: 可选,环境名称:dev/test/prod(默认根据 URL 自动判断)--region: 可选,地域:shanghai/hangzhou(默认 shanghai)当用户调用此 skill 时,按以下步骤执行:
从 Bug 链接中提取 workspace_id 和 bug_id:
URL 格式: https://www.tapd.cn/{workspace_id}/bugtrace/bugs/view/{bug_id}
示例: https://www.tapd.cn/12345678/bugtrace/bugs/view/1012345678001234567
使用 TAPD MCP 工具获取 Bug 单详细信息:
调用 mcp__mcp-server-tapd__get_bug 工具:
- workspace_id: 从 URL 解析得到
- options: {"id": "<bug_id>", "fields": "id,title,description,status,severity,priority,reporter,current_owner,created,modified"}
仔细阅读 Bug 描述(description 字段),按优先级选择分析策略:
检测 Bug 描述中是否包含 traceId(通常是 16 位十六进制字符串):
[a-f0-9]{16}traceId: xxx, trace_id=xxx, X-B3-TraceId: xxx如果找到 traceId,直接调用 sls-trace-analyzer:
~/.claude/skills/sls-trace-analyzer/.venv/bin/python \
~/.claude/skills/sls-trace-analyzer/sls-query.py \
--trace-id "<traceId>" \
--region "<region>" \
--env "<env>"
说明: 脚本默认同时查询普通存储和长期存储两个 logstore,以获取完整日志。
检测 Bug 描述中是否包含 API 请求 URL:
http(s)://xxx.abczs.cn/api/...示例 URL:
http://32.ftest.abczs.cn/api/v2/patientorders/his/ffffffff0000000035246dd0adec0000/hospital?1768198926187
如果找到带时间戳的 URL,直接调用 sls-trace-analyzer(URL 模式):
~/.claude/skills/sls-trace-analyzer/.venv/bin/python \
~/.claude/skills/sls-trace-analyzer/sls-query.py \
--url "<完整URL含时间戳>"
sls-trace-analyzer 会自动:
基于 Bug 描述进行代码分析:
获取到 traceId 后,调用 sls-trace-analyzer 进行深度分析:
识别错误和异常
追踪请求链路
定位代码问题
cn.abcyun 包下的代码生成结构化的分析报告:
## TAPD Bug 分析报告
### Bug 基本信息
- **Bug ID**: xxx
- **标题**: xxx
- **状态**: xxx
- **严重程度**: xxx
- **报告人**: xxx
- **处理人**: xxx
### 分析策略
- 使用策略: A/B/C
- TraceId: xxx(如有)
- 请求时间: xxx(如有)
### 错误摘要
- **错误类型**: xxx
- **错误消息**: xxx
- **发生位置**: `文件路径:行号`
### 调用链路
1. [入口] POST /api/xxx
2. [Service] XxxService.method()
3. [RPC] 调用 xxx 服务
4. [Error] 发生异常
### 问题定位
- **根因分析**: xxx
- **相关代码**:
```java
// 问题代码片段
## Examples
### 示例 1: Bug 描述中包含 traceId
```bash
/tapd-bug https://www.tapd.cn/12345678/bugtrace/bugs/view/1012345678001234567
Bug 描述内容:
用户反馈下单失败,错误信息:系统繁忙,请稍后重试
traceId: 8989a698c36e5189
执行流程:
/tapd-bug https://www.tapd.cn/12345678/bugtrace/bugs/view/1012345678001234568 --env test
Bug 描述内容:
测试环境下单接口报错 500
请求地址:http://32.ftest.abczs.cn/api/v2/patientorders/his/ffffffff0000000035246dd0adec0000/hospital?1768198926187
执行流程:
/tapd-bug https://www.tapd.cn/12345678/bugtrace/bugs/view/1012345678001234569
Bug 描述内容:
患者在门诊缴费时,选择医保支付后点击确认,页面提示"医保结算失败",
但实际上 HIS 系统显示已经结算成功。
复现步骤:
1. 登录患者端 APP
2. 选择待缴费订单
3. 选择医保支付
4. 点击确认支付
预期结果:支付成功,跳转到支付成功页面
实际结果:提示"医保结算失败"
执行流程:
输入:
/tapd-bug https://www.tapd.cn/43780818/bugtrace/bugs/view/1143780818001109821
Bug 描述内容:
问题概述:处方不展示规格
门店id: ffffffff000000003526121e726a0004
收费单id:ffffffff000000003526dc97b673c003
补充说明:后台没返回药品档案的规格
执行流程:
问题定位结果:
// PrescriptionService.java:678-680
if (goodsItem.getType() == 2) {
prescriptionFormItem.setSpecification(...);
}
根因分析: 西药处方的 specification 字段只在 type==2(材料)时设置,普通西药(type=1)未设置规格。
修复建议: 为所有类型药品设置规格,优先使用 GoodsItem.displaySpec 字段。