Add cc-switch-dev-workflow skill
这个提交包含在:
@@ -0,0 +1,71 @@
|
||||
# Platform Policy: Framework Decision Matrix
|
||||
|
||||
## Purpose
|
||||
在 `Next.js 全栈` 与 `Hono + React SSR/TanStack` 两条允许轨道之间做可重复的选择,而不是让 agent 自行随机决定。
|
||||
|
||||
## When to Use
|
||||
- 新项目初始化时
|
||||
- 老项目需要明确迁移目标时
|
||||
- 团队对 “Next.js 还是 Hono” 出现争议时
|
||||
|
||||
## Inputs
|
||||
- 产品是否以前端页面为主
|
||||
- API 边界是否需要长期清晰分层
|
||||
- SSR/边缘部署要求
|
||||
- 团队是否需要复用独立服务层
|
||||
|
||||
## Outputs
|
||||
- 选定轨道
|
||||
- 该轨道下保留或替代的技术组合
|
||||
|
||||
## Primary Agent/Model
|
||||
`GPT-5.4 Pro xhigh`
|
||||
|
||||
## Secondary Agent/Model
|
||||
`Claude Opus 4.6`
|
||||
|
||||
## Required Skills
|
||||
- `spec-reviewing`
|
||||
|
||||
## Steps
|
||||
1. 先看项目交付形态和团队协作方式。
|
||||
2. 按矩阵选一条轨道,不接受双主栈并行。
|
||||
3. 把选择结果写入 `CLAUDE.md` 和 Setup 阶段产物。
|
||||
|
||||
## Exit Criteria
|
||||
- 轨道已经确定
|
||||
- 相关被替代组件已经说明清楚
|
||||
|
||||
## Failure Recovery
|
||||
- 如果出现两条轨道同时存在的设计,先回到单轨道
|
||||
- 如果团队只是因为“看起来都不错”而摇摆,优先选择更有边界感的 `Hono + React SSR/TanStack`
|
||||
|
||||
## Related Templates
|
||||
- [`../templates/claude-md-template.md`](../templates/claude-md-template.md)
|
||||
|
||||
## Decision Matrix
|
||||
|
||||
| 条件 | 选 `Hono + React SSR/TanStack` | 选 `Next.js 全栈` |
|
||||
|---|---|---|
|
||||
| 需要清晰前后端边界 | 是 | 否 |
|
||||
| 需要独立服务层或未来拆服务 | 是 | 否 |
|
||||
| 团队希望统一 `TanStack Router + Query` 心智 | 是 | 否 |
|
||||
| 更看重单仓单应用的快速落地 | 否 | 是 |
|
||||
| 页面和服务逻辑高度耦合 | 否 | 是 |
|
||||
| 需要高度可控的 API 中间层 | 是 | 否 |
|
||||
|
||||
## Track A: Hono + React SSR/TanStack
|
||||
- 默认场景:内部工具、业务系统、需要清晰服务边界的产品
|
||||
- 固定组合:`Hono` + `React` + `TanStack Router` + `TanStack Query` + `Better Auth` + `shadcn/ui` + `Tailwind` + `Drizzle`
|
||||
- 优点:边界清晰,迁移和拆分成本低,适合多 agent 任务切片
|
||||
- 代价:初始装配稍多,需要更强的工程纪律
|
||||
|
||||
## Track B: Next.js Full Stack
|
||||
- 默认场景:页面驱动、内容驱动、单体交付优先的应用
|
||||
- 固定组合:`Next.js` + `React` + `Better Auth` + `shadcn/ui` + `Tailwind` + `Drizzle`
|
||||
- 替代说明:本轨道中 `Next.js App Router` 替代 `TanStack Router`;服务层由 `route handlers / server actions` 替代 `Hono`
|
||||
- 优点:统一框架、上手快、页面与服务同仓同形态
|
||||
- 代价:边界容易模糊,后续抽服务时需要更多治理
|
||||
|
||||
## Tie-Break Rule
|
||||
- 如果没有明确理由支持 `Next.js 全栈`,默认回到 `Hono + React SSR/TanStack`
|
||||
@@ -0,0 +1,69 @@
|
||||
# Platform Policy: Model Routing
|
||||
|
||||
## Purpose
|
||||
为 `CC Switch` 提供默认模型路由,明确 `GPT-5.4 Pro xhigh`、`Claude Opus 4.6` 与 fallback 模型的职责分工。
|
||||
|
||||
## When to Use
|
||||
- 为新项目配置多 agent 工作模式时
|
||||
- 当前任务需要模型切换时
|
||||
- 遇到模型长文处理、复杂推演或受限场景时
|
||||
|
||||
## Inputs
|
||||
- 当前阶段
|
||||
- 任务类型
|
||||
- 文档长度
|
||||
- 是否需要第二视角复核
|
||||
|
||||
## Outputs
|
||||
- 默认主模型
|
||||
- 默认辅模型
|
||||
- 受控 fallback 路径
|
||||
|
||||
## Primary Agent/Model
|
||||
`GPT-5.4 Pro xhigh`
|
||||
|
||||
## Secondary Agent/Model
|
||||
`Claude Opus 4.6`
|
||||
|
||||
## Required Skills
|
||||
- 无强制 skill;受 `CC Switch` 编排规则约束
|
||||
|
||||
## Steps
|
||||
1. 按任务类型选择主模型。
|
||||
2. 需要长文消化或二次复核时并行交给 `Claude Opus 4.6`。
|
||||
3. 遇到主模型受限或厂商覆盖不足时,仅在合规范围内启用 fallback。
|
||||
4. fallback 输出必须被压缩回标准 handoff,再回主线程继续。
|
||||
|
||||
## Exit Criteria
|
||||
- 当前任务已有清晰主辅模型
|
||||
- fallback 只在受限范围使用,且结果已标准化
|
||||
|
||||
## Failure Recovery
|
||||
- 如果模型切换导致上下文漂移,回到 handoff 模板重新压缩
|
||||
- 如果团队开始按个人偏好随意换模型,回到本页固定路由
|
||||
|
||||
## Related Templates
|
||||
- [`../templates/agent-handoff-template.md`](../templates/agent-handoff-template.md)
|
||||
- [`../templates/analysis-template.md`](../templates/analysis-template.md)
|
||||
|
||||
## Default Routing
|
||||
|
||||
| 任务类型 | 主模型 | 辅模型 |
|
||||
|---|---|---|
|
||||
| 研究规划、任务拆分、复杂推演 | `GPT-5.4 Pro xhigh` | `Claude Opus 4.6` |
|
||||
| 长会议纪要、长参考文档消化 | `Claude Opus 4.6` | `GPT-5.4 Pro xhigh` |
|
||||
| Spec 编写和结构化文档定稿 | `GPT-5.4 Pro xhigh` | `Claude Opus 4.6` |
|
||||
| Spec 审查、第二视角复核 | `Claude Opus 4.6` | `GPT-5.4 Pro xhigh` |
|
||||
| TDD 实施、Gap 收敛、重构执行 | `GPT-5.4 Pro xhigh` | `Claude Opus 4.6` |
|
||||
|
||||
## Fallback Policy
|
||||
- 可用模型:`GLM`、`Minimax`、`Kimi`
|
||||
- 仅限场景:主模型在合规范围内无法继续分析、厂商覆盖不足、特定问题需要补充视角
|
||||
- 不是默认路线:fallback 不能直接成为项目主链路
|
||||
- 输出要求:必须回写为标准 handoff,包含 `Goal / Scope / Source of Truth / Constraints / Deliverable / Validation`
|
||||
|
||||
## Reset Rule
|
||||
- 阶段切换时 reset
|
||||
- 大型研究转规范时 reset
|
||||
- 覆盖长文档后进入实施前 reset
|
||||
- 发生 fallback 后,必须 reset 并只带 handoff 摘要继续
|
||||
@@ -0,0 +1,82 @@
|
||||
# Platform Policy: Stack Whitelist
|
||||
|
||||
## Purpose
|
||||
定义 v1 默认技术栈白名单、禁用项和例外审批接口,避免让 agent 在项目主链路上随机选型。
|
||||
|
||||
## When to Use
|
||||
- 新项目立项时
|
||||
- 老项目需要补一套统一技术栈约束时
|
||||
- agent 要新增框架、语言或关键基础设施时
|
||||
|
||||
## Inputs
|
||||
- 项目类型
|
||||
- 产品形态
|
||||
- 现有遗留约束
|
||||
- 性能与交付要求
|
||||
|
||||
## Outputs
|
||||
- 允许的主链路技术栈
|
||||
- 禁用项
|
||||
- 例外审批流程
|
||||
|
||||
## Primary Agent/Model
|
||||
`GPT-5.4 Pro xhigh`
|
||||
|
||||
## Secondary Agent/Model
|
||||
`Claude Opus 4.6`
|
||||
|
||||
## Required Skills
|
||||
- `ralphy-initializing`
|
||||
- `spec-reviewing`
|
||||
|
||||
## Steps
|
||||
1. 先判断项目是 `Next.js 全栈` 还是 `Hono + React SSR/TanStack`。
|
||||
2. 在允许的轨道内固定 UI、数据层、鉴权、样式和 ORM 方案。
|
||||
3. 把选型写进 `CLAUDE.md`、Spec 和脚手架说明。
|
||||
4. 如需偏离白名单,先走 ADR 和审批,再更新模板与执行说明。
|
||||
|
||||
## Exit Criteria
|
||||
- 项目主链路的语言、框架、数据访问、鉴权和样式方案均已固定
|
||||
- 例外项已被 ADR 化,并同步到模板和执行说明
|
||||
|
||||
## Failure Recovery
|
||||
- 如果 agent 引入未批准语言或框架,停止实现并回退到白名单决策
|
||||
- 如果项目同时混用多套主路由/状态/ORM 方案,立即收敛为单一路线
|
||||
|
||||
## Related Templates
|
||||
- [`../templates/claude-md-template.md`](../templates/claude-md-template.md)
|
||||
- [`../templates/spec-template.md`](../templates/spec-template.md)
|
||||
|
||||
## Default Whitelist
|
||||
- 语言:`TypeScript`
|
||||
- UI:`React`
|
||||
- 样式:`Tailwind CSS`
|
||||
- 组件:`shadcn/ui`
|
||||
- 鉴权:`Better Auth`
|
||||
- 数据获取:`TanStack Query`
|
||||
- 路由:`TanStack Router` 或 `Next.js App Router`,按轨道二选一
|
||||
- 服务层:`Hono` 或 `Next.js route handlers / server actions`,按轨道二选一
|
||||
- ORM:`Drizzle`
|
||||
- 数据库:`PostgreSQL`
|
||||
|
||||
## Default Track Preference
|
||||
- 默认优先:`Hono + React SSR/TanStack`
|
||||
- 条件允许时可选:`Next.js 全栈`
|
||||
|
||||
## Hard Bans On The Application Main Path
|
||||
- 禁止 `Python` 作为产品应用主链路语言
|
||||
- 禁止 `PHP` 作为产品应用主链路语言
|
||||
- 禁止无类型的 `JavaScript-only` 作为默认实现路线
|
||||
- 禁止未经 ADR 批准的第二套路由、鉴权、ORM 或样式体系并存
|
||||
|
||||
## Allowed Exceptions
|
||||
- 既有遗留系统必须兼容,且短期无法迁移
|
||||
- 明确的第三方平台限制只支持某一特定方案
|
||||
- 已被性能分析证明主链路栈无法满足约束
|
||||
- 一次性离线工具、迁移脚本或数据清洗脚本
|
||||
|
||||
## Exception Interface
|
||||
- 谁批准:项目 owner + 技术负责人
|
||||
- 需要补什么:ADR、`CLAUDE.md` 更新、相关 Spec 更新
|
||||
- 要同步哪里:playbook 说明、模板默认值、handoff 约束
|
||||
- 何时失效:例外只对当前项目或当前子系统生效,不自动扩散为默认规则
|
||||
在新工单中引用
屏蔽一个用户