Skip to content

Runtime Guide

This guide covers runtime-focused MIG v0.1 deployment options for migd.

For first-time setup, use Quickstart.
For full operator documentation, use User Guide.

Terminal window
MIGD_AUTH_MODE=none migd
Terminal window
MIGD_AUTH_MODE=jwt \
MIGD_JWT_HS256_SECRET=<set-a-strong-secret> \
migd

In JWT mode:

  • Authorization: Bearer <token> is required.
  • Token must include tenant_id (or tenant) claim.
  • Capability scope checks use scope or scopes claims.

Enable metrics (default on):

Terminal window
MIGD_ENABLE_METRICS=true migd

Prometheus scrape endpoint:

  • GET /metrics

Enable gRPC listener:

Terminal window
MIGD_GRPC_ADDR=:9090 migd

Services exposed:

  • Discovery (Hello, Discover)
  • Invocation (Invoke, StreamInvoke)
  • Events (Publish, Subscribe)
  • Control (Cancel, Heartbeat)
Terminal window
MIGD_NATS_URL=nats://localhost:4222 migd

Published MIG events are mirrored to subjects:

  • mig.v0_1.<tenant>.events.<topic>
Terminal window
MIGD_NATS_URL=nats://localhost:4222 \\
MIGD_ENABLE_NATS_BINDING=true \\
migd

Request/reply subjects:

  • mig.v0_1.<tenant>.hello
  • mig.v0_1.<tenant>.discover
  • mig.v0_1.<tenant>.invoke.<capability>
  • mig.v0_1.<tenant>.events.<topic>
  • mig.v0_1.<tenant>.control.cancel.<message_id>
  • mig.v0_1.<tenant>.control.heartbeat
Terminal window
MIGD_AUDIT_LOG_PATH=./migd-audit.jsonl migd

Each invoke audit record is appended as one JSON line.

Use endpoint:

  • GET /mig/v0.1/stream

Frame contract:

  • kind=request + capability + payload invokes capability.
  • kind=control + payload.action=cancel sends cancellation.

Responses are emitted as kind=response or kind=error frames.