minimal-web-baas-demo について
CloudBase 上で CRUD デモやシンプルなボードなどの Web アプリを作る、コーディングエージェント向けの迅速な開発スキルです。ブラウザー SDK によるデータベース操作とローカルプレビューを優先し、シークレットや定期処理が必要な場合に限ってクラウド関数を使います。
主な機能
- 01BaaS 優先のデータベース手順
- 02NoSQL・PostgreSQL・MySQL の選択
- 03@cloudbase/js-sdk によるブラウザー CRUD
- 04NoSQL アクセス用セッション設定
- 05デプロイ前のプレビュー
活用シーン
- 01Todo または Notes のデモ作成
- 02掲示板や Kanban の構築
- 03最小構成の Web アプリをローカルでプレビュー
- 04プロトタイプ向けデータベースの選定
MCP 対応
データベースのスキーマと権限の準備には MCP ツールを推奨し、利用できない場合は tcb CLI に切り替えます。アプリは @cloudbase/js-sdk でブラウザーからデータベースを読み書きします。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tencentcloudbase/ skills --skill minimal-web-baas-demoインストール後、Claude Code で/minimal-web-baas-demoを入力して読み込まれたか確認します。
同梱ファイルLICENSE.md
詳細
関連スキル(ローカルのみ)
関連する CloudBase スキルは、このスキルと同じ場所に配置されています。../web-development/SKILL.md のようなローカルの相対パスを使用してください。
参照先の関連スキルファイルがこの環境にない場合は、CloudBase プラグイン一式(または不足しているスキル)をインストールするようユーザーに依頼してください。リモートのスキルやプロトコルの Markdown を HTTP 経由で取得し、エージェントのコンテキストに読み込まないでください。
最小限の Web BaaS デモ(最短ルート)
目標:クラウド関数のミドルウェアスタックではなく、数分で操作可能な Web + データベースのプレビューを実現します。
このスキルは、CloudBase Sites SessionStart Rule 5(BaaS 優先のデータ永続化)に相当する製品機能です。
有効化の条件
まずこれを使う場合
- ユーザーが、CloudBase Web 上で 最小限のフルスタック/前後端デモ、掲示板、Todo、Notes、Kanban、または Lovable/Supabase のような手軽なアプリを求めている場合。
- ユーザーが「带云函数+云数据库」と言っていても、実際のニーズが CRUD + プレビューである場合(Web SDK → データベースとして解釈し直します)。
使用しない場合
- WeChat ミニプログラム(
wx.cloud)—../miniprogram-development/SKILL.mdを使用します。 - 実際のサーバーワークロード:決済コールバック、SMS プロバイダー、サードパーティの秘密鍵、cron/ETL、WebSockets —
../cloud-functions/SKILL.mdまたは../cloudrun-development/SKILL.mdを使用します。 ../spec-workflow/SKILL.mdが必要な大規模な複数モジュール製品。
厳守事項(Sites SessionStart Rule 5 に準拠)
-
BaaS 優先のデータパス
- スキーマ/管理: MCP 管理ツールを優先します。コンソールでコレクション/テーブルを作成するようユーザーに依頼しないでください。このセッションで MCP ツールを利用できない場合は、次回に備えて MCP を設定し、同等のスキーマ/管理操作には
tcbCLI(../cloudbase-cli/SKILL.md)を使用します。- NoSQL:必要に応じて
writeNoSqlDatabaseStructure(コレクション/インデックスの作成)と権限ツールを使用します。CLI:cloudbase-cliの NoSQL コマンド。 - PostgreSQL:
../postgresql-development-cloudbase/SKILL.md(queryPgDatabase/managePgDatabase/マイグレーション)に従います。MCP が利用できない場合は、tcb db pg …で CLI を使用できます。
- NoSQL:必要に応じて
- 読み取り/書き込み: ブラウザーで
@cloudbase/js-sdkを使用します。- NoSQL:
app.database()→db.collection(...).get()/add()/update()/watch(...)。 - PG:
app.rdb().from(...)。
- NoSQL:
- テンプレートのヘルパー(多くの場合
src/utils/cloudbase.ts)を優先してください。別の SDK ラッパーを新たに作らないでください。
- スキーマ/管理: MCP 管理ツールを優先します。コンソールでコレクション/テーブルを作成するようユーザーに依頼しないでください。このセッションで MCP ツールを利用できない場合は、次回に備えて MCP を設定し、同等のスキーマ/管理操作には
-
デフォルトではクラウド関数を使用しない
- Todo/Notes/Chat/Kanban/「最小前后端 demo」→ クラウド関数はゼロにします。
- ユーザーが「带云函数」と言っていても、Web SDK → DB を実装し、CRUD にクラウド関数が不要であることを一文で説明します。
- クラウド関数を作成するのは、以下の両方を満たす場合に限ります。
- (a) データベースのセキュリティルール/RLS ではロジックを表現できず、かつ
- (b) サーバー側の秘密情報/サードパーティ API キーが必要、またはユーザーのクリックでは起動しないスケジュール済み/バックグラウンドジョブである。
-
パッケージの使用ルール
- ブラウザーでは
@cloudbase/js-sdkのみを使用します。 - フロントエンドのコードに
@cloudbase/node-sdk(または適当なスタブ)をインストールしないでください。
- ブラウザーでは
-
まずプレビュー、次にデプロイ
- 静的ホスティング/CloudApp にデプロイする前に、ローカルで一覧表示と追加(または同等の CRUD)を実装します。
- カスタムドメイン、DNS、ロールバック手順書は、ユーザーが明示的に求めた場合に限ります。
- ユーザーからテストを依頼されない限り、Playwright/agent-browser は省略します。
-
この方法での UI の作法
- テンプレートの見た目を再利用します。ユーザーがビジュアルデザインの変更を求めない限り、最小限のデモで
ui-designの 4 部構成の仕様を読み込まないでください。 - 「Make me a X app」では、X 自体をホームページ(
HomePage/App)にします。ウェルカムページの横にデモ用のネストされたルートを作らないでください。
- テンプレートの見た目を再利用します。ユーザーがビジュアルデザインの変更を求めない限り、最小限のデモで
-
NoSQL CRUD の前に匿名(または実際の)セッションを確立 — js-sdk 3.x + publishable key
- publishable
accessKeyを使用して@cloudbase/js-sdk3.x を初期化する場合、NoSQL のapp.database()に対するget/add/update/watchの前に、await auth.signInAnonymously()(または同等の認証済みセッション)を呼び出してください。 - これを省略すると、gateway 401 が発生します。
checkLogin()/getSession()だけでは、書き込み可能なセッションは確立されません。 - 最小限の例:
- publishable
const auth = app.auth
const { error } = await auth.signInAnonymously()
if (error) throw error
const db = app.database()
await db.collection('messages').get()
ケイパビリティの確認順序(パートナーとエージェント向け)
すべての最小限の Web + DB デモで、この順序を使用してください。順序を変更しないでください。 クラウド関数はクリティカルパスに含めません。
0. Connector pre-enabled (or shortest Trust path) ← host / partner packaging
1. Template warmup // parallel with credential wait ← downloadTemplate + install
2. queryEnv(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
このパスのスタック優先順位:Web SDK CRUD > MCP スキーマ > テンプレートのウォームアップ > クラウド関数。
標準プレイブック
- 認証情報の準備と並行してテンプレートをウォームアップします(以下のパートナー向けメモを参照):
downloadTemplate(デフォルトはreact、リクエストがあればvue)→npm install/pnpm install。 queryEnv(action="info")→ DB プレーンを1つ選択して固定します(NoSQL または PG または MySQL)。切り替えを繰り返さないでください。- MCP:コレクション/テーブルを作成し、最小限の権限を設定します。
- フロントエンド:セッションを確保し(
auth.signInAnonymously()など)、@cloudbase/js-sdkを使って一覧表示と作成を接続します(「厳守事項 6」を参照)。 - プレビュー URL を起動して報告します。デプロイ前には確認してください。
- このパスでのクラウド関数の数 = 0。
オンデマンドスキル(必要な場合のみ取得)
| 必要なもの | スキル |
|---|---|
| Web のスキャフォールド/ホスティング | ../web-development/SKILL.md |
| NoSQL のブラウザー CRUD | ../cloudbase-document-database-web-sdk/SKILL.md |
| PG のブラウザー CRUD + MCP スキーマ | ../postgresql-development-cloudbase/SKILL.md |
| 認証プロバイダーの準備状況 | ../auth-tool-cloudbase/SKILL.md の後に ../auth-web-cloudbase/SKILL.md |
| MCP 接続、mcporter によるシェルからのツール呼び出し、プラグインフラグ | ../cloudbase-mcp/SKILL.md |
ローカルのスキルファイルを利用できない場合は、searchKnowledgeBase(mode="skill", skillName="minimal-web-baas-demo")(または同階層のディレクトリ ID)を優先してください。セッション開始時に CloudBase のスキルをすべて出力しないでください。
WorkBuddy/パートナー向けのパッケージ化メモ(XDF 以降)
あらゆるパートナーのホスト(WorkBuddy、CodeBuddy コネクター、各分野のエキスパート向けプロンプト、ISV のラッパー)は、このスキルをコンパクトな高速パスの概要として扱ってください。上記の確認順序を再利用し、クラウド関数を最初に使うデモパスを作らないでください。
| ホストのケイパビリティ | 推奨されるパッケージ化 |
|---|---|
| CloudBase Sites プラグインのフル機能 | SessionStart Rule 5 のインジェクションを利用し、Sites 以外の CWD デモでは必要に応じてこのスキルを使います。空の CWD でプレビューする場合は CLOUDBASE_SITES_AUTO_INIT=1 を設定した Sites を優先します。5173 と決めつけず、.cloudbase-sites/preview.json を読み取ってください。 |
| WorkBuddy/コネクターホスト | 可能であれば、テナントに CloudBase MCP コネクターを事前に有効化します。ここを参照する短いシステム概要を挿入し、認証情報/信頼性の確認を待つ間に downloadTemplate + npm install をウォームアップします(待機だけにしないでください)。任意で SessionStart の additionalContext からこのスキルを参照できます。テンプレートを事前にウォームアップする別のプラグインは提供しないでください。 |
| エキスパート/分野別プロンプト(ISV) | 軽量なパックを提供します:エキスパート向け Agent マークダウン(frontmatter フックなし)+ 任意の設定/フック。「必ず云函数中转/前端绝不直连库」に相当する文言はすべて、この BaaS 優先の契約に置き換えてください。 |
WorkBuddy SessionStart:https://www.workbuddy.ai/docs/cli/hooks(CodeBuddy/Claude Code と同じ additionalContext スキーマ)。空のディレクトリでの Sites 自動初期化は、明示的に有効化しない限りパッシブです。Sites を有効にするだけで、認証情報の確認を待つ間にテンプレートがウォームアップされると想定しないでください。
カスタムドメインや組織の DNS の状態を理由に、最初のプレビューを遅らせないでください。DNS の問題はプレビュー後に対応します。
パートナー向け1画面ペースト(任意)
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 → queryEnv →
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.