What stays the same
Your existing investment carries over:- Graph code — Your LangGraph agents work without modification.
- SDK client calls —
get_client(),client.threads,client.runs.stream()— all the same. - Agent Protocol frontends — Agent Chat UI, LangGraph Studio, CopilotKit — all compatible.
- Thread state model — Threads, checkpoints, and state inspection work identically.
- Streaming — Same SSE modes and event format.
- Human-in-the-loop — Same interrupt/resume patterns.
What changes
| LangSmith Deployments | Aegra | |
|---|---|---|
| Config file | langgraph.json | aegra.json (falls back to langgraph.json) |
| Client URL | https://your-deployment.langsmith.com | http://localhost:8000 (or your host) |
| Database | Managed by platform | Your own PostgreSQL |
| Auth config | Dashboard settings | Python handler in aegra.json |
| Tracing | LangSmith (automatic) | OTLP via environment variables |
| Deploy command | langgraph deploy | aegra up or docker compose up |
Step-by-step migration
Copy your graph code
Copy your graph modules into a new project directory. Your LangGraph code works as-is — no changes needed.
Create aegra.json
Replace your After (The
langgraph.json with aegra.json. The structure is similar:Before (langgraph.json):aegra.json):graphs section is identical. Aegra also reads langgraph.json as a fallback, so you can skip this step initially and rename later.See the configuration reference for all available options including auth, HTTP, CORS, and store settings.
Set up your environment
Create a If you already have a PostgreSQL instance, set
.env file with your API keys and database settings:DATABASE_URL directly:Start the server
http://localhost:8000.Migrate authentication
LangSmith Deployments configures auth through a dashboard. Aegra uses a Python handler instead. Create an auth file and reference it inaegra.json:
Migrate tracing
LangSmith Deployments sends traces to LangSmith automatically. With Aegra, you configure tracing via environment variables and can send to any OTLP-compatible backend. To send traces to Langfuse:Features not yet available
A few features from LangSmith Deployments are not yet supported in Aegra. See the feature support page for the full matrix. Key gaps:- Cron / scheduled jobs — Coming soon.
- RemoteGraph — Not yet planned.
Get help
- Discord — Join the community for questions and discussion.
- GitHub — Open an issue for bugs or feature requests.