@linkmind_claw/openclaw-faq-kb 1.3.3 → 2.0.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,18 @@
1
1
  /**
2
- * OpenClaw Plugin entry FAQ Knowledge Base
2
+ * OpenClaw Plugin — LinkMind Knowledge Base
3
3
  *
4
- * 5 tools + 4 slash commands:
4
+ * 一个 OpenClaw 实例 = 一个 Owner(主人)
5
+ * Owner 通过 /linkmind_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
+ * /linkmind_help 使用帮助
10
+ * /linkmind_claim 认主(绑定管理员)
11
+ * /linkmind_me 查看我的身份信息
12
+ * /linkmind_create 创建知识库并训练(仅 Owner)
13
+ * /linkmind_query 知识库问答
14
+ * /linkmind_share — 管理 KB 权限(仅 Owner)
15
+ * /linkmind_list — 列出可访问的知识库
19
16
  */
20
17
  interface CommandContext {
21
18
  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;;;;;;;;;;;;;;;GAeG;AAsCH,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,wBAyeG"}
package/dist/index.js CHANGED
@@ -1,21 +1,18 @@
1
1
  /**
2
- * OpenClaw Plugin entry FAQ Knowledge Base
2
+ * OpenClaw Plugin — LinkMind Knowledge Base
3
3
  *
4
- * 5 tools + 4 slash commands:
4
+ * 一个 OpenClaw 实例 = 一个 Owner(主人)
5
+ * Owner 通过 /linkmind_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
+ * /linkmind_help 使用帮助
10
+ * /linkmind_claim 认主(绑定管理员)
11
+ * /linkmind_me 查看我的身份信息
12
+ * /linkmind_create 创建知识库并训练(仅 Owner)
13
+ * /linkmind_query 知识库问答
14
+ * /linkmind_share — 管理 KB 权限(仅 Owner)
15
+ * /linkmind_list — 列出可访问的知识库
19
16
  */
20
17
  import { Type } from "@sinclair/typebox";
21
18
  import { FaqKbApiClient } from "./lib/api-client.js";
@@ -29,8 +26,8 @@ function definePluginEntry(entry) {
29
26
  // ── Export ─────────────────────────────────────────────────────────────
30
27
  export default definePluginEntry({
31
28
  id: "faq-knowledge-base",
32
- name: "FAQ Knowledge Base",
33
- description: "FAQ 知识库插件:OAuth 用户管理、一键上传文档训练知识库、智能问答",
29
+ name: "LinkMind Knowledge Base",
30
+ description: "LinkMind 智能知识库:认主管理、一键上传文档训练、智能问答",
34
31
  register(api) {
35
32
  const cfg = (api.pluginConfig ?? {});
36
33
  const baseUrl = cfg.apiBaseUrl || "http://67.212.146.21:8999";
@@ -40,16 +37,36 @@ export default definePluginEntry({
40
37
  baseUrl,
41
38
  staticToken: cfg.apiToken || undefined,
42
39
  });
43
- /**
44
- * 鉴权守卫:确保当前用户已登录。
45
- * 有缓存 JWT 直接通过
46
- * 无缓存 自动静默调 OAuth 登录(利用 senderId 自动注册/登录)
47
- * 返回 null 表示通过,返回 string 表示错误信息。
48
- */
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
+ }
49
55
  async function ensureAuth(ctx) {
50
56
  if (!ctx.senderId || !ctx.channel) {
51
57
  return "无法获取你的用户信息,请在社媒渠道中使用。";
52
58
  }
59
+ const status = await getOwnerStatus();
60
+ if (!status.claimed) {
61
+ return [
62
+ "此服务器尚未配置管理员。",
63
+ "如果你是部署者,请使用以下命令完成认主:",
64
+ " /linkmind_claim <部署时生成的密钥>",
65
+ "密钥可在服务器启动日志中找到。",
66
+ "",
67
+ "输入 /linkmind_help 查看详细说明。",
68
+ ].join("\n");
69
+ }
53
70
  client.setSender(ctx.senderId);
54
71
  if (client.hasUserToken(ctx.senderId)) {
55
72
  return null;
@@ -63,71 +80,72 @@ export default definePluginEntry({
63
80
  return null;
64
81
  }
65
82
  catch (e) {
66
- return `⚠️ 自动登录失败: ${e.message}\n请尝试手动发送 /faq_register`;
83
+ return `⚠️ 自动登录失败: ${e.message}`;
84
+ }
85
+ }
86
+ async function requireOwner(ctx) {
87
+ const authErr = await ensureAuth(ctx);
88
+ if (authErr)
89
+ return authErr;
90
+ try {
91
+ const res = await client.get("/oauth/me");
92
+ const data = res.data ?? res;
93
+ if (!data.is_owner) {
94
+ return "此操作仅限管理员。如需查询知识库请使用 /linkmind_query";
95
+ }
96
+ return null;
97
+ }
98
+ catch {
99
+ return "无法验证管理员身份,请稍后再试。";
67
100
  }
68
101
  }
69
- // ── Tool 1: Account Register (OAuth) ──────────────────────────────
102
+ // ── Tools ──────────────────────────────────────────────────────────
70
103
  api.registerTool({
71
- name: "faq_account_register",
104
+ name: "linkmind_account_register",
72
105
  label: "用户注册/登录",
73
106
  description: [
74
107
  "社媒用户 OAuth 注册或登录。",
75
- "首次调用自动创建账号(默认 viewer 角色),后续调用等同登录。",
76
- "成功后自动缓存 JWT,后续 API 调用自动携带用户身份。",
108
+ "首次调用自动创建账号,后续调用等同登录。",
77
109
  "支持 Telegram / Discord / Slack / Web 等渠道。",
78
110
  ].join(" "),
79
111
  parameters: AccountRegisterParams,
80
112
  execute: (_id, params) => executeAccountRegister(client, params),
81
113
  });
82
- // ── Tool 2: Account Manage (admin) ────────────────────────────────
83
114
  api.registerTool({
84
- name: "faq_account_manage",
115
+ name: "linkmind_account_manage",
85
116
  label: "权限管理",
86
117
  description: [
87
118
  "管理员权限操作工具。",
88
- "grant_role: 给用户授予角色和知识库访问范围。",
89
- "list_users: 列出所有渠道用户。",
90
- "my_info: 查看自己的身份、角色和配额。",
119
+ "grant_role / list_users / my_info",
91
120
  ].join(" "),
92
121
  parameters: AccountManageParams,
93
122
  execute: (_id, params) => executeAccountManage(client, params),
94
123
  });
95
- // ── Tool 3: Create & Train ────────────────────────────────────────
96
124
  api.registerTool({
97
- name: "faq_kb_create_and_train",
125
+ name: "linkmind_kb_create_and_train",
98
126
  label: "创建知识库并训练",
99
127
  description: [
100
- "创建一个新的 FAQ 知识库并自动完成全部训练流程。",
101
- "内部执行: 创建知识库 上传文档 AI 提取 FAQ 构建知识树 → 建索引。",
102
- "训练完成后知识库即可用于问答(faq_kb_query)。",
103
- "支持 PDF / DOCX / DOC / TXT / MD 格式,通过 file_url 传入文件地址。",
104
- "训练过程通常需要 2-10 分钟,取决于文档大小。",
128
+ "创建 FAQ 知识库并自动完成全部训练流程。",
129
+ "支持 PDF / DOCX / DOC / TXT / MD 格式。",
130
+ "训练过程通常需要 2-10 分钟。",
105
131
  ].join(" "),
106
132
  parameters: CreateAndTrainParams,
107
133
  execute: (_id, params) => executeCreateAndTrain(client, params, pollInterval, pipelineTimeout),
108
134
  });
109
- // ── Tool 2: Query ─────────────────────────────────────────────────
110
135
  api.registerTool({
111
- name: "faq_kb_query",
136
+ name: "linkmind_kb_query",
112
137
  label: "知识库问答",
113
138
  description: [
114
139
  "向知识库提问并获取 AI 智能回答。",
115
140
  "可以用知识库名称(kb_name)或 ID(kb_id)指定,推荐用名称。",
116
- "名称支持模糊匹配,系统自动在你有权限的 KB 中查找。",
117
- "设置 enable_polish=true 可让 LLM 综合多个 FAQ 生成更自然的回答。",
118
141
  ].join(" "),
119
142
  parameters: QueryParams,
120
143
  execute: (_id, params) => executeQuery(client, params),
121
144
  });
122
- // ── Tool 3: List KB ───────────────────────────────────────────────
123
145
  api.registerTool({
124
- name: "faq_kb_list",
146
+ name: "linkmind_kb_list",
125
147
  label: "查看知识库列表",
126
- description: [
127
- "列出当前可访问的所有知识库。",
128
- "返回每个知识库的 ID、名称、标签和训练状态。",
129
- "支持按名称和标签筛选,支持分页。",
130
- ].join(" "),
148
+ description: "列出当前可访问的所有知识库。",
131
149
  parameters: Type.Object({
132
150
  keyword: Type.Optional(Type.String({ description: "按名称搜索(可选)" })),
133
151
  tag_name: Type.Optional(Type.String({ description: "按标签筛选(可选)" })),
@@ -147,9 +165,9 @@ export default definePluginEntry({
147
165
  const total = res.total ?? items.length;
148
166
  const lines = [`知识库列表(共 ${total} 个):`];
149
167
  for (const kb of items) {
150
- const status = kb.is_active ? "就绪" : "未训练";
168
+ const st = kb.is_active ? "就绪" : "未训练";
151
169
  const tag = kb.tag_name ? ` [${kb.tag_name}]` : "";
152
- lines.push(` ${kb.id} ${kb.name}${tag} (${status})`);
170
+ lines.push(` ${kb.id} ${kb.name}${tag} (${st})`);
153
171
  }
154
172
  if (items.length === 0)
155
173
  lines.push(" (无知识库)");
@@ -158,48 +176,133 @@ export default definePluginEntry({
158
176
  });
159
177
  // ── Slash Commands ─────────────────────────────────────────────────
160
178
  api.registerCommand({
161
- name: "faq_register",
162
- description: "查看我的身份信息: /faq_register",
179
+ name: "linkmind_help",
180
+ description: "LinkMind 使用帮助",
163
181
  handler: async (ctx) => {
164
- const authErr = await ensureAuth(ctx);
165
- if (authErr)
166
- return { text: authErr };
182
+ const status = await getOwnerStatus();
183
+ let isOwner = false;
184
+ if (status.claimed && ctx.senderId && ctx.channel) {
185
+ client.setSender(ctx.senderId);
186
+ if (!client.hasUserToken(ctx.senderId)) {
187
+ try {
188
+ await client.oauthLogin({
189
+ channel_type: ctx.channel,
190
+ channel_user_id: ctx.senderId,
191
+ display_name: "",
192
+ });
193
+ }
194
+ catch { /* ignore */ }
195
+ }
196
+ try {
197
+ const me = await client.get("/oauth/me");
198
+ isOwner = !!(me.data ?? me).is_owner;
199
+ }
200
+ catch { /* ignore */ }
201
+ }
202
+ const lines = [
203
+ "LinkMind 智能知识库",
204
+ "━━━━━━━━━━━━━━━━━━",
205
+ ];
206
+ if (!status.claimed) {
207
+ lines.push("", "首次使用?请先完成认主:", " /linkmind_claim <密钥>", "", "密钥在服务器启动日志中生成。", "认主后你将成为管理员,可以创建和管理知识库。");
208
+ }
209
+ else if (isOwner) {
210
+ lines.push("", "你是管理员,可用命令:", "", " /linkmind_create <名称> <文档URL>", " 创建知识库并自动训练", " 支持 PDF / DOCX / DOC / TXT / MD", "", " /linkmind_list", " 查看所有知识库", "", " /linkmind_query <知识库名称> <问题>", " 向知识库提问", "", " /linkmind_share <KB名> <用户ID> <角色>", " 分享知识库给其他用户", " 角色: viewer / editor / revoke", "", " /linkmind_me", " 查看你的身份信息");
211
+ }
212
+ else {
213
+ lines.push("", "可用命令:", "", " /linkmind_list", " 查看你可访问的知识库", "", " /linkmind_query <知识库名称> <问题>", " 向知识库提问", "", " /linkmind_me", " 查看你的身份信息");
214
+ }
215
+ return { text: lines.join("\n") };
216
+ },
217
+ });
218
+ api.registerCommand({
219
+ name: "linkmind_claim",
220
+ description: "认主(绑定管理员): /linkmind_claim <密钥>",
221
+ acceptsArgs: true,
222
+ handler: async (ctx) => {
223
+ if (!ctx.senderId || !ctx.channel) {
224
+ return { text: "无法获取你的用户信息,请在社媒渠道中使用。" };
225
+ }
226
+ const secret = (ctx.args ?? "").trim();
227
+ if (!secret) {
228
+ return {
229
+ text: [
230
+ "用法: /linkmind_claim <密钥>",
231
+ "",
232
+ "密钥在服务器启动日志中生成。",
233
+ "认主后你将成为此服务器的管理员,拥有创建/管理知识库的权限。",
234
+ ].join("\n"),
235
+ };
236
+ }
237
+ client.setSender(ctx.senderId);
238
+ if (!client.hasUserToken(ctx.senderId)) {
239
+ try {
240
+ await client.oauthLogin({
241
+ channel_type: ctx.channel,
242
+ channel_user_id: ctx.senderId,
243
+ display_name: "",
244
+ });
245
+ }
246
+ catch (e) {
247
+ return { text: `⚠️ 登录失败: ${e.message}` };
248
+ }
249
+ }
167
250
  try {
168
- const res = await client.get("/oauth/me");
169
- const d = res.data ?? res;
251
+ const res = await client.post("/owner/claim", {
252
+ claim_secret: secret,
253
+ });
254
+ cachedOwnerStatus = { claimed: true, checkedAt: Date.now() };
170
255
  return {
171
256
  text: [
172
- `✅ 你已登录`,
173
- ` 用户 ID: ${d.user_id ?? d.id ?? "—"}`,
174
- ` 名称: ${d.name ?? "—"}`,
175
- ` 角色: ${d.role ?? "—"}`,
176
- ` 渠道: ${d.channel_type ?? "—"}`,
257
+ `✅ ${res.message || "认主成功!"}`,
177
258
  "",
178
- "可用命令:",
179
- " /faq_create <名称> <文档URL> — 创建知识库",
180
- " /faq_list — 查看你的知识库",
181
- " /faq_query <名称> <问题> — 提问",
182
- " /faq_share <KB名> <用户ID> <角色> — 管理权限",
259
+ "你现在是此服务器的管理员。",
260
+ "输入 /linkmind_help 查看可用命令。",
183
261
  ].join("\n"),
184
262
  };
185
263
  }
264
+ catch (e) {
265
+ return { text: `❌ 认主失败: ${e.message}` };
266
+ }
267
+ },
268
+ });
269
+ api.registerCommand({
270
+ name: "linkmind_me",
271
+ description: "查看我的身份信息",
272
+ handler: async (ctx) => {
273
+ const authErr = await ensureAuth(ctx);
274
+ if (authErr)
275
+ return { text: authErr };
276
+ try {
277
+ const res = await client.get("/oauth/me");
278
+ const d = res.data ?? res;
279
+ const ownerTag = d.is_owner ? " (管理员)" : "";
280
+ const lines = [
281
+ `✅ 你已登录${ownerTag}`,
282
+ ` 用户 ID: ${d.user_id ?? d.id ?? "—"}`,
283
+ ` 名称: ${d.name ?? "—"}`,
284
+ ` 角色: ${d.role ?? "—"}`,
285
+ ` 渠道: ${d.channel_type ?? "—"}`,
286
+ ];
287
+ return { text: lines.join("\n") };
288
+ }
186
289
  catch (e) {
187
290
  return { text: `❌ 获取信息失败: ${e.message}` };
188
291
  }
189
292
  },
190
293
  });
191
294
  api.registerCommand({
192
- name: "faq_create",
193
- description: "创建知识库并训练: /faq_create <名称> <文档URL>",
295
+ name: "linkmind_create",
296
+ description: "创建知识库并训练(仅管理员): /linkmind_create <名称> <文档URL>",
194
297
  acceptsArgs: true,
195
298
  handler: async (ctx) => {
196
- const authErr = await ensureAuth(ctx);
299
+ const authErr = await requireOwner(ctx);
197
300
  if (authErr)
198
301
  return { text: authErr };
199
302
  const args = (ctx.args ?? "").trim();
200
303
  const spaceIdx = args.indexOf(" ");
201
304
  if (!args || spaceIdx === -1) {
202
- return { text: "用法: /faq_create <知识库名称> <文档URL>\n示例: /faq_create 客服知识库 https://example.com/doc.pdf\n支持 PDF/DOCX/DOC/TXT/MD" };
305
+ return { text: "用法: /linkmind_create <知识库名称> <文档URL>\n示例: /linkmind_create 客服知识库 https://example.com/doc.pdf\n支持 PDF/DOCX/DOC/TXT/MD" };
203
306
  }
204
307
  const kbName = args.slice(0, spaceIdx).trim();
205
308
  const fileUrl = args.slice(spaceIdx + 1).trim();
@@ -217,7 +320,7 @@ export default definePluginEntry({
217
320
  if (!pipeRes.success) {
218
321
  return { text: `❌ 启动训练失败: ${pipeRes.message}\n知识库已创建 (ID: ${kbId})` };
219
322
  }
220
- return { text: `🚀 知识库创建成功,训练已启动!\n 名称: ${kbName}\n KB ID: ${kbId}\n 任务 ID: ${pipeRes.data.task_id}\n\n训练需要 2-10 分钟,完成后可用 /faq_query 提问。` };
323
+ return { text: `🚀 知识库创建成功,训练已启动!\n 名称: ${kbName}\n KB ID: ${kbId}\n 任务 ID: ${pipeRes.data.task_id}\n\n训练需要 2-10 分钟,完成后可用 /linkmind_query 提问。` };
221
324
  }
222
325
  catch (e) {
223
326
  return { text: `❌ 创建失败: ${e.message}` };
@@ -225,8 +328,8 @@ export default definePluginEntry({
225
328
  },
226
329
  });
227
330
  api.registerCommand({
228
- name: "faq_query",
229
- description: "知识库问答: /faq_query <知识库名称> <问题>",
331
+ name: "linkmind_query",
332
+ description: "知识库问答: /linkmind_query <知识库名称> <问题>",
230
333
  acceptsArgs: true,
231
334
  handler: async (ctx) => {
232
335
  const authErr = await ensureAuth(ctx);
@@ -235,14 +338,13 @@ export default definePluginEntry({
235
338
  const args = (ctx.args ?? "").trim();
236
339
  const spaceIdx = args.indexOf(" ");
237
340
  if (!args || spaceIdx === -1) {
238
- return { text: "用法: /faq_query <知识库名称> <问题>\n示例: /faq_query 客服知识库 什么是退款政策?\n\n也支持 ID: /faq_query abc123 问题" };
341
+ return { text: "用法: /linkmind_query <知识库名称> <问题>\n示例: /linkmind_query 客服知识库 什么是退款政策?" };
239
342
  }
240
343
  const nameOrId = args.slice(0, spaceIdx).trim();
241
344
  const question = args.slice(spaceIdx + 1).trim();
242
345
  if (!question)
243
346
  return { text: "请提供问题" };
244
347
  try {
245
- // 先尝试按名称查,失败再按 ID 查
246
348
  let res;
247
349
  try {
248
350
  res = await client.post("/knowledge_bases/query_by_name", {
@@ -280,18 +382,18 @@ export default definePluginEntry({
280
382
  },
281
383
  });
282
384
  api.registerCommand({
283
- name: "faq_share",
284
- description: "管理知识库权限: /faq_share <KB名称> <用户ID> <角色|revoke>",
385
+ name: "linkmind_share",
386
+ description: "管理知识库权限(仅管理员): /linkmind_share <KB名称> <用户ID> <角色>",
285
387
  acceptsArgs: true,
286
388
  handler: async (ctx) => {
287
- const authErr = await ensureAuth(ctx);
389
+ const authErr = await requireOwner(ctx);
288
390
  if (authErr)
289
391
  return { text: authErr };
290
392
  const parts = (ctx.args ?? "").trim().split(/\s+/);
291
393
  if (parts.length < 3) {
292
394
  return {
293
395
  text: [
294
- "用法: /faq_share <KB名称或ID> <目标用户ID> <角色>",
396
+ "用法: /linkmind_share <KB名称或ID> <目标用户ID> <角色>",
295
397
  "",
296
398
  "角色可选:",
297
399
  " viewer — 只读(可查询)",
@@ -299,9 +401,8 @@ export default definePluginEntry({
299
401
  " revoke — 撤销权限",
300
402
  "",
301
403
  "示例:",
302
- " /faq_share 客服知识库 123456789 viewer — 分享",
303
- " /faq_share 客服知识库 123456789 editor — 升级为编辑",
304
- " /faq_share 客服知识库 123456789 revoke — 撤销权限",
404
+ " /linkmind_share 客服知识库 123456789 viewer",
405
+ " /linkmind_share 客服知识库 123456789 revoke",
305
406
  ].join("\n"),
306
407
  };
307
408
  }
@@ -336,7 +437,7 @@ export default definePluginEntry({
336
437
  },
337
438
  });
338
439
  api.registerCommand({
339
- name: "faq_list",
440
+ name: "linkmind_list",
340
441
  description: "列出我可访问的知识库",
341
442
  handler: async (ctx) => {
342
443
  const authErr = await ensureAuth(ctx);
@@ -346,7 +447,7 @@ export default definePluginEntry({
346
447
  const res = await client.get("/knowledge_bases?page=1&page_size=0");
347
448
  const items = res.items ?? res.data?.items ?? [];
348
449
  const total = res.total ?? items.length;
349
- const lines = [`📚 我的知识库(共 ${total} 个):`];
450
+ const lines = [`📚 知识库(共 ${total} 个):`];
350
451
  for (const kb of items) {
351
452
  const st = kb.is_active ? "✅ 就绪" : "⏳ 未训练";
352
453
  const tag = kb.tag_name ? ` [${kb.tag_name}]` : "";
@@ -355,6 +456,7 @@ export default definePluginEntry({
355
456
  }
356
457
  if (items.length === 0)
357
458
  lines.push(" (暂无可访问的知识库)");
459
+ lines.push("", "输入 /linkmind_help 查看更多命令");
358
460
  return { text: lines.join("\n") };
359
461
  }
360
462
  catch (e) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
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": "2.0.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,68 @@
1
1
  ---
2
2
  name: faq-knowledge-base
3
- description: FAQ 知识库自动登录、上传文档训练、智能问答、权限管理
3
+ description: LinkMind 智能知识库认主管理、文档训练、智能问答、权限控制
4
4
  ---
5
5
 
6
- # FAQ Knowledge Base Skill
6
+ # LinkMind 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`
20
-
21
- OAuth 用户注册/登录(通常由系统自动调用,无需手动触发)。
22
-
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"
28
-
29
- ### `faq_account_manage`
30
-
31
- 系统管理员权限操作(仅 admin 可用)。
32
-
33
- **When to use:**
34
- - 需要给用户授予全局角色
35
- - 需要列出所有渠道用户
36
- - 需要查看自己的身份信息
37
-
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
42
-
43
- ### `faq_kb_create_and_train`
44
-
45
- 一键创建知识库并完成全部训练流程。
46
-
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
-
51
- **Parameters:**
52
- - `kb_name` (required): 知识库名称
53
- - `file_url` (required): 文档 URL(支持 PDF / DOCX / DOC / TXT / MD)
54
- - `description` (optional): 知识库描述
55
- - `tag_name` (optional): 分类标签
56
-
57
- **Notes:**
58
- - 训练耗时 2-10 分钟,取决于文档大小
59
- - 创建者自动成为该知识库的 owner
60
- - Pipeline: 上传 → AI 提取 → 构建知识树 → 建索引
61
-
62
- ### `faq_kb_query`
63
-
64
- 向知识库提问并获取 AI 回答。
65
-
66
- **When to use:**
67
- - User asks a question about a specific knowledge base
68
- - User says "search the knowledge base for..."
69
-
70
- **Parameters:**
71
- - `kb_name` (optional, recommended): 知识库名称,支持模糊匹配
72
- - `kb_id` (optional): 知识库 ID,精确匹配
73
- - `question` (required): 要查询的问题
74
- - `enable_polish` (optional): true 时 LLM 综合多个 FAQ 生成更自然的回答
75
-
76
- **Notes:**
77
- - 推荐用 `kb_name` 而非 `kb_id`,对用户更友好
78
- - 名称有多个匹配时会返回候选列表供选择
79
- - 只能查询用户有权限的知识库
80
-
81
- ### `faq_kb_list`
82
-
83
- 列出当前用户可访问的知识库。
84
-
85
- **Parameters:**
86
- - `keyword` (optional): 按名称搜索
87
- - `tag_name` (optional): 按标签筛选
88
- - `page`, `page_size` (optional): 分页
19
+ 1. 服务器启动时在日志中生成一次性密钥
20
+ 2. 部署者在任意连接的 bot 中发送 `/linkmind_claim <密钥>`
21
+ 3. 认主完成,该用户永久绑定为管理员
89
22
 
90
23
  ## Slash Commands
91
24
 
92
- 所有命令自动完成身份认证,用户直接使用即可。
93
-
94
- | 命令 | 功能 | 用法 |
25
+ | 命令 | 功能 | 权限 |
95
26
  |------|------|------|
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` |
27
+ | `/linkmind_help` | 使用帮助(根据身份显示不同内容) | 任何人 |
28
+ | `/linkmind_claim <密钥>` | 认主,绑定管理员 | 未认主时任何人 |
29
+ | `/linkmind_me` | 查看身份信息 | 任何人 |
30
+ | `/linkmind_create <名称> <URL>` | 创建知识库并训练 | Owner |
31
+ | `/linkmind_query <名称> <问题>` | 知识库问答 | 任何人 |
32
+ | `/linkmind_share <KB名> <用户ID> <角色>` | 管理 KB 权限 | 仅 Owner |
33
+ | `/linkmind_list` | 列出可访问的知识库 | 任何人 |
101
34
 
102
- ### `/faq_share` 详细用法
35
+ ### `/linkmind_share` 用法
103
36
 
104
37
  ```
105
- /faq_share 客服知识库 123456789 viewer — 分享给某人(只读)
106
- /faq_share 客服知识库 123456789 editor — 授予或升级为编辑权限
107
- /faq_share 客服知识库 123456789 revoke — 撤销权限
38
+ /linkmind_share 客服知识库 123456789 viewer — 分享(只读)
39
+ /linkmind_share 客服知识库 123456789 editor — 授予编辑权限
40
+ /linkmind_share 客服知识库 123456789 revoke — 撤销权限
108
41
  ```
109
42
 
110
- 角色说明:
111
- - **viewer**: 只读,可查询
112
- - **editor**: 可编辑,可创建/修改 FAQ
113
- - **revoke**: 撤销该用户的访问权限
114
-
115
- 只有知识库的 **owner**(创建者)可以管理权限。
116
-
117
43
  ## Typical Workflows
118
44
 
119
- ### Workflow 1: 创建并使用知识库
120
-
121
- ```
122
- 1. /faq_create 产品手册 https://example.com/manual.pdf
123
- → 自动注册 + 创建 + 训练(2-10 min)
124
- 2. /faq_query 产品手册 如何退款?
125
- → 获取答案
126
- ```
127
-
128
- ### Workflow 2: 查询已有知识库
45
+ ### 首次部署
129
46
 
130
47
  ```
131
- 1. /faq_list
132
- 查看我有权限的知识库
133
- 2. /faq_query 客服知识库 营业时间是什么?
134
- 获取答案
48
+ 1. 服务器启动 → 日志输出 claim secret
49
+ 2. /linkmind_help 查看引导
50
+ 3. /linkmind_claim <secret> → 认主成功
51
+ 4. /linkmind_create 客服知识库 https://example.com/doc.pdf 训练
52
+ 5. /linkmind_query 客服知识库 如何退款? → 查询
135
53
  ```
136
54
 
137
- ### Workflow 3: 分享知识库给团队
55
+ ### 普通用户使用
138
56
 
139
57
  ```
140
- 1. /faq_share 客服知识库 987654321 viewer
141
- 分享给同事(只读)
142
- 2. /faq_share 客服知识库 987654321 editor
143
- → 升级为编辑权限
58
+ 1. /linkmind_help 查看可用功能
59
+ 2. /linkmind_list 查看可访问的知识库
60
+ 3. /linkmind_query 客服知识库 问题 → 查询
144
61
  ```
145
62
 
146
63
  ## Important Notes
147
64
 
148
- - 所有操作基于用户渠道 ID 自动认证,无需手动登录
149
- - 知识库使用名称查询,无需记忆 UUID
150
- - 创建知识库后自动成为 owner,可通过 `/faq_share` 管理他人权限
151
- - 只能查询和操作自己有权限的知识库
65
+ - 首次使用发 `/linkmind_help` 即可了解所有功能
66
+ - 服务器未认主时所有命令会提示先认主
67
+ - Owner 创建的知识库默认私有,需通过 /linkmind_share 开放
68
+ - 普通用户无法创建/删除知识库