Features
Slack
Bring the Slack channels and DMs you choose into share-doc, as you. New messages arrive within seconds, what you write goes back to Slack as you, and mentions and DMs land in Unread with everything else. Because every conversation can be mirrored to your disk, your agent can read the client's Slack while it works in the client's repo.
It's a personal connection: yours, to your Slack account. Nobody else in share-doc sees your Slack conversations unless you add them, and nothing you didn't write is ever posted to Slack. Each person who wants their Slack in share-doc connects their own.
Connect a Slack workspace#
Add to Slack#
Your settings → Slack → Add to Slack (or go straight to
/settings/slack). If you belong to several share-doc workspaces, it asks which one the Slack conversations go into.Allow#
On Slack's page, pick the Slack workspace in the top-right and click Allow. If Slack says Request to install instead, that Slack only lets admins approve new apps: ask one to approve it, then try again.
Tick the conversations#
You come back to Settings → Slack. Edit links on the workspace's card opens the picker: every channel, private channel, DM and group DM you're in on Slack, with a filter box.
From a terminal, sharedoc slack connect opens the same page and waits until you're done (--no-browser prints the link instead). To connect another Slack workspace, Add to Slack again; each gets its own card and its own sidebar section.
Choose what comes in#
For each conversation you tick, choose:
- Two-way (the default): what you post, reply, edit, delete and react with goes to Slack as you, within seconds.
- Read only: Slack comes in, nothing goes out. Good for busy channels you only follow.
Under the list, History to bring in: the last 30 days (the default), the last 7, or none. History arrives newest first, with threads and reactions. It doesn't notify you, and what you'd already read in Slack arrives read. A Backfilling pill under the sidebar heading shows what's still coming in.
- Unticking a conversation archives it in share-doc with its history. It doesn't leave the channel in Slack.
- Re-ticking it later brings it back and fills in what was said meanwhile.
Using a Slack conversation#
Each linked conversation is an ordinary share-doc conversation that only you can see: threads, reactions, search, ⌘K and the chat mirror all work the same.
- In the sidebar, each Slack workspace is a Slack · <team> section under Channels, its conversations named as in Slack (
#design,Colin Wu). A small eye marks a read-only one; an amber dot means something needs attention. The section's Archived list keeps conversations you unticked, read only. - Who said what. Messages from Slack people carry their Slack name and avatar and a via Slack chip. Someone whose Slack email matches a person in your workspace shows as that teammate.
- Posting. In a two-way conversation the Slack logo sits beside Send, and its tooltip says where your post goes (Sends to #design in Brightmotion Slack). No logo, no Slack. Mentioning a teammate who is also in that Slack sends a real Slack mention.
- Read-only conversations have no composer: Read only — change in Settings → Slack.
- Reactions match Slack, with names and custom Slack emoji. Clicking a pill toggles your own, which goes to Slack on a two-way link.
- Files from Slack show under the message: pictures and videos as tiles, other files as a chip with Open in Slack and Download. They aren't copied; share-doc fetches them when you look. Save to project… puts a copy in a project and folder you pick.
- Files you send in a two-way conversation go to Slack with your message, up to 10 per message (any more go as links). In share-doc the file stays in
_inbox, private to that conversation. If Slack refuses one, the message goes anyway with a link, and a line says which file didn't make it. - Adding a teammate to a Slack conversation lets them read its history. Their posts are not sent to Slack; a line under each says so.
Unread and read state#
- A Slack message that @mentions you, or any message in a linked Slack DM, lands in Unread like any other, and your push and email settings apply.
- Read it in one place and it clears in the other. Open a conversation here and a few seconds later it's no longer bold in Slack. Read it in Slack and within about a minute it clears here.
- A mention inside a thread reply stays in Unread until you open that thread here, or reply to it from Slack.
New DMs#
- From share-doc: the + on a Slack section's heading, New Slack message in … in ⌘K, or New message on the Settings card. Search by name, @handle or email; pick one person for a DM or two to eight for a group DM, then Start. Nothing reaches Slack until you post.
- From Slack: a DM that isn't linked yet links itself on its first message, two-way, with the 7 days before it as context. DMs from bots and apps are left out, and a DM you unticked stays out.
For agents and the CLI#
A Slack conversation is a channel like any other. With the chat mirror on, each one gets a folder under ~/sharedoc/chat/ starting with slack-. channel history, thread show, thread reply and channel post work as usual; there's no separate "post to Slack" command.
sharedoc slack list # your connections
sharedoc slack status # health, last event, how far history has come in
sharedoc slack links <connection> # what a connection brings in
sharedoc slack links <connection> --set "#design" --direction in # read only (both = two-way, off = remove)
sharedoc slack people colin # find someone in the Slack workspace
sharedoc slack dm @colin @dana # start a DM or group DM; prints where to post
sharedoc slack file <message-id> --index 1 # download a file shared in Slack
sharedoc slack disconnect <connection> --yesIn a two-way conversation, what an agent posts goes to Slack as you. Tell your agent to draft (sharedoc draft create) rather than post unless you say so. skill.md tells agents the same.
Privacy#
- A linked Slack conversation is private to you in share-doc. Search, ⌘K and the chat mirror show it only to you and anyone you add.
- share-doc reads only the conversations you link and DMs sent to you, and only what your own Slack account can already see.
- Nothing is posted to Slack that you didn't write.
- Slack files stay in Slack. share-doc keeps no copy unless you save one to a project, and a file deleted in Slack disappears here too.
- Your Slack token is encrypted at rest, never logged and never shown back. The full wording is on the privacy page.
When something is wrong#
- An amber dot, or a Reconnect notification. Slack stopped accepting the connection (a password change, an admin removing the app). Nothing moves until you reconnect, and posts you make meanwhile are not sent later. Reconnect in Settings → Slack → Reconnect with the same Slack account; every link is kept.
- Not sent to Slack under a post: someone you added wrote it, it went into a read-only conversation, or it replies to a post that isn't in Slack.
- Not delivered to Slack: the connection needs reconnecting, you left or someone archived the channel in Slack, or Slack refused it three times. The line says which.
- Disconnect (Settings → Slack → Disconnect, after a confirm naming what goes): Slack revokes share-doc's access, the token is deleted, and the conversations are archived here with their history. Nothing changes in Slack. Connect the same account again and tick them back in, history included.
- Each Slack account can be connected to one share-doc account.
What it doesn't do yet#
- @mentioning someone who is only in Slack. Their name goes as plain text.
- Joining Slack channels you aren't in. Join in Slack first and it appears in the picker.
- Switching off auto-linked DMs or read-state sync. Both are always on.
- Reacting with custom Slack emoji from share-doc (they show; you can't pick them yet), and reactions on Slack files.
- Slack huddles, canvases, workflows, bookmarks and pins.
- A workspace-wide bridge where everyone sees a Slack channel. The connection is personal by design.
- Notifications from share-doc inside Slack.