ACAgentic Craft

Part 8 of 8 · Design a Production Agent Runtime

Advanced~20 minHazelJS

Absorb Meridian: Production Design

Copy vs leave checklist, Phase 6 labs, troubleshooting, and the Absorb Meridian memo capstone.

Authors
editorial-team
Published
Last reviewed

You will leave with

  • Fill the Absorb Meridian memo for your product
  • List Phase 6 opt-in labs without inventing Cloud features
  • Troubleshoot overlay / HITL / stub confusion
On this page

Production design: copy vs leave

Absorb checklist

Take into your productLeave as Meridian demo
AgentModule + AgentRuntime wiringIn-memory commerce/risk stores
@Tool + PolicyEngine + durableSuspendAGENT_OS_HITL=0 auto-approve default
DNA overlay safety (no stub tools)DemoLLM as production LLM
Store lock / packageRef storyCopying sample DNA verbatim without review
Skillgate include/deny posturePort 3060 / Meridian route names
Inspector timeline habitTreating v1alpha1 as final forever
SQL durable profile / Flow peer patternSQLite file path + in-memory helpdesk KB as-is
Remote registry when you need multi-machine shareAssuming Cloud is required to chat

Minimum production bar

Before real traffic, complete /learn/agentic-development/from-demo-to-production-checklist and /guides/from-agent-demo-to-production: budgets, goldens, stop reasons, owners, kill switch.

Known gaps / later (do not invent)

Still demo-only (do not ship as-is):

  • In-memory commerce / risk stores (not production SQL for business data)
  • Full Flow saga UI / compensation designer
  • Live cluster K8s as day-one default (dry-run appendix only)
  • Studio product UI, marketplace commerce, CRDs/operator

Phase 6 labs (opt-in — Meridian v1.1)

Skip on the first pass; return after Journeys A–C. Details also in Meridian TOUR.md.

SQL durable runs (Prisma)

bash
export DATABASE_URL=file:./.hazel/meridian.db
export AGENT_OS_DURABLE_BACKEND=sql
npm run db:push
# restart npm run dev — boot: "Durable backend: sql"

RAG helpdesk

bash
curl -s localhost:3060/api/helpdesk/chat \
  -H 'content-type: application/json' \
  -d '{"message":"What is the refund SLA?"}' | jq '{agent, response}'

Flow HITL peer

bash
export AGENT_OS_FLOW_PEER=1
export AGENT_OS_HITL=1
# restart — boot: "Flow HITL peer: on"

Remote registry (F22 / Journey D)

bash
export HAZEL_REGISTRY_URL=http://127.0.0.1:3000
export HAZEL_REGISTRY_TOKEN=<api-key>
npm run store:sync:remote

Kubernetes dry-run

bash
npm run platform:k8s-dryrun

Uses runtimeClassName: kubernetes — not DNA nested vs packageRef. See platform/APPENDIX-kubernetes.md.

Env / HTTP cheat sheet

Env: Meridian .env.example (AGENT_OS_HITL, AGENT_OS_DNA_OVERLAY, AGENT_OS_DURABLE_BACKEND, AGENT_OS_FLOW_PEER, HAZEL_REGISTRY_*, …).

RouteRole
POST /api/chatRouter door
POST /api/support/chatSupport desk
POST /api/ops/chatConcierge / Skillgate
POST /api/fraud/chatFraud triage
POST /api/helpdesk/chatRAG policy FAQ
POST /api/approvals/:id/approve|rejectHITL resume
GET /api/skillgate/reportCuration report
GET /__hazelInspector

Troubleshooting

SymptomCheck
No overlay lines on bootAGENT_OS_DNA_OVERLAY=1; re-run store/platform sync
Refund never pausesAGENT_OS_HITL=1 + restart
“It worked in CLI” but not in appYou hit stubs — use /api/*/chat
Port in useChange PORT or free 3060
Skillgate emptyBoot order; store:sync; report endpoint

Capstone — Absorb Meridian memo

Fill this for your product (15 minutes):

FieldYour answer
Agents needed (roles)
Tools + side-effect class (read / write / irreversible)
DNA vs TypeScript ownership
HITL writes + approval channel
Adopt Store/platform now or later?
Timeline store + on-call owner
Kill switch
First golden tasks

What to do next

  1. Finish the Absorb Meridian memo.
  2. Port one specialist into your HazelJS DI app.
  3. Add goldens + HITL before any irreversible tool.
  4. Re-read /agent-os and the hub /guides/design-a-production-agent-runtime.

Artifact: Filled Absorb Meridian memo (15 minutes)

Sources

  • Meridian Ops READMEhazeljs-meridian-ops/README.md — mental model + quick start
  • Meridian TOUR.mdF1–F22 curl walkthrough
  • Flagship project plan (21)docs/agent-os/21-flagship-project-plan.md
  • HazelJS Agent OS guide
  • HazelJS Agent package

Continue