TheAgentHealth

← All documentation

Router, backend and route checks

agenthealth.yaml connects a direct agent to a router readiness signal, a direct A2A backend, an A2A routed path and an explicitly opted-in read-only route probe. Replace every endpoint with your deployment's configured interfaces. The sample ports/paths are illustrative, not product defaults. The functional route must be non-destructive and return the fixed ready marker.

agenthealth doctor examples/router-check/agenthealth.yaml

Router, direct-backend and routed-path checks preserve separate evidence. The CLI route probe does not prove communication from the direct agent runtime. See the router guide for safety and limitations.

Phase 10 compatibility

This nested example remains valid. To share a backend across paths, give that node an explicit id and use ref edges. Each communication path keeps a distinct node and its own checks; edge policy remains independent. See the graph example. Graph fields require v0.8.0 or newer; v0.7.0 binaries reject them.

Kubernetes compatibility

This example includes an explicitly active route check; review it before use in repeating probes. Use in-cluster addresses and retain separate router/backend/route evidence. See deployment scenarios and the deployment guide.

Configuration files

agenthealth.yaml

version: v1
targets:
  - name: direct-agent
    type: agent
    endpoint: http://localhost:8080/health
    dependencies:
      - name: router-readiness
        type: router
        endpoint: http://localhost:8081/ready
        http:
          expected_status: [200]
        dependencies:
          - name: downstream-direct
            type: a2a
            endpoint: http://localhost:9090
          - name: downstream-via-route
            type: a2a
            endpoint: http://localhost:8081/agents/downstream
          - name: route-read-only-probe
            type: router
            endpoint: http://localhost:8081/routes/read-only-probe
            checks: [functional]
            http:
              expected_status: [200]
              body_contains: ready
              max_body_bytes: 1024