Skip to content
Guides

How to build a daily AI agent with Claude Managed Agents

Anthropic's open example is an agent that reads Slack and GitHub each weekday and posts one short brief. Here is how it works and how to set it up (beta).

45 min · Updated October 15, 2026 · Tools: Claude Managed Agents, Claude Code, Slack, GitHub

  1. 1Check what you need. You need an Anthropic API account, Anthropic's command-line tool called ant (version 1.34 or later), the jq helper, a Slack workspace where you can add an app, and a GitHub account.
  2. 2Create the Slack app. Use the one-click link in Anthropic's README, install the app, copy its bot token, then invite the bot only to the channels it should read and the one it should post to.
  3. 3Make a read-only GitHub token. Create a fine-grained personal access token with read access to Contents and Pull requests, limited to the repositories you want covered.
  4. 4Run the setup script. Copy .env.example to .env, put both tokens in it and run agents/setup.sh. It creates the agent, sandbox, memory, vault and schedule, and leaves the schedule paused.
  5. 5Write your preferences. Copy preferences.example.md, fill in who you are, your channels, repositories and length limit, then load it with scripts/seed-preferences.sh.
  6. 6Test a run before the schedule. Run scripts/run.sh to start one run now. Check the brief, the list of unreadable sources and the cost, then turn the schedule on with ant beta:deployments unpause.

A daily agent is a small AI helper that wakes up on a schedule, reads what happened, and tells you only what matters. Anthropic published an open example of one, called "daily brief", built on Claude Managed Agents. This guide explains what it does and how to set it up.

Beta warning. Anthropic's documentation labels Claude Managed Agents as beta, and the scheduling feature was announced as a public beta on the Claude Platform. Names, commands and behavior can change. The example's README does not state pricing for the service itself, and neither do the other Anthropic pages we checked.

What the example does

Each weekday morning the agent reads the Slack channels and GitHub pull requests you choose, decides which items you would act on that day, and posts one short message to a Slack channel. It runs in Anthropic's cloud as a "scheduled deployment", so you don't keep a server running. The README describes the reading as Slack channel history and GitHub pull requests; it doesn't use the words "unanswered requests", so treat that as something you can ask for in your own preferences file.

New to the idea? Our explainer on AI agents covers the basics, and GitHub access goes through MCP, a standard way to plug tools into AI.

The safety design

Most of the example is about behaving well when nobody is watching:

Problem How the example handles it
Repeating yesterday's items A ledger file lists what was already reported
Missing messages after a skipped run Each source has a bookmark, and reading starts 10 minutes before it
Stale status Every item is re-checked against its live source just before posting
Double posts The agent looks for today's edition before posting and confirms Slack accepted the message
A source that fails It is reported as unreadable, never as a quiet day
Runaway cost Each run is capped at $5.00
Leaked keys Tokens live in a vault, and the real token is swapped in only for requests to slack.com
Rule tampering Your preferences are read-only to the agent

Set it up

  1. Check what you need. Besides the accounts, you need Anthropic's ant tool (1.34 or later) and jq.
  2. Create the Slack app with the README's one-click link. It asks for only two permissions: reading channel history and posting. Invite the bot to each channel it should read and to the destination channel. Those invitations are its only access.
  3. Create a read-only GitHub token. Keep it read-only, because the agent uses GitHub tools without asking for approval each time.
  4. Run agents/setup.sh. One command creates everything and pauses the schedule.
  5. Write your preferences, then load them with scripts/seed-preferences.sh. Later edits take effect on the next run.
  6. Test with scripts/run.sh. It runs the agent now and prints the result, any unreadable source and the cost. Only then unpause the schedule.

The README also describes a dry-run mode: set the state memory to read-only and the agent shows its brief without posting or moving bookmarks.

Why a schedule helps

Because each scheduled run starts as a fresh session, the agent has no memory of yesterday unless you give it one. That is why the example keeps a small state store (bookmarks, the ledger, notes and a record of every run). Reading those files first is how it avoids repeating itself and knows where to pick up.

Where Claude Code fits

The folder includes a CLAUDE.md file with instructions for Claude Code. If you ask it to set up or debug the project, it is told to follow the README in order and to use scripts/run.sh to check results. The README doesn't list a dedicated slash command for this project.

Limits to know

  • The "post only to the destination channel" rule is an instruction to the AI, not a hard lock. For sensitive channels, the README suggests two Slack apps: one that only reads and one that only posts.
  • Private channels need an extra permission, and the README tells you to read its security notes first.
  • The cost figures predate Anthropic's newer default model, so your numbers may differ.

For the product itself, see Claude Managed Agents.

Got questions?

Quick answers, plain words

What is Claude Managed Agents?

It is Anthropic's hosted way to run Claude as an autonomous agent: Anthropic supplies the agent loop and a cloud sandbox, so you don't build or host them. It is in beta, and the docs say behavior may change between releases.

How much does a daily AI agent cost to run?

Anthropic's example caps each run at $5.00. Its maintainers measured about $1.50 on a busy day with Claude Opus 5 and about $1.00 with Claude Sonnet 5. Anthropic's pages don't state a general Managed Agents price, so measure your own runs.

Can an AI agent read my Slack messages safely?

It can only read channels where you invite the bot. In Anthropic's example the tokens sit in a vault, network access is limited to slack.com and GitHub's tool server, and the GitHub token is read-only.

Do I need to be a developer to set this up?

Some comfort with a terminal helps, since setup uses command-line tools and a few config files. Anthropic's example also includes a CLAUDE.md file so Claude Code can walk you through setup.

What happens if the agent hits its spending limit?

According to Anthropic's README, the run pauses instead of failing, which from the channel looks like silence. If a brief goes missing, check the deployment's runs in the Claude Console.

Sources

Settings and prices change. We check guides against these sources and update the date above when we do.