sino-bc-cli 1.8.31-beta.2 → 1.8.31

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
@@ -185,20 +185,20 @@ Agent 在 API 域未知或有歧义时先选业务域,再选择一级目录对
185
185
  | `/schema` | 列出可调接口;`/schema <name>` 看入参 |
186
186
  | `/get-config` | 查看公开配置及 AT/RT 是否已配置,不显示令牌内容 |
187
187
  | `/set-config` | 交互隐藏输入 AT/RT、从非 TTY JSON 标准输入导入令牌,或写网关地址 |
188
- | `/auth` | `login` 浏览器登录;`status` 查看身份;`logout` 退出 |
188
+ | `/auth` | `login` 浏览器登录;`status --json` 查看本地身份状态;`logout` 退出 |
189
189
  | `/tenant` | 仅 `list`:列出当前身份可用的签约主体 |
190
190
  | `/uninstall` | 清理技能、本机配置和身份;默认同时卸载全局包 |
191
191
 
192
- `/auth status` 只查看本地身份,不联网补查资料。本人资料有效期为成功补查后的 24 小时;`profileCache` 标明 `fresh`(有效)、`expired`(过期)或 `missing`(缺失)。过期资料不再作为当前资料展示,下次普通业务调用时按需补查,普通补查失败仍继续业务。主动查询本人或他人的资料只返回查询结果,不更新这份缓存。
192
+ `sino-bc-cli /auth status --json` 在终端和自动化中都返回 JSON 信封,状态从 `data.localStatus` 读取,解释见 `data.message`。它只判断本地状态,不向服务器验证、不刷新令牌;正常业务调用会自动尝试续期,无需每次先查状态。`refresh_needed` 不表示已经刷新成功,也无需先登录。
193
193
 
194
- 新登录成功或手动更换访问令牌会清除旧资料;同一身份续期、仅更新刷新令牌或修改网关地址不清资料,也不延长资料有效期。Passport 各主体独立计时,缓存不会替你选择主体。资料有效期只影响展示,不代表登录或接口权限有效期。
194
+ `/get-config` 的 `exists=false` 只表示公开配置使用默认值;本人资料为空或过期也不表示未登录。状态含义、资料缓存和失败后的完整处理规则见通过 `/skill` 定位的 shared;鉴权失败优先读取 `error.params[].reason`,不能只凭 `token_expired` / `token_invalid` 重新登录。
195
195
 
196
196
  ```bash
197
197
  sino-bc-cli /init
198
198
  sino-bc-cli /skill
199
199
  sino-bc-cli /skill target add ~/my-agent/skills
200
200
  sino-bc-cli /auth login
201
- sino-bc-cli /auth status
201
+ sino-bc-cli /auth status --json
202
202
  sino-bc-cli /tenant list
203
203
  sino-bc-cli /schema
204
204
  sino-bc-cli /schema biz-line-list
@@ -212,7 +212,7 @@ sino-bc-cli /uninstall --yes
212
212
 
213
213
  自动化导入时,由可信凭证提供程序向 `sino-bc-cli /set-config --stdin` 输送 JSON:`{"authToken":"…","refreshToken":"…"}`。也可只传 `authToken`(清除旧 RT),或在已有 AT 时只传 `refreshToken`(空字符串表示清除 RT)。不要把真实令牌放进命令行参数或终端历史。
214
214
 
215
- 需要签约主体的接口,把 `/tenant list` 的主体 ID 和 `/auth status` 的认证上下文成对传入 `--corporation-id`、`--auth-context-id`。
215
+ 需要签约主体的接口,把 `/tenant list` 的主体 ID 和 `/auth status --json` 的 `data.authContextId` 成对传入 `--corporation-id`、`--auth-context-id`。
216
216
 
217
217
  ## 调用样例
218
218
 
@@ -36,7 +36,8 @@
36
36
 
37
37
  - **WHEN**:分页查询群消息
38
38
  - **别用**:已有更贴切的 Shortcut 时不要用本命令凑合。
39
- - **示例**:`sino-bc-cli im +page --data '{...}'`
39
+ - **示例**:`sino-bc-cli im +page --data '{...}' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`
40
+ - **主体上下文**:主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
40
41
 
41
42
  ## +replies
42
43
 
@@ -76,7 +77,8 @@
76
77
 
77
78
  - **WHEN**:业务项目告警
78
79
  - **别用**:已有更贴切的 Shortcut 时不要用本命令凑合。
79
- - **示例**:`sino-bc-cli im +alert --data '{...}'`
80
+ - **示例**:`sino-bc-cli im +alert --data '{...}' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`
81
+ - **主体上下文**:主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
80
82
 
81
83
  ## api
82
84
 
@@ -292,13 +292,15 @@
292
292
 
293
293
  - **WHEN**:按飞书群查询关联项目
294
294
  - **别用**:已有更贴切的 Shortcut 时不要用本命令凑合。
295
- - **示例**:`sino-bc-cli project +chat-projects --data '{...}'`
295
+ - **示例**:`sino-bc-cli project +chat-projects --data '{...}' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`
296
+ - **主体上下文**:主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
296
297
 
297
298
  ## +chats
298
299
 
299
300
  - **WHEN**:查询机器人所在飞书群
300
301
  - **别用**:已有更贴切的 Shortcut 时不要用本命令凑合。
301
- - **示例**:`sino-bc-cli project +chats --data '{...}'`
302
+ - **示例**:`sino-bc-cli project +chats --data '{...}' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`
303
+ - **主体上下文**:主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
302
304
 
303
305
  ## api
304
306
 
@@ -57,6 +57,8 @@ CLI 从平台密钥存储读取身份令牌(macOS/Linux 为 AES 密文,Windo
57
57
 
58
58
  TTY 默认表格,非 TTY 默认 JSON 信封。成功 stdout,失败 stderr;参数/配置错误退出码 2,一般 API 错误 1。上游响应由 CLI 解包到 data,不需要调用者重复解包。
59
59
 
60
+ 查看本地身份状态使用 `sino-bc-cli /auth status --json`,从成功信封的 `data.localStatus`、`data.message`、`data.authContextId` 读取。状态不验证服务端授权;正常业务调用会自动尝试续期,无需每次先查状态。资料为空或配置文件不存在均不能单独证明未登录;失败优先按最终 `error.params[].reason` 处理,完整规则见下方 shared。
61
+
60
62
  先读 [sino-bc-shared](../skills/sino-bc-shared/SKILL.md) 轻量入口,再按命中条件读取主体绑定、高风险写确认或鉴权恢复等 references;`--yes` 不绕过身份或主体校验。可用 `sino-bc-cli /skill` 查询 shared 的真实文件路径。
61
63
 
62
64
  ## 维护同步
@@ -108,12 +108,16 @@ taskId / logId 二选一。
108
108
 
109
109
  `POST /sino-bc-nexus/lark/im/message/page`
110
110
 
111
- 主体上下文:`tenant=false`。
111
+ 主体上下文:`tenant=true`。
112
112
 
113
113
  角色范围:`sso/passport/system`。
114
114
 
115
115
  风险:`read`。
116
116
 
117
+ 主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
118
+
119
+ 调用示例:`sino-bc-cli im api lark-im-message-page --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
120
+
117
121
  必填 chatId。
118
122
 
119
123
  ### 日期字段说明(代码同步)
@@ -251,12 +255,16 @@ taskId / logId 二选一。
251
255
 
252
256
  `POST /sino-bc-nexus/lark/im/chat/project-unmatched/alert`
253
257
 
254
- 主体上下文:`tenant=false`。
258
+ 主体上下文:`tenant=true`。
255
259
 
256
- 角色范围:`sso/system`。
260
+ 角色范围:`sso`。
257
261
 
258
262
  风险:`write`。
259
263
 
264
+ 主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
265
+
266
+ 调用示例:`sino-bc-cli im api lark-im-chat-project-unmatched-alert --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
267
+
260
268
  # 每日 Summary 群无法匹配项目告警
261
269
 
262
270
 
@@ -265,4 +273,3 @@ taskId / logId 二选一。
265
273
  | 字段 | 类型 | 位置 | 必填 | 说明 |
266
274
  | --- | --- | --- | --- | --- |
267
275
  | `chatId` | string | body | 是 | 无法匹配项目的飞书群ID;必填,最长128字符,发送前trim |
268
- | `description` | string | body | 否 | 报警描述 |
@@ -1034,12 +1034,16 @@
1034
1034
 
1035
1035
  `POST /sino-bc-nexus/project/chat/projects`
1036
1036
 
1037
- 主体上下文:`tenant=false`。
1037
+ 主体上下文:`tenant=true`。
1038
1038
 
1039
1039
  角色范围:`sso/system`。
1040
1040
 
1041
1041
  风险:`read`。
1042
1042
 
1043
+ 主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
1044
+
1045
+ 调用示例:`sino-bc-cli project api project-chat-projects --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
1046
+
1043
1047
  按飞书群 ID 查询当前签约主体下的有效项目绑定,并仅返回当前用户拥有 PROJECT_QUERY 权限的项目。结果为数组,不分页;未匹配到可查询项目时返回空数组。
1044
1048
 
1045
1049
  **输入参数(--data)**
@@ -1052,10 +1056,14 @@
1052
1056
 
1053
1057
  `POST /sino-bc-nexus/project/chat/chats`
1054
1058
 
1055
- 主体上下文:`tenant=false`。
1059
+ 主体上下文:`tenant=true`。
1056
1060
 
1057
1061
  角色范围:`sso/system`。
1058
1062
 
1059
1063
  风险:`read`。
1060
1064
 
1065
+ 主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
1066
+
1067
+ 调用示例:`sino-bc-cli project api project-chat-chats --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
1068
+
1061
1069
  查询当前用户身份所属飞书租户内,机器人仍在群内且未删除的群列表。返回全部匹配记录,不分页,不按项目或关键词筛选。
@@ -15152,7 +15152,7 @@
15152
15152
  ]
15153
15153
  }
15154
15154
  },
15155
- "tenant": false,
15155
+ "tenant": true,
15156
15156
  "roleScope": [
15157
15157
  "sso",
15158
15158
  "system"
@@ -15198,7 +15198,7 @@
15198
15198
  ]
15199
15199
  }
15200
15200
  },
15201
- "tenant": false,
15201
+ "tenant": true,
15202
15202
  "roleScope": [
15203
15203
  "sso",
15204
15204
  "system"
@@ -27619,7 +27619,7 @@
27619
27619
  }
27620
27620
  }
27621
27621
  },
27622
- "tenant": false,
27622
+ "tenant": true,
27623
27623
  "roleScope": [
27624
27624
  "sso",
27625
27625
  "passport",
@@ -28309,11 +28309,6 @@
28309
28309
  "description": "无法匹配项目的飞书群ID;必填,最长128字符,发送前trim",
28310
28310
  "minLength": 1,
28311
28311
  "maxLength": 128
28312
- },
28313
- "description": {
28314
- "type": "string",
28315
- "title": "报警描述",
28316
- "description": "报警描述"
28317
28312
  }
28318
28313
  },
28319
28314
  "required": [
@@ -28325,10 +28320,9 @@
28325
28320
  "title": "无业务结果,result为空或省略;code=0表示处理成功,不保证飞书已送达",
28326
28321
  "description": "无业务结果,result为空或省略;code=0表示处理成功,不保证飞书已送达"
28327
28322
  },
28328
- "tenant": false,
28323
+ "tenant": true,
28329
28324
  "roleScope": [
28330
- "sso",
28331
- "system"
28325
+ "sso"
28332
28326
  ]
28333
28327
  },
28334
28328
  {