feat: bChannel plugin for channel pings - #216
Merged
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a new Slick plugin (bChannel) that intercepts Slack message sending to enable @channel / @here broadcasts (and image attachments) via a required external “bChannel” Slack app + service, including a document-start preload hook for early network interception.
Changes:
- Introduces a large renderer-side integration that hooks
fetch/XMLHttpRequestand Slack’s message composer pipeline to stage intents, upload images, and dispatch/bchannelwhen broadcasts are detected or denied. - Registers a document-start preload script (Electron session preload) and adds settings + CSS for an in-app error dialog.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| plugins/bChannel/renderer.js | Implements Slack network/composer interception, bChannel handoff logic, attachment handling, and error dialog UI. |
| plugins/bChannel/index.js | Adds plugin entrypoint, settings, preload registration, and dialog CSS. |
Suppressed comments (2)
plugins/bChannel/renderer.js:928
- The Escape key listener is only removed when Escape is pressed. If the dialog is closed via the close button, Cancel, or clicking the backdrop, the keydown handler remains registered, which can leak listeners and cause unexpected behavior on subsequent dialogs. Remove the keydown listener in the shared close handler.
const closeDialog = () => removeDialog();
close.addEventListener('click', closeDialog);
dismiss.addEventListener('click', closeDialog);
plugins/bChannel/renderer.js:526
- Same as above: this error message implies all image types are supported, but IMAGE_TYPES only allows JPEG/PNG/GIF/WebP. Clarify the supported image types so users don’t get confused when attaching other image formats.
if (!IMAGE_TYPES.has(mimeType)) {
throw new Error('bChannel can only send image attachments. Remove the other files and try again.');
}
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
3kh0
approved these changes
Aug 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
lets people who dont have permission still send @channel / @here from the normal composer. works with images too. requires the bchannel slack app.