siluzan-tso-cli 1.1.40-beta.5 → 1.1.40

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
@@ -43,7 +43,7 @@ HTML 报告模板外部资源:**ECharts** 统一使用 `https://staticpn.siluz
43
43
  在**用户的目标项目根目录**执行(根据用户使用的助手选择 `--ai`):
44
44
 
45
45
  ```bash
46
- npm install -g siluzan-tso-cli@beta
46
+ npm install -g siluzan-tso-cli
47
47
  siluzan-tso init --ai cursor # 写入 Cursor(默认)
48
48
  siluzan-tso init --ai cursor,claude # 同时写入多个平台
49
49
  siluzan-tso init --ai all # 写入所有支持的平台
@@ -51,7 +51,6 @@ siluzan-tso init -d /path/to/skills # 写入自定义目录
51
51
  siluzan-tso init --force # 强制覆盖已存在文件
52
52
  ```
53
53
 
54
- > **注意**:当前为测试版(1.1.40-beta.5),供内部测试使用。正式发布后安装命令将改为 `npm install -g siluzan-tso-cli`。
55
54
 
56
55
  | 助手 | 建议 `--ai` |
57
56
  | ----------------------- | ------------------------------------ |
package/dist/index.js CHANGED
@@ -2300,7 +2300,8 @@ function buildSiluzanClientIdentityHeaders() {
2300
2300
  "X-Siluzan-Client": client,
2301
2301
  "X-Siluzan-Runtime": runtime,
2302
2302
  "X-Siluzan-Skill-Version": version,
2303
- "X-Company-Source-Type": SILUZAN_AGENT_COMPANY_SOURCE_TYPE,
2303
+ // 暂时不发送 X-Company-Source-Type:本次发版临时需求,待后端确认后恢复
2304
+ // "X-Company-Source-Type": SILUZAN_AGENT_COMPANY_SOURCE_TYPE,
2304
2305
  "User-Agent": `${client}/${version}`
2305
2306
  };
2306
2307
  }
@@ -3887,7 +3888,7 @@ async function issueApiKeyWithPhoneCode(opts) {
3887
3888
  });
3888
3889
  return apiKey;
3889
3890
  }
3890
- var import_semver, SILUZAN_DIR, CONFIG_FILE, inProcessLockChain, ALLOWED_HOSTNAME_SUFFIXES, EXACT_ID_FIELD_NAMES, SILUZAN_AGENT_COMPANY_SOURCE_TYPE, _clientProduct, _resolveVersion, DEFAULT_TIMEOUT_MS, MAX_RESPONSE_BYTES, httpsAgent, httpAgent, PERF_PREFIX, DEFAULT_DETAIL_MAX, VERBOSE_DETAIL_MAX, ASCII_TABLE_CHARS, CLI_SNAPSHOT_MANIFEST_FILE, SCHEMA_VERSION, FALLBACK_FIELD_GUIDE_REFS, _cliPackage, _resolveCliVersion, _fieldGuideRefs, OUTLINE_AGENT_HINT, TS_LIKE_ARRAY_SAMPLE_MAX, MAX_INVOCATION_CHARS, currentInvocation, MAX_COMMIT_CHARS, WRITE_AUDIT_AGENT_AUTO_COMMIT, cliCommitOverride, WRITE_AUDIT_SCHEMA_VERSION, MUTATING, BEIJING_TZ, AUDIT_LOG_FILENAME_RE, DEFAULT_MAX_FILE_MB, MIN_SEGMENT_BYTES, MAX_SEGMENT_BYTES, DEFAULT_RETENTION_DAYS, MIN_RETENTION_DAYS, MAX_RETENTION_DAYS, PRUNE_THROTTLE_MS, lastPruneAtMs, MAX_BODY_CHARS, MAX_ERROR_CHARS, DEFAULT_FIND_AUDIT_MAX_DAYS, MAX_SNAPSHOT_FILE_BYTES, API_KEY_SERVICE_VALUES;
3891
+ var import_semver, SILUZAN_DIR, CONFIG_FILE, inProcessLockChain, ALLOWED_HOSTNAME_SUFFIXES, EXACT_ID_FIELD_NAMES, _clientProduct, _resolveVersion, DEFAULT_TIMEOUT_MS, MAX_RESPONSE_BYTES, httpsAgent, httpAgent, PERF_PREFIX, DEFAULT_DETAIL_MAX, VERBOSE_DETAIL_MAX, ASCII_TABLE_CHARS, CLI_SNAPSHOT_MANIFEST_FILE, SCHEMA_VERSION, FALLBACK_FIELD_GUIDE_REFS, _cliPackage, _resolveCliVersion, _fieldGuideRefs, OUTLINE_AGENT_HINT, TS_LIKE_ARRAY_SAMPLE_MAX, MAX_INVOCATION_CHARS, currentInvocation, MAX_COMMIT_CHARS, WRITE_AUDIT_AGENT_AUTO_COMMIT, cliCommitOverride, WRITE_AUDIT_SCHEMA_VERSION, MUTATING, BEIJING_TZ, AUDIT_LOG_FILENAME_RE, DEFAULT_MAX_FILE_MB, MIN_SEGMENT_BYTES, MAX_SEGMENT_BYTES, DEFAULT_RETENTION_DAYS, MIN_RETENTION_DAYS, MAX_RETENTION_DAYS, PRUNE_THROTTLE_MS, lastPruneAtMs, MAX_BODY_CHARS, MAX_ERROR_CHARS, DEFAULT_FIND_AUDIT_MAX_DAYS, MAX_SNAPSHOT_FILE_BYTES, API_KEY_SERVICE_VALUES;
3891
3892
  var init_dist = __esm({
3892
3893
  "../common/dist/index.js"() {
3893
3894
  "use strict";
@@ -3933,7 +3934,6 @@ var init_dist = __esm({
3933
3934
  "lastChangedBy",
3934
3935
  "userId"
3935
3936
  ]);
3936
- SILUZAN_AGENT_COMPANY_SOURCE_TYPE = "Ctaiad";
3937
3937
  _clientProduct = "siluzan-cli";
3938
3938
  DEFAULT_TIMEOUT_MS = 10 * 60 * 1e3;
3939
3939
  MAX_RESPONSE_BYTES = 50 * 1024 * 1024;
@@ -4011,7 +4011,7 @@ var DEFAULT_API_BASE;
4011
4011
  var init_defaults = __esm({
4012
4012
  "src/config/defaults.ts"() {
4013
4013
  "use strict";
4014
- DEFAULT_API_BASE = "https://tso-api-ci.siluzan.com";
4014
+ DEFAULT_API_BASE = "https://tso-api.siluzan.com";
4015
4015
  }
4016
4016
  });
4017
4017
 
@@ -5518,12 +5518,14 @@ function resolveDailyMetricsQueryTimes(startDate, endDate, now = /* @__PURE__ */
5518
5518
  const endInstant = endOfDay.getTime() > now.getTime() ? formatChinaOffsetDateTime(now) : formatChinaOffsetDateTime(endOfDay);
5519
5519
  return { startInstant, endInstant };
5520
5520
  }
5521
- var CHINA_OFFSET_MS, resolveChinaQueryTimes;
5521
+ function resolveChinaQueryTimes(startDate, endDate, _now = /* @__PURE__ */ new Date()) {
5522
+ return { startInstant: startDate, endInstant: endDate };
5523
+ }
5524
+ var CHINA_OFFSET_MS;
5522
5525
  var init_daily_metrics_range = __esm({
5523
5526
  "src/commands/google-analysis/daily-metrics-range.ts"() {
5524
5527
  "use strict";
5525
5528
  CHINA_OFFSET_MS = 8 * 36e5;
5526
- resolveChinaQueryTimes = resolveDailyMetricsQueryTimes;
5527
5529
  }
5528
5530
  });
5529
5531
 
@@ -6035,7 +6037,7 @@ var init_sections = __esm({
6035
6037
  name: "daily-metrics",
6036
6038
  description: "\u6309\u65E5\u6307\u6807\uFF08\u4E3B\u5E73\u53F0 /report/media-account/google/account-daily-reports\uFF0C\u542B\u641C\u7D22\u4EFD\u989D\u7B49\uFF09",
6037
6039
  dateMode: "range",
6038
- /** 仅用于 manifest endpointHint;实际请求走 fetchSectionPayload 专用分支(apiBaseUrl + 东八区起止时刻) */
6040
+ /** 仅用于 manifest endpointHint;实际请求走 fetchSectionPayload 专用分支(apiBaseUrl + YYYY-MM-DD) */
6039
6041
  path: () => "/report/media-account/google/account-daily-reports"
6040
6042
  },
6041
6043
  {
@@ -102130,7 +102132,7 @@ async function fetchSectionPayload(def, opts, config, id, http2) {
102130
102132
  }
102131
102133
  if (def.name === "daily-metrics") {
102132
102134
  const { startDate, endDate } = resolveDateRange(opts.start, opts.end);
102133
- const { startInstant, endInstant } = resolveDailyMetricsQueryTimes(startDate, endDate);
102135
+ const { startInstant, endInstant } = resolveChinaQueryTimes(startDate, endDate);
102134
102136
  const params = new URLSearchParams({
102135
102137
  mediaCustomerIds: id,
102136
102138
  startDate: startInstant,
@@ -104088,10 +104090,10 @@ function registerRunCommand() {
104088
104090
  "\u7ED3\u679C\u843D\u76D8\u76EE\u5F55\uFF1B\u6BCF\u7EF4\u5EA6\u4E00\u4E2A <section>-<accountId>.json\uFF0C\u4E0E manifest-<accountId>.json \u540C\u7EA7"
104089
104091
  ).option("-t, --token <token>", "Auth Token").option(
104090
104092
  "--start <date>",
104091
- "\u5F00\u59CB\u65E5\u671F YYYY-MM-DD\uFF08\u6309 UTC+8 \u65E5\u5386\u65E5\uFF1Brange \u7C7B\u7EF4\u5EA6\u4F1A\u8F6C\u6210 \u2026T00:00:00+08:00 \u518D\u8BF7\u6C42\uFF1B\u7701\u7565=\u8FD1 7 \u5929\u622A\u81F3\u6628\u5929\uFF1B\u4E0E --end \u540C\u4F20\u6216\u540C\u7701\uFF09"
104093
+ "\u5F00\u59CB\u65E5\u671F YYYY-MM-DD\uFF08google-analysis \u53EA\u4F20\u5E74\u6708\u65E5\uFF1B\u7701\u7565=\u8FD1 7 \u5929\u622A\u81F3\u6628\u5929\uFF0C\u9ED8\u8BA4\u6309 UTC+8 \u65E5\u5386\uFF1B\u4E0E --end \u540C\u4F20\u6216\u540C\u7701\uFF09"
104092
104094
  ).option(
104093
104095
  "--end <date>",
104094
- "\u7ED3\u675F\u65E5\u671F YYYY-MM-DD\uFF08\u6309 UTC+8\uFF1B\u8F6C\u6210 \u2026T23:59:59+08:00\uFF0C\u542B\u4ECA\u5929\u65F6\u622A\u5230\u5F53\u524D\u65F6\u523B\uFF09"
104096
+ "\u7ED3\u675F\u65E5\u671F YYYY-MM-DD\uFF08\u53EA\u4F20\u5E74\u6708\u65E5\uFF1B\u7701\u7565=\u6628\u5929\uFF09"
104095
104097
  ).option("--start-date <date>", "\u540C --start\uFF08\u6587\u6863/Playbook \u517C\u5BB9\u522B\u540D\uFF09").option("--end-date <date>", "\u540C --end\uFF08\u6587\u6863/Playbook \u517C\u5BB9\u522B\u540D\uFF09").option(
104096
104098
  "--sections <list>",
104097
104099
  "\u4EC5\u6267\u884C\u6307\u5B9A\u7EF4\u5EA6\uFF08\u9017\u53F7\u5206\u9694\uFF09\uFF0C\u5982 overview,keywords,ads\uFF1B\u7701\u7565=\u5168\u90E8 25 \u4E2A"
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "slug": "siluzan-tso",
3
- "version": "1.1.40-beta.5",
4
- "publishedAt": 1785481213805
3
+ "version": "1.1.40",
4
+ "publishedAt": 1785723587990
5
5
  }
@@ -152,7 +152,7 @@ siluzan-tso accounts-digest -m Google --start 2026-07-20 --end 2026-07-20 \
152
152
  ## stats — 查询投放消耗数据
153
153
 
154
154
  > **数据时效性**:
155
- > - **Google**:走 `account-spend-overview`;`--start` / `--end` 日历日按 **UTC+8** 转为 `YYYY-MM-DDTHH:mm:ss+08:00` 再请求(起 00:00:00、止 23:59:59,含今天时 end 截到当前时刻)。勿传裸 `YYYY-MM-DD`(易被当成 UTC 切窗)。
155
+ > - **Google**:走 `account-spend-overview`;`--start` / `--end` 日历日按 **UTC+8** 转为 `YYYY-MM-DDTHH:mm:ss+08:00` 再请求(起 00:00:00、止 23:59:59,含今天时 end 截到当前时刻)。与 `google-analysis`(只传年月日)口径不同。
156
156
  > - 窗口完全在历史 → `database` 模式;窗口含今天 → `googleCombined` 模式(仅实时消耗,无余额/状态/币种/账户名)。
157
157
  > - **TikTok / Yandex / BingV2 / Kwai**:走旧版 `accountsoverview`,每日凌晨同步昨天数据,**不能查今天**。判断这几家的「今天/当天/今日消耗」仍需走 `google-analysis(-batch) --sections overview`(仅 Google)。
158
158
  > - 完整时效性表见 `references/analytics/account-analytics.md` 顶部。
@@ -164,7 +164,7 @@ siluzan-tso account-history --start 2026-03-01 --end 2026-03-31 --json-out ./sna
164
164
  | 状态 | 含义 | 下一步操作 |
165
165
  | ---------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
166
166
  | `Pending` | 审核中 | 等待,可反复运行此命令轮询;审核周期因媒体而异 |
167
- | `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 当前没有对应充值界面) |
167
+ | `Approved` | 审核通过 | 运行 `list-accounts -m <媒体>` 确认账户已出现;引导用户充值激活(`config show` 取 `webUrl`,按 `finance.md` 打开对应媒体充值页;例如 Google 为 `https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google`;Kwai、Yandex 当前没有对应充值界面) |
168
168
  | `Rejected` | 被拒 | 查看 `--json-out` 落盘中的 `reason` 字段了解拒绝原因;修改资料后重新提交;若原因不明,引导用户联系丝路赞客服 |
169
169
 
170
170
  ---
@@ -472,7 +472,7 @@ siluzan-tso account email-deauth -c <mediaCustomerId> --invitation-id <id> --res
472
472
 
473
473
  | 功能 | 媒体 | 网页路径 |
474
474
  | --------------------------------------- | ------ | ------------------------------------------------- |
475
- | **账户激活**(邀请他人激活 / 充值激活) | Google | `https://www-ci.siluzan.com/v3/foreign_trade/tso/manageAccounts` |
475
+ | **账户激活**(邀请他人激活 / 充值激活) | Google | `https://www.siluzan.com/v3/foreign_trade/tso/manageAccounts` |
476
476
 
477
477
  **Agent 建议话术**:
478
478
 
@@ -481,5 +481,5 @@ siluzan-tso account email-deauth -c <mediaCustomerId> --invitation-id <id> --res
481
481
  siluzan-tso config show # 查看 webUrl 字段
482
482
 
483
483
  # 账户激活(Google)→ 引导至账户管理页
484
- # https://www-ci.siluzan.com/v3/foreign_trade/tso/manageAccounts
484
+ # https://www.siluzan.com/v3/foreign_trade/tso/manageAccounts
485
485
  ```
@@ -127,7 +127,7 @@ siluzan-tso config show
127
127
 
128
128
  ### 充值页链接(按媒体 × 类型)
129
129
 
130
- 链接模式:`https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/<page>?mediaType=<mediaType>`;丝路赞钱包:`https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/siluzanWallet`(无媒体参数)。
130
+ 链接模式:`https://www.siluzan.com/v3/foreign_trade/tso/recharge/<page>?mediaType=<mediaType>`;丝路赞钱包:`https://www.siluzan.com/v3/foreign_trade/tso/recharge/siluzanWallet`(无媒体参数)。
131
131
 
132
132
  | 充值类型 | `<page>` | 支持媒体(`mediaType` 参数) |
133
133
  | ------------------------- | --------------------- | ------------------------------------------- |
@@ -1,6 +1,6 @@
1
1
  # 各媒体开户
2
2
 
3
- > 网页链接:`https://www-ci.siluzan.com/v3/foreign_trade/tso/accountOpeningHistory?tso=%2Fv3umijs%2Ftso%2FaccountOpeningHistory`
3
+ > 网页链接:`https://www.siluzan.com/v3/foreign_trade/tso/accountOpeningHistory?tso=%2Fv3umijs%2Ftso%2FaccountOpeningHistory`
4
4
  > 多命令串联见 `references/core/workflows.md` § 流程一。
5
5
 
6
6
 
@@ -63,7 +63,7 @@ siluzan-tso open-account google-wizard
63
63
 
64
64
  ```bash
65
65
  siluzan-tso account-history -m Google
66
- # 审核通过后:config show → https://www-ci.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
66
+ # 审核通过后:config show → https://www.siluzan.com/v3/foreign_trade/tso/recharge/pay?mediaType=Google
67
67
  ```
68
68
 
69
69
  ---
@@ -23,9 +23,9 @@
23
23
 
24
24
  | 命令 / 接口 | 时效性 | 能否查"今天" | 典型用途 |
25
25
  | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- | ------------------------------------------------------ |
26
- | `google-analysis --sections overview`(Google 网关 `OverviewSectionData`) | **实时**;请求起止按 **UTC+8** 墙钟 | ✅ 可查当天 | 当天/今日消耗、当天高消耗账号排行 |
26
+ | `google-analysis --sections overview`(Google 网关 `OverviewSectionData`) | **实时**;请求起止为 **YYYY-MM-DD**(不附加时区) | ✅ 可查当天 | 当天/今日消耗、当天高消耗账号排行 |
27
27
  | `google-analysis --sections campaign-types`(`types-summary`) | **实时** | ✅ 可查当天 | 当天系列类型分布 |
28
- | `google-analysis` 其他 range 维度(`campaigns` / `keywords` / `devices` / `geographic` / `daily-metrics` / …) | 实时(受 Google Ads API 同步延迟影响);**一律东八区起止时刻**(与 `stats` 同) | 可查当天,但当天可能尚未结算 | 周期分析、报告 |
28
+ | `google-analysis` 其他 range 维度(`campaigns` / `keywords` / `devices` / `geographic` / `daily-metrics` / …) | 实时(受 Google Ads API 同步延迟影响);**一律 YYYY-MM-DD**(不附加时区;与 `stats` 的 UTC+8 不同) | 可查当天,但当天可能尚未结算 | 周期分析、报告 |
29
29
  | `stats -m Google` / `balance-scan -m Google` / `accounts-digest -m Google` / `list-accounts -m Google` 合并消耗(TSO `account-spend-overview`,2026-05 起) | **后端自动分流**:窗口完全在历史 → `database`;含今天 → `googleCombined`。**`stats` 请求起止按 UTC+8 墙钟**(`…T00:00:00+08:00` ~ `…T23:59:59+08:00`) | ✅ 可查当天(含今天时切实时聚合) | 历史回溯、巡检、周报 KPI、余额续航估算 |
30
30
  | `stats` / `balance-scan` / `accounts-digest` / `list-accounts` 的 **TikTok / Yandex / BingV2 / Kwai / MetaAd** 合并消耗(TSO `accountsoverview`;MetaAd OAuth 户走 `FacebookAds` 段) | **每日同步昨天** | ❌ 查今天会全为 0 | 历史回溯、巡检、余额续航估算(口径为"截至昨天") |
31
31
  | `balance`(`GetMediaAccountInfo`) | 实时 | — | 仅当前余额,不反映消耗 |
@@ -102,7 +102,7 @@ siluzan-tso google-analysis -a <id> --exclude materials,gold-account --json-out
102
102
  | `--json-out <dir>` | 必填;每维一个 `<section>-<accountId>.json` + `manifest-<accountId>.json` |
103
103
  | `--sections <list>` | 仅执行指定维度(逗号分隔);省略=全部 25 个 |
104
104
  | `--exclude <list>` | 排除指定维度;与 `--sections` 可叠加 |
105
- | `--start` / `--end` | 统计区间(YYYY-MM-DD,按 **UTC+8** 日历日);CLI 转成 `…T00:00:00+08:00` ~ `…T23:59:59+08:00` 再请求;省略=近 7 天截至昨天;`final-urls`/`campaign-types` 自动忽略 |
105
+ | `--start` / `--end` | 统计区间(YYYY-MM-DD,**只传年月日**;默认区间按 UTC+8 日历)。与 `stats -m Google`(会加成 `+08:00`)不同;省略=近 7 天截至昨天;`final-urls`/`campaign-types` 自动忽略 |
106
106
  | `--concurrency <n>` | 并发数,默认 5,上限 16 |
107
107
  | `--limit <n>` | 透传给 `keywords`/`search-terms`(默认 **0**=不封顶;`orderByCost=true`) |
108
108
  | `--level <lvl>` | 透传给 `extensions`(Account/Campaign/Ad Group) |
@@ -1,6 +1,6 @@
1
1
  # rag:知识库检索(TSO 广告投放辅助)
2
2
 
3
- 知识库管理页面在 https://www-ci.siluzan.com/knowledge-base/
3
+ 知识库管理页面在 https://www.siluzan.com/knowledge-base/
4
4
 
5
5
  为 **广告投放、账户分析、拓词、诊断报告** 等 TSO 业务提供**企业已入库**的产品、行业、客户背景事实依据。
6
6
 
@@ -190,9 +190,9 @@ siluzan-tso report push receive-emails -m Google [--json-out ./snap]
190
190
 
191
191
  | 媒体 | 报告类型 | URL 模板 |
192
192
  | ------ | ---------------- | ----------------------------------------------------------- |
193
- | Google | 日报(Daily) | `https://www-ci.siluzan.com/media-report/publish/{entityId}?culture=zh-CN` |
194
- | Google | 小时报(Hourly) | `https://www-ci.siluzan.com/media-report/hour/{entityId}?culture=zh-CN` |
195
- | TikTok | 日报 | `https://www-ci.siluzan.com/media-report/publish/{entityId}?culture=zh-CN` |
193
+ | Google | 日报(Daily) | `https://www.siluzan.com/media-report/publish/{entityId}?culture=zh-CN` |
194
+ | Google | 小时报(Hourly) | `https://www.siluzan.com/media-report/hour/{entityId}?culture=zh-CN` |
195
+ | TikTok | 日报 | `https://www.siluzan.com/media-report/publish/{entityId}?culture=zh-CN` |
196
196
 
197
197
  `entityId` 来自 `siluzan-tso report list --json-out ./snap` 中每条记录的 `entityId` 字段。
198
198
 
@@ -205,8 +205,8 @@ siluzan-tso report list -m Google --json-out ./snap
205
205
 
206
206
  # 第二步:查看 webUrl
207
207
  siluzan-tso config show
208
- # webUrl: https://www-ci.siluzan.com
208
+ # webUrl: https://www.siluzan.com
209
209
 
210
210
  # 第三步:拼接链接(Google 日报)
211
- # https://www-ci.siluzan.com/media-report/publish/rpt_abc123?culture=zh-CN
211
+ # https://www.siluzan.com/media-report/publish/rpt_abc123?culture=zh-CN
212
212
  ```
@@ -10,7 +10,7 @@
10
10
  ## 安装 CLI
11
11
 
12
12
  ```bash
13
- npm install -g siluzan-tso-cli@beta
13
+ npm install -g siluzan-tso-cli
14
14
  ```
15
15
 
16
16
  ---
@@ -63,7 +63,7 @@ siluzan-tso config set --api-key <Key> # 或 config 直接写入
63
63
  siluzan-tso config set --token <Token> # 备用:设置 JWT Token
64
64
  ```
65
65
 
66
- API Key 获取入口:`https://www-ci.siluzan.com/v3/foreign_trade/settings/apiKeyManagement`
66
+ API Key 获取入口:`https://www.siluzan.com/v3/foreign_trade/settings/apiKeyManagement`
67
67
 
68
68
  ```bash
69
69
  # 第 1 步:让用户报出手机号后,立刻发码(命令立即返回,不会等待输入)
@@ -126,9 +126,9 @@ siluzan-tso config show
126
126
 
127
127
  ```
128
128
  构建环境 : production
129
- apiBaseUrl : https://tso-api-ci.siluzan.com
130
- googleApiUrl : https://googleapi-ci.mysiluzan.com
131
- webUrl : https://www-ci.siluzan.com
129
+ apiBaseUrl : https://tso-api.siluzan.com
130
+ googleApiUrl : https://googleapi.mysiluzan.com
131
+ webUrl : https://www.siluzan.com
132
132
  apiKey : abcd****1234
133
133
  ```
134
134
 
@@ -6,7 +6,7 @@
6
6
  siluzan-tso config show # 取 webUrl
7
7
  ```
8
8
 
9
- 首页地址:`https://www-ci.siluzan.com/v3/foreign_trade/tso/home`
9
+ 首页地址:`https://www.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-ci.siluzan.com/v3/foreign_trade/tso/home`。
28
+ 1. **「和首页一样的总览」** → 打开 `https://www.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
 
@@ -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.40-beta.5'
12
+ $PKG_VERSION = '1.1.40'
13
13
  $CLI_BIN = 'siluzan-tso'
14
14
  $SKILL_LABEL = 'Siluzan TSO'
15
- $INSTALL_CMD = 'npm install -g siluzan-tso-cli@beta'
16
- $WEB_BASE = 'https://www-ci.siluzan.com'
15
+ $INSTALL_CMD = 'npm install -g siluzan-tso-cli'
16
+ $WEB_BASE = 'https://www.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.40-beta.5"
12
+ readonly PKG_VERSION="1.1.40"
13
13
  readonly CLI_BIN="siluzan-tso"
14
14
  readonly SKILL_LABEL="Siluzan TSO"
15
- readonly INSTALL_CMD="npm install -g siluzan-tso-cli@beta"
16
- readonly WEB_BASE="https://www-ci.siluzan.com"
15
+ readonly INSTALL_CMD="npm install -g siluzan-tso-cli"
16
+ readonly WEB_BASE="https://www.siluzan.com"
17
17
 
18
18
  # -- Constants ----------------------------------------------------------------
19
19
  readonly NODE_MAJOR_MIN=18
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "siluzan-tso-cli",
3
- "version": "1.1.40-beta.5",
3
+ "version": "1.1.40",
4
4
  "description": "Siluzan 广告账户管理 CLI — 查询账户、余额、消耗数据,管理绑定关系与充值。",
5
5
  "keywords": [
6
6
  "ad-account",