# Gyrus — agents working alongside your browsing

By Arya Garg

Canonical source: https://aryagarg23.com/writing/gyrus

Archive date: 2025-07 (historical site date; not a verified publication date)

Register: Technical

Tags: HACK, SPEC_ART

Section: [Hackathons](https://aryagarg23.com/about#hackathons)

Field notes from its future: https://aryagarg23.com/futures/gyrus

## Main

Raihan Rafeek, Kaaustaaub Shankar and I had built enough AI things by then that the easiest kind of AI help was starting to bug me. You ask a question, get an answer and move on. If a tool keeps taking away the work that helps you understand a subject, you can end up with a good answer and no idea how you got there.

Gyrus was our try at going the other way. Your browser already knows a lot about what you're trying to do. It has the query you started with, the tabs you opened, the source that led you to the next one, and the page you kept coming back to. Then you open some other AI app and explain the whole task again from scratch.

So we put the agents inside the browser. Your browsing gave them context. Different agent crews could gather material, organise it, quiz you, or do other work based on what you were doing. You could talk to them through an in-browser CLI without moving the task somewhere else.

Here's the browser in demo mode. There's no backend behind it, so the sources the crew finds are stand-in pages, but the search, the sorting and the memory graph work the way they did.

[Interactive figure: Gyrus prototype]

The Devpost describes it as using AI to support thinking instead of replacing it. The browser was how we tried to do that.

Gyrus started out as Clay. We renamed it for the hackathon in case Weights & Biases minded the name. Some of that research later carried on into Friction, with a different group and a very different interface.

## Technical

| Gyrus flow |
| --- |
| Electron browser |
| ↓ |
| Browsing metadata / page context |
| ↓ |
| PII scrubbing |
| ↓ |
| Intent routing |
| ↓ |
| Neo4j memory graph |
| ↓ |
| Agent router |
| ↓ |
| CrewAI workflows |
| ↓ |
| Search ‖ Research ‖ Sensemaking |
| ↓ |
| GDELT / NewsAPI / Exa / Semantic Scholar / arXiv |
| ↓ |
| Collected material |
| ↓ |
| Weave tracing + stored context |
| ↓ |
| In-browser CLI / browser UI |

![How a browsing signal becomes an assist action: PII scrubbing, memory graph plus intent classifier, crews. Concept sketch of the shipped architecture](https://aryagarg23.com/figures/gyrus/crew_routing.png)

Gyrus was an Electron browser connected to a Python-backed agent system. Browsing metadata and the current page's context went to an intent-routing layer. The project experimented with a classifier trained/fine-tuned around the ORCAS-II query-intent dataset, about two million entries.

Neo4j stored the relationships between queries, concepts, browsing history, and retrieved material. CrewAI orchestrated task-specific agent workflows, and LangChain components were used around memory/reasoning. The external retrieval layer included GDELT, NewsAPI, Exa, Semantic Scholar and arXiv. Weave traced agent execution.

Raihan Rafeek built the PII-obfuscation layer that ran before information entered the memory path. The user talked to the system through an in-browser command-line interface while still browsing inside the same app.[^gyrus-technical-1][^gyrus-technical-2]

[^gyrus-technical-1]: [Gyrus — Devpost](https://devpost.com/software/gyrus-an-agentic-browser-to-increase-intelligence)

[^gyrus-technical-2]: [Current repository](https://github.com/Aryagarg23/Gyrus)

## Personal

We flew to San Francisco for WeaveHacks.

There is a 3 a.m. hotel-lobby photo on the Devpost, and it's a better record of the weekend than a polished project description. We didn't win.
