Kept never posts to a customer on its own. A person confirms the commitment, and a person signs the closure. Kept does the checking in between.
01 Install Kept
- Click Add to Slack and choose the workspace to install into.
- Review the requested permissions and click Allow. Kept requests only the scopes it needs and reads only the channels you add it to.
- Open Kept in the left sidebar and go to the Home tab — that's your obligation ledger.
Installation is per workspace. Each workspace's data and credentials are isolated from every other workspace's.
02 Add it to a channel
Kept only sees the channels it has been invited to. In the channel where your team talks to a customer:
- Run
/invite @Keptto add it to the channel. - Bind the channel to that customer:
/kept customer Acme. Every promise made in this channel is then tracked for Acme, regardless of how it's worded — no guessing.
A shared customer channel maps to one customer. You can clear the binding any time with /kept customer clear.
03 The lifecycle
Every promise moves through the same guarded path. There are two points where a human decides — Kept does everything else.
- CaptureSomeone commits to the customer in the channel — “we'll ship the SSO fix by Friday.” Kept detects it and sends the owner a private confirm card.
- Confirm Gate 1A human confirms the promise should be tracked (or edits the details first, or dismisses it). Nothing is tracked until someone says so.
- DeliverWhen the work ships, the owner clicks Mark delivered — or a connected proof source (Jira, GitHub Actions, LaunchDarkly) reports it. Kept assembles a Proof-of-Done evidence packet.
- Verify Gate 2A human reviews the evidence and signs. If the evidence disagrees — a Jira ticket says Done but the production flag is still off — Kept refuses the close and shows why.
- SendThe owner reviews the auto-drafted, sanitized reply and sends it into the original customer thread. Internal references never leak into it.
- KeptWhen the customer confirms it's working, the loop closes. The full timeline is kept as a signed, append-only receipt.
04 The App Home cockpit
The Home tab is where you run everything. It shows a compact status strip, a “Needs you now” line, and your ledger grouped by customer — and every open promise carries its own next step:
- Confirm — accept a freshly captured promise.
- Mark delivered — attest the work shipped (for teams with no automated proof source connected, this alone is enough).
- Verify — opens the Proof-of-Done evidence packet as a focused window; the submit button is your signature.
- Send — review and send the sanitized closure to the customer.
- Receipts — the full, timestamped, append-only history of the promise.
When Kept needs you, it sends a short direct message with one button that opens the right window — so your message history stays a scannable list, not a wall of cards.
05 Connect proof sources
Proof sources are how Kept knows a promise is actually done, not just marked done. Connect them in App Home → Connections. Each workspace connects its own — Kept reads them only for your team.
- In Connections, click Connect next to a source and enter its credentials (a read-only token is enough). Kept never echoes a saved token back.
- Click Add mapping to tell Kept which signal proves which customer's work — e.g. map customer
Acmeto the LaunchDarkly flagsso-login-fixinproduction. You can add, edit, and remove a mapping per customer.
06 Slash commands
| Command | What it does |
|---|---|
/kept <customer> | Show the obligation ledger for a customer (what you owe them, and its status). |
/kept customer <name> | Bind this channel to a customer. /kept customer clear removes the binding. |
/kept trust <customer> | Create a private, audience-safe web page showing that customer what's promised and what's done. |
/kept untrust <customer> | Revoke that customer's trust page — existing links stop working. |
You can also ask Kept in its Assistant pane — “What's overdue?”, “What did we promise Acme?”, “What's waiting on me to verify?”
07 What Kept stores
Kept stores derived facts, not message bodies. It keeps the structured commitment — customer, outcome, owner, due date, source references, and the signed verdicts — and never the raw text of your Slack messages, prompts, or model responses.
Everything a customer could see is passed through an audience filter first, so internal sources (tickets, PRs, CI, flags) never leak into a customer-facing reply or trust page. Data is isolated per workspace, and uninstalling deletes your workspace's stored token and ledger.
More detail: Privacy policy · AI disclosure.
08 Get help
Stuck, found a bug, or want your workspace's data exported or deleted? The Support page has the fastest paths, or email kaviyakumar23@gmail.com.