apifox
Apifox Skill
本 skill 提供 ABC 医疗云 API 文档查询功能,统一通过 apifox.py 调用。
环境配置
必需的环境变量
使用前需要配置 Apifox Access Token:
# 设置 Apifox Access Token(必需)
export APIFOX_ACCESS_TOKEN="你的 Apifox Access Token"
# 设置项目 ID(可选,默认为 4105462)
export APIFOX_PROJECT_ID="4105462"
获取 Apifox Access Token
- 登录 Apifox
- 进入账号设置 > API 访问令牌
- 创建新的访问令牌
- 复制 Token 并配置到环境变量
依赖安装
# 安装 Python 依赖
pip3 install requests
工作原理
apifox 直接通过 HTTP 请求调用 Apifox API:
- 首次使用:从 Apifox API 获取 OpenAPI 文档
- 本地缓存:数据保存到插件目录下的
cache/文件夹 - 缓存持久:缓存永久有效,需要手动刷新获取最新文档
配置示例
# 在 ~/.bashrc 或 ~/.zshrc 中添加
export APIFOX_ACCESS_TOKEN="apt_xxxxxxxxxxxxxxx"
export APIFOX_PROJECT_ID="4105462"
# 重新加载配置
source ~/.bashrc # 或 source ~/.zshrc
使用方式
./scripts/apifox <command> [参数]
说明:
./scripts/apifox是 shell wrapper,会自动检测并使用系统中可用的 Python 解释器(python3 或 python)。
所有命令默认返回 JSON 格式输出。
API 模块说明
ABC 医疗云 API 文档包含以下模块:
| 模块 | 接口数量 | 说明 |
|---|---|---|
| api | 2506 | HTTP API 接口 |
| rpc | 1338 | RPC 服务接口 |
| api-weapp | 294 | 小程序 API 接口 |
| api-device | 29 | 设备接口 |
| api-mp | 17 | 公众号接口 |
| api-external | 14 | 外部接口 |
命令列表
文档管理
| 命令 | 说明 |
|---|---|
read_oas |
读取完整 OpenAPI 规范(约 5MB JSON) |
refresh_oas |
刷新/更新最新文档(显示缓存状态) |
cache_status |
查看缓存状态和版本 |
clear_cache |
清除本地缓存(需要 --force 参数) |
接口查询
| 命令 | 说明 |
|---|---|
list_paths |
列出接口路径(支持模块和方法过滤) |
search_paths |
搜索接口(关键词匹配) |
get_path |
获取单个接口详情(自动解析 $ref) |
list_modules |
列出所有模块及接口统计 |
数据分析
| 命令 | 说明 |
|---|---|
stats |
显示统计信息(接口总数、模块分布) |
export_summary |
导出接口摘要(JSON/Markdown) |
使用示例
查询接口详情
# 获取指定接口的完整定义
./scripts/apifox get_path \
--path "/api/global-auth/login/sms" \
--method POST
# 获取接口但不解析 $ref(更快)
./scripts/apifox get_path \
--path "/api/global-auth/login/sms" \
--method POST \
--include_refs false
搜索接口
# 搜索登录相关接口
./scripts/apifox search_paths --keyword "login"
# 搜索 api 模块中的用户相关接口
./scripts/apifox search_paths --keyword "user" --module api
# 列出所有 POST 接口
./scripts/apifox list_paths --method post --limit 20
模块查询
# 列出所有模块及统计
./scripts/apifox list_modules
# 列出小程序接口(前 20 个)
./scripts/apifox list_paths --module api-weapp --limit 20
统计信息
# 查看基本统计
./scripts/apifox stats
# 查看详细统计(包含各模块详情)
./scripts/apifox stats --detail
缓存管理
# 查看缓存状态
./scripts/apifox cache_status
# 刷新文档(强制从 API 重新获取最新数据)
./scripts/apifox refresh_oas
# 清除缓存
./scripts/apifox clear_cache --force
导出摘要
# 导出所有 API 模块接口摘要到 Markdown
./scripts/apifox export_summary --module api --output api_summary.md --format markdown
# 导出为 JSON
./scripts/apifox export_summary --output full_summary.json --format json
输出格式
所有命令返回 JSON 格式:
{
"success": true,
"data": "返回的数据"
}
错误时返回:
{
"success": false,
"error": "错误信息"
}
Claude 使用方式
当用户需要查询 API 文档时:
- 理解需求:确定要查询的接口或模块
- 构建命令:根据需求选择合适的命令和参数
- 执行脚本:使用 Bash 工具运行
- 分析结果:解析返回的接口定义
示例工作流:
用户: "查看短信登录接口的定义"
Claude:
1. ./scripts/apifox search_paths --keyword "login sms"
2. 从结果中找到相关接口路径
3. ./scripts/apifox get_path --path "/api/global-auth/login/sms" --method POST
4. 分析返回的请求/响应结构
性能说明
- HTTP 请求:首次使用或手动刷新时,通过 HTTP 请求从 Apifox API 获取
- 本地缓存:数据缓存到插件目录,后续使用无需网络请求
- 缓存持久:缓存永久有效,需要手动刷新获取最新文档
- 搜索性能:基于内存索引,毫秒级响应
数据获取流程
首次使用
# 配置环境变量后首次运行
./scripts/apifox stats
# 输出示例:
# 正在从 Apifox 获取项目 4105462 的 OpenAPI 文档...
# API 端点: https://api.apifox.com/v1/projects/4105462/export/openapi
# ✓ 成功获取 OpenAPI 文档
# 接口数量: 4274
后续使用
# 从本地缓存加载,秒级响应
./scripts/apifox stats
# 从本地缓存加载 OpenAPI 数据...
手动刷新
# 强制从 API 重新获取最新文档
./scripts/apifox refresh_oas
# 输出示例:
# 正在刷新 OpenAPI 文档...
# 正在从 Apifox 获取项目 4105462 的 OpenAPI 文档...
# ✓ 成功获取 OpenAPI 文档
# 接口数量: 4274
查看缓存状态
./scripts/apifox cache_status
文件结构
scripts/
├── apifox.py # 统一入口脚本
├── apifox_client.py # API 文档客户端
├── cache_manager.py # 缓存管理器
└── requirements.txt # Python 依赖
references/
├── openapi-structure.md # OpenAPI 结构说明
├── common-queries.md # 常见查询示例
└── api-modules.md # API 模块分类
More from abcfed/claude-marketplace
tapd
TAPD 敏捷研发管理平台集成。使用脚本调用 TAPD API,实现需求、缺陷、任务、迭代、测试用例、Wiki 等实体管理。使用场景包括:(1) 查询/创建/更新需求、缺陷、任务、迭代 (2) 管理测试用例和 Wiki (3) 管理评论和工时 (4) 关联需求与缺陷 (5) 获取源码提交关键字
173codeup
阿里云云效 Codeup 代码仓库管理工具集。使用场景包括:(1) 代码仓库操作 - 分支管理、文件操作、代码对比、合并请求/MR管理 (2) 组织管理 - 部门管理、成员查询、角色管理 (3) 操作 codeup 仓库、分支、MR、合并请求 (4) 查询云效组织成员、部门列表
77modao-capture
墨刀原型稿抓取工具。自动从墨刀原型稿链接抓取所有页面、截图和批注,生成 Markdown 文档。使用场景包括:(1) 抓取原型稿页面 (2) 生成页面截图 (3) 提取批注内容 (4) 导出 Markdown 文档
66abc-apifox
ABC 医疗云 API 文档查询工具。读取和查询 ABC API 的 OpenAPI 规范文档(5000+ 接口),支持按模块、路径、方法搜索,自动解析 $ref 引用。采用按模块拆分的缓存结构,查询速度快。使用场景:(1) 查询 API 接口定义 (2) 搜索特定功能接口 (3) 查询 Schema 定义 (4) 查看接口统计信息
48jenkins-deploy
ABC Jenkins 项目发布技能。支持智能参数推断和交互式触发 Jenkins 构建,自动获取 Git 分支和标签信息。当用户请求"发布 Jenkins"、"触发构建"、"部署项目"、"Jenkins 发布"或类似操作时触发此技能。需要环境变量 JENKINS_USER 和 JENKINS_TOKEN。
31tapd-bug-analyzer
自动化分析和定位 TAPD Bug 单中的问题,支持多种分析策略。
24