{"id":"pg_qlhagxjxvqx6","property_id":"prp_-ukk265czwbd","domain_id":"dom_vqj7b-nyig_h","root_domain":"supabase.com","locale":"en","url":"https://supabase.com/docs/reference/cli/supabase-vanity-subdomains","url_hash":"d9e2362c88da20f9d69b726f3e380e9d57c4268475d7f6cb35028061ee2eaa78","path":"/docs/reference/cli/supabase-vanity-subdomains","depth":1,"canonical_url":null,"canonical_page_id":null,"page_type":"docs","page_type_guess":"docs","state":"indexed","skip_reason":null,"priority":"1.4","discovered_via":"sitemap","first_seen_at":"2026-08-27T09:07:12.520Z","last_seen_at":"2026-08-27T09:07:28.008Z","http_status":200,"content_hash":"6efb8f2e0ae75181ce986ae72936892e7e9ec1834582f00e40edaac4962fae88","title":"CLI Reference | Supabase Docs","description":"CLI reference for the Supabase CLI","author":"Supabase","published_at":"2026-08-27T08:38:24.842Z","modified_at":"2026-08-27T08:38:24.843Z","word_count":8548,"reading_time_sec":2331,"lang_detected":"en","images":[],"links_out":null,"markdown_source":"readability","refresh_interval":"monthly","last_fetched_at":"2026-08-27T09:07:18.334Z","next_refresh_at":"2026-09-26T09:07:18.334Z","runs_count":1,"changes_count":0,"last_changed_at":null,"fail_count":0,"last_error":null,"created_at":"2026-08-27T09:07:12.520Z","updated_at":"2026-08-27T09:07:12.520Z","inlinks":2,"inlinks_body":0,"outlinks":145,"outlinks_external":6,"anchor_terms":[],"template_score":"0.20000000000000000000","cash":"0.00025873221216041388","cash_total":"0.10025873221216041388","pagerank":null,"is_orphan":false,"link_confirmed":true,"discovered_wave":0,"embedded_hash":"6efb8f2e0ae75181ce986ae72936892e7e9ec1834582f00e40edaac4962fae88","embedded_at":"2026-08-27T09:14:16.486Z","domain_name":"Supabase","brand_color":"#9de6c5","domain_rank":473,"spam_score":11,"markdown":"* * *\n\n* * *\n\n### Flags\n\n-   \\-p, --password <string>\n    \n    Optional\n    \n    Password to your remote Postgres database.\n    \n\n* * *\n\nInitialize configurations for Supabase local development.\n\nA `supabase/config.toml` file is created in your current working directory. This configuration is specific to each local project.\n\n> You may override the directory path by specifying the `SUPABASE_WORKDIR` environment variable or `--workdir` flag.\n\nIn addition to `config.toml`, the `supabase` directory may also contain other Supabase objects, such as `migrations`, `functions`, `tests`, etc.\n\n### Flags\n\n-   \\--force\n    \n    Optional\n    \n    Overwrite existing supabase/config.toml.\n    \n-   \\-i, --interactive\n    \n    Optional\n    \n    Enables interactive mode to configure IDE settings.\n    \n-   \\--use-orioledb\n    \n    Optional\n    \n    Use OrioleDB storage engine for Postgres.\n    \n\n* * *\n\nConnect the Supabase CLI to your Supabase account by logging in with your [personal access token](https://supabase.com/dashboard/account/tokens).\n\nYour access token is stored securely in [native credentials storage](https://github.com/zalando/go-keyring#dependencies). If native credentials storage is unavailable, it will be written to a plain text file at `~/.supabase/access-token`.\n\n> If this behavior is not desired, such as in a CI environment, you may skip login by specifying the `SUPABASE_ACCESS_TOKEN` environment variable in other commands.\n\nThe Supabase CLI uses the stored token to access Management APIs for projects, functions, secrets, etc.\n\n### Flags\n\n-   \\--name <string>\n    \n    Optional\n    \n    Name that will be used to store token in your settings\n    \n-   \\--no-browser\n    \n    Optional\n    \n    Do not open browser automatically\n    \n-   \\--token <string>\n    \n    Optional\n    \n    Use provided token instead of automatic login flow\n    \n\n* * *\n\nLink your local development project to a hosted Supabase project.\n\nPostgREST configurations are fetched from the Supabase platform and validated against your local configuration file.\n\nOptionally, database settings can be validated if you provide a password. Your database password is saved in native credentials storage if available.\n\n> If you do not want to be prompted for the database password, such as in a CI environment, you may specify it explicitly via the `SUPABASE_DB_PASSWORD` environment variable.\n\nSome commands like `db dump`, `db push`, and `db pull` require your project to be linked first.\n\n### Flags\n\n-   \\-p, --password <string>\n    \n    Optional\n    \n    Password to your remote Postgres database.\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n-   \\--skip-pooler\n    \n    Optional\n    \n    Use direct connection instead of pooler.\n    \n\n* * *\n\nStarts the Supabase local development stack.\n\nRequires `supabase/config.toml` to be created in your current working directory by running `supabase init`.\n\nAll service containers are started by default. You can exclude those not needed by passing in `-x` flag. To exclude multiple containers, either pass in a comma separated string, such as `-x gotrue,imgproxy`, or specify `-x` flag multiple times.\n\n> It is recommended to have at least 7GB of RAM to start all services.\n\nHealth checks are automatically added to verify the started containers. Use `--ignore-health-check` flag to ignore these errors.\n\n> If the CLI is running inside a dev container with the Docker socket bind-mounted, set the `SUPABASE_SERVICES_HOSTNAME` environment variable to the hostname reachable from inside that container, such as `host.docker.internal`.\n\n### Flags\n\n-   \\-x, --exclude <strings>\n    \n    Optional\n    \n    Names of containers to not start. \\[gotrue,realtime,storage-api,imgproxy,kong,mailpit,postgrest,postgres-meta,studio,edge-runtime,logflare,vector,supavisor\\]\n    \n-   \\--ignore-health-check\n    \n    Optional\n    \n    Ignore unhealthy services and exit 0\n    \n\n* * *\n\nStops the Supabase local development stack.\n\nRequires `supabase/config.toml` to be created in your current working directory by running `supabase init`.\n\nAll Docker resources are maintained across restarts. Use `--no-backup` flag to reset your local development data between restarts.\n\nUse the `--all` flag to stop all local Supabase projects instances on the machine. Use with caution with `--no-backup` as it will delete all supabase local projects data.\n\n### Flags\n\n-   \\--all\n    \n    Optional\n    \n    Stop all local Supabase instances from all projects across the machine.\n    \n-   \\--no-backup\n    \n    Optional\n    \n    Deletes all data volumes after stopping.\n    \n-   \\--project-id <string>\n    \n    Optional\n    \n    Local project ID to stop.\n    \n\n* * *\n\nShows status of the Supabase local development stack.\n\nRequires the local development stack to be started by running `supabase start` or `supabase db start`.\n\nYou can export the connection parameters for [initializing supabase-js](https://supabase.com/docs/reference/javascript/initializing) locally by specifying the `-o env` flag. Supported parameters include `JWT_SECRET`, `ANON_KEY`, and `SERVICE_ROLE_KEY`.\n\n### Flags\n\n-   \\--override-name <strings>\n    \n    Optional\n    \n    Override specific variable names.\n    \n\n* * *\n\n* * *\n\nExecutes pgTAP tests against the local database.\n\nRequires the local development stack to be started by running `supabase start`.\n\nRuns `pg_prove` in a container with unit test files volume mounted from `supabase/tests` directory. The test file can be suffixed by either `.sql` or `.pg` extension.\n\nSince each test is wrapped in its own transaction, it will be individually rolled back regardless of success or failure.\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Tests the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Runs pgTAP tests on the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Runs pgTAP tests on the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\-t, --template <\\[ pgtap \\]>\n    \n    Optional\n    \n    Template framework to generate.\n    \n\n* * *\n\nAutomatically generates type definitions based on your Postgres database schema.\n\nThis command connects to your database (local or remote) and generates typed definitions that match your database tables, views, and stored procedures. By default, it generates TypeScript definitions, but also supports Go and Swift.\n\nGenerated types give you type safety and autocompletion when working with your database in code, helping prevent runtime errors and improving developer experience.\n\nThe types respect relationships, constraints, and custom types defined in your database schema.\n\n### Subcommands\n\n-   [supabase gen bearer-jwt](https://supabase.com/docs/reference/cli/supabase-gen-bearer-jwt)\n-   [supabase gen signing-key](https://supabase.com/docs/reference/cli/supabase-gen-signing-key)\n-   [supabase gen types](https://supabase.com/docs/reference/cli/supabase-gen-types)\n\n* * *\n\nSecurely generate a private JWT signing key for use in the CLI or to import in the dashboard.\n\nSupported algorithms: ES256 - ECDSA with P-256 curve and SHA-256 (recommended) RS256 - RSA with SHA-256\n\n### Flags\n\n-   \\--algorithm <\\[ RS256 | ES256 \\]>\n    \n    Optional\n    \n    Algorithm for signing key generation.\n    \n-   \\--append\n    \n    Optional\n    \n    Append new key to existing keys file instead of overwriting.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Generate types from a database url.\n    \n-   \\--lang <\\[ typescript | go | swift | python \\]>\n    \n    Optional\n    \n    Output language of the generated types.\n    \n-   \\--linked\n    \n    Optional\n    \n    Generate types from the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Generate types from the local dev database.\n    \n-   \\--postgrest-v9-compat\n    \n    Optional\n    \n    Generate types compatible with PostgREST v9 and below.\n    \n-   \\--project-id <string>\n    \n    Optional\n    \n    Generate types from a project ID.\n    \n-   \\--query-timeout <duration>\n    \n    Optional\n    \n    Maximum timeout allowed for the database query.\n    \n-   \\-s, --schema <strings>\n    \n    Optional\n    \n    Comma separated list of schema to include.\n    \n-   \\--swift-access-control <\\[ internal | public \\]>\n    \n    Optional\n    \n    Access control for Swift generated types.\n    \n\n* * *\n\n### Subcommands\n\n-   [supabase db advisors](https://supabase.com/docs/reference/cli/supabase-db-advisors)\n-   [supabase db diff](https://supabase.com/docs/reference/cli/supabase-db-diff)\n-   [supabase db dump](https://supabase.com/docs/reference/cli/supabase-db-dump)\n-   [supabase db lint](https://supabase.com/docs/reference/cli/supabase-db-lint)\n-   [supabase db pull](https://supabase.com/docs/reference/cli/supabase-db-pull)\n-   [supabase db push](https://supabase.com/docs/reference/cli/supabase-db-push)\n-   [supabase db query](https://supabase.com/docs/reference/cli/supabase-db-query)\n-   [supabase db reset](https://supabase.com/docs/reference/cli/supabase-db-reset)\n-   [supabase db schema](https://supabase.com/docs/reference/cli/supabase-db-schema)\n-   [supabase db start](https://supabase.com/docs/reference/cli/supabase-db-start)\n\n* * *\n\nPulls schema changes from a remote database. A new migration file will be created under `supabase/migrations` directory.\n\nRequires your local project to be linked to a remote database by running `supabase link`. For self-hosted databases, you can pass in the connection parameters using `--db-url` flag.\n\n> Note this command requires Docker Desktop (or a running Docker daemon), as it starts a local Postgres container to diff your remote schema.\n\nOptionally, a new row can be inserted into the migration history table to reflect the current state of the remote database.\n\nIf no entries exist in the migration history table, `pg_dump` will be used to capture all contents of the remote schemas you have created. Otherwise, this command will only diff schema changes against the remote database, similar to running `db diff --linked`.\n\nPass `--diff-engine pg-delta` to keep the migration-file `db pull` workflow while using pg-delta for the shadow diff step. Pass `--use-pg-delta` to switch to the declarative pg-delta export workflow instead.\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Pulls from the database specified by the connection string (must be percent-encoded).\n    \n-   \\--diff-engine <\\[ migra | pg-delta \\]>\n    \n    Optional\n    \n    Diff engine to use for migration-style db pull.\n    \n-   \\--linked\n    \n    Optional\n    \n    Pulls from the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Pulls from the local database.\n    \n-   \\-p, --password <string>\n    \n    Optional\n    \n    Password to your remote Postgres database.\n    \n-   \\-s, --schema <strings>\n    \n    Optional\n    \n    Comma separated list of schema to include.\n    \n-   \\--use-pg-delta\n    \n    Optional\n    \n    Use pg-delta to pull declarative schema.\n    \n\n* * *\n\nPushes all local migrations to a remote database.\n\nRequires your local project to be linked to a remote database by running `supabase link`. For self-hosted databases, you can pass in the connection parameters using `--db-url` flag.\n\nThe first time this command is run, a migration history table will be created under `supabase_migrations.schema_migrations`. After successfully applying a migration, a new row will be inserted into the migration history table with timestamp as its unique id. Subsequent pushes will skip migrations that have already been applied.\n\nIf you need to mutate the migration history table, such as deleting existing entries or inserting new entries without actually running the migration, use the `migration repair` command.\n\nUse the `--dry-run` flag to view the list of changes before applying.\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Pushes to the database specified by the connection string (must be percent-encoded).\n    \n-   \\--dry-run\n    \n    Optional\n    \n    Print the migrations that would be applied, but don't actually apply them.\n    \n-   \\--include-all\n    \n    Optional\n    \n    Include all migrations not found on remote history table.\n    \n-   \\--include-roles\n    \n    Optional\n    \n    Include custom roles from supabase/roles.sql.\n    \n-   \\--include-seed\n    \n    Optional\n    \n    Include seed data from your config.\n    \n-   \\--linked\n    \n    Optional\n    \n    Pushes to the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Pushes to the local database.\n    \n-   \\-p, --password <string>\n    \n    Optional\n    \n    Password to your remote Postgres database.\n    \n\n* * *\n\nResets the local database to a clean state.\n\nRequires the local development stack to be started by running `supabase start`.\n\nRecreates the local Postgres container and applies all local migrations found in `supabase/migrations` directory. If test data is defined in `supabase/seed.sql`, it will be seeded after the migrations are run. Any other data or schema changes made during local development will be discarded.\n\nWhen running db reset with `--linked` or `--db-url` flag, a SQL script is executed to identify and drop all user created entities in the remote database. Since Postgres roles are cluster level entities, any custom roles created through the dashboard or `supabase/roles.sql` will not be deleted by remote reset.\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Resets the database specified by the connection string (must be percent-encoded).\n    \n-   \\--last <uint>\n    \n    Optional\n    \n    Reset up to the last n migration versions.\n    \n-   \\--linked\n    \n    Optional\n    \n    Resets the linked project with local migrations.\n    \n-   \\--local\n    \n    Optional\n    \n    Resets the local database with local migrations.\n    \n-   \\--no-seed\n    \n    Optional\n    \n    Skip running the seed script after reset.\n    \n-   \\--version <string>\n    \n    Optional\n    \n    Reset up to the specified version.\n    \n\n* * *\n\nDumps contents from a remote database.\n\nRequires your local project to be linked to a remote database by running `supabase link`. For self-hosted databases, you can pass in the connection parameters using `--db-url` flag.\n\nRuns `pg_dump` in a container with additional flags to exclude Supabase managed schemas. The ignored schemas include auth, storage, and those created by extensions.\n\nThe default dump does not contain any data or custom roles. To dump those contents explicitly, specify either the `--data-only` and `--role-only` flag.\n\n### Note on Privilege Migration\n\nWhen restoring to a new project, tables inherit ALL privileges from default privileges in the target database. To preserve specific privileges from your dump, revoke defaults before restoring:\n\n```\n-- Run BEFORE restoring your schema\nALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON TABLES FROM anon, authenticated;\n```\n\n### Flags\n\n-   \\--data-only\n    \n    Optional\n    \n    Dumps only data records.\n    \n-   \\--db-url <string>\n    \n    Optional\n    \n    Dumps from the database specified by the connection string (must be percent-encoded).\n    \n-   \\--dry-run\n    \n    Optional\n    \n    Prints the pg\\_dump script that would be executed.\n    \n-   \\-x, --exclude <strings>\n    \n    Optional\n    \n    List of schema.tables to exclude from data-only dump.\n    \n-   \\-f, --file <string>\n    \n    Optional\n    \n    File path to save the dumped contents.\n    \n-   \\--keep-comments\n    \n    Optional\n    \n    Keeps commented lines from pg\\_dump output.\n    \n-   \\--linked\n    \n    Optional\n    \n    Dumps from the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Dumps from the local database.\n    \n-   \\-p, --password <string>\n    \n    Optional\n    \n    Password to your remote Postgres database.\n    \n-   \\--role-only\n    \n    Optional\n    \n    Dumps only cluster roles.\n    \n-   \\-s, --schema <strings>\n    \n    Optional\n    \n    Comma separated list of schema to include.\n    \n-   \\--use-copy\n    \n    Optional\n    \n    Use copy statements in place of inserts.\n    \n\n* * *\n\nDiffs schema changes made to the local or remote database.\n\nRequires the local development stack to be running when diffing against the local database. To diff against a remote or self-hosted database, specify the `--linked` or `--db-url` flag respectively.\n\nRuns [djrobstep/migra](https://github.com/djrobstep/migra) in a container to compare schema differences between the target database and a shadow database. The shadow database is created by applying migrations in local `supabase/migrations` directory in a separate container. Output is written to stdout by default. For convenience, you can also save the schema diff as a new migration file by passing in `-f` flag.\n\nBy default, all schemas in the target database are diffed. Use the `--schema public,extensions` flag to restrict diffing to a subset of schemas.\n\nWhile the diff command is able to capture most schema changes, there are cases where it is known to fail. Currently, this could happen if you schema contains:\n\n-   Changes to publication\n-   Changes to storage buckets\n-   Views with `security_invoker` attributes\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Diffs against the database specified by the connection string (must be percent-encoded).\n    \n-   \\-f, --file <string>\n    \n    Optional\n    \n    Saves schema diff to a new migration file.\n    \n-   \\--from <string>\n    \n    Optional\n    \n    Diff from local, linked, migrations, or a Postgres URL.\n    \n-   \\--linked\n    \n    Optional\n    \n    Diffs local migration files against the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Diffs local migration files against the local database.\n    \n-   \\-o, --output <string>\n    \n    Optional\n    \n    Write explicit diff output to a file path.\n    \n-   \\-s, --schema <strings>\n    \n    Optional\n    \n    Comma separated list of schema to include.\n    \n-   \\--to <string>\n    \n    Optional\n    \n    Diff to local, linked, migrations, or a Postgres URL.\n    \n-   \\--use-migra\n    \n    Optional\n    \n    Use migra to generate schema diff.\n    \n-   \\--use-pg-delta\n    \n    Optional\n    \n    Use pg-delta to generate schema diff.\n    \n-   \\--use-pg-schema\n    \n    Optional\n    \n    Use pg-schema-diff to generate schema diff.\n    \n-   \\--use-pgadmin\n    \n    Optional\n    \n    Use pgAdmin to generate schema diff.\n    \n\n* * *\n\nLints local database for schema errors.\n\nRequires the local development stack to be running when linting against the local database. To lint against a remote or self-hosted database, specify the `--linked` or `--db-url` flag respectively.\n\nRuns `plpgsql_check` extension in the local Postgres container to check for errors in all schemas. The default lint level is `warning` and can be raised to error via the `--level` flag.\n\nTo lint against specific schemas only, pass in the `--schema` flag.\n\nThe `--fail-on` flag can be used to control when the command should exit with a non-zero status code. The possible values are:\n\n-   `none` (default): Always exit with a zero status code, regardless of lint results.\n-   `warning`: Exit with a non-zero status code if any warnings or errors are found.\n-   `error`: Exit with a non-zero status code only if errors are found.\n\nThis flag is particularly useful in CI/CD pipelines where you want to fail the build based on certain lint conditions.\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Lints the database specified by the connection string (must be percent-encoded).\n    \n-   \\--fail-on <\\[ none | warning | error \\]>\n    \n    Optional\n    \n    Error level to exit with non-zero status.\n    \n-   \\--level <\\[ warning | error \\]>\n    \n    Optional\n    \n    Error level to emit.\n    \n-   \\--linked\n    \n    Optional\n    \n    Lints the linked project for schema errors.\n    \n-   \\--local\n    \n    Optional\n    \n    Lints the local database for schema errors.\n    \n-   \\-s, --schema <strings>\n    \n    Optional\n    \n    Comma separated list of schema to include.\n    \n\n* * *\n\n### Flags\n\n-   \\--from-backup <string>\n    \n    Optional\n    \n    Path to a logical backup file.\n    \n\n* * *\n\n### Subcommands\n\n-   [supabase migration down](https://supabase.com/docs/reference/cli/supabase-migration-down)\n-   [supabase migration fetch](https://supabase.com/docs/reference/cli/supabase-migration-fetch)\n-   [supabase migration list](https://supabase.com/docs/reference/cli/supabase-migration-list)\n-   [supabase migration new](https://supabase.com/docs/reference/cli/supabase-migration-new)\n-   [supabase migration repair](https://supabase.com/docs/reference/cli/supabase-migration-repair)\n-   [supabase migration squash](https://supabase.com/docs/reference/cli/supabase-migration-squash)\n-   [supabase migration up](https://supabase.com/docs/reference/cli/supabase-migration-up)\n\n* * *\n\nCreates a new migration file locally.\n\nA `supabase/migrations` directory will be created if it does not already exists in your current `workdir`. All schema migration files must be created in this directory following the pattern `<timestamp>_<name>.sql`.\n\nOutputs from other commands like `db diff` may be piped to `migration new <name>` via stdin.\n\n* * *\n\nLists migration history in both local and remote databases.\n\nRequires your local project to be linked to a remote database by running `supabase link`. For self-hosted databases, you can pass in the connection parameters using `--db-url` flag.\n\n> Note that URL strings must be escaped according to [RFC 3986](https://www.rfc-editor.org/rfc/rfc3986).\n\nLocal migrations are stored in `supabase/migrations` directory while remote migrations are tracked in `supabase_migrations.schema_migrations` table. Only the timestamps are compared to identify any differences.\n\nIn case of discrepancies between the local and remote migration history, you can resolve them using the `migration repair` command.\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Lists migrations of the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Lists migrations applied to the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Lists migrations applied to the local database.\n    \n-   \\-p, --password <string>\n    \n    Optional\n    \n    Password to your remote Postgres database.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Fetches migrations from the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Fetches migration history from the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Fetches migration history from the local database.\n    \n\n* * *\n\nRepairs the remote migration history table.\n\nRequires your local project to be linked to a remote database by running `supabase link`.\n\nIf your local and remote migration history goes out of sync, you can repair the remote history by marking specific migrations as `--status applied` or `--status reverted`. Marking as `reverted` will delete an existing record from the migration history table while marking as `applied` will insert a new record.\n\nFor example, your migration history may look like the table below, with missing entries in either local or remote.\n\n```\n$ supabase migration list\n        LOCAL      │     REMOTE     │     TIME (UTC)\n  ─────────────────┼────────────────┼──────────────────────\n                   │ 20230103054303 │ 2023-01-03 05:43:03\n   20230103054315  │                │ 2023-01-03 05:43:15\n```\n\nTo reset your migration history to a clean state, first delete your local migration file.\n\n```\n$ rm supabase/migrations/20230103054315_remote_commit.sql\n\n$ supabase migration list\n        LOCAL      │     REMOTE     │     TIME (UTC)\n  ─────────────────┼────────────────┼──────────────────────\n                   │ 20230103054303 │ 2023-01-03 05:43:03\n```\n\nThen mark the remote migration `20230103054303` as reverted.\n\n```\n$ supabase migration repair 20230103054303 --status reverted\nConnecting to remote database...\nRepaired migration history: [20220810154537] => reverted\nFinished supabase migration repair.\n\n$ supabase migration list\n        LOCAL      │     REMOTE     │     TIME (UTC)\n  ─────────────────┼────────────────┼──────────────────────\n```\n\nNow you can run `db pull` again to dump the remote schema as a local migration file.\n\n```\n$ supabase db pull\nConnecting to remote database...\nSchema written to supabase/migrations/20240414044403_remote_schema.sql\nUpdate remote migration history table? [Y/n]\nRepaired migration history: [20240414044403] => applied\nFinished supabase db pull.\n\n$ supabase migration list\n        LOCAL      │     REMOTE     │     TIME (UTC)\n  ─────────────────┼────────────────┼──────────────────────\n    20240414044403 │ 20240414044403 │ 2024-04-14 04:44:03\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Repairs migrations of the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Repairs the migration history of the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Repairs the migration history of the local database.\n    \n-   \\-p, --password <string>\n    \n    Optional\n    \n    Password to your remote Postgres database.\n    \n-   \\--status <\\[ applied | reverted \\]>\n    \n    Required\n    \n    Version status to update.\n    \n\n* * *\n\nSquashes local schema migrations to a single migration file.\n\nThe squashed migration is equivalent to a schema only dump of the local database after applying existing migration files. This is especially useful when you want to remove repeated modifications of the same schema from your migration history.\n\nHowever, one limitation is that data manipulation statements, such as insert, update, or delete, are omitted from the squashed migration. You will have to add them back manually in a new migration file. This includes cron jobs, storage buckets, and any encrypted secrets in vault.\n\nBy default, the latest `<timestamp>_<name>.sql` file will be updated to contain the squashed migration. You can override the target version using the `--version <timestamp>` flag.\n\nIf your `supabase/migrations` directory is empty, running `supabase squash` will do nothing.\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Squashes migrations of the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Squashes the migration history of the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Squashes the migration history of the local database.\n    \n-   \\-p, --password <string>\n    \n    Optional\n    \n    Password to your remote Postgres database.\n    \n-   \\--version <string>\n    \n    Optional\n    \n    Squash up to the specified version.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Applies migrations to the database specified by the connection string (must be percent-encoded).\n    \n-   \\--include-all\n    \n    Optional\n    \n    Include all migrations not found on remote history table.\n    \n-   \\--linked\n    \n    Optional\n    \n    Applies pending migrations to the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Applies pending migrations to the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Resets applied migrations on the database specified by the connection string (must be percent-encoded).\n    \n-   \\--last <uint>\n    \n    Optional\n    \n    Reset up to the last n migration versions.\n    \n-   \\--linked\n    \n    Optional\n    \n    Resets applied migrations on the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Resets applied migrations on the local database.\n    \n\n* * *\n\n* * *\n\n### Flags\n\n-   \\--linked\n    \n    Optional\n    \n    Seeds the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Seeds the local database.\n    \n\n* * *\n\n### Subcommands\n\n-   [supabase inspect db bloat](https://supabase.com/docs/reference/cli/supabase-inspect-db-bloat)\n-   [supabase inspect db blocking](https://supabase.com/docs/reference/cli/supabase-inspect-db-blocking)\n-   [supabase inspect db calls](https://supabase.com/docs/reference/cli/supabase-inspect-db-calls)\n-   [supabase inspect db db-stats](https://supabase.com/docs/reference/cli/supabase-inspect-db-db-stats)\n-   [supabase inspect db index-stats](https://supabase.com/docs/reference/cli/supabase-inspect-db-index-stats)\n-   [supabase inspect db locks](https://supabase.com/docs/reference/cli/supabase-inspect-db-locks)\n-   [supabase inspect db long-running-queries](https://supabase.com/docs/reference/cli/supabase-inspect-db-long-running-queries)\n-   [supabase inspect db outliers](https://supabase.com/docs/reference/cli/supabase-inspect-db-outliers)\n-   [supabase inspect db replication-slots](https://supabase.com/docs/reference/cli/supabase-inspect-db-replication-slots)\n-   [supabase inspect db role-stats](https://supabase.com/docs/reference/cli/supabase-inspect-db-role-stats)\n-   [supabase inspect db table-stats](https://supabase.com/docs/reference/cli/supabase-inspect-db-table-stats)\n-   [supabase inspect db traffic-profile](https://supabase.com/docs/reference/cli/supabase-inspect-db-traffic-profile)\n-   [supabase inspect db vacuum-stats](https://supabase.com/docs/reference/cli/supabase-inspect-db-vacuum-stats)\n\n* * *\n\nThis command displays an estimation of table \"bloat\" - Due to Postgres' [MVCC](https://www.postgresql.org/docs/current/mvcc.html) when data is updated or deleted new rows are created and old rows are made invisible and marked as \"dead tuples\". Usually the [autovaccum](https://supabase.com/docs/guides/platform/database-size#vacuum-operations) process will asynchronously clean the dead tuples. Sometimes the autovaccum is unable to work fast enough to reduce or prevent tables from becoming bloated. High bloat can slow down queries, cause excessive IOPS and waste space in your database.\n\nTables with a high bloat ratio should be investigated to see if there are vacuuming is not quick enough or there are other issues.\n\n```\n    TYPE  │ SCHEMA NAME │        OBJECT NAME         │ BLOAT │ WASTE\n  ────────┼─────────────┼────────────────────────────┼───────┼─────────────\n    table │ public      │ very_bloated_table         │  41.0 │ 700 MB\n    table │ public      │ my_table                   │   4.0 │ 76 MB\n    table │ public      │ happy_table                │   1.0 │ 1472 kB\n    index │ public      │ happy_table::my_nice_index │   0.7 │ 880 kB\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\nThis command shows you statements that are currently holding locks and blocking, as well as the statement that is being blocked. This can be used in conjunction with `inspect db locks` to determine which statements need to be terminated in order to resolve lock contention.\n\n```\n    BLOCKED PID │ BLOCKING STATEMENT           │ BLOCKING DURATION │ BLOCKING PID │ BLOCKED STATEMENT                                                                      │ BLOCKED DURATION\n  ──────────────┼──────────────────────────────┼───────────────────┼──────────────┼────────────────────────────────────────────────────────────────────────────────────────┼───────────────────\n    253         │ select count(*) from mytable │ 00:00:03.838314   │        13495 │ UPDATE \"mytable\" SET \"updated_at\" = '2023─08─03 14:07:04.746688' WHERE \"id\" = 83719341 │ 00:00:03.821826\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\nThis command is much like the `supabase inspect db outliers` command, but ordered by the number of times a statement has been called.\n\nYou can use this information to see which queries are called most often, which can potentially be good candidates for optimisation.\n\n```\n\n                        QUERY                      │ TOTAL EXECUTION TIME │ PROPORTION OF TOTAL EXEC TIME │ NUMBER CALLS │  SYNC IO TIME\n  ─────────────────────────────────────────────────┼──────────────────────┼───────────────────────────────┼──────────────┼──────────────────\n    SELECT * FROM users WHERE id = $1              │ 14:50:11.828939      │ 89.8%                         │  183,389,757 │ 00:00:00.002018\n    SELECT * FROM user_events                      │ 01:20:23.466633      │ 1.4%                          │       78,325 │ 00:00:00\n    INSERT INTO users (email, name) VALUES ($1, $2)│ 00:40:11.616882      │ 0.8%                          │       54,003 │ 00:00:00.000322\n\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\nThis command displays queries that have taken out an exclusive lock on a relation. Exclusive locks typically prevent other operations on that relation from taking place, and can be a cause of \"hung\" queries that are waiting for a lock to be granted.\n\nIf you see a query that is hanging for a very long time or causing blocking issues you may consider killing the query by connecting to the database and running `SELECT pg_cancel_backend(PID);` to cancel the query. If the query still does not stop you can force a hard stop by running `SELECT pg_terminate_backend(PID);`\n\n```\n     PID   │ RELNAME │ TRANSACTION ID │ GRANTED │                  QUERY                  │   AGE\n  ─────────┼─────────┼────────────────┼─────────┼─────────────────────────────────────────┼───────────\n    328112 │ null    │              0 │ t       │ SELECT * FROM logs;                     │ 00:04:20\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\nThis command displays currently running queries, that have been running for longer than 5 minutes, descending by duration. Very long running queries can be a source of multiple issues, such as preventing DDL statements completing or vacuum being unable to update `relfrozenxid`.\n\n```\n  PID  │     DURATION    │                                         QUERY\n───────┼─────────────────┼───────────────────────────────────────────────────────────────────────────────────────\n 19578 | 02:29:11.200129 | EXPLAIN SELECT  \"students\".* FROM \"students\"  WHERE \"students\".\"id\" = 1450645 LIMIT 1\n 19465 | 02:26:05.542653 | EXPLAIN SELECT  \"students\".* FROM \"students\"  WHERE \"students\".\"id\" = 1889881 LIMIT 1\n 19632 | 02:24:46.962818 | EXPLAIN SELECT  \"students\".* FROM \"students\"  WHERE \"students\".\"id\" = 1581884 LIMIT 1\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\nThis command displays statements, obtained from `pg_stat_statements`, ordered by the amount of time to execute in aggregate. This includes the statement itself, the total execution time for that statement, the proportion of total execution time for all statements that statement has taken up, the number of times that statement has been called, and the amount of time that statement spent on synchronous I/O (reading/writing from the file system).\n\nTypically, an efficient query will have an appropriate ratio of calls to total execution time, with as little time spent on I/O as possible. Queries that have a high total execution time but low call count should be investigated to improve their performance. Queries that have a high proportion of execution time being spent on synchronous I/O should also be investigated.\n\n```\n\n                 QUERY                   │ EXECUTION TIME   │ PROPORTION OF EXEC TIME │ NUMBER CALLS │ SYNC IO TIME\n─────────────────────────────────────────┼──────────────────┼─────────────────────────┼──────────────┼───────────────\n SELECT * FROM archivable_usage_events.. │ 154:39:26.431466 │ 72.2%                   │ 34,211,877   │ 00:00:00\n COPY public.archivable_usage_events (.. │ 50:38:33.198418  │ 23.6%                   │ 13           │ 13:34:21.00108\n COPY public.usage_events (id, reporte.. │ 02:32:16.335233  │ 1.2%                    │ 13           │ 00:34:19.784318\n INSERT INTO usage_events (id, retaine.. │ 01:42:59.436532  │ 0.8%                    │ 12,328,187   │ 00:00:00\n SELECT * FROM usage_events WHERE (alp.. │ 01:18:10.754354  │ 0.6%                    │ 102,114,301  │ 00:00:00\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\nThis command shows information about [logical replication slots](https://www.postgresql.org/docs/current/logical-replication.html) that are setup on the database. It shows if the slot is active, the state of the WAL sender process ('startup', 'catchup', 'streaming', 'backup', 'stopping') the replication client address and the replication lag in GB.\n\nThis command is useful to check that the amount of replication lag is as low as possible, replication lag can occur due to network latency issues, slow disk I/O, long running transactions or lack of ability for the subscriber to consume WAL fast enough.\n\n```\n                       NAME                    │ ACTIVE │ STATE   │ REPLICATION CLIENT ADDRESS │ REPLICATION LAG GB\n  ─────────────────────────────────────────────┼────────┼─────────┼────────────────────────────┼─────────────────────\n    supabase_realtime_replication_slot         │ t      │ N/A     │ N/A                        │                  0\n    datastream                                 │ t      │ catchup │ 24.201.24.106              │                 45\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\nThis command analyzes table I/O patterns to show read/write activity ratios based on block-level operations. It combines data from PostgreSQL's `pg_stat_user_tables` (for tuple operations) and `pg_statio_user_tables` (for block I/O) to categorize each table's workload profile.\n\nThe command classifies tables into categories:\n\n-   **Read-Heavy** - Read operations are more than 5x write operations (e.g., 1:10, 1:50)\n-   **Write-Heavy** - Write operations are more than 20% of read operations (e.g., 1:2, 1:4, 2:1, 10:1)\n-   **Balanced** - Mixed workload where writes are between 20% and 500% of reads\n-   **Read-Only** - Only read operations detected\n-   **Write-Only** - Only write operations detected\n\n```\nSCHEMA │ TABLE        │ BLOCKS READ │ WRITE TUPLES │ BLOCKS WRITE │ ACTIVITY RATIO\n───────┼──────────────┼─────────────┼──────────────┼──────────────┼────────────────────\npublic │ user_events  │     450,234 │     9,004,680│       23,450 │ 20:1 (Write-Heavy)\npublic │ users        │      89,203 │        12,451│        1,203 │ 7.2:1 (Read-Heavy)\npublic │ sessions     │      15,402 │        14,823│        2,341 │ ≈1:1 (Balanced)\npublic │ cache_data   │     123,456 │             0│            0 │ Read-Only\nauth   │ audit_logs   │           0 │        98,234│       12,341 │ Write-Only\n```\n\n**Note:** This command only displays tables that have had both read and write activity. Tables with no I/O operations are not shown. The classification ratio threshold (default: 5:1) determines when a table is considered \"heavy\" in one direction versus balanced.\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\nThis shows you stats about the vacuum activities for each table. Due to Postgres' [MVCC](https://www.postgresql.org/docs/current/mvcc.html) when data is updated or deleted new rows are created and old rows are made invisible and marked as \"dead tuples\". Usually the [autovaccum](https://supabase.com/docs/guides/platform/database-size#vacuum-operations) process will aysnchronously clean the dead tuples.\n\nThe command lists when the last vacuum and last auto vacuum took place, the row count on the table as well as the count of dead rows and whether autovacuum is expected to run or not. If the number of dead rows is much higher than the row count, or if an autovacuum is expected but has not been performed for some time, this can indicate that autovacuum is not able to keep up and that your vacuum settings need to be tweaked or that you require more compute or disk IOPS to allow autovaccum to complete.\n\n```\n        SCHEMA        │              TABLE               │ LAST VACUUM │ LAST AUTO VACUUM │      ROW COUNT       │ DEAD ROW COUNT │ EXPECT AUTOVACUUM?\n──────────────────────┼──────────────────────────────────┼─────────────┼──────────────────┼──────────────────────┼────────────────┼─────────────────────\n auth                 │ users                            │             │ 2023-06-26 12:34 │               18,030 │              0 │ no\n public               │ profiles                         │             │ 2023-06-26 23:45 │               13,420 │             28 │ no\n public               │ logs                             │             │ 2023-06-26 01:23 │            1,313,033 │      3,318,228 │ yes\n storage              │ objects                          │             │                  │             No stats │              0 │ no\n storage              │ buckets                          │             │                  │             No stats │              0 │ no\n supabase_migrations  │ schema_migrations                │             │                  │             No stats │              0 │ no\n\n```\n\n### Flags\n\n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\--output-dir <string>\n    \n    Optional\n    \n    Path to save CSV files in\n    \n-   \\--db-url <string>\n    \n    Optional\n    \n    Inspect the database specified by the connection string (must be percent-encoded).\n    \n-   \\--linked\n    \n    Optional\n    \n    Inspect the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Inspect the local database.\n    \n\n* * *\n\n* * *\n\nCreate an organization for the logged-in user.\n\n* * *\n\nList all organizations the logged-in user belongs.\n\n* * *\n\nProvides tools for creating and managing your Supabase projects.\n\nThis command group allows you to list all projects in your organizations, create new projects, delete existing projects, and retrieve API keys. These operations help you manage your Supabase infrastructure programmatically without using the dashboard.\n\nProject management via CLI is especially useful for automation scripts and when you need to provision environments in a repeatable way.\n\n### Subcommands\n\n-   [supabase projects api-keys](https://supabase.com/docs/reference/cli/supabase-projects-api-keys)\n-   [supabase projects create](https://supabase.com/docs/reference/cli/supabase-projects-create)\n-   [supabase projects delete](https://supabase.com/docs/reference/cli/supabase-projects-delete)\n-   [supabase projects list](https://supabase.com/docs/reference/cli/supabase-projects-list)\n\n* * *\n\n### Flags\n\n-   \\--db-password <string>\n    \n    Optional\n    \n    Database password of the project.\n    \n-   \\--org-id <string>\n    \n    Optional\n    \n    Organization ID to create the project in.\n    \n-   \\--region <string>\n    \n    Optional\n    \n    Select a region close to you for the best performance.\n    \n-   \\--size <string>\n    \n    Optional\n    \n    Select a desired instance size for your project.\n    \n\n* * *\n\nList all Supabase projects the logged-in user can access.\n\n* * *\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\n* * *\n\nUpdates the configurations of a linked Supabase project with the local `supabase/config.toml` file.\n\nThis command allows you to manage project configuration as code by defining settings locally and then pushing them to your remote project.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Subcommands\n\n-   [supabase branches create](https://supabase.com/docs/reference/cli/supabase-branches-create)\n-   [supabase branches delete](https://supabase.com/docs/reference/cli/supabase-branches-delete)\n-   [supabase branches get](https://supabase.com/docs/reference/cli/supabase-branches-get)\n-   [supabase branches list](https://supabase.com/docs/reference/cli/supabase-branches-list)\n-   [supabase branches pause](https://supabase.com/docs/reference/cli/supabase-branches-pause)\n-   [supabase branches unpause](https://supabase.com/docs/reference/cli/supabase-branches-unpause)\n-   [supabase branches update](https://supabase.com/docs/reference/cli/supabase-branches-update)\n\n* * *\n\nCreate a preview branch for the linked project.\n\n### Flags\n\n-   \\--notify-url <string>\n    \n    Optional\n    \n    URL to notify when branch is active healthy.\n    \n-   \\--persistent\n    \n    Optional\n    \n    Whether to create a persistent branch.\n    \n-   \\--region <string>\n    \n    Optional\n    \n    Select a region to deploy the branch database.\n    \n-   \\--size <string>\n    \n    Optional\n    \n    Select a desired instance size for the branch database.\n    \n-   \\--with-data\n    \n    Optional\n    \n    Whether to clone production data to the branch database.\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nList all preview branches of the linked project.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nRetrieve details of the specified preview branch.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nUpdate a preview branch by its name or ID.\n\n### Flags\n\n-   \\--git-branch <string>\n    \n    Optional\n    \n    Change the associated git branch.\n    \n-   \\--name <string>\n    \n    Optional\n    \n    Rename the preview branch.\n    \n-   \\--notify-url <string>\n    \n    Optional\n    \n    URL to notify when branch is active healthy.\n    \n-   \\--persistent\n    \n    Optional\n    \n    Switch between ephemeral and persistent branch.\n    \n-   \\--status <string>\n    \n    Optional\n    \n    Override the current branch status.\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nDelete a preview branch by its name or ID.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\nCreates a new Edge Function with boilerplate code in the `supabase/functions` directory.\n\nThis command generates a starter TypeScript file with the necessary Deno imports and a basic function structure. The function is created as a new directory with the name you specify, containing an `index.ts` file with the function code.\n\nAfter creating the function, you can edit it locally and then use `supabase functions serve` to test it before deploying with `supabase functions deploy`.\n\n### Flags\n\n-   \\--auth <\\[ none | apikey | user \\]>\n    \n    Optional\n    \n    use a specific auth mode\n    \n\n* * *\n\nList all Functions in the linked Supabase project.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nDownload the source code for a Function from the linked Supabase project. If no function name is provided, downloads all functions.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n-   \\--use-api\n    \n    Optional\n    \n    Unbundle functions server-side without using Docker.\n    \n\n* * *\n\nServe all Functions locally.\n\n`supabase functions serve` command includes additional flags to assist developers in debugging Edge Functions via the v8 inspector protocol, allowing for debugging via Chrome DevTools, VS Code, and IntelliJ IDEA for example. Refer to the [docs guide](https://supabase.com/docs/guides/functions/debugging-tools) for setup instructions.\n\n1.  `--inspect`\n    \n    -   Alias of `--inspect-mode brk`.\n2.  `--inspect-mode [ run | brk | wait ]`\n    \n    -   Activates the inspector capability.\n    -   `run` mode simply allows a connection without additional behavior. It is not ideal for short scripts, but it can be useful for long-running scripts where you might occasionally want to set breakpoints.\n    -   `brk` mode same as `run` mode, but additionally sets a breakpoint at the first line to pause script execution before any code runs.\n    -   `wait` mode similar to `brk` mode, but instead of setting a breakpoint at the first line, it pauses script execution until an inspector session is connected.\n3.  `--inspect-main`\n    \n    -   Can only be used when one of the above two flags is enabled.\n    -   By default, creating an inspector session for the main worker is not allowed, but this flag allows it.\n    -   Other behaviors follow the `inspect-mode` flag mentioned above.\n\nAdditionally, the following properties can be customized via `supabase/config.toml` under `edge_runtime` section.\n\n1.  `inspector_port`\n    -   The port used to listen to the Inspector session, defaults to 8083.\n2.  `policy`\n    -   A value that indicates how the edge-runtime should forward incoming HTTP requests to the worker.\n    -   `per_worker` allows multiple HTTP requests to be forwarded to a worker that has already been created.\n    -   `oneshot` will force the worker to process a single HTTP request and then exit. (Debugging purpose, This is especially useful if you want to reflect changes you've made immediately.)\n\n### Flags\n\n-   \\--env-file <string>\n    \n    Optional\n    \n    Path to an env file to be populated to the Function environment.\n    \n-   \\--import-map <string>\n    \n    Optional\n    \n    Path to import map file.\n    \n-   \\--inspect\n    \n    Optional\n    \n    Alias of --inspect-mode brk.\n    \n-   \\--inspect-main\n    \n    Optional\n    \n    Allow inspecting the main worker.\n    \n-   \\--inspect-mode <\\[ run | brk | wait \\]>\n    \n    Optional\n    \n    Activate inspector capability for debugging.\n    \n-   \\--no-verify-jwt\n    \n    Optional\n    \n    Disable JWT verification for the Function.\n    \n\n* * *\n\nDeploy a Function to the linked Supabase project.\n\n### Flags\n\n-   \\--import-map <string>\n    \n    Optional\n    \n    Path to import map file.\n    \n-   \\-j, --jobs <uint>\n    \n    Optional\n    \n    Maximum number of parallel jobs.\n    \n-   \\--no-verify-jwt\n    \n    Optional\n    \n    Disable JWT verification for the Function.\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n-   \\--prune\n    \n    Optional\n    \n    Delete Functions that exist in Supabase project but not locally.\n    \n-   \\--use-api\n    \n    Optional\n    \n    Bundle functions server-side without using Docker.\n    \n\n* * *\n\nDelete a Function from the linked Supabase project. This does NOT remove the Function locally.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nProvides tools for managing environment variables and secrets for your Supabase project.\n\nThis command group allows you to set, unset, and list secrets that are securely stored and made available to Edge Functions as environment variables.\n\nSecrets management through the CLI is useful for:\n\n-   Setting environment-specific configuration\n-   Managing sensitive credentials securely\n\nSecrets can be set individually or loaded from .env files for convenience.\n\n### Subcommands\n\n-   [supabase secrets list](https://supabase.com/docs/reference/cli/supabase-secrets-list)\n-   [supabase secrets set](https://supabase.com/docs/reference/cli/supabase-secrets-set)\n-   [supabase secrets unset](https://supabase.com/docs/reference/cli/supabase-secrets-unset)\n\n* * *\n\nSet a secret(s) to the linked Supabase project.\n\n### Flags\n\n-   \\--env-file <string>\n    \n    Optional\n    \n    Read secrets from a .env file.\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nList all secrets in the linked project.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nUnset a secret(s) from the linked Supabase project.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\n### Flags\n\n-   \\-r, --recursive\n    \n    Optional\n    \n    Recursively list a directory.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--linked\n    \n    Optional\n    \n    Connects to Storage API of the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Connects to Storage API of the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\--cache-control <string>\n    \n    Optional\n    \n    Custom Cache-Control header for HTTP upload.\n    \n-   \\--content-type <string>\n    \n    Optional\n    \n    Custom Content-Type header for HTTP upload.\n    \n-   \\-j, --jobs <uint>\n    \n    Optional\n    \n    Maximum number of parallel jobs.\n    \n-   \\-r, --recursive\n    \n    Optional\n    \n    Recursively copy a directory.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--linked\n    \n    Optional\n    \n    Connects to Storage API of the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Connects to Storage API of the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\-r, --recursive\n    \n    Optional\n    \n    Recursively move a directory.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--linked\n    \n    Optional\n    \n    Connects to Storage API of the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Connects to Storage API of the local database.\n    \n\n* * *\n\n### Flags\n\n-   \\-r, --recursive\n    \n    Optional\n    \n    Recursively remove a directory.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--linked\n    \n    Optional\n    \n    Connects to Storage API of the linked project.\n    \n-   \\--local\n    \n    Optional\n    \n    Connects to Storage API of the local database.\n    \n\n* * *\n\n### Subcommands\n\n-   [supabase sso add](https://supabase.com/docs/reference/cli/supabase-sso-add)\n-   [supabase sso info](https://supabase.com/docs/reference/cli/supabase-sso-info)\n-   [supabase sso list](https://supabase.com/docs/reference/cli/supabase-sso-list)\n-   [supabase sso remove](https://supabase.com/docs/reference/cli/supabase-sso-remove)\n-   [supabase sso show](https://supabase.com/docs/reference/cli/supabase-sso-show)\n-   [supabase sso update](https://supabase.com/docs/reference/cli/supabase-sso-update)\n\n* * *\n\nAdd and configure a new connection to a SSO identity provider to your Supabase project.\n\n### Flags\n\n-   \\--attribute-mapping-file <string>\n    \n    Optional\n    \n    File containing a JSON mapping between SAML attributes to custom JWT claims.\n    \n-   \\--domains <strings>\n    \n    Optional\n    \n    Comma separated list of email domains to associate with the added identity provider.\n    \n-   \\--metadata-file <string>\n    \n    Optional\n    \n    File containing a SAML 2.0 Metadata XML document describing the identity provider.\n    \n-   \\--metadata-url <string>\n    \n    Optional\n    \n    URL pointing to a SAML 2.0 Metadata XML document describing the identity provider.\n    \n-   \\--name-id-format <string>\n    \n    Optional\n    \n    URI reference representing the classification of string-based identifier information.\n    \n-   \\--skip-url-validation\n    \n    Optional\n    \n    Whether local validation of the SAML 2.0 Metadata URL should not be performed.\n    \n-   \\-t, --type <\\[ saml \\]>\n    \n    Required\n    \n    Type of identity provider (according to supported protocol).\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nList all connections to a SSO identity provider to your Supabase project.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nProvides the information about an established connection to an identity provider. You can use --metadata to obtain the raw SAML 2.0 Metadata XML document stored in your project's configuration.\n\n### Flags\n\n-   \\--metadata\n    \n    Optional\n    \n    Show SAML 2.0 XML Metadata only\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nReturns all of the important SSO information necessary for your project to be registered with a SAML 2.0 compatible identity provider.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nUpdate the configuration settings of a already added SSO identity provider.\n\n### Flags\n\n-   \\--add-domains <strings>\n    \n    Optional\n    \n    Add this comma separated list of email domains to the identity provider.\n    \n-   \\--attribute-mapping-file <string>\n    \n    Optional\n    \n    File containing a JSON mapping between SAML attributes to custom JWT claims.\n    \n-   \\--domains <strings>\n    \n    Optional\n    \n    Replace domains with this comma separated list of email domains.\n    \n-   \\--metadata-file <string>\n    \n    Optional\n    \n    File containing a SAML 2.0 Metadata XML document describing the identity provider.\n    \n-   \\--metadata-url <string>\n    \n    Optional\n    \n    URL pointing to a SAML 2.0 Metadata XML document describing the identity provider.\n    \n-   \\--name-id-format <string>\n    \n    Optional\n    \n    URI reference representing the classification of string-based identifier information.\n    \n-   \\--remove-domains <strings>\n    \n    Optional\n    \n    Remove this comma separated list of email domains from the identity provider.\n    \n-   \\--skip-url-validation\n    \n    Optional\n    \n    Whether local validation of the SAML 2.0 Metadata URL should not be performed.\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nRemove a connection to an already added SSO identity provider. Removing the provider will prevent existing users from logging in. Please treat this command with care.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\nActivates the custom hostname configuration for a project.\n\nThis reconfigures your Supabase project to respond to requests on your custom hostname.\n\nAfter the custom hostname is activated, your project's third-party auth providers will no longer function on the Supabase-provisioned subdomain. Please refer to [Prepare to activate your domain](https://supabase.com/docs/guides/platform/custom-domains#prepare-to-activate-your-domain) section in our documentation to learn more about the steps you need to follow.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nCreate a custom hostname for your Supabase project.\n\nExpects your custom hostname to have a CNAME record to your Supabase project's subdomain.\n\n### Flags\n\n-   \\--custom-hostname <string>\n    \n    Required\n    \n    The custom hostname to use for your Supabase project.\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nRetrieve the custom hostname config for your project, as stored in the Supabase platform.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\nActivate a vanity subdomain for your Supabase project.\n\nThis reconfigures your Supabase project to respond to requests on your vanity subdomain. After the vanity subdomain is activated, your project's auth services will no longer function on the {project-ref}.{supabase-domain} hostname.\n\n### Flags\n\n-   \\--desired-subdomain <string>\n    \n    Required\n    \n    The desired vanity subdomain to use for your Supabase project.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--desired-subdomain <string>\n    \n    Required\n    \n    The desired vanity subdomain to use for your Supabase project.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nDeletes the vanity subdomain for a project, and reverts to using the project ref for routing.\n\n### Flags\n\n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nNetwork bans are IPs that get temporarily blocked if their traffic pattern looks abusive (e.g. multiple failed auth attempts).\n\nThe subcommands help you view the current bans, and unblock IPs if desired.\n\n### Subcommands\n\n-   [supabase network-bans get](https://supabase.com/docs/reference/cli/supabase-network-bans-get)\n-   [supabase network-bans remove](https://supabase.com/docs/reference/cli/supabase-network-bans-remove)\n\n* * *\n\n### Flags\n\n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--db-unban-ip <strings>\n    \n    Optional\n    \n    IP to allow DB connections from.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\n### Flags\n\n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--append\n    \n    Optional\n    \n    Append to existing restrictions instead of replacing them.\n    \n-   \\--bypass-cidr-checks\n    \n    Optional\n    \n    Bypass some of the CIDR validation checks.\n    \n-   \\--db-allow-cidr <strings>\n    \n    Optional\n    \n    CIDR to allow DB connections from.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\n### Flags\n\n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n### Flags\n\n-   \\--disable-db-ssl-enforcement\n    \n    Optional\n    \n    Whether the DB should disable SSL enforcement for all external connections.\n    \n-   \\--enable-db-ssl-enforcement\n    \n    Optional\n    \n    Whether the DB should enable SSL enforcement for all external connections.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\n### Flags\n\n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nOverriding the default Postgres config could result in unstable database behavior. Custom configuration also overrides the optimizations generated based on the compute add-ons in use.\n\n### Flags\n\n-   \\--config <strings>\n    \n    Optional\n    \n    Config overrides specified as a 'key=value' pair\n    \n-   \\--no-restart\n    \n    Optional\n    \n    Do not restart the database after updating config.\n    \n-   \\--replace-existing-overrides\n    \n    Optional\n    \n    If true, replaces all existing overrides with the ones provided. If false (default), merges existing overrides with the ones provided.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nDelete specific config overrides, reverting them to their default values.\n\n### Flags\n\n-   \\--config <strings>\n    \n    Optional\n    \n    Config keys to delete (comma-separated)\n    \n-   \\--no-restart\n    \n    Optional\n    \n    Do not restart the database after deleting config.\n    \n-   \\--experimental\n    \n    Required\n    \n    enable experimental features\n    \n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\nList all SQL snippets of the linked project.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\nDownload contents of the specified SQL snippet.\n\n### Flags\n\n-   \\--project-ref <string>\n    \n    Optional\n    \n    Project ref of the Supabase project.\n    \n\n* * *\n\n* * *\n\n* * *\n\nGenerate the autocompletion script for the zsh shell.\n\nIf shell completion is not already enabled in your environment you will need to enable it. You can execute the following once:\n\n```\necho \"autoload -U compinit; compinit\" >> ~/.zshrc\n```\n\nTo load completions in your current shell session:\n\n```\nsource <(supabase completion zsh)\n```\n\nTo load completions for every new session, execute once:\n\n#### Linux:\n\n```\nsupabase completion zsh > \"${fpath[1]}/_supabase\"\n```\n\n#### macOS:\n\n```\nsupabase completion zsh > $(brew --prefix)/share/zsh/site-functions/_supabase\n```\n\nYou will need to start a new shell for this setup to take effect.\n\n### Flags\n\n-   \\--no-descriptions\n    \n    Optional\n    \n    disable completion descriptions\n    \n\n* * *\n\nGenerate the autocompletion script for powershell.\n\nTo load completions in your current shell session:\n\n```\nsupabase completion powershell | Out-String | Invoke-Expression\n```\n\nTo load completions for every new session, add the output of the above command to your powershell profile.\n\n### Flags\n\n-   \\--no-descriptions\n    \n    Optional\n    \n    disable completion descriptions\n    \n\n* * *\n\nGenerate the autocompletion script for the fish shell.\n\nTo load completions in your current shell session:\n\n```\nsupabase completion fish | source\n```\n\nTo load completions for every new session, execute once:\n\n```\nsupabase completion fish > ~/.config/fish/completions/supabase.fish\n```\n\nYou will need to start a new shell for this setup to take effect.\n\n### Flags\n\n-   \\--no-descriptions\n    \n    Optional\n    \n    disable completion descriptions\n    \n\n* * *\n\nGenerate the autocompletion script for the bash shell.\n\nThis script depends on the 'bash-completion' package. If it is not installed already, you can install it via your OS's package manager.\n\nTo load completions in your current shell session:\n\n```\nsource <(supabase completion bash)\n```\n\nTo load completions for every new session, execute once:\n\n#### Linux:\n\n```\nsupabase completion bash > /etc/bash_completion.d/supabase\n```\n\n#### macOS:\n\n```\nsupabase completion bash > $(brew --prefix)/etc/bash_completion.d/supabase\n```\n\nYou will need to start a new shell for this setup to take effect.\n\n### Flags\n\n-   \\--no-descriptions\n    \n    Optional\n    \n    disable completion descriptions\n    \n\n* * *","storage":{"htmlKey":"stealpage/html/supabase.com/pg_qlhagxjxvqx6/run_-xooug96408e.html.gz","markdownKey":"stealpage/md/supabase.com/pg_qlhagxjxvqx6/run_-xooug96408e.md.gz"},"facets":{"page_id":"pg_qlhagxjxvqx6","domain_id":"dom_vqj7b-nyig_h","root_domain":"supabase.com","locale":"en","format":"research","depth":5,"technicality":5,"promotional":1,"originality":3,"audience":"developer","funnel_stage":"consideration","intent":"informational","evidence":"anecdote","tone":"corporate","has_code":true,"code_langs":[],"has_data":false,"has_tables":false,"has_images":false,"has_video":false,"has_faq":false,"external_links":67,"heading_count":106,"topics":["observability","developer-tools"],"keywords":["supabase cli","config.toml","pgtap tests","type definitions","jwt signing key"],"entities":{},"takeaways":["The page serves as a detailed technical reference for the Supabase CLI, covering initialization, linking, starting, stopping, and testing local development environments.","It includes specific flags and options for customizing behavior, such as database connections, project linking, and type generation for different programming languages.","The content is structured with clear command descriptions, flags, and examples, making it a valuable resource for developers working with Supabase.","It emphasizes the use of environment variables for automation and CI/CD, indicating a focus on developer productivity and integration.","The page is part of a larger documentation set, suggesting it is intended for developers who are already familiar with Supabase and need in-depth technical guidance."],"summary":"This page provides a comprehensive reference for the Supabase CLI, detailing its commands, flags, and usage scenarios for local development and project management.","ai_likelihood":"0","shelf_life":"evergreen","quality_score":"0.7237","fingerprint":"6efb8f2e0ae75181ce986ae72936892e7e9ec1834582f00e40edaac4962fae88","model":"qwen/qwen3-30b-a3b","classified_at":"2026-08-27T09:11:42.265Z","created_at":"2026-08-27T09:11:42.265Z","updated_at":"2026-08-27T09:11:42.265Z"},"assets":[{"kind":"image","src_url":"https://supabase.com/docs/img/supabase-og-image.png","r2_key":null,"alt":null,"caption":null,"width":null,"height":null,"is_hero":true,"zone":"main"},{"kind":"image","src_url":"https://supabase.com/docs/supabase-dark.svg","r2_key":null,"alt":"Supabase wordmark","caption":null,"width":96,"height":18,"is_hero":false,"zone":"nav"},{"kind":"image","src_url":"https://supabase.com/docs/supabase-light.svg","r2_key":null,"alt":"Supabase wordmark","caption":null,"width":96,"height":18,"is_hero":false,"zone":"nav"}],"shots":[],"history":[{"id":"run_-xooug96408e","started_at":"2026-08-27T09:07:18.260Z","http_status":200,"fetcher":"direct","changed":false,"diff":null,"word_count":8548}],"citedBy":[]}