@kriston-ai/kst-im-cli 0.0.14 → 0.0.15
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/dist/index.js +102 -102
- package/package.json +4 -2
- package/skills/kst-im-cli/SKILL.md +28 -9
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kriston-ai/kst-im-cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.15",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -15,7 +15,9 @@
|
|
|
15
15
|
"README-workbuddy-install.md"
|
|
16
16
|
],
|
|
17
17
|
"scripts": {
|
|
18
|
-
"release": "npm run build && npm pack",
|
|
18
|
+
"release": "npm run build && npm run sync:connector && npm pack",
|
|
19
|
+
"sync:connector": "node -e \"require('fs').cpSync('skills/kst-im-cli','connector/skills/kst-im-cli',{recursive:true})\"",
|
|
20
|
+
"pack:connector": "node scripts/pack-connector.mjs",
|
|
19
21
|
"build": "tsx scripts/build.ts",
|
|
20
22
|
"dev": "tsx src/index.ts",
|
|
21
23
|
"typecheck": "tsc --noEmit",
|
|
@@ -1,21 +1,28 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: kst-im-cli
|
|
3
|
-
|
|
3
|
+
display_name: 快商通 IM 数据查询
|
|
4
|
+
description: 快商通 IM CLI — 渠道账号/网页站点列表、基础看板、历史会话查询、鉴权与配置;触发词:渠道账号、站点、看板、对话量、历史会话、recId
|
|
5
|
+
description_zh: 快商通 IM CLI — 渠道账号/网页站点列表、基础看板、历史会话查询、鉴权与配置
|
|
6
|
+
description_en: KST IM CLI — list channel accounts and web sites, query dashboards and chat history.
|
|
7
|
+
version: 0.0.15
|
|
8
|
+
author: 快商通
|
|
4
9
|
---
|
|
5
10
|
|
|
6
11
|
# kst-im-cli
|
|
7
12
|
|
|
8
13
|
## 版本要求
|
|
9
14
|
|
|
10
|
-
使用 `kst-im-cli` 前必须确认版本不低于 `0.0.
|
|
15
|
+
使用 `kst-im-cli` 前必须确认版本不低于 `0.0.15`;低于该版本时,先升级 CLI 后再执行任何业务命令。
|
|
11
16
|
|
|
12
17
|
## Quick Reference
|
|
13
18
|
|
|
14
19
|
| 命令 | 说明 |
|
|
15
20
|
| --------------------------------------------------------------------------- | ---------------------------- |
|
|
16
|
-
| `auth login
|
|
17
|
-
| `auth
|
|
18
|
-
| `auth
|
|
21
|
+
| `auth login` | 登录:交互输入 API Key(需 TTY,agent 勿用) |
|
|
22
|
+
| `auth login -k <key>` | 登录:直接使用 API Key(agent 推荐) |
|
|
23
|
+
| `auth login --web [--env <env>]` | 登录:浏览器授权(输出授权链接并自动打开;WorkBuddy 连接器模式) |
|
|
24
|
+
| `auth logout` | 退出 |
|
|
25
|
+
| `auth status` | 查看登录状态(含浏览器授权轮询) |
|
|
19
26
|
| `config get <key>` | 读取配置项 |
|
|
20
27
|
| `config set <key> <value>` | 写入配置项 |
|
|
21
28
|
| `channel type list` | 列出所有渠道类型 |
|
|
@@ -85,13 +92,22 @@ kst-im-cli channel type list
|
|
|
85
92
|
|
|
86
93
|
未设置 `KST_ONLINE_CLI_API_KEY` 时,直接执行业务命令;CLI 会使用已有的本地登录配置。无需为此补设环境变量。
|
|
87
94
|
|
|
88
|
-
|
|
95
|
+
**本地配置初始化(终端用户 / WorkBuddy 连接器场景)**
|
|
89
96
|
|
|
90
97
|
```bash
|
|
98
|
+
# 默认:交互输入 API Key(存量行为,需 TTY;agent 勿用)
|
|
99
|
+
kst-im-cli auth login
|
|
100
|
+
|
|
101
|
+
# 非交互传入:已有 API Key 时直接传入(agent 推荐方式)
|
|
91
102
|
kst-im-cli auth login -k <API_KEY>
|
|
103
|
+
|
|
104
|
+
# 浏览器授权:输出授权链接并自动打开浏览器
|
|
105
|
+
kst-im-cli auth login --web [--env <prd|test|pre>]
|
|
92
106
|
```
|
|
93
107
|
|
|
94
|
-
|
|
108
|
+
`auth login --web` 非交互:CLI 向授权服务申请配对后,**在 stdout 输出单独一行裸授权 URL**(前后无引号、无其他内容——这是 WorkBuddy 提取规则要求的刻意设计,勿将其包进 JSON),引导文案走 stderr,并自动打开系统默认浏览器。URL 10 分钟内有效。无 TTY 环境(WorkBuddy)输出后立即退出,轮询由 WorkBuddy 跑 `auth status` 完成;人类终端下 CLI 会阻塞等待授权完成并自动登录(Ctrl+C 可退出,之后 `auth status` 可续接)。
|
|
109
|
+
|
|
110
|
+
**登录引导(按宿主能力选择)**:agent 检测到 `auth status` 失败(exit 1)时——用户能提供 API Key(从快商通后台复制):执行 `kst-im-cli auth login -k <API_KEY>`(最普适,勿在输出中回显 Key);WorkBuddy 连接器场景(cli.json 指定):执行 `kst-im-cli auth login --web` → CLI 自动打开浏览器(cli.json 已设 `authSuppressBrowser`,WorkBuddy 不重复开;无浏览器环境降级为 stdout 单行 https:// 链接)→ 用户在授权页用公司ID/账号/密码登录(登录即授权)→ 周期执行 `kst-im-cli auth status` 直到输出 `ok: true`。WorkBuddy 场景不要传 `--env` 参数(默认连生产授权服务)。
|
|
95
111
|
|
|
96
112
|
成功后 stdout:`{ "ok": true, "data": "已验证 compId=<N> customerId=<N>" }`
|
|
97
113
|
|
|
@@ -341,10 +357,13 @@ stats init → channel / web 看板(中文字段映射,共用 stats.json)
|
|
|
341
357
|
| -------------------------- | ------------------------------ | ----------------------------------------- |
|
|
342
358
|
| `auth` | 未登录或 token 失效 | 环境变量模式:由调用方检查已注入的 `KST_ONLINE_CLI_API_KEY`;本地模式:由终端用户完成 `auth login` 后重试 |
|
|
343
359
|
| `auth` + 含 `KST_ONLINE_CLI_API_KEY` | 环境变量 key 无效或过期 | 由调用方更新注入的 Key;agent 不替换 Key,且不回退本地配置 |
|
|
360
|
+
| `auth` + 含 `授权等待中` | 浏览器授权未完成(非终态) | 提示用户完成浏览器授权后重试 `auth status`;10 分钟内有效 |
|
|
361
|
+
| `auth` + 含 `尚未开通 API Key` | 账号未开通 API Key | 提示用户先在快商通后台开通,再重新 `auth login` |
|
|
362
|
+
| `auth` + 含 `重新执行 auth login` | 授权链接过期或失效 | 重新执行 `auth login` 获取新链接 |
|
|
363
|
+
| `auth` + 含 `优先级高于浏览器授权结果` | 环境变量 key 在场,浏览器授权不会生效 | agent 场景直接使用现有 env 凭据即可,无需授权 |
|
|
344
364
|
| `validation` | 参数错误 | 修正参数后重试 |
|
|
345
365
|
| `network` | 网络不通 | 检查网络连通性 |
|
|
346
366
|
| `api` | 服务端业务错误 | 读 `.data.content` 查看服务端响应 |
|
|
347
|
-
| `auth login` 挂起 | 未带 `-k`,进入交互模式 | 加 `-k <key>` 重试 |
|
|
348
367
|
| `basic-board` exit 1 | `stats.json` 缺失且 init 失败 | 先手动执行 `stats init` |
|
|
349
368
|
| channel 看板 api 错误 | 未配置渠道基础看板 | 确认 OnlineRecord 看板配置 |
|
|
350
369
|
| web 看板 api 错误 | 未配置网页基础看板 | 确认 OnlineRecord 网页看板配置 |
|
|
@@ -362,7 +381,7 @@ stats init → channel / web 看板(中文字段映射,共用 stats.json)
|
|
|
362
381
|
|
|
363
382
|
| 命令 | 原因 |
|
|
364
383
|
| ----------------------- | ----------------------------------- |
|
|
365
|
-
| `auth login`(无 `-k`) |
|
|
384
|
+
| `auth login`(无 `-k`/`--web`) | 交互式输入 key,无 TTY 会挂起 |
|
|
366
385
|
| `skill install` | 交互式,会挂起 |
|
|
367
386
|
| `completion` | 生成 shell 补全脚本,agent 无需使用 |
|
|
368
387
|
|