Skip to main content

specific dev

Start the local development environment. Reads specific.hcl, starts all resources and services, and sets up HTTPS routing.
specific dev

Options

OptionDescription
--key <name>Run an isolated dev environment with separate data and ports. Auto-detected from git worktrees.
--tunnelExpose public services via *.tunnel.spcf.app URLs instead of local HTTPS.

Examples

# Start the default development environment
specific dev

# Start an isolated environment for a feature branch
specific dev --key feature-auth

# Expose services publicly via tunnel
specific dev --tunnel

specific exec

Run a one-off command with a service’s environment variables and dependencies started. If specific dev is already running, exec reuses the existing resources. Otherwise, it starts the required resources temporarily and stops them when the command finishes.
specific exec <service> -- <command>
This is the primary way to run database migrations, seed scripts, and other setup commands.

Examples

# Run database migrations
specific exec api -- npm run db:migrate

# Seed the database
specific exec api -- npm run seed

# Run an arbitrary script with the service's environment
specific exec worker -- node scripts/process-backlog.js

# Use with a specific instance key
specific exec api --key feature-auth -- npm run db:migrate
The -- separator is required to distinguish the service arguments from the command to execute.

specific psql

Connect to a local PostgreSQL database with an interactive psql session. If the database is not running, it is started automatically.
specific psql [database]
When only one database is defined in specific.hcl, the database name is optional. When multiple databases are defined, you must specify which one to connect to.

Examples

# Connect to the only database (or "main" if multiple exist)
specific psql main

# Run a single query
specific psql main -- -c "SELECT * FROM users LIMIT 5"

# List all tables
specific psql main -- -c "\dt"

# Use with a specific instance key
specific psql main --key feature-auth
Extra arguments after -- are passed directly to psql.

specific check

Validate the specific.hcl configuration file. Lists all builds, services, databases, storage, redis, and configs defined in the file. Reports errors for invalid configurations, including Reshape migration validation.
specific check
Exits with code 1 if there are any errors. Use this to verify your configuration is correct before starting specific dev or running specific deploy.

Example output

Configuration is valid

Builds (1):
  - web

Services (2):
  - api
  - web

Postgres (1):
  - main

specific clean

Remove local development data. Deletes the resource data stored in .specific/keys/, giving you a fresh start with empty databases and storage.
specific clean
Cannot be run while specific dev is active. Stop the dev server first.

Options

OptionDescription
--key <name>Remove data only for the specified instance key.

Examples

# Remove all local development data
specific clean

# Remove data only for a specific instance
specific clean --key feature-auth