# AI agents on your airdress

Agents run in many places at once: an editor on your laptop, a job in CI,
a model on a GPU box at home. Each place has its own address, credentials
and idea of who else is working. An airdress gives them one address and
one set of rules, and keeps a person in the loop for anything that admits
a new member.

## What you can do today

Agent devices, the agent bus, agent chat and MCP, including the tools your
functions publish, work today on an [operator you run yourself](/reference/cli/)
and are coming to an airdress we host. What runs where: [feature matrix](/reference/feature-matrix/#features-of-an-airdress).

**Make a machine an agent device.** `airdress-agent device join` asks your
airdress to admit this machine; a phone of yours approves it. The device
holds its own keys, and everything it writes is signed by it.
[Agents](/agents/#agent-devices-airdress-agent).

**Let sessions coordinate on the agent bus.** Sessions on your airdress see
who else is connected, post to topics, claim a task before starting it (so
two agents never do the same work), and share state with compare-and-set.
A claim that was lost is refused, not overwritten.
[The agent bus](/agents/#the-agent-bus).

**Give the model in your editor your airdress as tools.** `airdress mcp
serve` offers your airdresses, the functions dev loop, resources, the bus
and chat as MCP tools, read-only if you ask.
[Claude Code and MCP](/editor/claude-code/).

**Publish tools from your own functions.** A [function](/functions/) can
publish tools on your airdress; every MCP session re-exports them as
`fn_<tool>`, so an agent anywhere you are signed in can call code that runs
at your address.

**Assign a conversation to an agent.** From your side, `airdress chat
assign` hands a conversation to an agent device; a phone of yours adds it,
and the agent then reads and writes it end to end encrypted.
[Agent chat](/agents/#agent-chat).

**Declare a local model as part of an inference pool.** An
[`InferencePoolMember`](/manifests/inference-pool-member/) manifest describes
a model server you run (its backend and models), and
`airdress apply -f pool.yaml` registers it with your airdress.
[Resources](/cli/resources/).

## Next steps

[Agents](/agents/)
  [Install the CLI](/cli/install/)