# Kabu docs

> Kabu keeps a human in the know and in the loop: your coding agent tells you what finished, what failed and how a long run is going, and asks before risky steps, waiting for your answer from your iPhone's Lock Screen. Agents reach Kabu through the `kabu` CLI, the plugin for Claude Code and GitHub Copilot CLI, the MCP server at https://usekabu.com/mcp, or the HTTP API.

Kabu is named for the kabutar, the messenger pigeon. Every docs page is also Markdown: add `.md` to its URL.

## Get started

- [Overview](https://usekabu.com/docs.md): Three commands, then choose where your agents reach Kabu from
- [Quickstart](https://usekabu.com/docs/quickstart.md): Install the app, connect a computer with kabu login --device, send and ask

## Use Kabu from

- [The kabu CLI](https://usekabu.com/docs/cli.md): One standard-library Python 3.9+ file: install, log in, send, ask, sessions
- [CLI reference](https://usekabu.com/docs/cli/reference.md): Every command, option, limit and exit code
- [Plugin](https://usekabu.com/docs/plugin.md): Claude Code and GitHub Copilot CLI: the skill, kabu mcp and hooks
- [MCP](https://usekabu.com/docs/mcp.md): The remote server at https://usekabu.com/mcp and the local kabu mcp
- [HTTP API](https://usekabu.com/docs/api.md): Keys, idempotency, waiting with ?wait=, paging, versions and typed clients
- [Webhooks](https://usekabu.com/docs/webhooks.md): Signed events, verification, retries and replay

## Concepts

- [Messages](https://usekabu.com/docs/concepts/messages.md): Notifications and asks are one object, with one lifecycle each
- [Asks and answers](https://usekabu.com/docs/concepts/asks.md): Confirm, choice, text and form; decisions; expiry; irreversible asks
- [Sessions](https://usekabu.com/docs/concepts/sessions.md): One run of work: its status, headline, progress and open asks
- [Projects and agents](https://usekabu.com/docs/concepts/projects-and-agents.md): Who is asking, and about which repository or service
- [Keys and scopes](https://usekabu.com/docs/concepts/keys.md): Agent, service and admin keys; device login; what a key may never do
- [Receipts](https://usekabu.com/docs/concepts/receipts.md): Every answer is signed: verify it with the published keys
- [Events](https://usekabu.com/docs/concepts/events.md): One ordered, resumable stream, also delivered by webhook
- [Limits](https://usekabu.com/docs/concepts/limits.md): Rate limits, the monthly quota and the size of everything

## API reference

- [Discovery](https://usekabu.com/docs/api/discovery.md)
- [Messages](https://usekabu.com/docs/api/messages.md)
- [Responses](https://usekabu.com/docs/api/responses.md)
- [Sessions](https://usekabu.com/docs/api/sessions.md)
- [Media](https://usekabu.com/docs/api/media.md)
- [Events](https://usekabu.com/docs/api/events.md)
- [Projects](https://usekabu.com/docs/api/projects.md)
- [Agents](https://usekabu.com/docs/api/agents.md)
- [Recipients](https://usekabu.com/docs/api/recipients.md)
- [Webhooks](https://usekabu.com/docs/api/webhooks.md)
- [Keys](https://usekabu.com/docs/api/keys.md)
- [Org](https://usekabu.com/docs/api/org.md)
- [Observability](https://usekabu.com/docs/api/observability.md)
- [People](https://usekabu.com/docs/api/people.md)
- [Devices](https://usekabu.com/docs/api/devices.md)
- [Testing](https://usekabu.com/docs/api/testing.md)
- [Steering](https://usekabu.com/docs/api/steering.md): Preview

## Errors

- [All codes](https://usekabu.com/docs/errors.md): Every problem code, its HTTP status and the fix
- [already_settled](https://usekabu.com/docs/errors/already_settled.md)
- [ask_expired](https://usekabu.com/docs/errors/ask_expired.md)
- [attempt_expired](https://usekabu.com/docs/errors/attempt_expired.md)
- [checkpoint_expired](https://usekabu.com/docs/errors/checkpoint_expired.md)
- [checkpoint_filter_mismatch](https://usekabu.com/docs/errors/checkpoint_filter_mismatch.md)
- [forbidden](https://usekabu.com/docs/errors/forbidden.md)
- [idempotency_key_in_use](https://usekabu.com/docs/errors/idempotency_key_in_use.md)
- [idempotency_key_reused](https://usekabu.com/docs/errors/idempotency_key_reused.md)
- [incompatible_scopes](https://usekabu.com/docs/errors/incompatible_scopes.md)
- [internal_error](https://usekabu.com/docs/errors/internal_error.md)
- [invalid_ack_transition](https://usekabu.com/docs/errors/invalid_ack_transition.md)
- [invalid_receipt](https://usekabu.com/docs/errors/invalid_receipt.md)
- [invalid_request](https://usekabu.com/docs/errors/invalid_request.md)
- [lease_lost](https://usekabu.com/docs/errors/lease_lost.md)
- [media_not_ready](https://usekabu.com/docs/errors/media_not_ready.md)
- [not_found](https://usekabu.com/docs/errors/not_found.md)
- [not_implemented](https://usekabu.com/docs/errors/not_implemented.md)
- [payload_too_large](https://usekabu.com/docs/errors/payload_too_large.md)
- [precondition_failed](https://usekabu.com/docs/errors/precondition_failed.md)
- [project_in_use](https://usekabu.com/docs/errors/project_in_use.md)
- [quota_exceeded](https://usekabu.com/docs/errors/quota_exceeded.md)
- [rate_limited](https://usekabu.com/docs/errors/rate_limited.md)
- [self_response_forbidden](https://usekabu.com/docs/errors/self_response_forbidden.md)
- [session_ended](https://usekabu.com/docs/errors/session_ended.md)
- [unauthorized](https://usekabu.com/docs/errors/unauthorized.md)
- [unknown_parameter](https://usekabu.com/docs/errors/unknown_parameter.md)
- [unsupported_media_type](https://usekabu.com/docs/errors/unsupported_media_type.md)
- [unsupported_schema_keyword](https://usekabu.com/docs/errors/unsupported_schema_keyword.md)
- [upload_expired](https://usekabu.com/docs/errors/upload_expired.md)

## Changelog

- [Changelog](https://usekabu.com/docs/changelog.md): What changed in the app, the CLI, the plugin, MCP and the API

## Machine-readable

- [OpenAPI contract](https://usekabu.com/openapi.yaml): OpenAPI 3.1, the source of truth for the HTTP API
- [Capabilities](https://usekabu.com/v2): what a key can do, its limits and links (JSON)
- [Receipt keys](https://usekabu.com/.well-known/jwks.json): verify the signed record of an answer
- [All docs in one file](https://usekabu.com/llms-full.txt)
