dsh-frostfin:Kimi Code 作为 DSH 的 agent loop

前言

DSH 的理念是「一切皆插件」。dsh-frostfin 是其中一个 loop 插件:它把 DSH 会话的驱动者交给 Kimi Code 的 kimi acp 子进程,让 Kimi Code 的 agent loop 运行在 DSH 的界面与审批体系内。

这是什么

dsh-frostfin 的定位是:Kimi Code as the agent loop of DeepSeek Harness — ACP bridge loop plugin

它以 MIT 许可发布,当前包版本为 0.2.0,仓库地址为 https://github.com/pzc2004/dsh-frostfin。使用它需要已有登录态的 Kimi Code;DSH 安装需要 Node.js ≥ 22.19。

核心功能

下面介绍已核实的主要能力。

  • loop 桥:DSH 会话由 kimi acp 子进程驱动,流式回话、思考块、工具调用、计划块均为 DSH 原生渲染。
  • 审批桥:Kimi 的工具审批请求落到 DSH 原生审批弹窗,命令预览与工具卡片 callId 对齐。
  • 提问通道:Kimi 的 AskUserQuestion 通过 DSH 插件自建的多选模态框处理;跳过/取消按用户未作答处理。
  • 图片输入:输入区粘贴的图片经 DSH 附件存储转为 base64 后发送到 Kimi,Kimi 侧做格式门控与压缩。
  • 会话生命周期:支持 DSH 重启恢复、Kimi 进程崩溃自愈、接入既有 Kimi 会话并回放历史。
  • 模式分发:新增「月芒霜鳍鲸」模式并设为默认,标准模式走原生 loop;会话创建后驱动方锁定。
  • 模型层打通:显示 Kimi 真实模型列表,DSH 中配置的模型可同步进 Kimi 配置。
  • 状态条与斜杠命令:显示 Kimi 模型、thinking 档位、权限模式、上下文占用、工作目录与 git 分支,并支持插件与 Kimi 命令切换。
  • goal 与 plan:DSH 的 /goal 可驱动 Kimi 会话;Kimi 的 plan 模式经 /frostfin-mode plan 生效,为引擎级只读。
  • 可逆性:卸载时撤销注册并恢复 kimi config.toml 托管块,但保留 ~/.frostfin 下的会话绑定与模型缓存。

安装与启用

先安装 Kimi Code 并登录

macOS / Linux:

curl -fsSL https://code.kimi.com/kimi-code/install.sh | bash

Windows:

irm https://code.kimi.com/kimi-code/install.ps1 | iex

Windows 首次启动前需要安装 Git for Windows。

安装完成后,先运行 kimi,并在 TUI 中用 /login 登录。frostfin 通过 kimi acp 子进程驱动,会复用该登录态。

再安装 DSH

启动 DSH Web:

npx @deepseek-ai/dsh web

资料中提到 DSH 版本锁为 @deepseek-ai/dsh@0.1.0-rc.x

安装 dsh-frostfin

Web profile:

npx @deepseek-ai/dsh plugin --profile web add dsh-frostfin

安装后重启 DSH Web:

npx @deepseek-ai/dsh web

Headless profile:

npx @deepseek-ai/dsh plugin --profile headless add dsh-frostfin

Headless 场景下只有宿主半身生效,面板端点与输入区按钮不出现。

源码安装:

git clone https://github.com/pzc2004/dsh-frostfin.git
cd dsh-frostfin && pnpm install && pnpm build
npx @deepseek-ai/dsh plugin --profile web add .

升级:

npx @deepseek-ai/dsh plugin --profile web update dsh-frostfin

升级后重启 dsh web

卸载:

npx @deepseek-ai/dsh plugin --profile web remove dsh-frostfin

卸载会撤销注册并恢复 kimi config.toml 托管块,但保留 ~/.frostfin 下的会话绑定与模型缓存。若要彻底清除本地状态:

rm -rf ~/.frostfin

典型用法

接入既有 Kimi 会话:

/frostfin-attach

也可以在「月芒霜鳍鲸」tab 中一键接入。

权限模式选择:

  • 日常:/yolo
  • 逐步审阅:default
  • 只读方案:/frostfin-plan
  • 无人值守:/auto

常用斜杠命令:

/frostfin-mode
/frostfin-thinking
/frostfin-plan
/yolo
/auto

Kimi 内建命令可透传:

/compact
/status
/usage
/mcp
/tasks
/help

DSH 的 /goal 可以驱动 Kimi 会话。Kimi 会话的 plan 模式使用 /frostfin-plan,也可通过 /frostfin-mode plan 生效;该模式是引擎级只读。

适用场景与注意

适合已经使用 DSH Web 或 headless 宿主,并且希望把 Kimi Code 的 agent loop 接到 DSH 会话中的场景。安装前请检查源码与 MIT 许可证;插件随 DSH 宿主运行,会使用当前 dsh 进程的权限。

需要注意:

  • frostfin 会话主要管理 Kimi 权限模式;DSH 的 Workspace Write 沙箱管不到 Kimi 进程内工具。
  • 建议保留 DSH 默认 workspace-write,避免 danger-full-accessdanger-full-access 会把 approval policy 改成 never,并在插件配置 permission: 'ask' 时让后续所有审批被自动拒绝。
  • yolo 模式对 .env、SSH 密钥、凭据和 .git 控制目录仍会发问。
  • auto 模式全部自批,连提问工具都会被拒,不适合暴露敏感目录。
  • DSH 的 /plan 只对原生 loop 会话有效;Kimi 会话的 plan 模式用 /frostfin-plan
  • 需要已有 Kimi Code 登录态。
  • Windows 首次启动前需安装 Git for Windows。

结尾

dsh-frostfin 的价值在于保留 DSH 的插件宿主与审批界面,同时让 Kimi Code 作为会话驱动方。仓库地址:

https://github.com/pzc2004/dsh-frostfin
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜