# Augments

Canonical: https://auggy.dev/docs/augments
Status: Published
Package: auggy 0.5.0

Understand how built-in and custom augments add capabilities to an **Auggy** agent.

## One runtime module

An augment is a runtime module that adds a coherent capability to an agent. It can contribute one surface, such as a transport, or keep related tools, context, memory, policy, storage, and operator controls together.

**Composition model**

```
Auggy kernel
  + webTransport       -> chat, console, health
  + layeredMemory      -> peer memory, tools, context
  + your support       -> typed tools, integration code
```

> **Note: Add or build**
>
> Add installs and configures an existing built-in. Build creates a custom augment whose TypeScript belongs to your project.

## What an augment can contribute

| Surface | Purpose |
| --- | --- |
| Tools | Typed operations the model can choose during a turn. |
| Context and memory | Turn context, durable providers, and retrieval or write behavior. |
| Lifecycle | Boot, shutdown, turn, idle, and background-work hooks. |
| Transports | Inbound and outbound channels such as web chat or Telegram. |
| Policy and operations | Tool constraints, health, admin information, and operator actions. |

A capability does not need every surface. Keep the augment as small as the operation requires, and add a skill only when tool descriptions are not enough to guide model behavior.

## Built-in and custom ownership

| Kind | Project owns | Implementation |
| --- | --- | --- |
| Built-in | agent.yaml entry, augment.yaml config, and an installed skill snapshot when provided | Installed auggy package under `node_modules`/auggy/src |
| Custom | augment.yaml, local TypeScript, tests, and optional source skill | augments/<name>/ in the agent project |

agent.yaml lists enabled augment IDs in boot order. Built-in config lives in augments/<id>/augment.yaml. Skills are copied into skills/<id>/ so the project can inspect and adapt its installed guidance.

## Choose an augment

### Core runtime

The compact chat-ready set installed by ``auggy create``. Each piece has a narrow runtime responsibility.

- [File Memory](https://auggy.dev/docs/augment-file-memory/markdown) — Core. Load identity and creator-approved global behavior from files. (`memory`, `context`)
- [Filesystem](https://auggy.dev/docs/augment-filesystem/markdown) — Core. Give the agent named, operator-controlled file mounts and a durable workspace. (`tools`, `context`)
- [Web Transport](https://auggy.dev/docs/augment-web-transport/markdown) — Core. Serve AG-UI turns, Console, health checks, and runtime discovery. (`transport`, `console`, `health`)
- [Web Fetch](https://auggy.dev/docs/augment-web-fetch/markdown) — Core. Fetch public URLs and return readable HTML text or JSON to the model. (`tool`)
- [Turn Control](https://auggy.dev/docs/augment-turn-control/markdown) — Core. Let the agent stop a turn and ask one answerable question. (`tool`, `turn status`)

### Memory and knowledge

Add durable per-person facts or controlled access to operator-maintained information.

- [Layered Memory](https://auggy.dev/docs/augment-layered-memory/markdown) — Stable. Persist peer-scoped episodic memory in SQLite with search, write, list, and forget tools, explicit write outcomes, and stable-identity requirements. (`memory`, `tools`, `context`)
- [Knowledge](https://auggy.dev/docs/augment-knowledge/markdown) — Stable. Expose listed local documents and remote knowledge endpoints on demand. (`tool`, `context`)

### Integrations

Connect the runtime to external tool providers and communication channels.

- [MCP](https://auggy.dev/docs/augment-mcp/markdown) — Stable. Import tools from configured local or remote MCP servers. (`tools`, `lifecycle`)
- [AgentMail](https://auggy.dev/docs/augment-agentmail/markdown) — Stable. Send, receive, reply, and forward under policy with durable polling/WebSocket/Svix inbound, human review, and recovery. (`tools`, `transport`, `routes`, `admin`, `audit`)
- [Telegram](https://auggy.dev/docs/augment-telegram/markdown) — Stable. Run text turns through a Telegram bot using polling or webhooks. (`transport`)

### Identity and operations

Recognize returning visitors and move important events outside the active conversation.

- [Visitor Auth](https://auggy.dev/docs/augment-visitor-auth/markdown) — Stable. Verify email ownership and issue a durable recognized-visitor identity. (`tool`, `routes`, `identity`)
- [Notify](https://auggy.dev/docs/augment-notify/markdown) — Stable. Send outbound alerts to named file, webhook, Telegram, or AgentMail destinations. (`tool`, `adapters`)

### Preview

Useful capabilities with security, deployment, or operational edges that still require deliberate setup.

- [Bash](https://auggy.dev/docs/augment-bash/markdown) — Preview. Run allowed host commands or operator-authored scripts. (`tools`)
- [Budgets](https://auggy.dev/docs/augment-budgets/markdown) — Preview. Gate turns using per-thread, rolling, daily, and spend limits. (`turn gate`, `context`, `admin`)
- [Link](https://auggy.dev/docs/augment-link/markdown) — Preview. Exchange authenticated text requests with configured A2A peers. (`tools`, `transport`)

> **Note: Skills are runtime infrastructure**
>
> The skills loader is mounted by **Auggy** and is not a catalog choice. Individual augments may ship skill folders that the loader exposes on demand.

## Choose the next path

| Goal | Guide |
| --- | --- |
| Install a supported capability | [Add an augment](https://auggy.dev/docs/add-augment/markdown) |
| Author project-specific behavior | [Build an augment](https://auggy.dev/docs/build-augment/markdown) |
| Expose model-callable operations | [Tools](https://auggy.dev/docs/add-tools/markdown) |
| Teach a non-obvious workflow | [Skills](https://auggy.dev/docs/add-skills/markdown) |

## Related

- [Add an augment](https://auggy.dev/docs/add-augment/markdown)
- [Build an augment](https://auggy.dev/docs/build-augment/markdown)
- [Add tools](https://auggy.dev/docs/add-tools/markdown)
- [Skills](https://auggy.dev/docs/add-skills/markdown)