cacheplane/dawnai

Build LangGraph agents like Next.js apps.

What it solves

Dawn is a TypeScript meta-framework designed to remove the boilerplate associated with building LangGraph agents. It allows developers to author AI agents and workflows as filesystem-routed apps, similar to how Next.js handles web pages, reducing the manual wiring of nodes, edges, and configuration files.

How it works

Dawn uses a filesystem-based routing system under src/app/ where developers define agents, workflows, or chains. By exporting a simple agent() descriptor, Dawn automatically discovers the route, wires in local tools, and generates the necessary langgraph.json configuration for deployment to LangSmith. It provides a built-in SQLite checkpointer for durable threads, a local development server with Agent Protocol endpoints, and a TypeScript-based type generation system to ensure end-to-end type safety for route parameters and tool I/O.

Who it’s for

TypeScript developers who want to build complex, stateful AI agents using LangGraph but want a more structured, high-level framework that handles the routing, deployment artifacts, and local development loop.

Highlights

  • Filesystem Routing: Colocate state schemas, tools, and tests directly within the route folder.
  • Boilerplate Reduction: Automatically generates the langgraph.json package and wires tools into the graph.
  • Durable Threads: Ships with a default SQLite implementation for thread persistence and human-in-the-loop pauses.
  • Integrated Testing: Includes @dawn-ai/testing for CI-safe harnesses and fixture replay.
  • Execution Isolation: Optional sandbox support via @dawn-ai/sandbox (with a Docker reference implementation) for secure shell and filesystem calls.
  • Flexible Execution: Supports agent (LLM-driven), workflow (deterministic), graph, or chain route types.