@topmindspace/tms-skills 0.1.0 → 0.1.2

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 (102) hide show
  1. package/CHANGELOG.md +76 -0
  2. package/README.md +9 -3
  3. package/bin/tms-skills.js +200 -160
  4. package/package.json +12 -9
  5. package/top-ppt-html/README.md +162 -254
  6. package/top-ppt-html/SKILL.md +126 -111
  7. package/top-ppt-html/assets/examples/2026-09-09-architecture-graphite-dark.html +3926 -3926
  8. package/top-ppt-html/assets/examples/2026-09-09-architecture-graphite-dark.model.json +167 -167
  9. package/top-ppt-html/assets/examples/2026-09-09-presentation-business-blue.html +4325 -4325
  10. package/top-ppt-html/assets/examples/2026-09-09-presentation-business-blue.model.json +320 -320
  11. package/top-ppt-html/assets/examples/2026-09-09-research-mckinsey.html +5527 -5527
  12. package/top-ppt-html/assets/examples/2026-09-09-research-mckinsey.model.json +913 -913
  13. package/top-ppt-html/assets/pptx-export.js +1944 -1944
  14. package/top-ppt-html/assets/style-gallery.html +589 -589
  15. package/top-ppt-html/assets/templates/architecture.html +3728 -3728
  16. package/top-ppt-html/assets/templates/engine.css +840 -840
  17. package/top-ppt-html/assets/templates/presentation.html +3738 -3738
  18. package/top-ppt-html/assets/templates/research.html +4017 -4017
  19. package/top-ppt-html/assets/templates/ui.js +520 -520
  20. package/top-ppt-html/assets/theme-overview-architecture.png +0 -0
  21. package/top-ppt-html/assets/theme-overview-research.png +0 -0
  22. package/top-ppt-html/assets/theme-overview.png +0 -0
  23. package/top-ppt-html/evals/prompts.csv +15 -15
  24. package/top-ppt-html/evals/rubric.schema.json +25 -25
  25. package/top-ppt-html/evals/run_evals.py +220 -220
  26. package/top-ppt-html/evals/trace.example.json +16 -16
  27. package/top-ppt-html/package-lock.json +186 -0
  28. package/top-ppt-html/package.json +11 -11
  29. package/top-ppt-html/references/charts-basic.md +624 -624
  30. package/top-ppt-html/references/charts-discipline.md +110 -108
  31. package/top-ppt-html/references/charts-extended.md +482 -482
  32. package/top-ppt-html/references/charts.md +37 -28
  33. package/top-ppt-html/references/components-atoms.md +624 -624
  34. package/top-ppt-html/references/components.md +30 -30
  35. package/top-ppt-html/references/content-rules.md +510 -490
  36. package/top-ppt-html/references/default-surface.md +61 -0
  37. package/top-ppt-html/references/design-system.md +478 -478
  38. package/top-ppt-html/references/failure-modes.md +227 -214
  39. package/top-ppt-html/references/high-fidelity.md +127 -127
  40. package/top-ppt-html/references/icons.md +176 -397
  41. package/top-ppt-html/references/infographics-stats.md +308 -308
  42. package/top-ppt-html/references/infographics-structure.md +226 -226
  43. package/top-ppt-html/references/infographics.md +43 -43
  44. package/top-ppt-html/references/layout-grammar.md +325 -315
  45. package/top-ppt-html/references/layouts-architecture.md +108 -108
  46. package/top-ppt-html/references/layouts-combo.md +600 -600
  47. package/top-ppt-html/references/layouts-research.md +160 -160
  48. package/top-ppt-html/references/modes.md +259 -254
  49. package/top-ppt-html/references/outline-design.md +275 -275
  50. package/top-ppt-html/references/playbook.md +284 -266
  51. package/top-ppt-html/references/pptx-export.md +227 -209
  52. package/top-ppt-html/references/presentation-craft.md +69 -0
  53. package/top-ppt-html/references/styles.md +370 -370
  54. package/top-ppt-html/references/tech-design.md +138 -138
  55. package/top-ppt-html/scripts/audit_css.py +109 -109
  56. package/top-ppt-html/scripts/audit_docs.py +176 -176
  57. package/top-ppt-html/scripts/audit_skill.py +231 -220
  58. package/top-ppt-html/scripts/audit_styles.py +351 -351
  59. package/top-ppt-html/scripts/build_examples.py +55 -2276
  60. package/top-ppt-html/scripts/build_pptx.js +2386 -2380
  61. package/top-ppt-html/scripts/capture_theme_overview.js +79 -78
  62. package/top-ppt-html/scripts/checks_html.py +166 -127
  63. package/top-ppt-html/scripts/cross_verify.py +298 -294
  64. package/top-ppt-html/scripts/env_probe.py +158 -158
  65. package/top-ppt-html/scripts/extract_model.py +210 -210
  66. package/top-ppt-html/scripts/extract_snippet.py +374 -374
  67. package/top-ppt-html/scripts/gen_channel_a.js +214 -214
  68. package/top-ppt-html/scripts/layout-constants.json +111 -18
  69. package/top-ppt-html/scripts/lib_layout_regions.js +410 -412
  70. package/top-ppt-html/scripts/measure_height.py +178 -178
  71. package/top-ppt-html/scripts/negative_tests.py +433 -307
  72. package/top-ppt-html/scripts/package_skill.py +294 -291
  73. package/top-ppt-html/scripts/prepare_images.py +341 -341
  74. package/top-ppt-html/scripts/probe_image_export.py +187 -188
  75. package/top-ppt-html/scripts/quality_gate.py +309 -301
  76. package/top-ppt-html/scripts/recommend_layout.py +384 -0
  77. package/top-ppt-html/scripts/regression.py +308 -308
  78. package/top-ppt-html/scripts/render_compare.py +275 -275
  79. package/top-ppt-html/scripts/render_from_model.py +698 -698
  80. package/top-ppt-html/scripts/scaffold_report.py +1054 -1054
  81. package/top-ppt-html/scripts/section-file-map.json +104 -104
  82. package/top-ppt-html/scripts/smoke_pptx.sh +30 -0
  83. package/top-ppt-html/scripts/sync_runtime.py +659 -662
  84. package/top-ppt-html/scripts/validate_pptx.py +1579 -1510
  85. package/top-ppt-html/scripts/validate_report.py +1755 -1456
  86. package/top-ppt-html/assets/examples/2026-09-09-architecture-spectrum.html +0 -3926
  87. package/top-ppt-html/assets/examples/2026-09-09-architecture-spectrum.model.json +0 -168
  88. package/top-ppt-html/assets/examples/2026-09-09-presentation-apple-mono.html +0 -4325
  89. package/top-ppt-html/assets/examples/2026-09-09-presentation-apple-mono.model.json +0 -321
  90. package/top-ppt-html/assets/examples/2026-09-09-presentation-brand-red.html +0 -4325
  91. package/top-ppt-html/assets/examples/2026-09-09-presentation-brand-red.model.json +0 -321
  92. package/top-ppt-html/assets/examples/2026-09-09-research-deep-teal.html +0 -5527
  93. package/top-ppt-html/assets/examples/2026-09-09-research-deep-teal.model.json +0 -914
  94. package/top-ppt-html/assets/examples/2026-09-09-research-indigo-violet.html +0 -5527
  95. package/top-ppt-html/assets/examples/2026-09-09-research-indigo-violet.model.json +0 -914
  96. package/top-ppt-html/assets/examples/2026-09-09-research-warm-sand.html +0 -5527
  97. package/top-ppt-html/assets/examples/2026-09-09-research-warm-sand.model.json +0 -914
  98. package/top-ppt-html/assets/theme-overview-presentation.png +0 -0
  99. package/top-ppt-html/references/design-system-engine.md +0 -235
  100. package/top-ppt-html/references/industry-benchmark.md +0 -105
  101. package/top-ppt-html/references/reform-plan.md +0 -252
  102. package/top-ppt-html/scripts/layout_slots.json +0 -830
@@ -1,108 +1,108 @@
1
- # 结构组件与锁定版式 · layouts-architecture.md
2
-
3
- > 由 `components.md` 拆出(§编号保持不变,跨文件稳定引用)。
4
- > 取码:`python scripts/extract_snippet.py --file components.md --section <编号>`
5
- > 或直接 `--file layouts-architecture.md --section <编号>`。整读大文件视为违规。
6
-
7
- ## 37. architecture 模式 · 分层架构带(模式 C 专属)
8
-
9
-
10
-
11
- ```html
12
- <section class="band band--fit" id="arch">
13
- <div class="wrap">
14
- <div class="shead rv">
15
- <div class="t-eyebrow">02 · 总体架构</div>
16
- <h2 class="t-h1 shead__title">四层一驱:治理嵌入每一层</h2>
17
- </div>
18
- <div class="arch rv">
19
- <!-- 每层:层名 + 节点网格;焦点层加 --focus -->
20
- <div class="arch__layer arch__layer--focus">
21
- <div class="arch__lname">应用层</div>
22
- <div class="arch__nodes">
23
- <div class="arch__node arch__node--accent">
24
- <div class="arch__nt">ChatBI 问数</div>
25
- <div class="arch__nd">对话式取数</div>
26
- </div>
27
- <div class="arch__node">
28
- <div class="arch__nt">Agent 消费</div>
29
- <div class="arch__nd">护栏内调用</div>
30
- </div>
31
- </div>
32
- </div>
33
- <div class="arch__layer">
34
- <div class="arch__lname">服务层</div>
35
- <div class="arch__nodes">
36
- <div class="arch__node"><div class="arch__nt">数据契约</div><div class="arch__nd">SLA 保障</div></div>
37
- </div>
38
- </div>
39
- <!-- …语义层 / 底座层同构… -->
40
- </div>
41
- <div class="arch__legend">
42
- <span class="chip chip--accent">当前建设焦点</span>
43
- <span class="chip">已有能力</span>
44
- </div>
45
- </div>
46
- </section>
47
- ```
48
-
49
- ---
50
-
51
- ## 38. architecture 模式 · 流程管线(SVG,图为王)
52
-
53
- ```html
54
- <figure class="fig rv">
55
- <svg class="chart" data-chart="gantt" viewBox="0 0 900 240" style="width:100%">
56
- <!-- 五段管线:圆角横条 + 节点标签 + 流向箭头 -->
57
- <rect data-anim="fade" x="20" y="80" width="150" height="52" rx="10" class="f-s2"/>
58
- <text x="95" y="103" text-anchor="middle" class="f-txt" font-size="14" font-weight="600">采集</text>
59
- <text x="95" y="122" text-anchor="middle" class="f-txt3" font-size="11">多源接入</text>
60
- <path d="M170 106 L200 106" class="s-txt3" stroke-width="2" stroke-dasharray="4 4"/>
61
- <polygon points="200,101 210,106 200,111" class="f-txt3"/>
62
- <rect data-anim="fade" x="210" y="80" width="150" height="52" rx="10" class="f-acc"/>
63
- <text x="285" y="103" text-anchor="middle" class="t-on-inv" font-size="14" font-weight="600">入湖</text>
64
- <text x="285" y="122" text-anchor="middle" class="t-on-inv" font-size="11">统一底座</text>
65
- <!-- …注册 → 治理 → 消费 同构… -->
66
- </svg>
67
- <figcaption class="fig__cap" style="margin-top:var(--sp-4)">数据全链路:五段管线,治理内嵌</figcaption>
68
- </figure>
69
- ```
70
-
71
- > architecture 模式规则(每页一图、节点 ≤24、文字退到图注级)见 `modes.md` 模式 C;PPTX 导出用 `diagram` 页型。
72
-
73
- ---
74
-
75
- ## 38b. architecture 模式 · 泳道 + 层间连接件(锁定版式 A2 / A1 配件)
76
-
77
- ```html
78
- <!-- 泳道:行 = 角色/阶段;步骤横排 + CSS 正交箭头(.lane__arr 线段+箭头,禁裸文字 →) -->
79
- <div class="stack rv gap-3">
80
- <div class="lane">
81
- <div class="lane__hd">业务域</div>
82
- <div class="lane__body">
83
- <span class="lane__step">提需求</span><span class="lane__arr" aria-hidden="true"></span>
84
- <span class="lane__step">确认口径</span><span class="lane__arr" aria-hidden="true"></span>
85
- <span class="lane__step lane__step--a">Agent 取数</span><span class="lane__arr" aria-hidden="true"></span>
86
- <span class="lane__step">验收结果</span>
87
- </div>
88
- </div>
89
- <div class="lane">
90
- <div class="lane__hd">数据平台</div>
91
- <div class="lane__body">
92
- <span class="lane__step">契约校验</span><span class="lane__arr" aria-hidden="true"></span>
93
- <span class="lane__step">指标服务</span><span class="lane__arr" aria-hidden="true"></span>
94
- <span class="lane__step">审计留痕</span>
95
- </div>
96
- </div>
97
- </div>
98
-
99
- <!-- 层间连接:A1 分层带两层之间插一行(主链路 accent、次链路中性) -->
100
- <div class="arch__conn"><svg width="16" height="20" viewBox="0 0 16 20" fill="none"
101
- stroke="currentColor" stroke-width="2" stroke-linecap="round"><path d="M8 1v14M3 11l5 5 5-5"/></svg></div>
102
- ```
103
-
104
- > 泳道每行 ≤6 步;`lane__step--a` 高亮关键节点(每行最多 1 个);跨行依赖用右侧图例或 SVG 正交箭头表达,不斜穿泳道。
105
- > **PPTX 映射**:A2 泳道页 → `lane` 页型(`lanes=[[行头,[步骤…]…]…]`,步骤 str 或 `{t,accent}`);A3 管线页 → 单泳道 `lane`(五步管线);A1 分层带 → `diagram` 页型(architecture 模式自动走全幅几何)。
106
-
107
- ---
108
-
1
+ # 结构组件与锁定版式 · layouts-architecture.md
2
+
3
+ > 由 `components.md` 拆出(§编号保持不变,跨文件稳定引用)。
4
+ > 取码:`python scripts/extract_snippet.py --file components.md --section <编号>`
5
+ > 或直接 `--file layouts-architecture.md --section <编号>`。整读大文件视为违规。
6
+
7
+ ## 37. architecture 模式 · 分层架构带(模式 C 专属)
8
+
9
+
10
+
11
+ ```html
12
+ <section class="band band--fit" id="arch">
13
+ <div class="wrap">
14
+ <div class="shead rv">
15
+ <div class="t-eyebrow">02 · 总体架构</div>
16
+ <h2 class="t-h1 shead__title">四层一驱:治理嵌入每一层</h2>
17
+ </div>
18
+ <div class="arch rv">
19
+ <!-- 每层:层名 + 节点网格;焦点层加 --focus -->
20
+ <div class="arch__layer arch__layer--focus">
21
+ <div class="arch__lname">应用层</div>
22
+ <div class="arch__nodes">
23
+ <div class="arch__node arch__node--accent">
24
+ <div class="arch__nt">ChatBI 问数</div>
25
+ <div class="arch__nd">对话式取数</div>
26
+ </div>
27
+ <div class="arch__node">
28
+ <div class="arch__nt">Agent 消费</div>
29
+ <div class="arch__nd">护栏内调用</div>
30
+ </div>
31
+ </div>
32
+ </div>
33
+ <div class="arch__layer">
34
+ <div class="arch__lname">服务层</div>
35
+ <div class="arch__nodes">
36
+ <div class="arch__node"><div class="arch__nt">数据契约</div><div class="arch__nd">SLA 保障</div></div>
37
+ </div>
38
+ </div>
39
+ <!-- …语义层 / 底座层同构… -->
40
+ </div>
41
+ <div class="arch__legend">
42
+ <span class="chip chip--accent">当前建设焦点</span>
43
+ <span class="chip">已有能力</span>
44
+ </div>
45
+ </div>
46
+ </section>
47
+ ```
48
+
49
+ ---
50
+
51
+ ## 38. architecture 模式 · 流程管线(SVG,图为王)
52
+
53
+ ```html
54
+ <figure class="fig rv">
55
+ <svg class="chart" data-chart="gantt" viewBox="0 0 900 240" style="width:100%">
56
+ <!-- 五段管线:圆角横条 + 节点标签 + 流向箭头 -->
57
+ <rect data-anim="fade" x="20" y="80" width="150" height="52" rx="10" class="f-s2"/>
58
+ <text x="95" y="103" text-anchor="middle" class="f-txt" font-size="14" font-weight="600">采集</text>
59
+ <text x="95" y="122" text-anchor="middle" class="f-txt3" font-size="11">多源接入</text>
60
+ <path d="M170 106 L200 106" class="s-txt3" stroke-width="2" stroke-dasharray="4 4"/>
61
+ <polygon points="200,101 210,106 200,111" class="f-txt3"/>
62
+ <rect data-anim="fade" x="210" y="80" width="150" height="52" rx="10" class="f-acc"/>
63
+ <text x="285" y="103" text-anchor="middle" class="t-on-inv" font-size="14" font-weight="600">入湖</text>
64
+ <text x="285" y="122" text-anchor="middle" class="t-on-inv" font-size="11">统一底座</text>
65
+ <!-- …注册 → 治理 → 消费 同构… -->
66
+ </svg>
67
+ <figcaption class="fig__cap" style="margin-top:var(--sp-4)">数据全链路:五段管线,治理内嵌</figcaption>
68
+ </figure>
69
+ ```
70
+
71
+ > architecture 模式规则(每页一图、节点 ≤24、文字退到图注级)见 `modes.md` 模式 C;PPTX 导出用 `diagram` 页型。
72
+
73
+ ---
74
+
75
+ ## 38b. architecture 模式 · 泳道 + 层间连接件(锁定版式 A2 / A1 配件)
76
+
77
+ ```html
78
+ <!-- 泳道:行 = 角色/阶段;步骤横排 + CSS 正交箭头(.lane__arr 线段+箭头,禁裸文字 →) -->
79
+ <div class="stack rv gap-3">
80
+ <div class="lane">
81
+ <div class="lane__hd">业务域</div>
82
+ <div class="lane__body">
83
+ <span class="lane__step">提需求</span><span class="lane__arr" aria-hidden="true"></span>
84
+ <span class="lane__step">确认口径</span><span class="lane__arr" aria-hidden="true"></span>
85
+ <span class="lane__step lane__step--a">Agent 取数</span><span class="lane__arr" aria-hidden="true"></span>
86
+ <span class="lane__step">验收结果</span>
87
+ </div>
88
+ </div>
89
+ <div class="lane">
90
+ <div class="lane__hd">数据平台</div>
91
+ <div class="lane__body">
92
+ <span class="lane__step">契约校验</span><span class="lane__arr" aria-hidden="true"></span>
93
+ <span class="lane__step">指标服务</span><span class="lane__arr" aria-hidden="true"></span>
94
+ <span class="lane__step">审计留痕</span>
95
+ </div>
96
+ </div>
97
+ </div>
98
+
99
+ <!-- 层间连接:A1 分层带两层之间插一行(主链路 accent、次链路中性) -->
100
+ <div class="arch__conn"><svg width="16" height="20" viewBox="0 0 16 20" fill="none"
101
+ stroke="currentColor" stroke-width="2" stroke-linecap="round"><path d="M8 1v14M3 11l5 5 5-5"/></svg></div>
102
+ ```
103
+
104
+ > 泳道每行 ≤6 步;`lane__step--a` 高亮关键节点(每行最多 1 个);跨行依赖用右侧图例或 SVG 正交箭头表达,不斜穿泳道。
105
+ > **PPTX 映射**:A2 泳道页 → `lane` 页型(`lanes=[[行头,[步骤…]…]…]`,步骤 str 或 `{t,accent}`);A3 管线页 → 单泳道 `lane`(五步管线);A1 分层带 → `diagram` 页型(architecture 模式自动走全幅几何)。
106
+
107
+ ---
108
+