Skip to main content

How to use dsh-emoji

Adds switchable and uploadable custom inline emojis to DeepSeek Harness Web conversation replies, with 40 built-in semantic keys.

This article is auto-derived from indexed fields (wiki / faq / compatibility_json), not freshly AI-generated.

This article is derived from the plugin's already-indexed fields (wiki / faq / compatibility_json / readme), not freshly generated by AI. Source field is noted at the end of each section.

Quick start

dsh-emoji

— source: plugin_wiki.wiki_content

Install & verify

dsh plugin --profile web add dsh-emoji

Run the command above in your DSH Web Profile. Then enable the plugin in the plugin list.

— source: plugins.install

Key points

  • AI 想加入情绪或装饰性表情时,直接从 42 个允许的 Unicode 表情中选择,例如输出 😊;它们对应 40 个稳定语义,插件会在 Host 端将其转换为当前表情包的行内图片,无需额外模型调用。
  • 内置和用户上传的表情包共用 40 个稳定语义 key,可随时切换,并支持小、正常、偏大、大四档尺寸。
  • 转写只作用于 40 个规范 Unicode 表情、常见别名 😄/🙂 和本插件图片;其他 Unicode 表情、代码、链接、双冒号文本和普通 Markdown 图片保持原样。程序不会根据正文猜测情绪或自动补图。多张插件表情必须由有效正文分隔,相同表情可以在不同位置重复使用。
  • 关闭:不使用表情。
  • 智能:仅在表情确实有助于表达时自然使用,每回合最多 3 张,默认选项。

— source: plugin_wiki.readme_en (fallback readme_raw)

FAQ

When does AI use emojis? Does it automatically add images?

AI manually selects from 42 controlled Unicode emojis (like 😊, 🤔), it does not automatically guess emotions based on the reply text; when Unicode emojis are in code, links, or regular Markdown images, they won't be converted. In off mode, AI completely doesn't use plugin emojis.

What's the difference between the three frequency levels?

Off = no emojis; Smart (auto) is the default level, max 3 per turn, only used when it can improve the tone; High frequency (frequent) max 4 per turn, requires AI to insert an emoji matching the current emotion in the dialogue reply and place it after the corresponding sentence.

Can I upload my own emoji packs? What are the limits?

Supports uploading custom ZIPs, AI still only sends controlled Unicode emojis, Host automatically replaces them with your uploaded PNGs. ZIP limit 20 MiB, uncompressed 80 MiB, single file 2 MiB, image width/height ≤ 512px; each semantic key must have exactly one PNG with the same name, and pack.json must declare schemaVersion=1 with keySet='dsh-emoji-core@1'.

Where are user packs saved? Are they cleaned up together?

User emoji packs are saved in $DSH_HOME/emoji-packs/ (default ~/.dsh/emoji-packs/); clicking 'Remove' in settings only hides them from the selection list, physical materials are retained to ensure URLs for that version in historical messages can still play back, re-uploading the same ZIP restores it.

Do I need to restart after switching emoji packs or adjusting frequency?

No need. The next model call will use the new settings; if only modifying display size, the browser will immediately reflect it through style hot reloading.

How to completely uninstall the plugin?

Uninstall the plugin via dsh CLI. Emoji materials are stored under $DSH_HOME/emoji-packs/ by id@version, they won't be automatically deleted with plugin uninstallation; to completely clean up, manually delete that directory.

What's the difference between dsh-emoji and similar emoji plugins?

Built-in directory and uploaded packs share the same set of 40 stable semantic keys, AI only learns controlled Unicode emojis, Host replaces them with images during streaming responses according to mapping, no extra model calls; and there's a built-in webSettings card for one-click ZIP upload and pack switching.

— source: plugin_wiki.faq_json

Compatibility

  • DSH: ^0.1.0-rc.7
  • Node: ^22.19.0 || >=24.0.0

— source: plugin_wiki.compatibility_json

Pitfalls

Review the upstream repo before installing. This guide is auto-derived from indexed fields and may lag the latest release. If anything contradicts the official docs, treat the upstream source as authoritative.

— source: general rule