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.
> /plugin marketplace add InsForge/InsForge> /plugin install insforge@insforge-official-marketplace
Repo: InsForge/InsForge
What's inside
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
Coding agents interact with InsForge through one of two interfaces:
Both interfaces let coding agents operate the backend like backend engineers:
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
If you find InsForge useful or interesting, a GitHub Star โญ๏ธ would be greatly appreciated.
Prerequisites: Docker with Compose v2.
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.
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.
Open http://localhost:7130
Follow the steps to connect InsForge MCP Server
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.
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 the quickstart above if it is still running. Stop that one, or give
project1 its own ports the way project2 has:
COMPOSE_PROJECT_NAME=project1
~/project2/.env:
COMPOSE_PROJECT_NAME=project2
POSTGRES_PORT=5442
POSTGREST_PORT=5440
APP_PORT=7230
AUTH_PORT=7231
DENO_PORT=7233
Now each directory is a separate instance with its own containers, volumes, database, and secrets:
cd ~/project1 && docker compose up -d
cd ~/project2 && docker compose up -d
docker compose ps, logs -f, and down operate on whichever directory you
run them from.
InsForge stores files on the local filesystem by default. Backing storage with an S3-compatible store also enables the S3-compatible gateway at /storage/v1/s3 (use aws CLI, rclone, or any AWS SDK against your InsForge Storage).
Append one overlay to COMPOSE_FILE in .env. Bundled MinIO, whose store stays
internal to the Docker network:
COMPOSE_FILE=deploy/docker-compose/docker-compose.yml:docker-compose.minio.yml
Or RustFS, an Apache-2.0 licensed alternative:
COMPOSE_FILE=deploy/docker-compose/docker-compose.yml:docker-compose.rustfs.yml
Keep one โ the file is read as shell assignments, so a second line replaces the
first. Then docker compose up -d as usual.
The overlays ship with default store credentials โ set MINIO_ROOT_USER/MINIO_ROOT_PASSWORD (or RUSTFS_ACCESS_KEY/RUSTFS_SECRET_KEY) in .env before production use.
Or bring your own S3-compatible store (AWS S3, MinIO, RustFS, Wasabi, R2, Tencent COS, Aliyun OSS ...) by setting S3_BUCKET, S3_REGION, S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY โ plus S3_ENDPOINT_URL for non-AWS providers โ in .env. If the endpoint is not reachable by browsers (private network), also set S3_USE_PRESIGNED_URLS=false to enable proxy mode.
See the self-hosted storage guide for provider notes, presigned vs. proxy mode, and upgrade tips.
In addition to running InsForge locally, you can also launch InsForge using a pre-configured setup. This allows you to get up and running quickly with InsForge without installing Docker on your local machine.
| Railway | Zeabur | Sealos |
|---|---|---|
Contributing: If you're interested in contributing, you can check our guide here CONTRIBUTING.md. We truly appreciate pull requests, all types of help are appreciated!
Support: If you need any help or support, we're responsive on our Discord channel, and also feel free to email us info@insforge.dev too!
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Show your project is built with InsForge.
Markdown:
[](https://insforge.dev)
HTML:
<a href="https://insforge.dev">
<img
width="168"
height="30"
src="https://insforge.dev/badge-made-with-insforge.svg"
alt="Made with InsForge"
/>
</a>
Markdown:
[](https://insforge.dev)
HTML:
<a href="https://insforge.dev">
<img
width="168"
height="30"
src="https://insforge.dev/badge-made-with-insforge-dark.svg"
alt="Made with InsForge"
/>
</a>
.agents/
docs/
deployment.md
insforge-instructions-sdk.md
payments-razorpay.md
payments-stripe.md
payments.md
real-time.md
skills/
insforge-dev/
backend/
SKILL.md
dashboard/
SKILL.md
docs/
DOCS_I18N.md
SKILL.md
e2e-testing/
SKILL.md
shared-schemas/
SKILL.md
SKILL.md
ui/
SKILL.md
.archive/
docs/
deprecated/
insforge-auth-api.md
insforge-auth-sdk.md
insforge-db-api.md
insforge-db-sdk.md
insforge-debug-sdk.md
insforge-debug.md
insforge-instructions.md
insforge-project.md
insforge-storage-api.md
insforge-storage-sdk.md
.claude/
.claude-plugin/
marketplace.json
skills/
doc-author/
INSFORGE.md
SKILL.md
insforge-dev/
backend/
SKILL.md
dashboard/
SKILL.md
docs/
DOCS_I18N.md
SKILL.md
e2e-testing/
SKILL.md
shared-schemas/
SKILL.md
SKILL.md
ui/
SKILL.md
README.md
.codex/
skills/
insforge-dev/
backend/
SKILL.md
dashboard/
SKILL.md
docs/
DOCS_I18N.md
SKILL.md
e2e-testing/
SKILL.md
shared-schemas/
SKILL.md
SKILL.md
ui/
SKILL.md
.dockerignore
.env.example
.github/
copilot-instructions.md
FUNDING.yml
ISSUE_TEMPLATE/
bug_report.yml
config.yml
feature_request.yml
PULL_REQUEST_TEMPLATE.md
workflows/
build-image.yml
check-migrations.yml
ci-premerge-check.yml
e2e.yml
frontend-tests.yml
integration-tests.yml
lint-and-format.yml
unit-tests.yml
.gitignore
.gstack/
qa-reports/
qa-report-insforge-2026-03-31.md
.idea/
codeStyles/
codeStyleConfig.xml
Project.xml
inspectionProfiles/
Project_Default.xml
prettier.xml
vcs.xml
.internal/
docs/
audits/
_audit-2026-04-18.md
plans/
2026-03-16-custom-smtp.md
2026-04-07-compute-dashboard-ux.md
2026-04-15-direct-deploy-flow.md
2026-04-16-custom-database-migrations.md
2026-04-18-compute-cloud-provider.md
2026-04-21-dtest-onboarding.md
2026-04-22-s3-compatible-storage-gateway.md
2026-04-29-backend-branching-oss.md
2026-04-30-stripe-payments-implementation.md
2026-05-05-payments-customers-mirror.md
2026-05-24-posthog-analytics-layout-redesign.md
2026-06-29-e2e-testing-skill.md
README.md
specs/
2026-03-16-custom-smtp-design.md
2026-04-07-compute-dashboard-ux-design.md
2026-04-18-docs-audit.md
2026-04-21-dtest-onboarding-design.md
2026-04-22-s3-compatible-storage-gateway-design.md
2026-04-29-backend-branching-oss-design.md
2026-05-24-posthog-analytics-layout-redesign-design.md
2026-06-04-compute-container-logs-design.md
2026-06-29-e2e-testing-skill-design.md
.prettierignore
.prettierrc
assets/
connect.png
insforge-star.gif
logo-dark.svg
logo-light.svg
signin.png
backend/
package.json
scripts/
check-migration-duplicates.js
test-deno-subhosting.sh
src/
api/
middlewares/
auth.ts
error.ts
rate-limiters.ts
s3-sigv4.ts
upload.ts
routes/
advisor/
index.routes.ts
ai/
index.routes.ts
analytics/
index.routes.ts
auth/
admin.routes.ts
custom-oauth.routes.ts
index.routes.ts
oauth.routes.ts
compute/
services.routes.ts
dashboard/
events.routes.ts
database/
admin.routes.ts
advance.routes.ts
backups.routes.ts
config.routes.ts
index.routes.ts
migrations.routes.ts
records.routes.ts
rpc.routes.ts
tables.routes.ts
deployments/
env-vars.routes.ts
index.routes.ts
docs/
index.routes.ts
email/
index.routes.ts
functions/
index.routes.ts
github/
index.routes.ts
logs/
index.routes.ts
memory/
index.routes.ts
metadata/
index.routes.ts
payments/
index.routes.ts
razorpay/
catalog.routes.ts
config.routes.ts
index.routes.ts
stripe/
catalog.routes.ts
config.routes.ts
index.routes.ts
realtime/
channels.routes.ts
index.routes.ts
messages.routes.ts
permissions.routes.ts
s3-gateway/
commands/
abort-multipart-upload.ts
complete-multipart-upload.ts
copy-object.ts
create-bucket.ts
create-multipart-upload.ts
delete-bucket-cors.ts
delete-bucket.ts
delete-object-tagging.ts
delete-object.ts
delete-objects.ts
get-bucket-cors.ts
get-bucket-location.ts
get-bucket-versioning.ts
get-object-tagging.ts
get-object.ts
head-bucket.ts
head-object.ts
list-buckets.ts
list-objects-v2.ts
list-parts.ts
put-bucket-cors.ts
put-bucket-versioning.ts
put-object-tagging.ts
put-object.ts
upload-part.ts
dispatch.ts
errors.ts
index.routes.ts
request.ts
xml.ts
schedules/
index.routes.ts
secrets/
index.routes.ts
storage/
index.routes.ts
usage/
index.routes.ts
webhooks/
index.routes.ts
razorpay.routes.ts
stripe.routes.ts
vercel.routes.ts
webscraper/
index.routes.ts
infra/
config/
app.config.ts
database/
database.manager.ts
migrations/
000_create-base-tables.sql
001_create-helper-functions.sql
002_rename-auth-tables.sql
003_create-users-table.sql
004_add-reload-postgrest-func.sql
005_enable-project-admin-modify-users.sql
006_modify-ai-usage-table.sql
007_drop-metadata-table.sql
008_add-system-tables.sql
009_add-function-secrets.sql
010_modify-ai-config-modalities.sql
011_refactor-secrets-table.sql
012_add-storage-uploaded-by.sql
013_create-auth-schema-functions.sql
014_add-updated-at-trigger-user-table.sql
015_create-auth-config-and-email-otp-tables.sql
016_update-auth-config-and-email-otp.sql
017_create-realtime-schema.sql
018_schema-rework.sql
019_create-deployments-table.sql
020_add-audio-modality.sql
021_create-schedules-schema.sql
022_create-function-deployments.sql
023_ai-configs-soft-delete.sql
024_add-realtime-message-retention.sql
025_create-storage-config-table.sql
026_create-custom-oauth-configs.sql
027_add-redirect-url-whitelist.sql
028_secure-schedules-encryption-functions.sql
029_create-smtp-config-and-email-templates.sql
030_rename-code-to-token-in-email-templates.sql
031_create-deployment-files.sql
032_create-custom-migrations.sql
033_create-s3-access-keys.sql
033_relax-custom-migrations-version-check.sql
034_extend-storage-objects-for-s3-protocol.sql
035_fix-secrets-deduplicate-and-unique.sql
036_storage-third-party-auth-support.sql
037_schedules-http-timeout.sql
038_create-compute-services.sql
039_create-payments-schema.sql
040_create-payments-customers-table.sql
041_consolidate-retention-jobs.sql
042_add-disable-signup-flag.sql
043_drop-deprecated-ai-configs-and-usage.sql
044_prefer-request-jwt-claims.sql
045_project-admin-public-privileges.sql
046_transfer-public-object-ownership.sql
047_compute-services-add-protocol.sql
047_harden-internal-runtime-defaults.sql
048_project-admin-database-create-privilege.sql
049_add-multi-provider-payments-foundation.sql
050_create-memory-schema.sql
051_create-database-backups.sql
052_add-s3-cors-tagging-versioning.sql
053_fix-realtime-channel-name-helper.sql
054_grant-system-database-backups-select.sql
055_grant-internal-schema-select-defaults.sql
056_expose-custom-schemas-to-postgrest.sql
057_create-database-advisor.sql
058_compute-services-add-scale-to-zero.sql
059_create-advisor-suppressions.sql
060_add-email-otp-sign-in.sql
061_add-database-config.sql
062_add-oauth-native-client-ids.sql
063_reassign-root-owned-public-objects.sql
064_compute-services-multi-driver.sql
bootstrap/
baseline-migrations.js
bootstrap-migrations.js
realtime/
realtime.manager.ts
webhook-sender.ts
security/
encryption.manager.ts
token.manager.ts
socket/
socket.manager.ts
providers/
ai/
openrouter.provider.ts
analytics/
base.provider.ts
cloud.provider.ts
local.provider.ts
compute/
cloud.provider.ts
compute.provider.ts
docker.client.ts
docker.provider.ts
fly.provider.ts
database/
base.provider.ts
cloud.provider.ts
deployments/
vercel.provider.ts
email/
base.provider.ts
cloud.provider.ts
smtp.provider.ts
functions/
deno-subhosting.provider.ts
logs/
base.provider.ts
cloudwatch.provider.ts
local.provider.ts
oauth/
apple.provider.ts
base.provider.ts
custom.provider.ts
discord.provider.ts
facebook.provider.ts
github.provider.ts
google.provider.ts
index.ts
linkedin.provider.ts
microsoft.provider.ts
x.provider.ts
payments/
razorpay-errors.ts
razorpay.provider.ts
stripe-errors.ts
stripe.provider.ts
storage/
base.provider.ts
local.provider.ts
s3.provider.ts
webscraper/
base.provider.ts
cloud.provider.ts
local.provider.ts
server.ts
... 1600 moreShowing a partial view of a very large repo.
FAQ
insforge is a Claude Code plugin with 8 hand-picked skills for backend work, indexed on Flowy. Install it with the command on its page. It includes doc-author, insforge-dev, backend. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.