Build This Now
Build This Now
speedy_devvkoen_salo
Blog/Handbook/Workflow/Channels, Routines, Teleport, Dispatch

Channels, Routines, Teleport, Dispatch

The four Claude Code features Anthropic shipped in March and April 2026 that turn the CLI into an event-driven coordination layer across phone, web, and desktop.

Stop configuring. Start building.

SaaS builder templates with AI orchestration.

Published May 15, 20269 min readHandbook hubWorkflow index

Problem: You heard one of these names on X or in a Reddit thread. You are not sure if Routines is a third-party plugin, whether Channels keeps Claude awake when your laptop sleeps, or how Dispatch differs from Teleport. The Anthropic docs explain each one in its own page. Nothing on the open web bundles them as one architecture.

Quick Win: Only Routines is truly always-on. Channels needs an open Claude Code session to react to anything. Dispatch needs your Mac or Windows machine awake. Teleport just yanks a cloud session into your terminal. Get those four sentences right and the rest of this post is detail.

Anthropic shipped four coordination features between March 17 and April 14, 2026. Each one extends Claude Code in a different direction. Together they form what we are calling the always-on layer: the wiring that lets a Claude Code task survive your laptop being closed, follow you between phone and terminal, and react to events fired from outside the CLI.

Launch Timeline

Four ship dates. Four different tier rules.

DateFeatureStatusTiers
Mar 17, 2026DispatchResearch previewPro, Max only (no Team or Enterprise)
Mar 20, 2026Channels (Telegram, Discord)Research previewPro, Max, Team, Enterprise (not on Bedrock, Vertex, Foundry)
Mar 27, 2026Channels (iMessage)Research previewSame as above, macOS only
Apr 14, 2026RoutinesResearch previewPro, Max, Team, Enterprise
GATeleportGenerally availableAny plan with claude.ai auth (no API key, Bedrock, Vertex, Foundry)

Sources: Anthropic overview docs, Fortune on Dispatch, VentureBeat on Channels, 9to5Mac on Routines.

What Is a Channel?

A Channel is a Claude Code MCP plugin that pushes external events into a running session. Telegram messages, Discord pings, iMessage texts, or your own webhook payloads all become events the session reads and reacts to. Anthropic ships official plugins for the three messaging platforms. You can build your own.

The verbatim definition from code.claude.com/docs/en/channels:

A channel is an MCP server that pushes events into your running Claude Code session, so Claude can react to things that happen while you're not at the terminal. Channels can be two-way: Claude reads the event and replies back through the same channel, like a chat bridge.

Channels alone are not always-on. Events only arrive while the session is open. If you close the terminal, the channel goes silent. Persistence is your job. Run Claude in a background process or a tmux pane if you want it listening past lunch.

Setup for the Telegram channel goes like this:

/plugin install telegram@claude-plugins-official
/reload-plugins
/telegram:configure <bot-token>

Then launch with the channel attached:

claude --channels plugin:telegram@claude-plugins-official

Other prerequisites: Claude Code v2.1.80 or later, Bun runtime installed, and Anthropic auth via claude.ai or a Console API key. Channels are not available on Amazon Bedrock, Google Vertex AI, or Microsoft Foundry. Team and Enterprise organizations need an admin to flip channelsEnabled in managed settings before any user can attach a channel.

What Is a Routine?

A Routine is a saved Claude Code configuration that runs in Anthropic's cloud on a trigger. The trigger can be a schedule, an HTTP call, or a GitHub event. Because the session lives on Anthropic infrastructure, a Routine keeps working when your machine is off.

The verbatim definition from code.claude.com/docs/en/routines:

A routine is a saved Claude Code configuration: a prompt, one or more repositories, and a set of connectors, packaged once and run automatically. Routines execute on Anthropic-managed cloud infrastructure, so they keep working when your laptop is closed.

Three trigger types ship in the preview:

  1. Schedule: hourly, daily, weekdays, weekly. Custom cron via /schedule update. Minimum interval is one hour. One-off "fire once at this timestamp" runs work too.
  2. API: per-routine endpoint at https://api.anthropic.com/v1/claude_code/routines/<routine_id>/fire. Requires a Bearer token and the anthropic-beta: experimental-cc-routine-2026-04-01 header.
  3. GitHub events: pull_request.* and release.* actions, scoped to repos that have the Claude GitHub App installed. Filter on author, title, body, branch, labels, draft, and merged state.

Create a recurring schedule from the CLI:

/schedule daily PR review at 9am

Or a one-off:

/schedule clean up feature flag in one week

The CLI only creates scheduled triggers. API and GitHub triggers must be added on the web at claude.ai/code/routines.

Daily caps reported by junia.ai and the MindStudio Q1 roundup: Pro 5 runs per day, Max 15 runs per day, Team and Enterprise 25 runs per day. Anthropic does not publish these in the docs verbatim, so check claude.ai/code/routines for current limits before you bet a workflow on them. The beta header is dated. Anthropic ships breaking changes behind new versions, and experimental-cc-routine-2026-04-01 will not last forever.

One landmine: a green status in your run list means the cloud session started and exited cleanly. It does not mean the task succeeded. Open the transcript to verify.

What Is Teleport?

Teleport pulls an existing cloud Claude Code session into your local terminal. You started a refactor in the iOS app on the train. You sit down at your desk. claude --teleport opens a picker. Pick the session. Your terminal now holds the conversation history and the cloud branch is checked out locally.

The verbatim definition from code.claude.com/docs/en/overview:

Kick off a long-running task on the web or iOS app, then pull it into your terminal with claude --teleport.

It is one-way. Cloud to CLI. The Claude Code on the web docs put this plainly:

From the CLI, session handoff is one-way: you can pull cloud sessions into your terminal with --teleport, but you can't push an existing terminal session to the web.

Use --remote for the reverse direction, which spins up a cloud session for your current repo. Use --resume to reopen a local session from this same machine. Three commands, three different directions.

Three ways to invoke Teleport:

claude --teleport                  # interactive picker
claude --teleport <session-id>     # jump straight to a session
/teleport                          # inside an existing CLI session

Inside /tasks, press t on a background session to teleport into it.

Requirements are short. Clean git state (you get prompted to stash if you have uncommitted changes), the same repository as the cloud session, and the cloud branch must be pushed to the remote. claude.ai subscription auth only. No API key, no Bedrock, no Vertex AI, no Microsoft Foundry. Run /login to switch to claude.ai if you are on one of those.

What Is Dispatch?

Dispatch is a Cowork-tab feature in the Claude Desktop app. You message Dispatch a task from the Claude mobile app, and it routes the work. Code-shaped tasks (bug fixes, dependency bumps, test runs, opening PRs) spawn a Claude Code session in the Code tab with a Dispatch badge. Research, writing, and spreadsheet work stay inside Cowork itself.

The verbatim definition from code.claude.com/docs/en/desktop:

Dispatch is a persistent conversation with Claude that lives in the Cowork tab. You message Dispatch a task, and it decides how to handle it.

Your phone is the controller. Your desktop is the executor. All file access, Computer Use approvals, and connected services run on the desktop machine. You get a push notification when the spawned session finishes or needs an approval.

Setup takes under two minutes:

  1. Download Claude Desktop.
  2. Open the Cowork tab.
  3. Click Dispatch.
  4. Scan the QR code with the Claude mobile app.

Two tier landmines hide here. From the official docs at code.claude.com/docs/en/desktop:

Dispatch requires a Pro or Max plan and is not available on Team or Enterprise plans.

And this one is not in the docs but is consistent with how Dispatch works: your computer must stay on. If your laptop sleeps or the app closes, Dispatch stops. It is a remote control, not cloud computing. Sources: Fortune, lowcode.agency.

When To Pick Which

The four are complements, not alternatives. Channels reacts to events while a session is open. Routines runs without any session open. Teleport moves a cloud session to your terminal. Dispatch starts a desktop session from your phone.

A use-case matrix makes the picks obvious:

You want toUse thisWhy
Get a Telegram ping when CI fails and have Claude fix itChannels (Telegram) plus a CI webhookThe event lands in a running session with full repo context
Run a PR review at 9am with your laptop closedRoutines (schedule trigger)Cloud-managed, no local process required
Auto-fix every PR opened against mainRoutines (GitHub trigger, pull_request.opened)One trigger fires one session per PR
Start a refactor on your phone, finish it in your terminalDispatch to start, Teleport to finishDispatch spawns the session, Teleport pulls it down
Ask Claude a question from iMessage and reply in the same chatChannels (iMessage)macOS only, reads chat.db, replies via AppleScript
Trigger Claude from a Sentry alertRoutines (API trigger)POST to the routine's /fire endpoint with the alert body

The Always-On Layer

Together, these four primitives turn Claude Code from a terminal tool into an event-driven coordination layer. Channels push events in. Routines run in the cloud while your laptop sleeps. Teleport pulls a cloud session down to your terminal. Dispatch starts work from your phone. The CLI stops being the only surface and becomes one surface among four.

Anthropic has not coined a name for the bundle. The overview page calls it "Work from anywhere". The table calls it "Use Claude Code everywhere". Pick whichever framing matters to you. The architectural reality is the same: four primitives, one composable layer.

Tier and Restriction Landmines

A short list, gathered in one place, because these are the easiest things to miss:

  1. Channels are blocked on Amazon Bedrock, Google Vertex AI, and Microsoft Foundry. Team and Enterprise need an admin to enable channelsEnabled first.
  2. Channels need Bun installed locally. The plugins are Bun scripts.
  3. Channels need --channels plugin:<name> at launch. Adding the plugin to .mcp.json is not enough.
  4. Routines need the anthropic-beta: experimental-cc-routine-2026-04-01 header on every API trigger call.
  5. Routines have daily caps: Pro 5, Max 15, Team and Enterprise 25 runs per day. One-off runs are exempt from the cap but still count against your subscription usage.
  6. Routines run as you. Anything they push, comment, or message via your connectors looks like you did it.
  7. Teleport is one-way. Cloud to CLI. Use --remote for the reverse.
  8. Teleport refuses to run on a fork or with uncommitted changes. The cloud session's branch must be pushed.
  9. Dispatch is Pro or Max only. No Team. No Enterprise.
  10. Dispatch needs your computer awake. Sleep your laptop and Dispatch stops mid-task.

Build an Always-On Agent in Thirty Minutes

A working setup that uses three of the four. Routines for the heavy scheduled work. Channels for live events. Teleport for the inevitable moment you want to grab a session and dig in.

Step one. Install Bun so the Channels plugins can run:

curl -fsSL https://bun.sh/install | bash

Step two. Add the Telegram channel inside Claude Code:

/plugin install telegram@claude-plugins-official
/reload-plugins
/telegram:configure <bot-token>

Step three. Schedule a nightly Routine. Run this inside a Claude Code session signed into claude.ai:

/schedule daily review open PRs and post a summary at 8am

Step four. Open the Claude Desktop Cowork tab on your laptop and pair Dispatch with the mobile app via QR scan.

Step five. Next time the cloud Routine kicks off something interesting and you want to inspect the session, run:

claude --teleport

Pick the session, land in your terminal, keep going.

The Telegram channel listens while you have a session open. The Routine fires every morning whether you do or not. Dispatch lets you punt a task from your phone when you are away from the desk. Teleport is the escape hatch back into a real terminal whenever you want one.

Ship Always-On Agents Faster

If wiring Channels, Routines, and Dispatch into one workflow sounds like the kind of orchestration story you want to do at the product level, Build This Now ships 32 specialist Claude Code agents that already think this way. The planning team runs in parallel. The build pipeline hands off context between specialists. Adversarial evaluators attack the output before it ships. The same orchestration patterns that make the always-on layer interesting at the platform level are the patterns that ship features in the build system. CodeKit is $79 one-time. Speedy Swarm is $197 one-time. No subscriptions.

The four features are not the always-on agent. They are the wiring. The agent is whatever you compose on top.

Continue in Workflow

  • Claude Code Best Practices
    Five habits separate engineers who ship with Claude Code: PRDs, modular CLAUDE.md rules, custom slash commands, /clear resets, and a system-evolution mindset.
  • Claude Code Auto Mode
    A second Sonnet model reviews every Claude Code tool call before it fires. What auto mode blocks, what it allows, and the allow rules it drops in your settings.
  • Claude Code Channels
    Plug Claude Code into Telegram, Discord, or iMessage with plugin MCP servers. Setup walkthroughs and the async mobile workflows that make it worth wiring up.
  • Building a Next.js App With Claude Code
    How to use Claude Code to build a full Next.js 16 app — from project setup through App Router, Server Components, and deployment.
  • Claude Code Pricing: What You'll Actually Pay
    Claude Code is free to install. What you pay depends on your plan. A plain-English breakdown of every tier, real usage costs, and which plan fits your workflow.
  • Adding Stripe Payments With Claude Code
    Wire up Stripe Checkout, webhooks, and the customer portal in a Next.js app using Claude Code. From first prompt to live payment in one session.

More from Handbook

  • Agent Fundamentals
    Five ways to build specialist agents in Claude Code: Task sub-agents, .claude/agents YAML, custom slash commands, CLAUDE.md personas, and perspective prompts.
  • Agent Harness Engineering
    The harness is every layer around your AI agent except the model itself. Learn the five control levers, the constraint paradox, and why harness design determines agent performance more than the model does.
  • Agent Patterns
    Orchestrator, fan-out, validation chain, specialist routing, progressive refinement, and watchdog. Six orchestration shapes to wire Claude Code sub-agents with.
  • Agent Teams Best Practices
    Battle-tested patterns for Claude Code Agent Teams. Context-rich spawn prompts, right-sized tasks, file ownership, delegate mode, and v2.1.33-v2.1.45 fixes.

Stop configuring. Start building.

SaaS builder templates with AI orchestration.

On this page

Launch Timeline
What Is a Channel?
What Is a Routine?
What Is Teleport?
What Is Dispatch?
When To Pick Which
The Always-On Layer
Tier and Restriction Landmines
Build an Always-On Agent in Thirty Minutes
Ship Always-On Agents Faster

Stop configuring. Start building.

SaaS builder templates with AI orchestration.