OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  openapi2cli:根据 OpenAPI 规范自动生成命令行工具

openapi2cli:根据 OpenAPI 规范自动生成命令行工具

 
  pipeline ·  2026-02-20 15:28:13 · 3 次点击  · 0 条评论  

名称: openapi2cli
描述: 根据 OpenAPI 规范生成命令行工具。专为讨厌编写 curl 命令的 AI 智能体打造。
主页: https://github.com/Olafs-World/openapi2cli
元数据:
{
"openclaw":
{
"emoji": "🔧",
"requires": { "bins": ["uvx"] },
"install":
[
{
"id": "uv",
"kind": "pip",
"package": "uv",
"bins": ["uvx"],
"label": "安装 uv (用于 uvx)",
},
],
},
}


OpenAPI 转 CLI

根据 OpenAPI/Swagger 规范自动生成命令行工具。非常适合需要与 API 交互但又不想编写 curl 命令的 AI 智能体。

快速开始

# 从任意 OpenAPI 规范生成 CLI
uvx openapi2cli generate https://api.example.com/openapi.json --output my-api

# 使用生成的 CLI
python my-api.py users list
python my-api.py users get --id 123
python my-api.py posts create --title "Hello" --body "World"

核心特性

  • 自动生成 CLI:支持 OpenAPI 3.x 规范。
  • 身份验证支持:API 密钥、Bearer 令牌、基础认证。
  • 丰富的帮助信息:任何命令的 --help 选项都会显示参数说明。
  • JSON 输出:结构化响应,便于解析。
  • 试运行模式:预览请求内容而不实际发送。

使用方法

# 从 URL 生成
uvx openapi2cli generate https://api.example.com/openapi.json -o my-cli

# 从本地文件生成
uvx openapi2cli generate ./spec.yaml -o my-cli

# 指定基础 URL
uvx openapi2cli generate ./spec.json -o my-cli --base-url https://api.prod.com

生成的 CLI 使用示例

# 通过环境变量设置认证
export MY_CLI_API_KEY="sk-..."

# 或通过命令行标志设置
python my-cli.py --api-key "sk-..." users list

# 查看可用命令
python my-cli.py --help

# 查看具体命令选项
python my-cli.py users create --help

示例:GitHub API

uvx openapi2cli generate https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/api.github.com/api.github.com.json -o github-cli

python github-cli.py repos list --owner octocat

为什么选择它?

AI 智能体使用 CLI 比直接处理原始 HTTP 更高效:
- 通过 --help 可轻松发现可用命令。
- 友好的 Tab 自动补全。
- 无需手动构造 JSON 负载。
- 易于通过管道与其他命令组合。

相关链接

3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor