•
2 min read
Agentic Operations Harness

The harness is closer to an agentic coding tool like Claude Code than a chatbot, and it sits on top of an agent architecture I rebuilt twice as the field moved.

  • Migrated the agent fleet through three generations: hand-rolled orchestration → Pydantic AI (with MLflow) → Claude cloud-managed agents — exposing internal tools over MCP and supporting bring-your-own-key.
  • Encoded business-specific workflows as modular skills (SKILL.md-style files) rather than baking them into the agent’s core prompt: only a lightweight skill index loads into the system prompt, with each skill’s full instructions loaded on demand — letting the harness scale to many workflows without bloating context.
  • Built tool authorization and context-scoping as a shared backend core rather than a harness-specific feature: the chat-based harness and the voice layer’s profile-based behavior both run on the same tool catalog, entitlement checks, and progressive-disclosure logic instead of duplicating it per channel.
  • Built the harness as a role-specific agent framework giving property staff tool-using AI workflows with human approval on risk-bearing actions.
  • Designed tenant scoping throughout the harness so an agent’s context, memory and available tools never cross property/organization boundaries in a multi-tenant deployment.
  • Evaluated LangSmith, LangGraph, Vellum and Galileo, and AWS Bedrock, on latency, traceability, cost and vendor lock-in before committing to an agent framework.
  • Integrated the platform’s RAG/knowledge layer directly into the harness so agents ground responses in the same retrieval pipeline used elsewhere on the platform.