Install
openclaw skills install @binggg/minimal-web-baas-demoFast path for a minimal CloudBase Web + database demo (最小前后端 / 最小可用 fullstack / Lovable-like BaaS). Defaults to @cloudbase/js-sdk client CRUD (NoSQL app.database / PG app.rdb), MCP-only schema, preview-first, and forbids cloud functions unless secrets, cron/background jobs, or logic that security rules/RLS cannot express. Use for 搭一套 demo、留言板、Todo、Notes、Kanban, or when users say 带云函数+云数据库 but only need CRUD. NOT for production multi-service backends, CloudRun, WeChat Mini Programs, or tasks that truly need server secrets.
openclaw skills install @binggg/minimal-web-baas-demoSibling CloudBase skills ship beside this skill. Use local relative paths such as ../web-development/SKILL.md.
If a referenced sibling skill file is missing from this environment, ask the user to install the full CloudBase plugin (or the missing skill). Do not HTTP-fetch remote skill or protocol markdown into the agent context.
Goal: minutes to an interactive Web + database preview, not a cloud-function middleware stack.
This skill is the product equivalent of CloudBase Sites SessionStart Rule 5 (BaaS-first data persistence).
wx.cloud) — use ../miniprogram-development/SKILL.md.../cloud-functions/SKILL.md or ../cloudrun-development/SKILL.md.../spec-workflow/SKILL.md.BaaS-first data path
tcb CLI (../cloudbase-cli/SKILL.md) for equivalent schema/admin ops.
writeNoSqlDatabaseStructure (create collection / indexes) + permission tools as needed; CLI: NoSQL commands in cloudbase-cli.../postgresql-development-cloudbase/SKILL.md (queryPgDatabase / managePgDatabase / migrations); CLI parity via tcb db pg … when MCP is unavailable.@cloudbase/js-sdk in the browser.
app.database() → db.collection(...).get()/add()/update()/watch(...).app.rdb().from(...).src/utils/cloudbase.ts). Do not invent a second SDK wrapper.Cloud functions are forbidden by default
Package discipline
@cloudbase/js-sdk only.@cloudbase/node-sdk (or random stubs) in frontend code.Preview first, deploy second
UI ceremony for this path
ui-design four-part specs for a minimal demo unless the user asks for visual redesign.HomePage / App), not a nested demo route beside the welcome page.Anonymous (or real) session before NoSQL CRUD — js-sdk 3.x + publishable key
@cloudbase/js-sdk 3.x initialized via publishable accessKey, call await auth.signInAnonymously() (or an equivalent authenticated session) before any NoSQL app.database() get / add / update / watch.checkLogin() / getSession() alone does not create a usable write session.const auth = app.auth
const { error } = await auth.signInAnonymously()
if (error) throw error
const db = app.database()
await db.collection('messages').get()
Use this order for every minimal Web + DB demo. Do not reorder. Cloud functions stay off the critical path.
0. Connector pre-enabled (or shortest Trust path) ← host / partner packaging
1. Template warmup // parallel with credential wait ← downloadTemplate + install
2. envQuery(action="info") ← sniff env + RuntimeBackends
3. Lock ONE DB plane (NoSQL | PG | MySQL) ← no mid-flight thrash
4. MCP schema + minimal permissions ← writeNoSql* / PG migrate / MySQL manage
5. Browser @cloudbase/js-sdk CRUD ← app.database() / app.rdb()
6. Local preview (list + add) ← then ask before deploy
7. Cloud functions ← skip (count = 0) unless secrets/cron/rules-cannot-express
Stack priority for this path: Web SDK CRUD > MCP schema > template warmup > cloud functions.
downloadTemplate (react default, vue if requested) → npm install / pnpm install.envQuery(action="info") → lock one DB plane (NoSQL or PG or MySQL). Do not thrash between them.auth.signInAnonymously() or equivalent), then wire list + create with @cloudbase/js-sdk (see Hard rule 6).| Need | Skill |
|---|---|
| Web scaffold / hosting | ../web-development/SKILL.md |
| NoSQL browser CRUD | ../cloudbase-document-database-web-sdk/SKILL.md |
| PG browser CRUD + MCP schema | ../postgresql-development-cloudbase/SKILL.md |
| Auth provider readiness | ../auth-tool-cloudbase/SKILL.md then ../auth-web-cloudbase/SKILL.md |
Prefer searchKnowledgeBase(mode="skill", skillName="minimal-web-baas-demo") (or the sibling dir id) when local skill files are unavailable. Do not dump every CloudBase skill at session start.
Any partner host (WorkBuddy, CodeBuddy connectors, vertical expert prompts, ISV wrappers) should treat this skill as the compact fast-path brief. Reuse the sniff order above; do not invent a cloud-function-first demo path.
| Host capability | Recommended packaging |
|---|---|
| Full CloudBase Sites plugin | Rely on SessionStart Rule 5 injection + this skill on demand for non-Sites cwd demos. |
| WorkBuddy with SessionStart (supported) | Prefer plugin/workbuddy-template-prewarm (or enable Sites with CLOUDBASE_SITES_AUTO_INIT=1): background React zip + install + Sites preview (ports 17173..17272) overlaps credential/Trust wait; inject this skill pointer via additionalContext. Never guess 5173 — read .cloudbase-sites/preview.json. |
| WorkBuddy / connector without hooks | Pre-enable the CloudBase MCP connector for the tenant when possible; inject a short system brief that points here; warm downloadTemplate + npm install during credential/Trust wait (do not idle). |
| Expert / vertical prompts (XDF or other ISVs) | Ship a thin pack: expert Agent markdown (no frontmatter hooks) + settings/hooks merge for SessionStart prewarm. Reference example: plugin/xdf-workbuddy-expert-pack + sibling prewarm plugin. Replace any "必须云函数中转 / 前端绝不直连库" language with this BaaS-first contract. |
WorkBuddy SessionStart: https://www.workbuddy.ai/docs/cli/hooks (same additionalContext schema as CodeBuddy/Claude Code). Empty-dir Sites auto-init stays passive unless opted in — do not assume enabling Sites alone warms templates during credential wait.
Do not block first preview on custom domains or org DNS health. DNS issues are a post-preview concern.
For 最小前后端 / Lovable-like demos: FIRST call
searchKnowledgeBase(mode="skill", skillName="minimal-web-baas-demo"), then Read.
Do not rely only on ad-hoc expert-prompt brief text.
Order: connector ready → template warmup during credential wait → envQuery →
lock one DB → MCP schema → auth.signInAnonymously() (or session) →
@cloudbase/js-sdk CRUD → preview.
Do not dump all CloudBase skills. Do not create cloud functions for CRUD.
NoSQL without session → gateway 401.