| What it is | A deployable product: standalone agent runtime you configure | A code framework: Python/JS libraries you import and build around |
| Creating an agent | Declarative config, Admin Dashboard, or plain-English AI builder — live without redeploy | Write code, then build, test, and redeploy your service for every change |
| Who can build | Engineers and non-engineers through the dashboard | Engineers only |
| Runtime | One self-contained Go binary + PostgreSQL | Lives inside your Python/JS process — hosting, scaling, and hardening are on you |
| Ops layer (auth, admin, sessions, audit) | Included: Ed25519 JWT auth, admin dashboard, session persistence, audit log | Assembled by your team; LangSmith adds paid observability, not an agent-authoring or auth layer |
| Framework coupling | None in your code — your product speaks plain REST + SSE | Your codebase inherits the framework’s abstractions and breaking changes |
| Structured grounding | Typed knowledge graphs: JSON Schema in, deterministic retrieval tools out | DIY from graph stores, extractors, and custom retrievers |
| GitOps | brewctl applies versioned config bundles atomically, with diff and drift detection | Your code is the config; agent changes ship like application releases |
| Customization ceiling | High via config, MCP tools, and plugins — less infinite than raw code | Practically unlimited — it is code |