Inspiration

What it does

How we built it

Challenges we ran into

Accomplishments that we're proud of

What we learned

What's next for Everyday Assist, Evidence First

Inspiration

Everyday assistants reduce friction, but silent actions can turn ambiguous requests into risky messages, purchases, appointments, or account changes. We built an assistant that is useful before it is powerful: it exposes its plan, identifies missing information, and keeps consequential actions with the human.

What it does

Everyday Assist turns natural-language requests into bounded, reviewable plans. It classifies requests, detects urgency, proposes concrete steps, adds domain safeguards, and states whether human review is required. The auditable external-action list is always empty in this release, so the assistant cannot claim it sent, bought, booked, or changed anything.

How we built it

The project uses Python and the Strands Agents SDK. A Strands Agent receives a system prompt requiring the plan_request tool, which delegates to a deterministic planning core and returns structured JSON. This separation makes safety rules testable and provides an offline mode when cloud credentials are unavailable.

Challenges

We had to decide where model flexibility should stop. Free text helps understand a request, while deterministic code makes safety guarantees verifiable. Categorization, urgency, human-review requirements, and the no-external-actions boundary therefore live in a small local module; Strands handles orchestration and explanation.

Accomplishments

  • Real Strands Agent factory with a registered planning tool.
  • Deterministic offline mode with the same auditable plan structure.
  • Explicit human approval and no-external-action guarantees.
  • Automated tests for planning, registration, and runtime routing.
  • MIT-licensed, reproducible source code.

What we learned

Agent safety is clearer when it is visible product behavior. Structured outputs, tool boundaries, and an offline reference path make claims testable and help users understand exactly what happened.

What's next

We plan an optional review interface and user-approved connectors with preview-before-send behavior. Every connector will remain behind an explicit human approval gate.

Built With

  • agents
  • strands
Share this project:

Updates

Submission history