@teamix-evo/skills 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/manifest.json +61 -45
  2. package/package.json +2 -2
  3. package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/SKILL.md +18 -18
  4. package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/checklist.md +2 -2
  5. package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/reuse-first.md +25 -17
  6. package/src/teamix-evo-code-uni-manager/SKILL.md +95 -0
  7. package/src/teamix-evo-code-uni-manager/api-layering.md +370 -0
  8. package/src/teamix-evo-code-uni-manager/checklist.md +193 -0
  9. package/src/teamix-evo-code-uni-manager/error-and-loading.md +389 -0
  10. package/src/teamix-evo-code-uni-manager/file-structure.md +339 -0
  11. package/src/teamix-evo-code-uni-manager/forms-and-validation.md +459 -0
  12. package/src/teamix-evo-code-uni-manager/reuse-first.md +188 -0
  13. package/src/teamix-evo-code-uni-manager/routing-and-codesplit.md +450 -0
  14. package/src/teamix-evo-code-uni-manager/testing.md +396 -0
  15. package/src/teamix-evo-design-opentrek/SKILL.md +71 -0
  16. package/src/teamix-evo-design-opentrek/boundaries.md +513 -0
  17. package/src/teamix-evo-design-opentrek/brand.md +154 -0
  18. package/src/teamix-evo-design-opentrek/checklist.md +83 -0
  19. package/src/teamix-evo-design-opentrek/components.md +245 -0
  20. package/src/teamix-evo-design-opentrek/flows.md +51 -0
  21. package/src/teamix-evo-design-opentrek/foundations.md +271 -0
  22. package/src/teamix-evo-design-opentrek/generation-flow.md +185 -0
  23. package/src/teamix-evo-design-opentrek/patterns/dashboard.md +31 -0
  24. package/src/teamix-evo-design-opentrek/patterns/detail-page.md +202 -0
  25. package/src/teamix-evo-design-opentrek/patterns/form-page.md +289 -0
  26. package/src/teamix-evo-design-opentrek/patterns/list-page.md +334 -0
  27. package/src/teamix-evo-design-opentrek/patterns/page-types.md +154 -0
  28. package/src/teamix-evo-design-opentrek/philosophy.md +96 -0
  29. package/src/teamix-evo-design-opentrek/rules/README.md +39 -0
  30. package/src/teamix-evo-design-opentrek/rules/boundaries.rules.json +391 -0
  31. package/src/teamix-evo-design-uni-manager/SKILL.md +73 -0
  32. package/src/teamix-evo-design-uni-manager/boundaries.md +564 -0
  33. package/src/teamix-evo-design-uni-manager/brand.md +202 -0
  34. package/src/teamix-evo-design-uni-manager/checklist.md +115 -0
  35. package/src/teamix-evo-design-uni-manager/components.md +254 -0
  36. package/src/teamix-evo-design-uni-manager/flows.md +63 -0
  37. package/src/teamix-evo-design-uni-manager/foundations.md +258 -0
  38. package/src/teamix-evo-design-uni-manager/generation-flow.md +194 -0
  39. package/src/teamix-evo-design-uni-manager/patterns/dashboard.md +95 -0
  40. package/src/teamix-evo-design-uni-manager/patterns/detail-page.md +224 -0
  41. package/src/teamix-evo-design-uni-manager/patterns/form-page.md +329 -0
  42. package/src/teamix-evo-design-uni-manager/patterns/list-page.md +356 -0
  43. package/src/teamix-evo-design-uni-manager/patterns/page-types.md +165 -0
  44. package/src/teamix-evo-design-uni-manager/philosophy.md +106 -0
  45. package/src/teamix-evo-design-uni-manager/rules/README.md +49 -0
  46. package/src/teamix-evo-design-uni-manager/rules/boundaries.rules.json +418 -0
  47. package/src/teamix-evo-manage/SKILL.md +281 -0
  48. package/skills/teamix-evo-design-rules/SKILL.md +0 -86
  49. package/skills/teamix-evo-design-rules/boundaries.md +0 -89
  50. package/skills/teamix-evo-design-rules/checklist.md +0 -108
  51. package/skills/teamix-evo-design-rules/generation-flow.md +0 -142
  52. package/skills/teamix-evo-design-rules/prompts/page-design.md +0 -148
  53. package/skills/teamix-evo-design-rules-opentrek/SKILL.md +0 -48
  54. package/skills/teamix-evo-design-rules-opentrek/brand-rules.md +0 -74
  55. package/skills/teamix-evo-design-rules-uni-manager/SKILL.md +0 -51
  56. package/skills/teamix-evo-design-rules-uni-manager/ai-scenarios.md +0 -51
  57. package/skills/teamix-evo-design-rules-uni-manager/command-center.md +0 -108
  58. package/skills/teamix-evo-design-rules-uni-manager/danger-ops.md +0 -87
  59. package/skills/teamix-evo-manage/SKILL.md +0 -178
  60. package/skills/teamix-evo-ui-upgrade/SKILL.md +0 -75
  61. /package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/api-layering.md +0 -0
  62. /package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/error-and-loading.md +0 -0
  63. /package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/file-structure.md +0 -0
  64. /package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/forms-and-validation.md +0 -0
  65. /package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/routing-and-codesplit.md +0 -0
  66. /package/{skills/teamix-evo-coding-conventions → src/teamix-evo-code-opentrek}/testing.md +0 -0
@@ -1,142 +0,0 @@
1
- # AI 页面生成决策流程
2
-
3
- > AI 收到 UI 设计需求时,**必须**按本流程的 6 步决策。跳过任何一步都会破坏 teamix-evo 设计体系的一致性。
4
- > 本文件是变体中立基线 — 变体专属补充(如 OpenTrek 品牌 / uni-manager AI 场景)见对应 `teamix-evo-design-rules-<variant>` skill。
5
-
6
- ```
7
- 收到页面设计需求
8
-
9
- ├── Step 1: 识别页面类型
10
- │ └── 参照 patterns/page-types.md(List / Detail / Form / Dashboard / Dialog)
11
-
12
- ├── Step 2: 确定页面壳层
13
- │ └── 默认壳层:Sidebar (左) + Navbar (顶) + Content (中)
14
-
15
- ├── Step 3: 规划信息架构
16
- │ └── 定义页面区块和信息层级
17
- │ └── 决定哪些信息首屏展示,哪些折叠
18
-
19
- ├── Step 4: 选择组件组合
20
- │ └── 优先复用已有组件 → shadcn/ui → 必要时通过 Token 覆盖样式
21
-
22
- ├── Step 5: 应用视觉规则
23
- │ ├── 色彩 → foundations/color/
24
- │ ├── 排版 → foundations/typography.md
25
- │ ├── 间距 → foundations/spacing.md
26
- │ ├── 圆角 → foundations/radius.md
27
- │ ├── 阴影 → foundations/shadow.md
28
- │ ├── 动效 → foundations/motion.md
29
- │ └── 特效 → foundations/effects.md
30
-
31
- └── Step 6: 检查一致性
32
- └── 对照本 skill checklist.md 逐项验证
33
- ```
34
-
35
- ---
36
-
37
- ## Step 1 · 识别页面类型
38
-
39
- **关键词 → 页面类型映射:**
40
-
41
- | 关键词 | 类型 | 参考文档 |
42
- |--------|------|---------|
43
- | 列表、管理、查询、批量 | **ListPage** | `patterns/page-types.md` |
44
- | 详情、信息、配置、概览 | **DetailPage** | 同上 |
45
- | 创建、编辑、新建、配置表单 | **FormPage** | 同上 |
46
- | 仪表盘、监控、概览、分析 | **Dashboard** | 同上 |
47
- | 删除、确认、提示 | **Dialog/Sheet** | 同上 |
48
- | 向导、多步、引导 | **Wizard**(FormPage 的多步形态) | 同上 |
49
-
50
- **变体扩展**:若所装变体提供了 AI 副驾驶 / 大屏 / 拓扑等场景的关键词映射(如 uni-manager 的对话 / 命令面板 / 告警诊断 / 操作编排 / 成本洞察 / 知识问答 / 拓扑),优先读取 variant skill 的扩展表。
51
-
52
- **模糊时如何处理:**
53
-
54
- - 关键词覆盖多个类型 → 默认选择 `ListPage`(CRUD 场景最常见)
55
- - 完全无法识别 → 用 `AskUserQuestion` 风格反问用户
56
-
57
- ---
58
-
59
- ## Step 2 · 确定页面壳层
60
-
61
- | 壳层变体 | 适用 |
62
- |---------|------|
63
- | **标准壳层** | Sidebar (左) + Navbar (顶) + Content。默认选择。 |
64
- | **简化壳层** | 仅 Navbar + Content。营销页 / 登录页。 |
65
- | **嵌入壳层** | 仅 Content,无 chrome。Iframe 嵌入场景。 |
66
-
67
- **变体扩展**:若变体定义了"大屏 / Cockpit / 全屏"等专属壳层(uni-manager 有),按 variant skill 给出的规则选取。
68
-
69
- ---
70
-
71
- ## Step 3 · 规划信息架构
72
-
73
- 按照 **首屏 → 二级 → 详情** 三级展开:
74
-
75
- - **首屏**:核心信息 + 主操作(用户 80% 时间停留)
76
- - **二级**:折叠区 / Tab 内容(按需展开)
77
- - **详情**:详情页 / 模态弹窗(深入查看)
78
-
79
- 每页**只能有一个 H1**,标识页面主题。
80
-
81
- ---
82
-
83
- ## Step 4 · 选择组件组合
84
-
85
- **优先级:**
86
-
87
- 1. **复用项目已有组件**(先 grep imports)
88
- 2. **使用 shadcn/ui 标准组件**(不要为了样式 fork)
89
- 3. **组合现有组件构造新组件**(不要从零写)
90
- 4. **必要时通过 Token 覆盖样式**(写在 `tokens.overrides.css`)
91
-
92
- ---
93
-
94
- ## Step 5 · 应用视觉规则
95
-
96
- 按 6 个维度逐项绑定 Token:
97
-
98
- - **色彩** —— 全部来自 `foundations/color/`,不硬编码
99
- - **排版** —— 字号、字重、行高、字体族遵守 `typography.md`
100
- - **间距** —— 4px 倍数;卡片 `p-6`、字段 `space-y-4`
101
- - **圆角** —— `rounded-sm/md/lg/xl/full` 五档
102
- - **阴影** —— 与 z-index 等级对应
103
- - **动效** —— `150 / 200 / 300 / 500ms` 四档;只动画 `transform` 和 `opacity`
104
- - **特效** —— 默认无渐变 / 发光;变体特殊许可见 variant skill
105
-
106
- ---
107
-
108
- ## Step 6 · 检查一致性
109
-
110
- 详见本 skill 的 `checklist.md`,逐项核对:
111
-
112
- - [ ] 色彩 / 排版 / 圆角 / 间距 / 阴影 / 动效 / 一致性 / 安全 / 可访问性 / 响应式
113
-
114
- **未通过任何一项不应交付**。
115
-
116
- ---
117
-
118
- ## 完整决策树
119
-
120
- ```
121
- 需求输入
122
-
123
- ├─ 是否明确了页面类型?
124
- │ ├─ 是 → 直接使用对应模板
125
- │ └─ 否 → 关键词推断 → 默认 ListPage / 反问用户
126
-
127
- ├─ 是否有已有组件可复用?
128
- │ ├─ 是 → 优先复用
129
- │ └─ 否 → 用 shadcn/ui 组合
130
-
131
- ├─ 是否涉及危险操作?
132
- │ ├─ 是 → 必须 AlertDialog destructive variant + 影响范围
133
- │ └─ 否 → 行内操作即可
134
-
135
- ├─ 是否需要批量?
136
- │ ├─ 是 → DataTable + Checkbox + BulkActionBar
137
- │ └─ 否 → 单选行内操作
138
-
139
- └─ 是否有变体专属场景需求?
140
- ├─ 是 → 读取 teamix-evo-design-rules-<variant> skill 应用变体规则
141
- └─ 否 → 标准 CRUD
142
- ```
@@ -1,148 +0,0 @@
1
- # 页面设计 System Prompt(变体中立基线)
2
-
3
- > 此文件可被 IDE AI 直接作为 **system prompt** 使用。模型加载后即按 teamix-evo 设计语言基线执行。
4
- > 变体专属补充(如 OpenTrek 品牌色用法 / uni-manager 大屏 / AI 副驾驶)见对应 `teamix-evo-design-rules-<variant>` skill。
5
-
6
- ---
7
-
8
- ## Role
9
-
10
- 你是一个精通 **teamix-evo** 设计体系的资深前端工程师,目标是为企业级 B 端后台 / 内部工作台 / 运营管理产品生成 **沉稳、克制、可预期** 的 UI 代码。
11
-
12
- 你**不**追求视觉上的"惊艳"。你的代码要让一位高强度操作的熟练业务用户在长时间使用中能凭肌肉记忆完成关键操作。
13
-
14
- 变体上下文(品牌、AI 场景、专属壳层)从 `.teamix-evo/design/pack.lock.json` 的 `variant` 字段读取,对应的变体 skill 由 IDE 自动叠加加载。
15
-
16
- ---
17
-
18
- ## Design System Context
19
-
20
- - **设计基线**:teamix-evo(中性 B 端基线 + 变体覆盖)
21
- - **基础字号**:`1rem`
22
- - **间距基准**:`4px`(4 的倍数)
23
- - **圆角基准**:`--radius: 0.5rem`
24
- - **基于**:shadcn/ui 默认主题
25
- - 变体的 token 值(主色 / 字体族 / 圆角覆盖)来自 `.teamix-evo/tokens/`
26
-
27
- ---
28
-
29
- ## 6 步生成流程(严格执行)
30
-
31
- ```
32
- 识别页面类型 → 选择壳层 → 规划架构 → 选择组件 → 应用 Token → 检查清单
33
- ```
34
-
35
- 详见本 skill 的 [`generation-flow.md`](../generation-flow.md)。
36
-
37
- ---
38
-
39
- ## MUST (硬性约束)
40
-
41
- 1. **颜色** —— 必须使用 CSS 变量 (`hsl(var(--primary))`) 或 Tailwind Token (`bg-primary`)。**禁止硬编码** `#fff` / `rgb(...)` / hex 值。
42
- 2. **间距** —— 必须是 4 的倍数(`p-1/2/3/4/6/8`...),禁止 `p-[5px]`。
43
- 3. **字号** —— 必须使用 `text-xs ~ text-6xl` 十档之一。
44
- 4. **字重** —— 仅 `font-normal/medium/semibold/bold` 四档。
45
- 5. **圆角** —— 仅 `rounded-sm/md/lg/xl/full` 五档。
46
- 6. **阴影** —— 仅 `shadow-none/sm/md/lg/xl/2xl` 六档,**等级与 z-index 对应**。
47
- 7. **动效** —— 仅 `duration-150/200/300/500` 四档;只动画 `transform` 与 `opacity`。
48
- 8. **危险操作** —— 删除 / 释放 / 强制重启 必须用 `AlertDialog variant="destructive"`,列出影响范围。
49
- 9. **状态三重表达** —— 颜色 + 图标 + 文字(不可仅靠颜色)。
50
- 10. **可访问性** —— 对比度 ≥ 4.5:1;交互元素 ≥ 44×44px;keyboard navigable。
51
-
52
- ---
53
-
54
- ## SHOULD (推荐做法)
55
-
56
- 1. **复用优于创造** —— 先 grep 项目已有组件,再用 shadcn/ui,最后才组合新组件。
57
- 2. **按钮** = `rounded-md` + `shadow-sm` + `font-medium`;**卡片** = `rounded-lg` + `shadow-md` + `p-6`。
58
- 3. **表格** 使用 `<Table>` 组件 + `bg-muted/50` hover;行高 `h-12`。
59
- 4. **表单**:`space-y-4` 为字段间距;分组用 `<Card>`。
60
- 5. **Toast** 默认 5 秒消失,含撤销操作的延长至 10 秒。
61
- 6. **数字 / ID** 使用 `font-mono` 或 `tabular-nums`。
62
- 7. **空状态** = 图标 + 简短解释 + 主操作按钮。
63
- 8. **加载** = Skeleton 占位 → 数据到达后 `fade-in`,不用 spinner 占整页。
64
-
65
- ---
66
-
67
- ## MUST NOT (禁止)
68
-
69
- 1. 硬编码任何视觉值(颜色 / 间距 / 字号 / 圆角 / 阴影)
70
- 2. 装饰性动效(弹跳、彩带、emoji 爆炸)
71
- 3. 拟人化文案("嘿"、"哈"、"亲~"、"恭喜")
72
- 4. 在 Success 场景使用红色 / 在 Error 场景使用绿色
73
- 5. 正文字号小于 12px
74
- 6. 一页多个 H1
75
- 7. 同屏 3 个以上 primary 焦点
76
- 8. 装饰性渐变背景 / 视差滚动 / 动态粒子(变体的大屏 / 营销许可除外)
77
- 9. Fork shadcn/ui 组件源码以实现样式差异
78
- 10. 任何 `width / height / margin` 的过渡动画
79
-
80
- ---
81
-
82
- ## Output Format
83
-
84
- 生成代码时:
85
-
86
- - 默认使用 **TypeScript + React (TSX)**
87
- - 优先使用 **Tailwind CSS 类名**,必要时配合 CSS 变量
88
- - 包含必要的 `import` 语句
89
- - 函数 / 组件添加 TypeScript 类型定义
90
- - 为可访问性添加 `aria-*` 属性
91
- - 涉及客户端行为时使用 `"use client"`(Next.js App Router)
92
-
93
- ---
94
-
95
- ## 提交前自检(强制)
96
-
97
- 按本 skill 的 [`checklist.md`](../checklist.md) 逐项核对:
98
-
99
- - [ ] 色彩 / 排版 / 圆角 / 间距 / 阴影 / 动效 / 一致性 / 安全 / 可访问性 / 响应式
100
-
101
- 任何一项未通过 **不应交付**。
102
-
103
- ---
104
-
105
- ## Token 速查
106
-
107
- ```css
108
- /* 主语义色 */
109
- --background /* 页面背景 */
110
- --foreground /* 主文字 */
111
- --card /* 卡片背景 */
112
- --popover /* 弹层背景 */
113
- --primary /* 主操作色 */
114
- --secondary /* 次操作色 */
115
- --muted /* 静音 / 禁用 */
116
- --accent /* Hover 高亮 */
117
- --destructive /* 危险 */
118
- --border /* 边框 */
119
- --input /* 输入框边框 */
120
- --ring /* Focus 环 */
121
-
122
- /* 图表色 */
123
- --chart-1 ~ --chart-5
124
-
125
- /* 侧边栏 */
126
- --sidebar-background / --sidebar-foreground / ...
127
-
128
- /* 圆角基准 */
129
- --radius: 0.5rem;
130
- ```
131
-
132
- ---
133
-
134
- ## 推荐组件映射
135
-
136
- | 用户描述 | 推荐组件 |
137
- |---------|---------|
138
- | "下拉选项" | `<Select>` |
139
- | "搜索框" | `<Input>` + `<Command>` (Cmd+K 场景) |
140
- | "确认对话框" | `<AlertDialog>` (危险) / `<Dialog>` (普通) |
141
- | "侧边抽屉" | `<Sheet>` |
142
- | "通知" | `<Toast>` (`useToast` hook) |
143
- | "标签页" | `<Tabs>` |
144
- | "日期选择" | `<Calendar>` + `<Popover>` |
145
- | "数据表格" | `<Table>` + 自定义工具栏 |
146
- | "状态徽章" | `<Badge>` |
147
- | "提示" | `<Tooltip>` |
148
- | "导航菜单" | `<NavigationMenu>` (顶部) / 自定义 Sidebar (侧边) |
@@ -1,48 +0,0 @@
1
- ---
2
- name: teamix-evo-design-rules-opentrek
3
- description: |
4
- Apply OpenTrek brand-specific design rules (tone / voice / brand color usage) on top of the variant-neutral teamix-evo-design-rules baseline.
5
- TRIGGER when: teamix-evo-design-rules is triggering AND the project's `.teamix-evo/design/pack.lock.json` records `variant: "opentrek"`; tasks where brand voice, copywriting tone, or OpenTrek-specific brand color usage is in scope; phrases like "OpenTrek 风格"、"沉稳 / 克制 的文案"、"按 OpenTrek 调性写空态 / 标题 / 引导".
6
- SKIP: project does not have OpenTrek variant installed; tasks belonging to other variants (`uni-manager` etc.); single-component edits with no copy / brand concern; pure structural / layout decisions with no brand surface.
7
- Coordinates with: teamix-evo-design-rules (mandatory — this is an overlay, never standalone).
8
- ---
9
-
10
- # teamix-evo-design-rules-opentrek
11
-
12
- This skill is the **OpenTrek-specific overlay** on top of [`teamix-evo-design-rules`](../teamix-evo-design-rules/SKILL.md). It encodes品牌调性、文案语气、品牌色用法 — content that is OpenTrek-only and **does not apply** to other variants.
13
-
14
- <!-- teamix-evo:managed:start id="core" -->
15
-
16
- ## When to use
17
-
18
- Always layered with `teamix-evo-design-rules`. Triggers whenever the baseline design-rules skill triggers, **and** the project's `.teamix-evo/design/pack.lock.json` records `variant: "opentrek"`.
19
-
20
- ## What this skill does
21
-
22
- 1. Imposes OpenTrek 品牌调性(沉稳、克制、可预期、安全)on tone / voice / 文案
23
- 2. Specifies how to use the OpenTrek 主色 `hsl(222.2 47.4% 11.2%)`(中性深蓝)— 不滥用作装饰
24
- 3. Points to `.teamix-evo/design/brand/{tone,voice,examples}.md` 作为权威文案规范
25
-
26
- ## Files in this skill
27
-
28
- | File | Purpose |
29
- | --- | --- |
30
- | [`brand-rules.md`](brand-rules.md) | OpenTrek 品牌专属规则:tone / voice / 品牌色用法 |
31
-
32
- ## Order of precedence
33
-
34
- When generating UI in an OpenTrek project, AI 应按以下顺序加载上下文:
35
-
36
- 1. `teamix-evo-design-rules`(中性基线 — 6 步流程 / 边界 / 检查清单)
37
- 2. **本 skill `teamix-evo-design-rules-opentrek`**(品牌覆盖)
38
- 3. 项目本地的 `.teamix-evo/design/brand/` 与 `DESIGN.md`(最权威)
39
-
40
- 后者覆盖前者;冲突时以更具体的为准。
41
-
42
- <!-- teamix-evo:managed:end -->
43
-
44
- ## Project notes
45
-
46
- > Free-form notes the user can add — CLI update will not overwrite below this section.
47
-
48
- (empty)
@@ -1,74 +0,0 @@
1
- # OpenTrek 品牌专属规则
2
-
3
- > 本文件是 OpenTrek 变体的品牌覆盖。在 [`teamix-evo-design-rules`](../teamix-evo-design-rules/SKILL.md) 的中性约束之上,追加 OpenTrek 品牌调性、文案语气、品牌色用法。
4
-
5
- ---
6
-
7
- ## 1. 品牌调性
8
-
9
- | 维度 | OpenTrek 倾向 |
10
- |------|---------------|
11
- | 整体气质 | 沉稳、克制、可预期 |
12
- | 视觉强度 | 偏低;信息层级靠排版而非色彩 |
13
- | 装饰元素 | 几乎无;不引入插画 / 渐变背景 / 装饰图形作为常规手段 |
14
- | 大屏 / 营销特殊场景 | 仍受 [`foundations/effects.md`](../../../design/variants/opentrek/foundations/) 的 OpenTrek 覆盖约束 |
15
-
16
- 权威来源:`.teamix-evo/design/DESIGN.md` / `.teamix-evo/design/brand/{tone,voice,examples}.md`
17
-
18
- ---
19
-
20
- ## 2. 文案语气(Voice)
21
-
22
- ### 必须
23
-
24
- - 以陈述句为主:「实例 i-abc123 已停止」而非「实例已成功停止啦~」
25
- - 错误信息要给出**下一步动作**:「网络连接超时。请检查网络后 [重试]」
26
- - 高危确认必须**列出影响**:「永久删除该资源?该操作不可恢复,关联的 N 个对象将被解除关联。」
27
- - 数字 / ID / Hash 用 `font-mono`,避免歧义
28
-
29
- ### 不得
30
-
31
- - 拟人化第一人称("我帮你"、"我看看")
32
- - 表情符号 / emoji 作为信息载体(除非用户明确要求)
33
- - 营销腔("恭喜你!"、"超棒"、"亲~")
34
- - 长解释代替结构化说明
35
-
36
- ---
37
-
38
- ## 3. 品牌色用法
39
-
40
- ### 主色 `--primary`
41
-
42
- - HSL:`hsl(222.2 47.4% 11.2%)`(深中性蓝/近黑)
43
- - 用于:主操作按钮、当前导航高亮、重点链接、主 H1
44
- - **同屏不超过 3 个 primary 焦点**(防止"哪都是重点 = 都不是重点")
45
- - 不用于:装饰性背景、大面积色块、状态语义(状态色用 `success/warning/destructive`)
46
-
47
- ### 不得
48
-
49
- - 用 primary 作为成功/失败的语义色
50
- - 把 primary 改成更鲜艳的色相以"提亮品牌" — 调性所在
51
- - 在普通 Card / Section 背景上使用 `bg-primary`(保留给关键操作)
52
-
53
- ---
54
-
55
- ## 4. 与中性基线的差异点
56
-
57
- | 维度 | 中性基线 | OpenTrek 收紧 |
58
- |------|---------|--------------|
59
- | 文案语气 | 尽量克制 | **强制**禁止拟人化 / 营销腔 |
60
- | 装饰背景 | 普通页面禁渐变 | OpenTrek 全局禁用(含变体覆盖的场景) |
61
- | 主色焦点数 | ≤ 3 | ≤ 3(与基线一致;强调实践) |
62
- | Toast 气质 | 5 秒消失 | 不加表情、不带动效尾巴 |
63
-
64
- ---
65
-
66
- ## 5. 引用来源
67
-
68
- 具体的 tone / voice / examples 文档在变体内:
69
-
70
- - `.teamix-evo/design/brand/tone.md` — 品牌调性
71
- - `.teamix-evo/design/brand/voice.md` — 文案语气
72
- - `.teamix-evo/design/brand/examples.md` — 文案正反例
73
-
74
- AI 在生成或审查 OpenTrek 项目的 UI 文案 / 微文案时,应优先以上述文档为准。
@@ -1,51 +0,0 @@
1
- ---
2
- name: teamix-evo-design-rules-uni-manager
3
- description: |
4
- Apply cloud-management-specific design rules (AI scenarios A-G, danger ops, command center / topology patterns) on top of the variant-neutral teamix-evo-design-rules baseline.
5
- TRIGGER when: teamix-evo-design-rules is triggering AND the project's `.teamix-evo/design/pack.lock.json` records `variant: "uni-manager"`; tasks involving 云资源管理 / AI 副驾驶场景 / 高危删除 / 跨区域迁移 / 流量切换 / 指挥官大屏 / 拓扑感知 / 告警诊断; phrases like "做一个云资源列表 / 大屏 / 命令面板 / 危险操作确认"; file paths involving `cockpit / topology / cloud-resources / alarm`.
6
- SKIP: project does not have uni-manager variant installed; tasks belonging to other variants (`opentrek` etc.); pure non-cloud business pages even within a uni-manager project (defer to baseline rules only); single-component edits with no danger-op or scenario surface.
7
- Coordinates with: teamix-evo-design-rules (mandatory — this is an overlay, never standalone).
8
- ---
9
-
10
- # teamix-evo-design-rules-uni-manager
11
-
12
- This skill is the **uni-manager (cloud management) overlay** on top of [`teamix-evo-design-rules`](../teamix-evo-design-rules/SKILL.md). It encodes 云资源管理领域特有的 AI 副驾驶 7 类场景、高危操作模式、指挥官大屏 / 拓扑布局规则 — content that is uni-manager-only and **does not apply** to other variants.
13
-
14
- <!-- teamix-evo:managed:start id="core" -->
15
-
16
- ## When to use
17
-
18
- Always layered with `teamix-evo-design-rules`. Triggers whenever the baseline design-rules skill triggers, **and** the project's `.teamix-evo/design/pack.lock.json` records `variant: "uni-manager"`.
19
-
20
- ## What this skill does
21
-
22
- 1. Extends Step 1 of the baseline 6-step generation flow with **AI 副驾驶场景关键词表**(场景 A-G)
23
- 2. Defines **高危操作模式**(永久删除资源 / 流量切换 / 跨区域迁移 → AlertDialog destructive + 影响范围 + 二次确认 + 资源名校验)
24
- 3. Specifies **指挥官大屏 / 拓扑感知** 专属布局与只读约束
25
- 4. Points to `.teamix-evo/design/scenarios/` 与 `.teamix-evo/design/foundations/{effects-cloud-cockpit,motion-scenarios}.md`
26
-
27
- ## Files in this skill
28
-
29
- | File | Purpose |
30
- | --- | --- |
31
- | [`ai-scenarios.md`](ai-scenarios.md) | AI 副驾驶 7 类场景(A-G)关键词表与映射 |
32
- | [`danger-ops.md`](danger-ops.md) | 高危操作模式(永久删除 / 流量切换 / 不可恢复) |
33
- | [`command-center.md`](command-center.md) | 指挥官大屏 / 拓扑 / 告警诊断 布局规则 |
34
-
35
- ## Order of precedence
36
-
37
- When generating UI in a uni-manager project, AI 应按以下顺序加载上下文:
38
-
39
- 1. `teamix-evo-design-rules`(中性基线 — 6 步流程 / 边界 / 检查清单)
40
- 2. **本 skill `teamix-evo-design-rules-uni-manager`**(云资源管理覆盖)
41
- 3. 项目本地的 `.teamix-evo/design/scenarios/` 与 `patterns/cloud-*.md`(最权威)
42
-
43
- 后者覆盖前者;冲突时以更具体的为准。
44
-
45
- <!-- teamix-evo:managed:end -->
46
-
47
- ## Project notes
48
-
49
- > Free-form notes the user can add — CLI update will not overwrite below this section.
50
-
51
- (empty)
@@ -1,51 +0,0 @@
1
- # AI 副驾驶 7 类场景(A-G)
2
-
3
- > 在中性基线 `generation-flow.md` 的 Step 1 关键词表之上,本文件追加 uni-manager 专属的 AI 副驾驶场景关键词映射。
4
-
5
- ## 关键词 → 场景映射
6
-
7
- | 关键词 | 场景 | 入口 | 参考文档 |
8
- |--------|------|------|---------|
9
- | 对话、问答、AI 助手、chat | **场景 A · AI 对话主界面** | 侧边面板 / 悬浮气泡 | `.teamix-evo/design/scenarios/examples/conversation.md` |
10
- | 命令面板、快速搜索、Cmd+K | **场景 B · 智能命令面板** | Cmd+K | `.teamix-evo/design/scenarios/examples/command-palette.md` |
11
- | 告警、诊断、根因分析、MTTR | **场景 C · 告警诊断** | 告警卡片"AI 诊断" | `.teamix-evo/design/scenarios/README.md` |
12
- | 操作执行、批量编排、确认卡 | **场景 D · 操作编排** | A/B/C 触发 | 同上 |
13
- | 成本、用量、优化建议 | **场景 E · 成本洞察** | Dashboard 入口 | 同上 |
14
- | 文档、知识库、引用问答 | **场景 F · 知识问答** | A 内嵌 / 文档侧栏 | 同上 |
15
- | 拓扑、依赖、影响范围、链路 | **场景 G · 拓扑感知** | DetailPage / TopologyPage | 同上 |
16
-
17
- ## 场景间联动(生成时遵守)
18
-
19
- - **A → D**:对话中的写操作意图必须生成 D 场景的"操作确认卡",不得直接执行
20
- - **B 不放写操作**:命令面板内禁止删除 / 释放等高危动作
21
- - **C → D**:告警建议的修复操作走确认卡
22
- - **A → F**:对话引用文档时附引用源链接(可点击跳转)
23
- - **任何场景 → CloudDetailPage**:引用资源使用 `@<resource-id>` 标准格式,可点击跳转详情页
24
-
25
- ## AI 行为约束(场景级)
26
-
27
- | 场景 | MUST | MUST NOT |
28
- |------|------|----------|
29
- | A | 引用资源用 `@<id>`;写操作生成 D 卡片;引用文档附来源 | 第一人称"我";直接执行写操作;输出未引用来源的"事实" |
30
- | B | 唤起 ≤ 100ms;键盘可达;AI 回答限 1 段 | 面板内执行写操作;展示 > 3 行长内容 |
31
- | C | 列出根因链 + 影响范围;修复建议附预期影响 | 自动执行修复;隐藏失败原因 |
32
- | D | 列出资源 ID + 影响 + 关联资源数;高危需输入资源名 | 默认勾选"确认"按钮;批次 > 100 单次执行 |
33
- | E | 数字 count-up;归因可下钻 | 推送广告 / 营销文案 |
34
- | F | 附引用源(可追溯);不确定时明确说"不确定" | 编造引用源 |
35
- | G | 节点点击不离开画布(Sheet 打开);> 50 节点必须 minimap | 拓扑画布内执行写操作 |
36
-
37
- ## 单次对话上限
38
-
39
- - **A 场景对话内的写操作**:影响 ≤ 10 个资源 — 超过引导走 CloudListPage 批量入口
40
- - **D 场景批量操作**:单次 ≤ 100 项 — 超过提示拆分
41
- - **C 场景的修复操作**:必须有"取消"路径,执行中可中止(除已落地的不可逆步骤)
42
-
43
- ## 降级(AI 服务不可用时)
44
-
45
- | 场景 | 降级 |
46
- |------|------|
47
- | A | "AI 服务暂时不可用。可查看 [文档] 或 [提交工单]" |
48
- | B | 隐藏 AI 分类,仅保留资源 / 页面 / 命令搜索 |
49
- | C | 退化为静态告警列表 + 链接到 LogViewer |
50
- | D | 不显示"AI 建议"区块;用户走标准 ListPage 操作 |
51
- | E-G | 同上 — 静态视图代替 AI 增强 |
@@ -1,108 +0,0 @@
1
- # 指挥官大屏 / 拓扑 / 告警诊断(uni-manager)
2
-
3
- > 中性基线 `boundaries.md` 把"大屏 / 营销 / AI 卡片的特殊许可"留给变体定义。本文件给出 uni-manager 的具体规则;落地用 token 见 `.teamix-evo/design/foundations/effects-cloud-cockpit.md` 与 `motion-scenarios.md`。
4
-
5
- ---
6
-
7
- ## 1. 指挥官大屏(Cockpit)
8
-
9
- ### 适用场景
10
- NOC / SRE 大屏、运营数据巡检、对外接待展示(**只读**)。
11
-
12
- ### 必须
13
-
14
- - 暗色主题为默认(不要求支持 light 切换)
15
- - 关键数字 `text-4xl`+;count-up 滚动 800ms(参见 `motion-scenarios.md` 场景 E)
16
- - 时间范围切换持久化到 URL;自动刷新周期 ≥ 30s
17
- - 所有"按钮"跳转到对应详情 / 列表页(**大屏不放写操作**)
18
- - 颜色仍来自 token,禁止硬编码 hex
19
- - 字体族仍是 `--font-sans` / `--font-mono`,不引入装饰字体
20
-
21
- ### 可以(变体特殊许可)
22
-
23
- - 渐变背景(`from-background to-muted/30`)
24
- - 关键数字 / 状态点 `drop-shadow-glow`(仅 `chart-*` 色)
25
- - 关键数字允许 `text-7xl` ~ `text-8xl`
26
- - 更深阴影 + 内发光以强化层级
27
- - 不强制响应式 — 默认 1920×1080 起,小屏直接降级到普通 Dashboard
28
-
29
- ### 不得
30
-
31
- - 写操作(启动 / 停止 / 释放 / 配置变更)
32
- - emoji / 装饰图形作为信息载体
33
- - 大屏视觉语言外泄到普通 Dashboard / List / Detail
34
- - 24h 不变化的"装饰图表"占据高层级位置
35
-
36
- ---
37
-
38
- ## 2. 拓扑感知(TopologyPage / Sheet 内嵌)
39
-
40
- ### 必须
41
-
42
- - 节点 hover:`scale(1.1)` 150ms + 关联线高亮(`stroke` 加粗 + `chart-1` 色)
43
- - 点击节点 → **右侧 Sheet 打开详情**,不离开拓扑画布
44
- - 入场动效:节点 `scale-in stagger`(中心向外,100ms / 层),连线 `path draw` 500ms
45
- - 大型拓扑(节点 > 50)必须支持 **minimap + 缩放控件**
46
- - 所有节点必须可键盘导航(Tab + 方向键)
47
-
48
- ### 不得
49
-
50
- - 拓扑画布内执行写操作(详情 Sheet 内允许)
51
- - 节点点击导致整页跳转(破坏画布上下文)
52
- - 拓扑深度 > 4 层不带 Breadcrumb / minimap
53
-
54
- ---
55
-
56
- ## 3. 告警诊断(场景 C 落地布局)
57
-
58
- ### 入口
59
-
60
- - **被动**:全局通知 NotificationBadge(红色 + 数字 + 轻震 100ms)
61
- - **主动**:Dashboard StatCard(异常数) 下钻 / CloudListPage `?status=error`
62
-
63
- ### 卡片结构
64
-
65
- ```
66
- ┌──────────────────────────────────────┐
67
- │ [严重] 实例 i-abc123 CPU 持续高负载 │ ← 标题:等级 + 资源 ID + 概要
68
- ├──────────────────────────────────────┤
69
- │ 时间: 2026-05-20 14:32 ~ 持续中 │
70
- │ 影响: 关联的 1 个 SLB / 23 RPS 受影响│
71
- ├──────────────────────────────────────┤
72
- │ ▼ 根因链(AI 诊断) │ ← accordion expand 300ms
73
- │ ├ 实例负载 95% (主因) │ ← 节点 stagger 100ms
74
- │ ├ 流量增长 +180% vs 周环比 │
75
- │ └ 业务线 X 新版本上线 │
76
- ├──────────────────────────────────────┤
77
- │ AI 建议: │
78
- │ ① 临时升配 (推荐) [生成确认卡 →] │ ← 触发场景 D
79
- │ ② 限流保护 [生成确认卡 →] │
80
- │ ③ 切换备实例 [生成确认卡 →] │
81
- └──────────────────────────────────────┘
82
- ```
83
-
84
- ### 必须
85
-
86
- - 异常数字必须是**可点击的钻取入口**
87
- - LogViewer 默认定位到异常时间点 ± 5 分钟
88
- - AI 修复建议 → 点击触发场景 D 确认卡(**不直接执行**)
89
- - 修复操作必须显示**预期影响范围**(关联资源数 / 流量切换 / 数据回滚成本)
90
- - 告警消除后用 `scale-out + fade` 200ms 收回
91
-
92
- ### 不得
93
-
94
- - AI 自动执行修复(即使是建议中标"推荐"的)
95
- - 隐藏未匹配的根因(保留"未识别"分类)
96
- - 重要告警的关闭按钮放在卡片右上角(避免误触)
97
-
98
- ---
99
-
100
- ## 4. 与中性基线的差异点速查
101
-
102
- | 维度 | 中性基线 | uni-manager 扩展 |
103
- |------|---------|------------------|
104
- | Step 1 关键词 | 6 类页面(List/Detail/Form/Wizard/Dashboard/Dialog) | + AI 场景 A-G 关键词表(见 `ai-scenarios.md`) |
105
- | Step 2 壳层 | 标准 / 简化 / 嵌入 | + Cockpit / Topology |
106
- | 危险操作 | AlertDialog 二次确认 | + L1/L2/L3 分级 + 资源名校验(见 `danger-ops.md`) |
107
- | 装饰背景 | 普通页面禁渐变 | Cockpit / 营销 / AI 卡片有特殊许可(变体内) |
108
- | 动效 | 4 档时长 | + AI 场景 A-G 动效组合(见 variant 的 `motion-scenarios.md`) |