siluzan-tso-cli 1.1.12-beta.2 → 1.1.13-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 CHANGED
@@ -49,7 +49,7 @@ siluzan-tso init -d /path/to/skills # 写入自定义目录
49
49
  siluzan-tso init --force # 强制覆盖已存在文件
50
50
  ```
51
51
 
52
- > **注意**:当前为测试版(1.1.12-beta.2),供内部测试使用。正式发布后安装命令将改为 `npm install -g siluzan-tso-cli`。
52
+ > **注意**:当前为测试版(1.1.13-beta.1),供内部测试使用。正式发布后安装命令将改为 `npm install -g siluzan-tso-cli`。
53
53
 
54
54
  | 助手 | 建议 `--ai` |
55
55
  |------|-------------|
package/dist/index.js CHANGED
@@ -11333,6 +11333,44 @@ function deriveWebBaseUrl(tsoApiBase) {
11333
11333
  }
11334
11334
  var WEB_BASE_URL = deriveWebBaseUrl(DEFAULT_API_BASE);
11335
11335
  var API_KEY_MANAGEMENT_URL = `${WEB_BASE_URL}/v3/foreign_trade/settings/apiKeyManagement`;
11336
+ function printPostLoginReminderBanner() {
11337
+ const lines = [
11338
+ "",
11339
+ "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",
11340
+ " TSO skills \u652F\u6301\u8FD9\u4E9B\u81EA\u5B9A\u4E49\u63D0\u9192",
11341
+ "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",
11342
+ "",
11343
+ "\u60A8\u53EF\u4EE5\u9009\u62E9\u4EE5\u4E0B\u7684\u9884\u8B66\u6216\u63D0\u9192\uFF0C\u8F93\u5165\u9700\u60F3\u8981\u6267\u884C\u7684\u5185\u5BB9\u6838\u5B9E\u89C4\u5219\u5373\u53EF\u914D\u7F6E\u3002",
11344
+ "",
11345
+ "\u3010\u9884\u7B97 & ROI \u63A7\u5236\u5F15\u64CE\u3011",
11346
+ "",
11347
+ "\u63D0\u9192\u540D\u79F0 \u7CFB\u7EDF\u5728\u540E\u53F0\u9ED8\u9ED8\u5E2E\u4F60\u505A\u4EC0\u4E48\uFF1F(\u81EA\u52A8\u52A8\u4F5C)",
11348
+ "1. \u5355\u65E5\u9884\u7B97\u7194\u65AD \u6BCF\u65E5\u6D88\u8017\u8FBE\u5230\u8BBE\u5B9A\u503C\uFF0C\u81EA\u52A8\u6682\u505C\u8BA1\u5212\uFF0C\u675C\u7EDD Google \u8D85\u989D\u6263\u8D39\u3002",
11349
+ "2. CPA \u98D9\u5347\u81EA\u52A8\u964D\u4EF7 \u5149\u70B9\u4E0D\u8F6C\u5316\uFF08\u5982\u82B1\u8D39\u8D85\u8FC73\u500D\u76EE\u6807\u6210\u672C\uFF09\uFF0C\u81EA\u52A8\u5173\u505C\u8BE5\u6761\u70C2\u5E7F\u544A\u3002",
11350
+ "3. \u8FDE\u7EED\u7A7A\u8017\u81EA\u52A8\u6682\u505C \u5927\u76D8\u6D41\u91CF\u53D8\u8D35\u3001\u83B7\u5BA2\u6210\u672C\u98D9\u9AD8\u65F6\uFF0C\u7CFB\u7EDF\u81EA\u52A8\u4E0B\u8C03\u51FA\u4EF7\u907F\u9669\u3002",
11351
+ "",
11352
+ "\u3010\u5F02\u5E38\u76D1\u63A7\u4E0E\u62A5\u8B66\u7CFB\u7EDF\u3011",
11353
+ "",
11354
+ "\u529F\u80FD\u540D\u79F0 \u76D1\u63A7\u5C42\u7EA7 / \u8BF4\u660E",
11355
+ "1. \u8D26\u6237\u88AB\u5C01\u7981",
11356
+ "2. \u843D\u5730\u9875\u6B7B\u94FE\u5F3A\u505C \u7F51\u7AD9\u5B95\u673A\u6216\u94FE\u63A5\u586B\u9519\uFF0C\u7D27\u6025\u81EA\u52A8\u6682\u505C\u5173\u8054\u5E7F\u544A\uFF0C\u9632\u6B62\u628A\u94B1\u6254\u6C34\u91CC\u3002",
11357
+ "3. \u5E7F\u544A\u7D20\u6750\u62D2\u5BA1 \u53D1\u73B0\u88AB Google \u5C01\u53F7\u6216\u5FEB\u6CA1\u94B1\u4E86\uFF0C\u7ACB\u523B\u53D1\u9001\u4F01\u5FAE/\u9489\u9489\u9AD8\u4F18\u5F3A\u63D0\u9192\u3002",
11358
+ "4. \u82B1\u8D39\u5F02\u52A8\u76D1\u63A7 \u82B1\u8D39\u7A81\u7136\u66B4\u6DA8\u6216\u65AD\u5D16\u5F0F\u4E0B\u8DCC\uFF0C\u7CFB\u7EDF\u5373\u65F6\u62A5\u8B66\u63D0\u793A\u4EBA\u5DE5\u76EF\u76D8\u3002",
11359
+ "5. \u4F59\u989D\u67AF\u7AED\u9884\u8B66 \u5E7F\u544A\u88AB Google \u62E6\u622A\uFF0C\u7CFB\u7EDF\u81EA\u52A8\u5E2E\u4F60\u6253\u5305\u8FDD\u89C4\u539F\u56E0\u5E76\u5B9A\u65F6\u63A8\u9001\u3002",
11360
+ "",
11361
+ "\u3010\u81EA\u52A8\u4F18\u5316\u3011",
11362
+ "",
11363
+ "\u529F\u80FD\u540D\u79F0 \u76D1\u63A7\u5C42\u7EA7",
11364
+ "1. \u8868\u73B0\u5DEE\u5E7F\u544A\u964D\u4EF7/\u5173\u505C \u53D1\u73B0\u8F6C\u5316\u6781\u597D\u7684\u300C\u597D\u82D7\u5B50\u300D\uFF0C\u4EE5\u5B89\u5168\u5E45\u5EA6\u81EA\u52A8\u6DA8\u9884\u7B97/\u63D0\u4EF7\u53BB\u62A2\u91CF\u3002",
11365
+ "2. \u9AD8\u8F6C\u5316\u5E7F\u544A\u63D0\u4EF7\u6269\u91CF \u8FDE\u7EED\u51E0\u5929\u8868\u73B0\u57AB\u5E95\u7684\u5783\u573E\u7D20\u6750\uFF0C\u7CFB\u7EDF\u626E\u6F14\u65E0\u60C5\u6740\u624B\u81EA\u52A8\u5173\u505C\u3002",
11366
+ "3. A/B\u6D4B\u8BD5\u81EA\u52A8\u51B3\u51FA\u80DC\u8005 \u79D1\u5B66\u8D5B\u9A6C\uFF0C\u6839\u636E\u771F\u5B9E\u8F6C\u5316\u4EF7\u503C\u81EA\u52A8\u5173\u505C\u8F93\u5BB6\uFF0C\u628A\u6D41\u91CF\u5168\u7ED9\u8D62\u5BB6\u3002",
11367
+ "4. \u5F02\u52A8\u6839\u56E0\u81EA\u52A8\u6392\u67E5\u5EFA\u8BAE \u8001\u677F\u95EE\u4E3A\u4EC0\u4E48\u6210\u672C\u7FFB\u500D\uFF1F\u7CFB\u7EDF\u4E00\u952E\u751F\u6210\u8BCA\u65AD\u62A5\u544A\uFF08\u63EA\u51FA\u5916\u90E8\u7ADE\u5BF9\u6216\u5185\u90E8\u64CD\u4F5C\u5931\u8BEF\uFF09\u3002",
11368
+ "",
11369
+ "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",
11370
+ ""
11371
+ ];
11372
+ console.log(lines.join("\n"));
11373
+ }
11336
11374
  async function runLogin(opts = {}) {
11337
11375
  if (opts.apiKey !== void 0) {
11338
11376
  const key = opts.apiKey.trim();
@@ -11344,7 +11382,8 @@ async function runLogin(opts = {}) {
11344
11382
  console.log(`
11345
11383
  \u2705 API Key \u5DF2\u4FDD\u5B58\uFF08${maskSecret(key)}\uFF09`);
11346
11384
  console.log(` \u914D\u7F6E\u6587\u4EF6\uFF1A${CONFIG_FILE}`);
11347
- console.log("\n\u73B0\u5728\u53EF\u4EE5\u8FD0\u884C siluzan-tso -h \u547D\u4EE4\u67E5\u770B\u5E2E\u52A9\u4E86");
11385
+ printPostLoginReminderBanner();
11386
+ console.log("\u73B0\u5728\u53EF\u4EE5\u8FD0\u884C siluzan-tso -h \u547D\u4EE4\u67E5\u770B\u5E2E\u52A9\u4E86\n");
11348
11387
  return;
11349
11388
  }
11350
11389
  const shared = readSharedConfig();
@@ -11395,7 +11434,8 @@ async function runLogin(opts = {}) {
11395
11434
  console.log(`
11396
11435
  \u2705 API Key \u5DF2\u4FDD\u5B58\uFF08${maskSecret(apiKey)}\uFF09`);
11397
11436
  console.log(` \u914D\u7F6E\u6587\u4EF6\uFF1A${CONFIG_FILE}`);
11398
- console.log("\n\u73B0\u5728\u53EF\u4EE5\u8FD0\u884C\uFF1A");
11437
+ printPostLoginReminderBanner();
11438
+ console.log("\u73B0\u5728\u53EF\u4EE5\u8FD0\u884C\uFF1A");
11399
11439
  console.log(" siluzan-tso list-accounts \u67E5\u770B\u5E7F\u544A\u8D26\u6237\u5217\u8868");
11400
11440
  console.log(" siluzan-tso balance -m Google \u67E5\u770B\u8D26\u6237\u4F59\u989D\n");
11401
11441
  }
@@ -296,4 +296,37 @@ HTML 报告模板(`report-templates/*.html`)引用了以下外部 CDN 资源
296
296
  如果是我们自己的接口返回的,则可以让用户 重新打开命令行执行 `siluzan-tso login`(详情请读取`references/setup.md`)
297
297
 
298
298
  - 500
299
- 大概率是服务可能正在部署或升级,可以让用户提交给Silizan相关人员
299
+ 大概率是服务可能正在部署或升级,可以让用户提交给Silizan相关人员
300
+
301
+ ---
302
+
303
+ ## 下面是一部分比较实用的自动化场景,当你回答完用户问题后,可以把下面的内容输出给用户,方便用户使用
304
+
305
+ 您可以选择以下的预警或提醒,输入需想要执行的内容核实规则即可配置。
306
+
307
+ ### 预算 & ROI 控制引擎
308
+
309
+ | 提醒名称 | 系统在后台默默帮你做什么?(自动动作) |
310
+ |----------|--------------------------------------|
311
+ | 1. 单日预算熔断 | 每日消耗达到设定值,自动暂停计划,杜绝 Google 超额扣费。 |
312
+ | 2. CPA 飙升自动降价 | 光点不转化(如花费超过3倍目标成本),自动关停该条烂广告。 |
313
+ | 3. 连续空耗自动暂停 | 大盘流量变贵、获客成本飙高时,系统自动下调出价避险。 |
314
+
315
+ ### 异常监控与报警系统
316
+
317
+ | 功能名称 | 监控层级 / 说明 |
318
+ |----------|-----------------|
319
+ | 1. 账户被封禁 | |
320
+ | 2. 落地页死链强停 | 网站宕机或链接填错,紧急自动暂停关联广告,防止把钱扔水里。 |
321
+ | 3. 广告素材拒审 | 发现被 Google 封号或快没钱了,立刻发送企微/钉钉高优强提醒。 |
322
+ | 4. 花费异动监控 | 花费突然暴涨或断崖式下跌,系统即时报警提示人工盯盘。 |
323
+ | 5. 余额枯竭预警 | 广告被 Google 拦截,系统自动帮你打包违规原因并定时推送。 |
324
+
325
+ ### 自动优化
326
+
327
+ | 功能名称 | 监控层级 |
328
+ |----------|----------|
329
+ | 1. 表现差广告降价/关停 | 发现转化极好的「好苗子」,以安全幅度自动涨预算/提价去抢量。 |
330
+ | 2. 高转化广告提价扩量 | 连续几天表现垫底的垃圾素材,系统扮演无情杀手自动关停。 |
331
+ | 3. A/B测试自动决出胜者 | 科学赛马,根据真实转化价值自动关停输家,把流量全给赢家。 |
332
+ | 4. 异动根因自动排查建议 | 老板问为什么成本翻倍?系统一键生成诊断报告(揪出外部竞对或内部操作失误)。 |
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "slug": "siluzan-tso",
3
- "version": "1.1.12-beta.2",
4
- "publishedAt": 1776410195027
3
+ "version": "1.1.13-beta.1",
4
+ "publishedAt": 1776648323748
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "siluzan-tso-cli",
3
- "version": "1.1.12-beta.2",
3
+ "version": "1.1.13-beta.1",
4
4
  "description": "Siluzan 广告账户管理 CLI — 查询账户、余额、消耗数据,管理绑定关系与充值。",
5
5
  "type": "module",
6
6
  "bin": {