Mattermost plugin that adds targeted quoting for channel posts and thread replies.
- Adds a
Quoteaction next to post hover actions. - Lets you select part of a message and quote only that fragment.
- Keeps quoting scoped correctly:
- quotes from the center channel go to the center channel composer;
- quotes from the RHS thread go to the thread composer.
- Appends quotes to the end of the current draft instead of overwriting what you already typed.
- Turns the quoted text itself into a permalink after the message is sent.
- Click
Quoteon a post to quote the whole message. - Select text inside a post body to get a small
Quotepopup. - Multiple quotes can be added one after another before sending.
- The plugin avoids showing the popup on author names and other non-message UI text.
Download the latest release artifact:
com.zilosoft.quote-reply-<version>.tar.gz
Then upload it in Mattermost:
System Console->Plugin ManagementUpload Plugin- Activate
Zilosoft Quote Reply
If the UI still shows cached assets after upgrade, do a hard refresh in the browser.
Requirements:
- Go from
go.mod - Node.js 22
- npm
Install dependencies:
cd webapp
npm ciRun checks:
cd webapp
npm run lint
npm run check-types
npm test -- --runInBand --watchman=falseRun Go tests:
go test ./...Build the installable plugin:
make distResult:
dist/com.zilosoft.quote-reply-<version>.tar.gzThe repository includes two workflows:
ci.yml: reusable CI on push, PR, and tagsrelease.yml: builds the plugin, runs tests, creates checksums, and publishes GitHub Releases forv*tags
To publish a release:
- Bump
plugin.jsonversion - Commit the change
- Push a tag like
v0.1.12
The release workflow will attach:
- plugin bundle
.tar.gz checksums.txt
- The plugin uses Mattermost webapp extension points and DOM detection, so exact behavior can depend on Mattermost frontend markup.
- Full native inline quote parity would still require a Mattermost core fork.