channels/. Each file is a messaging ingress: the managed runtime mounts a public Events URL, verifies the provider signature, invokes your agent with identity stamps, and can auto-reply on the same conversation.
Managed Deep Agents is in private beta, available on LangSmith Cloud in the US region only. Join the waitlist to request access.
Channel types
Slack is the supported channel today. Declare each channel as its own file under
channels/, you do not register channels in the agent entry.
For the full project layout, see the CLI project file reference.
How channels work
- You declare a channel under
channels/(for exampledefineSlackChannel/define_slack_channel). - Compile and deploy discover the file name as the channel name (
channels/slack.ts→slack). - The runtime mounts provider ingress for that channel on the Agent Server.
- Inbound messages invoke your agent with identity stamps so tools and memory see the same caller model as HTTP runs.
- When enabled, the runtime can reply on the originating conversation.
Identity and threading
For Slack app setup, secrets, Event Subscriptions, and Connect-with-Slack, see Slack.
Test and deploy
Test the project locally withmda dev, then deploy it with mda deploy. Open deployment traces in LangSmith to inspect model calls, tool calls, errors, and latency.
When channels/ is present, mda deploy preflights Slack secrets (SLACK_SIGNING_SECRET, SLACK_BOT_TOKEN) before upload. Missing secrets fail the deploy early.
Next steps
Slack
Declare a Slack channel, configure the Slack app, and enable Connect-with-Slack.
Identity
Choose
shared-bot or linked validated_token for channel callers.Schedules
Run managed cron schedules alongside channel bots.
CLI reference
Look up
channels/ project file rules and deploy preflight.Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

