Klariti is an antisocial social platform: it borrows the dynamics that power the attention economy and re-routes them toward helping you spend less time online. This page explains what Klariti is, the core problem it addresses, and the key concepts and platforms you’ll encounter throughout these docs.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/klariti-os/klariti-os/llms.txt
Use this file to discover all available pages before exploring further.
The problem
The internet stopped being a tool and became an environment engineered to keep you inside it. The social mechanics that make that work — streaks, peer pressure, shared commitments, challenge loops — are not inherently bad. Klariti takes those same mechanics and points them at focus instead of engagement. You set an intention. You invite the people you actually want to focus with into a shared challenge. You use a physical NFC tag to lock your phone. The social layer is there to make it stick, not to pull you back in.Klariti does not replace platform recommendation algorithms or add a feed of its own. It has no engagement loop to fall into — by design.
Key concepts
Intents & Challenges
The basic unit of focus. An intent bundles a goal with Gray Engine rules. A challenge adds a deadline, friends, and a group pause condition.
Gray Engine
The content mediation layer. Given your goal and rules, it decides how to modify a webpage: hide, blur, or highlight sections. Predictable, explainable, and reversible.
Ktags
Physical NFC tags that gate focus sessions on iOS. Tap to lock, tap the same tag to unlock. No software bypass.
Friends
The accountability layer. Shared challenges only work if the group is real — Klariti has no public feed to drift into.
Platforms
Klariti runs across four surfaces that share a single API layer:| Platform | Package | Purpose |
|---|---|---|
| Web dashboard | @klariti/web | Manage intents, challenges, friends, and rules |
| Browser extension | @klariti/xt | Applies Gray Engine rules to pages in real time (MV3) |
| iOS app | — | NFC-gated focus sessions with native app blocking via Screen Time |
| API | @klariti/api | Orchestrates classification, rules, and social state (port 4200) |
Where to go next
Quickstart
Clone the repo, configure environment variables, run migrations, and start the dev server in minutes.
Architecture
Monorepo layout, API module structure, auth package exports, and Vercel deployment notes.
API Overview
Explore the full REST surface, ts-rest contracts, and client setup.
Gray Engine
Understand how URL classification drives per-page content modification rules.