Codex drafts it. You approve it. PostDelegate posts it.Slack: Text and image messages to the channel you pick.
How to post to Slack from Codex
- Add PostDelegate to Codex. Add the server to ~/.codex/config.toml as below. Run codex mcp login postdelegate and sign in in your browser.
~/.codex/config.toml
[mcp_servers.postdelegate] url = "https://app.postdelegate.com/mcp-oauth-dynamic" - Connect Slack in PostDelegate. On the calendar page choose Add Channel, then Slack. Choose the workspace and allow PostDelegate. It asks to see the workspace's channels and members, join public channels and post messages. You need to be allowed to add apps to the workspace.
- Ask Codex for a draft. Describe the post in plain words. Codex checks your Slack channel's rules, creates the post and sends back a preview link.
Teach Codex the posting rules
Add PostDelegate’s AGENTS.md to your repository, so Codex knows the MCP tools, the REST API and the safety rules when it works there. Agent files has the steps.
What to ask Codex
Mention any Slack setting in plain words and Codex fills it in. Codex can also read text files in your project, such as a changelog or a draft in Markdown.
- Draft a Slack message for #general about Friday’s all-hands and show me the preview link.
- Schedule a reminder in #team for Monday at 9:00: “Post your goals for the week.”
- Summarise the merged pull requests listed in RELEASES.md into a Slack update for #engineering, as a draft.
What Codex can do on your Slack channel
- Check the rules first. Before writing, it reads your Slack channel's length limit (4,000 characters) and required settings.
- Draft, schedule or post. It creates a draft, a scheduled post or an immediate post, and runs the same checks as the app.
- Use your media. It attaches files from your media library or adds one from a public link.
- Review and fix. It lists what is scheduled, changes the Slack settings of a post that has not gone out, and deletes posts you no longer want.
Slack is a workplace chat app, and scheduled messages are useful for announcements, reminders and updates that should land at a set time. PostDelegate sends each post as a message to the channel you choose, and text uses Slack's own formatting.
Slack settings Codex can fill in
| Setting | Notes |
|---|---|
| Channel | Required. Choose the Slack channel to post to. PostDelegate joins a public channel on its own before posting. |
Before you start
- PostDelegate cannot join private channels by itself. Invite the PostDelegate app to the channel in Slack, then pick it again.
- Messages are sent from the PostDelegate app, not your own Slack account.
The Slack channel guide has every field, and MCP tools lists exactly what an assistant can and cannot do.
Questions
Will Codex publish to Slack without asking me?
Do I need an API key to connect Codex?
Does it cost extra to use Codex with PostDelegate?
Can Codex attach images or video to a Slack post?
Does the message come from my own Slack account?
Can I schedule a message to a private Slack channel?
Slack from other assistants
Other networks from Codex
- YouTube
- Bluesky
- Mastodon
- Google Business Profile
- Telegram
- Discord
- Tumblr
- Lemmy
- Nostr
- Twitch
- Kick
- Dribbble
- DEV.to
- Medium
- WordPress
- Hashnode
- Listmonk (email)
Prefer to plan Slack posts yourself? See the Slack scheduler.