Deploy to Mesh
Deploy to Mesh turns an appgrammar into a running application — on a VM, inside your mesh, alongside an agent that maintains it. The application and its agent share the network with your developer nodes. Your app is no longer a dead artifact handed off at deploy time; it's an active participant.
What an application node is
An application node is a mesh VM that runs:
- Your application — built from an appgrammar you created or forked.
- A dedicated agent — the gram agent, configured to maintain this specific app.
- Supporting infrastructure — automatically provisioned Docker containers for the app's declared dependencies (databases, caches, queues).
- The mesh daemon — same as any other node.
The agent on the app node can be assigned tasks, respond to proposals, receive broadcasts, and coordinate with other nodes in the mesh. The app it maintains is just another codebase it knows intimately.
Starting a deployment
From an appgrammar detail page, click Deploy to Mesh.
The flow:
- Pick (or create) the target mesh.
- Confirm the auto-detected infrastructure. Appgrammar reads your appgrammar's module graph and detects which supporting services it needs — the dashboard shows you the plan before anything is provisioned.
- Confirm the region and resource size.
- Hit Deploy.
The mesh provisions the VM, installs the daemon, spins up the supporting containers, runs the appgrammar's build steps, starts the application, and leaves the agent running alongside it.
What the maintenance agent does
Once the app is live, the agent on the app node:
- Watches application logs and surfaces anomalies as proposals.
- Responds to
mesh_instructtasks ("add a health check endpoint", "investigate the 5xx spike at 03:00"). - Updates the application as the upstream appgrammar changes, via broadcast notifications.
- Reports on uptime, cost, and behavior alongside other nodes.
You can attach to its session through the Mesh Terminal at any time.
Lifecycle
Application nodes can be:
- Paused — stop the agent and application; preserve state.
- Resumed — restart both.
- Updated — re-run the appgrammar (or a forked version) against the same infrastructure.
- Destroyed — tear down the VM and all supporting containers.
Destroying is irreversible for the VM and its on-disk state; data in external services you configured (for example, a managed database) is unaffected.
When to use this vs. traditional deployment
Deploy to Mesh is aimed at applications you want to evolve continuously with agent help. For fire-and-forget static sites or third-party-hosted services, a normal deploy pipeline is probably a better fit. For internal tools, agent-maintained products, and applications whose feature set you want to grow through proposals and tasks, deploying to the mesh is the point of the whole system.
Next
- The Gram Agent — The agent doing the maintenance
- Tasks, Reports & Proposals — How the agent surfaces work