The all-in-one, open-source backend platform for agentic coding.
⭐ Help us reach more developers and grow the InsForge community. Star this repo!
InsForge
The all-in-one, open-source backend platform for agentic coding. InsForge gives your coding agent database, auth, storage, compute, hosting, and AI gateway to ship full-stack apps end-to-end.
https://github.com/user-attachments/assets/345efbc6-ca63-4189-bde0-12ef3bda561b
How it works
Coding agents interact with InsForge through one of two interfaces:
- MCP Server (self-hosted and cloud): exposes InsForge's operations as tools any MCP-compatible agent can call.
- CLI + Skills (cloud only): a command-line interface paired with Skills that agents invoke directly from the terminal.
Both interfaces let coding agents operate the backend like backend engineers:
- Read backend context and state: Pull documentation, schemas, metadata (deployed functions, bucket contents, auth config), and runtime logs, so the agent has what it needs to write code, verify what it built, and debug when something breaks.
- Configure primitives: Deploy edge functions, run database migrations, create storage buckets, set up auth providers, and configure other backend resources directly.
graph TB
subgraph TOP[" "]
AG[AI Coding Agents]
end
subgraph MID[" "]
SL[InsForge]
end
AG --> SL
SL --> AUTH[Authentication]
SL --> DB[Database]
SL --> ST[Storage]
SL --> EF[Edge Functions]
SL --> MG[Model Gateway]
SL --> CP[Compute]
SL --> DEP[Deployment]
classDef bar fill:#0b0f14,stroke:#30363d,stroke-width:1px,color:#ffffff
classDef card fill:#161b22,stroke:#30363d,stroke-width:1px,color:#ffffff
class AG,SL bar
class AUTH,DB,ST,EF,MG,CP,DEP card
style TOP fill:transparent,stroke:transparent
style MID fill:transparent,stroke:transparent
linkStyle default stroke:#30363d,stroke-width:1px
Core Products
- Authentication: User management, authentication, and sessions
- Database: Postgres relational database
- Storage: S3-compatible file storage
- Model Gateway: OpenAI-compatible API across multiple LLM providers
- Edge Functions: Serverless code running on the edge
- Compute (private preview): Long-running container services
- Site Deployment: Site build and deployment
⭐️ Star the Repository
If you find InsForge useful or interesting, a GitHub Star ⭐️ would be greatly appreciated.
Quickstart
Cloud-hosted: insforge.dev
Self-hosted: Docker Compose
Prerequisites: Docker with Compose v2.
1. Setup
curl -fsSL https://raw.githubusercontent.com/InsForge/InsForge/main/deploy/setup.sh | sh -s ~/insforge
Fetches the files the stack reads and generates JWT_SECRET, ENCRYPTION_KEY,
POSTGRES_PASSWORD, ROOT_ADMIN_PASSWORD, and the two access keys into
~/insforge/.env (mode 600). Nothing is started. Re-running refreshes the files
and keeps every value you have set — it only ever adds COMPOSE_FILE, or points
it at this checkout's compose file if it still names the development one.
cd ~/insforge
$EDITOR .env # API_BASE_URL, VITE_API_BASE_URL — the URL browsers will use
docker compose up -d
.env sets COMPOSE_FILE, so plain docker compose commands work from that
directory — no -f flags to remember.
[![Deploy on Docker][docker-btn]][docker-deploy]
Building from source instead
For working on InsForge itself. docker-compose.prod.yml reads the same
variables but generates nothing, so set the secrets in .env yourself before
starting anything you expose.
git clone https://github.com/InsForge/InsForge.git
cd InsForge
cp .env.example .env
$EDITOR .env
docker compose -f docker-compose.prod.yml up
Set JWT_SECRET, ENCRYPTION_KEY, POSTGRES_PASSWORD, and
ROOT_ADMIN_PASSWORD — .env.example ships placeholders for them, and the
compose file falls back to published defaults for any you leave unset. Set
ACCESS_API_KEY and ACCESS_ANON_KEY too if you want to know your own keys;
left empty, the backend generates a pair only it knows.
This path passes -f explicitly, which overrides COMPOSE_FILE. Add overlays as
further -f flags rather than editing that variable.
2. Connect InsForge MCP
Follow the steps to connect InsForge MCP Server.

3. Verify installation
To verify the connection, send the following prompt to your agent:
I'm using InsForge as my backend platform, call InsForge MCP's fetch-docs tool to learn about InsForge instructions.
4. Running Multiple Projects
Give each project its own directory:
curl -fsSL https://raw.githubusercontent.com/InsForge/InsForge/main/deploy/setup.sh | sh -s ~/project1
curl -fsSL https://raw.githubusercontent.com/InsForge/InsForge/main/deploy/setup.sh | sh -s ~/project2
Then give each a project name and its own ports. Both .env files start with
COMPOSE_PROJECT_NAME=insforge, and two directories sharing that name share
containers — the second up -d adopts the first's, rebuilt with the second's
config. Set it before starting anything.
~/project1/.env keeps the default ports — which collide with the ~/insforge
instance from th