Inspiration
AI agents are shipping to production faster than observability tools can keep up. We watched teams flying blind — token costs spiking overnight, tool calls silently failing, agents looping on bad outputs with no visibility into why. Existing APM tools monitor APIs and services. None speaks the language of agents — where the "code" is a prompt, the "function" is a tool call, and the "bug" is a hallucination. We built Bruce because every agent in production deserves a guardian.
What it does
Bruce is an AI-powered observability copilot for AI agent infrastructure. It:
- Instruments every agent runs with OpenTelemetry — capturing traces, token spend, tool calls, latency, and errors
- Ships telemetry to Dynatrace via Bindplane OTel pipeline
- Detects anomalies in real time across all monitored agents
- Diagnoses root cause using Gemini 3.5 Flash — explaining why an agent failed, not just that it failed
- Generates playbooks — actionable fix steps, automatically
- Alerts before failures reach users
How we built it
Built on Google Cloud Agent Builder with Gemini 3.5 Flash as the reasoning core. Agents are instrumented with the OTel SDK, and telemetry is routed through Bindplane into Dynatrace. Bruce's diagnosis agent queries Dynatrace via MCP, pulls trace context, runs multi-step reasoning to identify the anomaly pattern, and generates a structured playbook. Frontend is a React dashboard surfacing live agent health, traces, token spend, and diagnosis results. Backend runs on Cloud Run with Firestore for state persistence.
Challenges we ran into
- Mapping AI-native concepts (prompt tokens, tool call chains, agent memory) onto OTel semantic conventions not designed for agents
- Getting meaningful signal from Dynatrace MCP fast enough for real-time diagnosis
- Designing a diagnosis prompt that produces actionable playbooks rather than generic advice
- Keeping the demo agent realistic enough to trigger genuine anomalies under a 3-day build window
Accomplishments that we're proud of
- End-to-end trace visibility from agent invocation to tool call response — all in Dynatrace
- Gemini diagnosis layer that produces human-readable root cause explanations with zero manual tuning
- Clean 9-page console covering every observability surface an agent team needs
- Fully open-source, deployable on Google Cloud in under 10 minutes
What we learned
Agents fail differently from services. Latency spikes mean something different when the call is to an LLM. Token spend is a first-class signal, not a footnote. Observability for the agent era needs its own semantic layer — and OTel plus Dynatrace gets you 80% of the way there if you instrument thoughtfully.
What's next for Bruce — AI Agent Observability Copilot
- Multi-agent topology map — visualize how agents call each other and where failures propagate
- Cost forecasting — predict token spend based on traffic patterns
- Auto-remediation — Bruce doesn't just suggest the fix, it executes it
- Supernerve integration — plug Bruce into enterprise agentic workflows as the observability backbone
- Support for more agent frameworks — LangChain, LlamaIndex, CrewAI
Built With
- antigravity
- bindplane
- docker
- dynatrace
- express.js
- firestore
- gemini
- google-cloud-agent-builder
- google-cloud-build
- google-cloud-run
- kiro
- model-context-protocol-(mcp)
- next.js
- node.js
- opentelemetry
- pnpm
- react
- shadcn/ui
- tailwind-css
- terraform
- turborepo
- typescript
Log in or sign up for Devpost to join the conversation.