---
title: Documentation
description: What Keiki is, and what you can build with it.
---

Keiki helps you put AI agents into the conversations your customers and teammates already
use: SMS, iMessage, WhatsApp, Slack, Telegram and email. You describe one agent once, and
Keiki runs it everywhere.

You write down what the agent knows and what it can do. Keiki handles the rest: delivering
messages on every channel, remembering each conversation, running tools, browsing the web,
running code, taking payments, and handing a conversation to a person when it should.
Adding a channel later does not mean rebuilding the agent.

These guides show you how to set each part up. Every page is also published as markdown at
`/docs/<name>.md` if you would rather read raw text.

## Build an agent

- [Cloud-served agents](/docs/cloud-agents): write your agent's config, including its
  instructions, tools, plugins and channels.
- [SDK reference](/docs/sdk): everything `@onkeiki/agents` exports, from agents, tools and
  alerts to plugins, capability manifests and service adapters.
- [Turn harnesses](/docs/harnesses): choose where the agent's turn loop runs.
- [External harness](/docs/external-harness): run the turn loop in your app with signed
  async requests from Keiki.
- [Agent swarms](/docs/swarms): put many agents on one goal, and watch and stop them.
- [Rich cards](/docs/cards): render swipeable card carousels into one media message, enable
  them on an agent, and wire the agent into them.

## Connect your app

- [Agents as models](/docs/agent-api): call any agent from the OpenAI or Anthropic SDKs.
- [Partner deployments](/docs/partner-deployments): deploy an agent for each of your users
  from your own backend, over REST or MCP.
- [Identity and permissions](/docs/identity): tell the agent who is talking in your terms,
  and have every tool call checked against their scopes.
- [Governed actions](/docs/actions): preview, approve, run and audit the tool calls that
  matter, with no gap between the card and the call.

## Slack

- [Slack agents](/docs/slack-agents): when the agent answers, who it thinks is talking,
  bursts of messages, and how to stop it.
- [Migrate a bespoke Slack agent](/docs/migrating-slack-agents): replace the runtime you
  built around your Slack bot with one Keiki agent per customer organization.
- [Example: a billing agent per organization](/docs/billing-agent-example): the migration
  guide made concrete — one deployment request, two gated tools, an identity webhook.

## Capabilities

- [Capabilities](/docs/capabilities): package a new ability and publish it for others.
- [Publishing a capability](/docs/publishing): have your coding agent build one, then
  submit it to the marketplace.

## Evaluate

- [Eval Studio](/docs/evals): replay saved cases to check how the agent behaves and pick
  the best model.
- [Replay](/docs/replay): test a prompt change against real turns from production.
- [External-channel evals](/docs/external-channel-evals): grade cases on what a real
  contact actually received.

## Operate and secure

- [Agent wallets](/docs/wallet): give an agent a spending policy in front of your own
  payment account.
- [Enterprise SAML SSO](/docs/sso): let your team sign in through your own identity
  provider.
