Inspiration

A small food bank runs on volunteers and a clipboard: a pile of donations to count, a fridge about to turn, a list of families with different sizes and diets, and a guess at what to ask for. Get it wrong and produce rots while families go without dairy.

What it does

Logs the intake queue into stock, flags what's about to spoil with days left, projects this week's demand against on-hand by category (and names the families a gap hits), builds household-capped constraint-aware pick lists that hand out expiring items first, and drafts the "what we need / use this week / surplus to share" community message.

How we built it

  • Strands Agents SDK — one operations Agent with eleven @tools.
  • Amazon Bedrock — Claude Haiku 4.5.
  • Amazon Bedrock AgentCore — BedrockAgentCoreApp entrypoint, morning cron; the donation intake queue is fed by a photo/vision step.
  • A deterministic core (core.py, 10 tests): donation merge, expiry windows, demand-vs-stock math, the constraint-aware allocation, the ask text. Seed files are immutable so the demo is repeatable. ## Challenges we ran into Fair allocation under scarcity: capping by household size, respecting diets, and still emptying the soonest-to-spoil shelf first — all in tested code so the agent can't quietly give one family five loaves of bread. ## Accomplishments that we're proud of The whole weekly plan and the community ask run offline (make demo). The agent turns the numbers into something a tired volunteer can act on in two minutes. ## What we learned "What are we short?" only means something against real projected demand — you need the household math in tested code before the model can be trusted to raise an alarm. ## What's next for FoodBank

Built With

  • agentcore
  • haiku
  • python
  • strand-agents
Share this project:

Updates

Submission history