Deployment Options

Choose the Node target unless a named platform constraint determines otherwise. Choose LangSmith when that platform must own the LangGraph deployment envelope. Choose Hono only when a web-standard edge runtime is required and the application fits its explicit capability gate.

Choose a target

TargetArtifactRuntime and protocolMiddlewareStorageFilesystem and sandboxNode requirementEvidence boundary
Node.dawn/build/server.mjs and a generated DockerfileDawn HTTP runtime: Agent Protocol and AG-UIDawn HTTP middleware is includedLocal defaults or injected/shared storesFilesystem features and a configured execution sandbox are availableNode 24+Local runtime and container tests; validate your deployed proxy, stores, and model path
LangSmith.dawn/build/langgraph.json and one entry per routePlatform-owned LangGraph entries, not the Dawn HTTP serverDawn HTTP middleware is absentPlatform/runtime-ownedNo Dawn sandbox manager or HTTP filesystem surfaceGenerated config currently says Node 22 while Dawn requires Node 24+Validate authentication and execution on the target platform
Hono.dawn/build/modules.edge.mjs, stores.mjs, app.mjs, and wrangler.tomlWeb-standard Dawn HTTP runtime: Agent Protocol and AG-UIIncluded when discovered at build timeGenerated request-scoped Postgres stores, or hand-composed storesFilesystem, shell, workspace, skills, long-term memory, and sandbox surfaces are gatedNo Node runtime requirement for the emitted workerLocal workerd and Node round trips are not proof of a live provider deployment

Node and LangSmith are the defaults. Hono is opt-in. Specifying build targets replaces the defaults; it does not add to them:

dawn.config.ts
import { config } from "@dawn-ai/cli"
 
export default config({
  build: { targets: ["node", "hono"] },
})

Validate and build

Run the checks in this order so contract failures appear before artifact inspection:

bash
dawn check
dawn build
dawn verify

dawn check validates the authored app and selected target constraints. dawn build emits the selected artifacts. dawn verify repeats the app, route, typegen, dependency/environment, and runtime-readiness phases against the resulting project state. A green command is not a substitute for testing the deployed authentication, routing, storage, and provider boundary.

Target guides

Production foundations

Deployment packaging does not decide data durability, replica coordination, or the external security boundary. Review these before exposing any target:

What Dawn does not do

Dawn emits deployment artifacts; it does not provision infrastructure, host applications, or manage secrets. Use the Deployment Options chooser with the target platform's hosting and security controls.

Self-hosting

Use Node and Docker when you want to run the full Dawn HTTP runtime on infrastructure you operate.

Troubleshooting

  • If expected files are missing, inspect build.targets: an authored list replaces the Node and LangSmith defaults.
  • If dawn build succeeds but the deployed host cannot import a package, verify that packages imported by emitted artifacts are declared where the host installs or bundles production dependencies.
  • If local protocol tests pass but the target fails, test the target's real transport envelope, authentication layer, environment injection, and durable stores. Node/Hono HTTP evidence does not establish LangSmith behavior, and local workerd evidence does not establish a live edge provider.

Deploying to production (Node/Docker)

This section moved to Node and Docker.

Deploying on Kubernetes

This section moved to Kubernetes.

The LangSmith / LangGraph Platform path

This section moved to LangSmith.

Edge runtimes

This section moved to Edge and Hono.

The @dawn-ai/cli/fetch entry point

See Edge and Hono.

The hono build target

See Edge and Hono.

Why the stores are per-request

See Edge and Hono.

What the edge cannot serve

See Edge and Hono.

What is proven, and what is not

See Edge and Hono.

Continue with Production Topology, Persistence and Tenancy, and Security Architecture before exposing a deployment.