tools/sage-claude-plugin/skills/baas/SKILL.md
--- name: "baas" description: "Corrects the most common BaaS architecture mistakes agents make — security rules as authorization, data modeling for queries, minimizing serverless functions, real-time by default, and client-direct access patterns. Applies to Firebase, Supabase, and similar platforms." version: "1.0.0" type: knowledge layer: domain requires: sage: ">=1.0.0" activates-when: detected: [firebase, @firebase/app, @supabase/supabase-js, supabase, firebase-admin, @angular/fire, react
npx skillsauth add xoai/sage tools/sage-claude-plugin/skills/baasInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Layer 1 — Domain Foundation
Universal Backend-as-a-Service principles that apply regardless of platform. Firebase, Supabase, Appwrite — these principles hold.
BaaS is a fundamentally different architecture from custom backends. There are no controllers, no middleware, no routes. The client talks directly to platform services, and security rules replace the API layer. Agents trained on custom backend patterns (Express, Django) apply those patterns to BaaS — building REST APIs in Cloud Functions, normalizing data for a database that can't JOIN, and treating security as a client-side concern. Every pattern in this pack corrects a specific failure that arises from applying custom-backend thinking to BaaS.
| Type | Count | Coverage | |------|-------|----------| | Patterns | 8 | Security rules as auth, data modeling for queries, minimize functions, real-time by default, platform auth, offline support, typed models, cost management | | Anti-patterns | 7 | Open rules in production, REST API in functions, client-side auth, relational normalization in NoSQL, untyped raw data, one-time fetches everywhere, no billing awareness | | Constitution | 8 | principles |
Grounded in: Firebase official docs, Supabase official docs, Firebase security checklist, ModernPentest security research (2024-2025), Fireship data modeling guides, and community best practices.
Loads when the project is detected as using a BaaS platform (Firebase SDK, Supabase client, or similar in dependencies).
firebase, supabase)stack-flutter-firebase, etc.)api for custom API development)tools
Captures agent mistakes, corrections, and discovered gotchas so they are not repeated. Use when: (1) a command or operation fails unexpectedly, (2) the user corrects the agent, (3) the agent discovers non-obvious behavior through debugging, (4) an API or tool behaves differently than expected, (5) a better approach is found for a recurring task. Also searches past learnings before starting tasks to avoid known pitfalls. Activate alongside the sage-memory skill — they share the same MCP backend but serve different purposes (sage-memory = codebase knowledge, sage-self-learning = agent mistakes and gotchas).
development
Typed knowledge graph stored in sage-memory. Use when creating or querying structured entities (Person, Project, Task, Event, Document), linking related objects, checking dependencies, planning multi-step actions as graph transformations, or when skills need to share structured state. Trigger on "remember that X is Y", "what do I know about", "link X to Y", "show dependencies", "what blocks X", entity CRUD, cross-skill data access, or any request involving structured relationships between things.
tools
Integrates sage-memory into Sage workflows. Teaches the agent when to remember (store findings during work), when to recall (search memory at session start and task start), and how to learn (structured knowledge capture via sage learn). Use when the user mentions memory, remember, recall, learn, capture knowledge, onboard to codebase, or when starting any session where sage-memory MCP tools are available.
tools
Captures agent mistakes, corrections, and discovered gotchas so they are not repeated. Use when: (1) a command or operation fails unexpectedly, (2) the user corrects the agent, (3) the agent discovers non-obvious behavior through debugging, (4) an API or tool behaves differently than expected, (5) a better approach is found for a recurring task. Also searches past learnings before starting tasks to avoid known pitfalls. Activate alongside the sage-memory skill — they share the same MCP backend but serve different purposes (sage-memory = codebase knowledge, sage-self-learning = agent mistakes and gotchas).