skills/columbia-cloudworks-llc/equipqr/postgres-best-practices

postgres-best-practices

SKILL.md

Postgres Best Practices (Supabase, adapted for EquipQR)

Comprehensive performance optimization guide for Postgres, maintained by Supabase. Contains rules across 8 categories, prioritized by impact to guide automated query optimization and schema design.

EquipQR applicability notes (important)

EquipQR uses Supabase Postgres. When applying these rules in this repo:

  • Migrations live in: supabase/migrations/*.sql (follow our migration standards: timestamped filenames, enable RLS by default, avoid overly complex RLS joins, etc.).
  • RLS is mandatory: Never add permissive “always true” policies without explicit, documented justification.
  • Service role usage: Edge Functions (including Google Workspace integrations) must rely on RLS by default. Use service_role only in narrowly scoped, backend-only functions where you (1) validate the JWT, (2) enforce organization_id scoping on every query, and (3) perform explicit permission checks at least as strict as equivalent RLS policies. Never use service_role as a shortcut to bypass RLS.
  • App code boundaries: UI components should not issue raw SQL; changes here typically translate into migrations, RPCs, or changes to query patterns in services.

When to Apply

Reference these guidelines when:

  • Writing SQL queries or designing schemas
  • Implementing indexes or query optimization
  • Reviewing database performance issues
  • Configuring connection pooling or scaling
  • Optimizing for Postgres-specific features
  • Working with Row-Level Security (RLS)

Rule Categories by Priority

Priority Category Impact Prefix
1 Query Performance CRITICAL query-
2 Connection Management CRITICAL conn-
3 Security & RLS CRITICAL security-
4 Schema Design HIGH schema-
5 Concurrency & Locking MEDIUM-HIGH lock-
6 Data Access Patterns MEDIUM data-
7 Monitoring & Diagnostics LOW-MEDIUM monitor-
8 Advanced Features LOW advanced-

How to Use

Read individual rule files for detailed explanations and SQL examples:

rules/query-missing-indexes.md
rules/schema-partial-indexes.md
rules/_sections.md

Each rule file contains:

  • Brief explanation of why it matters
  • Incorrect SQL example with explanation
  • Correct SQL example with explanation
  • Optional EXPLAIN output or metrics
  • Additional context and references
  • Supabase-specific notes (when applicable)

Full Compiled Document

For the complete guide with all rules expanded: AGENTS.md

Weekly Installs
3
GitHub Stars
1
First Seen
14 days ago
Installed on
openclaw3
gemini-cli3
claude-code3
github-copilot3
codex3
kimi-cli3