Agents & OrchestrationSûr100100/100

Create Supabase Middleware (Supabase)

Use when creating a new middleware for `@supabase/middleware` — either a built-in inside the middleware repo itself, or a standalone package that anyone can publish. Trigger when the user asks to write, scaffold, or add a middleware; describes a per-request cross-cutting concern they want to reuse ("I want to rate limit", "add request logging", "check an API key on every request"); calls `defineMiddleware`; or adds a new directory under `src/middleware/`. Also trigger when a plan proposes a new middleware, before any file is written.

ou envoie-le directement à ton agent.

Installer dans ton projet

$ curl -fsSL https://arboristhree.xyz/cli/install-skill.mjs -o /tmp/arboris-install-skill.mjs && node /tmp/arboris-install-skill.mjs create-supabase-middleware__supabase-middleware__skills-4ed28a706ea7
Supabase
supabase/middleware
Contenu à copier
---
name: create-supabase-middleware
description: Use when creating a new middleware for `@supabase/middleware` — either a built-in inside the middleware repo itself, or a standalone package that anyone can publish. Trigger when the user asks to write, scaffold, or add a middleware; describes a per-request cross-cutting concern they want to reuse ("I want to rate limit", "add request logging", "check an API key on every request"); calls `defineMiddleware`; or adds a new directory under `src/middleware/`. Also trigger when a plan proposes a new middleware, before any file is written.
metadata:
  origin: Supabase
---

# Creating a middleware

Before scaffolding anything, check the concern is actually middleware-shaped:

- **Response-only** — headers, envelopes, error formatting — belongs in the handler, which owns the response. Not a middleware.
- **Used once, in one handler** — inline it. A middleware earns its keep by being composed across handlers.

Then pick the target by reading the nearest `package.json`:

| `name` is              | You are writing      | Follow                                                                                |
| ---------------------- | -------------------- | ------------------------------------------------------------------------------------- |
| `@supabase/middleware` | a built-in           | `src/middleware/README.md` — layout, then the three subpath-wiring files              |
| anything else          | a standalone package | `docs/authoring-guide.md` — the full path, from `defineMiddleware` through publishing |

Both paths use the same `defineMiddleware` primitive; the difference is only whose package it lives in and whether a subpath export has to be wired up.

**Read the guide before writing code, and follow its `## Rules` section** — eight MUST/NEVER items covering one-key-per-middleware, `getEnv` over `process.env`/`Deno.env`, declaring prerequisites in `In`, `yield`ing at most once, and returning a `Response` to short-circuit rather than throwing. Its code blocks labeled with a path are complete files: write them to disk as given rather than adapting them from memory. Unlabeled blocks are fragments that elide with `{ ... }`. Never write those verbatim.

Paths are repo-relative. When `@supabase/middleware` is installed as a dependency, prefix them with `node_modules/@supabase/middleware/`.
Colle ce Markdown dans ton agent ou utilise les boutons ci-dessus pour l’écrire dans ton projet.

Ce que fait Create Supabase Middleware (Supabase)

**Response-only** — headers, envelopes, error formatting — belongs in the handler, which owns the response. Not a middleware.
**Used once, in one handler** — inline it. A middleware earns its keep by being composed across handlers.

Comment utiliser Create Supabase Middleware (Supabase)

1
Copie le prompt
Un clic copie le prompt packagé (ou l'envoie à ton agent).
2
L'agent installe le skill
Il ajoute le SKILL.md et ses ressources à ton projet.
3
Activation automatique
Le skill s'active dès que le contexte correspond.

Déclencheurs pour Create Supabase Middleware (Supabase)

Dis simplement à ton agent quelque chose comme :

Applique le skill create-supabase-middleware__supabase-middleware__skills-4ed28a706ea7 à cette tâche
Utilise create-supabase-middleware__supabase-middleware__skills-4ed28a706ea7 pour améliorer cette implémentation
Passe en revue ce sujet avec create-supabase-middleware__supabase-middleware__skills-4ed28a706ea7

Skills liés à Create Supabase Middleware (Supabase)