Cloudbase
Use this skill when you develop, design, build, deploy, debug, migrate, or troubleshoot CloudBase (腾讯云开发, 云开发, TCB, 微信云开发) projects — Web, 微信小程序, 小程序, uni-app, mobile (iOS, Android, Flutter, React Native). Covers UI (页面, 界面, 表单, dashboard, prototype, 原型); auth (登录, 注册, OAuth, publishable key); databases (NoSQL 文档数据库, MySQL 关系型数据库, PostgreSQL/CloudBase PG, app.rdb(), queryPgDatabase/managePgDatabase, CRUD, security rules); 云函数/cloud functions (serverless, scf_bootstrap); CloudRun (云托管, Dockerfile); 云存储; built-in AI (内置大模型, AI 对话, streaming, 流式输出, 图片生成, generateText, streamText, createModel, generateImage, TokenHub, Hunyuan, DeepSeek, GLM, Kimi, Token Credits 资源包, 小程序成长计划); third-party/custom model onboarding (第三方大模型接入, 大模型调用, LLM API); AI agent (智能体, AG-UI, LangGraph); ops troubleshooting (巡检, 诊断, 日志); spec workflow (需求文档, 技术方案, requirements, tasks.md). Do NOT use for non-CloudBase projects, pure frontend without CloudBase, or self-hosted backends without CloudBase.
- Skill ID
- tencentcloudbase/skills/cloudbase
- Publisher
- tencentcloudbase
- Repository
- skills
- Installs
- 0
- Files
- 8
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
tencentcloudbase/skills/cloudbaseInstalls these files- SKILL.md
- references/activation-map.yaml
- references/console-links.md
- references/deployment-workflow.md
- references/mcp-setup.md
- references/scenarios.md
- references/site-onboarding.md
- references/tooling-fallback.md
What this skill tells the agent
CloudBase Development Guidelines
Step 0 — Confirm the site (domestic vs international)
CloudBase has two independent account systems: 国内站 (domestic, cloud.tencent.com) and 国际站 (international, tencentcloud.com). Environments, consoles, API keys, and login state do not cross over. A wrong-site login usually looks like "logged in, but no environments visible" rather than a clear error — so settle the site before installing MCP, logging in, or binding an env.
Infer it when you can (console domain, envId, an existing error); otherwise ask the user once. Do not guess.
| 国内站 domestic | 国际站 international | |
|---|---|---|
| Remote MCP (preferred) | https://tcb-api.cloud.tencent.com/mcp/v1 | https://tcb-api.tencentcloud.com/mcp/v1 |
| Local stdio MCP | default — nothing to set | TCB_SITE=intl + TCB_REGION=ap-singapore |
tcb CLI | default | TCB_IS_INTL=true (or tcb config set isIntl true) |
Project record .cloudbase/project.json | site omitted, or "domestic" | "site": "intl", "region": "ap-singapore" |
| Console | tcb.cloud.tencent.com | tcb.tencentcloud.com |
| Default region | ap-shanghai | ap-singapore |
| NoSQL / document DB tools | available | not available |
- International users: connect the international remote MCP endpoint directly —
https://tcb-api.tencentcloud.com/mcp/v1. It is a first-class hosted endpoint; OAuth covers the login. The site is decided by the host, so there is nositequery parameter to pass. - Domestic remote MCP is the same shape at
https://tcb-api.cloud.tencent.com/mcp/v1— that stays the default for domestic users. TCB_IS_INTL(CLI) andTCB_SITE(MCP) are different variable names for different tools. Set the one matching the tool in use; setting the wrong one silently does nothing.- On a first run, settle the site once and persist it — the CLI switch is machine-global, the MCP switch is per-client, and only
.cloudbase/project.jsonis project-scoped and readable by MCP after a restart. Followreferences/site-onboarding.md; do not re-ask on later sessions.
Details and copy-paste configs: references/mcp-setup.md. CLI specifics: references/tooling-fallback.md. First-run orchestration (trigger/skip, conflict arbitration, MCP-down fallback): references/site-onboarding.md.
Workflow
1. Exploration → Read the matching skill completely before writing any code.
Search with searchKnowledgeBase(mode="skill"), then Read full SKILL.md.
2. Implementation
├── 2a. Resource preparation → Prefer MCP; if MCP tools are missing in THIS session,
│ configure MCP for next session and use `tcb` CLI now (see tooling-fallback.md)
└── 2b. Frontend implementation → Write code, install deps, start server, test
3. Close-out → Run cloudbase-code-review, fix errors, declare done
(after a verified deploy: optionally offer Deployment Share once — see references/deployment-workflow.md §5)Key constraints: Stage 2a must precede frontend code. Stage 3 is mandatory.
Activation Contract
Routing uses stable skill ids (auth-tool-cloudbase, auth-web-cloudbase, http-api-cloudbase, …) across source, generated artifacts, and installs.
Standalone skill fallback
If only one published skill is exposed:
- Prefer local relative paths (
references/<skill-id>/SKILL.mdor sibling skill directories) when those files exist in the workspace. - Do not fetch sibling skill markdown from remote raw URLs into the agent context.
- If a required sibling skill is missing locally, ask the user to install the full CloudBase skills pack or IDE plugin (
npx skills add tencentcloudbase/cloudbase-skills), then continue using local files only.
Follow relative references/... paths from the current skill. If MCP is unavailable in this session, follow references/tooling-fallback.md: configure MCP via references/mcp-setup.md for the next session, and use tcb CLI via the cloudbase-cli skill (read core.md + the matching domain reference — not tcb deploy) to finish login/manage now. If npm/npx are missing, follow the “No npm/npx” section in tooling-fallback.md.
Global rules before action
- Identify the scenario, then read the matching skill before writing code or calling CloudBase APIs.
- Prefer semantic sources for toolkit maintenance; express runtime routing in stable skill ids.
- Prefer MCP or mcporter for management tasks when those tools are available in this session; inspect tool schemas before execution. If they are not available yet, do not stall — use the CLI fallback in
references/tooling-fallback.md. - UI tasks: read
ui-designfirst and output the design spec before interface code. - Auth tasks: read
auth-tool-cloudbasefirst and enable providers before frontend implementation. - Keep auth domains separate: management login uses
auth(ortcb loginwhen MCP auth is unavailable); app-side auth usesqueryAppAuth/manageAppAuth.
Universal guardrails
- After 2–3 failed attempts on the same path, stop and reroute (platform skill, runtime, auth domain, permission model, SDK boundary).
- Always specify
EnvIdexplicitly; do not rely on CLI-selected or implicit env state. - When the environment identifier is an alias, nickname, or other short form, do not pass it directly to
auth.set_env, SDK init, console URLs, or generated config. First resolve it to the canonical fullEnvIdwithqueryEnv(action=list, alias=..., aliasExact=true). If multiple environments match or no exact alias exists, stop and clarify with the user. - When writing MCP/tool results to a file, pass serialized text (
JSON.stringify(result, null, 2)), not raw objects. If a write tool sayscontentexpected a string but received an object, do not retry with the same raw object. Serialize the object first, then retry once with the serialized text, and make sure the retried call actually passes the serialized string rather than the original object. - Keep scenario-specific pitfalls in child skills — do not expand this entry file.
- First frontend deploy must use `manageApps(action="createApp", ...)`.
manageHostingis only for incremental updates of projects originally deployed via hosting.
Engineering constitution (applies to every scenario)
These rules override convenience. Full rationale lives in web-development.
- Prepare backend resources before writing frontend code. Prefer MCP for auth providers, tables, storage domains, and security rules; if MCP tools are missing in this session, use
tcbCLI after configuring MCP for the next session (references/tooling-fallback.md). - Do NOT use `any` to bypass type errors. Prefer
unknown+ type guards / precise interfaces. - Self-verify before claiming done. Static (
tsc/ lint / build / tests) and runtime (agent-browserfor user-visible flows). Name gaps explicitly if a layer cannot run. - Do not paper over failures. No empty
try/catch, no deleting failing tests to go green. - `ai.createModel(...)` / `wx.cloud.extend.AI.createModel(provider)` takes a GroupName, not a vendor/model id. Legal:
"cloudbase","hunyuan-exp", or"custom-<name>". Model ids go ingenerateText/streamTextmodelfield. Seeai-model-web/ai-model-nodejs/ai-model-wechat. - Low-capability STOP card: For PostgreSQL / CloudBase PG /
app.rdb()/queryPgDatabase/managePgDatabase, route topostgresql-development-cloudbase— do not use NoSQL/manageMysqlDatabasefor that path. For Web auth guards, useauth.getSession()and requiredata.session; do not use deprecatedgetLoginState()/auth.getUser()as login proof.
High-priority routing
<!-- DO NOT EDIT: auto-generated from references/activation-map.yaml -->
| Scenario | Read first | Then read | Do NOT route to first | Must check before action |
More from tencentcloudbase
Use this skill in a project
Open any RiverX project, search the Skills panel for tencentcloudbase/skills/cloudbase, and install it in one click.
