@bastiangx/opencode-unmoji
v1.0.0
Published
OpenCode plugin that removes emoji from completed agent text and supported Markdown writes
Readme
UNMOJI
An OpenCode plugin that strips all kinds of emojis from your agent outputs.
Installation
Add the following to your opencode.json file:
{
"plugin": ["@bastiangx/opencode-unmoji@latest"]
}You can find your OpenCode file in a couple of different locations:
- Global: in
~/.config/opencode/opencode.json. You’ll want to use the global config for things like themes, providers, or keybinds.- Per Project: You can also add a
opencode.jsonin your project. Settings from this config are merged with and can override the global config.
Visit OpenCode docs for more info.
What It Does
UNMOJI automatically removes all standard unicode emojis and glyphs from your agent outputs.
Especially useful when you are using models like Claude which seem to LOVE spamming emojis on summaries, README files and various documentations.
Output targets
- Regular agent text and summaries in the main UI thread (format agnostic).
- Added content in
.mdand.markdownfiles when an agent calls theeditorapply_patchtool. - Whole-file content in
.mdand.markdownfiles when an agent calls thewritetool.
Thinking tokens as output targets are not supported at this time.
Configuration
Create unmoji.json in either or both supported locations:
- Global:
~/.config/opencode/unmoji.json - Per project:
<project>/.opencode/unmoji.json
Project settings override global settings. Inline plugin options override both:
{
"plugin": [
[
"@bastiangx/opencode-unmoji@latest",
{
"preserveBlockquotes": true
}
]
]
}Every option is optional. The complete default configuration is:
{
"enabled": true,
"processMarkdown": true,
"markdownExtensions": [".md"],
"preserveCodeBlocks": true,
"preserveInlineCode": true,
"preserveBlockquotes": false
}Full options spec
| Option | Default | Possible values | Description |
| :-------------------- | :-------: | :------------------------------------------ | :--------------------------------------------------------- |
| enabled | true | true, false | Enable or disable the plugin without uninstalling it |
| processMarkdown | true | true, false | Process Markdown content passed to supported writing tools |
| markdownExtensions | [".md"] | Non-empty array of .md and/or .markdown | File extensions treated as Markdown by tool hooks |
| preserveCodeBlocks | true | true, false | Leave emojis inside fenced and indented code blocks intact |
| preserveInlineCode | true | true, false | Leave emojis inside inline code intact |
| preserveBlockquotes | false | true, false | Leave emojis inside Markdown blockquotes intact |
Contributing
Contributions are welcome!
Follow the Contributing guide for instructions.
License: MIT
