Skip to content
This repository was archived by the owner on Sep 27, 2026. It is now read-only.

Releases

v0.1.2

Choose a tag to compare

@wowyuarm wowyuarm released this 25 Sep 11:30

中文 | English

中文

本版本汇总自 v0.1.1 以来的变更。

新增功能

  • 出站消息可以选择 Markdown 格式,由渠道自己转成对方能显示的排版:Telegram 用 HTML,微信用它自己的 Markdown。
  • 附件打通:出站附件可以直接给本地字节,入站附件可以按需取回内容,微信侧自动解密。
  • 微信回复不再因为等得久而丢掉:过期的会话凭据会在发送前自动换取新的。

体验优化

  • 发送失败会重试:网络抖动和限流会被重试,渠道要求的等待时间会被遵守。

其他变更

  • 两个适配器各自移入自己的目录,@wowyuarm/dsh-channel-gateway/telegram 与 /weixin 两个入口不变。

安装

dsh plugin add @wowyuarm/dsh-channel-gateway --profile <profile>

兼容性:peer 仍为 @deepseek-ai/cordis ^4.0.1 与 @deepseek-ai/schemastery ^3.18.1,由宿主 DSH 提供。

English

Changes since v0.1.1.

New

  • An outbound message can ask for Markdown, and each channel renders it the way its provider displays formatted text: HTML for Telegram, WeChat's own Markdown for Weixin.
  • Attachments work end to end: an outbound attachment sends from local bytes, and an inbound one is fetched on demand — decrypted automatically on the Weixin side.
  • A Weixin reply is no longer lost when the agent takes a while: an expired conversation credential is refreshed before sending.

Improvements

  • A failed send is retried: transport blips and rate limits are tried again, honouring the wait the provider asks for.

Other changes

  • Each adapter moved into its own directory; the @wowyuarm/dsh-channel-gateway/telegram and /weixin entries are unchanged.

Install

dsh plugin add @wowyuarm/dsh-channel-gateway --profile <profile>

Compatibility: peers remain @deepseek-ai/cordis ^4.0.1 and @deepseek-ai/schemastery ^3.18.1, provided by the host DSH.

Full Changelog: v0.1.1...v0.1.2

v0.1.1

Choose a tag to compare

@wowyuarm wowyuarm released this 25 Sep 04:09

中文 | English

中文

本版本汇总自 v0.1.0 以来的变更。

问题修复

  • Telegram 长文本不再被切断在词中间:超过单条上限时优先在换行处断开,其次空格,且绝不落在 emoji 的字符中间。

其他变更

  • README 与架构文档补上宿主版本兼容表,以及一条自行复验当前 DSH 版本的命令。

安装

dsh plugin add @wowyuarm/dsh-channel-gateway --profile <profile>

兼容性:peer 仍为 @deepseek-ai/cordis ^4.0.1 与 @deepseek-ai/schemastery ^3.18.1,由宿主 DSH 提供。

English

Changes since v0.1.0.

Fixes

  • Long Telegram text is no longer cut mid-word: past the single-message limit it breaks at a line, then a space, and never between the halves of an emoji.

Other changes

  • Both READMEs and the architecture doc gained a host-version compatibility table and a command that re-verifies the DSH version you run.

Install

dsh plugin add @wowyuarm/dsh-channel-gateway --profile <profile>

Compatibility: peers remain @deepseek-ai/cordis ^4.0.1 and @deepseek-ai/schemastery ^3.18.1, provided by the host DSH.

Full Changelog: v0.1.0...v0.1.1

v0.1.0

Choose a tag to compare

@wowyuarm wowyuarm released this 22 Sep 16:18

中文 | English

中文

dsh-channel-gateway 首个公开版本。

DSH 的 channel 网关:适配器把各聊天平台的消息归一成同一套消息契约,网关完成鉴权后分发一个 channel/inbound 事件,消费方用入站消息携带的 route 通过 ctx.channels.send 回复。它覆盖聊天接入的传输层——一条消息意味着什么、是否见过、下一步去哪,都由上层决定。

新增功能

  • 五个面定型为公开 API:入站 InboundMessage、出站 OutboundMessage、传输 Channel、网关服务 ctx.channels 与 channel/inbound 事件。
  • 鉴权在网关这一行:allowlist 默认谁都不放行,适配器不参与「谁能说话」。
  • Telegram 适配器:Bot API 长轮询,文本、文档、图片、音频、视频。
  • 微信适配器:iLink 长轮询,回复需带上入站消息的 context_token。
  • 适配器都是可选行,安装 bundle 只插入 gateway 一行;core 只认声明的两个 peer,唯一的 runtime 依赖 undici 只在适配器里使用。

已知限制

  • 微信扫码登录尚未实现,现在要手工提供一个已获得的 token。
  • 微信出站只发文本;入站媒体会上报,但不拉取也不发送。

安装

dsh plugin add @wowyuarm/dsh-channel-gateway --profile <profile>

兼容性:peer 为 @deepseek-ai/cordis ^4.0.1 与 @deepseek-ai/schemastery ^3.18.1,由宿主 DSH 提供。

English

The first public release of dsh-channel-gateway.

A channel gateway for DeepSeek Harness: an adapter normalizes provider traffic into one message contract, the gateway authorizes it and announces a single channel/inbound event, and a consumer answers through ctx.channels.send with the route the inbound message carried. It covers the transport half of a chat integration; what a message means, whether it was seen before, and where it goes next are decided above it.

New

  • Five surfaces fixed as the public API: inbound InboundMessage, outbound OutboundMessage, transport Channel, the ctx.channels service, and the channel/inbound event.
  • Authorization lives on the gateway row: an allowlist that admits nobody by default, with adapters taking no part in who may speak.
  • Telegram adapter: Bot API long poll; text, documents, photos, audio and video.
  • Weixin adapter: iLink long poll; a reply quotes the inbound context_token.
  • Adapters are opt-in rows, and installing the bundle inserts only the gateway row; the core names nothing beyond its two peers, and its single runtime dependency, undici, is used by adapters only.

Known limitations

  • The Weixin adapter's QR login flow is not implemented yet; it starts from a token you provide.
  • The Weixin adapter sends text only: inbound media is reported but neither fetched nor sent.

Install

dsh plugin add @wowyuarm/dsh-channel-gateway --profile <profile>

Compatibility: peers are @deepseek-ai/cordis ^4.0.1 and @deepseek-ai/schemastery ^3.18.1, provided by the host DSH.