Перейти к основному содержимому
5

amoji (dsh)

5101good/amoji/adapters/dsh

AI-native expressions for two-way chat: people see images, while text-only models read fixed meanings; includes a picker, custom expressions, import/export, and two visual styles.

Установка

dsh plugin --profile web add github:5101good/amoji

Этот плагин находится в подкаталоге adapters/dsh репозитория.

README

Amoji

English · 开始使用 · 文档 · 下载 1.0

人机协作,也需要表情。

AI 原生表情:人看图,AI 读固定语义。让感谢、迟疑、鼓励与关怀,也能成为人和 AI 之间自然的表达。

一起庆祝 挠头苦笑 给你加油

为什么我们需要它

人与人交流时,一张表情可以让感谢更亲切,让困惑更容易说出口,也让一次提醒少一点生硬。当 AI 成为日常工作中的协作伙伴,人仍然需要这些表达:能轻松地说“我没看懂”,能为共同的进展高兴,也能在投入许多努力后,得到一句恰当的“辛苦了”。

我们相信:情感表达是人机协作的基本需求。它不应该因为模型只能处理文字,或识图成本太高,就从交互中消失。

Amoji 想让这种能力更普遍。你用一张图表达感受与意图,AI 通过随图附带的文字语义理解它;AI 也可以选择合适的表情回应你。理解一张表情的含义,可以直接走文字路径。

什么是 AI 原生表情

一张 AI 原生表情,同时面向两种阅读方式:

面向谁读到什么用来做什么
表情的图像、动作与神态感受语气,快速表达
AI明确的含义、语气、适用与避免场景理解意图,判断是否适合回应

传统表情主要依靠观看者理解画面。Amoji 在视觉内容之外,为每张图附上一份可以直接读取的语义约定。例如,同样是“挠头”,它可以表达困惑、自嘲或尴尬;创作者可以明确这张表情想表达哪一种意思。

这些含义可以由用户编写,也可以先让 AI 提建议,再由用户修改、核对和确认。确认后的版本保留固定语义,历史消息始终引用发送时的版本。模型不必每次从像素重新猜测,也不能临时改写已发送表情的含义。

在协作中,它能表达什么

交流时刻表情希望传达的意思
解释太复杂,你还没理解你 → AI:没看懂请换一种更简单的说法,我们还没有达成理解上的一致。
AI 的帮助确实有用你 → AI:谢谢我收到了你的帮助,也愿意表达感谢。
收到你的感谢AI → 你:不客气你的感谢我收到了,能帮上忙就好。
现有证据还不足AI → 你:暂时没把握目前还不能给出有把握的判断,需要进一步说明不确定在哪里。
你已经为这件事付出很多AI → 你:辛苦了我注意到了你投入的时间与努力。

表情可以和解释、结果一起出现,让一句回应有更清楚的语气。你也可以选择更克制的办公画风,调整 AI 使用表情的频率,或暂停 AI 表情回应。

这带来了什么

  • 让纯文本模型也能参与。 理解表情所需的信息以文字提供,无需为了这一张表情额外具备视觉能力。
  • 把识图开销省在理解路径之外。 模型可以检索和读取简短语义,省去对表情图片的视觉推理;仍会产生正常的文字与工具调用开销。
  • 让含义有据可查。 你能看到 AI 将读到什么,也能明确表达的语气和使用边界,减少双方对同一张图各自猜测。
  • 让交流是双向的。 人可以表达反馈与情绪,AI 可以用合适的表情回应感谢、表达不确定或提供鼓励。
  • 让表达由你定义。 自己创作、导入图片、确认语义,再通过 .amoji 文件分享;你可以拥有自己的表情体系。

从 dsh 开始

Amoji 的愿景,是让这套表达方式能够跨越模型与客户端。1.0 从 dsh 的原生交互开始,把选择、发送、理解和管理放进同一个工作流:

  • 原生双向表情:输入区点选即发送,AI 通过文字工具检索和选用,图片直接显示在会话中。
  • 经典与办公画风:相同的 24 种语义、共 48 个资产,覆盖人向 AI 表达和 AI 回应人的场景。
  • 一个输入框辅助创作:描述想表达的意思,选择宿主模型生成文字建议;默认使用当前会话模型,由你采用、修改和确认。
  • 本地个人表情库:草稿、版本、归档、个人副本、完整包导入导出,以及 AI 使用偏好。
  • 中英界面:跟随 dsh 的语言设置。界面翻译不会改写表情本身的语义,内置语义目前为中文。
看看实际界面:经典画风、办公画风与固定语义

经典画风 办公画风 AI 读取的固定语义

安装

已经在使用 dsh 的 web profile,可以直接安装公开发布包,然后重启该 profile:

dsh plugin --profile web add https://github.com/5101good/amoji/releases/download/v1.0.0/amoji-dsh-1.0.0.tgz --ignore-scripts

需要独立 profile 或先核验下载文件时:

  1. 使用 Node.js 24 或更新版本。当前验证基线为 dsh 0.1.5-rc.2 / macOS arm64
  2. GitHub Releases 下载 amoji-dsh-1.0.0.tgz,按同次发布的 SHA256SUMS 核对 SHA-256。
  3. 安装到自己的 dsh profile,重启该 profile,选择工作区后打开输入区的“表情”。

第一条命令为新 profile 初始化 Web 模板并显示帮助;随后安装并启动。

npx @deepseek-ai/dsh@0.1.5-rc.2 --profile amoji --from-default-profile web --help
npx @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile amoji add ./amoji-dsh-1.0.0.tgz --ignore-scripts
npx @deepseek-ai/dsh@0.1.5-rc.2 --profile amoji

amoji 是示例 profile 名称;使用已有 profile 时替换它。源码安装参见构建步骤。插件安装成功与运行激活是两项不同检查。

使用

在选择器中搜索并点选表情即可发送;详情按钮用于先阅读固定语义。在“管理表情”中切换画风、调整 AI 语气与频率、管理自己的素材。AI 表情可独立暂停。

创作时描述“谁对谁说、什么情境、想表达什么、什么语气”,选择模型后生成建议。Amoji 只向所选模型发送文字意图和生成指令,不发送图片或会话历史。生成按宿主所配置模型的规则计费;也可以完全手工填写。建议不会自动保存或入库。

完整使用指南涵盖草稿确认、编辑旧版本、导入导出、连接恢复及发送状态。

验证与边界

1.0 以 dsh 为主要支持宿主。已有 macOS arm64 的本地安装、实际浏览器使用及一次真实 Flash 文字建议成功记录;这些证据不代表所有模型、平台或宿主版本均通过。一次 AI 发送测试的表情已成功显示,但提供方工具续答因 reasoning_text 兼容问题返回 HTTP 400,不能算完整模型回合成功。

Linux、Windows 和其他 dsh 版本未完成真实宿主验收。Code Dispatch / PTC 嵌套工具不保证图片展示。Codex、Claude Code 实现作为 legacy 保留,暂不纳入 1.0 真机验证或兼容承诺。详见发布与已知限制

一起丰富这套表达

我们希望通过开放的格式和开源实现,让更多人参与定义 AI 时代的表情:它们可以温暖、幽默,也可以严肃、克制。欢迎分享真实协作中的表达需求、创作新的画风与语义,或帮助我们改进交互和宿主适配。

你可以从试用 Amoji提出建议贡献代码与素材开始。

开发

npm ci
npm run typecheck
npm test
npm run test:dsh

test:dsh 会构建插件并检查锁定的 dsh npm 合同。构建输出为 adapters/dsh开发指南架构与协议贡献指南安全政策说明开发、验证与报告问题的方法。

代码和技术文档使用 MIT;内置基础表情视觉、固定语义及生成提示使用 CC0-1.0。生成来源见基础库说明。第三方依赖、用户素材保留各自许可,见 NOTICE

Похожие плагины