Skills

CLI 快捷指令

在 Claude Code、Codex CLI 和其他编码助手中查询模型、余额和用量。

概述

CLI 快捷指令适合把模型查询、余额检查和 token 用量放进日常开发流程。

你可以把这些命令封装成 shell alias,也可以写成编码助手的自定义命令。

本页示例使用 UOUODUO Gateway 的公开 API 形态和本地环境变量。

环境变量

先在终端配置:

export UOUODUO_BASE_URL="https://api.example.com/v1"
export UOUODUO_API_KEY="sk-xxx..."

PowerShell:

$env:UOUODUO_BASE_URL="https://api.example.com/v1"
$env:UOUODUO_API_KEY="sk-xxx..."

不要把真实 key 写进共享的 dotfiles。

查询模型

curl "$UOUODUO_BASE_URL/models" \
  -H "Authorization: Bearer $UOUODUO_API_KEY"

如果安装了 `jq`:

curl -s "$UOUODUO_BASE_URL/models" \
  -H "Authorization: Bearer $UOUODUO_API_KEY" \
  | jq '.data[] | {id, owned_by}'

快速试聊

curl "$UOUODUO_BASE_URL/chat/completions" \
  -H "Authorization: Bearer $UOUODUO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o-mini",
    "messages": [
      { "role": "user", "content": "用一句话说明当前服务是否可用。" }
    ]
  }'

创建 shell alias

alias uo-models='curl -s "$UOUODUO_BASE_URL/models" -H "Authorization: Bearer $UOUODUO_API_KEY"'
alias uo-ping='curl -s "$UOUODUO_BASE_URL/chat/completions" -H "Authorization: Bearer $UOUODUO_API_KEY" -H "Content-Type: application/json" -d "{\"model\":\"gpt-4o-mini\",\"messages\":[{\"role\":\"user\",\"content\":\"ping\"}]}"'

更复杂的 alias 建议写成脚本,便于参数化模型和 prompt。

Claude Code 用法

可以把常用检查写进项目文档或自定义命令:

在开始任务前运行 uo-models,确认当前可用模型。
如果调用失败,检查 UOUODUO_API_KEY 是否存在。

编码助手不需要知道真实 key,只需要知道命令名称。

Codex CLI 用法

在仓库根目录放一个本地脚本:

#!/usr/bin/env bash
set -euo pipefail

curl -s "$UOUODUO_BASE_URL/models" \
  -H "Authorization: Bearer $UOUODUO_API_KEY"

然后让 Codex CLI 在需要时执行这个脚本。

余额和用量

余额和用量入口以 UOUODUO 控制台为准。

如果你的部署暴露了只读用户统计 endpoint,可以按同样模式封装:

curl "$UOUODUO_BASE_URL/../api/user/self" \
  -H "Authorization: Bearer $UOUODUO_API_KEY"

如果 endpoint 未启用,请打开 `/app/credits` 和 `/app/usage` 查看。

安全建议

  • alias 中不要写死真实 key。
  • 终端历史不要保存包含 key 的命令。
  • 给每台开发机使用独立 API key。
  • 离职或设备丢失时立即撤销 key。
  • 不要让 AI 助手输出完整密钥。

团队模板

可以在 README 中放置:

cp .env.example .env
echo "UOUODUO_API_KEY=sk-xxx..." >> .env

`.env.example` 只保留变量名,不放真实值。

排障

401 表示 key 无效或 header 缺失。

404 表示 endpoint 或模型 ID 错误。

429 表示触发限流。

502、503、504 通常是上游或网络临时问题。

更多处理方式见 `/docs/guides/errors`。