Skip to main content

Welcome to Forge

Build, run, and operate durable agent platforms in TypeScript.

Forge is a provider-neutral SDK for applications that need more than a one-off model call. Define agents and flows, attach typed tools and context, then run them through an embedded library or a durable server runtime.

Choose the right primitive

PrimitiveUse it whenForge handles
AgentOne model-driven program can own the taskContext assembly, model calls, tool execution, session state, memory, and guardrails
FlowThe work needs fixed steps, recovery, or explicit approvalsQueuing, checkpoints, retries, resumable streaming, and idempotent external writes
ToolAn agent needs a capability outside the modelTyped inputs, authorization, validation, effect classification, and approval policy

Start with an agent. Add a tool when it needs to act or retrieve information. Use a flow when the process needs repeatable, durable control.

What you can add

CapabilityWhat it adds
Memory and sessionsConversation history plus user and tenant facts, assembled within a context budget
Knowledge and retrievalPermission-aware search with exact source citations
Human-in-the-loopA durable approval gate before an external action executes
GuardrailsInput, context, and output controls for model-facing data
IntegrationsOptional tool packages for GitHub, Slack, search, and other external services
OperationsWorker processes, queues, persistence adapters, tracing, usage, and cost accounting

Find your way by what you are trying to do

Nobody arrives at documentation wanting section four. Start from the question:

What you wantWhere to go
Get something running in five minutesInstallationQuick start
Let the agent do something, not just talkYour first tool
Stop it doing something irreversible without a humanHuman-in-the-loop, and confirms() in Your first tool
Stop it saying something, or seeing somethingGuardrails
Have it remember a person between conversationsPersistent memoryMemory
Answer from my documents, with citationsRetrieval
Connect GitHub, Slack, or web searchIntegrations
Run a multi-step process that survives a restartYour first flowDurable runtime
Serve many users, with a queue and a databaseConfiguration
Know what a turn costUsage and accounting
Build the UIFrontend
Understand why something behaves as it doesSpecifications — the design decisions and what was rejected
Look up a type or a functionAPI reference — generated from the source

How the docs are organized

SectionFor
Getting StartedInstall → first agent → first tool → first flow. Every sample on these pages is typechecked against the published package on every build
BuildAgent manifests, tools, and the practical guides for composing them
Context & KnowledgeMemory, sessions, and retrieval
Safety & OperationsDurable execution, approval gates, guardrails, frontend integration, and deployment configuration
IntegrationsThe shipped toolkits, all on one page template
ExamplesCopy-paste starting points
API ReferenceGenerated from the TypeScript types
SpecificationsThe internal design specs — decisions, reasoning, and rejected alternatives
Status

Forge is under active development. Concept docs describe the settled design; code examples show the intended public API as it comes online.