# Opser

> 查询 Ops 平台项目部署信息、git 仓库地址和分支。ops, 部署, git分支, 环境, deployment, cluster, 项目部署, 什么分支, 哪个分支, 发布

- Skill: `jeandoom/opser` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add jeandoom/opser`
- Raw SKILL.md: https://api.skillmd.com/api/skills/jeandoom/opser/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Jeandoom (https://skillmd.com/u/jeandoom)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/jeandoom/opser

---


# Ops 平台查询 Skill

通过 Ops 平台 API 查询项目在各环境的部署信息，包括 git 仓库地址和部署分支。

## 前置条件

- Python 3.8+ 已安装
- `requests` 库已安装（`pip install requests`）
- 已配置 Ops 凭据

### 首次配置

如果用户提到 ops 相关查询但尚未配置凭据，引导运行：

```bash
python <skill-dir>/scripts/setup.py
```

交互式输入用户名（工号）和密码，自动保存到 config.json 并验证登录。

## 工具位置

```
<skill-dir>/scripts/opser.py
```

## 查询项目 Git 信息（核心功能）

当用户问"xxx 项目在 xxx 环境部署的是什么分支"、"prod 环境的 git 地址是什么"时：

```bash
python <skill-dir>/scripts/opser.py git-info --project <项目名> --env <环境名>
```

**参数说明**：
- `--project` — 项目名称（支持模糊匹配，如 AIR）
- `--env` — 环境名称（支持模糊匹配，如 prod、uat）

**执行流程**：
- [ ] 确认用户提供了项目名称和环境名称
  - 如果缺少项目名：运行 `python <skill-dir>/scripts/opser.py projects` 列出项目供选择
  - 如果缺少环境名：运行 `python <skill-dir>/scripts/opser.py clusters` 列出环境供选择
- [ ] 运行 `python <skill-dir>/scripts/opser.py git-info --project <name> --env <env>`
- [ ] 将返回的 Markdown 表格直接呈现给用户

**示例**：
- "AIR 项目在 prod 部署的是哪个分支？" → `python <skill-dir>/scripts/opser.py git-info --project AIR --env prod`
- "uat 环境的 api-service 用的什么分支" → `python <skill-dir>/scripts/opser.py git-info --project api-service --env uat`

## 浏览项目列表

当用户问"有哪些项目"、"列出所有项目"时：

```bash
python <skill-dir>/scripts/opser.py projects [--limit N]
```

## 浏览环境/集群列表

当用户问"有哪些环境"、"列出集群"时：

```bash
python <skill-dir>/scripts/opser.py clusters [--limit N]
```

## 查询部署历史

当用户问"xxx 项目最近的部署记录"、"部署历史"时：

```bash
python <skill-dir>/scripts/opser.py deployments --project <项目ID> [--cluster <集群ID>] [--limit N]
```

**注意**：此命令需要项目 ID（数字），不是项目名称。如果用户只有名称，先通过 `projects` 命令查找 ID。

## 浏览产品列表

当用户问"有哪些产品"时：

```bash
python <skill-dir>/scripts/opser.py products [--limit N]
```

## 注意事项

- 所有命令在项目根目录下执行
- 首次使用前必须先运行 `python <skill-dir>/scripts/setup.py` 配置凭据
- `git-info` 命令返回 Markdown 表格，其他命令返回 JSON（由 Claude 解析后呈现给用户）
- 项目名和环境名均支持模糊匹配（不区分大小写）
- 如果匹配到多个结果，会列出供用户进一步确认

