tapd 代码编写
- 作者仓库星标 1
- 作者仓库 workbuddy
TAPD OpenAPI
环境变量(已预置)
TAPD_API_ENDPOINT- API 地址, 如果TAPD_API_ENDPOINT已配置,则优先使用TAPD_API_ENDPOINT的替换文档中的${TAPD_API_ENDPOINT}TAPD_WORKSPACE_IDS- 项目 ID 列表,逗号分隔,优先级高于TAPD_WORKSPACE_IDTAPD_WORKSPACE_ID- 单个项目 ID(兼容旧配置)TAPD_TOKEN- 认证 Token(Bearer 方式)
Workspace 处理规则
调用前必须先确定实际使用的 workspace 列表:
# 优先取 TAPD_WORKSPACE_IDS,回退到 TAPD_WORKSPACE_ID
if [ -n "$TAPD_WORKSPACE_IDS" ]; then
WS_LIST=$(echo "$TAPD_WORKSPACE_IDS" | tr ',' ' ')
else
WS_LIST="$TAPD_WORKSPACE_ID"
fi
- 若
WS_LIST只有一个 ID,按单 workspace 正常请求即可 - 若有多个 ID,需对每个 ID 分别调用 API,再汇总结果(求和、合并列表等,根据用户意图决定)
- 注意 curl 的时候 workspace_id 用逗号分隔后的,例如 $TAPD_WORKSPACE_IDS 是 "31372104,68119668",则 curl 的时候需要分别调用
workspace_id=31372104和workspace_id=68119668
请求模板
# GET
curl -s -H "Authorization: Bearer $TAPD_TOKEN" \
"${TAPD_API_ENDPOINT}/${path}?workspace_id=${ws_id}"
# POST
curl -s -X POST -H "Authorization: Bearer $TAPD_TOKEN" \
-H "Content-Type: application/json" \
"${TAPD_API_ENDPOINT}/${path}" \
-d '{"workspace_id":"'"${ws_id}"'","key":"value"}'
查询 API 文档
API 文档位于 ~/.codebuddy/skills/tapd-openapi/references/ 目录。
1. 列出所有服务:
ls ~/.codebuddy/skills/tapd-openapi/references/
2. 列出服务下的 API:
ls ~/.codebuddy/skills/tapd-openapi/references/stories/
3. 查看 API 详情:
cat ~/.codebuddy/skills/tapd-openapi/references/stories/liststories.md
常用服务
| 服务 | 说明 | 常用 API 文件 |
|---|---|---|
| stories | 需求管理 | liststories, countstories, addstory, updatestory, getrelatedbugs, getstoryfieldsinfo |
| bugs | 缺陷管理 | listbugs, countbugs, addbug, updatebug, getbugfieldsinfo |
| iterations | 迭代管理 | listiterations |
| tasks | 任务管理 | listtasks, counttasks, addtask, updatetask |
| comments | 评论管理 | listcomments, countcomments, addcomment |
| wikis | Wiki 管理 | listwikis, countwikis, addwiki, updatewiki, searchwiki(见下方) |
| timesheets | 工时花费 | listtimesheets, counttimesheets, addtimesheet, updatetimesheet |
| attachments | 附件管理 | listattachments, downloadattachment, getimage, downloaddocument |
| users | 用户信息 | getuserinfo, listworkspaces |
调用流程
- 确定服务:根据需求从常用服务中选择,或用
ls查看全部 - 查找 API:用
ls ~/.codebuddy/skills/tapd-openapi/references/{服务}/找到具体操作 - 获取详情:用
cat读取 API 文档,获取请求方法、路径、参数 - 执行请求:按模板构造 curl 命令,
workspace_id必传
Wiki 搜索
TAPD API 不支持 Wiki 全文搜索,通过本地脚本实现。详见:
cat ~/.codebuddy/skills/tapd-openapi/references/wikis/searchwiki.md- 流狐分类
- 通用
- 作者声明 Agent
- 未找到明确声明;不据此推断已兼容或已测试
- 静态检查
- 92 / 100 · 启发式扫描,不代表运行安全
- 作者 / 版本 / 许可
- @zhizhunbao · v1.0 · 未声明 license
- 流狐 Token 估算
- 低消耗
- 流狐接入估算
- 即装即用
- 是否需要外部 API Key
- 未发现要求
- 检测到的系统要求
- 未声明
- 底层运行要求
- 未声明
- 检测到的文件与系统行为
-
- 只读
- 检测到的网络行为
- 允许外网请求
- 安装命令数
- 无(仅作为资料)
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
作者没有在当前 SKILL.md 中定义固定输出样例。 TAPDAPIENDPOINT - API 地址, 如果 TAPDAPIENDPOINT 已配置,则优先使用 TAPDAPIENDPOINT 的替换文档中的 ${TAPDAPIENDPOINT} TAPDWORKSPACEIDS - 项目 ID 列表,逗号分隔,优先级高于 TAPDWORKSPACEID TAPDWORKSPACEID - 单个项目 ID(兼容旧配置)
调用前必须先确定实际使用的 workspace 列表: 若 WSLIST 只有一个 ID,按单 workspace 正常请求即可 若有多个 ID,需对每个 ID 分别调用 API,再汇总结果(求和、合并列表等,根据用户意图决定)
请求模板
API 文档位于 ~/.codebuddy/skills/tapd-openapi/references/ 目录。 1. 列出所有服务: 2. 列出服务下的 API:
服务 · 说明 · 常用 API 文件 stories · 需求管理 · liststories, countstories, addstory, updatestory, getrelatedbugs, getstoryfieldsinfo bugs · 缺陷管理 · listbugs, countbugs, addbug, updatebug, getbugfieldsinfo
确定服务:根据需求从常用服务中选择,或用 ls 查看全部 查找 API:用 ls ~/.codebuddy/skills/tapd-openapi/references/{服务}/ 找到具体操作 获取详情:用 cat 读取 API 文档,获取请求方法、路径、参数
# TAPD OpenAPI
## 环境变量(已预置)
- `TAPD_API_ENDPOINT` - API 地址, 如果 `TAPD_API_ENDPOINT` 已配置,则优先使用 `TAPD_API_ENDPOINT` 的替换文档中的 `${TAPD_API_ENDPOINT}`
- `TAPD_WORKSPACE_IDS` - 项目 ID 列表,逗号分隔,**优先级高于** `TAPD_WORKSPACE_ID`
- `TAPD_WORKSPACE_ID` - 单个项目 ID(兼容旧配置)
- `TAPD_TOKEN` - 认证 Token(Bearer 方式)
## Workspace 处理规则
**调用前必须先确定实际使用的 workspace 列表:**
```bash
# 优先取 TAPD_WORKSPACE_IDS,回退到 TAPD_WORKSPACE_ID
if [ -n "$TAPD_WORKSPACE_IDS" ]; then
WS_LIST=$(echo "$TAPD_WORKSPACE_IDS" | tr ',' ' ')
else
WS_LIST="$TAPD_WORKSPACE_ID"
fi
```
- 若 `WS_LIST` 只有一个 ID,按单 workspace 正常请求即可
- 若有多个 ID,需对每个 ID 分别调用 API,再汇总结果(求和、合并列表等,根据用户意图决定)
- 注意 curl 的时候 workspace_id 用逗号分隔后的,例如 $TAPD_WORKSPACE_IDS 是 "31372104,68119668",则 curl 的时候需要分别调用 `workspace_id=31372104` 和 `workspace_id=68119668`
## 请求模板
```bash
# GET
curl -s -H "Authorization: Bearer $TAPD_TOKEN" \
"${TAPD_API_ENDPOINT}/${path}?workspace_id=${ws_id}"
# POST
curl -s -X POST -H "Authorization: Bearer $TAPD_TOKEN" \
-H "Content-Type: application/json" \
"${TAPD_API_ENDPOINT}/${path}" \
-d '{"workspace_id":"'"${ws_id}"'","key":"value"}'
```
## 查询 API 文档
API 文档位于 `~/.codebuddy/skills/tapd-openapi/references/` 目录。
**1. 列出所有服务**:
```bash
ls ~/.codebuddy/skills/tapd-openapi/references/
```
**2. 列出服务下的 API**:
```bash
ls ~/.codebuddy/skills/tapd-openapi/references/stories/
```
**3. 查看 API 详情**:
```bash
cat ~/.codebuddy/skills/tapd-openapi/references/stories/liststories.md
```
## 常用服务
| 服务 | 说明 | 常用 API 文件 |
|------|------|---------------|
| stories | 需求管理 | liststories, countstories, addstory, updatestory, getrelatedbugs, getstoryfieldsinfo |
| bugs | 缺陷管理 | listbugs, countbugs, addbug, updatebug, getbugfieldsinfo |
| iterations | 迭代管理 | listiterations |
| tasks | 任务管理 | listtasks, counttasks, addtask, updatetask |
… 作者原文负责流程事实;流狐只索引当前章节、要点、文件与命令。
章节 -> 环境变量(已预置) → Workspace 处理规则 → 请求模板 → 查询 API 文档 → 常用服务 → 调用流程
要点 -> 优先级高于 · 调用前必须先确定实际使用的 workspace 列表 · 1. 列出所有服务 · 2. 列出服务下的 API · 3. 查看 API 详情 · searchwiki · 确定服务 · 查找 API
文件/命令 -> TAPDAPIENDPOINT · ${TAPDAPIENDPOINT} · TAPDWORKSPACEIDS · TAPDWORKSPACEID · TAPDTOKEN · WSLIST · workspaceid=31372104 · workspaceid=68119668
内容 SHA-256 -> 884d6cfe1801
原文结构
适用与边界
原文中的明确线索
TAPDAPIENDPOINT、${TAPDAPIENDPOINT}、TAPDWORKSPACEIDS、TAPDWORKSPACEID、TAPDTOKEN、WSLIST、workspaceid=31372104、workspaceid=68119668