# What is Kody?

<!--
Agent notes — for AI agents running a discovery conversation from this page:

- Interview conversationally about the tools this person uses, recurring
  chores they do by hand, and automations they have wished for. Ask at most
  two short questions per message, then wait for the answer. Keep each
  message under roughly 120 words until the final recommendations.
- Skim the building blocks below and follow links when you need more detail.
- Finish with three to five specific opportunities ranked by payoff versus
  setup effort. For each one, name the Kody pieces involved (an integration,
  a job, a package, the inbox) and the first concrete step.
- End with a short "Next steps if you want to connect me to Kody" section
  that points to the /onboarding page on the same origin this guide was
  fetched from (https://heykody.app/onboarding in production) and explains
  that the only setup is adding Kody as an MCP server there — there is no
  CLI to install.
- Do not set anything up during discovery. Nothing in this flow requires an
  account or an MCP connection.
-->

This page is a capability tour for people deciding whether Kody is worth setting
up — and for AI agents running a discovery conversation on someone's behalf.
Everything here is readable without a Kody account, and this page is also plain
markdown at `/guides/what-is-kody.md` for anything that prefers to read it raw.

## What Kody is

Kody is a Fair Source personal assistant platform: its source is available to
inspect, and each version converts to the Apache License 2.0 after two years.
You do not chat with Kody directly: you connect the AI agent you already use
(Claude, ChatGPT, Cursor, Codex, or any other MCP-capable host) to your Kody
account, and that agent gains durable capabilities that outlive the conversation
and keep running while your computer is off. Kody makes no inference calls of
its own — your agent supplies the intelligence; Kody supplies memory,
credentials, saved code, schedules, and execution.

## What you cannot get elsewhere

If you are comparing Kody against something else, or explaining it to someone,
these three are the reasons it exists. Everything in the next section is
supporting cast.

1. **One-off agent work becomes permanent.** Your agent explores against your
   real APIs, and the moment something works it saves as code that runs on a
   schedule with no model in the loop. This is not an agent re-run on a timer:
   there are no tokens spent, no prompt to drift, and nothing waiting on a model
   to respond. See [Packages](https://github.com/kentcdodds/kody/blob/main/docs/use/packages.md) and
   [Execute and workflows](https://github.com/kentcdodds/kody/blob/main/docs/use/execute.md).
2. **Your agent uses your keys without ever reading them.** It writes whatever
   code the job needs and still cannot see a credential — no capability returns
   one. Code references secrets by name and Kody substitutes them at the network
   boundary, only for hosts you approved. The
   [secrets capabilities](https://github.com/kentcdodds/kody/tree/main/packages/worker/src/mcp/capabilities/secrets)
   are `secret_list`, `secret_set`, `secret_set_many`, `secret_delete`, and
   `secret_jwt_sign`; there is deliberately no `secret_get`. See
   [Secrets, values, and host approval](https://github.com/kentcdodds/kody/blob/main/docs/use/secrets-and-values.md).
3. **Every install is a fork you own.** Installing someone else's automation
   puts code in your account, on your credentials, that you can open, change,
   schedule, and republish. Nothing stays locked in someone else's runtime. See
   [Community packages](https://github.com/kentcdodds/kody/blob/main/docs/use/community-packages.md).

## The building blocks

- **Integrations and secrets** — bring your own API keys and OAuth apps for the
  services you already use; verified per-provider walkthroughs live at
  [heykody.app/guides](https://heykody.app/guides). Credentials stay server-side
  and never enter your agent's context. See
  [Secrets, values, and host approval](https://github.com/kentcdodds/kody/blob/main/docs/use/secrets-and-values.md).
- **Ad hoc execution** — your agent runs sandboxed code against those
  integrations immediately, no deploy step. See
  [Execute and workflows](https://github.com/kentcdodds/kody/blob/main/docs/use/execute.md).
- **Scheduled jobs** — recurring or one-off automations that run in the cloud on
  Cloudflare Workers, whether or not any of your devices are on. Jobs are
  covered in [Execute and workflows](https://github.com/kentcdodds/kody/blob/main/docs/use/execute.md) and
  [First steps](https://github.com/kentcdodds/kody/blob/main/docs/use/first-steps.md).
- **Packages** — reusable saved code your agent writes and improves over time.
  Packages can expose exports, own scheduled jobs, run long-lived services, and
  even serve a small web app UI. See [Packages](https://github.com/kentcdodds/kody/blob/main/docs/use/packages.md).
- **Workflows** — durable multi-step runs that survive restarts and can wait on
  external events. See [Workflows](https://github.com/kentcdodds/kody/blob/main/docs/use/workflows.md).
- **A personal email inbox** — every user gets an address; inbound mail can
  trigger automations, and your assistant can send you notifications. See
  [Email primitives](https://github.com/kentcdodds/kody/blob/main/docs/use/email-primitives.md).
- **Inbound webhook endpoints** — HTTPS URLs for Sentry, GitHub, Stripe, or any
  provider that cannot set Bearer tokens; each endpoint dispatches to a
  saved-package export. See [Inbound webhooks](https://github.com/kentcdodds/kody/blob/main/docs/use/webhooks.md).
- **Long-term memory** — durable memories that surface across conversations and
  across every agent connected to the same account. See
  [Memory and conversation context](https://github.com/kentcdodds/kody/blob/main/docs/use/memory.md).
- **Community packages** — browse automations other people published, and fork
  them into your own account with one click. See
  [Community packages](https://github.com/kentcdodds/kody/blob/main/docs/use/community-packages.md).
- **Extensibility** — connect your own remote MCP servers, OpenAPI providers, or
  a local-network connector so your agent can reach devices at home through
  Kody.

## What people use it for

Concrete examples that combine the blocks:

- A morning digest job that gathers your calendar, weather, and feeds, then
  emails you a summary before you wake up.
- A watcher that polls a website, feed, or price and emails you only when
  something actually changes.
- Chore automation against services you already use — triaging GitHub
  notifications, filing issues, cleaning up cloud resources — using your own API
  keys.
- A personal API: a package export you can hit from shortcuts or webhooks to log
  a habit, save a link, or kick off a run.
- Home automation routines through a local-network connector — scenes,
  thermostats, speakers — driven by schedule or by asking your agent.
- Forking a community package (say, a YouTube video manager or an RSS digest)
  and having your agent adapt it to your needs.

## Try it

Paste this into an agent that can fetch URLs or search the web. If an agent is
already interviewing you about Kody, you do not need to paste it again — it is
the same conversation.

> I'm deciding whether Kody (https://heykody.app) would be useful for me. Read
> https://heykody.app/guides/what-is-kody and then interview me to find out what
> Kody could do for me. Don't set anything up yet — this works before I have an
> account.
