@linkmind_claw/openclaw-faq-kb 1.3.3 → 1.4.0

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.d.ts CHANGED
@@ -1,21 +1,17 @@
1
1
  /**
2
2
  * OpenClaw Plugin entry — FAQ Knowledge Base
3
3
  *
4
- * 5 tools + 4 slash commands:
4
+ * 一个 OpenClaw 实例 = 一个 Owner(主人)
5
+ * Owner 通过 /faq_claim 认主,拥有全部管理权限
6
+ * 其他用户只能查询被开放的知识库
5
7
  *
6
- * Tools:
7
- * 1. faq_account_register OAuth 用户注册/登录
8
- * 2. faq_account_manage 系统级权限管理 (admin, AI 调用)
9
- * 3. faq_kb_create_and_train 一键建库训练
10
- * 4. faq_kb_query — 知识库问答
11
- * 5. faq_kb_list 查看知识库列表
12
- *
13
- * Slash Commands(所有命令自动静默登录,无需手动注册):
14
- * /faq_register — 查看我的身份信息
15
- * /faq_create — 创建知识库并训练
16
- * /faq_query — 按名称提问
17
- * /faq_share — 分享/修改/撤销 KB 权限
18
- * /faq_list — 列出我的知识库
8
+ * Slash Commands:
9
+ * /faq_claim认主(绑定管理员)
10
+ * /faq_register 查看我的身份信息
11
+ * /faq_create 创建知识库并训练(仅 Owner)
12
+ * /faq_query — 知识库问答
13
+ * /faq_share管理 KB 权限(仅 Owner)
14
+ * /faq_list — 列出可访问的知识库
19
15
  */
20
16
  interface CommandContext {
21
17
  args?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAyCH,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,SAAS;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,YAAY,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9C,eAAe,EAAE,CAAC,OAAO,EAAE;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KAChF,KAAK,IAAI,CAAC;CACZ;AAED,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC;CACpC;;AAQD,wBA4VG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAyCH,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,SAAS;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,YAAY,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9C,eAAe,EAAE,CAAC,OAAO,EAAE;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KAChF,KAAK,IAAI,CAAC;CACZ;AAED,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC;CACpC;;AAQD,wBA0bG"}
package/dist/index.js CHANGED
@@ -1,21 +1,17 @@
1
1
  /**
2
2
  * OpenClaw Plugin entry — FAQ Knowledge Base
3
3
  *
4
- * 5 tools + 4 slash commands:
4
+ * 一个 OpenClaw 实例 = 一个 Owner(主人)
5
+ * Owner 通过 /faq_claim 认主,拥有全部管理权限
6
+ * 其他用户只能查询被开放的知识库
5
7
  *
6
- * Tools:
7
- * 1. faq_account_register OAuth 用户注册/登录
8
- * 2. faq_account_manage 系统级权限管理 (admin, AI 调用)
9
- * 3. faq_kb_create_and_train 一键建库训练
10
- * 4. faq_kb_query — 知识库问答
11
- * 5. faq_kb_list 查看知识库列表
12
- *
13
- * Slash Commands(所有命令自动静默登录,无需手动注册):
14
- * /faq_register — 查看我的身份信息
15
- * /faq_create — 创建知识库并训练
16
- * /faq_query — 按名称提问
17
- * /faq_share — 分享/修改/撤销 KB 权限
18
- * /faq_list — 列出我的知识库
8
+ * Slash Commands:
9
+ * /faq_claim认主(绑定管理员)
10
+ * /faq_register 查看我的身份信息
11
+ * /faq_create 创建知识库并训练(仅 Owner)
12
+ * /faq_query — 知识库问答
13
+ * /faq_share管理 KB 权限(仅 Owner)
14
+ * /faq_list — 列出可访问的知识库
19
15
  */
20
16
  import { Type } from "@sinclair/typebox";
21
17
  import { FaqKbApiClient } from "./lib/api-client.js";
@@ -40,16 +36,41 @@ export default definePluginEntry({
40
36
  baseUrl,
41
37
  staticToken: cfg.apiToken || undefined,
42
38
  });
39
+ /** 缓存认主状态,避免每次都查后端 */
40
+ let cachedOwnerStatus = null;
41
+ async function getOwnerStatus() {
42
+ if (cachedOwnerStatus && Date.now() - cachedOwnerStatus.checkedAt < 60_000) {
43
+ return { claimed: cachedOwnerStatus.claimed, owner_telegram_id: null };
44
+ }
45
+ try {
46
+ const res = await client.get("/owner/status");
47
+ const data = res.data ?? res;
48
+ cachedOwnerStatus = { claimed: !!data.claimed, checkedAt: Date.now() };
49
+ return data;
50
+ }
51
+ catch {
52
+ return { claimed: true, owner_telegram_id: null };
53
+ }
54
+ }
43
55
  /**
44
56
  * 鉴权守卫:确保当前用户已登录。
45
- * 有缓存 JWT直接通过
46
- * 无缓存 自动静默调 OAuth 登录(利用 senderId 自动注册/登录)
47
- * 返回 null 表示通过,返回 string 表示错误信息。
57
+ * 1. 检查实例是否已认主未认主则提示
58
+ * 2. 有缓存 JWT 直接通过
59
+ * 3. 无缓存 自动静默调 OAuth 登录
48
60
  */
49
61
  async function ensureAuth(ctx) {
50
62
  if (!ctx.senderId || !ctx.channel) {
51
63
  return "无法获取你的用户信息,请在社媒渠道中使用。";
52
64
  }
65
+ const status = await getOwnerStatus();
66
+ if (!status.claimed) {
67
+ return [
68
+ "此服务器尚未配置管理员。",
69
+ "如果你是部署者,请使用以下命令完成认主:",
70
+ " /faq_claim <部署时生成的密钥>",
71
+ "密钥可在服务器启动日志中找到。",
72
+ ].join("\n");
73
+ }
53
74
  client.setSender(ctx.senderId);
54
75
  if (client.hasUserToken(ctx.senderId)) {
55
76
  return null;
@@ -63,7 +84,27 @@ export default definePluginEntry({
63
84
  return null;
64
85
  }
65
86
  catch (e) {
66
- return `⚠️ 自动登录失败: ${e.message}\n请尝试手动发送 /faq_register`;
87
+ return `⚠️ 自动登录失败: ${e.message}`;
88
+ }
89
+ }
90
+ /**
91
+ * Owner 守卫:ensureAuth + 检查 is_owner。
92
+ * 仅 owner 可通过,其他用户返回提示。
93
+ */
94
+ async function requireOwner(ctx) {
95
+ const authErr = await ensureAuth(ctx);
96
+ if (authErr)
97
+ return authErr;
98
+ try {
99
+ const res = await client.get("/oauth/me");
100
+ const data = res.data ?? res;
101
+ if (!data.is_owner) {
102
+ return "此操作仅限管理员。如需查询知识库请使用 /faq_query";
103
+ }
104
+ return null;
105
+ }
106
+ catch {
107
+ return "无法验证管理员身份,请稍后再试。";
67
108
  }
68
109
  }
69
110
  // ── Tool 1: Account Register (OAuth) ──────────────────────────────
@@ -157,6 +198,50 @@ export default definePluginEntry({
157
198
  },
158
199
  });
159
200
  // ── Slash Commands ─────────────────────────────────────────────────
201
+ api.registerCommand({
202
+ name: "faq_claim",
203
+ description: "认主(绑定管理员): /faq_claim <密钥>",
204
+ acceptsArgs: true,
205
+ handler: async (ctx) => {
206
+ if (!ctx.senderId || !ctx.channel) {
207
+ return { text: "无法获取你的用户信息,请在社媒渠道中使用。" };
208
+ }
209
+ const secret = (ctx.args ?? "").trim();
210
+ if (!secret) {
211
+ return {
212
+ text: [
213
+ "用法: /faq_claim <密钥>",
214
+ "",
215
+ "密钥在服务器启动日志中生成。",
216
+ "认主后你将成为此服务器的管理员,拥有创建/管理知识库的权限。",
217
+ ].join("\n"),
218
+ };
219
+ }
220
+ client.setSender(ctx.senderId);
221
+ if (!client.hasUserToken(ctx.senderId)) {
222
+ try {
223
+ await client.oauthLogin({
224
+ channel_type: ctx.channel,
225
+ channel_user_id: ctx.senderId,
226
+ display_name: "",
227
+ });
228
+ }
229
+ catch (e) {
230
+ return { text: `⚠️ 登录失败: ${e.message}` };
231
+ }
232
+ }
233
+ try {
234
+ const res = await client.post("/owner/claim", {
235
+ claim_secret: secret,
236
+ });
237
+ cachedOwnerStatus = { claimed: true, checkedAt: Date.now() };
238
+ return { text: `✅ ${res.message || "认主成功!你是此服务器的管理员。"}` };
239
+ }
240
+ catch (e) {
241
+ return { text: `❌ 认主失败: ${e.message}` };
242
+ }
243
+ },
244
+ });
160
245
  api.registerCommand({
161
246
  name: "faq_register",
162
247
  description: "查看我的身份信息: /faq_register",
@@ -167,21 +252,22 @@ export default definePluginEntry({
167
252
  try {
168
253
  const res = await client.get("/oauth/me");
169
254
  const d = res.data ?? res;
170
- return {
171
- text: [
172
- `✅ 你已登录`,
173
- ` 用户 ID: ${d.user_id ?? d.id ?? "—"}`,
174
- ` 名称: ${d.name ?? "—"}`,
175
- ` 角色: ${d.role ?? "—"}`,
176
- ` 渠道: ${d.channel_type ?? "—"}`,
177
- "",
178
- "可用命令:",
179
- " /faq_create <名称> <文档URL> 创建知识库",
180
- " /faq_list查看你的知识库",
181
- " /faq_query <名称> <问题> — 提问",
182
- " /faq_share <KB名> <用户ID> <角色> — 管理权限",
183
- ].join("\n"),
184
- };
255
+ const ownerTag = d.is_owner ? " (管理员)" : "";
256
+ const lines = [
257
+ `✅ 你已登录${ownerTag}`,
258
+ ` 用户 ID: ${d.user_id ?? d.id ?? "—"}`,
259
+ ` 名称: ${d.name ?? "—"}`,
260
+ ` 角色: ${d.role ?? "—"}`,
261
+ ` 渠道: ${d.channel_type ?? "—"}`,
262
+ "",
263
+ "可用命令:",
264
+ " /faq_list查看知识库",
265
+ " /faq_query <名称> <问题> 提问",
266
+ ];
267
+ if (d.is_owner) {
268
+ lines.push(" /faq_create <名称> <文档URL> — 创建知识库", " /faq_share <KB名> <用户ID> <角色> — 管理权限");
269
+ }
270
+ return { text: lines.join("\n") };
185
271
  }
186
272
  catch (e) {
187
273
  return { text: `❌ 获取信息失败: ${e.message}` };
@@ -190,10 +276,10 @@ export default definePluginEntry({
190
276
  });
191
277
  api.registerCommand({
192
278
  name: "faq_create",
193
- description: "创建知识库并训练: /faq_create <名称> <文档URL>",
279
+ description: "创建知识库并训练(仅管理员): /faq_create <名称> <文档URL>",
194
280
  acceptsArgs: true,
195
281
  handler: async (ctx) => {
196
- const authErr = await ensureAuth(ctx);
282
+ const authErr = await requireOwner(ctx);
197
283
  if (authErr)
198
284
  return { text: authErr };
199
285
  const args = (ctx.args ?? "").trim();
@@ -281,10 +367,10 @@ export default definePluginEntry({
281
367
  });
282
368
  api.registerCommand({
283
369
  name: "faq_share",
284
- description: "管理知识库权限: /faq_share <KB名称> <用户ID> <角色|revoke>",
370
+ description: "管理知识库权限(仅管理员): /faq_share <KB名称> <用户ID> <角色|revoke>",
285
371
  acceptsArgs: true,
286
372
  handler: async (ctx) => {
287
- const authErr = await ensureAuth(ctx);
373
+ const authErr = await requireOwner(ctx);
288
374
  if (authErr)
289
375
  return { text: authErr };
290
376
  const parts = (ctx.args ?? "").trim().split(/\s+/);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GAEtB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,WAAW,EACX,YAAY,GAEb,MAAM,qBAAqB,CAAC;AAyC7B,SAAS,iBAAiB,CAAC,KAAkB;IAC3C,OAAO,KAAK,CAAC;AACf,CAAC;AAED,0EAA0E;AAE1E,eAAe,iBAAiB,CAAC;IAC/B,EAAE,EAAE,oBAAoB;IACxB,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EACT,uCAAuC;IAEzC,QAAQ,CAAC,GAAG;QACV,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAiB,CAAC;QACrD,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,2BAA2B,CAAC;QAC9D,MAAM,YAAY,GAAG,GAAG,CAAC,cAAc,IAAI,KAAK,CAAC;QACjD,MAAM,eAAe,GAAG,GAAG,CAAC,iBAAiB,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAEhE,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;YAChC,OAAO;YACP,WAAW,EAAE,GAAG,CAAC,QAAQ,IAAI,SAAS;SACvC,CAAC,CAAC;QAEH;;;;;WAKG;QACH,KAAK,UAAU,UAAU,CAAC,GAAmB;YAC3C,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;gBAClC,OAAO,uBAAuB,CAAC;YACjC,CAAC;YACD,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,UAAU,CAAC;oBACtB,YAAY,EAAE,GAAG,CAAC,OAAO;oBACzB,eAAe,EAAE,GAAG,CAAC,QAAQ;oBAC7B,YAAY,EAAE,EAAE;iBACjB,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,OAAO,cAAc,CAAC,CAAC,OAAO,yBAAyB,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,qEAAqE;QAErE,GAAG,CAAC,YAAY,CAAC;YACf,IAAI,EAAE,sBAAsB;YAC5B,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE;gBACX,mBAAmB;gBACnB,oCAAoC;gBACpC,gCAAgC;gBAChC,0CAA0C;aAC3C,CAAC,IAAI,CAAC,GAAG,CAAC;YACX,UAAU,EAAE,qBAAqB;YACjC,OAAO,EAAE,CAAC,GAAW,EAAE,MAAW,EAAE,EAAE,CACpC,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC;SACzC,CAAC,CAAC;QAEH,qEAAqE;QAErE,GAAG,CAAC,YAAY,CAAC;YACf,IAAI,EAAE,oBAAoB;YAC1B,KAAK,EAAE,MAAM;YACb,WAAW,EAAE;gBACX,YAAY;gBACZ,8BAA8B;gBAC9B,uBAAuB;gBACvB,yBAAyB;aAC1B,CAAC,IAAI,CAAC,GAAG,CAAC;YACX,UAAU,EAAE,mBAAmB;YAC/B,OAAO,EAAE,CAAC,GAAW,EAAE,MAAW,EAAE,EAAE,CACpC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC;SACvC,CAAC,CAAC;QAEH,qEAAqE;QAErE,GAAG,CAAC,YAAY,CAAC;YACf,IAAI,EAAE,yBAAyB;YAC/B,KAAK,EAAE,UAAU;YACjB,WAAW,EAAE;gBACX,4BAA4B;gBAC5B,+CAA+C;gBAC/C,+BAA+B;gBAC/B,uDAAuD;gBACvD,2BAA2B;aAC5B,CAAC,IAAI,CAAC,GAAG,CAAC;YACX,UAAU,EAAE,oBAAoB;YAChC,OAAO,EAAE,CAAC,GAAW,EAAE,MAAW,EAAE,EAAE,CACpC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,CAAC;SACvE,CAAC,CAAC;QAEH,qEAAqE;QAErE,GAAG,CAAC,YAAY,CAAC;YACf,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,OAAO;YACd,WAAW,EAAE;gBACX,oBAAoB;gBACpB,uCAAuC;gBACvC,6BAA6B;gBAC7B,iDAAiD;aAClD,CAAC,IAAI,CAAC,GAAG,CAAC;YACX,UAAU,EAAE,WAAW;YACvB,OAAO,EAAE,CAAC,GAAW,EAAE,MAAW,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC;SACpE,CAAC,CAAC;QAEH,qEAAqE;QAErE,GAAG,CAAC,YAAY,CAAC;YACf,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE;gBACX,gBAAgB;gBAChB,yBAAyB;gBACzB,kBAAkB;aACnB,CAAC,IAAI,CAAC,GAAG,CAAC;YACX,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;gBACtB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;gBACjE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;gBAClE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;gBAC7D,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;aACxE,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,GAAW,EAAE,MAAW,EAAE,EAAE;gBAC1C,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,OAAO;oBAAE,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,MAAM,CAAC,QAAQ;oBAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACzD,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;gBACzC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAM,oBAAoB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACvE,MAAM,KAAK,GAAW,GAAW,CAAC,KAAK,IAAK,GAAW,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC1E,MAAM,KAAK,GAAY,GAAW,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;gBACzD,MAAM,KAAK,GAAa,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC;gBACjD,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;oBACvB,MAAM,MAAM,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;oBAC3C,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnD,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,GAAG,GAAG,MAAM,MAAM,GAAG,CAAC,CAAC;gBAC1D,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC/C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1E,CAAC;SACF,CAAC,CAAC;QAEH,sEAAsE;QAEtE,GAAG,CAAC,eAAe,CAAC;YAClB,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,yBAAyB;YACtC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,OAAO;oBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAEtC,IAAI,CAAC;oBACH,MAAM,GAAG,GAAQ,MAAM,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAC/C,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;oBAC1B,OAAO;wBACL,IAAI,EAAE;4BACJ,QAAQ;4BACR,YAAY,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,EAAE;4BACtC,SAAS,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE;4BACxB,SAAS,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE;4BACxB,SAAS,CAAC,CAAC,YAAY,IAAI,GAAG,EAAE;4BAChC,EAAE;4BACF,OAAO;4BACP,oCAAoC;4BACpC,uBAAuB;4BACvB,6BAA6B;4BAC7B,uCAAuC;yBACxC,CAAC,IAAI,CAAC,IAAI,CAAC;qBACb,CAAC;gBACJ,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC5C,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,GAAG,CAAC,eAAe,CAAC;YAClB,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,oCAAoC;YACjD,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,OAAO;oBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAEtC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACnC,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC7B,OAAO,EAAE,IAAI,EAAE,4GAA4G,EAAE,CAAC;gBAChI,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChC,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;gBACxC,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,KAAK,GAAQ,MAAM,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE;wBACvD,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI;qBAC9C,CAAC,CAAC;oBACH,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;oBACtB,MAAM,OAAO,GAAQ,MAAM,MAAM,CAAC,IAAI,CAAC,oBAAoB,IAAI,gBAAgB,EAAE;wBAC/E,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO;qBAClD,CAAC,CAAC;oBACH,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;wBACrB,OAAO,EAAE,IAAI,EAAE,aAAa,OAAO,CAAC,OAAO,iBAAiB,IAAI,GAAG,EAAE,CAAC;oBACxE,CAAC;oBACD,OAAO,EAAE,IAAI,EAAE,4BAA4B,MAAM,cAAc,IAAI,cAAc,OAAO,CAAC,IAAI,CAAC,OAAO,uCAAuC,EAAE,CAAC;gBACjJ,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC1C,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,GAAG,CAAC,eAAe,CAAC;YAClB,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,gCAAgC;YAC7C,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,OAAO;oBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAEtC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACnC,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC7B,OAAO,EAAE,IAAI,EAAE,4FAA4F,EAAE,CAAC;gBAChH,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjD,IAAI,CAAC,QAAQ;oBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBACxC,IAAI,CAAC;oBACH,oBAAoB;oBACpB,IAAI,GAAQ,CAAC;oBACb,IAAI,CAAC;wBACH,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;4BACxD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK;yBAClD,CAAC,CAAC;oBACL,CAAC;oBAAC,MAAM,CAAC;wBACP,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,oBAAoB,QAAQ,QAAQ,EAAE;4BAC5D,QAAQ,EAAE,aAAa,EAAE,KAAK;yBAC/B,CAAC,CAAC;oBACL,CAAC;oBACD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;wBACjB,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC;wBACxC,IAAI,UAAU,EAAE,MAAM,EAAE,CAAC;4BACvB,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAC9E,OAAO,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,OAAO,YAAY,IAAI,EAAE,EAAE,CAAC;wBACpD,CAAC;wBACD,OAAO,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;oBACtC,CAAC;oBACD,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;oBACnB,MAAM,KAAK,GAAa,EAAE,CAAC;oBAC3B,IAAI,CAAC,CAAC,OAAO;wBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC7C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,IAAI,OAAO,EAAE,CAAC,CAAC;oBACxC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ;wBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACtE,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC;wBACvC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACvE,CAAC;oBACD,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpC,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC1C,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,GAAG,CAAC,eAAe,CAAC;YAClB,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,+CAA+C;YAC5D,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,OAAO;oBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAEtC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACnD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,OAAO;wBACL,IAAI,EAAE;4BACJ,wCAAwC;4BACxC,EAAE;4BACF,OAAO;4BACP,oBAAoB;4BACpB,4BAA4B;4BAC5B,iBAAiB;4BACjB,EAAE;4BACF,KAAK;4BACL,2CAA2C;4BAC3C,8CAA8C;4BAC9C,6CAA6C;yBAC9C,CAAC,IAAI,CAAC,IAAI,CAAC;qBACb,CAAC;gBACJ,CAAC;gBACD,MAAM,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;gBACjD,IAAI,CAAC;oBACH,IAAI,IAAI,GAAG,UAAU,CAAC;oBACtB,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,CAC9B,4BAA4B,kBAAkB,CAAC,UAAU,CAAC,cAAc,CACzE,CAAC;wBACF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;wBACzD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;wBAC9D,IAAI,KAAK;4BAAE,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;6BACtB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;4BAAE,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClD,CAAC;oBAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC;oBAE3B,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;wBACxB,MAAM,GAAG,GAAQ,MAAM,MAAM,CAAC,GAAG,CAC/B,oBAAoB,IAAI,UAAU,YAAY,EAAE,CACjD,CAAC;wBACF,OAAO,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,OAAO,IAAI,OAAO,EAAE,EAAE,CAAC;oBACjD,CAAC;oBAED,MAAM,GAAG,GAAQ,MAAM,MAAM,CAAC,IAAI,CAAC,oBAAoB,IAAI,QAAQ,EAAE;wBACnE,sBAAsB,EAAE,YAAY;wBACpC,mBAAmB,EAAE,GAAG,CAAC,OAAO,IAAI,UAAU;wBAC9C,cAAc,EAAE,SAAS;wBACzB,IAAI,EAAE,MAAM;qBACb,CAAC,CAAC;oBACH,OAAO,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,OAAO,IAAI,MAAM,YAAY,OAAO,MAAM,EAAE,EAAE,EAAE,CAAC;gBAC3E,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC1C,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,GAAG,CAAC,eAAe,CAAC;YAClB,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,YAAY;YACzB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,OAAO;oBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAEtC,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAM,qCAAqC,CAAC,CAAC;oBACzE,MAAM,KAAK,GAAW,GAAW,CAAC,KAAK,IAAK,GAAW,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;oBAC1E,MAAM,KAAK,GAAY,GAAW,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;oBACzD,MAAM,KAAK,GAAa,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC;oBACpD,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;wBACvB,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;wBAC3C,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnD,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAClD,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrE,CAAC;oBACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;wBAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBACpD,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpC,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;gBACpC,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@linkmind_claw/openclaw-faq-kb",
3
- "version": "1.3.3",
3
+ "version": "1.4.0",
4
4
  "description": "OpenClaw Plugin - FAQ Knowledge Base: one-click document training & intelligent Q&A",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,151 +1,100 @@
1
1
  ---
2
2
  name: faq-knowledge-base
3
- description: FAQ 知识库 — 自动登录、上传文档训练、智能问答、权限管理
3
+ description: FAQ 知识库 — 认主管理、文档训练、智能问答、权限控制
4
4
  ---
5
5
 
6
6
  # FAQ Knowledge Base Skill
7
7
 
8
- FAQ 知识库系统,支持文档自动训练、智能问答、用户权限管理。
8
+ ## 核心概念:认主机制
9
9
 
10
- ## 认证机制
10
+ 一个 OpenClaw 实例 = 一个主人(Owner)。
11
11
 
12
- - **所有操作自动完成认证**,无需用户手动登录
13
- - 系统通过用户的渠道 ID(如 Telegram user ID)自动识别身份
14
- - 首次操作时自动注册为 viewer 角色,后续自动登录
15
- - 用户无需关心认证流程,直接使用即可
12
+ - 无论连接了多少个 bot,它们共享同一个 Owner
13
+ - Owner 通过 Telegram user ID 绑定,认主认的是"人"
14
+ - Owner 拥有全部管理权限:创建/训练/删除知识库、管理权限
15
+ - 其他用户只能查询 Owner 开放给他的知识库 + 公开知识库
16
16
 
17
- ## Available Tools
17
+ ### 认主流程
18
18
 
19
- ### `faq_account_register`
19
+ 1. 服务器启动时在日志中生成一次性密钥(claim secret)
20
+ 2. 部署者在任意连接的 bot 中发送 `/faq_claim <密钥>`
21
+ 3. 认主完成,该用户永久绑定为此服务器的管理员
20
22
 
21
- OAuth 用户注册/登录(通常由系统自动调用,无需手动触发)。
23
+ ## 认证机制
22
24
 
23
- **Parameters:**
24
- - `channel_type` (required): 渠道类型 telegram / discord / slack / web
25
- - `channel_user_id` (required): 渠道用户唯一 ID
26
- - `display_name` (optional): 显示名称
27
- - `channel_bot_id` (optional): Bot 标识,默认 "default"
25
+ - 所有操作自动完成认证,无需手动登录
26
+ - 系统通过 Telegram user ID 自动识别身份
27
+ - 首次操作时自动注册为 viewer,后续自动登录
28
28
 
29
- ### `faq_account_manage`
30
-
31
- 系统管理员权限操作(仅 admin 可用)。
29
+ ## Slash Commands
32
30
 
33
- **When to use:**
34
- - 需要给用户授予全局角色
35
- - 需要列出所有渠道用户
36
- - 需要查看自己的身份信息
31
+ | 命令 | 功能 | 权限 |
32
+ |------|------|------|
33
+ | `/faq_claim <密钥>` | 认主,绑定管理员 | 未认主时任何人 |
34
+ | `/faq_register` | 查看身份信息 | 任何人 |
35
+ | `/faq_create <名称> <URL>` | 创建知识库并训练 | 仅 Owner |
36
+ | `/faq_query <名称> <问题>` | 知识库问答 | 任何人 |
37
+ | `/faq_share <KB名> <用户ID> <角色>` | 管理 KB 权限 | 仅 Owner |
38
+ | `/faq_list` | 列出可访问的知识库 | 任何人 |
37
39
 
38
- **Parameters:**
39
- - `action` (required): `grant_role` / `list_users` / `my_info`
40
- - `target_channel_user_id`: 目标用户 ID(grant_role 必填)
41
- - `role`: 要授予的角色 — viewer / editor / reviewer / admin
40
+ ### `/faq_share` 详细用法
42
41
 
43
- ### `faq_kb_create_and_train`
42
+ ```
43
+ /faq_share 客服知识库 123456789 viewer — 分享(只读)
44
+ /faq_share 客服知识库 123456789 editor — 授予编辑权限
45
+ /faq_share 客服知识库 123456789 revoke — 撤销权限
46
+ ```
44
47
 
45
- 一键创建知识库并完成全部训练流程。
48
+ ## Available Tools
46
49
 
47
- **When to use:**
48
- - User says "create a knowledge base from this document"
49
- - User provides a file URL and wants to set up a Q&A system
50
+ ### `faq_account_register`
50
51
 
51
- **Parameters:**
52
- - `kb_name` (required): 知识库名称
53
- - `file_url` (required): 文档 URL(支持 PDF / DOCX / DOC / TXT / MD)
54
- - `description` (optional): 知识库描述
55
- - `tag_name` (optional): 分类标签
52
+ OAuth 用户注册/登录(通常由系统自动调用)。
56
53
 
57
- **Notes:**
58
- - 训练耗时 2-10 分钟,取决于文档大小
59
- - 创建者自动成为该知识库的 owner
60
- - Pipeline: 上传 → AI 提取 → 构建知识树 → 建索引
54
+ ### `faq_account_manage`
61
55
 
62
- ### `faq_kb_query`
56
+ 系统管理员操作:`grant_role` / `list_users` / `my_info`
63
57
 
64
- 向知识库提问并获取 AI 回答。
58
+ ### `faq_kb_create_and_train`
65
59
 
66
- **When to use:**
67
- - User asks a question about a specific knowledge base
68
- - User says "search the knowledge base for..."
60
+ 一键创建知识库并训练。支持 PDF / DOCX / DOC / TXT / MD。
69
61
 
70
- **Parameters:**
71
- - `kb_name` (optional, recommended): 知识库名称,支持模糊匹配
72
- - `kb_id` (optional): 知识库 ID,精确匹配
73
- - `question` (required): 要查询的问题
74
- - `enable_polish` (optional): true 时 LLM 综合多个 FAQ 生成更自然的回答
62
+ ### `faq_kb_query`
75
63
 
76
- **Notes:**
77
- - 推荐用 `kb_name` 而非 `kb_id`,对用户更友好
78
- - 名称有多个匹配时会返回候选列表供选择
79
- - 只能查询用户有权限的知识库
64
+ 向知识库提问。推荐用 `kb_name`(名称),也支持 `kb_id`。
80
65
 
81
66
  ### `faq_kb_list`
82
67
 
83
68
  列出当前用户可访问的知识库。
84
69
 
85
- **Parameters:**
86
- - `keyword` (optional): 按名称搜索
87
- - `tag_name` (optional): 按标签筛选
88
- - `page`, `page_size` (optional): 分页
89
-
90
- ## Slash Commands
91
-
92
- 所有命令自动完成身份认证,用户直接使用即可。
93
-
94
- | 命令 | 功能 | 用法 |
95
- |------|------|------|
96
- | `/faq_register` | 查看我的身份信息 | `/faq_register` |
97
- | `/faq_create` | 创建知识库并训练 | `/faq_create <名称> <文档URL>` |
98
- | `/faq_query` | 知识库问答 | `/faq_query <知识库名称> <问题>` |
99
- | `/faq_share` | 管理知识库权限 | `/faq_share <KB名> <用户ID> <角色>` |
100
- | `/faq_list` | 列出我的知识库 | `/faq_list` |
101
-
102
- ### `/faq_share` 详细用法
103
-
104
- ```
105
- /faq_share 客服知识库 123456789 viewer — 分享给某人(只读)
106
- /faq_share 客服知识库 123456789 editor — 授予或升级为编辑权限
107
- /faq_share 客服知识库 123456789 revoke — 撤销权限
108
- ```
109
-
110
- 角色说明:
111
- - **viewer**: 只读,可查询
112
- - **editor**: 可编辑,可创建/修改 FAQ
113
- - **revoke**: 撤销该用户的访问权限
114
-
115
- 只有知识库的 **owner**(创建者)可以管理权限。
116
-
117
70
  ## Typical Workflows
118
71
 
119
- ### Workflow 1: 创建并使用知识库
72
+ ### 首次部署
120
73
 
121
74
  ```
122
- 1. /faq_create 产品手册 https://example.com/manual.pdf
123
- 自动注册 + 创建 + 训练(2-10 min)
124
- 2. /faq_query 产品手册 如何退款?
125
- 获取答案
75
+ 1. 服务器启动 日志输出 claim secret
76
+ 2. /faq_claim <secret> 认主成功
77
+ 3. /faq_create 客服知识库 https://example.com/doc.pdf → 训练
78
+ 4. /faq_query 客服知识库 如何退款? 查询
126
79
  ```
127
80
 
128
- ### Workflow 2: 查询已有知识库
81
+ ### 分享给团队
129
82
 
130
83
  ```
131
- 1. /faq_list
132
- 查看我有权限的知识库
133
- 2. /faq_query 客服知识库 营业时间是什么?
134
- → 获取答案
84
+ 1. /faq_share 客服知识库 987654321 viewer → 分享只读
85
+ 2. 对方直接 /faq_query 客服知识库 问题 查询
135
86
  ```
136
87
 
137
- ### Workflow 3: 分享知识库给团队
88
+ ### 普通用户使用
138
89
 
139
90
  ```
140
- 1. /faq_share 客服知识库 987654321 viewer
141
- 分享给同事(只读)
142
- 2. /faq_share 客服知识库 987654321 editor
143
- → 升级为编辑权限
91
+ 1. /faq_list 查看可访问的知识库
92
+ 2. /faq_query 客服知识库 问题 查询
144
93
  ```
145
94
 
146
95
  ## Important Notes
147
96
 
148
- - 所有操作基于用户渠道 ID 自动认证,无需手动登录
149
- - 知识库使用名称查询,无需记忆 UUID
150
- - 创建知识库后自动成为 owner,可通过 `/faq_share` 管理他人权限
151
- - 只能查询和操作自己有权限的知识库
97
+ - 服务器未认主时,所有命令会提示先认主
98
+ - Owner 创建的知识库默认私有,需通过 /faq_share 开放
99
+ - 普通用户无法创建/删除知识库
100
+ - 知识库可设为公开(is_public),公开后所有用户可查询