Patterns
Multi-Agent & Multi-Connector

Multi-Agent & Multi-Connector

Grounded is built for situations where one tenant may have:

  • multiple agents
  • multiple connectors per agent
  • multiple snapshots per agent
  • multiple model or release variants flowing through traces

Use Agent Scope Deliberately

For direct traces, resource.agentId is the main routing key.

For control-plane access, agent-scoped secret keys are usually the safest choice for individual services.

Recommended Trace Metadata

For multi-model or multi-release setups, capture:

  • resource.agentId
  • resource.snapshotId
  • resource.environment
  • resource.release
  • tags for route or experiment
  • span inputs with model names when relevant

Example:

const trace = tracing.startTrace({
  name: 'support.reply',
  sessionId: 'chat_123',
  userId: 'user_123',
  tags: ['router:refunds', 'experiment:v2'],
  resource: {
    agentId: 'agt_support',
    snapshotId: 'snap_support_20260306',
    environment: 'production',
    release: 'api-2026-03-06',
  },
});

Multiple Connectors

One agent may also have multiple connectors, for example:

  • one llm-tracing connector for model traces
  • one session-data connector for surrounding product data

That lets Grounded correlate direct SDK traces with broader session context when both are available.

Operational Pattern

  • use a separate key per service
  • use a separate agent per major product surface
  • keep release tags stable
  • if you run multiple models, capture the model at the span level, not just in arbitrary logs