Post the updatewithout opening Slack

Write the stand-up where you already are, press the shortcut, pick the channel. And when the thread is the thing you need, pull it into your work session so the next agent answers with it in hand.

A bot token for posting and pulling · a user token for search · the channel is picked before anything runs

KhintPalette
Sprint 24
Slack

One row out, three rows in

Post to Slack is on out of the box because it's the row that saves the trip. The three pull rows are opt-in, because a channel you drag into your work session should be a decision rather than a habit.

Slack is where the context is,
and where the update has to go

Both trips cost the same thing: opening Slack, which is never a two-minute visit. These four cards are what the connection removes, and the one caveat it won't hide from you.

One write, three reads

Post an update to any channel, or pull a channel, a thread or a search into your session. Search is the one row that needs a user token: Slack doesn't grant message search to bots, and the card says so rather than failing quietly.

The posted message is in your session

What you posted is logged as a session entry once Slack confirms, so the next agent runs knowing the team was told, and so does your AI client reading over MCP.

Or post it as one branch of three

Post to Slack is a workflow step, and a parallel step dispatches two to four destinations at once. Branches are best-effort: a message that landed stays landed, because it can't be un-sent.

Off means paused, not wiped

Turning the card off hides the rows and stops workflows using it, while the token stays for an instant reconnect. Forget credentials is the separate, deliberate clear.

It posts when you press,
and never otherwise

The app is yours, not Khint's, and it carries the three scopes you granted it. There's no event subscription and no background read of your workspace.

Security and privacy
The token lives in your OS keychain
Calls go from your Mac straight to Slack
Three scopes: chat:write, channels:read, channels:history
The channel is chosen before the model runs
No listening, no polling, no event subscription
Search needs a user token, and the card says so
A landed post is never reported as a failure
Pause keeps the token, Forget clears it

Connect Slack in about five minutes

Slack asks for a small app of your own. It's the longest setup of the six, and it's four screens.

  1. Create an app

    At api.slack.com/apps, choose From scratch and pick your workspace.

  2. Add three bot scopes

    Under OAuth & Permissions, add chat:write, channels:read and channels:history. That's everything the posting and pulling rows need.

  3. Install it and copy the token

    Install the app to your workspace and copy the Bot User OAuth Token. It starts with xoxb-.

  4. Turn Slack on in Khint and pick a channel

    Paste the token, Save, then choose your default channel. The token goes into your operating system's keychain.

  5. For search, use a user token instead

    Slack doesn't grant message search to bot tokens. If you want Search messages, paste a user token (xoxp-) rather than the bot one. The other three rows work on either.

  6. Post to Slack is also a workflow step, including inside a parallel step that files a Jira issue, publishes a Confluence page and posts to your channel at once.

Common questions about Slack and Khint

Do I need my workspace admin to approve this?

It depends on your workspace. Creating an app and installing it to a workspace can require admin approval on some Slack plans, and on others any member can do it. The app itself is yours, asks for three scopes, and isn't a Khint-owned app: nothing is shared with us.

Why does Search messages need a different token?

Because Slack doesn't expose message search to bot tokens at all. It's a user-token API. If you want that row, paste a user token (xoxp-) instead of the bot token (xoxb-). Posting and the two pull rows work with either.

Does Khint read my Slack in the background?

No. It calls Slack only when you press a row. There's no event subscription, no polling and no copy of your workspace anywhere: what a pull brings back lands in your local Memory session, which never syncs.

What does posting cost?

The Slack call is free. If the row hands your text to an agent to rewrite it into an update first, that's one normal agent run against your monthly credits. Posting a selection as-is, and every pull, cost nothing.

Can one press write to Slack and Jira at the same time?

Yes. A workflow's parallel step takes two to four destinations and dispatches them concurrently from the same running text, so a single press can file the ticket, publish the page and post to the channel. Branches are best-effort: the ones that succeeded stay, because a landed message can't be un-sent.

Write the update once, post it from where you wrote it

Free with 300 credits a month. No credit card. macOS 13+ or Windows 10 22H2+.