Team Integrations: Slack, Chrome, and Remote Control
In previous sections, we explored Claude Code as a local tool with the ability to offload tasks to the cloud via routines and orchestrate work through subagents. This article closes the topic from a different angle: not "how to automate," but "where does your team live, and how do you get there."
Slack, a mobile phone, a browser — these are the presence points where decisions are made, bugs surface, and discussions happen. Claude Code knows how to show up in each of them.
Claude in Slack: from a mention to a pull request
The integration launched as a research preview in December 2025 and runs on top of the existing "Claude for Slack" app. The key distinction is automatic detection of development tasks and their routing to Cloud Agents: web, routines, and background tasks.
How it works:
1. You write in a channel or thread: @Claude check why authorization fails when logging in via OAuth
2. Claude analyzes the message and determines: this is a development task
3. A new Claude Code on the web session is created — not on your machine, but on Anthropic's infrastructure
4. Claude gathers context from the thread (or the channel's recent messages) and automatically selects a repository
5. As work progresses — updates appear in the Slack thread
6. On completion — a summary with "View Session" and "Create PR" buttons
Claude operates in two routing modes, configurable in the App Home:
- Code only — all @Claude mentions go to Claude Code. For teams where the Slack integration is exclusively for development.
- Code + Chat — Claude decides on its own: code → Claude Code, questions and analysis → regular chat. If it gets it wrong — a "Retry as Code" or "Retry as Chat" button is available.
Requirements: a Pro/Max/Team/Enterprise subscription with access to Claude Code on the web; a connected GitHub account; Claude invited to the channel via /invite @Claude.
Important nuance: each user launches sessions under their own account. If a colleague doesn't have access to Claude Code on the web, they'll get a regular chat with no code routing.
Remote Control: your local session — from any device
The Slack integration starts a new cloud session. Remote Control is fundamentally different: you control an already-running local session from your smartphone or browser, while Claude works on your machine.
# Start a session in remote control mode
claude --remote-control
# Or activate it inside an already-running session
/remote-control My Project
# Server mode: accepts multiple connections in parallel
claude remote-control --spawn worktreeAfter starting, a URL and QR code appear in the terminal. Open claude.ai/code in a browser or the Claude app for iOS/Android — and you see your session. Type a message from your phone — it arrives in the terminal. Claude runs locally and has access to your files, MCP servers, and tools.
Mobile push notifications (Claude Code v2.1.110+): for long-running tasks, Claude sends you a notification when the work is done or a decision is needed. Enable via /config → Push when Claude decides.
Remote Control is a "window" into your machine, not a transfer of computation. If you close the terminal, the session ends.
Channels: Telegram, Discord, and iMessage as an interface to a session
Channels (research preview, Claude Code v2.1.80+) are MCP servers that push events into your running session. You don't poll the system — the system signals Claude.
The difference from Remote Control: Remote Control means "you control Claude from your smartphone." Channels means "external systems — CI, chatbots, monitoring — write directly into the session."
The research preview supports three channels: Telegram, Discord, and iMessage. Plus fakechat for local testing without tokens.
Setting up a Telegram channel:
# 1. Create a bot via @BotFather in Telegram, copy the token
# 2. Install the plugin
/plugin install telegram@claude-plugins-official
/reload-plugins
# 3. Configure the token
/telegram:configure <token>
# 4. Start a session with the channel
claude --channels plugin:telegram@claude-plugins-official
# 5. Write to the bot — receive a pairing code
/telegram:access pair <code>
/telegram:access policy allowlist # only your account can send messagesThe same scheme applies to Discord: create a bot in the Developer Portal, enable the Message Content Intent, invite it to your server, and install the plugin.
What happens during operation: when you write to the bot in Telegram, the message arrives in the session as a <channel source="telegram"> event. Claude reads it, performs the task (reads files, runs tests, writes code), and responds through the same channel. The terminal shows the tool call, but not the response text — that appears in Telegram.
Use cases:
- Chat bridge: you write from your phone → Claude works with real files on the server → response in the messenger
- Webhook receiver: CI fails → CI triggers an HTTP endpoint → message arrives in the session → Claude inspects the logs and finds the cause
- Monitoring: alerting system connected to a channel → Claude's first diagnosis before you've even opened your laptop
# Multiple channels can be combined
claude --channels plugin:telegram@claude-plugins-official plugin:discord@claude-plugins-officialSecurity: each channel maintains a sender allowlist. The first run requires pairing via a one-time code. All subsequent messages without pairing are silently dropped. For enterprise environments, channelsEnabled is managed by the administrator at the organization level.
Chrome: browser automation from the terminal
Claude in Chrome (beta) is an integration with a browser extension that gives Claude Code direct access to open tabs, the DOM, the console, and network requests.
# Launch with Chrome
claude --chrome
# Or enable it inside a session
/chromeWhat you need: the "Claude" extension for Chrome or Edge (v1.0.36+), Claude Code v2.0.73+, a Pro/Max/Team/Enterprise subscription (not via Bedrock/Vertex/Foundry — direct Anthropic account only).
Claude opens tabs, clicks, fills out forms, reads the console, scrolls — all visible in real time. If it encounters a login screen or CAPTCHA, it pauses and asks you to intervene manually.
Practical scenarios:
# Debug after an edit
I changed the login form handler. Open localhost:3000,
try entering invalid data, and check what's in the console.
# Auto-fill from data
contacts.csv has 200 rows. For each one, go to crm.example.com
and create a contact using the form.
# Working with authenticated services
Open my Google Doc docs.google.com/d/abc123 and add
a section with the results from the last sprint.Claude uses your already-open browser with your cookies — all sites you're already logged into are accessible, without separate API keys.
The full list of tools is available via /mcp → claude-in-chrome. By default, Chrome tools are not loaded — this reduces context window usage. If you need Chrome in every session, enable it via /chrome → "Enabled by default."
Integration comparison map
flowchart TD
A[Task / event] --> B{Where from?}
B --> |Slack channel| C[Claude in Slack]
B --> |Phone / other browser| D[Remote Control]
B --> |Telegram / Discord / CI webhook| E[Channels]
B --> |Browser / web form| F[Claude in Chrome]
C --> G[New cloud session\non Anthropic infrastructure]
G --> H[GitHub repo is cloned]
H --> I[PR in Slack thread]
D --> J[Local session\non your machine]
J --> K[Control via\nclaude.ai/code or mobile app]
E --> L[Running local session]
L --> M[Claude reacts\nto the event and replies to the channel]
F --> N[Chrome / Edge with extension]
N --> O[DOM, console, forms,\nauthenticated services]Choosing the right tool
The four mechanisms cover different touchpoints between your team and the code:
- Slack — a task came up in the team chat and you need to delegate it to the background and get a PR without switching context
- Remote Control — you're in the middle of a complex debugging session on your local machine and want to continue from your phone on the couch
- Channels — external systems (CI, monitoring, other developers via messenger) need to deliver events into your running session
- Chrome — the task requires interaction with a real browser: visual debugging, E2E testing, working with web services that have no API
None of these mechanisms replaces another. In practice they work in combination: Chrome for local frontend debugging, Channels to let CI trigger a session when tests fail, Slack for team tasks asynchronously, Remote Control when you need to hand off control between devices.
See also
- Cloud Agents: web, routines, and background tasks — the cloud sessions that power the Slack integration
- GitHub Actions and automated code review — CI integration via GitHub, an alternative to Channels for webhook scenarios
- Dynamic workflows and agent orchestration — parallel sessions and orchestration that Slack and Channels can trigger
- Plugins and marketplace — Channels plugins are installed like regular plugins via
/plugin install - Headless mode and CLI scripting — background session launch, compatible with Channels via
-p - Model Context Protocol: architecture and fundamentals — Channels are implemented on top of the MCP protocol
- Web development and frontend debugging — more on Chrome and Chrome DevTools MCP in the context of frontend development
Источники
- Claude in Chrome (beta) — Claude Code Docs
- Push events into a running session with channels — Claude Code Docs
- Continue local sessions from any device with Remote Control — Claude Code Docs
- Claude Code in Slack — Claude Code Docs
- Automate work with routines — Claude Code Docs
- Claude Code is coming to Slack — IT Pro
- Claude Code Channels: Telegram, Discord & iMessage (2026) — claudefa.st