All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Support for
@botmentions in channels to start new interactions
- Always reply in threads instead of sending new messages
0.4.0 - 2026-02-25
- Image input and output support
- Attach images to Slack messages to include them in agent prompts
- Use
#read <image_path>to send local images from workspace to Slack - Agents can send images back, which are automatically uploaded to Slack
- Supports PNG, JPEG, GIF, WebP, BMP formats
- New Slack bot permission required:
files:read #cancelcommand to cancel ongoing agent operations- Support for multiple concurrent sessions per agent (each session spawns its own agent process)
#modelcommand now supports deprecatedset_session_modelAPI with fallback
- Architecture redesign: one agent process per session instead of shared agent processes
- Faster Ctrl+C shutdown using signal handling
- Session config can be correctly initialized
#readcommand now correctly handles absolute paths and~paths on all platforms
0.3.0 - 2026-02-25
- Slack plan block rendering for ACP plan updates
- Raw Slack Web API message post/update paths to support unsupported block types
- Rate limiting for all Slack API calls (minimum 800ms interval)
- Concurrent event handling to prevent blocking
- Support for agent thinking display
- Support for agent plan display
- Use Block Kit markdown blocks instead of plain text with mrkdwn formatting
- Buffer flushing now uses notification channel instead of sleep-based timing
- Optimized OpenCode compatibility
- Shell commands with URLs now work correctly (decode Slack's angle bracket URL formatting)
- Message ordering issues by ensuring all buffers flush through the notification queue
0.2.0 - 2026-02-23
#diffcommand now accepts any git diff CLI parameters (e.g.,#diff --cached,#diff HEAD~1)#readand!<command>now work outside agent threads using default workspace from config- Text content from tool calls is now uploaded as plain text files for easier viewing
- Command
#modeto show available modes and current mode - Command
#mode <value>to switch session mode via config options or deprecated modes API - Command
#mode <value>!to force set mode even when mode list is not available - Command
#modelto show available models and current model - Command
#model <value>to switch session model via config options - Support for ACP Session Config Options protocol (new standard API)
- Support for deprecated
session/set_modeAPI for backward compatibility with agents using older ACP versions - Agent config option
default_modeto automatically set mode when creating new sessions (supports!suffix for force setting) - Agent config option
default_modelto automatically set model when creating new sessions - Session welcome message now shows configured default mode and model values
- Error reactions:
#newcommand now adds:x:emoji reaction to user's message when session creation fails
- Diff format simplified to show only changed lines with +/- prefix, no headers or context markers
- Messages sent to Slack now properly encode special characters (
&,<,>) to prevent formatting issues - Incoming messages from Slack now use minimal decoding (only
&,<,>) as per Slack's documentation - Failed agent spawns are no longer marked as running, allowing retry with
#newcommand #newcommand now validates workspace exists before creating agent session- Shell command output now omits empty stdout/stderr blocks for cleaner display
0.1.1 - 2026-02-23
- Command
#sessionsto show all active sessions info - White check mark emoji reaction on
#newmessage when session ends - Bot token scope
reactions:writerequired for emoji reactions
0.1.0 - 2026-02-21
- Slack integration via Socket Mode (no public endpoint required)
- Multi-agent support with configuration and switching
- Thread-based session management with persistent context
- Workspace context for local filesystem operations
- Per-agent tool call auto-approval configuration
- Commands:
#new,#agents,#session,#end,#read,#diff - Shell command execution with
!prefix