Overview
Forgeling Core runs Claude Code agents for your app, each in a sandbox of its own, through one API. You define an agent once, create a workspace for each of your customers with that customer's Anthropic key, and start runs: an agent in a fresh container, with a GitHub repository checked out if you give it one, working through the turns you send. Every step of a run is an event, which you read from the API, follow live or receive as a signed webhook, and the files the agent writes to its outputs are yours to download.
The base URL is https://api.forgeling.io/v1. The quickstart takes you from an API key
to a first run in six steps.
How it fits together
- App. Your product, as Forgeling knows it: its members, its API keys and its webhook endpoints. Its keys reach only its own workspaces.
- Workspace. One of your customers, named by your own
external_id. It holds their model key, their runs and their events. - Agent definition. A versioned bundle: the model, the instructions and the tool rules. Publish one as an inline spec.
- Run. One agent in its own sandbox, for one job. It takes turns, can pause while it waits for you, and ends when you complete it or it expires.
- Turn. One input to a run, and the agent's work on it up to its answer.
- Event. A record of one step, such as
run.ready,turn.completedoroutput.created, in order within each run.
The private beta
The API is in private beta.
- Sign-up needs a beta invite code. Sign up at https://app.forgeling.io/console with GitHub, Google or a verified email and the code Forgeling gave you, and accept the short beta terms.
- Forgeling approves every app before it can run anything. Request approval in the console. Until
then your app can create keys, workspaces, model credentials, agent definitions and webhook endpoints,
and starting a run answers 403
approval_required. - Runs share machines. During the beta, runs share worker machines with other customers' workloads that Forgeling hosts. The security model says what that means.
- No billing. v1 has no developer billing and sends no invoices. You bring the model key, so
Anthropic bills its tokens to that key. Forgeling records the usage of every run (tokens, the reported
cost and sandbox time) and serves it at
GET /v1/usage. - No SDKs. The API is HTTPS and JSON, and every example in these docs is a
curlcommand. The OpenAPI document describes every endpoint, so you can generate a client from it.
Keep Forgeling out of your product
Your customers need never see Forgeling's name:
- Your app's
display_name, set in the console, is the label the model sees on the trusted context you send with a turn. - Inside a run, the agent's prompts, its environment and the sandbox's user and paths do not name Forgeling. You set the Git author, committer and attribution of its commits.
- Re-host output files. A file's download URL is a short-lived signed URL on Google's storage domain, and the signature names the hosting project. Download the file and serve it to your users yourself.
- Webhook headers are neutral: the Standard Webhooks headers
and a
User-Agentofwebhooks/1.0. - Email goes only to your app's members, never to your customers.
The documentation
- Quickstart: an API key, a workspace, a model key, an agent, a run and a webhook.
- Coding runs: give an agent a GitHub repository and get a pull request back.
- Agent definitions: models, instructions, tool rules, approvals and runtime pinning.
- Webhooks and the event stream: verifying deliveries, delivery rules, ordering and the live stream.
- Conventions: keys, scopes, errors, idempotency, pagination and versioning.
- Endpoints: every operation, generated from the OpenAPI document.
- Events: every event type, with its schema and an example.
- Limits: run sizes, lifetimes, quotas and caps for each tier.
- Security model: what a run can read and reach, and the settings to use.
- Beta terms: the terms you accept at sign-up.