KimiSwitch Dev
9ce1ed65b0
feat(settings): 适配 kimi-code 0.42.0 —— 实验 flag 镜像 9→6
...
- 删除已转正/移除的 4 个 flag:secondary-model(模型池恒开)、
persistence_minidb_readmodel(改由 [database] 配置节)、remote-control、
search_worker;env 探测清单同步 11→8
- 新增 notify_user flag(KIMI_CODE_EXPERIMENTAL_NOTIFY_USER,实验性
Updates 面板,默认关闭)
- 设置页移除 secondary-model 专属卡片与「默认开启」徽章,6 个 flag 统一渲染;
[secondary_model] 模型池配置逻辑不变
- 残留旧键上游 schema 宽容忽略,无需迁移
2026-09-09 19:48:41 +08:00
KimiSwitch Dev
81699e757d
feat: 适配 kimi-code 0.41.0 —— 移除 file_history 镜像 + 守卫文案更新
...
- file_history flag 上游已移除(turn-level file history 恒开):
从 EXPERIMENTAL_FLAGS / env 探测 / FLAG_LABELS / i18n 全链路删除,
清单回至 9 个;用户 config 残留键被上游静默忽略
- 危险命令守卫行为更新:auto 模式自 0.41.0 起不再拦截危险命令,
仅 Manual/YOLO 强制询问——开关描述文案(中英)与类型注释同步
2026-09-05 16:04:21 +08:00
KimiSwitch Dev
86a128efea
feat: 适配 kimi-code 0.40.1 —— flag 清单/优先级语义/危险命令守卫
...
- flag 清单 9→10:新增 file_history、search_worker;secondary-model
0.40.1 起默认开启(defaultEnabled)
- env 探测补齐为 12 项元组(10 flag + master + legacy),修正此前
tower/subagent_fork/wait_for/auto_session_title 四项漏探
- 优先级语义跟随上游 flagService:单 flag env > [experimental] 显式值
> master env(仅强制开)> 默认。master env 不再锁定 UI;setExperimentalFlag
增加 explicitFalse 路径,关闭默认开/master 强开的 flag 时写字面 false
- 权限设置新增 dangerous_command_guard 开关(默认开,写 [permission]
蛇形键;env KIMI_CODE_DANGEROUS_COMMAND_GUARD 运行时覆盖 config)
- 新增 11 个测试(注册表/写语义/守卫读写)
2026-09-03 10:10:52 +08:00
KimiSwitch Dev
6a7c8f5393
fix(webui): 修复首次打开慢时多次点击导致的竞态报错
...
open_kimi_web_embedded 加 launch_lock 串行化并发调用,拿锁后重查单例;
oneshot 在锁内等待主线程建窗完成,封死命令返回后的残留空档。
spawned_by_me 门控失败路径的 server 清理,复用的 server 不再被误杀;
spawn 前用 try_wait 检查已有子进程避免覆盖泄漏。前端两个打开按钮加
busy 态防重入(打开中...)。
2026-09-03 10:10:40 +08:00
KimiSwitch Dev
45ec073e6f
fix(config): 适配 kimi-code 0.39.1——thinking keep 写字符串 off(布尔会整节作废)、存量布尔归一化;loop_control 默认只写 v2 键(legacy flag 才双写);effort 移除 max 档;实验 flags 补 remote-control、wait_for/minidb 标默认开启
2026-08-29 11:13:58 +08:00
KimiSwitch Dev
67db19eda4
fix(config): 保存不再误删 CLI 后加的顶层配置节 + 未知供应商类型原样保留
...
- 导出 stale-key 清理增加导入基线(imported_section_keys):CLI 在导入后
新增的顶层节(kimi-code 0.38+ 的 [task]/[swarm]/[cron] 等)在保存时
原样保留;用户在 UI 显式删除的节仍被移除;空基线(SQLite 快照恢复)
不删任何键(安全退化)
- ProviderType 增加 Unknown(String) 变体,手写 serde 保持纯字符串线格式,
上游新增的 type 值往返不再被改写为 kimi;SQLite 快照恢复路径同步修复;
模型发现对未知类型返回明确错误,不再误用 KIMI_API_KEY
- 新增 3 个往返测试(106 个 Rust 测试全绿),前端 tsc/vitest 通过
2026-08-29 00:09:55 +08:00
KimiSwitch Dev
8221e05db1
feat(oauth): v0.7.7 — 双区域 OAuth 支持(适配 kimi-code 0.38.0 global 账号)+ 修复模型占位别名跟随 + models.dev 快照刷新
Release / Version consistency (push) Canceled after 0s
Release / Build (macos-latest) (push) Canceled after 0s
Release / Build (ubuntu-latest) (push) Canceled after 0s
Release / Build (windows-latest) (push) Canceled after 0s
Release / Attach macOS install script (push) Canceled after 0s
2026-08-22 14:00:20 +08:00
KimiSwitch Dev
a0e36e928d
feat(webui): v0.7.3 — Kimi Code WebUI 应用内嵌窗口(单例/独立顶层窗口/服务器自动清理)+ 发布说明与网站同步
Release / Version consistency (push) Canceled after 0s
Release / Build (macos-latest) (push) Canceled after 0s
Release / Build (ubuntu-latest) (push) Canceled after 0s
Release / Build (windows-latest) (push) Canceled after 0s
Release / Attach macOS install script (push) Canceled after 0s
2026-08-07 15:46:45 +08:00
KimiSwitch Dev
fc09a29b9f
chore(release): bump to v0.7.2 — 高级设置 + WebUI 快捷入口 + loop_control 兼容 + macOS 安装脚本
Release / Attach macOS install script (push) Canceled after 0s
Release / Version consistency (push) Canceled after 0s
Release / Build (macos-latest) (push) Canceled after 0s
Release / Build (ubuntu-latest) (push) Canceled after 0s
Release / Build (windows-latest) (push) Canceled after 0s
2026-08-07 10:21:47 +08:00
KimiSwitch Dev
8aed04898c
feat(subagent): 实验功能设置新增子代理模型配置
...
Release / Version consistency (push) Canceled after 0s
Release / Build (macos-latest) (push) Canceled after 0s
Release / Build (ubuntu-latest) (push) Canceled after 0s
Release / Build (windows-latest) (push) Canceled after 0s
- 子代理设置页支持选择次主力模型,仅保存模型引用(不再写补丁字段),
子代理直接继承所选模型的上下文长度与思考模式
- 界面只读展示继承的上下文长度与思考模式,移除补丁编辑项
- 仪表盘统计识别子代理请求(__secondary__):归为「子代理模型(估算)」
并缓存次主力模型定价;自定义网关模型价格按官方同名模型跨 provider 匹配
- bump v0.7.1
2026-08-05 23:38:05 +08:00
KimiSwitch Dev
ce282524db
feat: Kimi 设备授权登录(应用内置 kimi login)+ 外链打开统一走 Rust 命令(v0.6.7)
Release / Version consistency (push) Canceled after 0s
Release / Build (macos-latest) (push) Canceled after 0s
Release / Build (ubuntu-latest) (push) Canceled after 0s
Release / Build (windows-latest) (push) Canceled after 0s
2026-08-01 14:49:14 +08:00
KimiSwitch Dev
2464500ef5
feat: 优化更新检查逻辑 + 修复按量余额显示(v0.6.5)
Release / Version consistency (push) Canceled after 0s
Release / Build (macos-latest) (push) Canceled after 0s
Release / Build (ubuntu-latest) (push) Canceled after 0s
Release / Build (windows-latest) (push) Canceled after 0s
2026-08-01 10:51:54 +08:00
KimiSwitch Dev
ace9842556
feat: 新增部分套餐账单查询(v0.6.4)
...
Release / Version consistency (push) Canceled after 0s
Release / Build (macos-latest) (push) Canceled after 0s
Release / Build (ubuntu-latest) (push) Canceled after 0s
Release / Build (windows-latest) (push) Canceled after 0s
- 账单/用量查询:balance:kimi(Moonshot 开放平台余额)、NewAPI 中转站余额(accessToken+userId)、Kimi/智谱/MiniMax 套餐档位(5小时/7天)
- managed:kimi-code 走 Kimi Code OAuth 登录凭据查询订阅用量,access token 过期自动 refresh 并写回凭据(单 flight 锁 + 写回前重读防 CLI 竞态)
- 全屏「配置用量查询」页面:启用开关 / 自动检测 vs NewAPI 模板 / 超时与自动查询间隔 / 测试查询
- 供应商卡片紧凑用量行(切换使用左侧)+ 多档明细行;managed 供应商列表置顶(仅展示层)
- 用量显示中英文适配(five_hour→5小时、weekly_limit→7天,Rust 错误串本地化映射)
- 修复:usage_kinds serde rename 导致账单入口不显示;测试查询因 save 触发 loading 翻页卸载面板导致结果丢失(silent save)
2026-08-01 09:44:36 +08:00
KimiSwitch Dev
b9ea6426d8
merge Dev_260708 → main: v0.6.1~v0.6.3 发版合入主线
...
# Conflicts:
# src-tauri/src/commands.rs
2026-07-31 10:57:27 +08:00
KimiSwitch Dev
f35924e15c
v0.6.3: 添加默认供应商支持
...
- 新增 StepFun Plan 套餐预设
- 供应商编辑页 API Key 下方添加获取 Key 链接(支持推广链接)
- 修复链接无法打开浏览器的问题(Rust open_external_url)
- 无推广链接时回退打开官网
- 必填字段(供应商名称/API Key/请求地址)添加红色 * 标注
- 用户自定义预设方案文档
2026-07-30 14:19:27 +08:00
954801926@qq.com
90ab9f8a97
feat(update): use platform-aware asset and filename in update flow
...
- check_for_update: download_url = pick_asset_for_current_os(assets)
- download_update: temp file = update_temp_filename() (按 OS: msi/dmg/AppImage)
2026-07-30 00:22:49 +08:00
954801926@qq.com
06aad52e0f
feat(update): TDD platform-aware asset picker + tests
...
- 抽取 pick_asset_for_os(assets, os) 纯函数(可测)
- pick_asset_for_current_os 包裹运行时 OS
- update_temp_filename 按 OS 决定后缀
- 6 个单元测覆盖 win/mac/linux + missing/empty/unknown
2026-07-30 00:21:54 +08:00
954801926@qq.com
084883a54a
fix(update): 切换 check_for_update 至 GitHub Releases API
...
- URL: git.codingplan.site Gitea API -> api.github.com/repos/billowliu2/KimiSwitch
- 增加 User-Agent header (GitHub 403 without UA)
- User-Agent: KimiSwitch/<CARGO_PKG_VERSION>
- 包目标只跟随 v0.6.0+ 历史版本仍留在 git.codingplan.site
2026-07-29 23:57:03 +08:00
954801926@qq.com
549c8b5b13
chore: init main branch
2026-07-29 23:36:41 +08:00
KimiSwitch Dev
2614f80d0f
v0.6.0: 预设供应商 + 供应商账单查询
...
## 新增
- 15 条主流供应商预设(Kimi Coding / Moonshot / Anthropic /
DeepSeek / 智谱 GLM / z.ai / 阿里百炼 / MiniMax / StepFun /
SiliconFlow / Novita / OpenRouter / OpenAI / Google AI Studio /
火山方舟),通过 PresetPickerModal 一键填表
- 供应商余额/套餐查询(卡片底部 UsageFooter):余额类
(DeepSeek / SiliconFlow / OpenRouter / StepFun / Novita) +
套餐类(Kimi For Coding / 智谱 GLM / MiniMax),5min stale TTL +
force_refresh + 并发 ≤3
- Rust 端 services/ 模块(balance / coding_plan / usage_types),
参考 cc-switch(MIT,© Jason Young)实现
- query_provider_usage 命令:Rust 端从 config 加载 key,
不经 IPC 序列化 API key
- usageKinds 持久化到 SQLite settings(JSON 数组),
load 时合并回 config,导出 config.toml 时不写
- detect_provider 启发式:旧用户升级后自动获得账单支持
- save-time 校验:未完成供应商(缺 api_key / base_url / 模型)
保存时弹 confirm 列出原因;新增未提交 back 时静默 drop
- docs/PROPOSAL-presets-and-usage.md(v0.4-draft 实施档)
- docs/VERIFICATION-CHECKLIST.md(70+ 项手动验证清单)
## 修复
- handleDuplicateProvider 的 alias.slice 漏洞:老数据
非规范 alias 复制不再错位
- handleSelectPreset 不再 auto-save,半成品不会落盘
- handleSwitchProvider 校验取消时自动 refresh 回滚,
不会出现内存改 / 盘没动的脏态
## 文档
- README / README_EN 致谢段补 cc-switch(预设 + 账单)
- README 已知限制与后续建议段(/reload 上游限制调研结论)
- i18n 补 5 条校验 key + 11 条预设 UI key + 12 条账单 key
详见 docs/PROPOSAL-presets-and-usage.md 与
docs/VERIFICATION-CHECKLIST.md
2026-07-29 20:59:53 +08:00
KimiSwitch Dev
b1d137f072
feat: v0.5.0 - provider icon actions, duplicate & connectivity test, dashboard chart fixes
...
- ProviderList: icon buttons (edit/copy/test/delete) via lucide-react, speed-test badge before enable/switch button
- Duplicate provider: deep-copy provider + models as xxx-copy
- test_connectivity command (cc-switch semantics: GET base_url, any HTTP response = reachable), latency badge green/orange/red, auto-dismiss 6s
- Dashboard: daily bars anchored to panel bottom, Card flex height fix (heatmap stays content-height)
2026-07-28 21:04:47 +08:00
KimiSwitch Dev
6b172914be
fix: v0.4.1 - paginate model discovery for OpenAI / Anthropic / Google
...
- fetch_openai_models: loop on has_more + last_id (?after=) and fall back to next_page_token (?page_token=)
- fetch_anthropic_models: loop on has_more + last_id (?after_id=&limit=1000)
- fetch_google_genai_models: loop on nextPageToken (?pageToken=&pageSize=1000)
- Dedup by id across pages, MAX_PAGES safety cap per provider
- Bump version to 0.4.1
2026-07-28 16:24:36 +08:00
KimiSwitch Dev
ebf2dd28d5
feat: v0.4.0 - provider icon system, settings modal & polish
...
- Add provider icon system with extracted icon library (cc-switch based)
- Persist icon and icon_color in SQLite and config.toml
- Add Settings modal (theme / language / update check / silent download)
- Add useTheme and useUpdateCheck hooks
- Add provider icon picker (IconPicker) with search and grid
- Fix icon frame 2-layer color difference in ProviderEdit
- Dashboard heatmap and daily usage improvements
- Sessions page polish and adaptive layout
- Bump version to 0.4.0
2026-07-28 16:01:11 +08:00
KimiSwitch Dev
139af18826
feat: v0.3.0 - fix provider data loss, oauth corruption & switch UX
...
Bug fixes:
- Fix config.toml wiped to single provider on switch (now writes all providers)
- Fix managed:kimi-code oauth key corruption (oauth/kimi-code was rewritten
to oauth/managed-kimi-code, breaking the official subscription)
- Fix default_model not switching due to React 18 deferred state update
(updateConfig now sets configRef synchronously before setConfig)
- Strip KimiSwitch-private default_model from config.toml provider output
Architecture:
- config.toml is now the authoritative source for Kimi Code provider data
- SQLite stores only metadata (notes, official URLs, remembered models)
- Load reconciles config.toml with SQLite for external /provider changes
- Activate is a no-op for KimiCode (save already writes config.toml)
Features:
- Selected provider moves to top of list on switch
- Add models-dev context size lookup
- Add tauri-plugin-single-instance
Tests:
- 3 new regression tests: oauth key round-trip, all-providers write,
private default_model strip
2026-07-27 22:36:42 +08:00
KimiSwitch Dev
948e96352e
feat: v0.2.0 - add system tray, clean up unused role field
...
- Replace text '+' icon with centered SVG plus icon for the add-provider button
- Add system tray: minimize-to-tray and quit-from-tray menu (minimize hides window, close exits app)
- Remove unused model role field (no functional effect, only stored/displayed)
- Fix multiple providers showing as active in Kimi Code mode: only the default_model's provider is marked active
- Copy /reload to clipboard after provider switch as a convenience hint
- Bump version to 0.2.0
2026-07-25 16:39:20 +08:00
KimiSwitch Dev
b01a5661b4
feat: unify provider active logic and add env field support for kimi_code_io
2026-07-09 08:44:11 +08:00
KimiSwitch Dev
232949a701
feat(pi): preserve provider/model fields and sync Pi default provider/model on switch
...
- Fix stale configRef in useConfig so saves include the latest state.
- Preserve Pi models.json fields (headers, compat, cost, maxTokens,
thinkingLevelMap, authHeader, modelOverrides, provider name) across edits.
- Add Pi settings.json I/O and update defaultProvider/defaultModel when
activating a provider so Pi actually picks up the switch.
- Add round-trip and settings serialization tests.
2026-07-08 19:39:15 +08:00
KimiSwitch Dev
6eb57d2ac6
feat: store Pi Switch config in SQLite, activate on switch
2026-07-08 16:14:16 +08:00
KimiSwitch Dev
af991a7bda
feat: implement Pi Switch i18n UI and agent config switch
2026-07-08 08:53:26 +08:00
KimiSwitch Dev
26adba78ba
feat: define Rust models and lib exports
2026-07-06 17:31:44 +08:00