Capabilities

What Sathi can do, as an inventory: status, actions, authorization, and the data each capability touches. The same inventory is served as JSON for software.

This layer is kept in English so it stays current; the full story lives at /principles in Nepali, English, Japanese, and Hindi. Machine map: /llms.txt. Everything here is true as of 2026-08-20; plans are labeled as plans.

Access

  • Deployment: private deployment — family phase.
  • Signups: closed; trust opens outward in rings (builder → household → kin → communities → anyone).
  • Guest: open — guest chat at https://sathi.ai requires no account and is not remembered.
  • API: no public API keys; the REST API serves the deployment's own accounts.

Authorization model

Every action follows an explicit authority ladder: observe → advise → draft → act with confirmation → act & report → act silently. Almost everything sits at 'act with confirmation' today: Sathi proposes, a human taps yes, and every action leaves an audit record. Grants are per-domain, explicit, and revocable. Content fetched from the outside world (web pages, email) is treated as data, never as instructions.

Inventory

Machine-readable twin: /capabilities.json. Statuses: available (live today) · experimental (built, but dark, flagged, or prototype-grade) · planned (named on the roadmap, not built) · conceptual (a direction, honestly unbuilt).

Memory & understanding

available

A bi-temporal claims store built from the person's own archive: every belief carries when it was true, how confident, and provenance to its source. Retrieval abstains rather than invents.

Actions
recall · inspect · correct · reject · delete
Authorization
Passive for the owner's own context; corrections and deletions are user actions. Deletion beats archive immutability, provably.
Data
Claims, entities, observations — derived from conversations, documents, and imports; stored in the deployment's own Postgres.

Conversation

available

Chat grounded in the person's own context, in Nepali, English, Japanese, or Hindi. Guest mode answers without an account and retains nothing.

Actions
converse · search history
Authorization
Account-scoped; guests are unauthenticated and unremembered.
Data
Conversations persist to the owner's archive (never for guests); each reply's context assembly is traceable.

Documents (vault)

available

An encrypted vault that reads what it keeps: uploaded documents are understood (title, category, dates, summary) and connected to life — a visa page becomes an expiry reminder.

Actions
search · read · save · share · delete · download
Authorization
Owner-only by default; sharing is an explicit per-document grant. Chat attachments stay out of the vault unless promoted.
Data
Files encrypted at rest on owned infrastructure; text layers extracted locally where possible.

File authoring

available

Sathi writes real files and hands them over in chat: PDF, Word, Excel (with charts), PowerPoint, CSV, Markdown, plain text and code — plus generated images and narrated audio.

Actions
create
Authorization
On request; daily count and storage quotas apply.
Data
Generated files are stored encrypted as the member's own documents (origin: generated).

Calendar

available

Reads the connected calendar for briefs and questions; creates, updates, and deletes events by proposal.

Actions
search · read · create · modify · delete
Authorization
Reads are account-scoped; every write is a confirmation card — nothing lands on the calendar without a human yes.
Data
Google Calendar today via the calendar connector; a self-hosted CalDAV core is planned behind the same seam.
Tenses
planned: self-hosted CalDAV, multi-account write policy

Reminders, tasks & alarms

available

Deadlines extracted from life (a visa expiry, a spoken date) become reminders, timers, and alarms.

Actions
list · create · modify
Authorization
Creation is a confirmation card; a spoken yes/no rung for trusted devices is designed, not live.
Data
Tasks and reminders in the deployment's own store.
Tenses
planned: a phone that truly rings (native wrap); designed: spoken confirmation rung

Email

available

Reads and searches the member's own connected mailboxes (IMAP lane), looks up addresses, and sends — by proposal only.

Actions
search · read · draft · send
Authorization
Reading is account-scoped; email.send is a confirmation card. Fetched mail is data, never instructions.
Data
Connected mailboxes (e.g. Gmail over IMAP); family mail on owned infrastructure is planned.
Tenses
planned: family mail server on owned infrastructure

Family messaging & calls

available

Human threads with attachments, plus voice/video calls on the family's own media server — this replaced Messenger and WhatsApp inside the family.

Actions
send · read · call · share files
Authorization
Members of a thread only; membership is explicit and revocable.
Data
Messages and call signaling on owned infrastructure (own LiveKit + Postgres); media never transits a third party.

Contacts & relationships

available

Knows the people in the person's life and the relationships between them, from explicit entry and understanding.

Actions
lookup · store
Authorization
Account-scoped.
Data
Contacts and relationship claims in the member's own understanding.

Web search & reading

available

Searches the web through the deployment's own SearXNG instance and reads pages on request.

Actions
search · fetch
Authorization
On request; fetched content is treated as data, never as instructions.
Data
Queries leave through owned search infrastructure, not a third-party search API.

Notes & lists

available

Notes and checkable lists that both the person and Sathi can write to and read back.

Actions
create · read · check
Authorization
Account-scoped.
Data
Stored in the deployment's own database.

Music & photos

available

The family's own music library (own uploads, playback in-app) and photos shared through chat.

Actions
search · play · save · upload
Authorization
Account-scoped; music sources are the member's own files.
Data
Media files encrypted on owned storage.
Tenses
planned: full family photo library alongside Sathi (Immich-class), car playback

Learn

available

Guided study: a real plan per path, lessons in the thread, answers as buttons.

Actions
study · quiz · track
Authorization
Account-scoped.
Data
Progress in the member's own store.

Archive imports

available

WhatsApp and Messenger exports enter the archive with originals preserved immutably; understanding is re-derivable against the same archive when better models arrive — without re-upload.

Actions
import · re-derive
Authorization
Owner-initiated; originals preserved; deletion still wins.
Data
Original exports on owned encrypted storage.
Tenses
planned: ChatGPT/Claude exports, email mbox, photos, location history

Voice

experimental

Voice conversation in the app is live (speech-to-text and spoken replies, Nepali included). The realtime duplex gateway (OpenAI-Realtime-compatible) is built and deployed dark behind a flag.

Actions
converse · transcribe · speak
Authorization
Same ladder as text; a spoken yes/no confirmation rung is designed for low-risk actions on trusted family devices.
Data
Voice audio transits Google's speech APIs today — stated plainly; self-hosted speech is a named later goal.
Tenses
dark: realtime duplex; planned: self-hosted STT/TTS

Devices & home

experimental

A wake-word home speaker is prototyped on open hardware. Paired devices can drive Sathi through an OpenAI-compatible chat endpoint — deliberately repointable, so a device you cannot repoint was never yours.

Actions
converse · pair · revoke
Authorization
Explicit pairing to one member's account; one-gesture cutoff; local-first rule — cloud-tethered hardware does not enter the house.
Data
Devices add senses, never a second brain: no per-device memory, ever.
Tenses
planned: e-ink displays, home hub, de-clouded vacuum; conceptual: humanoid robots

Export & exit

available

Total export: a sealed, cryptographically signed archive of the person's node — memories, history, files. The front door accepts it back onto a fresh account; leaving issues a signed receipt of what was destroyed.

Actions
export · restore · leave
Authorization
Owner-only; verified return reactivates links the other side never revoked.
Data
The full archive as readable files, document files fingerprinted by the seal.

Agent-to-agent interfaces

conceptual

The destination is Sathi-to-Sathi and Sathi-to-agent exchange through standardized interfaces, with disclosure governed by the owner's policies. No A2A or MCP surface is exposed today; this documentation layer is the first legible step.

Authorization
Will inherit the same ladder: least disclosure that suffices, every crossing explicit and audited.
Data
Nothing yet — stated so an agent does not infer otherwise.

Interfaces

InterfaceStatusWhat it is
Web app (PWA)availablehttps://sathi.ai — installable, offline-capable shell; the careful surface where confirmations happen.
REST APIavailablehttps://api.sathi.ai — serves this deployment's own accounts; not a public developer API and no public keys are issued.
OpenAI-compatible chat endpoint (paired devices)experimentalAny client that speaks OpenAI chat-completions can drive a paired Sathi device with the device's own token — and the same device can be repointed away tomorrow. No streaming, no tool exposure over the wire.
OpenAI-Realtime-compatible voice gatewayexperimentalBuilt and deployed dark behind the voice flag.
Portable archiveavailableThe export format doubles as an interface: a signed, self-describing archive that a fresh Sathi can be rebuilt from.
A2A / MCPconceptualNot exposed today.