Files
openclaw/extensions/slack
zw-xysk a4c1e22731 fix(slack): preserve unrelated action rows after interactions (#103445)
* fix(slack): use endsWith instead of includes for _all_ action_id matching

* fix(slack): codify bulk action IDs and add confirmation regressions

Extract isSlackBulkActionId() with the documented _all suffix grammar,
use it for bulk-row detection, and add whole-path chat.update tests for
bulk-row cleanup plus deploy_all_services false-positive control.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(slack): use OpenClaw bulk block marker instead of _all suffix

Replace global endsWith("_all") bulk detection with an explicit
openclaw:bulk: block_id prefix and closed action IDs, export a shared
producer helper, and add live Slack chat.update proof for bulk-row
removal and deploy_all_services preservation.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(slack): keep bulk contract private and add legacy upgrade path

Drop speculative bulk-action exports from the Slack plugin API, keep
accepted ID collections private and immutable, and recognize legacy bare
select_all/deselect_all rows while still rejecting deploy_all_services
false positives.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(slack): drop unsupported bare bulk compatibility branch

Remove the legacy select_all/deselect_all classifier that overmatched
single-ID and duplicate-ID rows, and add negative whole-path regressions
preserving unrelated custom action rows.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(slack): remove unsupported bulk-row cleanup heuristic

Delete the undocumented bulk-row inference and namespaced replacement
contract. Confirmation updates now replace only the selected actions row
and preserve every other authored Block Kit row.

* refactor(slack): tighten interaction confirmation fix

* chore(changelog): preserve historical TTS entries

* chore(slack): move release note to PR body

---------

Co-authored-by: zw-xysk <zw-xysk@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-11 13:16:25 -07:00
..

OpenClaw Slack

Official OpenClaw channel plugin for Slack channels, DMs, commands, and app events.

Install from OpenClaw:

openclaw plugin add @openclaw/slack

Configure the Slack app credentials and allowed workspaces/channels in OpenClaw. The plugin lets agents receive Slack events and reply through the configured Slack app.