Dictation · Meetings · Memory · Agents
Zzz

Talk. It remembers. It gets things done.

Kept began as a hotkey that typed what you said. It’s now the colleague who sits in every meeting, holds the brain of your organisation, and acts on it across 20+ tools — on Mac, Windows, iOS and Android.

<1slatency100%offline$0forever

Hold fn on Mac or Right Ctrl on Windows and speak. No account needed. Free forever, fully offline.

20+
Tools it acts through
21+
Languages, auto-detected
4
Native apps
<1s
Dictation latency

Reads from and acts on the tools you already use

GmailGoogle CalendarGoogle DriveGoogle DocsGoogle SheetsGoogle MeetGoogle ContactsOutlookMicrosoft TeamsOneDriveSharePointEntra IDAzureJiraConfluenceBitbucketSlackGitHubCloud StorageBigQueryAny MCP serverGmailGoogle CalendarGoogle DriveGoogle DocsGoogle SheetsGoogle MeetGoogle ContactsOutlookMicrosoft TeamsOneDriveSharePointEntra IDAzureJiraConfluenceBitbucketSlackGitHubCloud StorageBigQueryAny MCP server
One app, four layers

Each layer feeds the next.

Dictation gives it your voice. Meetings give it your conversations. Context Gainer gives it your organisation. Agents give it hands.

Kept · DictateLive
Any app · on-device
Message — #design

Hey team, tomorrow's design review moves to 3 PM. I'll bring the pricing draft and the new onboarding flow — please have your questions ready.

Listening · en
hold fn

Hold a key. Speak. It's already typed.

A global hotkey works in every app your cursor can reach — Slack, Xcode, Gmail, a terminal. Text streams as you talk, then reflows for punctuation when you pause. Runs fully on-device with Whisper.

Shipping since day one
Meetings

A companion for the call, not a recorder for after it.

Most tools give you a summary when the meeting is over. Kept briefs you before, whispers during, and debriefs you honestly after — and each one makes the next better.

Before · during · after

The same memory serves all three moments, so the brief knows what you promised last time and the debrief knows whether you kept it.

Brief · 10 min before

Who's on the call, what was decided last time, what you owe them, what's overdue.

Recall · live

When someone contradicts an earlier decision, a quiet card shows the original line. Rarely, and only when it's useful.

Debrief · after

What you committed to, what you missed, and how you came across — the honest version.

Speakers, separated and named

On-device diarization splits every voice. Names come from the invite or the AI's guess, and a name you type once follows the meeting everywhere.

Offline · syncs across your Macs

Notes, decisions, follow-ups

AI notes beside your own. Tasks with owners and due dates, extracted from what was said, editable because transcripts mishear.

Editable · cited to the line

Filed into the right project

Recurring calls recognise themselves. A meeting lands in its client, project or team folder without you touching it, with a brief per folder.

Series-aware · survives reschedules

Share with a person or a team

Summary-only or the full transcript, to one colleague by name or a whole team. You see who opened it. They can't pass it on.

Access log · revocable
Context Gainer

Everything your organisation knows, and what's going on right now.

Not a meeting archive. A living graph of your people, teams, projects, decisions, tasks, documents and cloud resources — fed by every meeting, every connector and every interview. Ask it anything; it answers from the graph and quotes the source.

16people across 4 teams
22projects, auto-discovered
287meetings and interviews indexed
1,240+facts and relationships
Acme rollout launch moved to the 24th · decided in Weekly sync
Stalent integration blocked on sandbox keys · Rohit, 3 days
scribe-api new Lambda deployed · migration 0011 applied
Priya joined Platform team · owns diarization
Fed by every user's meetingsvoice interviewsConfluence & DriveJira & GitHubSlackEntra / Google Workspace directorycloud resource graph
Explore Context Gainer →
personteamprojectmeetingtaskdocumentcloud resource
Click a node to explore its links · drag to rearrange
How the brain learns

From meetings, from your tools, and by asking.

Nobody writes the wiki. Context Gainer builds itself from what already happens in the organisation, and when the graph has a gap it goes and asks the person who knows.

  • Every user's meetings and dictation. Decisions, owners, deadlines and disagreements are extracted from what was actually said, per person, across the whole org.
  • Your tools. Confluence and Drive documents, Jira and GitHub work, Slack channels, the Entra or Google directory, and the live cloud resource graph resolve into the same entities.
  • Voice interviews for the gaps. Who owns what, why a decision was made, how a system really works. A few minutes at a time, and the answers become facts and edges linked to the recording.
Context Gainer · interviewing Priya · 4 of 12 gaps
QuestionWho owns the Stalent integration, and what’s blocking it right now?
Priya · 00:41Rohit owns it since July. It’s blocked on Stalent’s sandbox keys — their API changed in v3 and we’re waiting on the new credentials.
OWNSRohit → Stalent integration (since Jul 2026)
BLOCKED_BYStalent integration → sandbox credentials (v3)
FACTStalent API changed in v3
AI assistant with hands

Ask anything. Then have it done.

The assistant reads your meetings, tasks, mail, calendar and files, and answers with the exact line it's quoting. When you tell it to act, it drafts the action and shows it to you before anything is sent, posted or written.

Works from the main window, from the floating bubble, by hotkey, or by wake word — and the answer is spoken back if you want it.

Which of my tasks from the Acme calls are overdue?
Two. Lock pricing tiers was due the 20th, from the Aug 28 pricing call.▶ 12:41 Send Priya the diarization spec was due Monday.▶ Weekly sync · 04:10
Ping Priya on Slack that the spec lands tomorrow, and move the task.
DM @priya: “Diarization spec lands tomorrow…”asks first
Move task → due tomorrowdone
Send this Slack message as you?
SendEdit
Connectors

Connect once. Never be asked again.

A broker holds one encrypted token per person and renews it silently. Each connector exposes capabilities you switch on and off individually — and anything that sends or writes is off until you turn it on.

Gmail
Google Calendar
Google Drive
Google Docs
Google Sheets
Google Meet
Google Contacts
Outlook
Microsoft Teams
OneDrive
SharePoint
Entra ID
Azure
Jira
Confluence
Bitbucket
Slack
GitHub
Cloud Storage
BigQuery
Any MCP server
+ your own MCP servers
ReadRuns quietly

Calendar, mail, files and tickets are read to build your brief and answer questions. Nothing is changed.

WriteDrafted, then approved

Creating a ticket or editing a page is drafted first and shown to you. It happens only when you say so.

Send as youOff until you turn it on

Slack messages and email in your name stay off by default. You switch each one on yourself, per connector, in the app.

Insights

See how you talk, meet and follow through.

Dictation speed and streaks, meeting hours by project, tasks kept versus dropped, languages used. Yours in the app; a team's in the dashboard, counts only.

Words per minute, dictated

Last 12 weeks · example data

Dictation streak

Days in a row with at least one transcription
34 days
▲ personal best

Follow-ups kept

Tasks closed by their due date
81%
▲ 9 pts vs last month

Languages

Auto-detected

Meeting hours by folder

This month · example data
Privacy by construction

Your voice stays on your machine. Your brain stays in your cloud.

Dictation and speaker separation run on-device. Summaries and answers go to a model that is told not to train on them. And for organisations, the whole stack deploys inside your own cloud account — we run the software, we don't hold the data.

DEFAULT

On-device Whisper

Private

Zero network. Works on a plane. Nothing leaves.

  • Apple Silicon and Windows GPUs
  • Speaker separation on-device too
  • Free, no account needed

OpenAI or Sarvam

Your key

Best-in-class accuracy, or Indic-tuned models for Hindi, Tamil, Bengali and Hinglish.

  • Bring your own API key
  • Per-language engine choice
  • Switch any time

Notes, answers, actions

Our account

Nothing is sent until you ask. Every AI output is a draft you can edit.

  • Providers configured not to train
  • Counts recorded, never content
  • Read what's sent, and when
Enterprise

One deployment per organisation, inside your account. Meetings, embeddings, connector tokens and models never leave it. We operate and upgrade it.

AWSAzureGCP
Free forever for dictation

Native on every desk and in every pocket.

Download Kept for free. No account required, no API key, no setup — just install and start talking.

Open the web dashboard

Open source · Sign in with Auth0 only when you want meetings synced, shared or asked about.