Inspiration

Calendars and task managers tell us what we should be doing, but they don't prepare the environment where the work actually happens.

When it's time to work, our browsers can contain dozens of tabs from different projects, emails, documentation, research, and distractions. Before starting the actual task, we often have to rebuild the context we need.

I wanted to explore a simple question: What if the browser could prepare itself for the work you're about to do?

I conducted a small survey to better understand how people manage tabs and switch between different tasks. The responses reinforced the problem and inspired me to build Drift.

What it does

Drift is an AI-powered browser workspace that turns scheduled tasks into focused working environments.

You create a task and schedule when you want to work on it. When that time arrives, Drift's AI agent looks at the task and the current browser state, identifies relevant tabs, and organizes them into a focused workspace.

Instead of manually searching through your browser every time you switch tasks, Drift brings the right context forward.

How I built it

I built Drift as a Chrome extension connected to a TypeScript backend through WebSockets.

The Chrome extension gives the AI agent browser capabilities such as:

  • Reading currently open tabs
  • Identifying relevant browser context
  • Creating and managing tab groups
  • Preparing focused workspaces

The backend uses the Amazon Strands Agents SDK to power the agent. The agent follows an observe → reason → act → observe loop, allowing it to inspect the browser before taking action and verify the result afterward.

I use Amazon Cognito for authentication and Amazon DynamoDB for storing tasks and schedules. Google Gemini is used as the underlying model for the Strands agent.

Challenges I ran into

The biggest challenge was getting an AI agent to reliably interact with a real browser.

The browser is constantly changing. Tabs can be opened, closed, moved, or grouped while the agent is making decisions. This meant the agent couldn't simply assume that an action succeeded.

I had to design the system around observing the current browser state, taking actions through tools, and checking the result.

Building reliable real-time communication between the Chrome extension, backend, and agent was another major challenge. WebSockets became an important part of making browser actions happen immediately.

Accomplishments I'm proud of

I'm proud to have moved the idea beyond a concept into a working browser agent.

Drift can take a scheduled task, understand the context required for it, inspect the browser, and use browser tools to organize relevant tabs into a workspace.

I'm also proud of integrating Amazon Strands Agents SDK, Amazon Cognito, and Amazon DynamoDB into a single application while building the browser interaction layer myself.

Most importantly, Drift demonstrates that an AI agent can do more than provide an answer—it can interact with and change the environment where the user works.

What I learned

The biggest thing I learned is that productivity isn't only a planning problem. It's also a context problem.

A task manager can tell you what to do, but there's still a gap between knowing what to do and being ready to do it.

I also learned that building agentic systems requires a different mindset from traditional applications. The agent needs to observe state, reason about it, use tools, and verify the outcome instead of simply generating a response.

What's next for Drift

My next priorities are:

  1. Bring Drift to real users and learn from how people actually use it in their daily workflows.

  2. Make Drift more intelligent and reliable at understanding browser context. I want to improve how it learns which tabs belong to different projects and make workspace transitions smoother.

  3. Integrate Google Calendar and Google Tasks to make scheduling and task management more seamless, giving Drift better context about what the user needs to work on and when.

I also want to eventually allow Drift to restore relevant context across devices without bringing back unnecessary tabs.

The long-term vision is simple:

When it's time to work, you shouldn't have to prepare your environment. The environment should prepare itself.

Built With

Share this project:

Updates

Submission history