接口规范
inspirai-apispec
by alexxxiong
API 规范管理工具 - 跨项目 API 文档的初始化、更新、查询与搜索。Triggers: 'API文档', 'API规范', '接口文档', '路由解析', 'apispec', 'API lookup', 'API search'.
安装
claude skill add --url github.com/openclaw/skills/tree/main/skills/alexxxiong/inspirai-apispec文档
API 规范管理工具
跨项目 API 文档的初始化、更新、查询与搜索。包含四个功能模块:init(初始化)、lookup(查询)、search(搜索)、update(更新)。
1. Init - 初始化项目 API 文档配置
初始化当前后端项目的 API 文档配置,生成 .api-spec.yaml 文件。
使用方式
apispec init
执行步骤
Step 1: 检测项目类型
检查项目结构,识别后端框架:
# Go 项目
if [ -f "go.mod" ]; then
PROJECT_TYPE="go"
ROUTES_FILE=$(find . -name "routes.go" -o -name "router.go" | head -1)
fi
# Node.js 项目
if [ -f "package.json" ]; then
PROJECT_TYPE="node"
ROUTES_FILE=$(find . -name "routes.ts" -o -name "routes.js" -o -name "router.ts" | head -1)
fi
# Python 项目
if [ -f "requirements.txt" ] || [ -f "pyproject.toml" ]; then
PROJECT_TYPE="python"
ROUTES_FILE=$(find . -name "urls.py" -o -name "routes.py" | head -1)
fi
Step 2: 收集项目信息
使用 AskUserQuestion 工具询问以下信息(如果无法自动检测):
- 项目名称 - 用于在 API 规范仓库中创建目录
- Base URL - 生产环境的 API 地址
- 路由文件位置 - 如果自动检测不准确
Step 3: 生成配置文件
在项目根目录创建 .api-spec.yaml:
# API 规范配置
project_name: {project_name}
description: {description}
base_url: {base_url}
# API 规范仓库位置
spec_repo: ~/.apispec/registry
# 路由文件位置(用于解析 API)
routes_file: {routes_file}
# 项目类型
project_type: {go|node|python}
Step 4: 确认配置
显示生成的配置文件内容,询问用户确认。
输出
- 在项目根目录创建
.api-spec.yaml文件 - 将
.api-spec.yaml添加到.gitignore(可选)
注意事项
- 如果
.api-spec.yaml已存在,询问是否覆盖 - spec_repo 默认为
~/.apispec/registry - 需确保 API specs 仓库已 clone 到该目录
2. Lookup - 查询 API 文档
查询项目的 API 文档,支持列出所有项目、查看项目 API 列表、查看具体 API 详情。
使用方式
apispec lookup # 列出所有项目
apispec lookup {project} # 显示项目的所有 API
apispec lookup {project} {module} # 显示模块下的 API
apispec lookup {project} {module}/{api} # 显示具体 API 详情
示例
apispec lookup # 列出所有项目
apispec lookup myapp # 显示 myapp 的所有 API
apispec lookup myapp auth # 显示 auth 模块的 API
apispec lookup myapp auth/sms-login # 显示 sms-login 的详细文档
执行步骤
Step 1: 定位规范仓库
默认路径:~/.apispec/registry
如果目录不存在,提示用户 clone 仓库:
mkdir -p ~/.apispec
git clone <your-api-specs-repo> ~/.apispec/registry
Step 2: 拉取最新
cd {spec_repo}
git pull origin main --quiet
Step 3: 根据参数查询
无参数 - 列出所有项目:
读取 meta.yaml,格式化输出:
API Specifications Registry
Projects:
myapp 用户中心服务 - 认证、会员、支付 20 APIs
another-app 其他项目描述 12 APIs
一个参数 - 显示项目 API 列表:
读取 {project}/meta.yaml,格式化输出:
myapp - 用户中心服务
Base URL: https://api.example.com
Updated: 2026-01-22
APIs (20):
METHOD ENDPOINT AUTH SUMMARY
POST /api/v1/auth/sms/send - 发送短信验证码
POST /api/v1/auth/sms/login - 短信验证码登录
GET /api/v1/user/profile * 获取用户信息
PUT /api/v1/user/profile * 更新用户信息
* = 需要认证
两个参数(模块)- 显示模块 API:
筛选显示指定模块的 API。
完整路径 - 显示 API 详情:
读取 {project}/{module}/{api}.yaml,格式化输出完整的请求/响应信息。
输出格式
- 简洁的文本格式,便于快速理解
- 字段对齐,易于阅读
- 只显示必要信息,减少 token 消耗
注意事项
- 每次查询前自动
git pull获取最新文档 - 如果项目或 API 不存在,给出友好提示并建议使用
apispec search模糊查找
3. Search - 模糊搜索 API 文档
跨项目模糊搜索 API 文档,支持按关键词、路径、方法、字段名等维度匹配。
使用方式
apispec search {keyword} # 全局模糊搜索
apispec search --project {name} {keyword} # 在指定项目中搜索
apispec search --method POST {keyword} # 按 HTTP 方法过滤
apispec search --field {fieldname} # 按请求/响应字段名搜索
示例
apispec search login # 搜索包含 "login" 的 API
apispec search 验证码 # 中文关键词搜索
apispec search --method POST user # 搜索 POST 方法中包含 "user" 的 API
apispec search --field token # 搜索请求或响应中包含 token 字段的 API
apispec search --project myapp auth # 在 myapp 项目中搜索 "auth"
执行步骤
Step 1: 定位规范仓库
默认路径:~/.apispec/registry
如果目录不存在,提示用户先执行 apispec init 并 clone 仓库。
Step 2: 拉取最新
cd {spec_repo}
git pull origin main --quiet
Step 3: 搜索匹配
搜索范围(按优先级):
- endpoint 路径 - URL 路径中包含关键词
- summary/description - API 描述中包含关键词
- 请求/响应字段名 - field name 匹配
- 模块/文件名 - 目录或文件名匹配
搜索逻辑:
# 遍历所有项目的 meta.yaml 和 API 文件
for project_dir in {spec_repo}/*/; do
# 读取 meta.yaml 中的 API 列表快速匹配
# 如果 meta 匹配不够,深入读取具体 API 文件
done
支持多关键词(AND 逻辑):
apispec search POST login # 匹配同时包含 POST 和 login 的 API
Step 4: 格式化输出
匹配结果格式:
搜索 "login" - 找到 3 个匹配:
METHOD PROJECT ENDPOINT SUMMARY
POST myapp /api/v1/auth/sms/login 短信验证码登录
POST myapp /api/v1/auth/wechat/login 微信登录
POST another-app /api/v1/login 密码登录
提示:使用 apispec lookup myapp auth/sms-login 查看详情
无匹配时:
搜索 "xyz" - 未找到匹配的 API
建议:
- 尝试更短的关键词
- 使用 apispec lookup 浏览项目列表
- 检查拼写是否正确
字段搜索结果:
搜索字段 "token" - 找到 5 个匹配:
METHOD PROJECT ENDPOINT 字段位置 字段类型
POST myapp /api/v1/auth/sms/login response string
POST myapp /api/v1/auth/wechat/login response string
POST myapp /api/v1/auth/refresh request string
GET myapp /api/v1/user/profile request.header string
DELETE myapp /api/v1/auth/logout request.header string
提示:使用 apispec lookup myapp auth/sms-login 查看完整 API 定义
注意事项
- 搜索不区分大小写
- 支持中英文关键词
- 结果按相关度排序(endpoint 匹配 > summary 匹配 > field 匹配)
- 最多显示 20 条结果,超出时提示缩小搜索范围
- 每次搜索前自动
git pull获取最新文档
4. Update - 更新 API 文档
解析当前项目的路由和 handler,生成/更新 API 文档到规范仓库。
使用方式
apispec update # 更新所有 API
apispec update auth # 只更新 auth 模块
前置条件
- 项目已执行
apispec init,存在.api-spec.yaml配置文件 - API specs 仓库已 clone 到本地
执行步骤
Step 1: 读取配置
if [ ! -f ".api-spec.yaml" ]; then
echo "错误:未找到 .api-spec.yaml,请先执行 apispec init"
exit 1
fi
Step 2: 解析路由文件
根据项目类型解析路由:
Go 项目:
- 解析
routes.go中的mux.HandleFunc和mux.Handle调用 - 提取 HTTP 方法、路径、handler 函数名
- 读取对应的 handler 文件,提取请求/响应结构体
Node.js 项目:
- 解析
router.get/post/put/delete调用 - 提取路由和 handler
Python 项目:
- 解析
urlpatterns或 Flask/FastAPI 路由装饰器
Step 3: 生成 API 文档
为每个 API 生成 YAML 文件:
{spec_repo}/{project_name}/
├── meta.yaml # 项目索引
├── auth/
│ ├── sms-send.yaml
│ └── sms-login.yaml
├── user/
│ └── get-profile.yaml
└── ...
meta.yaml 格式:
project: {project_name}
description: {description}
base_url: {base_url}
updated_at: {timestamp}
apis:
- path: auth/sms-send
method: POST
endpoint: /api/v1/auth/sms/send
auth: false
summary: 发送短信验证码
单个 API 文件格式:
endpoint: /api/v1/auth/sms/login
method: POST
summary: 短信验证码登录
auth: false
description: 使用手机号和短信验证码登录
request:
content_type: application/json
fields:
- name: phone
type: string
required: true
description: 手机号
response:
success:
status: 200
fields:
- name: token
type: string
description: JWT token
errors:
- status: 400
error: invalid_code
description: 验证码错误
Step 4: 更新全局索引
更新 {spec_repo}/meta.yaml:
projects:
{project_name}:
description: {description}
base_url: {base_url}
api_count: {count}
updated_at: {timestamp}
Step 5: 提交并推送
cd {spec_repo}
git add -A
git commit -m "docs: update {project_name} API specs"
git push origin main
输出
- 更新
{spec_repo}/{project_name}/目录下的所有 API 文档 - 自动 commit 并 push 到远程仓库
- 显示更新摘要(新增/修改/删除的 API 数量)
相关 Skills
agent-browser
by chulla-ceja
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.
investment-research
by caijichang212
Perform structured investment research (投研分析) for a company/stock/ETF/sector using a repeatable framework: fundamentals (basic/财务报表与商业模式), technical analysis (技术指标与关键价位), industry research (行业景气与竞争格局), valuation (估值对比/情景), catalysts and risks, and produce a professional research report + actionable plan. Use when the user asks for: equity/ETF analysis, earnings/financial statement breakdown, peer/industry comparison, valuation ranges, bull/base/bear scenarios, technical trend/support-resistance, or a full research memo.
网页提取
by browseract-ai
This skill helps users automatically extract complete Markdown content from any website via the BrowserAct Web Search Scraper API. The Agent should proactively apply this skill when users express needs like extract complete markdown from a specific website, scrape the content of an article link, get the text from a target url, convert a webpage to markdown format, fetch the main content of a blog post, extract data from a given web page, parse the html of a website into markdown, download the readable text from a news article, obtain the content of a tutorial page, extract all the markdown text from any http or https url, scrape documentation from a web link, or grab the text of a single webpage.
相关 MCP 服务
Puppeteer 浏览器控制
编辑精选by Anthropic
Puppeteer 是让 Claude 自动操作浏览器进行网页抓取和测试的 MCP 服务器。
✎ 这个服务器解决了手动编写 Puppeteer 脚本的繁琐问题,适合需要自动化网页交互的开发者,比如抓取动态内容或做端到端测试。不过,作为参考实现,它可能缺少生产级的安全防护,建议在可控环境中使用。
网页抓取
编辑精选by Anthropic
Fetch 是 MCP 官方参考服务器,让 AI 能抓取网页并转为 Markdown 格式。
✎ 这个服务器解决了 AI 直接处理网页内容时格式混乱的问题,适合需要让 Claude 分析在线文档或新闻的开发者。不过作为参考实现,它缺乏生产级的安全配置,你得自己处理反爬虫和隐私风险。
Brave 搜索
编辑精选by Anthropic
Brave Search 是让 Claude 直接调用 Brave 搜索 API 获取实时网络信息的 MCP 服务器。
✎ 如果你想让 AI 助手帮你搜索最新资讯或技术文档,这个工具能绕过传统搜索的限制,直接返回结构化数据。特别适合需要实时信息的开发者,比如查 API 更新或竞品动态。不过它依赖 Brave 的 API 配额,高频使用可能受限。