Skip to main content
skill

saas-multi-tenant — Claude Code skill: what it does, how to install

Guides the agent in structuring multi-tenant SaaS backends with PostgreSQL and TypeScript. Sets up database row policies, request context middleware, and query filtering.

Install into Claude Code · claude-code-templates All methods and platforms ↓
npx claude-code-templates@latest --skill development/saas-multi-tenant
Open on GitHub

What saas-multi-tenant does

The skill provides architectural workflows for isolating tenant data inside a single shared database. For workloads under 1000 accounts, it relies on adding a mandatory tenant_id column to every domain table and composite index. PostgreSQL Row-Level Security (RLS) policies act as the database safeguard, evaluating rows against a session setting.

At the framework layer, the skill covers middleware for Express and Next.js routes. The handler pulls the organization ID from incoming tokens and executes set_config in an active database transaction. It also creates interception logic for Prisma or Drizzle query builders to inject tenant criteria into read and write commands.

Cross-tenant administrative endpoints must execute under dedicated database credentials or bypass policies explicitly. Reusing standard customer sessions for management tooling creates dangerous permission leaks.

What it helps with

  • isolate tenant records using PostgreSQL Row-Level Security policies
  • bind tenant session context in database middleware per request
  • inject tenant filters into Prisma and Drizzle ORM operations
  • configure distinct routes for cross-account administrative operations
  • enforce required tenant identifiers across database migration scripts

Example prompts for the agent

  • Write PostgreSQL RLS policies to isolate the projects table by tenant session ID
  • Set up Express middleware that passes tenantId to Postgres via set_config in a transaction
  • Configure a Prisma extension that automatically attaches tenantId to every query

How to install saas-multi-tenant

1claude-code-templates

npx claude-code-templates@latest --skill development/saas-multi-tenant

2Skills CLI (Vercel)

npx skills add davila7/claude-code-templates --skill saas-multi-tenant -a claude-code

3Manually: put the files in place

~/.claude/skills/saas-multi-tenant/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/saas-multi-tenant/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about saas-multi-tenant

How do I install saas-multi-tenant in Claude Code?

Run npx claude-code-templates@latest --skill development/saas-multi-tenant. You can also register it with npx skills add davila7/claude-code-templates --skill saas-multi-tenant -a claude-code.

What does the saas-multi-tenant skill do?

It provides architecture patterns and code samples for multi-tenant SaaS applications using PostgreSQL, TypeScript, and modern ORMs.

How are global tables handled during ORM query filtering?

Shared resources like feature flags or subscription plans are kept in an exclusion list, preventing ORM middleware from injecting tenant parameters into them.

Similar skills

All skills for Backend and APIs →

From the same set740

The whole set →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor