用途
该技能用于规范浏览器或前端 Web 应用通过 @cloudbase/js-sdk 访问 CloudBase 关系型数据库的初始化方式。当任务涉及前端初始化与浏览器侧查询使用时,应优先使用本技能。技能本身已标记为废弃(Deprecated)。
主要能力
- 提供浏览器侧 CloudBase 关系型数据库的标准初始化模式。
- 初始化后,使用 db 客户端配合 Supabase 风格的查询模式进行表操作。
- 支持查询、插入、更新、删除等基本表操作示例。
使用方式
安装:
npm install @cloudbase/js-sdk
标准初始化:
import cloudbase from "@cloudbase/js-sdk";
const app = cloudbase.init({
env: "your-env-id"
});
const auth = app.auth;
// Handle login separately
const db = app.rdb();
初始化规则:
- 同步初始化。
- 除非框架绝对要求,否则不要用 import("@cloudbase/js-sdk") 懒加载 SDK。
- 创建一个共享的 db 客户端并复用。
- 不要臆造 cloudbase.init() 不支持的选项。
共享前端 DB 客户端示例:
import cloudbase from "@cloudbase/js-sdk";
const app = cloudbase.init({
env: "your-env-id"
});
export const db = app.rdb();
Supabase 风格查询示例:
const { data, error } = await db
.from("posts")
.select("*")
.order("created_at", { ascending: false });
if (error) {
console.error("Failed to load posts", error.message);
}
插入 / 更新 / 删除示例:
await db.from("posts").insert({ title: "Hello" });
await db.from("posts").update({ title: "Updated" }).eq("id", 1);
await db.from("posts").delete().eq("id", 1);
核心原则:app.rdb() 提供关系型数据库客户端;此后使用 Supabase 风格的查询知识进行表操作;将模式管理与特权管理排除在浏览器代码之外。
适用场景
- 将浏览器组件接入关系型数据表。
- 用 CloudBase 替换 Supabase 浏览器客户端。
- 需要标准的共享前端 db 客户端。
限制与不适用场景
- 不用于基于 MCP 的 SQL 供给、模式变更或权限管理。
- 不用于后端 / Node 服务访问。
- 不用于文档数据库操作。
- 若任务涉及 PostgreSQL、CloudBase PG、PG 模式、app.rdb()、queryPgDatabase、managePgDatabase、PostgREST 或 RLS,应改用 postgresql-development-cloudbase。
- 若需要创建 / 销毁 MySQL、MySQL DDL 或写 SQL 管理、通过 MCP 检查或更改 MySQL 表安全规则,应改用 relational-database-mcp-cloudbase。
常见错误
- 在 MCP 管理流程中初始化 SDK。
- 将应用本身当作关系型数据库客户端。
- 在每个组件中重复初始化 CloudBase。
- 将前端浏览器访问与管理级模式变更混用。
最小检查清单
- 确认调用方是 Web 前端。
- 保持一个共享的 CloudBase app 和一个共享的关系型 DB 客户端。
- 将 MySQL 供给 / 模式工作路由到 relational-database-mcp-cloudbase。
- 在数据访问之前单独处理认证。
相关技能
- MySQL SQL 管理与 MCP 操作:../relational-database-mcp-cloudbase/SKILL.md
- Web 认证 / 登录:../auth-web-cloudbase/SKILL.md
- 通用 Web 应用搭建:../web-development/SKILL.md
同级技能以本地相对路径提供;若引用的同级技能文件缺失,应请用户安装完整的 CloudBase 插件,不要将远程技能或协议 markdown 通过 HTTP 拉取到智能体上下文中。