mirror of
https://github.com/hansjone/dsh-im-ops.git
synced 2026-10-10 11:40:45 +08:00
feat: add session and preset list aliases
This commit is contained in:
parent
92ec91b7bd
commit
98c1e48271
21 changed files with 112 additions and 58 deletions
|
|
@ -93,7 +93,7 @@ const REPAIR_COMMAND = /^\/repair(?:\s+(qr|status|cancel|verify))?\s*$/i;
|
|||
const WATCH_COMMAND = /^\/watch(?:\s+([^\s]+))?$/i;
|
||||
const UNWATCH_COMMAND = /^\/unwatch(?:\s+([^\s]+))?$/i;
|
||||
const WATCHLIST_COMMAND = /^\/watchlist$/i;
|
||||
const SESSION_LIST_PREFIX = /^\/sessionlist(?:\s|$)/i;
|
||||
const SESSION_LIST_PREFIX = /^\/(?:sessionlist|sessions)(?:\s|$)/i;
|
||||
const WORKSPACE_LIST_COMMAND = /^\/workspacelist$/i;
|
||||
const NUMBER_REPLY = /^\d{1,2}$/;
|
||||
/** A displayed menu stays number-tappable for this long. */
|
||||
|
|
@ -133,13 +133,13 @@ const REPAIR_URL_HOSTS = new Set([
|
|||
|
||||
const ARCHIVED_COMMAND = /^\/archived(?:\s+(on|off))?$/i;
|
||||
/** Matches fast card commands that should not be queued behind a running task. */
|
||||
const CARD_COMMAND = /^\/(?:m(?:enu)?|new|help|status|compact|sessionlist(?:\s|$)|workspacelist|watchlist|archived(?:\s+(on|off))?)$/i;
|
||||
const CARD_COMMAND = /^\/(?:m(?:enu)?|new|help|status|compact|(?:sessionlist|sessions)(?:\s|$)|workspacelist|watchlist|archived(?:\s+(on|off))?)$/i;
|
||||
|
||||
/** Canonical workspace/session help advertised by every bridge family. */
|
||||
const WORKSPACE_HELP_LINES = [
|
||||
'/session Session ID 或当前工作区序号 将当前聊天绑定到指定会话',
|
||||
'/workspacelist 列出工作区绝对路径',
|
||||
'/sessionlist [工作区序号或绝对路径] 列出会话 ID 和标题',
|
||||
'/sessionlist 或 /sessions [工作区序号或绝对路径] 列出会话 ID 和标题',
|
||||
];
|
||||
|
||||
/** Safe user-facing text for bind/workspace failures (no raw messages). */
|
||||
|
|
@ -1005,7 +1005,7 @@ export class FeishuHarnessBridge {
|
|||
return;
|
||||
}
|
||||
if (SESSION_LIST_PREFIX.test(commandText)) {
|
||||
const selector = commandText.slice('/sessionlist'.length).trim() || null;
|
||||
const selector = commandText.replace(/^\/(?:sessionlist|sessions)/i, '').trim() || null;
|
||||
await this.#showSessions({ chatId: event.message.chat_id, key }, selector, 0);
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -487,7 +487,7 @@ export function menuHelpText() {
|
|||
'🤖 助手菜单(回复数字即可,无需记命令)',
|
||||
'',
|
||||
'📋 会话 / 工作区',
|
||||
'/sessionlist 列出工作区会话',
|
||||
'/sessionlist 或 /sessions 列出工作区会话',
|
||||
'/session ID 绑定已有会话',
|
||||
'/workspacelist 列出工作区',
|
||||
'/workspace 路径 切换工作区',
|
||||
|
|
@ -506,7 +506,7 @@ export function menuHelpText() {
|
|||
'/unwatch ID 取消关注',
|
||||
'',
|
||||
'🤖 预设 / 模型',
|
||||
'/presetlist 列出可用 Agent Preset',
|
||||
'/presetlist 或 /presets 列出可用 Agent Preset',
|
||||
'/preset [序号或完整ID] 查看或设置当前机器人 Agent Preset',
|
||||
'纯数字 ID:/preset id:<ID>',
|
||||
'/preset --default 跟随 Host 默认',
|
||||
|
|
@ -553,7 +553,7 @@ const HELP_TEXT_COMMANDS = [
|
|||
'`/m` — 打开菜单卡片',
|
||||
'`/new` — 开启全新会话',
|
||||
'`/session ID` — 绑定已有会话',
|
||||
'`/sessionlist [工作区]` — 列出会话',
|
||||
'`/sessionlist [工作区]` 或 `/sessions [工作区]` — 列出会话',
|
||||
'`/workspace 路径` — 切换工作区',
|
||||
'`/workspacelist` — 列出工作区',
|
||||
'`/status` — 查看连接状态',
|
||||
|
|
@ -564,7 +564,7 @@ const HELP_TEXT_COMMANDS = [
|
|||
'`/watchlist` — 关注列表',
|
||||
'`/unwatch ID` — 取消关注',
|
||||
'`/archived on/off` — 归档显隐',
|
||||
'`/presetlist` — 列出预设',
|
||||
'`/presetlist` 或 `/presets` — 列出预设',
|
||||
'`/preset [序号/ID]` — 切换预设',
|
||||
'`/preset --default` — 跟随默认',
|
||||
'`/models` — 列出模型',
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue