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_riskstool - Custom
find_missing_handoff_fieldstool - 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
- amazon-bedrock
- css
- html
- javascript
- node.js
- strands-agents-sdk
Log in or sign up for Devpost to join the conversation.