reactive-resume
reactive-resume
A one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today!
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:tafcear/kimi-tide
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
English | 简体中文
月汐(kimi-tide)是一个小插件,装在 DSH 上。DSH 就是你平时跟 AI 一起写代码、干活的工具(DeepSeek 官方开源)。
它只做一件事:自动替你换一个更合适的 AI。 你手里通常接了好几个 AI——有的便宜、有的聪明、有的看得懂图。以前全靠自己手动切,切完还常忘了切回来;装上月汐,它每一轮自己挑:日常活先给便宜的,要紧的活交给更聪明的,图交给看得懂图的。
它给你三样东西:
(下文里「AI」和「模型」是一回事——DSH 管它们叫模型。)
适合谁:在用 DSH、且接了不止一个模型的人。 不适合:只用一个模型,或还没跑起 DSH 的人(先把 DSH 用起来,再回来装这个)。
场景一:贴了张截图,模型说看不了
场景二:切完模型,忘了切回来
场景三:额度总比预期烧得快
一条消息进来,月汐按这个顺序决定用哪个模型:
@kimi(provider 级:模型取你预设里配过的那个)或 @kimi/k3(精确钉到某个模型)→ 最高优先。flowchart LR
A["💬 你的消息<br>(本轮新消息)"] --> B{"显式 @模型?"}
B -- "@kimi 等" --> H["🎯 显式指令<br>最高优先"]
B -- 否 --> C["📏 预设规则链<br>带图 / 关键词组<br>特异度降序 · 首条可用生效"]
C -- 命中 --> D["🌙 规则目标:模型|协作流<br>(不可用则降级跳过)"]
C -- 未命中 --> E["💰 预设默认模型<br>(打底)"]
H --> J
D -- "目标=协作流" --> T["🌊 转述流<br>vision-exp 读图转文字"]
D -- "目标=模型" --> F
E --> F{"带图且目标<br>文本-only?"}
T --> K["✍️ 转述文字<br>文本模型接力"]
F -- 是 --> G["🖼️ 图像护栏<br>改道多模态候选"]
F -- 否 --> J["📋 dock 面板留痕<br>选谁 + 为什么"]
G --> J
K --> J
图中「协作流」= 一条「先 A 后 B」的自动流程(比如:图先转成文字,再交给便宜模型作答);「多模态」= 能看懂图片的模型;「转述」= 让能看图的模型(图中 vision-exp 是 Kimi 家一款能看图的模型名)把图里的内容写成文字;「dock 面板」= 输入框下方的「🌙 月汐」面板。
点图看大图。docs/assets/readme/kimi-tide-architecture.html 下载后用浏览器打开,是可平移缩放/搜索的交互式架构图(明暗双主题,节点可溯源到源码)。
@deepseek-ai/dsh@0.1.2-rc.1 及以上(本版实机验证于 0.1.5-rc.1)「设置 → Models」里添加模型来源(示例:kimi-coding,apiKeyEnv 填 KIMI_API_KEY,然后在凭据区粘贴你的 Key——k3 等 4 个 Kimi 模型会自动出现在目录里)。接几家都行:月汐的候选池就是这页的全部模型。密钥由 DSH 托管保存,不会写进任何插件配置文件。
cd packages/dsh-kimi-tide
npm install && npm run build && npm pack
dsh plugin --profile web add ./dsh-kimi-tide-<version>.tgz
重启 dsh web:
@kimi 可以显式点名,或者靠内置关键词组自动改道(比如消息里出现「代码」就走编码模型);预设 = 一套「默认模型 + 规则」方案,一键全局切换;月汐自带两套:
| 预设 | 默认模型(没规则命中时用它) | 规则 | 适合谁 |
|---|---|---|---|
| 关闭 | — | — | 想完全手动选模型的人 |
| 省钱 | deepseek-v4-flash |
带图 → k3;代码关键词 → kimi-for-coding;翻译关键词 → deepseek-v4-flash |
额度敏感、日常杂活多 |
| 能力 | k3 |
带图 → k3;审查 → k3;代码 → kimi-for-coding;数学 → deepseek-v4-pro;长文 → k3;写作 → deepseek-v4-pro;翻译 → deepseek-v4-flash;闲聊 → deepseek-v4-flash |
追求最佳产出质量 |
内置 7 组关键词(词表可改,也可自建新组):
| 组 | 方向 | 内置词表(可改) |
|---|---|---|
code |
编码 | 代码, code, bug, 重构, refactor, 实现, 函数, 测试, 接口, 联调, 部署, 性能, 报错, 日志, 编译, 命令, 脚本 |
review |
审查 | 审查, review, 评审, 挑毛病, 复检, 检查, audit, 意见, 打分 |
writing |
写作 | 写作, 文案, 润色, 改写, 扩写, 标题, 推文, 周报, 演讲稿, 总结 |
translate |
翻译 | 翻译, 译成, 中译英, 英译中, translate, 本地化 |
longdoc |
长文 | 长文档, 通读, 逐段, 全文, 上万字, 大文档 |
math |
数学 | 数学, 证明, 推导, 求解, 公式, 数论, 概率, 逻辑题 |
chitchat |
寒暄 | 你好, 谢谢, 怎么样, 随便, 聊聊, 天气 |
review组默认服务于评审协作流(请强模型评审本轮产出)——机制、四个开关与今天的边界见下文「多模型协作评审」一节。
两个常用微调(都在「设置 → 月汐」里点几下就能配):
面板第二行的额度槽会跟随当前命中的目标自动换形态:订阅类(code plan)显示用量窗(周 / 5h,条画的是剩余比例),API 计费类显示余额(余额不足以调用 API 时会明确标注)。旁边还有一个总览按钮——一屏列出全部已注册的源,以及某个源为什么没数据:「该套餐无公开 API」/「key 未配置」/「取数失败」三态分别说清,不用你猜。
取数用的凭据按
settings.yaml里该 provider 配置的apiKeyEnv名字解析(并自动兼容内置别名)——你给 provider 起的 key 名与插件内置默认名不一致时,面板照样取得到数。
@ 轮与「带图规则已排首位」的轮不发判官调用。配置项 preset.hitConfirm。@kimi(provider 级):模型取你预设里配过的那个 kimi 目标(不是目录里碰巧排第一的),决策原因里会写明依据;@kimi/k3(精确到模型):直接钉到该模型——想用哪个模型就用哪个,不受候选池顺序影响;模型不可用时会明确告诉你回落到了谁,不会静默换人。@ 后面若不是本插件认识的 provider——例如工作区路径引用 @README.md、scoped 包名 node_modules/@deepseek-ai/…、路径里的 @xxx——不会被当成显式指令,该轮照常走关键词规则,决策原因里写明「@x 非本路由器已知 provider(已忽略)」。匹配细节(词边界、特异度排序、降级语义)、带图行为、配置全字段:见路由器架构详解。候选池 = Models 页全量目录,任何模型都能当默认或规则目标。
路由决定「这一步用谁」,评审决定「这一步干得够不够好」。两者可以分开用,也可以一起用。
它做什么:一轮结束后,月汐把「本轮你的需求 + 主模型产出」发给你指定的评审模型(通常是更强、更贵的那个),拿回一份结构化评审——问题(按严重度分级:阻塞/建议/可选)→ 改进建议 → 结论(通过/有条件通过/不通过),并以评审卡贴在那一轮下面。
四个开关(设置 → 月汐 → 协作流):
| 开关 | 今天的实际行为 |
|---|---|
| 触发方式 | 关键词:消息命中指定关键词组才评审;手动:随时敲 /kimi-tide review 评审上一轮 |
| 轮数 | 1–3,约束评审往返次数,同时是每会话「退回重做」的次数上限 |
| 自动修订 | 评审判「不通过/有条件通过」时,自动把意见退回给主模型重做(默认关) |
| 修订后复检 | 重做完成后再评一轮(默认开)——用来确认问题真的修掉了 |
退回重做怎么走:退回不是替你改代码,而是往这一轮注入一条「按意见修订」的消息,让主模型只改被指出的问题(不重写无关部分),然后正常起下一轮。原产出仍在会话日志里,随时可回看。
/kimi-tide revise),不勾自动修订也能用——评审判「通过」时你也可以让它重做。它今天不做的事:不会替你改代码,也不会绕过主模型自己写——退回去的活仍然是主模型干的。
成本:评审只发生在命中的轮,且只把该轮产出切片发给评审模型(单段上限 12000 字符、60 秒超时、失败不打断本轮)。开启退回后每次退回多一轮主模型调用,开着复检再多一次评审调用。研究仓库引用的业界数据里,对抗式评审回路的 token 消耗常在单模型的 2–3 倍量级——本插件自身尚未测量。
证据分级:机制设计与三轮实证见 kimi-tide-research。其中「评审能否提升弱模型产出质量」尚未度量(意见接受率、与「强模型独立完成」的对照基线、修复引入新问题的比率均无数据),因此本节不写效果数字;「转移效率对照实验」原定随 v1.4.0 交付,v1.4.0 先只交机制本身(退回重做),对照实验顺延到下一版——它的载体(产品自身跑评审闭环)正好在 v1.4.0 就位。
路由管「这一步用谁」,协作评审管「这一步干得够不够好」;分工表管「这类活以后归谁」。月汐把分工表做成一张给模型看的技能卡——主模型派活前自己照着办,不用你在提示词里手抄模型名。
kimi-coding/k3」「后端 → zai-coding-cn/glm-5.3」。两个角色抢同一个队友名的认领冲突在保存时当场拦下。kimi-tide-team)——派活前读它,按两种配方之一办事:一次性任务(workflow 点名目标)或常驻队友(spawn_teammate,名字取认领列)。你改表,存活会话的技能卡下一轮自动换新;表清空则整张卡退出。@kimi 指定照样优先。主驱动留空=跟随宿主默认模型。role / unclaimed / explicit / keep)、队友、角色标签与最终生效的模型(每父会话最近 20 条);角色目标不可用时不静默换人,面板逐字写明「「〈角色名〉」目标不可用 → 保持继承(〈实际生效目标〉)」。配置字段(roles / driver / driverSticky / rulesApplyToChildren)、五档决策优先级与迁移口径见路由器架构详解的「2.0.0 团队派发」节;实机验收判据与结果见 team-dispatch-acceptance.md。
Q:以前的 OAuth 接入方式去哪了?
A:退役了。DSH 官方生态已原生支持 Kimi 接入,自研的那层属于重复造轮,已整体删除。现在一把 Console API Key + 官方 Models 页配置即可。历史存档见 docs/legacy-setup.md。
Q:还需要装 Kimi CLI 并 kimi login 吗?
A:不需要。一把 Console API Key + 官方 Models 页配置即可。
Q:带图会话有什么限制? A:默认「锁存」姿态下,会话一旦带过图就锁定在能看图的模型上——如果它的额度/Key 失效,这个会话切不回文本模型,只能新开。想避免:把预设的带图兜底改成「懒转述」(图片先转成文字,文本模型接力)或「盲答」(当没图处理)。转述结果有缓存,失败不会反复重试。重要的带图任务,保持模型额度健康即可。
Q:之前听说有个「能力评分引擎」? A:退役了。以前靠机器打分选模型,黑箱难懂;现在改成你写得出的规则——命中即路由,未命中走默认,每个决策你都能读懂、改得动。旧评分配置升级时自动转成预设。
Q:路由配置存在哪里?升级会丢吗? A:存在 DSH 设置里(「设置 → 月汐」编辑,重启保持)。跨版本升级自动迁移,旧配置自动留档;细节见路由器架构详解的「迁移链」节。
当前版本:v2.0.0(2026-10-06)
这个项目的三条原则:官方优先 · 规则透明 · 决策可观测——路由依据是你写得出的规则,每次自动选路都有理由、有留痕。
我想用
我想深挖
我想参与
cd packages/dsh-kimi-tide
npm install
npm run typecheck # tsc --noEmit
npm test # vitest
npm run build # tsc 宿主 + esbuild 浏览器
质量基线:全量测试绿 + typecheck 0 错误 + build 通过方可提交。本仓库实践「实施 → 独立审查 → 修复 → 复检验收」双模型协作闭环(见 docs/agent-collaboration-loop.md)。
文档门禁:npm run check 跑三条机器门禁——CHANGELOG / README / package 版本三方一致、全库文档链接不断、两个 README 双语对一致(版本行 / 章节骨架 / 徽章 / 本地文档链接集合四项,规则见 docs/agents/readme-pair.md)——任何用户可见改动,中英两份 README 必须同一次提交里一起改。
Release 双语四段式:每个新版本的 Release 正文(= 附注 tag 消息)必须是双语——中文整块在上、English 整块在下,每种语言内部四段:① 一句话定位 ② 本次更新 / What's new ③ 安装与升级 / Install & upgrade ④ 验证与验收 / Verification & acceptance。打 tag 前用 node scripts/check-release-notes.mjs --file <正文草稿> 自检,Actions 在 gh release create 前再拦一次(模板与细则见 docs/agents/release-notes.md)。
发布门禁:任何版本发版(打 tag / 触发 Actions Release)前,必须在真实宿主上跑通该版本的实机验收清单并全绿,且由维护者裁定 tag——「单元测试绿」不等于「宿主里能跑」。各版本验收记录见 docs/release-evidence.md。
发布规范(维护者):DSH 插件必须声明
dsh.bundle.patch(指向cordis.patch.yml)才能作为 profile 层加载。本插件已按官方规范声明,升级版本时请勿移除该字段。
commands/execute 跨宿主契约容错)、PR #3(YAML null 配置归一化)与 Issue #4(rc.2 投影 wire 契约诊断)——你的反馈直接加固了 0.5.x–0.6.0 的发布质量。@earendil-works/pi-ai(MIT)、@deepseek-ai/dsh-llm-pi-ai(MIT, DeepSeek)、schemastery(MIT)、zod(MIT)、yaml(MIT)、dsh-kimi-bridge(MIT,历史致谢,已归档)~/.dsh/.credentials.yaml、环境变量中的密钥提交到仓库。CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: kimi-code、model-routing。