Inspiration

Shift changes and field-service updates are often spoken quickly while people are moving between jobs. The message may be technically complete but operationally unsafe: duplicate instructions, missing ownership, changed decisions, or a repair that is supposed to remain on hold. A transcript alone does not solve that problem.

What it does

HandoffGuard is a bounded professional agent built with the Strands Agents SDK. It converts a work handoff into structured actions, then calls deterministic review tools to flag likely duplicate/conflicting tasks and missing owner or timing fields. It surfaces only the unresolved decisions a supervisor needs to answer.

It never assigns an owner, invents a deadline, claims a task is complete, clears a safety hold, or executes real work on its own.

How we built it

  • Strands Agents SDK agent loop
  • Amazon Bedrock model provider
  • Custom check_handoff_risks tool
  • Custom find_missing_handoff_fields tool
  • Deterministic Jaccard-based safety pass merged with model-reported risks
  • Browser UI for reviewing the structured handoff
  • Node test suite for duplicate/conflict and missing-field behavior

Why Strands matters

The agent does more than one-shot extraction. It reasons about a handoff, invokes purpose-built tools, incorporates their results, and decides what unresolved questions need human attention. The deterministic tool layer means duplicate/conflict detection does not depend entirely on a model judgment.

Challenges

The hard design constraint was deciding what the agent must not do. Operations software becomes dangerous if it silently assigns owners, clears blocked work, or turns ambiguous speech into false certainty. HandoffGuard therefore keeps execution outside the agent and preserves review evidence.

Accomplishments

  • 7/7 deterministic unit tests passing
  • Strands Agent architecture with two bounded custom tools
  • Review-first safety policy
  • Architecture diagram and reproducible setup instructions
  • Voice-oriented HandoffGuard demo layer

What we learned

Useful agents are not defined by how much autonomy they can take. In operational settings, the strongest agent can remove repetitive interpretation work while preserving exactly the human decisions that should remain human.

What's next

  • Bedrock AgentCore deployment
  • CMMS/dispatch integrations
  • live shift-history reconciliation
  • policy-aware escalation rules
  • team analytics on recurring handoff failure patterns

Built With

Share this project:

Updates