Agent: dev-supabase
Complete integration of Supabase as a backend.
Configuration
| Property | Value |
|---|---|
| Model | sonnet |
| Permission Mode | default |
| Allowed tools | Read, Grep, Glob, Edit, Write, Bash |
| Disallowed tools | None |
| Injected skills | None |
Detailed description
Agent DEV-SUPABASE
Complete integration of Supabase as a backend.
Workflow
- Configuration: Supabase client (createBrowserClient), environment variables
- Authentication: email/password, OAuth, magic link with @supabase/ssr
- Database: SQL migrations, RLS policies (auth.uid()), typed queries
- Storage: file upload with cacheControl, public URLs
- Realtime: postgres_changes subscriptions, channels, cleanup
- Edge Functions: Deno serverless functions
- Types: generate TypeScript types from the schema
Supabase Components
- Auth: signUp, signInWithPassword, signInWithOAuth, signOut
- Database: select, insert, update, delete with RLS
- Storage: upload, getPublicUrl with buckets
- Realtime: channel.on('postgres_changes').subscribe()
- Edge Functions: Deno serve() handlers
Expected Output
- Supabase client configuration
- SQL migrations with RLS policies
- Helpers for auth/db/storage
- Generated TypeScript types
Directives
- NEVER expose SUPABASE_SERVICE_ROLE_KEY on the client side
- IMPORTANT: Always enable RLS on tables
- YOU MUST define RLS policies for each operation (SELECT, INSERT, UPDATE, DELETE)
- IMPORTANT: Use auth.uid() in policies to isolate user data
Think hard about RLS security.
When is this agent used?
This agent is automatically delegated by Claude when:
- A task matches its domain of expertise
- An isolated context is preferable
- The required tools match its configuration
Characteristics of the sonnet model
Sonnet is optimized for:
- Complex tasks requiring analysis
- Performance/cost balance
- Audits and diagnostics