skip to content
$worker

slack

v0.1.7

Slack as an iii worker — exposes the Slack Web API as slack::* functions, plus a harness bridge (inbound events → harness::send, native streaming, approvals). Configurable from the console.

iiiverified
5 installs0 in 7d0 today
install
$iii worker add slack
  • macOS: arm64 · x64
  • Linux: arm64 · armv7 · x64
  • Windows: arm64 · x64 · x86

exact versions are immutable; binary and bundle artifacts are digest-pinned.

functions

51

slack::assistant::set-status

function

Set the assistant-thread status (the thinking indicator).

request
  • channel_idstringrequired
  • statusstringrequired

    Status text, e.g. `"is thinking..."`. Empty string clears it.

  • thread_tsstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::assistant::set-suggested-prompts

function

Set suggested prompts for an assistant thread (≤4).

request
  • channel_idstringrequired
  • promptsobject[]required

    Up to 4 prompts.

    • messagestringrequired

      Text sent to the assistant when the prompt is clicked.

    • titlestringrequired

      Clickable label shown to the user.

  • thread_tsstringrequired
  • titlestring
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::assistant::set-title

function

Set the assistant-thread title.

request
  • channel_idstringrequired
  • thread_tsstringrequired
  • titlestringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::auth::test

function

Check the bot token and return the bot/workspace identity (auth.test).

request
empty object
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::bookmarks::add

function

Add a bookmark to a channel.

request
  • channel_idstringrequired
  • linkstring
  • titlestringrequired
  • typestringrequired

    Bookmark type, e.g. `link`.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::call

function

Call any Slack Web API method by name with arbitrary params (escape hatch).

request
  • as_userboolean

    Use the configured user token (`xoxp-`) instead of the bot token.

  • methodstringrequired

    Slack Web API method name, e.g. `chat.postMessage`, `team.info`.

  • paramsunknown

    Method params object (defaults to `{}`).

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::chat::delete

function

Delete a message by ts.

request
  • channelstringrequired
  • tsstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::chat::post-ephemeral

function

Post a message visible only to one user.

request
  • blocksunknown
  • channelstringrequired
  • textstring
  • thread_tsstring
  • userstringrequired

    User who will see the ephemeral message.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::chat::post-message

function

Post a message to a channel, DM, or thread.

request
  • blocksunknown

    Block Kit blocks (array). Mutually exclusive with `markdown_text`.

  • channelstringrequired

    Channel, DM, or user id to post to (e.g. `C0123ABC` or `U0123ABC`).

  • markdown_textstring

    Markdown body (≤12000 chars). Mutually exclusive with `blocks`/`text`.

  • textstring
  • thread_tsstring

    Parent message ts to reply in a thread.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::chat::schedule-message

function

Schedule a message to post at a future time.

request
  • blocksunknown
  • channelstringrequired
  • post_atinteger· int64required

    Unix epoch seconds to post at.

  • textstring
  • thread_tsstring
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::chat::update

function

Edit an existing message by ts.

request
  • blocksunknown
  • channelstringrequired
  • markdown_textstring
  • textstring
  • tsstringrequired

    ts of the message to edit.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::config-status

function

Validate the configured Slack credentials and report identity + health (for the console badge).

request
empty object
response
  • bot_idstring
  • bot_user_idstring
  • bridge_enabledbooleanrequired

    Whether the inbound bridge is enabled (socket or http transport configured).

  • enterprise_idstring
  • errorstring
  • okbooleanrequired

    True when the configured bot_token authenticates against Slack.

  • teamstring
  • team_idstring
  • urlstring

slack::conversations::archive

function

Archive a channel.

request
  • channelstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::create

function

Create a channel.

request
  • is_privateboolean
  • namestringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::history

function

Fetch a conversation's message history.

request
  • channelstringrequired
  • cursorstring
  • lateststring
  • limitinteger· uint32min 0
  • oldeststring
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::info

function

Get metadata for one conversation.

request
  • channelstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::invite

function

Invite users to a channel.

request
  • channelstringrequired
  • usersstringrequired

    Comma-separated user ids.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::join

function

Join a public channel.

request
  • channelstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::list

function

List channels/DMs the bot can see.

request
  • cursorstring
  • exclude_archivedboolean
  • limitinteger· uint32min 0
  • typesstring

    Comma-separated types: `public_channel,private_channel,mpim,im`.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::members

function

List member ids of a conversation.

request
  • channelstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::open

function

Open/return a DM or MPIM channel.

request
  • channelstring
  • usersstring

    Comma-separated user ids to open a DM/MPIM with.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::replies

function

Fetch the replies in a thread.

request
  • channelstringrequired
  • cursorstring
  • limitinteger· uint32min 0
  • tsstringrequired

    Parent thread ts.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::set-purpose

function

Set a channel purpose.

request
  • channelstringrequired
  • purposestringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::conversations::set-topic

function

Set a channel topic.

request
  • channelstringrequired
  • topicstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::events

function

Slack Events API ingress (signature-verified).

request
  • bodyunknown

    The Slack event envelope (also delivered raw on the request_body channel).

response
valuenull

slack::files::info

function

Get metadata for a file.

request
  • filestringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::files::list

function

List files visible to the bot.

request
  • channelstring
  • userstring
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::files::upload

function

Upload a file (reserve URL, upload bytes, finalize) and optionally share it to a channel.

request
  • channel_idstring

    Channel id to share the file into.

  • contentstring

    UTF-8 text content. Provide this OR `content_base64`.

  • content_base64string

    Base64-encoded binary content. Provide this OR `content`.

  • filenamestringrequired
  • initial_commentstring
  • thread_tsstring
  • titlestring
response
  • file_idstringrequired
  • okbooleanrequired

slack::interactions

function

Slack interactivity ingress (block actions / view submissions).

request
  • bodyunknown

    The url-encoded interactivity body (also delivered raw on the request_body channel).

response
valuenull

slack::notify

function

Send a message to the Slack thread bound to a session (out-of-band, e.g. a reminder).

request
  • blocksunknown

    Optional Block Kit blocks.

  • session_idstringrequired

    A session this bot created (its replies are bound to a Slack thread).

  • textstring

    Message text (markdown). Used unless `blocks` is provided.

response
  • channelstringrequired
  • deliveredbooleanrequired
  • tsstring

slack::on-config-change

function

Internal: reload slack configuration from the authoritative store on change.

request
empty object
response
  • okbooleanrequired

slack::on-message-added

function

Seed the Slack stream for a new assistant entry.

request
  • entry_idstringrequired
  • messageany of
    any of (2)
    variant 1
    • contentone of[]
      … expand 4 nested
      one of (4)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 3
      • function_idstringrequired
      • typestringrequiredenum: function_call
      variant 4
      • typestringrequiredenum: other
    • rolestringrequired
    variant 2
    valuenull
  • session_idstringrequired
response
  • okbooleanrequired

slack::on-message-updated

function

Stream assistant text revisions into Slack.

request
  • entry_idstringrequired
  • messageobjectrequired
    • contentone of[]
      one of (4)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 3
      • function_idstringrequired
      • typestringrequiredenum: function_call
      variant 4
      • typestringrequiredenum: other
    • rolestringrequired
  • revisioninteger· uint64requiredmin 0
  • session_idstringrequired
response
  • okbooleanrequired

slack::on-pending-created

function

Post an inline Block Kit approval when a tool call is held.

request
  • arguments_excerptunknown
  • function_call_idstringrequired
  • function_idstringrequired
  • session_idstringrequired
response
  • okbooleanrequired

slack::on-pending-resolved

function

Observe approval resolution (button click already cleared the prompt).

request
  • function_call_idstringrequired
  • outcomestring
  • session_idstringrequired
response
  • okbooleanrequired

slack::on-turn-completed

function

Finalize the Slack stream and report turn errors.

request
  • reasonstring
  • result_errorstring
  • session_idstringrequired
  • statusstringrequired
  • terminalboolean

    `false` while the session still owns an armed wake: the run continues and a later turn carries the real outcome. Missing (legacy harness) → terminal.

  • turn_idstringrequired
response
  • okbooleanrequired

slack::pins::add

function

Pin a message to a channel.

request
  • channelstringrequired
  • timestampstringrequired

    Message ts to pin/unpin.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::pins::list

function

List a channel's pinned items.

request
  • channelstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::reactions::add

function

Add an emoji reaction to a message.

request
  • channelstringrequired
  • namestringrequired

    Emoji name without colons (e.g. `thumbsup`).

  • timestampstringrequired

    Message ts to react to.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::reactions::get

function

Get reactions on a message.

request
  • channelstringrequired
  • timestampstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::reactions::remove

function

Remove an emoji reaction from a message.

request
  • channelstringrequired
  • namestringrequired

    Emoji name without colons (e.g. `thumbsup`).

  • timestampstringrequired

    Message ts to react to.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::search::messages

function

Search messages (requires a configured user_token).

request
  • countinteger· uint32min 0
  • cursorstring
  • querystringrequired
  • sortstring
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::users::info

function

Get a user's profile and metadata.

request
  • userstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::users::list

function

List workspace users.

request
  • cursorstring
  • limitinteger· uint32min 0
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::users::lookup-by-email

function

Find a user by email address.

request
  • emailstringrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::users::profile-get

function

Get a user's profile fields.

request
  • userstring
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::views::open

function

Open a Block Kit modal.

request
  • trigger_idstringrequired

    Interaction trigger_id (expires ~3s after the interaction).

  • viewunknownrequired

    Block Kit view object.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::views::publish

function

Publish the App Home tab for a user.

request
  • hashstring
  • user_idstringrequired
  • viewunknownrequired

    Block Kit view of type `home`.

response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::views::push

function

Push a new modal onto the stack.

request
  • trigger_idstringrequired
  • viewunknownrequired
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

slack::views::update

function

Update an open view.

request
  • external_idstring
  • hashstring
  • viewunknownrequired
  • view_idstring
response
  • okbooleanrequired

    Slack's success flag (always true here; failures surface as errors).

triggers

0
no triggers registered