Inspiration

I was doing a lot. Or at least it felt that way. But at the end of most days, I couldn't point to much that felt meaningfully done.

I'd been using a Claude project folder as a running journal — brain dumping, venting, thinking out loud — half expecting it to hold my life context and reflect it back to me over time. It helped in the moment, but it wasn't built for that. I'd come back days later wondering what it actually remembered, whether it had the full picture, whether any of it was accumulating into something.

I wanted something visual. A dynamic view of everything I was working toward, not a chat thread. I wanted to see my priorities, my progress, and my day — all in one place.

But I also knew I didn't want another rigid system. I like structure and I'm fluid at the same time. Don't tell me to work out every Monday, Wednesday, and Friday. Just help me get three runs in this week, around whatever else life throws at me. Flexibility isn't a lack of discipline — it's just how real life works.

The hackathon was the forcing function to build the thing I actually wanted. The concept came from an unexpected place: Inside Out. The idea that we each have core emotional pillars driving our lives felt like the right mental model. Mission Control is built around that — user-defined life pillars, ranked by what actually matters to you, with an AI agent that understands the difference between a run you need to fit in today and a milestone due in three days.


What it does

Mission Control is a personal life operating system with:

  • User-defined pillars ranked by personal priority, plus a default Life Admin pillar so nothing falls through the cracks
  • Milestones and tasks nested under each pillar with deadlines and flexible scheduling
  • Routines for recurring habits like running, pull-ups, or a trading window — structured but moveable
  • Daily check-ins with a brain dump format: what went well, what got dropped, what's ahead
  • A reflection layer that pulls history to show you how far you've come — because progress compounds and we forget

The agent prioritizes tasks into four buckets — Today, Tomorrow, This Week, and Later — with awareness of pillar rank, deadlines, and health task constraints (no two runs on the same day, no clustering fitness tasks).

The system uses a multi-agent pattern built on Google's Agent Development Kit (ADK):

  • An orchestrator agent handles routing and daily prioritization
  • Pillar specialist sub-agents each have their own system prompt tuned to their domain, pulling only context tagged to that pillar

Context is injected via a MongoDB MCP layer. Daily logs are tagged by pillar, which allows the system to retrieve relevant historical context selectively rather than inserting every entry on every request. For longer reflections and weekly check-ins, the agent pulls pillar-specific history. For daily check-ins, it works from a rolling 7-day window plus open milestones.


How we built it

Layer Technology
Frontend + hosting Next.js, Vercel
Database + vector search MongoDB Atlas
Agent framework Google ADK
Context injection MongoDB MCP pattern
Auth Custom auth via Next.js

Built entirely in under one week using Cursor as my primary development environment. Coming from a Google Cloud and Firebase background on Cookbook of Mine, this was a deliberate push into unfamiliar territory.

This was also my first time working with embeddings and MongoDB Atlas Vector Search — using them to surface semantically relevant past entries rather than relying on exact date-based retrieval.


Challenges we ran into

Context persistence over time was the hardest problem. I didn't want to inject every brain dump entry on every request — that's expensive and noisy. The solution was tagging entries by pillar at write time, then retrieving selectively based on what the agent actually needs. Embeddings made this more semantically intelligent than a simple date filter.

Sub-agent design was new territory. Deciding what belongs in the orchestrator vs a specialist, and how to pass context between them cleanly, required more architectural thinking than I expected for a week-long build.

Prioritization logic turned out to be deceptively nuanced. Telling an agent not to schedule two runs on the same day, or not to surface a low-priority Life Admin task ahead of an overdue milestone, required explicit rules layered on top of the ranking system rather than leaving it to model judgment alone.


Accomplishments that we're proud of

  • Shipped a fully functional multi-agent system in under one week
  • First time building with MongoDB Atlas, embeddings, and vector search — all in one project
  • First time designing and implementing a sub-agent architecture from scratch
  • Built a context injection pattern that scales without getting expensive — selective pillar-tagged retrieval instead of brute-force history dumps
  • Less than one week in and already using it daily — that's the real proof of concept

What we learned

Working with MongoDB for the first time reframed how I think about document storage and vector search. The MCP pattern for context injection is something I'll carry into future projects, including Cookbook of Mine.

Sub-agent architecture forces you to think clearly about separation of concerns in a way that single-prompt systems don't. Each specialist agent having its own context scope made the system more accurate and cheaper to run.

And personally — less than one week in, I already feel more on track. Small tasks stack up. Progress compounds. Sometimes you need a system that reflects that back to you.


What's next for Mission Control

  • Quarterly reflection summaries generated by the agent
  • Community pillar templates so users can start with a structure that fits their life stage
  • Deeper routine intelligence — recognizing patterns across weeks, not just days
  • A mobile-first experience for the daily check-in

Built with Google ADK, MongoDB Atlas, Next.js, and Vercel. Developed using Cursor.

Built With

Share this project:

Updates