store-update
在 CCX Desktop 发布后下载 Store MSIX 并生成发布公告。用户提到 Store 上架、MSIX、从 GitHub Release 下载 store.msix、发布后同步 Windows Store、从 release 填写商店更新内容时必须使用此技能。该技能会下载最新 GitHub Release…
新增或更新 CCX 项目中的模型注册技能。适用于 Claude 与非 Claude 模型,覆盖能力表、路由白名单、基准映射、代码生成与验证。
$ npx -y skills add BenedictKing/ccx --skill model-update --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/model-updateContext preview
The summary Claude sees to decide when to auto-load this skill.
新增或更新 CCX 项目中的模型注册技能。适用于 Claude 与非 Claude 模型,覆盖能力表、路由白名单、基准映射、代码生成与验证。
name: model-update description: 新增或更新 CCX 项目中的模型注册技能。适用于 Claude 与非 Claude 模型,覆盖能力表、路由白名单、基准映射、代码生成与验证。 version: 2.1.0 author: https://github.com/BenedictKing/ccx/ allowed-tools: Bash, Read, Write, Edit, Agent context: fork
当用户输入包含以下关键词时触发:
适用于三类场景:
1. **新增独立模型(默认情形)**:仓库中还没有该 canonical model,需要补完整能力定义与必要映射。**一般添加模型都是新的独立模型**——带新主次版本号的模型(如 `claude-fable-5` → `claude-fable-5-1`、`claude-mythos-5` → `claude-mythos-5-1`)一律默认独立注册,不要归并进前代。归并会把 benchmark 证据混进前代 profile,图表张冠李戴、选型画像互相污染,事后拆分成本远高于一次独立注册。 2. **已有模型的 dated suffix / 快照别名**:如 `DeepSeek-V4-Pro-0813`、`claude-haiku-4-5-20251001`,通常只需要放宽 pattern、补测试,并检查特定 route 白名单是否也要同步放开。 3. **错误归并的别名拆分为独立模型**:发现既有归并搞错了(别名次代其实是独立模型),按"别名拆分检查清单"执行。
先回答这 4 个问题:
1. 仓库里是否已经存在 canonical model(如 `deepseek-v4-pro`)? 2. 新上线的是**全新 canonical model**,还是**已有模型的日期后缀/快照别名**?默认假设是独立模型;只有纯日期后缀(`-20260902` / `-0813`)或官方明确的快照别名才按别名处理。拿不准时按独立模型处理或向用户确认,不要默认归并。 3. 是否有 provider route 对该模型做了 `SupportedModels` 白名单限制? 4. 是否有 benchmark / preset / builtin manifest 依赖生成产物自动同步?
如果只是 dated suffix 更新,优先最小化修改,避免误改优先级和 alias。
优先从官方文档、项目上下文或现有同族模型推断以下字段:
| 字段 | 示例 | |------|------| | canonical model | `deepseek-v4-pro` | | 新上线别名 | `DeepSeek-V4-Pro-0813` | | provider | `deepseek` / `anthropic` / `openai` | | 是否已有同族条目 | 是 / 否 | | 是否只是日期后缀 | 是 / 否 | | 是否影响 bare alias | 如 `sonnet` / `opus` / `deepseek-chat` | | 是否影响特定协议路由白名单 | 如 Responses route |
**核心文件:** `shared/model-registry/ccx_model_registry.json`
在 `upstreamCapabilities` 中新增完整条目,按家族就近放置。
优先修改已有 `patterns`,不要重复新增能力条目。注意此分支仅适用于纯日期后缀/快照别名;次代版本模型走 2.1 新增独立条目。
典型规则:
例如:
"(?:^|[-/])deepseek-v4-pro(?:-\\d{4}-\\d{2}-\\d{2}|-\\d{4,8})?(?=$|@)"**重点文件:** `backend-go/internal/config/provider_templates.go`
检查:
典型场景:
`[]string{"deepseek-v4-flash"}` 扩成 `[]string{"deepseek-v4-flash", "deepseek-v4-pro"}`
按模型类型选择,不要机械全改:
**原则:**
至少覆盖:
本项目里 DeepSeek 日期后缀测试位置:
node scripts/generate-model-registry.mjs
该脚本校验 registry(pattern 正则合法性等)并调用 `generate-preset-manifest.mjs`,同步更新:
修改 benchmark 映射后另需 `make benchmark-update` 重抓数据源并再生成图表(`docs/public/benchmark/`),registry 中的证据合并与计数字段由管线自动维护。
建议最少执行:
node scripts/generate-model-registry.mjs cd backend-go && go test ./internal/config/...
必要时再补:
rg -n "<canonical-model>|<dated-suffix>" shared/model-registry backend-go/internal/config frontend/src/generated desktop/frontend/src/generated
当用户说“模型版本从 `deepseek-v4-pro` 更新为 `DeepSeek-V4-Pro-0813`”这类需求时,按下面顺序检查:
当发现既有"版本别名"归并搞错了(如 `claude-fable-5-1` 被并进 `claude-fable-5`),需要拆分为独立 canonical model 时,按下面顺序检查:
完成更新后逐项核对:
CCX is a high-performance AI API proxy and protocol translation gateway for Claude, OpenAI Chat, OpenAI Images, OpenAI Embeddings, Codex Responses, and Gemini.
Repo: BenedictKing/ccx
在 CCX Desktop 发布后下载 Store MSIX 并生成发布公告。用户提到 Store 上架、MSIX、从 GitHub Release 下载 store.msix、发布后同步 Windows Store、从 release 填写商店更新内容时必须使用此技能。该技能会下载最新 GitHub Release…
升级项目版本号并提交git,支持patch/minor/major版本升级或指定具体版本号,自动从git log生成CHANGELOG