Inspiration

Everyone drowns in email. Most of it falls into a few buckets: truly urgent, needs a reply, needs to become a task, pure FYI, or junk. Sorting that out is repetitive, low-judgment work , exactly the kind of chore an agent should handle end-to-end, not just chat about. The Taskmaster track's framing , "give the agent a real chore and have it do the whole thing" , was a perfect match for this.

What it does

Inbox Copilot watches an inbox and, for every new email, autonomously decides:

  1. Is this urgent?
  2. Does it need a reply , and if so, drafts one ready to send
  3. Should it become a follow-up task?
  4. Or can it just be archived?

All of this happens asynchronously in the background. The agent runs on its own schedule, completely independent of whether anyone is looking at a dashboard , you could close every tab and it keeps working.

How we built it

  1. A new email is written into Firestore with status "pending".
  2. A scheduled GitHub Actions workflow queries Firestore for pending emails every 10 minutes (and can be triggered manually).
  3. Gemini 3.5 Flash analyzes each one via the Google GenAI SDK, using structured JSON output, and returns: category, priority, a one-line summary, a drafted reply if needed, and exactly one action to take.
  4. The decision is written back to Firestore.
  5. A lightweight local dashboard (FastAPI) polls Firestore and displays what the agent has done — it plays no role in whether or when processing happens.

We also built an optional Google ADK-based version of the same agent logic to showcase the framework directly.

Challenges we ran into

The biggest challenge wasn't the agent logic . it was cloud billing friction. Getting a Google Cloud billing account verified in India required a prepayment step that repeatedly failed card verification. Rather than lose a day of the hackathon to that, we redesigned the architecture around genuinely free-tier Google Cloud services: Firestore's Spark plan requires no billing account or card at all, and GitHub Actions provides free scheduled compute to replace what would otherwise be Cloud Run + Pub/Sub. This turned out to be a better story than the original design , the "runs in the background" claim is arguably stronger when proven by a scheduled job with zero dependency on any deployed server at all.

Accomplishments that we're proud of

  1. A fully working, end-to-end agent pipeline with zero cost and zero billing setup required — anyone can clone this and have it running in under 20 minutes.
  2. Genuine asynchronous processing, verified live via GitHub Actions logs, completely decoupled from the dashboard.
  3. Clean, structured LLM output (JSON schema) that's reliable enough to act on autonomously without a human review step.

What we learned

That "using Google Cloud" doesn't have to mean the most expensive or most complex path ,Firestore's free tier plus a scheduled job can satisfy a genuinely production-shaped architecture (ingest, process, persist, present) without any infrastructure cost at all.

What's next for Inbox Copilot

  1. Swap the simulated inbox for a real Gmail account via the Gmail API and push notifications.
  2. Add a "create calendar event" action alongside task creation.
  3. Add a second reviewing agent that approves drafted replies before they're sent, for a lightweight human-in-the-loop safety net.

Built With

Share this project:

Updates

Submission history