@neomei/opencode-feishu 0.2.7 → 0.2.8
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/core/config.d.ts +3 -3
- package/dist/core/config.js +1 -1
- package/dist/core/config.js.map +1 -1
- package/dist/core/message-handler.d.ts +7 -0
- package/dist/core/message-handler.d.ts.map +1 -1
- package/dist/core/message-handler.js +323 -5
- package/dist/core/message-handler.js.map +1 -1
- package/dist/core/session-manager.d.ts +1 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +18 -2
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/types.d.ts +14 -2
- package/dist/core/types.d.ts.map +1 -1
- package/dist/feishu/card.d.ts +3 -1
- package/dist/feishu/card.d.ts.map +1 -1
- package/dist/feishu/card.js +128 -30
- package/dist/feishu/card.js.map +1 -1
- package/dist/opencode/client.d.ts +10 -0
- package/dist/opencode/client.d.ts.map +1 -1
- package/dist/opencode/client.js +94 -2
- package/dist/opencode/client.js.map +1 -1
- package/dist/opencode/event-handler.d.ts +13 -1
- package/dist/opencode/event-handler.d.ts.map +1 -1
- package/dist/opencode/event-handler.js +89 -9
- package/dist/opencode/event-handler.js.map +1 -1
- package/package.json +1 -1
package/dist/core/config.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ declare const FeishuConfigSchema: z.ZodObject<{
|
|
|
20
20
|
onSessionCreated?: string | undefined;
|
|
21
21
|
onSessionIdle?: string | undefined;
|
|
22
22
|
}>>;
|
|
23
|
-
showProcess: z.ZodDefault<z.
|
|
23
|
+
showProcess: z.ZodDefault<z.ZodEnum<["none", "tools", "thinking", "full"]>>;
|
|
24
24
|
}, "strip", z.ZodTypeAny, {
|
|
25
25
|
appId: string;
|
|
26
26
|
domain: "feishu" | "lark";
|
|
@@ -28,7 +28,7 @@ declare const FeishuConfigSchema: z.ZodObject<{
|
|
|
28
28
|
streaming: boolean;
|
|
29
29
|
requireMention: boolean;
|
|
30
30
|
groupPolicy: "open" | "allowlist" | "disabled";
|
|
31
|
-
showProcess:
|
|
31
|
+
showProcess: "none" | "tools" | "thinking" | "full";
|
|
32
32
|
allowlist?: string[] | undefined;
|
|
33
33
|
appSecret?: string | undefined;
|
|
34
34
|
dedupTtl?: number | undefined;
|
|
@@ -50,7 +50,7 @@ declare const FeishuConfigSchema: z.ZodObject<{
|
|
|
50
50
|
onSessionCreated?: string | undefined;
|
|
51
51
|
onSessionIdle?: string | undefined;
|
|
52
52
|
} | undefined;
|
|
53
|
-
showProcess?:
|
|
53
|
+
showProcess?: "none" | "tools" | "thinking" | "full" | undefined;
|
|
54
54
|
}>;
|
|
55
55
|
/**
|
|
56
56
|
* Resolve the app secret in priority order: FEISHU_APP_SECRET env > config file.
|
package/dist/core/config.js
CHANGED
|
@@ -17,7 +17,7 @@ const FeishuConfigSchema = z.object({
|
|
|
17
17
|
allowlist: z.array(z.string()).optional(),
|
|
18
18
|
dedupTtl: z.number().min(0).optional(),
|
|
19
19
|
hooks: HookConfigSchema,
|
|
20
|
-
showProcess: z.
|
|
20
|
+
showProcess: z.enum(['none', 'tools', 'thinking', 'full']).default('none'),
|
|
21
21
|
});
|
|
22
22
|
/**
|
|
23
23
|
* Resolve the app secret in priority order: FEISHU_APP_SECRET env > config file.
|
package/dist/core/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACxE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAG7B,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEd,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACpD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC;IAC/D,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACpC,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACzC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC3E,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACtC,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,9 @@ export declare class MessageHandler {
|
|
|
10
10
|
private dedup;
|
|
11
11
|
private fileDownloader;
|
|
12
12
|
private botName;
|
|
13
|
+
private availableCommands;
|
|
13
14
|
constructor(config: FeishuConfig, sessionManager: SessionManager, feishuApi: FeishuAPI, opencode: OpenCodeClient, botName?: string);
|
|
15
|
+
private loadAvailableCommands;
|
|
14
16
|
handleMessage(message: FeishuMessage): Promise<void>;
|
|
15
17
|
/**
|
|
16
18
|
* Try to parse the user message as a reply to a pending interaction.
|
|
@@ -31,6 +33,11 @@ export declare class MessageHandler {
|
|
|
31
33
|
} | undefined>;
|
|
32
34
|
private handlePermissionCardAction;
|
|
33
35
|
private handleQuestionCardAction;
|
|
36
|
+
private handleNavigationCardAction;
|
|
37
|
+
/**
|
|
38
|
+
* Handle list commands (models, agents, commands, sessions) by fetching data from OpenCode.
|
|
39
|
+
*/
|
|
40
|
+
private handleListCommand;
|
|
34
41
|
/**
|
|
35
42
|
* Parse a slash command from text.
|
|
36
43
|
* Returns { command, args } if text starts with /, otherwise null.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-handler.d.ts","sourceRoot":"","sources":["../../src/core/message-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAQ5D,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,OAAO,CAAS;
|
|
1
|
+
{"version":3,"file":"message-handler.d.ts","sourceRoot":"","sources":["../../src/core/message-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAQ5D,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,iBAAiB,CAAwF;gBAG/G,MAAM,EAAE,YAAY,EACpB,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,cAAc,EACxB,OAAO,SAAO;YAcF,qBAAqB;IAuC7B,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAqW1D;;;OAGG;YACW,sBAAsB;IAqFpC;;;;OAIG;IACG,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC;QAAE,KAAK,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,IAAI,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,SAAS,CAAC;YAoG1H,0BAA0B;YAsE1B,wBAAwB;YAqDxB,0BAA0B;IAyBxC;;OAEG;YACW,iBAAiB;IAkK/B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;;;OAIG;YACW,aAAa;CA6B5B"}
|
|
@@ -11,6 +11,7 @@ export class MessageHandler {
|
|
|
11
11
|
dedup;
|
|
12
12
|
fileDownloader;
|
|
13
13
|
botName;
|
|
14
|
+
availableCommands = new Map();
|
|
14
15
|
constructor(config, sessionManager, feishuApi, opencode, botName = '点点') {
|
|
15
16
|
this.config = config;
|
|
16
17
|
this.sessionManager = sessionManager;
|
|
@@ -19,6 +20,44 @@ export class MessageHandler {
|
|
|
19
20
|
this.botName = botName;
|
|
20
21
|
this.dedup = new MessageDeduplicator(config.dedupTtl || 600_000);
|
|
21
22
|
this.fileDownloader = new FileDownloader();
|
|
23
|
+
// Load available commands on startup
|
|
24
|
+
this.loadAvailableCommands();
|
|
25
|
+
}
|
|
26
|
+
async loadAvailableCommands() {
|
|
27
|
+
try {
|
|
28
|
+
log.info('Loading available commands from OpenCode');
|
|
29
|
+
const commands = await this.opencode.getCommands();
|
|
30
|
+
if (commands && Array.isArray(commands)) {
|
|
31
|
+
for (const cmd of commands) {
|
|
32
|
+
if (cmd.name) {
|
|
33
|
+
this.availableCommands.set(cmd.name, {
|
|
34
|
+
type: cmd.source === 'mcp' ? 'custom' : 'session',
|
|
35
|
+
description: cmd.description
|
|
36
|
+
});
|
|
37
|
+
log.info({ name: cmd.name, source: cmd.source, description: cmd.description }, 'Loaded command');
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
log.info({ count: this.availableCommands.size }, 'Loaded available commands');
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
log.warn({ commands }, 'No commands loaded from OpenCode');
|
|
44
|
+
}
|
|
45
|
+
// Also add known TUI commands
|
|
46
|
+
const tuiCommands = [
|
|
47
|
+
'session.list', 'session.new', 'session.share', 'session.interrupt', 'session.compact',
|
|
48
|
+
'session.page.up', 'session.page.down', 'session.line.up', 'session.line.down',
|
|
49
|
+
'session.half.page.up', 'session.half.page.down', 'session.first', 'session.last',
|
|
50
|
+
'prompt.clear', 'prompt.submit', 'agent.cycle'
|
|
51
|
+
];
|
|
52
|
+
for (const cmd of tuiCommands) {
|
|
53
|
+
if (!this.availableCommands.has(cmd)) {
|
|
54
|
+
this.availableCommands.set(cmd, { type: 'tui' });
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch (err) {
|
|
59
|
+
log.error({ err }, 'Failed to load available commands');
|
|
60
|
+
}
|
|
22
61
|
}
|
|
23
62
|
async handleMessage(message) {
|
|
24
63
|
try {
|
|
@@ -183,7 +222,7 @@ export class MessageHandler {
|
|
|
183
222
|
}
|
|
184
223
|
this.sessionManager.updateStatus(chatId, 'busy');
|
|
185
224
|
// Show thinking card immediately before sending prompt
|
|
186
|
-
if (
|
|
225
|
+
if (this.config.showProcess !== 'none') {
|
|
187
226
|
const thinkingCard = FeishuCard.createThinkingCard(this.botName);
|
|
188
227
|
log.info({ chatId }, 'Sending thinking card');
|
|
189
228
|
const msg = await this.feishuApi.sendCard(chatId, thinkingCard);
|
|
@@ -196,9 +235,56 @@ export class MessageHandler {
|
|
|
196
235
|
try {
|
|
197
236
|
const slashCommand = this.parseSlashCommand(text);
|
|
198
237
|
if (slashCommand) {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
238
|
+
// Map common shortcuts to TUI commands
|
|
239
|
+
const commandMappings = {
|
|
240
|
+
'new': 'session.new',
|
|
241
|
+
'share': 'session.share',
|
|
242
|
+
'interrupt': 'session.interrupt',
|
|
243
|
+
'compact': 'session.compact',
|
|
244
|
+
'pageup': 'session.page.up',
|
|
245
|
+
'pagedown': 'session.page.down',
|
|
246
|
+
'lineup': 'session.line.up',
|
|
247
|
+
'linedown': 'session.line.down',
|
|
248
|
+
'halfpageup': 'session.half.page.up',
|
|
249
|
+
'halfpagedown': 'session.half.page.down',
|
|
250
|
+
'first': 'session.first',
|
|
251
|
+
'last': 'session.last',
|
|
252
|
+
'clear': 'prompt.clear',
|
|
253
|
+
'submit': 'prompt.submit',
|
|
254
|
+
'nextagent': 'agent.cycle',
|
|
255
|
+
};
|
|
256
|
+
// Apply mapping if exists
|
|
257
|
+
const mappedCommand = commandMappings[slashCommand.command] || slashCommand.command;
|
|
258
|
+
if (mappedCommand !== slashCommand.command) {
|
|
259
|
+
log.info({ original: slashCommand.command, mapped: mappedCommand }, 'Mapped command');
|
|
260
|
+
}
|
|
261
|
+
// Check if command needs special handling (list queries)
|
|
262
|
+
const listCommands = ['models', 'agents', 'commands', 'sessions', 'tools', 'worktrees', 'files', 'status', 'config'];
|
|
263
|
+
if (listCommands.includes(slashCommand.command)) {
|
|
264
|
+
// Handle list commands by fetching data from OpenCode
|
|
265
|
+
await this.handleListCommand(chatId, session.id, slashCommand.command, slashCommand.args);
|
|
266
|
+
}
|
|
267
|
+
else {
|
|
268
|
+
// Check command type from cached commands
|
|
269
|
+
const commandInfo = this.availableCommands.get(mappedCommand);
|
|
270
|
+
if (commandInfo?.type === 'tui') {
|
|
271
|
+
// TUI commands are executed via tui.executeCommand
|
|
272
|
+
log.info({ sessionId: session.id, command: mappedCommand }, 'Executing TUI command');
|
|
273
|
+
await this.opencode.executeTuiCommand(mappedCommand);
|
|
274
|
+
log.info('TUI command executed successfully');
|
|
275
|
+
// Send confirmation and set session to idle
|
|
276
|
+
await this.feishuApi.sendText(chatId, `✅ 已执行命令: /${slashCommand.command}`);
|
|
277
|
+
this.sessionManager.updateStatus(chatId, 'idle');
|
|
278
|
+
this.sessionManager.clearCurrentMessage(chatId);
|
|
279
|
+
}
|
|
280
|
+
else {
|
|
281
|
+
// All other commands (session commands and custom commands)
|
|
282
|
+
// are sent as session commands
|
|
283
|
+
log.info({ sessionId: session.id, command: slashCommand.command, args: slashCommand.args, type: commandInfo?.type || 'unknown' }, 'Sending command to OpenCode');
|
|
284
|
+
await this.opencode.sendCommand(session.id, slashCommand.command, slashCommand.args);
|
|
285
|
+
log.info('Command sent successfully');
|
|
286
|
+
}
|
|
287
|
+
}
|
|
202
288
|
}
|
|
203
289
|
else {
|
|
204
290
|
log.info({ sessionId: session.id, files: files.length }, 'Sending prompt to OpenCode');
|
|
@@ -218,9 +304,44 @@ export class MessageHandler {
|
|
|
218
304
|
}
|
|
219
305
|
catch (err) {
|
|
220
306
|
log.error({ err }, 'Failed to send prompt');
|
|
221
|
-
|
|
307
|
+
// Extract meaningful error message from various error formats
|
|
308
|
+
let errorMessage;
|
|
309
|
+
if (err instanceof Error) {
|
|
310
|
+
errorMessage = err.message;
|
|
311
|
+
}
|
|
312
|
+
else if (typeof err === 'object' && err !== null) {
|
|
313
|
+
const errObj = err;
|
|
314
|
+
if (errObj.data?.message) {
|
|
315
|
+
errorMessage = errObj.data.message;
|
|
316
|
+
}
|
|
317
|
+
else if (errObj.message) {
|
|
318
|
+
errorMessage = errObj.message;
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
try {
|
|
322
|
+
errorMessage = JSON.stringify(err);
|
|
323
|
+
}
|
|
324
|
+
catch {
|
|
325
|
+
errorMessage = String(err);
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
errorMessage = String(err);
|
|
331
|
+
}
|
|
332
|
+
log.info({ errorMessage, errType: typeof err }, 'Creating error card with message');
|
|
333
|
+
const errorCard = FeishuCard.createErrorCard(errorMessage);
|
|
334
|
+
log.info({ cardContent: errorCard.elements[0]?.text?.content }, 'Error card content');
|
|
335
|
+
// Set status to idle BEFORE sending the error card to prevent
|
|
336
|
+
// EventHandler from sending a duplicate error card via session.error event.
|
|
222
337
|
this.sessionManager.updateStatus(chatId, 'idle');
|
|
223
338
|
this.sessionManager.clearCurrentMessage(chatId);
|
|
339
|
+
// Mark error as handled to prevent duplicate error cards
|
|
340
|
+
const session = this.sessionManager.getSession(chatId);
|
|
341
|
+
if (session) {
|
|
342
|
+
session.errorHandled = true;
|
|
343
|
+
}
|
|
344
|
+
await this.feishuApi.sendCard(chatId, errorCard);
|
|
224
345
|
}
|
|
225
346
|
}
|
|
226
347
|
catch (err) {
|
|
@@ -324,6 +445,10 @@ export class MessageHandler {
|
|
|
324
445
|
}
|
|
325
446
|
const actionType = value.action || value._oc;
|
|
326
447
|
log.info({ chatId, messageId, actionType, value }, 'Card action received');
|
|
448
|
+
// Handle navigation commands (TUI operations)
|
|
449
|
+
if (actionType === 'nav') {
|
|
450
|
+
return this.handleNavigationCardAction(chatId, messageId, value);
|
|
451
|
+
}
|
|
327
452
|
if (actionType !== 'perm' && actionType !== 'q') {
|
|
328
453
|
log.warn({ chatId, actionType, value }, 'Unknown card action type');
|
|
329
454
|
return { toast: { type: 'error', content: '不支持的操作' } };
|
|
@@ -503,6 +628,199 @@ export class MessageHandler {
|
|
|
503
628
|
// See note in handlePermissionCardAction about omitting the `card` field.
|
|
504
629
|
return { toast: { type: 'success', content: `已提交选择:${label}` } };
|
|
505
630
|
}
|
|
631
|
+
async handleNavigationCardAction(chatId, messageId, value) {
|
|
632
|
+
const cmd = value.cmd;
|
|
633
|
+
const sessionId = value.sessionId;
|
|
634
|
+
if (!cmd) {
|
|
635
|
+
log.warn({ chatId, messageId, value }, 'Navigation action missing cmd');
|
|
636
|
+
return { toast: { type: 'error', content: '无效的导航操作' } };
|
|
637
|
+
}
|
|
638
|
+
log.info({ chatId, messageId, cmd, sessionId }, 'Card action: navigation command');
|
|
639
|
+
try {
|
|
640
|
+
await this.opencode.sendCommand(sessionId || chatId, cmd);
|
|
641
|
+
log.info({ chatId, messageId, cmd }, 'Navigation command sent to OpenCode');
|
|
642
|
+
return { toast: { type: 'success', content: '已执行' } };
|
|
643
|
+
}
|
|
644
|
+
catch (err) {
|
|
645
|
+
log.error({ err, chatId, messageId, cmd }, 'Failed to send navigation command');
|
|
646
|
+
return { toast: { type: 'error', content: '执行失败' } };
|
|
647
|
+
}
|
|
648
|
+
}
|
|
649
|
+
/**
|
|
650
|
+
* Handle list commands (models, agents, commands, sessions) by fetching data from OpenCode.
|
|
651
|
+
*/
|
|
652
|
+
async handleListCommand(chatId, sessionId, command, args) {
|
|
653
|
+
log.info({ sessionId, command, args }, `Fetching ${command} list from OpenCode`);
|
|
654
|
+
try {
|
|
655
|
+
let message = '';
|
|
656
|
+
switch (command) {
|
|
657
|
+
case 'models': {
|
|
658
|
+
const providers = await this.opencode.getProviders();
|
|
659
|
+
message = '**🤖 可用模型列表**\n\n';
|
|
660
|
+
if (providers && Array.isArray(providers)) {
|
|
661
|
+
for (const provider of providers) {
|
|
662
|
+
message += `**${provider.name || provider.id || 'Unknown'}**\n`;
|
|
663
|
+
if (provider.models && Array.isArray(provider.models)) {
|
|
664
|
+
for (const model of provider.models) {
|
|
665
|
+
message += `- ${model.id || model.name || 'Unknown'}`;
|
|
666
|
+
if (model.default)
|
|
667
|
+
message += ' (默认)';
|
|
668
|
+
message += '\n';
|
|
669
|
+
}
|
|
670
|
+
}
|
|
671
|
+
message += '\n';
|
|
672
|
+
}
|
|
673
|
+
}
|
|
674
|
+
else {
|
|
675
|
+
message += '暂无模型信息\n';
|
|
676
|
+
}
|
|
677
|
+
break;
|
|
678
|
+
}
|
|
679
|
+
case 'agents': {
|
|
680
|
+
const agents = await this.opencode.getAgents();
|
|
681
|
+
message = '**🎯 可用代理列表**\n\n';
|
|
682
|
+
if (agents && Array.isArray(agents)) {
|
|
683
|
+
for (const agent of agents) {
|
|
684
|
+
message += `- ${agent.name || agent.id || 'Unknown'}`;
|
|
685
|
+
if (agent.description)
|
|
686
|
+
message += `: ${agent.description}`;
|
|
687
|
+
message += '\n';
|
|
688
|
+
}
|
|
689
|
+
}
|
|
690
|
+
else {
|
|
691
|
+
message += '暂无代理信息\n';
|
|
692
|
+
}
|
|
693
|
+
break;
|
|
694
|
+
}
|
|
695
|
+
case 'commands': {
|
|
696
|
+
const commands = await this.opencode.getCommands();
|
|
697
|
+
message = '**⌨️ 可用命令列表**\n\n';
|
|
698
|
+
if (commands && Array.isArray(commands)) {
|
|
699
|
+
for (const cmd of commands) {
|
|
700
|
+
message += `- /${cmd.name || cmd.id || 'Unknown'}`;
|
|
701
|
+
if (cmd.description)
|
|
702
|
+
message += `: ${cmd.description}`;
|
|
703
|
+
message += '\n';
|
|
704
|
+
}
|
|
705
|
+
}
|
|
706
|
+
else {
|
|
707
|
+
message += '暂无命令信息\n';
|
|
708
|
+
}
|
|
709
|
+
break;
|
|
710
|
+
}
|
|
711
|
+
case 'sessions': {
|
|
712
|
+
const sessions = await this.opencode.getSessions();
|
|
713
|
+
message = '**💬 会话列表**\n\n';
|
|
714
|
+
if (sessions && Array.isArray(sessions)) {
|
|
715
|
+
for (const sess of sessions) {
|
|
716
|
+
message += `- ${sess.title || sess.id || 'Unknown'}`;
|
|
717
|
+
if (sess.createdAt)
|
|
718
|
+
message += ` (${new Date(sess.createdAt).toLocaleString()})`;
|
|
719
|
+
message += '\n';
|
|
720
|
+
}
|
|
721
|
+
}
|
|
722
|
+
else {
|
|
723
|
+
message += '暂无会话信息\n';
|
|
724
|
+
}
|
|
725
|
+
break;
|
|
726
|
+
}
|
|
727
|
+
case 'tools': {
|
|
728
|
+
const tools = await this.opencode.getTools();
|
|
729
|
+
message = '**🔧 可用工具列表**\n\n';
|
|
730
|
+
if (tools && Array.isArray(tools)) {
|
|
731
|
+
for (const tool of tools) {
|
|
732
|
+
message += `- ${tool.name || tool.id || 'Unknown'}`;
|
|
733
|
+
if (tool.description)
|
|
734
|
+
message += `: ${tool.description}`;
|
|
735
|
+
message += '\n';
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
else {
|
|
739
|
+
message += '暂无工具信息\n';
|
|
740
|
+
}
|
|
741
|
+
break;
|
|
742
|
+
}
|
|
743
|
+
case 'worktrees': {
|
|
744
|
+
const worktrees = await this.opencode.getWorktrees();
|
|
745
|
+
message = '**🌳 工作树列表**\n\n';
|
|
746
|
+
if (worktrees && Array.isArray(worktrees)) {
|
|
747
|
+
for (const wt of worktrees) {
|
|
748
|
+
message += `- ${wt.name || wt.id || 'Unknown'}`;
|
|
749
|
+
if (wt.path)
|
|
750
|
+
message += ` (${wt.path})`;
|
|
751
|
+
message += '\n';
|
|
752
|
+
}
|
|
753
|
+
}
|
|
754
|
+
else {
|
|
755
|
+
message += '暂无工作树信息\n';
|
|
756
|
+
}
|
|
757
|
+
break;
|
|
758
|
+
}
|
|
759
|
+
case 'files': {
|
|
760
|
+
const files = await this.opencode.getFiles(args);
|
|
761
|
+
message = `**📁 文件列表${args ? ` (${args})` : ''}**\n\n`;
|
|
762
|
+
if (files && Array.isArray(files)) {
|
|
763
|
+
for (const file of files) {
|
|
764
|
+
message += `- ${file.name || file.id || 'Unknown'}`;
|
|
765
|
+
if (file.type)
|
|
766
|
+
message += ` [${file.type}]`;
|
|
767
|
+
message += '\n';
|
|
768
|
+
}
|
|
769
|
+
}
|
|
770
|
+
else {
|
|
771
|
+
message += '暂无文件信息\n';
|
|
772
|
+
}
|
|
773
|
+
break;
|
|
774
|
+
}
|
|
775
|
+
case 'status': {
|
|
776
|
+
const status = await this.opencode.getStatus();
|
|
777
|
+
message = '**📊 项目状态**\n\n';
|
|
778
|
+
if (status) {
|
|
779
|
+
message += `- 分支: ${status.branch || 'Unknown'}\n`;
|
|
780
|
+
message += `- 提交: ${status.commit || 'Unknown'}\n`;
|
|
781
|
+
if (status.files && Array.isArray(status.files)) {
|
|
782
|
+
message += `- 变更文件: ${status.files.length}\n`;
|
|
783
|
+
for (const file of status.files) {
|
|
784
|
+
message += ` ${file.status || '?'} ${file.name || 'Unknown'}\n`;
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
}
|
|
788
|
+
else {
|
|
789
|
+
message += '暂无状态信息\n';
|
|
790
|
+
}
|
|
791
|
+
break;
|
|
792
|
+
}
|
|
793
|
+
case 'config': {
|
|
794
|
+
const config = await this.opencode.getConfig();
|
|
795
|
+
message = '**⚙️ 配置信息**\n\n';
|
|
796
|
+
if (config) {
|
|
797
|
+
message += `- 项目: ${config.name || 'Unknown'}\n`;
|
|
798
|
+
message += `- 目录: ${config.directory || 'Unknown'}\n`;
|
|
799
|
+
if (config.providers && Array.isArray(config.providers)) {
|
|
800
|
+
message += `- Providers: ${config.providers.length}\n`;
|
|
801
|
+
}
|
|
802
|
+
if (config.agents && Array.isArray(config.agents)) {
|
|
803
|
+
message += `- Agents: ${config.agents.length}\n`;
|
|
804
|
+
}
|
|
805
|
+
}
|
|
806
|
+
else {
|
|
807
|
+
message += '暂无配置信息\n';
|
|
808
|
+
}
|
|
809
|
+
break;
|
|
810
|
+
}
|
|
811
|
+
}
|
|
812
|
+
await this.feishuApi.sendText(chatId, message);
|
|
813
|
+
this.sessionManager.updateStatus(chatId, 'idle');
|
|
814
|
+
this.sessionManager.clearCurrentMessage(chatId);
|
|
815
|
+
log.info({ command }, `${command} list sent successfully`);
|
|
816
|
+
}
|
|
817
|
+
catch (err) {
|
|
818
|
+
log.error({ err, command }, `Failed to fetch ${command} list`);
|
|
819
|
+
await this.feishuApi.sendText(chatId, `❌ 获取${command}列表失败`);
|
|
820
|
+
this.sessionManager.updateStatus(chatId, 'idle');
|
|
821
|
+
this.sessionManager.clearCurrentMessage(chatId);
|
|
822
|
+
}
|
|
823
|
+
}
|
|
506
824
|
/**
|
|
507
825
|
* Parse a slash command from text.
|
|
508
826
|
* Returns { command, args } if text starts with /, otherwise null.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-handler.js","sourceRoot":"","sources":["../../src/core/message-handler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"message-handler.js","sourceRoot":"","sources":["../../src/core/message-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,7 +27,7 @@ export declare class SessionManager {
|
|
|
27
27
|
getChatIdBySession(sessionId: string): string | undefined;
|
|
28
28
|
updateStatus(chatId: string, status: 'idle' | 'busy'): void;
|
|
29
29
|
setCurrentMessage(chatId: string, messageId: string): void;
|
|
30
|
-
appendContent(chatId: string, delta: string, partId?: string): void;
|
|
30
|
+
appendContent(chatId: string, delta: string, partId?: string, field?: string): void;
|
|
31
31
|
clearCurrentMessage(chatId: string): void;
|
|
32
32
|
/** Drop the mapping for a chat — used when OpenCode session was purged server-side. */
|
|
33
33
|
dropSession(chatId: string): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAoBrD,MAAM,WAAW,qBAAqB;IACpC,gGAAgG;IAChG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wCAAwC;IACxC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,WAAW,CAAC,CAAgB;IACpC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,WAAW,CAAS;gBAEhB,QAAQ,EAAE,cAAc,EAAE,OAAO,GAAE,qBAA0B;IAYnE,kBAAkB,CACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,KAAK,GAAG,OAAO,GACxB,OAAO,CAAC,WAAW,CAAC;IAyDvB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAInD,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IASzD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAoBrD,MAAM,WAAW,qBAAqB;IACpC,gGAAgG;IAChG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wCAAwC;IACxC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,WAAW,CAAC,CAAgB;IACpC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,WAAW,CAAS;gBAEhB,QAAQ,EAAE,cAAc,EAAE,OAAO,GAAE,qBAA0B;IAYnE,kBAAkB,CACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,KAAK,GAAG,OAAO,GACxB,OAAO,CAAC,WAAW,CAAC;IAyDvB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAInD,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IASzD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAQ3D,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ1D,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IA2BnF,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAczC,uFAAuF;IACvF,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOjC,cAAc,IAAI,WAAW,EAAE;IAI/B,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,GAAG,IAAI;IAO5E,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAIrE,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOvC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB9B,oEAAoE;IAC9D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAa5B,OAAO,CAAC,SAAS;YAYH,IAAI;IAuBlB,OAAO,CAAC,OAAO;CAyBhB"}
|