Loading sync status...
SABOTAGE BEHAVIORAL ENFORCEMENT AI EST. 01.03.2026 — SASWATA KUMAR DASH
Build Roadmap — Beta Target: July 2026
Started Mar 2, 2026
Beta Target July 2026
Stack Electron · Python · Supabase · Ollama
Budget $0
Mac
Full OS lockdown + AI enforcement
✓ July Beta
Windows
Full lockdown — same Electron code
✓ July Beta
Web
Dashboard · analytics · commitments
✓ July Beta
Mobile
Check-ins + nudges via web app (no lockdown — Apple/Google won't allow)
July Beta (light)
Phase 1
The Nervous System — Local Telemetry
Build the monitor that knows when you're slacking. CPM + active window tracking.
Due: Mar 15, 2026
0 / 8
Set up project folder structure (sabotage-app/)
Install Ollama + pull Llama 3.2 3B — verify it responds locally
Build Python watchdog — track characters per minute (CPM) in real-time
Build active window title monitor (AppKit / pyobjc on Mac)
Define productive window list (VS Code, Terminal, Figma, Docs) vs distraction list
Compute real-time Velocity Score (0.0 – 1.0) from CPM + window context
Log velocity every 30s to local SQLite database
Dog food test: run watchdog on yourself for 1 full work day, check logs
Phase 2
The Analyst — AI Resistance Detection
The AI reads your last 300 words and scores how hard you're sabotaging yourself (0.0–1.0).
Due: Mar 31, 2026
0 / 7
Write the core "Resistance Analysis System Prompt" — the core IP of SABOTAGE
Build text buffer collector (capture last 300 words from active text input)
Connect text buffer to Ollama local API (POST /api/generate)
Parse resistance score 0.0–1.0 reliably from LLM JSON response
Classify resistance type: Fear of Failure / Perfectionism Trap / Simple Distraction
Tune prompt with 20+ real examples until classification accuracy feels right
Lock trigger threshold: score > 0.7 = signal Enforcer to fire
Phase 3
The Hammer — Lockdown UI
Full-screen Electron app that fires when you're sabotaging. No minimize. No close. Binary choice only.
Due: Apr 20, 2026
0 / 7
Scaffold Electron.js app with frame:false, alwaysOnTop:true, kiosk:true
Build the Binary Choice screen UI — minimal, clinical, zero escape UI
Implement choice A: "Execute the Task Now" — starts 20-min sprint timer
Implement choice B: "Lock Machine for 60 min" — activates OS Focus Mode
Log commitment stamp (choice + timestamp + resistance type) to SQLite
Wire Python watchdog → triggers Electron UI via stdin/IPC pipe
End-to-end test: low velocity detected → Hammer fires → choice made → logged ✓
Phase 4
Persistence — Anti-Kill Architecture
User cannot escape via Force Quit, Activity Monitor, or reboot. The enforcement survives everything.
Due: May 10, 2026
0 / 6
Build twin-process watchdog (Process A restarts B if killed, B restarts A)
Mac: LaunchAgent plist — starts SABOTAGE daemon at boot before user login
Windows: Registry run key — HKCU\Software\Microsoft\Windows\CurrentVersion\Run
On reboot: check SQLite for active sessions → lock screen before desktop loads
Programmatic Do Not Disturb toggle — silence Slack, Discord, email during sprint
Bypass test: Force Quit / reboot / kill process / Activity Monitor — ALL must re-enforce
Phase 5
The Cloud Ledger — State Sync
Commitment state survives reboots and syncs across all devices. Can't escape on the work laptop by switching to phone.
Due: May 31, 2026
0 / 6
Set up Supabase project (free tier) — the same DB we'll use for the product
Schema: users, commitment_sessions, resistance_events, velocity_logs
On sprint start: write commitment hash + expiry to Supabase
On boot: local agent checks Supabase for unexpired active sessions → re-lock
REST API layer between Electron app and Supabase (auth via anon key)
Integration test: commit on Mac, reboot → session re-enforced on login
Phase 6
Web + Mobile Light Version
React dashboard + mobile check-ins. Analytics, resistance heatmap, commitment tracking. No OS lockdown on mobile (Apple/Google won't allow it).
Due: Jun 20, 2026
0 / 7
Scaffold React web app (Vite + Tailwind CSS)
Build main dashboard — active sessions, velocity chart, resistance heatmap
Mobile-responsive — works full quality on iPhone + Android browser
Connect to Supabase — all data live from Phase 5's backend
Web push notifications — nudges when velocity score hasn't been updated in 3h
Mobile check-in flow: manual "I'm spiraling" trigger → binary choice on mobile
Cross-device test: desktop lock active, check status on iPhone ✓
Phase 7
Beta Polish + Onboarding
100 founders can install and use SABOTAGE with zero hand-holding.
Due: Jun 30, 2026
0 / 8
Build onboarding "Interview of Commitment" — not a tutorial, a contract signing
User sets intensity level 1–5 at onboarding (used when most rational, not at midnight)
Explicit "Enforcement Rights" grant UI — legal framing, user owns the experience
Analytics dashboard — resistance patterns, velocity over time, self-sabotage heatmap
Mac .dmg installer + Windows .exe installer — one-click install, zero setup
Landing page (keep it sharp: headline, 60-sec demo video, waitlist button)
Waitlist: 100 beta founders via X (Twitter) + LinkedIn posts
Daily dogfood: use SABOTAGE to build SABOTAGE — post Enforcement Reports publicly

BETA LAUNCH — JULY 2026

100 Founders Program. Invite-only. Zero hand-holding. Collect retention data. Build the Series A story.

Send invites to 100 pre-vetted founders (prioritise ones building in public)
White-glove onboarding call for first 20 users
Weekly feedback loop → resistance prompt tuning + UI fixes
Track Day-7, Day-14, Day-30 retention (target: 40%+ at Day-30)
Document 5 velocity delta testimonials for Series A deck
Monthly Active Users
2,500
post-beta ramp
Day-30 Retention
40%+
key Series A signal
ARR — Year 1
$660K
at $22/mo ARPU
LTV
$400
CAC target: $45
Interruption Latency
<800ms
local model target
Detection Accuracy
92%+
resistance classification
Active Phase: Phase 1 — The Nervous System
Next: Set up project folder structure
0 / 51 complete