Back to home

tafcear

kimi-tide

月汐 — Kimi Code (Moonshot) 接入 DeepSeek Harness 的完整方案:标准 DSH 插件 + Kimi CLI 桥接维护 fork + Agent 协作闭环方法论

Stars
1
Language
TypeScript
Created
Aug 14, 2026
Updated
Aug 14, 2026

Introduction

kimi-tide(月汐)

月亮(Moonshot / Kimi)牵引深海(DeepSeek / DSH)的潮汐。

Kimi Code(Moonshot) 订阅接入 DeepSeek Harness(DSH) 的原生 LLM provider 方案。

License: MIT Release: v0.1.1 Topics


特性一览

  • 原生 DSH 插件dsh-kimi-tide 作为标准 dsh-plugin 注册 provider 路由,无需外部脚本或计划任务。
  • OAuth 进程内刷新:与 kimi login 共享登录态,默认每 10 分钟自动刷新 access token。
  • 跨平台:零 Windows 计划任务依赖,Linux / macOS / Windows 均可运行。
  • 双通道互补:provider 路径用于 DSH 模型选择器;dsh-kimi-bridge 路径用于显式调用 kimi CLI 工具。
  • 发布就绪:v0.1.1 已发布为 GitHub Release,附 dsh-kimi-tide-0.1.1.tgz 安装包。

路线图

  • 0.1.x(当前):DSH 原生 Kimi provider,已发布 v0.1.1。
  • 0.2.0(计划中):双模型自动分工路由器,支持 cost(性价比)与 capability(能力最优)两种模式,自动补偿 DeepSeek V4 的多模态与超长上下文缺口。设计稿见 docs/development-plan-router.md

架构

┌──────────────────────────────────────────────────────┐
│                  DeepSeek Harness (DSH)               │
│  ┌────────────────────────┐  ┌─────────────────────┐  │
│  │ dsh-kimi-tide          │  │ dsh-kimi-bridge     │  │
│  │ 原生 LLM provider       │  │ kimi CLI 工具桥接    │  │
│  └───────────┬────────────┘  └──────────┬──────────┘  │
│              │                          │             │
│              ▼                          ▼             │
│  https://api.kimi.com/coding          kimi CLI        │
│  Anthropic 兼容协议                    (-p / -S)      │
│              │                          │             │
│              └────────────┬─────────────┘             │
│                           ▼                           │
│          Kimi Code OAuth access_token                 │
│          (由插件进程内自动维护)                        │
└──────────────────────────────────────────────────────┘

快速开始

1. 前置条件

  • Node.js ≥ 22

  • DSH @deepseek-ai/dsh@0.1.0-rc.6

  • 已安装 Kimi Code CLI 并完成登录(一次即可):

    # Windows PowerShell(macOS/Linux 见官方文档 https://moonshotai.github.io/kimi-code/)
    irm https://code.kimi.com/kimi-code/install.ps1 | iex
    kimi login   # 浏览器完成设备码授权
    

2. 安装插件

方式 A:直接下载 Release(推荐)

v0.1.1 Release 下载 dsh-kimi-tide-0.1.1.tgz,然后:

dsh plugin --profile web add ./dsh-kimi-tide-0.1.1.tgz

方式 B:从源码构建

cd packages/dsh-kimi-tide
npm install && npm run build && npm pack
dsh plugin --profile web add ./dsh-kimi-tide-0.1.1.tgz

3. 重启并使用

重启 dsh web,模型选择器将出现 kimi-tide 组。

发布规范(重要):DSH 插件必须声明 dsh.bundle.patch(指向 cordis.patch.yml)才能作为 profile 层加载;缺声明时 dsh plugin add 只会把它装成普通依赖,手动加进 bundles 会导致 web 启动崩溃。本插件已按官方规范声明,升级版本时请勿移除该字段。


可用模型

模型 ID说明上下文
kimi-for-codingKimi K2.7 Code(默认)256K
kimi-for-coding-highspeedK2.7 Code 高速版256K
k3Kimi K3 旗舰1M
k3-256kKimi K3 256K 版256K

三条接入路径对照

路径推荐度作用依赖计划任务kimi login
dsh-kimi-tide 插件⭐ 首选DSH 原生 LLM provider否(进程内刷新)
dsh-llm-pi-ai + settings.yaml备选旧配置方案,适配老版本 DSH是(Windows)
dsh-kimi-bridge 工具桥接互补kimi CLI 暴露为 DSH 工具

旧配置方案的详细安装步骤见 docs/legacy-setup.md;bridge 插件见 vendor/dsh-kimi-bridge/README.md


插件配置(可选)

packages/dsh-kimi-tide/cordis.patch.yml 中的可覆盖项:

默认说明
providerNamekimi-tide注册进 ctx.llm 的路由名
kimiHome''Kimi home(空 = KIMI_CODE_HOME,再回退 ~/.kimi-code
refreshIntervalMs600000access token 刷新周期(毫秒)
refreshOnStarttrue启动时立即刷新一次

能力验证摘要

已通过 scripts/kimi-capabilities.mjsscripts/e2e-kimi.mjs 验证:

能力验证模型状态
推理(thinking + 文本)kimi-for-coding / k3✅ 正常
代码生成kimi-for-coding✅ 正常
工具调用kimi-for-coding / k3✅ 正常
工具调用闭环kimi-for-coding✅ 正常
多模态图片识别kimi-for-coding✅ 正常
端到端流式调用kimi-for-coding✅ 正常

项目结构

kimi-tide/
├── packages/dsh-kimi-tide/    # 推荐:DSH 原生插件
│   └── src/router.ts          # 0.2.0 路由器 M1 草稿(未接入,不影响现有行为)
├── scripts/                   # 验证与辅助脚本
│   ├── kimi-capabilities.mjs  # 能力矩阵测试
│   ├── e2e-kimi.mjs           # 端到端流式测试
│   ├── plugin-smoke.mjs       # 插件冒烟测试
│   ├── validate-kimi-settings.mjs
│   └── kimi-token-refresh.ps1 # 旧配置方案专用
├── vendor/dsh-kimi-bridge/    # CLI 工具桥接插件(维护 fork)
├── docs/                      # 详细文档与协作模板
│   ├── positioning.md         # 项目定位与维护策略(战略文档)
│   ├── development-plan-router.md  # 0.2.0 双模型自动分工路由器计划
│   ├── agent-collaboration-loop.md
│   ├── legacy-setup.md
│   ├── audit/                 # 两轮审查档案
│   └── templates/
└── LICENSE

协作闭环与文档

本项目实践了一套"实施 → 独立审查 → 修复测试 → 复检验收"的双模型协作流程,并沉淀为方法论资产:

历史经验:插件冒烟测试全绿仍可能因缺少 dsh.bundle.patch 声明导致 DSH 启动崩溃——发布规范与静态测试同样重要。


许可证与合规提示

  • kimi-tide 本体MIT(Copyright 2026 kimi-tide contributors)
  • 第三方组件@earendil-works/pi-ai(MIT)、@deepseek-ai/dsh-llm-pi-ai(MIT, DeepSeek)、js-yaml(MIT)、@iarna/toml(ISC)、dsh-kimi-bridge(MIT)

Kimi Code 订阅合规提示

  • 允许:个人使用,在自有工具里调用 Kimi Code 能力。
  • ⚠️ 风险提示:Kimi Code 订阅"仅限个人交互式使用"。本方案以非官方客户端 + 自动刷新令牌调用,属于条款灰色地带。个人量级使用风险低,但请勿高频批量调用、多账号共享或将 token 分发他人。
  • 完全合规的替代路径:需要长期、稳定的 API 集成时,请使用 Kimi 开放平台 的 API key。

本仓库不含任何凭据;请勿将 ~/.dsh/.credentials.yaml~/.kimi-code/credentials/ 中的内容提交到仓库。


FAQ

Q: 为什么需要把 OAuth access token 当作 apiKey 使用?
A: DSH 的适配器当前只支持 apiKey 鉴权,而 Kimi Code 订阅后端采用 OAuth。插件方案在进程内管理 OAuth 令牌并以 Bearer 形式注入请求;旧配置方案则通过定时脚本刷新 token 填充 KIMI_API_KEY

Q: 可以不装 dsh-kimi-bridge 吗?
A: 可以。provider 路径(dsh-kimi-tide 插件)是核心方案;dsh-kimi-bridge 仅用于需要显式控制 Kimi 会话或并行调用的场景。

Q: 模型 k3k3-256k 怎么选?
A: 需要 1M 长上下文时选 k3;常规任务或对上下文长度有明确 256K 上限要求时选 k3-256k

Q: refresh token 过期怎么办?
A: Kimi Code 的 refresh token 约 30 天过期。到期前插件/脚本会告警;到期后只需重新执行 kimi login 获取新的 refresh token。