Skip to content

A companion, built from India

Someone to learn things with.

A companion that talks you through something new, one step at a time, out loud, at whatever pace you want. It runs on your own machine by default.

runs on your machine by default · no account needed

It always says where you are.

Someone who cannot see a progress bar still needs to know how much is left. Someone who can see one is not harmed by hearing it. So every step announces its own position, and if you say “slower”, it starts again from where you are, not from the top.

Where you are

Still step 1 of 4.

The position is said out loud, every time. Someone who cannot see a progress bar still needs to know how much is left.

You

I just installed the train app. Help me book a ticket to Madurai.

Saathi

Step 1 of 4. Tap the search box at the top. It says “Where to?”. Type Madurai.

You

Slower.

Saathi

Still step 1 of 4. Of course. Look at the top of the screen. There is a wide box with “Where to?” in it. Tap once inside it, then type Madurai.

Four turns · about forty seconds
It narrates
Saying what is happening is the primary output, not an accessibility affordance layered over a visual one.
It can be interrupted
“Slower”, “again”, “skip that” are first-class. A companion you cannot interrupt is a lecture.
It cannot be misheard into harm
Every choice a mishearing could land on is a closed set. A wrong word gives a wrong value, never a wrong command.
It refuses out loud
When Saathi will not do something, it says so and says why, rather than failing quietly.

It should not have to be English.

What Saathi understands is whatever the model behind it understands. Point it at Sarvam AI and you get models built for Indian languages; point it at something running on your own machine and you get whatever that model knows. Saathi does not translate. It carries your choice through.

हिन्दीHindiবাংলাBengaliதமிழ்TamilతెలుగుTeluguमराठीMarathiગુજરાતીGujaratiಕನ್ನಡKannadaമലയാളംMalayalamਪੰਜਾਬੀPunjabiଓଡ଼ିଆOdiaঅসমীয়াAssameseاردوUrdu

Scripts, not a support matrix. Coverage is the model’s, and Saathi says which one it is using.

Where your words go.

Three modes, and the default is the one that needs nothing from anybody. There is no silent fallback: if a local model is not reachable, Saathi says so rather than quietly sending your words somewhere else. Both clients have tests pinning that.

localDefault

An OpenAI-compatible server on your own machine: Ollama, LM Studio, llama.cpp. With nothing configured at all, this is what you get.

Keys
none
Account
none
Leaves device
no

your own key

OpenAI, Anthropic, or Sarvam AI. The key sits in ~/.saathi/shell.json on your machine and the request goes straight to that provider. Saathi’s servers are not in the path.

Keys
yours, on your machine
Account
none
Leaves device
yes

hosted

For people who would rather not run or configure anything. It runs the same open-source code, with accounts switched on by configuration rather than by a private fork.

Keys
we hold them
Account
required
Leaves device
yes

What that means in detail →

Where it stands.

Built in the open, in the order it is being built. Nothing here is a promise about next month. It is what the repository says today.

Hosted is a convenience, not the only option. The backend that holds provider keys is the same code you can run yourself, on your own box, with your own accounts switched on or off. How to self-host.

Get Saathi.

Running it yourself is the point, not a consolation prize. With nothing configured at all, it talks to a model on your own machine and nothing leaves it.

macOS

Build from source

Needs a Swift toolchain (Xcode command line tools).

git clone https://github.com/saathihq/saathi.git
cd saathi/macos/Saathi
swift build
./.build/debug/saathi provider
./.build/debug/saathi demo

There is no signed macOS build yet. These commands are what a download would give you, and they work today.

Windows

Build from source

Needs .NET 8.

git clone https://github.com/saathihq/saathi.git
cd saathi/windows
dotnet run --project src/Saathi.Cli -- provider
dotnet run --project src/Saathi.Cli -- demo

There is no signed Windows build yet. These commands are what a download would give you, and they work today.

Ready when you are.

Say what you are trying to do. It says where you are, every step, at whatever pace you want.