siluzan-tso-cli 1.1.31-beta.1 → 1.1.31-beta.3
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.
- package/README.md +1 -1
- package/dist/skill/SKILL.md +2 -2
- package/dist/skill/_meta.json +2 -2
- package/dist/skill/references/core/intent-routing.md +217 -179
- package/dist/skill/report-templates/GoogleAdsDiagnosisReport.html +118 -7
- package/dist/skill/report-templates/meta-period-report.html +127 -1
- package/dist/skill/report-templates/report-template-academic.html +70 -5
- package/dist/skill/report-templates/report-template.html +76 -11
- package/dist/skill/report-templates/website-diagnosis-report.html +125 -23
- package/dist/skill/scripts/install.ps1 +1 -1
- package/dist/skill/scripts/install.sh +1 -1
- package/package.json +1 -1
- package/dist/skill/references/report-templates/README.md +0 -45
package/README.md
CHANGED
|
@@ -51,7 +51,7 @@ siluzan-tso init -d /path/to/skills # 写入自定义目录
|
|
|
51
51
|
siluzan-tso init --force # 强制覆盖已存在文件
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
-
> **注意**:当前为测试版(1.1.31-beta.
|
|
54
|
+
> **注意**:当前为测试版(1.1.31-beta.3),供内部测试使用。正式发布后安装命令将改为 `npm install -g siluzan-tso-cli`。
|
|
55
55
|
|
|
56
56
|
| 助手 | 建议 `--ai` |
|
|
57
57
|
| ----------------------- | ------------------------------------ |
|
package/dist/skill/SKILL.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: siluzan-tso
|
|
3
|
-
description: 丝路赞 TSO 广告平台(Google/Bing/Yandex/TikTok/Kwai/MetaAd),凡涉及丝路赞/TSO
|
|
3
|
+
description: 丝路赞 TSO 广告平台(Google/Bing/Yandex/TikTok/Kwai/MetaAd),凡涉及丝路赞/TSO、投广告、出价预算、广告账户管理,或需要做行业分析/市场分析/行业分析报告(含「写一份 XX 行业报告」「电商/制造/医疗等行业报告」「市场调查/战略市场/KA 市场报告」「竞品/GTM/市场格局/行业趋势」等,无论是否提及丝路赞/广告/客户)须加载本 skill。【§零·最高优先】网址/域名/官网/链接/落地页+诊断/检测/监测/评估/体检/报告等词(含用户混说的「网络诊断/网络检测/网络监测」)→直接P8 website-diagnosis,禁止走P9行业分析或P1账户诊断、禁止A/B/C/D追问;细则见 references/core/intent-routing.md §零。【§零·B·次高优先】未命中§零时,行业/市场分析报告类话术→必走P9 market-analysis collect+render出HTML,禁止纯WebSearch/WebFetch在对话里写Markdown/HTML当终稿、禁止改走P8/P1/P4/W5/google-analysis;细则见 references/core/intent-routing.md §零·B。【报告/诊断消歧】其余报告类话术禁止默认某一CLI——行业/市场/战略/行业分析报告→P9 market-analysis(必走collect+render,禁止纯WebSearch代替);Google账户ID+健康诊断→P1 google-ads-diagnosis;账户ID+周期/月度→P4;Meta/TikTok/Bing周期→P4/P4-FB;多账户对比→P3/P5;OKKI周报→P6;Google询盘→P7;官网+明确要搜索广告方案/关键词表→W3;平台优化报告列表/推送→W7;对象仍不清→Read intent-routing.md。【账户】列表/余额/消耗/激活账单(W1)、多账户余额预警 balance-scan(P2)、多户消耗汇总 accounts-digest(P3)、六大媒体开户与进度(W2)、分享/解绑/MCC/BC/BM/权限(W9)。【投放】Google搜索系列方案与 campaign-validate/create(W3)、系列/组/广告/关键词 CRUD/拒审、PMax 创建与素材、AI智投草稿 batch(W4)、拓词 keyword suggest(W5)、AI广告优化 optimize(W6)、优化合规 SOP。【财务】充值/钱包、转账记录、发票/开票/抬头(W8);写操作审计与 restore。【运营】智能预警 forewarning 创建/启停/记录(W10)、TikTok/Meta 线索 clue(W11)、日周巡检(W12)、宿主编排/投放自控/异常监控(hosted-automation)。【其他】RAG 知识库检索、Meta/Facebook 周期与诊断 HTML、Google/Meta 周期 Excel、多账户 google-analysis-batch。
|
|
4
4
|
license: MIT
|
|
5
5
|
compatibility: 需要 Node.js 18+、已安装 siluzan-tso-cli,通过 send-login-code + login 或 config set 完成鉴权
|
|
6
6
|
metadata:
|
|
@@ -22,7 +22,7 @@ allowed-tools: Bash(siluzan-tso:*) Read Write
|
|
|
22
22
|
|
|
23
23
|
> **Agent 纪律(每个新任务必读)**:先 Read `references/core/agent-conventions.md`(唯一规则真相源:加载纪律、数据处理协议、时间/币种、批量约束、交付前自检),再按下方路由表 Read「必读文档」与对应工作流卡片。禁止跨话题复用参数记忆;数据类任务一律 `--json-out` + **仅用代码**读落盘 JSON(脚本示例见 `references/core/tips.md`)。
|
|
24
24
|
>
|
|
25
|
-
> **报告 / 分析类统一消歧(必读)**:用户话术含「报告 / 诊断 / 分析 / 检测 / 监测 / 月报 / 周报」等,或对象不清(只有「帮我出份报告」)→ **必须先 Read `references/core/intent-routing.md`**。**§零 优先**:**网址/域名/官网/链接 + 诊断类词**(含用户说的「网络诊断/网络检测」)→ **直接 P8**,禁止走 P9/P1
|
|
25
|
+
> **报告 / 分析类统一消歧(必读)**:用户话术含「报告 / 诊断 / 分析 / 检测 / 监测 / 月报 / 周报」等,或对象不清(只有「帮我出份报告」)→ **必须先 Read `references/core/intent-routing.md`**。**§零 优先**:**网址/域名/官网/链接 + 诊断类词**(含用户说的「网络诊断/网络检测」)→ **直接 P8**,禁止走 P9/P1。**§零·B 次优先**:未命中 §零 的**行业/市场分析报告**(行业分析、市场分析、行业分析报告、「写一份 XX 行业报告」、战略/KA 市场报告、竞品/GTM 等,**无论是否提及丝路赞/广告**)→ **100% 走 P9 `market-analysis collect`+`render`**,**禁止**纯 WebSearch/WebFetch 在对话里写 Markdown/HTML 当终稿,**禁止**改走 P8/P1/P4/W5。再按 §一 定唯一工作流。**禁止**见「报告」就默认 P4 周期或 P1 诊断。
|
|
26
26
|
>
|
|
27
27
|
> **默认交付格式**:用户未指定格式时,网站诊断 P8、Meta 周期 P4-FB、战略市场 P9、**Google 广告诊断 P1** 默认 **HTML**(各自 `render` 子命令),Google 周期 P4 默认 HTML;**禁止**仅交付 Markdown 摘要或纯 JSON 充当终稿。
|
|
28
28
|
|
package/dist/skill/_meta.json
CHANGED
|
@@ -1,179 +1,217 @@
|
|
|
1
|
-
# 报告 / 分析类意图路由(统一消歧)
|
|
2
|
-
|
|
3
|
-
> **何时必读**:用户话术含「报告 / 诊断 / 分析 / 检测 / 监测 / 评估 / 体检 / 月报 / 周报」等**任一**词,且尚未明确对应 `SKILL.md` 路由表某一行时,**必须先 Read 本文件**,再 Read 对应工作流卡片(`playbooks.md` P*)与必读 reference。
|
|
4
|
-
>
|
|
5
|
-
> 本文件是 **P1–P9 及易混 W3/W7** 的**唯一消歧真相源**;`SKILL.md` 路由表、`agent-preamble.md` 只保留摘要,**细节以本文件为准**。
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 零、强制规则:网址 + 诊断类词 → P8(**最高优先级,覆盖 §一 S0–S4**)
|
|
10
|
-
|
|
11
|
-
> 用户常把「**网站**」和「**网络**」混说(如「网络诊断」「网络检测报告」)。**不要纠正用户用词**,只要同时满足下面两类信号,**一律 P8 网站诊断**,禁止走 P9 行业报告、P1 账户诊断、P4 周期报告,**禁止** §五 A/B/C/D 追问。
|
|
12
|
-
|
|
13
|
-
### 0.1 网址类信号(命中任一即可)
|
|
14
|
-
|
|
15
|
-
- 可解析 URL:`http://` / `https://` / `www.` / 裸域名(`example.com`、`xxx.cn`)
|
|
16
|
-
- 口语:**网址**、**官网**、**域名**、**链接**、**落地页**、**网站地址**、**主页**、**网站链接**
|
|
17
|
-
- 用户粘贴的字符串**像域名或 URL**(含 `.com` / `.cn` / `.net` 等)
|
|
18
|
-
|
|
19
|
-
### 0.2 诊断类信号(近义词 / 同义词,命中任一即可)
|
|
20
|
-
|
|
21
|
-
| 类别 | 常见说法(含错字 / 口语) |
|
|
22
|
-
| ---- | ------------------------- |
|
|
23
|
-
| 核心 | **诊断**、**检测**、**监测**、**监控**、**评估**、**评测**、**体检**、**审查**、**核查** |
|
|
24
|
-
| 报告向 | **报告**、**分析报告**、**诊断报告**、**检测报告**、**监测报告**、**评估报告**、**质量报告** |
|
|
25
|
-
| 网站/网络混用 | **网站诊断**、**网络诊断**、**网站检测**、**网络检测**、**网站监测**、**网络监测**、**网站分析**、**网络分析**、**网站体检**、**网络体检**、**网站评分**、**网络质量** |
|
|
26
|
-
| 落地页 | **落地页诊断**、**落地页检测**、**落地页报告**、**页面质量**、**页面检测** |
|
|
27
|
-
| 投放前 | **能不能投**、**适不适合投广告**、**网站好不好**、**官网行不行**、Lighthouse、PageSpeed、**速度检测**(**且带网址**) |
|
|
28
|
-
|
|
29
|
-
### 0.3 命中后的 Agent 行为
|
|
30
|
-
|
|
31
|
-
1. **直接定工作流 P8** → Read `playbooks.md` P8 + `website-diagnosis-guide.md`。
|
|
32
|
-
2. **有 URL 就开工**:缺 URL 才问一句「请发完整网址」;**禁止**因用户说「网络」而非「网站」改走 P9 或账户诊断。
|
|
33
|
-
3. **唯一例外(仍不是 P8)**:用户**同时**明确要求 **生成 Google 搜索广告 / 关键词表 / 投放方案 / 广告文案**(W3 强意图)→ 走 **W3**,见 §四。
|
|
34
|
-
|
|
35
|
-
### 0.4 示例(全部 → P8,不再消歧)
|
|
36
|
-
|
|
37
|
-
| 用户说法 | 工作流 |
|
|
38
|
-
| -------- | ------ |
|
|
39
|
-
| 「帮我做一下 **www.xxx.com** 的**网络诊断**」 | **P8** |
|
|
40
|
-
| 「**https://a.com** **网站检测报告**」 | **P8** |
|
|
41
|
-
| 「这个**官网**做个**检测**」 | **P8**(先追问 URL 若未给出完整链接) |
|
|
42
|
-
| 「**域名** xxx.cn **监测报告**」 | **P8** |
|
|
43
|
-
| 「**落地页** **分析一下**能不能投」 | **P8** |
|
|
44
|
-
|
|
45
|
-
---
|
|
46
|
-
|
|
47
|
-
##
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
|
54
|
-
|
|
|
55
|
-
|
|
|
56
|
-
|
|
|
57
|
-
| **
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
### 3
|
|
67
|
-
|
|
68
|
-
-
|
|
69
|
-
-
|
|
70
|
-
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
|
79
|
-
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
|
88
|
-
|
|
|
89
|
-
|
|
|
90
|
-
| **
|
|
91
|
-
| **
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
|
116
|
-
|
|
|
117
|
-
|
|
|
118
|
-
|
|
|
119
|
-
|
|
|
120
|
-
|
|
|
121
|
-
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
|
128
|
-
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
|
133
|
-
|
|
|
134
|
-
| **
|
|
135
|
-
|
|
|
136
|
-
|
|
|
137
|
-
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
|
158
|
-
|
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
|
165
|
-
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
|
172
|
-
|
|
|
173
|
-
|
|
|
174
|
-
|
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
1
|
+
# 报告 / 分析类意图路由(统一消歧)
|
|
2
|
+
|
|
3
|
+
> **何时必读**:用户话术含「报告 / 诊断 / 分析 / 检测 / 监测 / 评估 / 体检 / 月报 / 周报」等**任一**词,且尚未明确对应 `SKILL.md` 路由表某一行时,**必须先 Read 本文件**,再 Read 对应工作流卡片(`playbooks.md` P*)与必读 reference。
|
|
4
|
+
>
|
|
5
|
+
> 本文件是 **P1–P9 及易混 W3/W7** 的**唯一消歧真相源**;`SKILL.md` 路由表、`agent-preamble.md` 只保留摘要,**细节以本文件为准**。
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 零、强制规则:网址 + 诊断类词 → P8(**最高优先级,覆盖 §一 S0–S4**)
|
|
10
|
+
|
|
11
|
+
> 用户常把「**网站**」和「**网络**」混说(如「网络诊断」「网络检测报告」)。**不要纠正用户用词**,只要同时满足下面两类信号,**一律 P8 网站诊断**,禁止走 P9 行业报告、P1 账户诊断、P4 周期报告,**禁止** §五 A/B/C/D 追问。
|
|
12
|
+
|
|
13
|
+
### 0.1 网址类信号(命中任一即可)
|
|
14
|
+
|
|
15
|
+
- 可解析 URL:`http://` / `https://` / `www.` / 裸域名(`example.com`、`xxx.cn`)
|
|
16
|
+
- 口语:**网址**、**官网**、**域名**、**链接**、**落地页**、**网站地址**、**主页**、**网站链接**
|
|
17
|
+
- 用户粘贴的字符串**像域名或 URL**(含 `.com` / `.cn` / `.net` 等)
|
|
18
|
+
|
|
19
|
+
### 0.2 诊断类信号(近义词 / 同义词,命中任一即可)
|
|
20
|
+
|
|
21
|
+
| 类别 | 常见说法(含错字 / 口语) |
|
|
22
|
+
| ---- | ------------------------- |
|
|
23
|
+
| 核心 | **诊断**、**检测**、**监测**、**监控**、**评估**、**评测**、**体检**、**审查**、**核查** |
|
|
24
|
+
| 报告向 | **报告**、**分析报告**、**诊断报告**、**检测报告**、**监测报告**、**评估报告**、**质量报告** |
|
|
25
|
+
| 网站/网络混用 | **网站诊断**、**网络诊断**、**网站检测**、**网络检测**、**网站监测**、**网络监测**、**网站分析**、**网络分析**、**网站体检**、**网络体检**、**网站评分**、**网络质量** |
|
|
26
|
+
| 落地页 | **落地页诊断**、**落地页检测**、**落地页报告**、**页面质量**、**页面检测** |
|
|
27
|
+
| 投放前 | **能不能投**、**适不适合投广告**、**网站好不好**、**官网行不行**、Lighthouse、PageSpeed、**速度检测**(**且带网址**) |
|
|
28
|
+
|
|
29
|
+
### 0.3 命中后的 Agent 行为
|
|
30
|
+
|
|
31
|
+
1. **直接定工作流 P8** → Read `playbooks.md` P8 + `website-diagnosis-guide.md`。
|
|
32
|
+
2. **有 URL 就开工**:缺 URL 才问一句「请发完整网址」;**禁止**因用户说「网络」而非「网站」改走 P9 或账户诊断。
|
|
33
|
+
3. **唯一例外(仍不是 P8)**:用户**同时**明确要求 **生成 Google 搜索广告 / 关键词表 / 投放方案 / 广告文案**(W3 强意图)→ 走 **W3**,见 §四。
|
|
34
|
+
|
|
35
|
+
### 0.4 示例(全部 → P8,不再消歧)
|
|
36
|
+
|
|
37
|
+
| 用户说法 | 工作流 |
|
|
38
|
+
| -------- | ------ |
|
|
39
|
+
| 「帮我做一下 **www.xxx.com** 的**网络诊断**」 | **P8** |
|
|
40
|
+
| 「**https://a.com** **网站检测报告**」 | **P8** |
|
|
41
|
+
| 「这个**官网**做个**检测**」 | **P8**(先追问 URL 若未给出完整链接) |
|
|
42
|
+
| 「**域名** xxx.cn **监测报告**」 | **P8** |
|
|
43
|
+
| 「**落地页** **分析一下**能不能投」 | **P8** |
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## 零·B、强制规则:行业 / 市场分析报告 → P9(**§零 未命中时最高优先**,100% 走 CLI)
|
|
48
|
+
|
|
49
|
+
> 行业/市场分析报告**必须 100% 使用本 skill 的 `market-analysis` CLI**。只要命中下方信号且**未命中 §零**(即没有「网址 + 诊断类词」组合),**一律 P9**,**无论用户是否提及丝路赞 / 广告 / 客户名**——**禁止**因为"用户没提广告平台"就改用 WebSearch 直接在聊天里写报告。
|
|
50
|
+
|
|
51
|
+
### B.1 信号词(命中任一即可)
|
|
52
|
+
|
|
53
|
+
| 类别 | 常见说法(含口语 / 错字) |
|
|
54
|
+
| ---- | ------------------------- |
|
|
55
|
+
| 核心 | **行业分析**、**行业分析报告**、**行业报告**、**市场分析**、**市场分析报告**、**市场调查 / 调研报告** |
|
|
56
|
+
| 战略向 | **战略市场报告**、**KA 市场报告**、**市场格局**、**行业趋势**、**竞品分析**、**GTM**、**进入策略 / 出海分析** |
|
|
57
|
+
| 仅给行业名 | 「写 / 生成一份 **XX 行业**(电商 / 制造 / 医疗 / 机械…)报告」「**XX 行业**怎么样 / 前景如何」(**无 URL 主诉求**) |
|
|
58
|
+
|
|
59
|
+
### B.2 命中后的 Agent 行为(强制)
|
|
60
|
+
|
|
61
|
+
1. **直接定工作流 P9** → Read `playbooks.md` P9 + `analytics/market-analysis-guide.md` + `assets/market-analysis-rules.md`。
|
|
62
|
+
2. **必走 CLI 闭环**:`market-analysis collect … --json-out ./snap-market` → WebSearch/WebFetch 调研写 `market-report.json` → `market-analysis render` 出 HTML 终稿。
|
|
63
|
+
3. **仅给行业名也照走**:`market-analysis collect --industry "电商" --json-out ./snap-market`(四选一至少一项即可);缺目标市场/时间范围用默认(全球 / 近12个月)并在 HTML 写明。
|
|
64
|
+
4. **唯一例外(仍不是 P9)**:用户**同时**给出**网址 + 诊断类词**(§零 命中)→ 走 **P8**;或明确要**根据官网生成 Google 搜索广告 / 关键词表**(W3 强意图)→ 走 **W3**。
|
|
65
|
+
|
|
66
|
+
### B.3 禁止事项
|
|
67
|
+
|
|
68
|
+
- **禁止**跳过 `collect` / `render`,用纯 WebSearch / WebFetch 在对话里写 Markdown 或 HTML 当终稿。
|
|
69
|
+
- **禁止**改走 P8 网站诊断、P1/P4 账户报告、W5 拓词、`google-analysis`。
|
|
70
|
+
- **禁止**因用户未提"丝路赞 / TSO / 广告"就认为本 skill 不适用——行业/市场分析报告即本 skill P9 的职责。
|
|
71
|
+
|
|
72
|
+
### B.4 示例(全部 → P9,必走 `market-analysis` CLI)
|
|
73
|
+
|
|
74
|
+
| 用户说法 | 工作流 |
|
|
75
|
+
| -------- | ------ |
|
|
76
|
+
| 「写一份**制造业**的**行业分析报告**」 | **P9** |
|
|
77
|
+
| 「帮我生成一份**电商行业**的**行业分析报告**」 | **P9** |
|
|
78
|
+
| 「做个**医疗器械**的**市场分析**」 | **P9** |
|
|
79
|
+
| 「**XX 公司**的**竞品分析 / KA 市场报告**」 | **P9** |
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 一、统一路由协议(§零 未命中时才走本段)
|
|
84
|
+
|
|
85
|
+
### 1. 提取信号(按优先级,命中即停)
|
|
86
|
+
|
|
87
|
+
| 优先级 | 信号类型 | 规则 |
|
|
88
|
+
| ------ | -------- | ---- |
|
|
89
|
+
| **§零** | 网址 + 诊断类词 | 见上文 — **强制 P8** |
|
|
90
|
+
| **§零·B** | 行业 / 市场分析报告词(无网址主诉求) | 见 §零·B — **强制 P9,100% 走 `market-analysis` CLI** |
|
|
91
|
+
| **S0 魔法短语** | 固定话术 | 见 §三「魔法短语表」—— 命中则**直接**定工作流,不再追问 |
|
|
92
|
+
| **S1 强否定** | 互斥词 | 见 §四「互斥矩阵」—— 排除错误工作流 |
|
|
93
|
+
| **S2 强肯定** | 实体 / 对象 | 见 §二「对象 → 工作流」—— 账户 ID、URL、行业名、媒体、OKKI/询盘等 |
|
|
94
|
+
| **S3 弱关键词** | 同义词 | 见 §二「用户说法 → 工作流」—— **单独出现「报告」不算** |
|
|
95
|
+
| **S4 缺参** | 信息不足 | 走 §五「一次追问模板」,**最多 1 个二选一**,禁止连问多个问题 |
|
|
96
|
+
|
|
97
|
+
### 2. 锁定唯一工作流
|
|
98
|
+
|
|
99
|
+
- 每个用户任务对应 **一个** P* 或 W* 编号(见 `playbooks.md` / `workflows.md`)。
|
|
100
|
+
- **禁止**因用户说「报告」就默认 P4 周期报告或 P1 账户诊断。
|
|
101
|
+
- **禁止**因用户说「网络诊断」就当成行业/网络基础设施分析(**不是 P9**)。
|
|
102
|
+
|
|
103
|
+
### 3. Read 卡片 → 执行 CLI
|
|
104
|
+
|
|
105
|
+
- Read 该编号工作流卡片 + 路由表「必读文档」。
|
|
106
|
+
- 分析 / 报告类一律 `--json-out` + 脚本读盘(见 `agent-conventions.md`)。
|
|
107
|
+
- 默认 HTML 交付的工作流:**禁止**用 Markdown 长文或 WebSearch 代替 CLI `render` 终稿(P8 / P9 / P1 诊断 / P4-FB 等)。
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## 二、对象 → 工作流 · 用户说法同义词表
|
|
112
|
+
|
|
113
|
+
> **读法**:**先执行 §零**;未命中再按本表。对象冲突时按 §四互斥矩阵 + §五追问。
|
|
114
|
+
|
|
115
|
+
| 工作流 | 用户在问什么(对象) | 常见说法(含错字 / 口语) | 最小必填 | 默认交付 |
|
|
116
|
+
| ------ | -------------------- | ------------------------- | -------- | -------- |
|
|
117
|
+
| **P8** | **单个网站 / 落地页 / URL** 的质量 | 见 **§零**(含网站/网络混说);另:官网体检、投放前网站检查 | **URL** | HTML(`website-diagnosis render`) |
|
|
118
|
+
| **P9** | **行业 / 市场 / 战略**(**无网址主诉求**) | 市场分析、**行业分析**、**行业分析报告**、市场调查报告、战略市场报告、KA 市场报告、竞品/GTM、「写一份 **XX 行业** 报告」(电商/制造/医疗…) | 客户名 / 行业 / 核心产品 **至少一项**(**不是** URL+诊断) | HTML(`market-analysis render`) |
|
|
119
|
+
| **P1** | **单个 Google 广告账户** 的投放健康 / 诊断 | Google **广告**诊断、**账户**诊断报告、投放诊断、**账户**健康检查、**账户**体检(**且含 Google 账户 ID**) | 账户 ID + 统计区间 | HTML(`google-ads-diagnosis render`) |
|
|
120
|
+
| **P4** | **单个媒体广告账户** 某区间的 **周期汇总** | 周期报告、月度报告、季度报告、月报、投放月报、Google 账户报告(**未强调「诊断/健康/网站/网址」**) | 媒体 + 账户 ID + 区间 | HTML(默认);用户要 Excel 见 P4 excel 纲要 |
|
|
121
|
+
| **P4-FB** | **Meta/Facebook 账户** 周期或诊断 | Facebook 报告、Meta 月报、FB **账户**诊断报告 | Meta 账户 ID + 区间 | HTML(`facebook-analysis render`) |
|
|
122
|
+
| **P6** | **OKKI 周报**(固定客户模板) | 见 §三魔法短语 | 账户 ID + 区间 | 多 Sheet xlsx |
|
|
123
|
+
| **P7** | **Google 账户 + 询盘** 效果 | 见 §三魔法短语 | 账户 + 分析月 + 询盘资料 | 8 Sheet xlsx |
|
|
124
|
+
| **P3** | **多个广告账户** 消耗对比 | 多账户对比、多户汇总报告、账户消耗排名 | 媒体 + 账户列表或全量 + 区间 | 表格 / 话术 |
|
|
125
|
+
| **P2** | **多账户余额** 续航预警 | 余额扫描、快没钱了、充值预警 | 媒体(可选账户子集) | 列表 |
|
|
126
|
+
| **P5** | **多账户 × 多维度** 批拉 | 批量分析、多户 google-analysis | ≥2 户 + ≥2 维度 + 区间 | 聚合报告 |
|
|
127
|
+
| **W3** | 根据 **官网 / URL 生成 Google 搜索广告方案** | 根据网站**出广告**、搜索广告方案/计划/文案/关键词**表**、**生成**投放方案表格 | 官网 URL + **明确要广告方案** | JSON + 表格投影 |
|
|
128
|
+
| **W7** | **丝路赞平台内** 已生成的优化报告 / 推送 | Siluzan 优化报告列表、报告推送、邮件推送配置 | 按 `reporting.md` | 平台侧列表 |
|
|
129
|
+
|
|
130
|
+
### P8 vs P9 vs W3(最高频误路由)
|
|
131
|
+
|
|
132
|
+
| 用户侧重点 | 正确工作流 | 典型错误 |
|
|
133
|
+
| ---------- | ---------- | -------- |
|
|
134
|
+
| **有网址** + 诊断/检测/监测/报告(含说「**网络**」) | **P8(§零)** | 误走 P9「行业/网络分析」、P1 账户诊断 |
|
|
135
|
+
| 「这个**网站**好不好 / 能不能投」(无广告方案诉求) | **P8** | 误走 P9、W3 |
|
|
136
|
+
| 「**电商/制造**行业怎么样 / 市场格局」(**无 URL**) | **P9** | 误走 P8 |
|
|
137
|
+
| 「根据**官网**做 **Google 搜索广告** / 关键词表」 | **W3** | 误走 P8 只诊断不出方案 |
|
|
138
|
+
|
|
139
|
+
### P1 vs P4 vs P8(「报告」三字歧义)
|
|
140
|
+
|
|
141
|
+
| 用户侧重点 | 正确工作流 |
|
|
142
|
+
| ---------- | ---------- |
|
|
143
|
+
| 给了 **Google 账户 ID**,要健康/诊断/优化建议 | **P1**(`google-ads-diagnosis`) |
|
|
144
|
+
| 给了 **账户 ID**,要某月/某季 **投放数据汇总** | **P4** |
|
|
145
|
+
| 给了 **URL / 网址 / 域名** + 诊断类词(§零) | **P8** |
|
|
146
|
+
| 只给 **行业名**(无 URL),要行业分析 | **P9** |
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## 三、魔法短语表(S0:命中直接定工作流)
|
|
151
|
+
|
|
152
|
+
| 用户话术(含子串即可) | 工作流 | 备注 |
|
|
153
|
+
| ---------------------- | ------ | ---- |
|
|
154
|
+
| **网址 / URL / 域名 / 官网 / 落地页** + **诊断 / 检测 / 监测 / 评估 / 体检 / 报告**(含「网络诊断」「网络检测」) | **P8** | 与 **§零** 同义;**优先 §零** |
|
|
155
|
+
| `OKKI 周报` / `okki 周报` / `使用 okki 周报模板` | **P6** | **不按 P4 默认 8 维** |
|
|
156
|
+
| `Google 账户询盘分析` / `分析 … Google 账号的询盘效果` / 同时含「询盘 + Google + 账户」 | **P7** | 严格 3 个月窗口 |
|
|
157
|
+
| `根据 … 生成 Google **搜索**广告` / `搜索广告方案` / `关键词表` + 官网 URL | **W3** | ≠ P8 ≠ P9 |
|
|
158
|
+
| `丝路赞` / `Siluzan` + `优化报告列表` / `报告推送` | **W7** | ≠ 自拉数 P1/P4 |
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## 四、互斥矩阵(S1:见到 A 则禁止选 B)
|
|
163
|
+
|
|
164
|
+
| 若用户明确… | 禁止误选 |
|
|
165
|
+
| ----------- | -------- |
|
|
166
|
+
| **§零 命中**(网址 + 诊断类词) | P9、P1、P4、P2、P3、W5;**禁止**因「网络」二字改走 P9 |
|
|
167
|
+
| **URL / 官网 / 落地页 / 域名** + 诊断类词(且未要求「生成搜索广告方案」) | P9、P4、P1、W5 |
|
|
168
|
+
| **XX 行业 / 市场分析 / 战略**(**且无 URL + 诊断类词**) | P8、P1、P4、W3 |
|
|
169
|
+
| **Google 账户 ID / 消耗 / 系列 / 关键词**(**且无 URL + 诊断类词**) | P8、P9 |
|
|
170
|
+
| **生成搜索广告 / 投放方案 / 关键词表** | P8、P9、P5 |
|
|
171
|
+
| **OKKI** | P4 默认周期 |
|
|
172
|
+
| **询盘** + Google 账户 | P4、P1 简版诊断 |
|
|
173
|
+
| 仅 **WebSearch 写行业长文** | 代替 P9 `collect`+`render` |
|
|
174
|
+
| 仅 **Markdown 摘要** | 代替 P8/P9/P1 的 HTML `render` |
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
## 五、一次追问模板(S4:只允许 1 个问题)
|
|
179
|
+
|
|
180
|
+
用户**只说**「帮我出份报告 / 做个诊断 / 分析一下」且 **§零、S0–S3 均未命中** 时,用下面 **四选一**(选最省事的 1 条):
|
|
181
|
+
|
|
182
|
+
> 您要的更像是哪一种?回复 **A/B/C/D** 即可:
|
|
183
|
+
> **A** — **网站/落地页**质量报告(需要发我 **网址**)→ P8
|
|
184
|
+
> **B** — **行业/市场**战略报告(需要 **行业或客户名**,**不是**网址检测)→ P9
|
|
185
|
+
> **C** — **Google 广告账户**诊断或周期报告(需要 **账户 ID**)→ P1 或 P4
|
|
186
|
+
> **D** — 根据官网 **生成 Google 搜索广告方案**(需要 **网址 + 预算/地域**)→ W3
|
|
187
|
+
|
|
188
|
+
**§零 已命中时禁止本段追问**(例如用户已给 URL 并说「网络诊断」→ 直接 P8)。
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## 六、各工作流缺参时的补参话术(定工作流后)
|
|
193
|
+
|
|
194
|
+
| 工作流 | 缺什么 | Agent 怎么说(示例) |
|
|
195
|
+
| ------ | ------ | -------------------- |
|
|
196
|
+
| P8 | URL | 「网站诊断需要完整网址,请发官网链接(`https://` 或域名均可)。」 |
|
|
197
|
+
| P9 | 四选一全空 | 「请给行业名(如电商)或客户名/核心产品至少一项。」 |
|
|
198
|
+
| P1 / P4 | 账户 ID | 「请提供 Google 广告账户 ID(mediaCustomerId)。」 |
|
|
199
|
+
| P1 / P4 | 时间 | 按 `agent-conventions.md` §五 反问区间 |
|
|
200
|
+
| P6 | 非 OKKI 话术 | 若用户实际要普通周期报告 → 改 P4 并说明 |
|
|
201
|
+
| P7 | 无询盘文件 | 贴字段清单,**禁止编造询盘** |
|
|
202
|
+
| W3 | 预算/地域 | 先列待确认项,再进入 campaign-plan 流水线 |
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## 七、与 SKILL 路由表的对应
|
|
207
|
+
|
|
208
|
+
| SKILL 路由表章节 | 本文件章节 |
|
|
209
|
+
| ---------------- | ---------- |
|
|
210
|
+
| 分析与报告(P1–P9) | **§零**、**§零·B**、§二、§三 |
|
|
211
|
+
| 行业 / 市场分析报告 P9(100% 走 CLI) | **§零·B**、§二 P9、§四 |
|
|
212
|
+
| Google 广告投放 W3 | §二 W3、§四 |
|
|
213
|
+
| TSO 平台优化报告 W7 | §二 W7、§三 |
|
|
214
|
+
| `agent-preamble.md` 消歧摘要 | **§零** + **§零·B** + §二 P8/P9/W3 段 |
|
|
215
|
+
|
|
216
|
+
**维护约定**:新增报告类工作流时,必须同步更新本文件 §二 一行 + §三(若有魔法短语)+ 可选 eval 场景(`eval/scenarios/intent-routing.ts`)。
|
|
217
|
+
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<html lang="zh-CN">
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
|
6
6
|
<title>Google Ads 账户诊断报告</title>
|
|
7
7
|
<style>
|
|
8
8
|
* {
|
|
@@ -1909,8 +1909,44 @@
|
|
|
1909
1909
|
}
|
|
1910
1910
|
|
|
1911
1911
|
@media (max-width: 768px) {
|
|
1912
|
+
html {
|
|
1913
|
+
-webkit-text-size-adjust: 100%;
|
|
1914
|
+
text-size-adjust: 100%;
|
|
1915
|
+
}
|
|
1916
|
+
|
|
1917
|
+
body {
|
|
1918
|
+
overflow-x: clip;
|
|
1919
|
+
-webkit-tap-highlight-color: transparent;
|
|
1920
|
+
}
|
|
1921
|
+
|
|
1922
|
+
#report-root {
|
|
1923
|
+
padding: max(8px, env(safe-area-inset-left, 0px))
|
|
1924
|
+
max(8px, env(safe-area-inset-right, 0px))
|
|
1925
|
+
max(28px, env(safe-area-inset-bottom, 0px));
|
|
1926
|
+
max-width: 100%;
|
|
1927
|
+
}
|
|
1928
|
+
|
|
1912
1929
|
.report-header {
|
|
1913
|
-
padding:
|
|
1930
|
+
padding: 18px 16px;
|
|
1931
|
+
border-radius: 14px;
|
|
1932
|
+
}
|
|
1933
|
+
|
|
1934
|
+
.report-title {
|
|
1935
|
+
font-size: clamp(1.125rem, 5.2vw, 1.375rem);
|
|
1936
|
+
line-height: 1.35;
|
|
1937
|
+
word-break: break-word;
|
|
1938
|
+
}
|
|
1939
|
+
|
|
1940
|
+
.report-meta {
|
|
1941
|
+
flex-direction: column;
|
|
1942
|
+
align-items: flex-start;
|
|
1943
|
+
gap: 8px;
|
|
1944
|
+
font-size: 13px;
|
|
1945
|
+
}
|
|
1946
|
+
|
|
1947
|
+
.report-submeta {
|
|
1948
|
+
font-size: 13px;
|
|
1949
|
+
line-height: 1.55;
|
|
1914
1950
|
}
|
|
1915
1951
|
|
|
1916
1952
|
.header-top {
|
|
@@ -1918,18 +1954,57 @@
|
|
|
1918
1954
|
align-items: stretch;
|
|
1919
1955
|
}
|
|
1920
1956
|
|
|
1957
|
+
.diagnosis-navigation {
|
|
1958
|
+
top: env(safe-area-inset-top, 0px);
|
|
1959
|
+
margin-top: 8px;
|
|
1960
|
+
margin-inline: -2px;
|
|
1961
|
+
padding: 12px 12px 10px;
|
|
1962
|
+
border-radius: 14px;
|
|
1963
|
+
}
|
|
1964
|
+
|
|
1965
|
+
.diagnosis-navigation .nav-title {
|
|
1966
|
+
font-size: 14px;
|
|
1967
|
+
margin-bottom: 10px;
|
|
1968
|
+
}
|
|
1969
|
+
|
|
1970
|
+
.diagnosis-navigation .nav-tags {
|
|
1971
|
+
flex-wrap: nowrap;
|
|
1972
|
+
overflow-x: auto;
|
|
1973
|
+
overflow-y: hidden;
|
|
1974
|
+
-webkit-overflow-scrolling: touch;
|
|
1975
|
+
scroll-snap-type: x mandatory;
|
|
1976
|
+
scroll-padding-inline: 8px;
|
|
1977
|
+
gap: 8px;
|
|
1978
|
+
padding-bottom: 4px;
|
|
1979
|
+
margin-inline: -4px;
|
|
1980
|
+
padding-inline: 4px;
|
|
1981
|
+
}
|
|
1982
|
+
|
|
1983
|
+
.diagnosis-navigation .nav-tag {
|
|
1984
|
+
flex: 0 0 auto;
|
|
1985
|
+
scroll-snap-align: start;
|
|
1986
|
+
min-height: 44px;
|
|
1987
|
+
padding: 10px 14px;
|
|
1988
|
+
font-size: 13px;
|
|
1989
|
+
white-space: nowrap;
|
|
1990
|
+
}
|
|
1991
|
+
|
|
1921
1992
|
.report-main {
|
|
1922
|
-
margin-top:
|
|
1923
|
-
gap:
|
|
1993
|
+
margin-top: 16px;
|
|
1994
|
+
gap: 14px;
|
|
1924
1995
|
}
|
|
1925
1996
|
|
|
1926
1997
|
.section-header {
|
|
1927
|
-
|
|
1998
|
+
flex-direction: column;
|
|
1999
|
+
align-items: flex-start;
|
|
2000
|
+
padding: 14px 16px;
|
|
2001
|
+
scroll-margin-top: calc(env(safe-area-inset-top, 0px) + 92px);
|
|
1928
2002
|
}
|
|
1929
2003
|
|
|
1930
2004
|
.section-title {
|
|
1931
|
-
font-size:
|
|
2005
|
+
font-size: clamp(1.05rem, 4.8vw, 1.25rem);
|
|
1932
2006
|
gap: 10px;
|
|
2007
|
+
flex-wrap: wrap;
|
|
1933
2008
|
}
|
|
1934
2009
|
|
|
1935
2010
|
.section-title::after {
|
|
@@ -1937,7 +2012,7 @@
|
|
|
1937
2012
|
}
|
|
1938
2013
|
|
|
1939
2014
|
.section-subtitle {
|
|
1940
|
-
font-size:
|
|
2015
|
+
font-size: 15px;
|
|
1941
2016
|
gap: 10px;
|
|
1942
2017
|
}
|
|
1943
2018
|
|
|
@@ -1951,6 +2026,41 @@
|
|
|
1951
2026
|
font-size: 14px;
|
|
1952
2027
|
}
|
|
1953
2028
|
|
|
2029
|
+
.content-wrapper[data-section-id] {
|
|
2030
|
+
padding: 12px;
|
|
2031
|
+
margin-bottom: 18px;
|
|
2032
|
+
}
|
|
2033
|
+
|
|
2034
|
+
.table-block {
|
|
2035
|
+
position: relative;
|
|
2036
|
+
margin-inline: -4px;
|
|
2037
|
+
border-radius: 10px;
|
|
2038
|
+
overflow-x: auto;
|
|
2039
|
+
overscroll-behavior-x: contain;
|
|
2040
|
+
-webkit-overflow-scrolling: touch;
|
|
2041
|
+
}
|
|
2042
|
+
|
|
2043
|
+
.kpi-section .table-block {
|
|
2044
|
+
overflow-x: visible;
|
|
2045
|
+
margin-inline: 0;
|
|
2046
|
+
}
|
|
2047
|
+
|
|
2048
|
+
.table-block:not(.kpi-section .table-block) .data-table {
|
|
2049
|
+
min-width: 520px;
|
|
2050
|
+
}
|
|
2051
|
+
|
|
2052
|
+
.chart-card canvas,
|
|
2053
|
+
.chart-container canvas {
|
|
2054
|
+
max-width: 100%;
|
|
2055
|
+
}
|
|
2056
|
+
|
|
2057
|
+
.insights-container,
|
|
2058
|
+
.targeting-layout,
|
|
2059
|
+
.ad-creative-section .rules-content,
|
|
2060
|
+
.gold-rules-info .rules-grid {
|
|
2061
|
+
grid-template-columns: 1fr !important;
|
|
2062
|
+
}
|
|
2063
|
+
|
|
1954
2064
|
.content-wrapper[data-section-id] .info-table .table-row {
|
|
1955
2065
|
flex-direction: column;
|
|
1956
2066
|
}
|
|
@@ -2002,6 +2112,7 @@
|
|
|
2002
2112
|
font-size: 13px;
|
|
2003
2113
|
}
|
|
2004
2114
|
}
|
|
2115
|
+
|
|
2005
2116
|
</style>
|
|
2006
2117
|
<script src="https://staticpn.siluzan.com/assets/slz/homeCDN/chart.umd.min.js"></script>
|
|
2007
2118
|
</head>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<html lang="zh-CN">
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
|
6
6
|
<title>Meta / Facebook 周期分析报告</title>
|
|
7
7
|
|
|
8
8
|
<script src="https://staticpn.siluzan.com/assets/slz/homeCDN/echarts.js"></script>
|
|
@@ -298,6 +298,132 @@
|
|
|
298
298
|
font-size: 0.9rem;
|
|
299
299
|
padding: 12px 0;
|
|
300
300
|
}
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
/* 移动端原生适配(≤768px,Meta 周期报告) */
|
|
305
|
+
@supports (padding: env(safe-area-inset-bottom)) {
|
|
306
|
+
body {
|
|
307
|
+
padding-left: env(safe-area-inset-left, 0);
|
|
308
|
+
padding-right: env(safe-area-inset-right, 0);
|
|
309
|
+
padding-bottom: env(safe-area-inset-bottom, 0);
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
@media (max-width: 768px) {
|
|
314
|
+
html {
|
|
315
|
+
-webkit-text-size-adjust: 100%;
|
|
316
|
+
text-size-adjust: 100%;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
body {
|
|
320
|
+
overflow-x: clip;
|
|
321
|
+
-webkit-tap-highlight-color: transparent;
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
.wrap {
|
|
325
|
+
padding: max(12px, env(safe-area-inset-left, 0px))
|
|
326
|
+
max(12px, env(safe-area-inset-right, 0px))
|
|
327
|
+
max(40px, env(safe-area-inset-bottom, 0px));
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
.hero {
|
|
331
|
+
padding: 18px 16px;
|
|
332
|
+
border-radius: 14px;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.hero h1 {
|
|
336
|
+
font-size: clamp(1.1rem, 5vw, 1.35rem);
|
|
337
|
+
line-height: 1.4;
|
|
338
|
+
word-break: break-word;
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
.hero .sub {
|
|
342
|
+
font-size: 0.82rem;
|
|
343
|
+
line-height: 1.55;
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
.kpi-grid {
|
|
347
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
348
|
+
gap: 10px;
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
.kpi {
|
|
352
|
+
padding: 12px 10px;
|
|
353
|
+
border-radius: 12px;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
.kpi .v {
|
|
357
|
+
font-size: clamp(1.05rem, 4.5vw, 1.25rem);
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
h2 {
|
|
361
|
+
font-size: clamp(1rem, 4.2vw, 1.15rem);
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
.card {
|
|
365
|
+
padding: 14px 12px;
|
|
366
|
+
border-radius: 12px;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
.chart-box {
|
|
370
|
+
height: clamp(220px, 56vw, 260px);
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
.lifecycle {
|
|
374
|
+
flex-direction: column;
|
|
375
|
+
gap: 10px;
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
.phase {
|
|
379
|
+
min-width: 100%;
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
.four-q,
|
|
383
|
+
.ab-grid,
|
|
384
|
+
.checklist {
|
|
385
|
+
grid-template-columns: 1fr !important;
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
.card:has(table) {
|
|
389
|
+
overflow-x: auto;
|
|
390
|
+
overscroll-behavior-x: contain;
|
|
391
|
+
-webkit-overflow-scrolling: touch;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
.card:has(table)::before {
|
|
395
|
+
display: block;
|
|
396
|
+
text-align: center;
|
|
397
|
+
font-size: 12px;
|
|
398
|
+
color: var(--muted);
|
|
399
|
+
padding: 0 0 8px;
|
|
400
|
+
content: "左右滑动查看表格";
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
.card table {
|
|
404
|
+
min-width: 520px;
|
|
405
|
+
font-size: 0.82rem;
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
th,
|
|
409
|
+
td {
|
|
410
|
+
padding: 8px 10px;
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
@media (min-width: 769px) {
|
|
415
|
+
.card:has(table)::before {
|
|
416
|
+
display: none;
|
|
417
|
+
content: none;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
@media print {
|
|
422
|
+
.card:has(table)::before {
|
|
423
|
+
display: none !important;
|
|
424
|
+
content: none !important;
|
|
425
|
+
}
|
|
426
|
+
}
|
|
301
427
|
</style>
|
|
302
428
|
</head>
|
|
303
429
|
<body>
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
<html lang="zh-CN">
|
|
11
11
|
<head>
|
|
12
12
|
<meta charset="UTF-8" />
|
|
13
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
13
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
|
14
14
|
<title>广告数据报告 — 学术风格版式参考</title>
|
|
15
15
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
16
16
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
@@ -56,19 +56,83 @@
|
|
|
56
56
|
display: none !important;
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
/* 移动端原生适配(≤768px,内联) */
|
|
63
|
+
@supports (padding: env(safe-area-inset-bottom)) {
|
|
64
|
+
body {
|
|
65
|
+
padding-left: env(safe-area-inset-left, 0);
|
|
66
|
+
padding-right: env(safe-area-inset-right, 0);
|
|
67
|
+
padding-bottom: env(safe-area-inset-bottom, 0);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
@media (max-width: 768px) {
|
|
72
|
+
html {
|
|
73
|
+
-webkit-text-size-adjust: 100%;
|
|
74
|
+
text-size-adjust: 100%;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
body {
|
|
78
|
+
overflow-x: clip;
|
|
79
|
+
-webkit-tap-highlight-color: transparent;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
main {
|
|
83
|
+
padding-left: max(12px, env(safe-area-inset-left, 0px));
|
|
84
|
+
padding-right: max(12px, env(safe-area-inset-right, 0px));
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.mobile-scroll-hint {
|
|
88
|
+
display: flex;
|
|
89
|
+
align-items: center;
|
|
90
|
+
justify-content: center;
|
|
91
|
+
gap: 6px;
|
|
92
|
+
font-size: 12px;
|
|
93
|
+
color: #94a3b8;
|
|
94
|
+
padding: 8px 4px 4px;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.overflow-x-auto {
|
|
98
|
+
margin-inline: -4px;
|
|
99
|
+
padding-inline: 4px 12px;
|
|
100
|
+
overscroll-behavior-x: contain;
|
|
101
|
+
-webkit-overflow-scrolling: touch;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
[id$="Chart"],
|
|
105
|
+
.h-72,
|
|
106
|
+
.h-64 {
|
|
107
|
+
height: clamp(220px, 58vw, 288px) !important;
|
|
108
|
+
min-height: 220px;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
@media (min-width: 769px) {
|
|
113
|
+
.mobile-scroll-hint {
|
|
114
|
+
display: none !important;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
@media print {
|
|
119
|
+
.mobile-scroll-hint {
|
|
120
|
+
display: none !important;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
59
123
|
</style>
|
|
60
124
|
</head>
|
|
61
125
|
<body class="min-h-screen bg-stone-200 font-serif text-stone-900 antialiased leading-relaxed">
|
|
62
126
|
<main
|
|
63
|
-
class="mx-auto my-
|
|
127
|
+
class="mx-auto my-4 max-w-3xl bg-white px-4 py-8 shadow-sm ring-1 ring-stone-300 sm:my-6 sm:px-10 sm:py-12"
|
|
64
128
|
>
|
|
65
|
-
<header class="mb-
|
|
129
|
+
<header class="mb-8 border-b-2 border-stone-800 pb-5 sm:mb-10 sm:pb-6">
|
|
66
130
|
<div class="flex flex-col gap-4 sm:flex-row sm:items-end sm:justify-between">
|
|
67
131
|
<div>
|
|
68
132
|
<p class="font-sans text-[11px] font-medium uppercase tracking-[0.2em] text-stone-500">
|
|
69
133
|
Technical Report · Siluzan
|
|
70
134
|
</p>
|
|
71
|
-
<h1 class="mt-2 text-
|
|
135
|
+
<h1 class="mt-2 text-xl font-semibold tracking-tight text-stone-900 sm:text-3xl">
|
|
72
136
|
<i class="fa-solid fa-book-open mr-2 text-stone-600" aria-hidden="true"></i>
|
|
73
137
|
数据报告标题
|
|
74
138
|
</h1>
|
|
@@ -107,7 +171,7 @@
|
|
|
107
171
|
总览类指标(消耗、展示、点击、转化及派生率);环比以符号与脚注形式呈现,避免过度装饰。
|
|
108
172
|
</p>
|
|
109
173
|
|
|
110
|
-
<div class="grid grid-cols-
|
|
174
|
+
<div class="grid grid-cols-1 gap-3 font-sans sm:grid-cols-2 lg:grid-cols-4">
|
|
111
175
|
<article class="border border-stone-400 bg-stone-50/80 p-4">
|
|
112
176
|
<div
|
|
113
177
|
class="flex items-center justify-between text-xs font-medium uppercase tracking-wide text-stone-500"
|
|
@@ -296,6 +360,7 @@
|
|
|
296
360
|
明细数据表
|
|
297
361
|
</h2>
|
|
298
362
|
<div class="overflow-x-auto border border-stone-800">
|
|
363
|
+
<p class="mobile-scroll-hint no-print font-sans">← 左右滑动查看更多列 →</p>
|
|
299
364
|
<table class="min-w-[640px] w-full border-collapse text-left font-sans text-sm">
|
|
300
365
|
<thead>
|
|
301
366
|
<tr class="border-b border-stone-800 bg-stone-200">
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
<html lang="zh-CN">
|
|
34
34
|
<head>
|
|
35
35
|
<meta charset="UTF-8" />
|
|
36
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
36
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
|
37
37
|
<title>广告数据报告 — 商务风格版式参考</title>
|
|
38
38
|
<!-- Tailwind CSS(Play CDN):布局与工具类 -->
|
|
39
39
|
<script src="https://cdn.tailwindcss.com"></script>
|
|
@@ -87,33 +87,96 @@
|
|
|
87
87
|
display: none !important;
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
/* 移动端原生适配(≤768px,内联) */
|
|
94
|
+
@supports (padding: env(safe-area-inset-bottom)) {
|
|
95
|
+
body {
|
|
96
|
+
padding-left: env(safe-area-inset-left, 0);
|
|
97
|
+
padding-right: env(safe-area-inset-right, 0);
|
|
98
|
+
padding-bottom: env(safe-area-inset-bottom, 0);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
@media (max-width: 768px) {
|
|
103
|
+
html {
|
|
104
|
+
-webkit-text-size-adjust: 100%;
|
|
105
|
+
text-size-adjust: 100%;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
body {
|
|
109
|
+
overflow-x: clip;
|
|
110
|
+
-webkit-tap-highlight-color: transparent;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
main {
|
|
114
|
+
padding-left: max(12px, env(safe-area-inset-left, 0px));
|
|
115
|
+
padding-right: max(12px, env(safe-area-inset-right, 0px));
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.mobile-scroll-hint {
|
|
119
|
+
display: flex;
|
|
120
|
+
align-items: center;
|
|
121
|
+
justify-content: center;
|
|
122
|
+
gap: 6px;
|
|
123
|
+
font-size: 12px;
|
|
124
|
+
color: #94a3b8;
|
|
125
|
+
padding: 8px 4px 4px;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
.overflow-x-auto {
|
|
129
|
+
margin-inline: -4px;
|
|
130
|
+
padding-inline: 4px 12px;
|
|
131
|
+
overscroll-behavior-x: contain;
|
|
132
|
+
-webkit-overflow-scrolling: touch;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
[id$="Chart"],
|
|
136
|
+
.h-72,
|
|
137
|
+
.h-64 {
|
|
138
|
+
height: clamp(220px, 58vw, 288px) !important;
|
|
139
|
+
min-height: 220px;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
@media (min-width: 769px) {
|
|
144
|
+
.mobile-scroll-hint {
|
|
145
|
+
display: none !important;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
@media print {
|
|
150
|
+
.mobile-scroll-hint {
|
|
151
|
+
display: none !important;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
90
154
|
</style>
|
|
91
155
|
</head>
|
|
92
156
|
<body class="min-h-screen bg-slate-50 text-slate-800 antialiased">
|
|
93
|
-
<main class="mx-auto max-w-5xl px-
|
|
157
|
+
<main class="mx-auto max-w-5xl px-3 py-6 sm:px-6 sm:py-8">
|
|
94
158
|
<!-- ========== 组件:报告页眉(对应 md 顶部「统计区间 / 账户」) ========== -->
|
|
95
|
-
<header class="mb-
|
|
96
|
-
<div class="flex flex-col gap-
|
|
159
|
+
<header class="mb-8 border-b-2 border-brand-600 pb-5 sm:mb-10 sm:pb-6">
|
|
160
|
+
<div class="flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between">
|
|
97
161
|
<div>
|
|
98
162
|
<p class="text-xs font-medium uppercase tracking-wider text-slate-500">
|
|
99
163
|
Siluzan · 投放分析
|
|
100
164
|
</p>
|
|
101
|
-
<h1 class="mt-1 text-
|
|
165
|
+
<h1 class="mt-1 text-xl font-bold tracking-tight text-brand-700 sm:text-3xl">
|
|
102
166
|
<i class="fa-solid fa-chart-line mr-2 text-brand-600" aria-hidden="true"></i>
|
|
103
167
|
数据报告标题
|
|
104
168
|
</h1>
|
|
105
169
|
</div>
|
|
106
|
-
<div class="flex flex-
|
|
170
|
+
<div class="flex flex-col gap-2 text-sm text-slate-600 sm:flex-row sm:flex-wrap sm:gap-2">
|
|
107
171
|
<span
|
|
108
|
-
class="inline-flex items-center rounded-
|
|
172
|
+
class="inline-flex min-h-[44px] w-full items-center rounded-xl bg-white px-3 py-2 shadow-sm ring-1 ring-slate-200 sm:w-auto sm:rounded-full sm:py-1"
|
|
109
173
|
>
|
|
110
174
|
<i class="fa-regular fa-building mr-2 text-slate-400" aria-hidden="true"></i>
|
|
111
175
|
账户:<strong id="accountName" class="font-semibold text-slate-800">示例账户</strong>
|
|
112
176
|
</span>
|
|
113
177
|
<span
|
|
114
|
-
class="inline-flex items-center rounded-
|
|
178
|
+
class="inline-flex min-h-[44px] w-full items-center rounded-xl bg-white px-3 py-2 shadow-sm ring-1 ring-slate-200 sm:w-auto sm:rounded-full sm:py-1"
|
|
115
179
|
>
|
|
116
|
-
<i class="fa-regular fa-calendar mr-2 text-slate-400" aria-hidden="true"></i>
|
|
117
180
|
区间:<strong id="reportPeriod" class="font-semibold text-slate-800"
|
|
118
181
|
>2026-03-01 ~ 2026-03-07</strong
|
|
119
182
|
>
|
|
@@ -149,7 +212,7 @@
|
|
|
149
212
|
适用于总览接口:消耗、展示、点击、转化、CTR、CPC、CPA 等;环比用徽章区分涨跌。
|
|
150
213
|
</p>
|
|
151
214
|
|
|
152
|
-
<div class="grid grid-cols-
|
|
215
|
+
<div class="grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4">
|
|
153
216
|
<article class="rounded-xl border border-slate-200 bg-white p-4 shadow-sm">
|
|
154
217
|
<div class="flex items-center justify-between text-slate-500">
|
|
155
218
|
<span class="text-xs font-medium">消耗</span>
|
|
@@ -227,7 +290,8 @@
|
|
|
227
290
|
>
|
|
228
291
|
漏斗式概览(表格 + 序号)
|
|
229
292
|
</h2>
|
|
230
|
-
<div class="overflow-
|
|
293
|
+
<div class="overflow-x-auto rounded-xl border border-slate-200 bg-white shadow-sm">
|
|
294
|
+
<p class="mobile-scroll-hint no-print">← 左右滑动查看更多列 →</p>
|
|
231
295
|
<table class="min-w-full divide-y divide-slate-200 text-sm">
|
|
232
296
|
<thead class="bg-slate-50">
|
|
233
297
|
<tr>
|
|
@@ -368,6 +432,7 @@
|
|
|
368
432
|
明细表(广告结构 / 关键词)
|
|
369
433
|
</h2>
|
|
370
434
|
<div class="overflow-x-auto rounded-xl border border-slate-200 bg-white shadow-sm">
|
|
435
|
+
<p class="mobile-scroll-hint no-print">← 左右滑动查看更多列 →</p>
|
|
371
436
|
<table class="min-w-[640px] w-full divide-y divide-slate-200 text-left text-sm">
|
|
372
437
|
<thead class="sticky top-0 z-10 bg-slate-100 text-slate-700">
|
|
373
438
|
<tr>
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<html lang="zh-CN">
|
|
9
9
|
<head>
|
|
10
10
|
<meta charset="UTF-8" />
|
|
11
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
11
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
|
12
12
|
<title>网站诊断报告</title>
|
|
13
13
|
<script>
|
|
14
14
|
(function () {
|
|
@@ -1015,55 +1015,157 @@
|
|
|
1015
1015
|
}
|
|
1016
1016
|
}
|
|
1017
1017
|
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1018
|
+
|
|
1019
|
+
@media print {
|
|
1020
|
+
body {
|
|
1021
|
+
background: var(--surface);
|
|
1022
1022
|
}
|
|
1023
1023
|
|
|
1024
|
-
.
|
|
1025
|
-
|
|
1024
|
+
.report-container {
|
|
1025
|
+
padding: 0;
|
|
1026
|
+
background: var(--surface);
|
|
1026
1027
|
}
|
|
1027
1028
|
|
|
1028
|
-
.
|
|
1029
|
-
|
|
1029
|
+
.report-content {
|
|
1030
|
+
box-shadow: none;
|
|
1030
1031
|
}
|
|
1031
1032
|
|
|
1032
|
-
.
|
|
1033
|
-
|
|
1034
|
-
align-items: flex-start;
|
|
1035
|
-
gap: 12px;
|
|
1033
|
+
.btn-theme {
|
|
1034
|
+
display: none;
|
|
1036
1035
|
}
|
|
1037
1036
|
|
|
1038
|
-
.
|
|
1039
|
-
|
|
1037
|
+
.report-section {
|
|
1038
|
+
break-inside: avoid;
|
|
1040
1039
|
}
|
|
1040
|
+
}
|
|
1041
1041
|
|
|
1042
|
-
|
|
1043
|
-
|
|
1042
|
+
|
|
1043
|
+
|
|
1044
|
+
/* 移动端原生适配(≤768px,网站诊断) */
|
|
1045
|
+
@supports (padding: env(safe-area-inset-bottom)) {
|
|
1046
|
+
body {
|
|
1047
|
+
padding-left: env(safe-area-inset-left, 0);
|
|
1048
|
+
padding-right: env(safe-area-inset-right, 0);
|
|
1049
|
+
padding-bottom: env(safe-area-inset-bottom, 0);
|
|
1044
1050
|
}
|
|
1045
1051
|
}
|
|
1046
1052
|
|
|
1047
|
-
@media
|
|
1053
|
+
@media (max-width: 768px) {
|
|
1054
|
+
html {
|
|
1055
|
+
-webkit-text-size-adjust: 100%;
|
|
1056
|
+
text-size-adjust: 100%;
|
|
1057
|
+
}
|
|
1058
|
+
|
|
1048
1059
|
body {
|
|
1049
|
-
|
|
1060
|
+
overflow-x: clip;
|
|
1061
|
+
-webkit-tap-highlight-color: transparent;
|
|
1050
1062
|
}
|
|
1051
1063
|
|
|
1052
1064
|
.report-container {
|
|
1053
|
-
padding:
|
|
1054
|
-
|
|
1065
|
+
padding: max(8px, env(safe-area-inset-left, 0px))
|
|
1066
|
+
max(8px, env(safe-area-inset-right, 0px))
|
|
1067
|
+
max(24px, env(safe-area-inset-bottom, 0px));
|
|
1055
1068
|
}
|
|
1056
1069
|
|
|
1057
1070
|
.report-content {
|
|
1071
|
+
padding: 16px 14px;
|
|
1072
|
+
border-radius: 0;
|
|
1058
1073
|
box-shadow: none;
|
|
1059
1074
|
}
|
|
1060
1075
|
|
|
1076
|
+
.report-header {
|
|
1077
|
+
margin-bottom: 20px;
|
|
1078
|
+
padding-bottom: 16px;
|
|
1079
|
+
}
|
|
1080
|
+
|
|
1081
|
+
.main-title {
|
|
1082
|
+
font-size: clamp(1.125rem, 5vw, 1.375rem);
|
|
1083
|
+
line-height: 1.35;
|
|
1084
|
+
}
|
|
1085
|
+
|
|
1086
|
+
.header-title-wrapper {
|
|
1087
|
+
flex-direction: column;
|
|
1088
|
+
align-items: stretch;
|
|
1089
|
+
gap: 12px;
|
|
1090
|
+
}
|
|
1091
|
+
|
|
1061
1092
|
.btn-theme {
|
|
1093
|
+
min-height: 44px;
|
|
1094
|
+
padding: 10px 16px;
|
|
1095
|
+
width: 100%;
|
|
1096
|
+
justify-content: center;
|
|
1097
|
+
}
|
|
1098
|
+
|
|
1099
|
+
.header-info {
|
|
1100
|
+
flex-direction: column;
|
|
1101
|
+
align-items: flex-start;
|
|
1102
|
+
gap: 8px;
|
|
1103
|
+
}
|
|
1104
|
+
|
|
1105
|
+
.header-info .info-separator {
|
|
1062
1106
|
display: none;
|
|
1063
1107
|
}
|
|
1064
1108
|
|
|
1065
|
-
.
|
|
1066
|
-
|
|
1109
|
+
.info-item {
|
|
1110
|
+
font-size: 14px;
|
|
1111
|
+
line-height: 1.5;
|
|
1112
|
+
word-break: break-all;
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1115
|
+
.section-header h2 {
|
|
1116
|
+
font-size: clamp(1rem, 4.5vw, 1.125rem);
|
|
1117
|
+
}
|
|
1118
|
+
|
|
1119
|
+
.marketing-text {
|
|
1120
|
+
font-size: 14px;
|
|
1121
|
+
padding: 12px;
|
|
1122
|
+
line-height: 1.65;
|
|
1123
|
+
}
|
|
1124
|
+
|
|
1125
|
+
.marketing-text strong {
|
|
1126
|
+
font-size: 17px;
|
|
1127
|
+
}
|
|
1128
|
+
|
|
1129
|
+
.health-overview {
|
|
1130
|
+
flex-direction: column;
|
|
1131
|
+
gap: 20px;
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
.loading-speed-charts {
|
|
1135
|
+
flex-direction: column;
|
|
1136
|
+
align-items: center;
|
|
1137
|
+
gap: 16px;
|
|
1138
|
+
}
|
|
1139
|
+
|
|
1140
|
+
.longterm-cards,
|
|
1141
|
+
.module-items-grid,
|
|
1142
|
+
.priority-items,
|
|
1143
|
+
.priority-columns {
|
|
1144
|
+
grid-template-columns: 1fr !important;
|
|
1145
|
+
}
|
|
1146
|
+
|
|
1147
|
+
.priority-items {
|
|
1148
|
+
display: grid !important;
|
|
1149
|
+
gap: 12px;
|
|
1150
|
+
}
|
|
1151
|
+
|
|
1152
|
+
.data-table-wrapper,
|
|
1153
|
+
.risk-table-wrapper {
|
|
1154
|
+
margin-inline: -4px;
|
|
1155
|
+
overflow-x: auto;
|
|
1156
|
+
overscroll-behavior-x: contain;
|
|
1157
|
+
-webkit-overflow-scrolling: touch;
|
|
1158
|
+
}
|
|
1159
|
+
|
|
1160
|
+
.data-table,
|
|
1161
|
+
.risk-table {
|
|
1162
|
+
min-width: 480px;
|
|
1163
|
+
font-size: 13px;
|
|
1164
|
+
}
|
|
1165
|
+
|
|
1166
|
+
.score-ring-wrapper {
|
|
1167
|
+
transform: scale(0.92);
|
|
1168
|
+
transform-origin: center top;
|
|
1067
1169
|
}
|
|
1068
1170
|
}
|
|
1069
1171
|
</style>
|
|
@@ -9,7 +9,7 @@ $ErrorActionPreference = 'Stop'
|
|
|
9
9
|
# -- Package info (injected at build time) ------------------------------------
|
|
10
10
|
$PKG_NAME = 'siluzan-tso-cli'
|
|
11
11
|
# PKG_VERSION 锁定到与本脚本同批构建产物一致的版本,避免与 dist/skill 错位
|
|
12
|
-
$PKG_VERSION = '1.1.31-beta.
|
|
12
|
+
$PKG_VERSION = '1.1.31-beta.3'
|
|
13
13
|
$CLI_BIN = 'siluzan-tso'
|
|
14
14
|
$SKILL_LABEL = 'Siluzan TSO'
|
|
15
15
|
$INSTALL_CMD = 'npm install -g siluzan-tso-cli@beta'
|
|
@@ -9,7 +9,7 @@ set -euo pipefail
|
|
|
9
9
|
# -- Package info (injected at build time) ------------------------------------
|
|
10
10
|
readonly PKG_NAME="siluzan-tso-cli"
|
|
11
11
|
# PKG_VERSION 锁定到与本脚本同批构建产物一致的版本,避免与 dist/skill 错位
|
|
12
|
-
readonly PKG_VERSION="1.1.31-beta.
|
|
12
|
+
readonly PKG_VERSION="1.1.31-beta.3"
|
|
13
13
|
readonly CLI_BIN="siluzan-tso"
|
|
14
14
|
readonly SKILL_LABEL="Siluzan TSO"
|
|
15
15
|
readonly INSTALL_CMD="npm install -g siluzan-tso-cli@beta"
|
package/package.json
CHANGED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
# 报告模板纲要(report-templates)
|
|
2
|
-
|
|
3
|
-
> **Agent Read 路径(推荐)**:`references/report-templates/<文件名>.md`
|
|
4
|
-
> **同源副本**:`report-templates/<文件名>.md`(Skill 根目录,与 HTML 样式模板同目录)
|
|
5
|
-
> **HTML 样式参考**(仅排版,不定义章节):`report-templates/report-template*.html`、`report-templates/*-report.html`
|
|
6
|
-
|
|
7
|
-
安装包构建时会将根目录 `report-templates/*.md` **同步到本目录**,避免 Agent 按 `references/` 前缀查找时 404。
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## 周期 / 账户报告
|
|
12
|
-
|
|
13
|
-
| 文件 | 工作流 | 说明 |
|
|
14
|
-
| ---------------------------------- | --------- | ------------------------------------- |
|
|
15
|
-
| `google-period-report.md` | **P4** | Google 账户周期报告(默认 HTML 纲要) |
|
|
16
|
-
| `google-period-report-excel.md` | **P4** | 用户要 Excel 时全文必读 |
|
|
17
|
-
| `meta-period-report.md` | **P4-FB** | Meta/Facebook 周期报告(默认 HTML) |
|
|
18
|
-
| `meta-period-report-excel.md` | **P4-FB** | Meta Excel 五 Sheet |
|
|
19
|
-
| `meta-account-diagnosis-report.md` | **P4-FB** | Meta 深度诊断 |
|
|
20
|
-
| `tiktok-period-report.md` | **P4** | TikTok 周期报告 |
|
|
21
|
-
| `bing-period-report.md` | **P4** | Bing 周期报告 |
|
|
22
|
-
|
|
23
|
-
## 诊断 / 专项
|
|
24
|
-
|
|
25
|
-
| 文件 | 工作流 | 说明 |
|
|
26
|
-
| ------------------------------------ | ------ | ------------------------------------------- |
|
|
27
|
-
| `google-ads-diagnosis.md` | **P1** | Google 广告诊断完整纲要 |
|
|
28
|
-
| `google-account-diagnosis-report.md` | **P1** | Google 账户深度诊断 |
|
|
29
|
-
| `website-diagnosis-report.md` | **P8** | 网站诊断(配合 `website-diagnosis render`) |
|
|
30
|
-
| `market-analysis-report.md` | **P9** | 战略市场分析交付检查清单 |
|
|
31
|
-
|
|
32
|
-
## 客户交付 / Excel
|
|
33
|
-
|
|
34
|
-
| 文件 | 工作流 | 说明 |
|
|
35
|
-
| ------------------------------ | ------ | --------------------------- |
|
|
36
|
-
| `okki-weekly-google-client.md` | **P6** | OKKI 周报(全文必读) |
|
|
37
|
-
| `google-inquiry-analysis.md` | **P7** | Google 询盘分析(全文必读) |
|
|
38
|
-
|
|
39
|
-
## 通用
|
|
40
|
-
|
|
41
|
-
| 文件 | 说明 |
|
|
42
|
-
| -------------------- | ---------------- |
|
|
43
|
-
| `REPORT-WORKFLOW.md` | 六步报告流程总览 |
|
|
44
|
-
|
|
45
|
-
章节细则另见 `references/core/playbooks.md`(P1–P9)、`references/core/intent-routing.md`(模糊话术消歧)与 `references/analytics/account-analytics.md`。
|