siluzan-tso-cli 1.1.28 → 1.1.29-beta.1
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 +2 -1
- package/dist/index.js +1 -1
- package/dist/skill/AGENTS.md +1 -0
- package/dist/skill/SKILL.md +3 -1
- package/dist/skill/_meta.json +2 -2
- package/dist/skill/references/accounts/accounts.md +3 -3
- package/dist/skill/references/accounts/finance.md +32 -32
- package/dist/skill/references/accounts/open-account-google-ui.md +1 -1
- package/dist/skill/references/analytics/account-analytics.md +2 -1
- package/dist/skill/references/analytics/rag.md +1 -1
- package/dist/skill/references/analytics/reporting.md +5 -5
- package/dist/skill/references/core/agent-conventions.md +13 -1
- package/dist/skill/references/core/deliverable-preflight.md +4 -2
- package/dist/skill/references/core/playbooks.md +9 -6
- package/dist/skill/references/core/setup.md +5 -5
- package/dist/skill/references/core/tips.md +6 -0
- package/dist/skill/references/misc/tso-home.md +2 -2
- package/dist/skill/report-templates/README.md +1 -0
- package/dist/skill/report-templates/REPORT-WORKFLOW.md +11 -3
- package/dist/skill/report-templates/google-period-report-excel.md +126 -0
- package/dist/skill/report-templates/google-period-report.md +2 -0
- package/dist/skill/report-templates/okki-weekly-google-client.md +0 -13
- package/dist/skill/scripts/install.ps1 +3 -3
- package/dist/skill/scripts/install.sh +3 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -43,7 +43,7 @@ HTML 报告模板外部资源:**ECharts** 统一使用 `https://staticpn.siluz
|
|
|
43
43
|
在**用户的目标项目根目录**执行(根据用户使用的助手选择 `--ai`):
|
|
44
44
|
|
|
45
45
|
```bash
|
|
46
|
-
npm install -g siluzan-tso-cli
|
|
46
|
+
npm install -g siluzan-tso-cli@beta
|
|
47
47
|
siluzan-tso init --ai cursor # 写入 Cursor(默认)
|
|
48
48
|
siluzan-tso init --ai cursor,claude # 同时写入多个平台
|
|
49
49
|
siluzan-tso init --ai all # 写入所有支持的平台
|
|
@@ -51,6 +51,7 @@ siluzan-tso init -d /path/to/skills # 写入自定义目录
|
|
|
51
51
|
siluzan-tso init --force # 强制覆盖已存在文件
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
+
> **注意**:当前为测试版(1.1.29-beta.1),供内部测试使用。正式发布后安装命令将改为 `npm install -g siluzan-tso-cli`。
|
|
54
55
|
|
|
55
56
|
| 助手 | 建议 `--ai` |
|
|
56
57
|
| ----------------------- | ------------------------------------ |
|
package/dist/index.js
CHANGED
package/dist/skill/AGENTS.md
CHANGED
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
| --- | --- |
|
|
38
38
|
| 网站诊断 | `report-templates/website-diagnosis-report.md` |
|
|
39
39
|
| 战略市场分析 | `report-templates/market-analysis-report.md` |
|
|
40
|
+
| Google 周期 Excel | `report-templates/google-period-report-excel.md`(P4,先 outline 后脚本) |
|
|
40
41
|
| OKKI 周报 | `report-templates/okki-weekly-google-client.md` |
|
|
41
42
|
| 询盘分析 | `report-templates/google-inquiry-analysis.md` |
|
|
42
43
|
|
package/dist/skill/SKILL.md
CHANGED
|
@@ -24,6 +24,8 @@ allowed-tools: Bash(siluzan-tso:*) Read Write
|
|
|
24
24
|
>
|
|
25
25
|
> **报告/Excel 交付前**:Read `references/core/deliverable-preflight.md`,**Read 最终产物**并按自检表确认币种与章节完整;币种只认当次 `list-accounts` 的 `currencyCode`。
|
|
26
26
|
>
|
|
27
|
+
> **Google Excel(P4)**:Read `report-templates/google-period-report-excel.md`;`list-accounts -k` 核验用户 ID;拉数后**先读齐**各 `*.outline.txt` 再写脚本;禁止 `cat|head` 预览业务 JSON、禁止第三方 xlsx Skill、禁止猜字段名。
|
|
28
|
+
>
|
|
27
29
|
> **HTML 终稿类报告(用户未指定格式时默认 HTML)**:网站诊断 P8(`website-diagnosis render`)、Meta 周期 P4-FB(`facebook-analysis render`)、战略市场 P9(`market-analysis render`)。Agent 只写 JSON,**禁止**仅交付 Markdown 摘要或纯 JSON 充当终稿。
|
|
28
30
|
>
|
|
29
31
|
> **开户**:首次进入开户话题须先向用户罗列该媒体(或未指明媒体时六平台)**全部必填项**,见 `references/accounts/open-account-by-media.md` §「首次响应硬规范」。
|
|
@@ -99,7 +101,7 @@ siluzan-tso -h # 查看帮助
|
|
|
99
101
|
| 用户意图(关键词) | 工作流 | 必读文档 |
|
|
100
102
|
| ------------------ | ------ | -------- |
|
|
101
103
|
| 单账户投放画像 / 诊断 | **P1** | `analytics/account-analytics.md` + `core/tips.md` + `core/deliverable-preflight.md` |
|
|
102
|
-
| Google 账户周期报告 | **P4** | `report-templates/google-period-report.md` + `analytics/account-analytics.md` + `core/deliverable-preflight.md` |
|
|
104
|
+
| Google 账户周期报告 | **P4** | `report-templates/google-period-report.md` + `analytics/account-analytics.md` + `core/tips.md` + `core/deliverable-preflight.md`;要 **Excel** 加 `report-templates/google-period-report-excel.md`(先 outline 后脚本,禁止第三方 xlsx Skill) |
|
|
103
105
|
| Meta/Facebook 周期或诊断报告 | **P4-FB** | `report-templates/meta-period-report.md` + `assets/meta-period-report-rules.md` + `analytics/facebook-analysis-guide.md`;要 Excel 加 `meta-period-report-excel.md` |
|
|
104
106
|
| TikTok / Bing 周期报告 | **P4** | `analytics/account-analytics.md`(report tiktok-*/bing-*)+ 对应 `report-templates/*-period-report.md` |
|
|
105
107
|
| 多账户 × 多维度批处理 | **P5** | `analytics/google-analysis-batch.md` + `analytics/account-analytics.md` |
|
package/dist/skill/_meta.json
CHANGED
|
@@ -300,7 +300,7 @@ siluzan-tso account-history --start 2026-03-01 --end 2026-03-31 --json-out ./sna
|
|
|
300
300
|
| 状态 | 含义 | 下一步操作 |
|
|
301
301
|
| ---------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
302
302
|
| `Pending` | 审核中 | 等待,可反复运行此命令轮询;审核周期因媒体而异 |
|
|
303
|
-
| `Approved` | 审核通过 | 运行 `list-accounts -m <媒体>` 确认账户已出现;引导用户充值激活(`config show` 取 `webUrl`,按 `finance.md` 打开对应媒体充值页;例如 Google 为 `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google`;Kwai、Yandex 当前没有对应充值界面) |
|
|
303
|
+
| `Approved` | 审核通过 | 运行 `list-accounts -m <媒体>` 确认账户已出现;引导用户充值激活(`config show` 取 `webUrl`,按 `finance.md` 打开对应媒体充值页;例如 Google 为 `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google`;Kwai、Yandex 当前没有对应充值界面) |
|
|
304
304
|
| `Rejected` | 被拒 | 查看 `--json-out` 落盘中的 `reason` 字段了解拒绝原因;修改资料后重新提交;若原因不明,引导用户联系丝路赞客服 |
|
|
305
305
|
|
|
306
306
|
---
|
|
@@ -853,7 +853,7 @@ siluzan-tso account email-deauth -c <mediaCustomerId> --invitation-id <id> --res
|
|
|
853
853
|
|
|
854
854
|
| 功能 | 媒体 | 网页路径 |
|
|
855
855
|
| --------------------------------------- | ------ | ---------------------------------------------- |
|
|
856
|
-
| **账户激活**(邀请他人激活 / 充值激活) | Google | `https://www.siluzan.com/v3/foreign_trade/tso/manageAccounts` |
|
|
856
|
+
| **账户激活**(邀请他人激活 / 充值激活) | Google | `https://www-ci.siluzan.com/v3/foreign_trade/tso/manageAccounts` |
|
|
857
857
|
|
|
858
858
|
**Agent 建议话术**:
|
|
859
859
|
|
|
@@ -862,5 +862,5 @@ siluzan-tso account email-deauth -c <mediaCustomerId> --invitation-id <id> --res
|
|
|
862
862
|
siluzan-tso config show # 查看 webUrl 字段
|
|
863
863
|
|
|
864
864
|
# 账户激活(Google)→ 引导至账户管理页
|
|
865
|
-
# https://www.siluzan.com/v3/foreign_trade/tso/manageAccounts
|
|
865
|
+
# https://www-ci.siluzan.com/v3/foreign_trade/tso/manageAccounts
|
|
866
866
|
```
|
|
@@ -121,10 +121,10 @@ siluzan-tso config show
|
|
|
121
121
|
|
|
122
122
|
| 媒体 | `mediaType` 参数 | 传统充值/现金充值链接 |
|
|
123
123
|
| ---- | ---------------- | ------------ |
|
|
124
|
-
| Google | `Google` | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google` |
|
|
125
|
-
| TikTok | `TikTok` | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=TikTok` |
|
|
126
|
-
| Meta / Facebook | `MetaAd` | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MetaAd` |
|
|
127
|
-
| Microsoft / Bing | `MicrosoftAd` | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MicrosoftAd` |
|
|
124
|
+
| Google | `Google` | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google` |
|
|
125
|
+
| TikTok | `TikTok` | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=TikTok` |
|
|
126
|
+
| Meta / Facebook | `MetaAd` | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MetaAd` |
|
|
127
|
+
| Microsoft / Bing | `MicrosoftAd` | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MicrosoftAd` |
|
|
128
128
|
|
|
129
129
|
> Yandex、Kwai 当前没有传统充值/现金充值界面;用户询问这些媒体充值时,不要拼接充值页链接,应说明当前网页不提供对应充值入口,并建议联系丝路赞客服或业务负责人确认处理方式。
|
|
130
130
|
|
|
@@ -132,8 +132,8 @@ siluzan-tso config show
|
|
|
132
132
|
|
|
133
133
|
| 媒体 | 批量充值链接 |
|
|
134
134
|
| ---- | ------------ |
|
|
135
|
-
| Google | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=Google` |
|
|
136
|
-
| TikTok | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=TikTok` |
|
|
135
|
+
| Google | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=Google` |
|
|
136
|
+
| TikTok | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=TikTok` |
|
|
137
137
|
|
|
138
138
|
> Meta、Microsoft/Bing、Yandex、Kwai 当前不要引导到批量充值页。
|
|
139
139
|
|
|
@@ -141,10 +141,10 @@ siluzan-tso config show
|
|
|
141
141
|
|
|
142
142
|
| 媒体 | 月结充值链接 |
|
|
143
143
|
| ---- | ------------ |
|
|
144
|
-
| Google | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=Google` |
|
|
145
|
-
| TikTok | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=TikTok` |
|
|
146
|
-
| Meta / Facebook | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MetaAd` |
|
|
147
|
-
| Microsoft / Bing | `https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MicrosoftAd` |
|
|
144
|
+
| Google | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=Google` |
|
|
145
|
+
| TikTok | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=TikTok` |
|
|
146
|
+
| Meta / Facebook | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MetaAd` |
|
|
147
|
+
| Microsoft / Bing | `https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MicrosoftAd` |
|
|
148
148
|
|
|
149
149
|
> Yandex、Kwai 当前不要引导到月结充值页。
|
|
150
150
|
|
|
@@ -155,17 +155,17 @@ siluzan-tso config show
|
|
|
155
155
|
```
|
|
156
156
|
需要进行充值,请访问丝路赞平台对应页面完成操作:
|
|
157
157
|
|
|
158
|
-
- Google 充值: https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
|
|
159
|
-
- TikTok 充值: https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=TikTok
|
|
160
|
-
- Meta 充值: https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MetaAd
|
|
161
|
-
- Microsoft/Bing 充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MicrosoftAd
|
|
162
|
-
- Google 批量充值: https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=Google
|
|
163
|
-
- TikTok 批量充值: https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=TikTok
|
|
164
|
-
- Google 月结充值: https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=Google
|
|
165
|
-
- TikTok 月结充值: https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=TikTok
|
|
166
|
-
- Meta 月结充值: https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MetaAd
|
|
167
|
-
- Microsoft/Bing 月结充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MicrosoftAd
|
|
168
|
-
- 丝路赞钱包: https://www.siluzan.com/v3/foreign_trade/tso/recharge/siluzanWallet
|
|
158
|
+
- Google 充值: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
|
|
159
|
+
- TikTok 充值: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=TikTok
|
|
160
|
+
- Meta 充值: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MetaAd
|
|
161
|
+
- Microsoft/Bing 充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MicrosoftAd
|
|
162
|
+
- Google 批量充值: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=Google
|
|
163
|
+
- TikTok 批量充值: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=TikTok
|
|
164
|
+
- Google 月结充值: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=Google
|
|
165
|
+
- TikTok 月结充值: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=TikTok
|
|
166
|
+
- Meta 月结充值: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MetaAd
|
|
167
|
+
- Microsoft/Bing 月结充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MicrosoftAd
|
|
168
|
+
- 丝路赞钱包: https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/siluzanWallet
|
|
169
169
|
|
|
170
170
|
Yandex、Kwai 当前没有传统充值/现金充值和月结充值界面,需联系丝路赞客服或业务负责人确认处理方式。
|
|
171
171
|
批量充值当前仅支持 Google 和 TikTok;Meta、Microsoft/Bing、Yandex、Kwai 不要引导到批量充值页。
|
|
@@ -174,17 +174,17 @@ Yandex、Kwai 当前没有传统充值/现金充值和月结充值界面,需
|
|
|
174
174
|
**示例:**
|
|
175
175
|
|
|
176
176
|
```
|
|
177
|
-
- Google 充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
|
|
178
|
-
- TikTok 充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=TikTok
|
|
179
|
-
- Meta 充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MetaAd
|
|
180
|
-
- Microsoft/Bing 充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MicrosoftAd
|
|
181
|
-
- Google 批量充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=Google
|
|
182
|
-
- TikTok 批量充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=TikTok
|
|
183
|
-
- Google 月结充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=Google
|
|
184
|
-
- TikTok 月结充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=TikTok
|
|
185
|
-
- Meta 月结充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MetaAd
|
|
186
|
-
- Microsoft/Bing 月结充值:https://www.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MicrosoftAd
|
|
187
|
-
- 丝路赞钱包:https://www.siluzan.com/v3/foreign_trade/tso/recharge/siluzanWallet
|
|
177
|
+
- Google 充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
|
|
178
|
+
- TikTok 充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=TikTok
|
|
179
|
+
- Meta 充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MetaAd
|
|
180
|
+
- Microsoft/Bing 充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=MicrosoftAd
|
|
181
|
+
- Google 批量充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=Google
|
|
182
|
+
- TikTok 批量充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay_batch?mediaType=TikTok
|
|
183
|
+
- Google 月结充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=Google
|
|
184
|
+
- TikTok 月结充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=TikTok
|
|
185
|
+
- Meta 月结充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MetaAd
|
|
186
|
+
- Microsoft/Bing 月结充值:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/accountBillingQuota?mediaType=MicrosoftAd
|
|
187
|
+
- 丝路赞钱包:https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/siluzanWallet
|
|
188
188
|
```
|
|
189
189
|
|
|
190
190
|
---
|
|
@@ -60,7 +60,7 @@ siluzan-tso open-account google-wizard
|
|
|
60
60
|
|
|
61
61
|
```bash
|
|
62
62
|
siluzan-tso account-history -m Google
|
|
63
|
-
# 审核通过后:config show → https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
|
|
63
|
+
# 审核通过后:config show → https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
|
|
64
64
|
```
|
|
65
65
|
|
|
66
66
|
---
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
> 本文件是**拉数命令与字段口径的真相源**;完整线性步骤已统一到 `references/core/playbooks.md`:
|
|
33
33
|
> 单户画像 **P1**、Google 周期报告 **P4**、Meta 周期 **P4-FB**、多账户批处理 **P5**、OKKI **P6**、询盘 **P7**。
|
|
34
34
|
> 「使用 okki 周报模板」固定话术 → **P6**,不按 `google-period-report.md` 默认 8 维追问。
|
|
35
|
+
> 用户要 **Google 周期 Excel**(非 OKKI/询盘)→ **P4** + 全文 Read `report-templates/google-period-report-excel.md`(先 outline 后写 xlsx 脚本)。
|
|
35
36
|
|
|
36
37
|
通用纪律(详见 `core/tips.md` 与 `core/deliverable-preflight.md`):
|
|
37
38
|
|
|
@@ -207,7 +208,7 @@ const data = d.record ?? d.items; // record 非空=汇总维度;否则=列表
|
|
|
207
208
|
|
|
208
209
|
日预算字段为 `budgetAmountYuan`(元),脚本可直接 `row.budgetAmountYuan`;网关原始 `budgetAmount`(分)已不再落盘。
|
|
209
210
|
|
|
210
|
-
#### 竞争指标 `competitiveMetrics
|
|
211
|
+
#### 竞争指标 `competitiveMetrics`
|
|
211
212
|
|
|
212
213
|
`campaigns[]` 每系列可带 `competitiveMetrics`,**值为 0~1 小数**(如 `0.0999` ≈ 9.99%)。常见字段:
|
|
213
214
|
|
|
@@ -192,9 +192,9 @@ siluzan-tso report push receive-emails -m Google [--json-out ./snap]
|
|
|
192
192
|
|
|
193
193
|
| 媒体 | 报告类型 | URL 模板 |
|
|
194
194
|
| ------ | ---------------- | -------------------------------------------------------- |
|
|
195
|
-
| Google | 日报(Daily) | `https://www.siluzan.com/media-report/publish/{entityId}?culture=zh-CN` |
|
|
196
|
-
| Google | 小时报(Hourly) | `https://www.siluzan.com/media-report/hour/{entityId}?culture=zh-CN` |
|
|
197
|
-
| TikTok | 日报 | `https://www.siluzan.com/media-report/publish/{entityId}?culture=zh-CN` |
|
|
195
|
+
| Google | 日报(Daily) | `https://www-ci.siluzan.com/media-report/publish/{entityId}?culture=zh-CN` |
|
|
196
|
+
| Google | 小时报(Hourly) | `https://www-ci.siluzan.com/media-report/hour/{entityId}?culture=zh-CN` |
|
|
197
|
+
| TikTok | 日报 | `https://www-ci.siluzan.com/media-report/publish/{entityId}?culture=zh-CN` |
|
|
198
198
|
|
|
199
199
|
`entityId` 来自 `siluzan-tso report list --json-out ./snap` 中每条记录的 `entityId` 字段。
|
|
200
200
|
|
|
@@ -207,8 +207,8 @@ siluzan-tso report list -m Google --json-out ./snap
|
|
|
207
207
|
|
|
208
208
|
# 第二步:查看 webUrl
|
|
209
209
|
siluzan-tso config show
|
|
210
|
-
# webUrl: https://www.siluzan.com
|
|
210
|
+
# webUrl: https://www-ci.siluzan.com
|
|
211
211
|
|
|
212
212
|
# 第三步:拼接链接(Google 日报)
|
|
213
|
-
# https://www.siluzan.com/media-report/publish/rpt_abc123?culture=zh-CN
|
|
213
|
+
# https://www-ci.siluzan.com/media-report/publish/rpt_abc123?culture=zh-CN
|
|
214
214
|
```
|
|
@@ -25,7 +25,19 @@
|
|
|
25
25
|
- **禁止**「上次已经读过 `accounts/accounts.md` / `google-ads/google-ads.md`,本任务直接 `siluzan-tso …`」
|
|
26
26
|
- **禁止**用对话记忆中的示例 ID、金额、命令 flags 代替当次 Read 文档
|
|
27
27
|
- **禁止**跳过 `references/core/tips.md` 里的 outline→脚本读 JSON 顺序
|
|
28
|
-
- **禁止**用 Read / `cat` / `type` 打开 `--json-out` 落盘的**业务数据** `*.json`(`campaigns-*.json`、`list-accounts-*.json` 等);只允许 Read 体积小的 `*.outline.txt` 与 `references/` 文档
|
|
28
|
+
- **禁止**用 Read / `cat` / `type` / `head` 打开 `--json-out` 落盘的**业务数据** `*.json`(`campaigns-*.json`、`list-accounts-*.json` 等);只允许 Read 体积小的 `*.outline.txt` 与 `references/` 文档
|
|
29
|
+
- **禁止**在 siluzan-tso 报告任务中加载宿主「xlsx / Excel」第三方 Skill 代替本 Skill 的拉数 + outline + 脚本流程
|
|
30
|
+
- **禁止**用户给出 `mediaCustomerId` 后不用 `-k` 核验、翻页 `grep` 列表并**换成另一个账户 ID** 继续拉数/写报告
|
|
31
|
+
|
|
32
|
+
### 报告类常见违规(对照修复)
|
|
33
|
+
|
|
34
|
+
| 违规现象 | 正确做法 |
|
|
35
|
+
| -------- | -------- |
|
|
36
|
+
| 未读 `*.outline.txt` 就写 Excel,列名用 `keywordText` / `query` / `geoName` | 先 Read 各 section 的 outline;字段以最后一行 TS 类型为准(如 `keyword`、`searchTermText`、`countryOrRegion`) |
|
|
37
|
+
| `cat keywords-*.json \| python -m json.tool \| head` 探结构 | 只 Read `keywords-*.outline.txt`;业务 JSON 仅在脚本内读取 |
|
|
38
|
+
| `list-accounts` 第一页未见 ID,改用列表里「另一个」账户 | `list-accounts -m Google -k <用户ID>`;无结果则告知用户,停止 |
|
|
39
|
+
| 用户要 `2702960720`,拉数/脚本却用 `9322098303` | 全流程同一 `mediaCustomerId`;文件名以 stdout `accountId` 为准 |
|
|
40
|
+
| 交付 xlsx 前未对照 `deliverable-preflight.md` | 交付前自检表 A/B/C;xlsx 附脚本 stdout 行数/汇总摘要 |
|
|
29
41
|
|
|
30
42
|
---
|
|
31
43
|
|
|
@@ -50,7 +50,9 @@
|
|
|
50
50
|
- [ ] 模板要求的**每一章/Sheet**在产物里都存在(标题或 Sheet 名可对应)
|
|
51
51
|
- [ ] **无**整章空白(除非该章标注 `[ 数据不可用:… ]`)
|
|
52
52
|
- [ ] 执行摘要 / 概览:有消耗、展示、点击等**至少一项非空数字**(或明确写无数据)
|
|
53
|
-
- [ ] 周期报告默认维(P4):概览、日趋势、系列、设备、地域、关键词等**均有对应段落**(Meta 无接口的维度按模板写「未提供」)
|
|
53
|
+
- [ ] 周期报告默认维(P4 HTML):概览、日趋势、系列、设备、地域、关键词等**均有对应段落**(Meta 无接口的维度按模板写「未提供」)
|
|
54
|
+
- [ ] P4 **Excel**:每个用户要求的 Sheet 存在;表头列能在当次 `*.outline.txt` 找到对应字段;**无** outline 中不存在的空列名
|
|
55
|
+
- [ ] P4 **Excel**:产物内账户 ID = 用户当轮给出的 `mediaCustomerId`(非列表里误选的其它户)
|
|
54
56
|
- [ ] 优化建议:独立一节,**不是**只有表格没有文字(Meta:**4 条 + 7 维补充**,每条引用当次数字,见 `meta-period-report-rules.md`)
|
|
55
57
|
- [ ] Google 诊断:每模块除表格外有「分析」+「建议」(见 `google-ads-diagnosis.md`)
|
|
56
58
|
|
|
@@ -92,7 +94,7 @@
|
|
|
92
94
|
| Playbook | 审阅时重点 |
|
|
93
95
|
| -------- | ---------- |
|
|
94
96
|
| P1 | 画像是否含 stats + 系列要点;币种 |
|
|
95
|
-
| P4 |
|
|
97
|
+
| P4 | 默认 HTML:`google-period-report.md` 8 块是否齐;**Excel**:`google-period-report-excel.md` 用户 Sheet 是否齐、列字段是否来自 outline、`accountId` 是否与用户一致 |
|
|
96
98
|
| P4-FB | 对照 `meta-period-report-rules.md`:**4 条建议各 ≥150 字** + **7 维补充建议**;HTML 须无「待 Agent 撰写」占位,含执行摘要/四问/红绿灯/优化建议节;Excel:总数据叙事 4 块非空话 |
|
|
97
99
|
| P6 / P7 | 按各自 `report-templates/*.md` Sheet/章节表逐项 |
|
|
98
100
|
| P8 | **HTML 终稿**(非 Markdown):`website-diagnosis-report.md` 六模块章节齐全;雷达图/得分环/条形图/Lighthouse 由 `render` 注入;Lighthouse 缺失时 callout 已说明 |
|
|
@@ -57,13 +57,16 @@
|
|
|
57
57
|
|
|
58
58
|
## P4 · Google 账户周期报告
|
|
59
59
|
|
|
60
|
-
- **触发**:Google
|
|
61
|
-
- **必读**:`report-templates/google-period-report.md`、`analytics/account-analytics.md`、`core/tips.md`、`core/deliverable-preflight.md
|
|
60
|
+
- **触发**:Google 账户某区间的周期/月度/季度汇总报告;或用户列出 Sheet/章节要 **Excel**(非 OKKI / 询盘)。
|
|
61
|
+
- **必读**:`report-templates/google-period-report.md`、`analytics/account-analytics.md`、`core/tips.md`、`core/deliverable-preflight.md`;**要 Excel** 加 `report-templates/google-period-report-excel.md`(全文)。
|
|
62
62
|
- **步骤**:
|
|
63
|
-
1.
|
|
64
|
-
2.
|
|
65
|
-
3.
|
|
66
|
-
|
|
63
|
+
1. **账户核验**:`list-accounts -m Google -k <mediaCustomerId> --json-out <dir>`;无记录则停止并告知用户,**禁止**翻页 grep 换 ID。
|
|
64
|
+
2. 确认时间范围;区间 > 3 个月时分段(季度/月)。
|
|
65
|
+
3. **拉数**:用户已指定 Sheet/维度 → 只拉对应 `--sections`(见 `google-period-report-excel.md` 映射表);未指定 → 按 `google-period-report.md` 默认 8 维,并可并行追问可选追加。
|
|
66
|
+
4. **门禁**:对每个 section Read `<section>-<accountId>_*.outline.txt`(**禁止** `cat|head` 预览业务 JSON)。
|
|
67
|
+
5. 脚本读盘写产物:默认 **HTML**(`report-template*.html` 版式参考);用户要 **Excel** → Agent 脚本写 xlsx(**禁止**宿主第三方 xlsx Skill;**无** CLI excel 子命令)。
|
|
68
|
+
6. 默认 HTML 报告须含:账户概览、投放趋势、Top 关键词/系列/地区分布、优化建议;用户定制 Excel 以用户 Sheet 清单为准。
|
|
69
|
+
- **交付/确认**:**Read 最终 HTML/xlsx**(或 xlsx 贴 `deliverable-preflight` 自检表 + 脚本 stdout),对照当次模板与 `deliverable-preflight.md`;`accountId` 须与用户给的 `mediaCustomerId` 一致。
|
|
67
70
|
|
|
68
71
|
> 用户用「OKKI 周报」固定话术 → 改走 **P6**,不按默认 8 维追问。
|
|
69
72
|
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
## 安装 CLI
|
|
11
11
|
|
|
12
12
|
```bash
|
|
13
|
-
npm install -g siluzan-tso-cli
|
|
13
|
+
npm install -g siluzan-tso-cli@beta
|
|
14
14
|
```
|
|
15
15
|
|
|
16
16
|
---
|
|
@@ -64,7 +64,7 @@ siluzan-tso config set --api-key <Key> # 或 config 直接写入
|
|
|
64
64
|
siluzan-tso config set --token <Token> # 备用:设置 JWT Token
|
|
65
65
|
```
|
|
66
66
|
|
|
67
|
-
API Key 获取入口:`https://www.siluzan.com/v3/foreign_trade/settings/apiKeyManagement`
|
|
67
|
+
API Key 获取入口:`https://www-ci.siluzan.com/v3/foreign_trade/settings/apiKeyManagement`
|
|
68
68
|
|
|
69
69
|
```bash
|
|
70
70
|
# 第 1 步:让用户报出手机号后,立刻发码(命令立即返回,不会等待输入)
|
|
@@ -129,9 +129,9 @@ siluzan-tso config show
|
|
|
129
129
|
|
|
130
130
|
```
|
|
131
131
|
构建环境 : production
|
|
132
|
-
apiBaseUrl : https://tso-api.siluzan.com
|
|
133
|
-
googleApiUrl : https://googleapi.mysiluzan.com
|
|
134
|
-
webUrl : https://www.siluzan.com
|
|
132
|
+
apiBaseUrl : https://tso-api-ci.siluzan.com
|
|
133
|
+
googleApiUrl : https://googleapi-ci.mysiluzan.com
|
|
134
|
+
webUrl : https://www-ci.siluzan.com
|
|
135
135
|
apiKey : abcd****1234
|
|
136
136
|
```
|
|
137
137
|
|
|
@@ -43,6 +43,12 @@
|
|
|
43
43
|
- 把 outline 或整段 JSON 贴进对话当结论。
|
|
44
44
|
4. **交付物**用代码写出(HTML / Excel / PDF / PPT / Markdown 等);向用户展示的数字须来自**脚本 stdout**,不要在对话里手填数。
|
|
45
45
|
|
|
46
|
+
**Google 周期 Excel(P4)附加门禁**(详见 `report-templates/google-period-report-excel.md`):
|
|
47
|
+
|
|
48
|
+
- 账户:`list-accounts -m Google -k <用户 ID>`,无记录则停止;**禁止**翻页 grep 换户。
|
|
49
|
+
- 写 xlsx 脚本前:Read **每一个** 当次 section 的 `*.outline.txt`;**禁止** `cat|json.tool|head` 探业务 JSON。
|
|
50
|
+
- **禁止**加载宿主第三方 xlsx Skill;字段名禁止猜(如 `keywordText`→应为 `keyword`,`query`→应为 `searchTermText`)。
|
|
51
|
+
|
|
46
52
|
> 这个顺序对所有三类快照统一生效:通用业务命令(`cli-manifest[-<id>].json`)、`google-analysis`(`manifest-<accountId>.json`)、`report …` 分析(`report-manifest[-<accountId>].json`)。三种 summary 都带 `outlineFile`、`agentHint` 字段。
|
|
47
53
|
|
|
48
54
|
### Google `campaigns-*.json` 金额字段
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
siluzan-tso config show # 取 webUrl
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
首页地址:`https://www.siluzan.com/v3/foreign_trade/tso/home`
|
|
9
|
+
首页地址:`https://www-ci.siluzan.com/v3/foreign_trade/tso/home`
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
@@ -25,7 +25,7 @@ siluzan-tso config show # 取 webUrl
|
|
|
25
25
|
|
|
26
26
|
## 推荐话术
|
|
27
27
|
|
|
28
|
-
1. **「和首页一样的总览」** → 打开 `https://www.siluzan.com/v3/foreign_trade/tso/home`。
|
|
28
|
+
1. **「和首页一样的总览」** → 打开 `https://www-ci.siluzan.com/v3/foreign_trade/tso/home`。
|
|
29
29
|
2. **「某个 Google 账户昨天花了多少」** → `list-accounts -m Google` + `stats -m Google -a <id>`。
|
|
30
30
|
3. **「有待充值账户」** → 说明聚合数据在首页;CLI 可 `list-accounts` + `balance` 逐户排查,或引导充值页。
|
|
31
31
|
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
| 文件 | 适用场景 |
|
|
17
17
|
| ------------------------------------ | -------------------------------------------------------------------------------------------------------------- |
|
|
18
18
|
| `google-period-report.md` | Google 账户分析报告(周期/月度/诊断均用此模板) |
|
|
19
|
+
| `google-period-report-excel.md` | **仅用户要 Excel 时**(P4 定制 Sheet):先 `*.outline.txt` 后脚本写 xlsx;账户须 `-k` 核验,无 CLI excel 子命令 |
|
|
19
20
|
| `google-account-diagnosis-report.md` | Google 账户深度诊断(健康度/转化/结构等) |
|
|
20
21
|
| `google-ads-diagnosis.md` | Google **广告诊断**完整纲要(HTML 区块、**每日趋势 2 位小数**、**每模块必填分析/建议**) |
|
|
21
22
|
| `meta-period-report.md` / `.html` | **Meta(Facebook)周期报告(默认)**:四步流程 → `facebook-analysis render` 出 HTML,见 P4-FB |
|
|
@@ -42,6 +42,14 @@
|
|
|
42
42
|
|
|
43
43
|
---
|
|
44
44
|
|
|
45
|
+
### 步骤 3b:Google Excel 门禁(用户要 xlsx 时必做)
|
|
46
|
+
|
|
47
|
+
在步骤 4 拉数完成、步骤 5 写脚本**之前**:
|
|
48
|
+
|
|
49
|
+
1. `list-accounts -m Google -k <用户 ID> --json-out` 核验账户(**禁止**全表 grep 换 ID)。
|
|
50
|
+
2. Read 本次每个 section 的 **`*.outline.txt`**(见 `google-period-report-excel.md` §执行门禁)。
|
|
51
|
+
3. **禁止** `cat|json.tool|head` 或 Read 业务 `*.json` 探字段;**禁止**加载宿主第三方 xlsx Skill。
|
|
52
|
+
|
|
45
53
|
### 步骤 4:拉取数据
|
|
46
54
|
|
|
47
55
|
- **`google-analysis` / `report …` 账户分析子命令**:统一 **`--json-out <目录>`** 落盘,再由脚本读 **`manifest-<accountId>.json` / `report-manifest-<accountId>.json`**(清单文件名见 stdout 摘要的 `manifestFile`)与各 **`<section>-<accountId>.json`**(见 `references/analytics/account-analytics.md`)。
|
|
@@ -71,7 +79,7 @@
|
|
|
71
79
|
| 媒体 | 用户未指定格式 | 用户指定 Excel |
|
|
72
80
|
| ---- | -------------- | -------------- |
|
|
73
81
|
| **Meta/Facebook** | `facebook-analysis render` → **HTML**(必做) | Agent 脚本按 `meta-period-report-excel.md` 写 xlsx;**不**默认 `render` |
|
|
74
|
-
| **Google** | 按 `report-template*.html` 写 HTML(默认 `report-template.html`) |
|
|
82
|
+
| **Google** | 按 `report-template*.html` 写 HTML(默认 `report-template.html`) | **周期/定制 Sheet**:`google-period-report-excel.md`(P4,先 outline 后脚本);**OKKI**:P6;**询盘**:P7 |
|
|
75
83
|
| **网站诊断** | `website-diagnosis render` → HTML | — |
|
|
76
84
|
|
|
77
85
|
**禁止**:Meta 周期报告默认只交 Markdown/JSON;禁止 Agent 手写 Meta HTML。
|
|
@@ -95,8 +103,8 @@
|
|
|
95
103
|
|
|
96
104
|
## 未知报告名处理
|
|
97
105
|
|
|
98
|
-
| 用户措辞
|
|
99
|
-
|
|
|
106
|
+
| 用户措辞 | 映射 |
|
|
107
|
+
| ------- | ---- |
|
|
100
108
|
| 月报、周报、投放总结、效果回顾 | 周期分析 → 对应媒体 `*-period-report.md` |
|
|
101
109
|
| **使用 okki 周报模板 / OKKI 周报 / okki 周报**(Google + 区间) | **固定话术 + 精简表 +(按需)Excel** → `okki-weekly-google-client.md`(见 SKILL **P6**);Excel **仅**由 Agent 脚本生成,**无** CLI 内置写表子命令 |
|
|
102
110
|
| **Goog账户询盘分析 / Google 账户询盘分析 / 分析XXX Google账号的询盘效果 / 我给你询盘信息分析Google账号XXX效果**(或含「询盘 + 账户 + Google」三要素) | **询盘 + 账户合并分析 + 严格 3 个月 + 8 Sheet xlsx** → `google-inquiry-analysis.md`(见 SKILL **P7**);询盘资料用户上传任意载体,宿主 Agent 解析落盘 `inquiries.json`,xlsx **仅**由 Agent 脚本生成 |
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
# Google 账户周期报告 — Excel 交付规格
|
|
2
|
+
|
|
3
|
+
> **适用场景**:用户明确要求 **Google 账户 + 统计区间 + Excel/xlsx**,且**未**使用 OKKI / 询盘固定话术。
|
|
4
|
+
> **工作流**:**P4**(与 `google-period-report.md` 共用拉数维度;交付形态不同)。
|
|
5
|
+
> **禁止**:加载宿主「xlsx / Excel」第三方 Skill 代替本流程;**无** CLI 内置写表子命令,须 Agent 脚本(`exceljs` / `xlsx` / `openpyxl`)读落盘 JSON 写 `.xlsx`。
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 执行门禁(**全部满足后才允许写脚本**)
|
|
10
|
+
|
|
11
|
+
以下任一项未完成 → **禁止** `google-analysis` 之后的写 Excel 步骤:
|
|
12
|
+
|
|
13
|
+
| # | 门禁 | 命令 / 动作 |
|
|
14
|
+
| - | ---- | ----------- |
|
|
15
|
+
| 1 | Read 当次必读 | `core/agent-conventions.md`、`core/tips.md`、`analytics/account-analytics.md`、`google-period-report.md`(本文)、`core/deliverable-preflight.md` |
|
|
16
|
+
| 2 | **账户 ID 核验** | `siluzan-tso list-accounts -m Google -k <用户给的 mediaCustomerId> --json-out ./snap-p4` |
|
|
17
|
+
| 3 | 确认 `currencyCode` | 来自步骤 2 落盘 JSON 的 `items[].ma.currencyCode`(或表格列「币种」) |
|
|
18
|
+
| 4 | **拉数** | `google-analysis -a <已核验的 mediaCustomerId> --start … --end … --sections … --json-out <dir>` |
|
|
19
|
+
| 5 | **先 outline 后脚本** | 对本次 `--sections` 涉及的**每一个**维度,Read 同目录 `<section>-<accountId>_*.outline.txt`(或 stdout 摘要里的 `outlineFile`) |
|
|
20
|
+
| 6 | 写脚本 | 字段名**只**来自 outline 最后一行 TS 类型;业务 JSON **仅**在脚本内 `readFileSync` / `require` |
|
|
21
|
+
| 7 | 交付前审阅 | 按 `deliverable-preflight.md` 自检;xlsx 无法 Read 时须贴自检表 + 脚本 stdout 摘要 |
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## 账户 ID 纪律(来自真实踩坑)
|
|
26
|
+
|
|
27
|
+
用户给出的 `mediaCustomerId`(如 `2702960720`)**必须**与后续全流程一致:
|
|
28
|
+
|
|
29
|
+
- **必须**:`list-accounts -m Google -k <该 ID>` 单户查询;404 / 空列表 → 告知用户 ID 不存在,**停止**,不得换号继续。
|
|
30
|
+
- **禁止**:`list-accounts` 翻页 + `grep` 猜账户;禁止把列表里「看起来像」的另一账户(如 `9322098303`)当作用户要的 ID。
|
|
31
|
+
- **禁止**:目录名用用户 ID、但 `google-analysis -a` 或脚本里读文件用另一个 ID。
|
|
32
|
+
- **禁止**:`entityId` 与 `mediaCustomerId` 混用(见 `agent-conventions.md`)。
|
|
33
|
+
|
|
34
|
+
核验通过后,在报告首行/封面写:`统计区间:YYYY-MM-DD ~ YYYY-MM-DD(货币:XXX)`,且账户 ID 与 `list-accounts` 输出一致。
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## 用户指定 Sheet → CLI section 映射
|
|
39
|
+
|
|
40
|
+
用户已列出 Sheet 名时,**以用户清单为准**拉数(不必等追问);未列出的 P4 默认维度(系列/设备/优化建议等)**不强行追加**,除非用户要求。
|
|
41
|
+
|
|
42
|
+
| 用户 Sheet(常见表述) | `google-analysis` section | 读法(schemaVersion 3) |
|
|
43
|
+
| ---------------------- | ------------------------- | ------------------------ |
|
|
44
|
+
| 账户概览 / 执行摘要 | `overview` | `record`(汇总维度) |
|
|
45
|
+
| 每日报告 / 每日趋势 | `daily-metrics` | `items[]` |
|
|
46
|
+
| 关键字 / 关键词报告 | `keywords` | `items[]` |
|
|
47
|
+
| 搜索字词 / 搜索词报告 | `search-terms` | `items[]` |
|
|
48
|
+
| 国家 / 地域 / 地区报告 | `geographic` | `items[]` |
|
|
49
|
+
| 广告系列(若用户要) | `campaigns` | `items[]` |
|
|
50
|
+
| 设备(若用户要) | `devices` 或 `campaign-device` | `items[]`;OKKI 口径用后者 |
|
|
51
|
+
|
|
52
|
+
**一次拉齐示例**(用户要 5 Sheet:概览+每日+关键词+搜索词+国家):
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
mkdir -p ./snap-p4
|
|
56
|
+
siluzan-tso list-accounts -m Google -k <id> --json-out ./snap-p4
|
|
57
|
+
|
|
58
|
+
siluzan-tso google-analysis -a <id> --start <S> --end <E> --json-out ./snap-p4 \
|
|
59
|
+
--sections overview,daily-metrics,keywords,search-terms,geographic
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
落盘文件名以 stdout 摘要 `results[].file` 为准(常含 `_<start>-<end>` 后缀),**禁止**硬编码 `overview.json`。
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## outline → 脚本:禁止猜的字段名
|
|
67
|
+
|
|
68
|
+
以下「直觉名」在 **schemaVersion 3** 落盘中**不存在**或易错——须以当次 `*.outline.txt` 为准:
|
|
69
|
+
|
|
70
|
+
| 维度 | ❌ 禁止猜 | ✅ outline 真实字段 |
|
|
71
|
+
| ---- | -------- | ------------------- |
|
|
72
|
+
| `keywords` | `keywordText`、`status`、`matchType`(单独作展示列) | `keyword`、`userStatus`、`keywordMatchTypeZh`(或 `keywordMatchType`) |
|
|
73
|
+
| `search-terms` | `query` | `searchTermText`;匹配类型用 `matchTypeZh`;状态用 `queryTargetingStatusZh` |
|
|
74
|
+
| `geographic` | `geoName`、`countryCriterionIdName` | `countryOrRegion`、`countryNameZh`、`countryCode` |
|
|
75
|
+
| 全维度 CTR/转化率 | 已是 0~100 的百分数 | `ctr` / `conversionRate` 为 **0~1 小数**;Excel 写入原值 + 单元格 `0.00%`,或文案 `(v*100).toFixed(2)+'%'` |
|
|
76
|
+
|
|
77
|
+
**数据访问统一规则**(outline 头部注释已写明):
|
|
78
|
+
|
|
79
|
+
- `record !== null` → 读 `record`(如 `overview`)
|
|
80
|
+
- 否则 → 读 `items[]`
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## 禁止的数据探查方式
|
|
85
|
+
|
|
86
|
+
写 Excel 脚本**之前**,不得用以下方式「预览」业务 JSON(与 `agent-conventions.md`、`tips.md` 一致):
|
|
87
|
+
|
|
88
|
+
- `cat …json | python -m json.tool | head`
|
|
89
|
+
- 宿主 **Read** 打开 `keywords-*.json`、`overview-*.json` 等落盘业务文件
|
|
90
|
+
- 把 JSON 片段贴进对话当字段依据
|
|
91
|
+
|
|
92
|
+
**允许**:Read `*.outline.txt`;脚本 `console.log` 打印行数 / 首行抽样 / 汇总 totals(stdout 给 Agent 核对)。
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Excel 版式(无运营固定样表时的最小约定)
|
|
97
|
+
|
|
98
|
+
用户未指定表头时,可按业务语义建 Sheet,但须满足:
|
|
99
|
+
|
|
100
|
+
1. **Sheet 名**与用户要求一致(如 `账户概览`、`每日报告`、`关键字报告`、`搜索字词报告`、`国家报告`)。
|
|
101
|
+
2. **首行或 R2** 含统计区间 + 币种(与 `list-accounts` 一致)。
|
|
102
|
+
3. **列表 Sheet**:R1 为表头;列名与 outline 字段含义对应,不造 outline 中不存在的列。
|
|
103
|
+
4. **数值**:金额 2 位小数;`ctr`/`conversionRate` 按上文 0~1 口径;禁止对 JSON 比率再 ÷100。
|
|
104
|
+
5. 某维度拉数失败:该 Sheet 写 `[ 数据不可用:<原因> ]`,禁止留空或编造。
|
|
105
|
+
|
|
106
|
+
有 OKKI 固定话术时改走 **P6**(`okki-weekly-google-client.md`),**不**用本文。
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## 交付前自检(P4 Excel 专用)
|
|
111
|
+
|
|
112
|
+
对照 `deliverable-preflight.md` 表 A/B/C,并额外确认:
|
|
113
|
+
|
|
114
|
+
- [ ] `google-analysis` 的 `accountId`(stdout 摘要)= 用户要求的 `mediaCustomerId`
|
|
115
|
+
- [ ] 每个 Sheet 列均能在对应 `*.outline.txt` 中找到字段源
|
|
116
|
+
- [ ] 脚本 stdout 打印的 `itemCount` 与 Excel 数据行数一致(±合计行)
|
|
117
|
+
- [ ] 未使用第三方 xlsx Skill 替代本 Skill 拉数与字段口径
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## 相关文档
|
|
122
|
+
|
|
123
|
+
- `google-period-report.md` — 默认维度与可选追加
|
|
124
|
+
- `okki-weekly-google-client.md` — OKKI 固定 5 Sheet(P6)
|
|
125
|
+
- `references/core/tips.md` — 摘要 → outline → 脚本
|
|
126
|
+
- `references/core/playbooks.md` — P4 步骤卡片
|
|
@@ -55,19 +55,6 @@ siluzan-tso google-analysis -a <mediaCustomerId> --start <S> --end <E> --json-ou
|
|
|
55
55
|
|
|
56
56
|
---
|
|
57
57
|
|
|
58
|
-
## Subagent 编排(可选)
|
|
59
|
-
|
|
60
|
-
宿主支持 Task / 子会话时,主 Agent 先 Read `references/core/subagent-orchestration.md` § P6,再决定是否委派:
|
|
61
|
-
|
|
62
|
-
| 阶段 | 建议 | handoff |
|
|
63
|
-
| ---- | ---- | ------- |
|
|
64
|
-
| 拉数(本节命令) | 主会话或 Bash/Task | `snippets/handoff-p6-okki.md` §阶段 A |
|
|
65
|
-
| 写 xlsx + 话术 | 主 Agent 或单 Task | 同文件 §阶段 B |
|
|
66
|
-
|
|
67
|
-
子会话只回传 manifest/exitCode/产出路径;**禁止**把 JSON 全文贴回主对话。写操作确认仍由主 Agent 负责。
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
58
|
## xlsx 版式规范
|
|
72
59
|
|
|
73
60
|
工作簿 → Sheet 名(须完全一致)→ 版式。**不**单独建「广告系列」Sheet(系列表在 `账户报告` 内)。状态枚举若为英文须转中文。
|
|
@@ -9,11 +9,11 @@ $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.
|
|
12
|
+
$PKG_VERSION = '1.1.29-beta.1'
|
|
13
13
|
$CLI_BIN = 'siluzan-tso'
|
|
14
14
|
$SKILL_LABEL = 'Siluzan TSO'
|
|
15
|
-
$INSTALL_CMD = 'npm install -g siluzan-tso-cli'
|
|
16
|
-
$WEB_BASE = 'https://www.siluzan.com'
|
|
15
|
+
$INSTALL_CMD = 'npm install -g siluzan-tso-cli@beta'
|
|
16
|
+
$WEB_BASE = 'https://www-ci.siluzan.com'
|
|
17
17
|
|
|
18
18
|
# -- Constants ----------------------------------------------------------------
|
|
19
19
|
$NODE_MAJOR_MIN = 18
|
|
@@ -9,11 +9,11 @@ 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.
|
|
12
|
+
readonly PKG_VERSION="1.1.29-beta.1"
|
|
13
13
|
readonly CLI_BIN="siluzan-tso"
|
|
14
14
|
readonly SKILL_LABEL="Siluzan TSO"
|
|
15
|
-
readonly INSTALL_CMD="npm install -g siluzan-tso-cli"
|
|
16
|
-
readonly WEB_BASE="https://www.siluzan.com"
|
|
15
|
+
readonly INSTALL_CMD="npm install -g siluzan-tso-cli@beta"
|
|
16
|
+
readonly WEB_BASE="https://www-ci.siluzan.com"
|
|
17
17
|
|
|
18
18
|
# -- Constants ----------------------------------------------------------------
|
|
19
19
|
readonly NODE_MAJOR_MIN=18
|