Inspiration

What traice does

Turn messy browsing behavior into structured, synthesized intelligence.

traice is a Chrome Extension that runs silently in the background during a research session. It converts your browsing behavior—highlights, dwell times, pasted screenshots, and scraped prices—into a structured CSV decision matrix and a Markdown checklist the moment you end your session.

Instead of saving static bookmarks, traice captures your intent and stores it in a persistent, queryable semantic memory graph.


🏗️ Architecture & Tech Stack

traice is built on a highly optimized, four-layer architecture designed to keep the browser fast and the data secure:

  1. Capture (Chrome Extension):
    • Monitors mouseup events for text highlights.
    • Runs a 15-second dwell timer to scrape visible text and lazy-loaded prices.
    • Manages inactivity pauses and screenshot ingestion.
  2. Ingestion & Storage (Cloudflare):
    • Workers: Acts as the edge API. The extension uses fire-and-forget fetch calls to ensure zero browser latency.
    • KV: Acts as a temporary session buffer. Events stream here to protect against browser crashes (2-hour TTL).
    • R2: Stores user-pasted screenshots and returns lightweight public URLs.
  3. AI Synthesis (Aedify):
    • A Node.js/Express backend hosted effortlessly via Aedify.
    • Formats the session payload into a behavioral narrative and prompts GPT-4o-mini to force-output a structured CSV matrix and actionable Markdown checklist.
  4. Persistent Knowledge Graph (Supermemory):
    • The final synthesized output is pushed to Supermemory.
    • Sessions are stored semantically, allowing users to query their past research (e.g., "What CRM tools was I comparing last week?").

🔒 Data Flow & Privacy

traice will not bloat your storage. Every research session is completely self-contained and identified by a unique UUID.

  • Active Sessions: Data streams to Cloudflare KV. This is a temporary buffer, not a database.
  • Session End: The Cloudflare Worker merges edge data with local extension data, forwards it to the Aedify backend for synthesis, and deletes the session from KV. Peak KV usage remains around ~200KB.
  • Long-term Storage: The only place data persists is Supermemory, which is explicitly designed to handle long-term, semantic session recall. Screenshots accumulate in Cloudflare R2, remaining well within the generous 10GB free tier.

🚀 Setup & Installation

Please follow these steps in order so you are never blocked waiting on a credential.

Step 1: Cloudflare Configuration

  1. Install Wrangler: npm install -g wrangler and run wrangler login.
  2. Create the KV namespace: wrangler kv:namespace create SESSION_STORE. Note the ID for your wrangler.toml.
  3. Create the R2 bucket: wrangler r2 bucket create traice-screenshots.
  4. Deploy the worker: wrangler deploy.
  5. In the Cloudflare Dashboard, go to R2 -> traice-screenshots -> Settings -> Public Access and enable it. Note the public URL domain.

Step 2: Aedify Backend Deployment

  1. Install the Aedify VS Code extension.
  2. Add the deployed Cloudflare Worker URL to the backend code (for CORS/routing).
  3. Ensure your .env file is listed in .gitignore and .deployignore.
  4. Deploy the backend via the Aedify VS Code extension.
  5. In the Aedify web console, set your environment variables: OPENAI_API_KEY and SUPERMEMORY_API_KEY. Note the live Aedify URL.

Step 3: Supermemory Integration

  1. Create an account at Supermemory.ai and generate an API key.
  2. Ensure this key is added to your Aedify console environment variables. (Note: The push to Supermemory is asynchronous and non-blocking).

Step 4: Chrome Extension Setup

  1. In the extension source code, replace the placeholder URLs with your live Cloudflare Worker URL and R2 Public URL.
  2. Open Chrome and navigate to chrome://extensions/.
  3. Enable Developer mode (top right).
  4. Click Load unpacked and select the traice extension directory.
  5. Start a session and begin researching!

How we built it

Grit & Grind & Love (aura)

Challenges we ran into

Back-end Deployment

Accomplishments that we're proud of

Our biggest technical hurdle was bypassing Chrome’s strict local storage limits by engineering a pipeline that streams raw screenshot data directly to Cloudflare R2, keeping the extension perfectly lightweight. We also built a zero-latency, fault-tolerant edge architecture using Cloudflare Workers and KV, ensuring that even if a user’s browser crashes mid-session, their continuous behavioral data is never lost. Finally, we successfully tamed chaotic, unstructured browsing data by building an Aedify backend that reliably forces an LLM to output a deterministic, perfectly formatted CSV matrix every single time.

What we learned

Aedify, Supermemory, Cloudflare

What's next for traice

Our immediate next step is building multiplayer collaborative sessions using WebSockets, allowing teams or partners to stream their browsing behavior into a single, shared decision matrix in real-time. We also plan to make our Supermemory integration proactive, meaning traice will automatically surface your past research the moment it detects you browsing a topic you've explored before. Long-term, we want to expand beyond the browser with a local desktop client that routes the synthesis payload to offline, on-device models for total enterprise privacy.

Built With

Share this project:

Updates

Submission history