siluzan-tso-cli 1.1.45-beta.5 → 1.1.46-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 +1 -1
- package/dist/index.js +2 -13
- package/dist/skill/_meta.json +2 -2
- package/dist/skill/references/report-templates/yandex-period-report-excel.md +1 -1
- package/dist/skill/references/report-templates/yandex-period-report.md +0 -1
- package/dist/skill/report-templates/yandex-period-report-excel.md +1 -1
- package/dist/skill/report-templates/yandex-period-report.html +1 -15
- package/dist/skill/report-templates/yandex-period-report.md +0 -1
- package/dist/skill/scripts/install.ps1 +1 -1
- package/dist/skill/scripts/install.sh +1 -1
- package/package.json +1 -1
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.
|
|
54
|
+
> **注意**:当前为测试版(1.1.46-beta.1),供内部测试使用。正式发布后安装命令将改为 `npm install -g siluzan-tso-cli`。
|
|
55
55
|
|
|
56
56
|
| 助手 | 建议 `--ai` |
|
|
57
57
|
| ----------------------- | ------------------------------------ |
|
package/dist/index.js
CHANGED
|
@@ -134697,16 +134697,6 @@ function validateYandexPeriodReportContent(data) {
|
|
|
134697
134697
|
if (!textLen7(meta.accountId)) {
|
|
134698
134698
|
pushMissing6(missing, "meta-account", "\u5143\u4FE1\u606F", "\u8D26\u6237 ID", "meta.accountId \u5FC5\u586B");
|
|
134699
134699
|
}
|
|
134700
|
-
const executiveSummary = asArray7(narrative.executiveSummary).filter((p) => textLen7(p) > 0);
|
|
134701
|
-
if (executiveSummary.length < 1) {
|
|
134702
|
-
pushMissing6(
|
|
134703
|
-
missing,
|
|
134704
|
-
"narrative-executive-summary",
|
|
134705
|
-
"\u6267\u884C\u6458\u8981",
|
|
134706
|
-
"narrative.executiveSummary",
|
|
134707
|
-
"\u22651 \u6BB5\u6267\u884C\u6458\u8981\uFF0C\u6982\u8FF0\u672C\u671F\u6D88\u8017/\u70B9\u51FB/\u8F6C\u5316/CTR/CPC \u8D70\u52BF"
|
|
134708
|
-
);
|
|
134709
|
-
}
|
|
134710
134700
|
const sectionAnalysisCounts = {};
|
|
134711
134701
|
const sectionSuggestionCounts = {};
|
|
134712
134702
|
for (const key of SECTION_KEYS4) {
|
|
@@ -134807,7 +134797,6 @@ function validateYandexPeriodReportContent(data) {
|
|
|
134807
134797
|
ok: missing.length === 0,
|
|
134808
134798
|
missing,
|
|
134809
134799
|
stats: {
|
|
134810
|
-
executiveSummaryCount: executiveSummary.length,
|
|
134811
134800
|
recommendationCount: recommendations.length,
|
|
134812
134801
|
sectionAnalysisCounts,
|
|
134813
134802
|
sectionSuggestionCounts,
|
|
@@ -134894,7 +134883,7 @@ async function runYandexAnalysisRender(opts) {
|
|
|
134894
134883
|
const { stats: stats2 } = contentCheck;
|
|
134895
134884
|
const sectionSummary = Object.entries(stats2.sectionAnalysisCounts).map(([key, count]) => `${key} \u603B\u7ED3${count}/\u5EFA\u8BAE${stats2.sectionSuggestionCounts[key] ?? 0}`).join("\uFF5C");
|
|
134896
134885
|
console.error(
|
|
134897
|
-
` \u7EDF\u8BA1\uFF1A\
|
|
134886
|
+
` \u7EDF\u8BA1\uFF1A\u4F18\u5316\u5EFA\u8BAE ${stats2.recommendationCount} \u6761\uFF5C${sectionSummary}
|
|
134898
134887
|
`
|
|
134899
134888
|
);
|
|
134900
134889
|
process.exit(1);
|
|
@@ -134921,7 +134910,7 @@ async function runYandexAnalysisRender(opts) {
|
|
|
134921
134910
|
\u2705 Yandex \u5E7F\u544A\u8D26\u6237\u5206\u6790 HTML \u62A5\u544A\u5DF2\u751F\u6210\uFF1A${outPath}
|
|
134922
134911
|
`);
|
|
134923
134912
|
console.log(
|
|
134924
|
-
` \u5FC5\u542B\u5B57\u6BB5\u5DF2\u5168\u90E8\u8986\u76D6\uFF5C\
|
|
134913
|
+
` \u5FC5\u542B\u5B57\u6BB5\u5DF2\u5168\u90E8\u8986\u76D6\uFF5C\u4F18\u5316\u5EFA\u8BAE ${stats.recommendationCount} \u6761\uFF5C8 \u4E2A\u5206\u6790\u7AE0\u8282\u5747\u5DF2\u9F50\u5168
|
|
134925
134914
|
`
|
|
134926
134915
|
);
|
|
134927
134916
|
console.log("\u5728\u6D4F\u89C8\u5668\u4E2D\u6253\u5F00 HTML \u6587\u4EF6\u5373\u53EF\u67E5\u770B\u5B8C\u6574\u7AE0\u8282\uFF08\u6837\u5F0F\u5BF9\u9F50\u5F00\u53D1\u6837\u4F8B\uFF09\u3002\n");
|
package/dist/skill/_meta.json
CHANGED
|
@@ -80,7 +80,7 @@ siluzan-tso yandex-analysis -a <porg-xxx> --start <S> --end <E> --json-out ./sna
|
|
|
80
80
|
| 日报 | `date` |
|
|
81
81
|
| 周报 | `daily.weekly[]` 的 `weekLabel`、`startDate`、`endDate`、`days`(CLI 已算) |
|
|
82
82
|
|
|
83
|
-
**账户总览 Sheet**:KPI 区(余额、本期消耗、日均、点击、CTR、CPC、转化)+
|
|
83
|
+
**账户总览 Sheet**:KPI 区(余额、本期消耗、日均、点击、CTR、CPC、转化)+ **全部叙事**(各维总结/建议、≥3 条跨维优化建议)写在本 Sheet;列表 Sheet 仅数据表。不写「一句话数据概况 / 执行摘要」。
|
|
84
84
|
|
|
85
85
|
---
|
|
86
86
|
|
|
@@ -57,7 +57,6 @@ siluzan-tso yandex-analysis render \
|
|
|
57
57
|
- `geo[]`:`{locationName, targetingLocationName, network, …metrics}`
|
|
58
58
|
- `devices[]`:`{device, network, …metrics}`
|
|
59
59
|
- `narrative`(**Agent 必填**):
|
|
60
|
-
- `executiveSummary[]`:≥1 段执行摘要
|
|
61
60
|
- `sections.{overview,search,campaigns,keywords,searchTerms,geo,devices,daily}`:每个维度各 `{analysis[](≥1,含数字依据), suggestions[](≥1)}`
|
|
62
61
|
- `recommendations[]`:≥3 条跨维度优化建议(可用 `{priority,text,anchor}`,anchor 对齐样例锚点如 `#keyword` / `#query`)
|
|
63
62
|
- `rowInsights`:有关键词表格行时,**HTML 将展示的 Top N 行必须有中文翻译**;`render` 缺项会拒绝出 HTML。见下方「逐行洞察」。Campaign / 关键词 / 搜索词 / 地域 / 设备列表**不展示**「问题」「建议」列,行级判断写入各维 `sections.*.analysis/suggestions` 即可。
|
|
@@ -80,7 +80,7 @@ siluzan-tso yandex-analysis -a <porg-xxx> --start <S> --end <E> --json-out ./sna
|
|
|
80
80
|
| 日报 | `date` |
|
|
81
81
|
| 周报 | `daily.weekly[]` 的 `weekLabel`、`startDate`、`endDate`、`days`(CLI 已算) |
|
|
82
82
|
|
|
83
|
-
**账户总览 Sheet**:KPI 区(余额、本期消耗、日均、点击、CTR、CPC、转化)+
|
|
83
|
+
**账户总览 Sheet**:KPI 区(余额、本期消耗、日均、点击、CTR、CPC、转化)+ **全部叙事**(各维总结/建议、≥3 条跨维优化建议)写在本 Sheet;列表 Sheet 仅数据表。不写「一句话数据概况 / 执行摘要」。
|
|
84
84
|
|
|
85
85
|
---
|
|
86
86
|
|
|
@@ -638,15 +638,6 @@
|
|
|
638
638
|
"</details>";
|
|
639
639
|
}
|
|
640
640
|
|
|
641
|
-
const exec = asArr(narrative.executiveSummary)
|
|
642
|
-
.filter(function (p) {
|
|
643
|
-
return String(p || "").trim();
|
|
644
|
-
})
|
|
645
|
-
.map(function (p) {
|
|
646
|
-
return "<p>" + escapeHtml(p) + "</p>";
|
|
647
|
-
})
|
|
648
|
-
.join("");
|
|
649
|
-
|
|
650
641
|
return (
|
|
651
642
|
'<section id="overview"><div class="wrap">' +
|
|
652
643
|
sectionHead("账户总览") +
|
|
@@ -678,13 +669,8 @@
|
|
|
678
669
|
kpiCards +
|
|
679
670
|
"</div>" +
|
|
680
671
|
'<div class="panel">' +
|
|
681
|
-
(exec
|
|
682
|
-
? '<div style="padding:14px 16px 0; font-weight:600; font-size:14px;">一句话数据概况</div><div style="padding:6px 16px 0">' +
|
|
683
|
-
exec +
|
|
684
|
-
"</div>"
|
|
685
|
-
: "") +
|
|
686
672
|
(weeklyTable
|
|
687
|
-
? '<div style="padding:14px 16px 0; font-weight:600; font-size:14px;"
|
|
673
|
+
? '<div style="padding:14px 16px 0; font-weight:600; font-size:14px;">汇总数据概览</div>' +
|
|
688
674
|
weeklyTable
|
|
689
675
|
: "") +
|
|
690
676
|
dailyFold +
|
|
@@ -57,7 +57,6 @@ siluzan-tso yandex-analysis render \
|
|
|
57
57
|
- `geo[]`:`{locationName, targetingLocationName, network, …metrics}`
|
|
58
58
|
- `devices[]`:`{device, network, …metrics}`
|
|
59
59
|
- `narrative`(**Agent 必填**):
|
|
60
|
-
- `executiveSummary[]`:≥1 段执行摘要
|
|
61
60
|
- `sections.{overview,search,campaigns,keywords,searchTerms,geo,devices,daily}`:每个维度各 `{analysis[](≥1,含数字依据), suggestions[](≥1)}`
|
|
62
61
|
- `recommendations[]`:≥3 条跨维度优化建议(可用 `{priority,text,anchor}`,anchor 对齐样例锚点如 `#keyword` / `#query`)
|
|
63
62
|
- `rowInsights`:有关键词表格行时,**HTML 将展示的 Top N 行必须有中文翻译**;`render` 缺项会拒绝出 HTML。见下方「逐行洞察」。Campaign / 关键词 / 搜索词 / 地域 / 设备列表**不展示**「问题」「建议」列,行级判断写入各维 `sections.*.analysis/suggestions` 即可。
|
|
@@ -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.
|
|
12
|
+
$PKG_VERSION = '1.1.46-beta.1'
|
|
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.
|
|
12
|
+
readonly PKG_VERSION="1.1.46-beta.1"
|
|
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"
|