AGENTS.md directory

Supabase

The Postgres development platform.

75 lines, including a rule about what may not appear in a public repository's pull requests and comments.

Documents it routes to

This file points the agent at 4 other documents in the repository. Open any of them to read it here, as it was at this commit.


└── apps
    ├── docs
    │   ├── 
    │   └── 
    ├── kb
    │   └── 
    └── studio
        └── 

By the numbers

75
Lines
665
Words
about 3 min read
6.4kB
File size
7
Headings
7
Bullet rules
2
Code blocks
0
Links to other docs
109.1k
Repo stars

File measured on master at commit f125126. Analysis written 2026-09-14. Star count is a snapshot from September 2026.

What kind of file this is

A directory table, a command list, and four short convention sections. Most subsystem detail is delegated to per-app instruction files and to a set of named skills.

Techniques in this file

Quoted lines are verbatim from the file. Open one to see it where it sits.

A rule about the repository being public

PR descriptions, issues and code comments are identified as world-readable, and three categories are excluded from them: absolute production metrics, internal decision detail such as vendor or pricing discussions, and competitor names. Percentages and ratios are given as the permitted substitute for absolute figures, and the internal tracker is named as where that context belongs.

Skills mapped to when they apply

Router files

Nine skills are listed, each with the trigger that should load it: user-facing text anywhere in the monorepo, anything under the docs app, code that builds SQL against user databases, any form code. The file states that the skills, not itself, are the source of truth for those conventions.

A lint warning count that may not increase

Ratchets

Lint rules run at warning severity across all apps, and a ratchet check on the Studio app fails if the warning count goes up. The rule is enforced by a path-filtered CI job rather than by review.

Generated paths listed explicitly

Generated file guards

Eight path patterns are named as never hand-edited, including API types, a route tree, generated docs content and database types. One entry carries the command that regenerates it.

One component named as the default

The conventions section states which button component is the standard, and notes that a raw shadcn variant also exists but is rarely the right choice. Checking the package index before creating a new primitive is given as the rule.

Takeaways for your own repo

  • If your repository is public, state what may not go into PR descriptions, issues and comments, and where that content belongs instead.
  • When two similarly named components exist, say which is the default and what the other one is for.
  • A warning count that may not increase turns a long tail of lint debt into a one-way door.

How the file is organized

  1. 01Structure
  2. 02Common Commands
  3. 03CI
  4. 04Conventions
  5. 05Skills
  6. 06Studio
Read the full file on GitHub

Context your AGENTS.md cannot carry

Supabase's file tells an agent how the codebase works. It cannot tell it which bug three customers hit this week. Modem keeps that context current and attaches it to the work.