1. Scaffold
agents/echo/agent.ts and registers echo in project.ts. No .env file is created — outbound auth goes through connections and zap secret set, never environment variables.
2. Write the render function
3. Render deterministically (free, no model)
4. Deploy and iterate
5. Talk to it
turn.started, render, text.delta, tool.planned, turn.completed. Resume a durable session with --session <id>; list them with zap sessions ls. Side-effecting tools run only with --live, and any model call requires a payer (PAYER_MISSING otherwise).
