Inspiration

Most productivity tools assume the user has time to constantly reorganize their own day. But the real problem is that new information keeps arriving after the plan is already made. An urgent email appears, a meeting changes direction, a commitment is created, or priorities suddenly shift.

I built Day Orchestrator to explore a different model: instead of asking the user to continually manage another task list, an AI agent should understand the day, detect meaningful changes, and help reorganize work around them.

What it does

Day Orchestrator is an autonomous AI day-management agent.

It uses Google Workspace context in read-only mode, Google Genkit for orchestration, Gemini for reasoning, and Google Cloud Firestore for persistent user-scoped memory.

The agent can:

Understand scheduled events and preparation needs Detect new context that affects the existing plan Replan safe internal work autonomously Capture commitments created during the day Preserve orchestration state across browser sessions Require human approval before consequential external actions

The goal is closed-loop orchestration rather than another chatbot that waits for the user to ask what to do next.

How I built it

The application was built in Google AI Studio with a React interface and a Genkit orchestration flow named dayOrchestrationFlow.

Gemini 3.7 Flash is the primary reasoning model, with restricted Gemini 3.5 fallbacks. Google Calendar and Gmail provide read-only Workspace context.

Google Cloud Firestore stores persistent state under an authenticated, user-scoped path. This allows Day Orchestrator to restore the previous state of the day after the application is reloaded instead of depending only on local browser storage.

The prototype demonstrates a closed loop of planning, preparation, incoming context, autonomous replanning, commitment capture, and approval gating.

Challenges

The biggest challenge was making the agent genuinely stateful and safe rather than simply generating recommendations.

Persistent memory required connecting the application to a real Firestore database and correctly restricting access to authenticated user-scoped data.

Another challenge was separating actions the agent should be allowed to perform autonomously from actions that should remain under human control. Internal planning changes can happen automatically, while consequential external actions remain approval-gated.

The prototype was not deployed as a standalone public Cloud Run application during the hackathon, so the demonstration runs through Google AI Studio while persistent agent state is stored and verified in Google Cloud Firestore.

Accomplishments that I'm proud of

I'm proud that Day Orchestrator became more than a planning interface. It now demonstrates a real agentic loop with persistent memory, autonomous replanning, and human-in-the-loop safety.

A few things I'm especially proud of:

Building a working Genkit orchestration flow with Gemini reasoning Connecting Google Workspace in read-only mode so the agent can use real context safely Persisting user-scoped orchestration state in Google Cloud Firestore Restoring that state after a full browser reload Creating a clear separation between safe autonomous internal actions and approval-required external actions Demonstrating the agent reacting to new context and replanning the day instead of waiting for another user prompt

The biggest accomplishment is that Day Orchestrator behaves like an agent with continuity, not just a chatbot with a task list.

What I learned

Building Day Orchestrator changed how I think about agentic systems.

The valuable part is not simply giving an AI more tools. It is giving the agent a controlled loop where it can observe, reason, act within safe boundaries, remember what happened, and respond when reality changes.

Persistent state is especially important. Without memory, an agent is repeatedly starting over. With Firestore, Day Orchestrator can maintain continuity across sessions.

What's next for Day Orchestrator

The current prototype focuses on orchestrating the workday using Google Workspace in read-only mode. The next step is expanding Day Orchestrator beyond productivity into whole-day and whole-life orchestration.

I want the agent to understand that an optimized day is not simply a day with more work packed into it. It should protect personal time, recognize overload, preserve breaks, and help maintain a healthier balance between work and life.

On days off, Day Orchestrator could become proactive in a completely different way. With permission, it could consider local events, fairs, community activities, family and kids' activities, shopping needs, weather, travel time, opening hours, and the user's interests to suggest or assemble a realistic day.

Instead of asking, “What should we do today?”, a family could open Day Orchestrator and find a plan such as: the weather is best this morning, there is a local festival nearby, one household errand can be completed along the route, and an indoor activity is available later if rain arrives.

Future integrations would also include Microsoft Outlook and other calendar, task, communication, and local-information systems so users do not have to abandon the tools they already use.

The long-term vision is an agent that does not simply manage tasks. It understands the shape of a person's day, adapts when reality changes, protects what matters, and helps make both working time and free time more intentional.

Built With

Share this project:

Updates

Submission history