Releases: leecoder/opencode-slack-agent
Releases · leecoder/opencode-slack-agent
Release list
v3.5.1
v3.5.0
What's New
- Background task monitoring: Attach and monitor background tasks in Slack threads
- !sync command: Time-ordered message sync for catching up on conversation
- Faster responses: Idle poll interval reduced 5s→2s
- ALLOWED_USERS fix: Email-based user parsing corrected
- Notify interval fix: Preserve lastDelayNotifiedAt on activity for guaranteed 60s interval
Streaming
- SSE real-time tool/thinking display (all tool calls shown with parameters)
- session.idle event-driven completion detection
v3.4.1
opencode-slack-agent v3.4.1
OpenCode plugin that connects Slack to your AI agent via Socket Mode.
Install
opencode plugin opencode-slack-agent --globalFeatures
- Thread-based Sessions — Each Slack thread = persistent OpenCode session (survives restart)
- Multi-Agent —
@build,@plan,@oracleper-message agent selection - Real-time Streaming — 🔧 Tool execution, 💭 reasoning, 📋 todo/plan updates
- Long Response — Code blocks/large responses auto-uploaded as file snippets
- Markdown → Slack — Bold, headers, links, lists, code blocks properly converted
- Permission/Question Forwarding — Agent asks → Slack thread → user replies
- Access Control —
ALLOWED_USERS: user IDs or emails, everyone else can only reply in existing threads - Workspace Management —
!dirper-thread,!attachexisting session, URL paste supported
Commands
| Command | Description |
|---|---|
!help |
Show all commands |
!model / !model provider/model |
View/switch model |
!agent / !agent build |
View/switch agent |
!dir / !dir /path |
View/switch workspace |
!attach ses_xxx |
Attach existing session |
!reset |
Reset thread session |
Configuration
{
"plugin": [
["opencode-slack-agent", {
"SLACK_BOT_TOKEN": "xoxb-...",
"SLACK_APP_TOKEN": "xapp-...",
"ALLOWED_USERS": "U123,user@company.com",
"DEFAULT_DIRECTORY": "/path/to/project"
}]
]
}Architecture
Hybrid sidecar: Plugin (Bun, IPC, OpenCode client) + Socket Worker (Node, Slack WebSocket). Reliable Socket Mode in Node, direct OpenCode API access in plugin — no HTTP hop.
Full changelog since v2.x
- v3.0.0: Hybrid sidecar architecture (IPC + plugin client)
- v3.1.0: Thread session continuity, !dir/!attach, thinking streaming
- v3.2.0: Permission/question forwarding, reaction on actual message
- v3.3.0: @agent multi-agent, !agent command
- v3.4.0: File upload, markdown→mrkdwn, dedup fix
- v3.4.1: Fine-grained access control (thread creation vs reply)
v2.3.0 — Sidecar Worker Architecture
Reliable Socket Mode via independent Node worker process.
Install
opencode plugin opencode-slack-agent --globalConfigure (opencode.json)
{
"plugin": [
["opencode-slack-agent", {
"SLACK_BOT_TOKEN": "xoxb-...",
"SLACK_APP_TOKEN": "xapp-..."
}]
]
}Run
opencode serve --port 4096Changes from v2.2.x
- Sidecar Node worker for Socket Mode (bypasses Bun WebSocket issues)
- Worker handles all Slack + OpenCode API communication
- Auto-restart on crash
- Correct API paths (prompt_async, message)
- No stdio pipe dependency (file-based logging)
v2.2.0
Install
opencode plugin https://github.com/leecoder/opencode-slack-agent/releases/download/v2.2.0/opencode-slack-agent-2.2.0.tgz --globalConfigure (opencode.json)
{
"plugin": [
["opencode-slack-agent", {
"SLACK_BOT_TOKEN": "xoxb-...",
"SLACK_APP_TOKEN": "xapp-..."
}]
]
}Run
opencode serve --port 4096Changes
- Auto-detect port and auth from serve process (no manual OPENCODE_PORT needed)
- Plugin options via opencode.json (no env export needed)
- Tarball release for easy install
v2.0.0 — OpenCode Plugin
OpenCode plugin for Slack DM & mention agent.
Install
opencode plugin https://github.com/leecoder/opencode-slack-agent/releases/download/v2.0.0/opencode-slack-agent-2.0.0.tgz --globalConfigure (opencode.json)
{
"plugin": [
["opencode-slack-agent", {
"SLACK_BOT_TOKEN": "xoxb-...",
"SLACK_APP_TOKEN": "xapp-...",
"OPENCODE_PORT": "4096"
}]
]
}Run
opencode serve --port 4096