Back to Home

ATOM Whitepaper

The Architecture of Mindful Technology

1. Executive Summary

ATOM is a Chrome Extension (Manifest V3) that detects prolonged, high-momentum browsing sessions and responds with the least intrusive intervention first: a subtle presence signal, a lightweight “micro-closure” prompt, and only then a stronger “hard interrupt” mode. The system is implemented as a deterministic pipeline running locally in the extension: content scripts measure user interaction signals, the background service worker enriches signals with recent intervention/reaction history, then a multi-stage decision stack selects an intervention category and renders UI in-page. ATOM also logs user reactions (e.g., COMPLETED / SNOOZED / IGNORED) to model “resistance” and unlock escalation when gentle prompts are repeatedly ignored. An optional online AI path exists for journaling analysis via Gemini; this introduces privacy considerations that must be documented precisely. Overall, ATOM’s architecture favors local processing, explicit cooldowns, and state cleanup to remain MV3-reliable while enabling personalization through reaction history.

2. Problem & Insight

The Problem

Modern feeds optimize for continuous engagement; users often notice “doomscrolling” only after minutes have passed. Any intervention that is too aggressive early will be dismissed; too gentle too late is ineffective.

Target Users

  • Users who want gentle accountability while browsing social/content sites.
  • Users who dislike heavy blockers but still want a backstop.
  • Users who respond better to “companion presence” than punitive restriction.

Why Now (Code-grounded)

Manifest V3 makes reliability/state management non-trivial; ATOM explicitly designs around MV3 constraints (service worker wake/sleep, storage restore) and includes cooldown + fail-safe silence behavior.

3. Solution Overview

ATOM implements a least-intrusive-first ladder:

  1. Decide whether to intervene at all (Guard).
  2. If intervene: choose intent/intensity/risk tolerance (Brain).
  3. Select an intervention category with exclusion rules (Curator).
  4. Render UI and log reactions for learning (Actor).
Trace: background.js::handleTick → SignalExtractor → DecisionEngine → StrategyLayer → SelectionLogic → InterventionManager

4. Product UX & Interventions

Categories

  • micro_closure: 2-button pill UI (Finish / Snooze)
  • hard_interrupt: Strong modes (BREATH, TAP, STILLNESS)
  • presence_signal: Orb layer based on silence rules
  • gentle_reflection: Strategy intent affecting copy

Micro-closure UX

Floating pill with 'Finish' and 'Snooze' actions.

Finish → LOG: COMPLETED

Snooze → LOG: SNOOZED

Scroll > 300px → LOG: IGNORED

5. Architecture Overview

High-level modules and decision pipeline.

content.js (Signals + UI) 
  --> background.js (Service Worker Pipeline)
      --> core_logic.js (Extractor + Decision)
      --> strategy_layer.js
      --> selection_logic.js
      --> intervention_manager.js
          --> content.js (Render UI)
              --> LOG_REACTION --> background.js --> Storage

6. Decision Logic & Intelligence

6.1 StrategyLayer

Escalation stats are computed in background. If attention_risk + highResistance + highMomentum + cooldown OK → Strategy elevates to 'aggressive' risk tolerance and 'high' intensity.

6.2 SelectionLogic

Exclusion rules prune candidates. Example: High fatigue blocks aggressive categories. 'Anti-meh' prevents repeating the same recent category.

7. Data & Privacy by Design

Key Data Handling

  • Local Storage: Reactions, journal logs, whitelist stored locally in browser.
  • Online AI (Optional): Journaling notes are sent to Google Gemini only if configured. Privacy policy must enumerate transmitted fields.
  • Permissions: Storage (persistence), Tabs (reload whitelist), Host Permissions (Gemini analysis).

10. Roadmap

0–3 Months

Stability + Correctness. Automated tests, strict privacy policy.

3–6 Months

instrumentation + Onboarding. Explanation of sensitivity modes.

6–12 Months

Privacy-first personalization. Local-only features.