# Beamlet v0.1.1 - Table of Contents

## Pages

- [Changelog](changelog.md)
- [Security](security.md)

- Guides
  - [Getting started](getting-started.md)
  - [Working with your beamlet](working-with-your-beamlet.md)
  - [Tokens and policies](tokens-and-policies.md)
  - [Operating a beamlet](operating-a-beamlet.md)
  - [Deploy Beamlet on Fly.io](deploy-beamlet-on-fly.md)

## Modules

- [Beamlet](Beamlet.md): Beamlet is an Elixir server that your AI agent builds from the
inside.
- [Beamlet.CLI](Beamlet.CLI.md): The command line for setting up the owner and managing tokens and
policies on your beamlet.
- [Beamlet.Config](Beamlet.Config.md): The `:beamlet` application config.
- [Beamlet.Config.Provider](Beamlet.Config.Provider.md): Reads a `config.exs` from the data dir when a release boots.
- [Beamlet.OAuth](Beamlet.OAuth.md): How chat clients connect to your beamlet with OAuth.
- [Beamlet.Owner](Beamlet.Owner.md): The beamlet's owner, the one user who signs in to the app.
- [Beamlet.Policy](Beamlet.Policy.md): A policy decides what a token's requests may do on your beamlet.
- [Beamlet.Policy.Default](Beamlet.Policy.Default.md): The policy Beamlet ships, which every token starts from.
- [Beamlet.Repo](Beamlet.Repo.md): The beamlet's own database: the owner, their sessions, the tokens
and the routes agents mount.
- [Beamlet.Token](Beamlet.Token.md): The credential one client uses to reach your beamlet.
- [Beamlet.Tokens](Beamlet.Tokens.md): Creates, updates, lists and deletes tokens from code.

- MCP
  - [Beamlet.MCP.Define](Beamlet.MCP.Define.md): The `define` tool, which compiles modules into your beamlet and
keeps them.
  - [Beamlet.MCP.Eval](Beamlet.MCP.Eval.md): The `eval` tool, which runs Elixir code on your beamlet.
  - [Beamlet.MCP.Patch](Beamlet.MCP.Patch.md): The `patch` tool, which edits the source of modules agents defined.
  - [Beamlet.MCP.Server](Beamlet.MCP.Server.md): The MCP server agents connect to, at `/beamlet/mcp`.

- Web
  - [Beamlet.Assets](Beamlet.Assets.md): Serves the files the beamlet's pages load, under `/beamlet/assets`.
  - [Beamlet.Router](Beamlet.Router.md): The router your app forwards to, which serves the beamlet.
  - [Beamlet.Web.Auth](Beamlet.Web.Auth.md): The owner's sign-in to the beamlet's own pages.
  - [Beamlet.Web.ErrorView](Beamlet.Web.ErrorView.md): A plain error view for your endpoint.

- Host Stdlib
  - [Host.Code](Host.Code.md): Discover what is on your beamlet, read its docs and source, and
remove modules.
  - [Host.File](Host.File.md): `File`, scoped to your beamlet's files.
  - [Host.HTTP](Host.HTTP.md): HTTP requests with Req's arguments, answered with a `Req.Response`.
  - [Host.HTTP.BlockedError](Host.HTTP.BlockedError.md): The error for a request `Host.HTTP` will not send.
  - [Host.KV](Host.KV.md): Durable key/value storage for small state under string keys.
  - [Host.Migrator](Host.Migrator.md): Run the migrations you define against the agent database, and read
their history.
  - [Host.PubSub](Host.PubSub.md): Publish/subscribe on your beamlet's shared message bus.
  - [Host.Repo](Host.Repo.md): The agent database: SQLite, shared by every module on your beamlet.
  - [Host.Router](Host.Router.md): Mount your modules at URLs your beamlet serves.
  - [Host.Web](Host.Web.md): The `use` line for a module on your beamlet's web surface.

## Mix Tasks

- [mix beamlet](Mix.Tasks.Beamlet.md): Runs the beamlet command line from Mix, in development.

