# Tcapi

To call Cloud API for Tencent Cloud (腾讯云).

- Repository: https://github.com/TencentCloud/Octop (11420 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add TencentCloud/Octop --skill tcapi -g -a claude-code -y`
Codex: `npx skills add TencentCloud/Octop --skill tcapi -g -a codex -y`
Cursor: `npx skills add TencentCloud/Octop --skill tcapi -g -a cursor -y`
Gemini CLI: `npx skills add TencentCloud/Octop --skill tcapi -g -a gemini-cli -y`

## Description

Skill to call Cloud API for Tencent Cloud (腾讯云). Used for cloud automation or resource management. 当用户需要查询、创建、管理腾讯云资源，或执行云 API 自动化操作时触发。优先使用 Octop 自带 venv 中的 tccli，凭证支持全自动 OAuth 登录。

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# 腾讯云 API 助手

统一使用 **tccli** 命令行工具调用腾讯云 API，实现云资源的查询、创建、修改、删除等操作。

## 适用场景

- 云资源查询与管理（CVM / COS / CBS / VPC / TKE 等 200+ 产品）
- 自动化运维（批量操作、定时任务、脚本编排）
- 云 API 接口探索与文档检索

## 不适用场景

- 不支持 Terraform / Pulumi 等 IaC 编排工具
- 不做多云管理（仅限腾讯云）
- 不做费用充值、账号注册等非 API 操作

## 前置条件

- 已安装 tccli，未安装参考 [references/install.md](references/install.md)
- 已完成凭证配置（详见下方「Step 2 凭证配置」）

## 核心原则

> 1. **优先检索最佳实践 → 再查接口文档 → 最后调用 API**。不要跳过文档检索直接调用，避免用错接口或遗漏参数。
> 2. **在线文档是实时态，本地 tccli 是版本快照**。以在线文档（`cloudcache.tencentcs.com`）为准判断接口/参数是否存在；本地 tccli 因版本差异，可能缺少新接口、或残留已下线的旧接口。遇到本地报「无此接口」或服务端报「接口已下线」时，先查在线文档确认真实情况，再决定升级 tccli 或换用替代接口。

## 执行流程

### Step 0：环境自检（首次任务必做，一次探测串起所有分支）

**优先使用 Octop 自带的 Python 虚拟环境（venv）中的 tccli**：与 Octop 同环境、版本可控、不污染系统 Python。探测顺序：① Octop venv → ② 系统 PATH → ③ 临时安装进 venv。

```sh
# ① 定位 Octop venv（通过 octop 主进程的工作目录；找不到进程则退回常见路径）
OCTOP_PID=$(pgrep -f '\.venv/bin/octop run' | head -1)
OCTOP_ROOT=$([ -n "$OCTOP_PID" ] && readlink -f /proc/$OCTOP_PID/cwd || echo /workspace/octop)
TCCLI="$OCTOP_ROOT/.venv/bin/tccli"

# ② 逐级探测：venv 内 → PATH → 均无则装进 venv
if [ -x "$TCCLI" ]; then :
elif command -v tccli >/dev/null 2>&1; then TCCLI=tccli
else uv pip install --python "$OCTOP_ROOT/.venv/bin/python3" tccli; fi

# ③ 验证可运行且凭证有效
"$TCCLI" cvm DescribeRegions >/dev/null 2>&1 && echo "TCCLI_OK" || echo "TCCLI_NEED_CHECK"
```

> 若系统无 `uv`：`"$OCTOP_ROOT/.venv/bin/python3" -m ensurepip --upgrade` 后用同路径的 `python3 -m pip install tccli`。

判定分支：

| 探测结果 | 状态 | 处理 |
|:--------|:-----|:-----|
| 返回 `TCCLI_OK` | 已安装、可运行、凭证有效 | 直接进入 Step 1 |
| `command not found` / 安装失败 | **未安装** | 按 [references/install.md](references/install.md) 装进 Octop venv（推荐）或系统安装 |
| `bad interpreter` / `No module named tccli` | **装了但 shebang/环境坏** | 切换 Step 5 兼容模式（改用 venv 的 `python3 -c` 直接调 `tccli.main`），本会话后续统一使用 |
| 报 `secretId is invalid` / `AuthFailure.SecretIdNotFound` | **凭证缺失** | 进入 Step 2 配置凭证 |

> 探测通过（`TCCLI_OK`）后，本会话无需再重复自检，直接调用即可。后续所有示例中的 `tccli` 均指探测到的 `$TCCLI`（venv 优先）。

### Step 1：检索 API 文档

The rest: https://github.com/TencentCloud/Octop/blob/HEAD/src/octop/infra/agents/experts/library/tencentcloud-api/skills/tcapi/SKILL.md
