Back to App Store

Insforge

InsForge · io.pilot.insforge
The agent-native cloud (an AWS for agents) as ONE Pilot app. insforge.signup provisions your OWN isolated InsForge backe.
Install
pilotctl appstore install io.pilot.insforge
v1.0.0
Version
24
Methods
8.8 MB
Size
shareable
Sandbox
macOS · Linux
Platforms

About Insforge

The agent-native cloud (an AWS for agents) as ONE Pilot app. insforge.signup provisions your OWN isolated InsForge backend in one call — no email, no browser: a dedicated Postgres database, authentication, S3-style storage, Deno edge functions, and a Model Gateway OpenRouter key seeded with $1 of AI credits. Pilot's broker mints and manages the account; every method then talks directly to your backend, authenticated as you. Free to provision — pay only for what your backend uses.

Methods · 24

insforge.signup
Provision your OWN isolated InsForge backend in ONE call — no email, no browser, no human step. This signs a keyless request to Pilot's InsForge signup broker, which mints a fresh InsForge project under Pilot's managed account and returns its access key + backend URL. The adapter caches {api_key, backend_url} to $APP/secrets.json, and from then on EVERY other insforge.* method talks directly to YOUR backend, authenticated as you. You get a dedicated Postgres database, authentication, S3-style storage, edge functions, and a Model Gateway OpenRouter key seeded with $1 of AI credits. Idempotent: the broker provisions at most one project per Pilot identity, so a repeat call (or a fresh install) returns the SAME backend. Run this ONCE before any other method. FREE to provision — you pay only for the resources your backend actually uses (see per-method costs and insforge.help). Retrieve your backend URL + key any time via insforge.account. Takes no arguments.
insforge.account
Retrieve your provisioned InsForge backend — its backend_url, your api_key, and project id — plus a signed_up flag. Local, instant, FREE (reads $APP/secrets.json; no backend call). Use it to confirm you're provisioned or to read your key/URL (e.g. to call the backend from your own code). If signed_up is false, call insforge.signup first.
insforge.metadata
Get your backend's full configuration — auth providers/SMTP, database tables, storage buckets, edge functions, realtime, and AI models — in one call. FREE (control-plane / metadata).
insforge.db_list_tables
List all database tables with their schemas (columns, types, constraints). FREE (control-plane / metadata).
insforge.db_create_table
Create a Postgres table. Body: {tableName, columns:[{columnName, type, isNullable, isUnique, defaultValue?}]} — type is one of string, integer, float, boolean, datetime, date, uuid, json. An id (uuid) + createdAt/updatedAt are added automatically. Rows count toward Postgres storage (500 MB free, then $0.125/GB); reads toward bandwidth (5 GB free, then $0.09/GB).
insforge.db_query
Query records from a table with PostgREST-style filtering, sorting, pagination. Path: table name. Query params: limit (1-1000, default 100), offset, order (e.g. createdAt.desc), select (comma columns), and any {field}=<op>.<value> filter (op: eq, neq, gt, gte, lt, lte, like, ilike, in, is). Counts toward bandwidth (5 GB free, then $0.09/GB).
insforge.db_insert
Insert one or more records into a table. Path: table name. Body: a JSON array of row objects (e.g. [{"title":"hi"}]) — always an array, even for one row. Returns the inserted rows with generated ids. Note: just after db_create_table, wait ~3s before the first insert (the database reloads its schema cache after DDL; an immediate insert can 404). Rows count toward Postgres storage (500 MB free, then $0.125/GB); reads toward bandwidth (5 GB free, then $0.09/GB).
insforge.db_update
Update records matching PostgREST filters. Path: table name. Pass filter(s) as query params ({field}=eq.<value>) and the new column values in the body. Returns the updated rows. Rows count toward Postgres storage (500 MB free, then $0.125/GB); reads toward bandwidth (5 GB free, then $0.09/GB).
insforge.db_delete
Delete records matching PostgREST filters. Path: table name. Pass filter(s) as query params ({field}=eq.<value>). Returns the deleted rows. Rows count toward Postgres storage (500 MB free, then $0.125/GB); reads toward bandwidth (5 GB free, then $0.09/GB).
insforge.db_sql
Run raw parameterized SQL against your Postgres database. Body: {query, params?}. Powerful — use for joins, aggregates, DDL, migrations. Rows count toward Postgres storage (500 MB free, then $0.125/GB); reads toward bandwidth (5 GB free, then $0.09/GB).
insforge.storage_list_buckets
List your storage buckets. FREE (control-plane / metadata).
insforge.storage_create_bucket
Create a storage bucket. Body: {bucketName, isPublic}. A public bucket serves objects without auth; a private one requires the key. FREE (control-plane / metadata).
insforge.storage_list_objects
List objects in a bucket (paginated). Path: bucket name. Query: limit, offset, prefix. Counts toward bandwidth (5 GB free, then $0.09/GB).
insforge.storage_download
Download an object (returns its content). Path: bucket + object key. Counts toward bandwidth (5 GB free, then $0.09/GB).
insforge.storage_delete
Delete an object. Path: bucket + object key. FREE (control-plane / metadata).
insforge.auth_config
Get your backend's auth configuration (enabled OAuth providers, JWT settings, SMTP). FREE (control-plane / metadata).
insforge.auth_list_users
List the end-users registered in your backend's auth (paginated). Query: limit, offset. Auth users count toward MAU (50,000 free, then $0.00325 per monthly active user).
insforge.functions_list
List your deployed edge functions (Deno/TypeScript) and the runtime status. FREE (control-plane / metadata).
insforge.function_invoke
Invoke a deployed edge function by slug. Path: function slug. Body: the JSON payload passed to the function. Each invocation counts toward edge-function calls (100,000 free, then $0.01 per 1,000).
insforge.ai_gateway_key
Get your project's Model Gateway OpenRouter API key (sk-or-...). InsForge provisions it seeded with $1 of AI credits; call it directly against https://openrouter.ai/api/v1 with any OpenAI-compatible SDK (models like openai/gpt-4o, anthropic/claude-3.5-haiku). Returns the project's Model Gateway OpenRouter key, seeded with $1 of AI credits; usage bills per OpenRouter token pricing on that key.
insforge.secrets_list
List your backend's secrets/keys (names + metadata; values are not returned). FREE (control-plane / metadata).
insforge.get
Escape hatch: GET any backend API path under /api. Path param is the sub-path (e.g. "database/tables", "storage/config"); extra fields become query params. Covers endpoints not given a dedicated method. Cost depends on the endpoint — see insforge.help.
insforge.post
Escape hatch: POST any backend API path under /api. Path param is the sub-path; the rest of the payload is sent as the JSON body. Covers endpoints not given a dedicated method. Cost depends on the endpoint.
insforge.help
This document — methods grouped by plane (local vs cloud), with params, latency, and cost.

Full usage demo

When your agent needs its own isolated cloud backend — Postgres, auth, S3-style storage, edge functions, and an AI gateway key — provisioned in a single call.

Run this first — Provision your own isolated backend in one call (no email, no browser)
Call
pilotctl appstore call io.pilot.insforge insforge.signup '{}'
{"signed_up":true,"backend_url":"https://...insforge.dev","api_key":"..."}

Run this ONCE. It caches your backend URL + key; every other insforge.* call then talks directly to YOUR backend. Idempotent per Pilot identity.

Worked examples

Create a Postgres table
Call
pilotctl appstore call io.pilot.insforge insforge.db_create_table '{"tableName":"notes","columns":[{"columnName":"title","type":"string","isNullable":false}]}'
{"tableName":"notes","columns":[...]}

id (uuid) + createdAt/updatedAt are added automatically. Wait ~3s before the first insert (schema cache reload).

Insert rows (always a JSON array)
Call
pilotctl appstore call io.pilot.insforge insforge.db_insert '{"table":"notes","records":[{"title":"hello"}]}'
[{"id":"...","title":"hello","createdAt":"..."}]
Query with filters + ordering
Call
pilotctl appstore call io.pilot.insforge insforge.db_query '{"table":"notes","order":"createdAt.desc","limit":10}'
[{"id":"...","title":"hello"}]
Get your seeded AI Model Gateway key
Call
pilotctl appstore call io.pilot.insforge insforge.ai_gateway_key '{}'
{"api_key":"sk-or-..."}

OpenRouter key seeded with $1 of credits — call it against https://openrouter.ai/api/v1 with any OpenAI-compatible SDK.

Inspect the whole backend config
Call
pilotctl appstore call io.pilot.insforge insforge.metadata '{}'
{"database":{...},"storage":{...},"functions":{...},"auth":{...}}

Good to know

  • Run insforge.signup once first — it provisions and caches your backend URL + key; every other method targets YOUR backend, and a repeat call is idempotent (same backend).
  • Each Pilot identity gets its OWN isolated InsForge backend (dedicated Postgres, storage, functions, AI credits) — no shared state with other users.
  • After db_create_table wait ~3s before the first db_insert — the database reloads its schema cache after DDL and an immediate insert can 404.
  • db_insert always takes a JSON array of row objects, even for a single row.
  • Free to provision; you pay only for resources your backend actually uses (500MB Postgres, 1GB storage, 5GB bandwidth, 50k MAU, 100k function calls, $1 AI credits free).

Next

  • io.pilot.insforge insforge.help '{}'

What’s New

v1.0.0Latest
  • Published v 1.0.0

Platform Compatibility

macOSApple Silicon
4.7 MBSupported
macOSIntel
5.0 MBSupported
Linuxarm64
4.5 MBSupported
Linuxamd64
4.9 MBSupported
You might also like

More in Infrastructure