@caoruhua/open-claude-remote 1.0.0 → 1.0.4
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/README.md +2 -2
- package/dist/backend/src/api/file-routes.d.ts.map +1 -1
- package/dist/backend/src/api/file-routes.js +36 -6
- package/dist/backend/src/api/file-routes.js.map +1 -1
- package/dist/backend/src/instance/instance-session.d.ts +7 -0
- package/dist/backend/src/instance/instance-session.d.ts.map +1 -1
- package/dist/backend/src/instance/instance-session.js +53 -13
- package/dist/backend/src/instance/instance-session.js.map +1 -1
- package/dist/backend/src/skills/skill-command-merger.d.ts +5 -6
- package/dist/backend/src/skills/skill-command-merger.d.ts.map +1 -1
- package/dist/backend/src/skills/skill-command-merger.js +41 -53
- package/dist/backend/src/skills/skill-command-merger.js.map +1 -1
- package/frontend-dist/assets/{index-BsSXVL4r.js → index-wh4MHpoB.js} +50 -50
- package/frontend-dist/index.html +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -77,7 +77,7 @@ Example: When connected to both WiFi (192.168.x.x) and company VPN (30.x.x.x), b
|
|
|
77
77
|
- Auto-skips on subsequent visits
|
|
78
78
|
|
|
79
79
|
### Markdown File Viewer
|
|
80
|
-
- **Floating access** — tap the floating 📄 button in the
|
|
80
|
+
- **Floating access** — tap the floating 📄 button in the top-right corner (below instance tabs) to browse all Markdown files (auto-refreshes every 5 seconds)
|
|
81
81
|
- **Draggable position** — drag the button to reposition it anywhere on screen
|
|
82
82
|
- **Long-press to hide** — press and hold the button to hide it (refresh to restore, or use Settings > Display)
|
|
83
83
|
- **One-tap preview** — select a file to navigate to the Markdown viewer (browser back button returns to terminal)
|
|
@@ -594,7 +594,7 @@ claude-remote
|
|
|
594
594
|
- 后续访问自动跳过
|
|
595
595
|
|
|
596
596
|
### Markdown 文件查看器
|
|
597
|
-
- **悬浮按钮访问** —
|
|
597
|
+
- **悬浮按钮访问** — 点击右上角的悬浮 📄 按钮(实例标签栏下方)浏览所有 Markdown 文件(每 5 秒自动刷新)
|
|
598
598
|
- **拖拽定位** — 可拖动按钮到屏幕任意位置
|
|
599
599
|
- **长按隐藏** — 长按按钮可隐藏(刷新页面恢复,或通过设置>显示重新开启)
|
|
600
600
|
- **一键预览** — 选择文件后导航到 Markdown 查看器(浏览器返回按钮回到终端)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-routes.d.ts","sourceRoot":"","sources":["../../../../backend/src/api/file-routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AA+CvE,oBAAoB;AACpB,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,aAAa;AACb,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU;IACV,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAmFD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,GAC/B,MAAM,
|
|
1
|
+
{"version":3,"file":"file-routes.d.ts","sourceRoot":"","sources":["../../../../backend/src/api/file-routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AA+CvE,oBAAoB;AACpB,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,aAAa;AACb,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU;IACV,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAmFD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,GAC/B,MAAM,CAoMR"}
|
|
@@ -116,6 +116,7 @@ export function createFileRoutes(authModule, instanceManager) {
|
|
|
116
116
|
/**
|
|
117
117
|
* GET /api/file/list - 列出当前工作目录下的 Markdown 文件
|
|
118
118
|
* Query params:
|
|
119
|
+
* - instanceId: 可选,指定实例 ID,优先使用该实例的 cwd
|
|
119
120
|
* - cwd: 可选,指定扫描目录(默认使用第一个实例的 cwd)
|
|
120
121
|
*/
|
|
121
122
|
router.get('/file/list', authModule.requireAuth, async (req, res) => {
|
|
@@ -132,11 +133,26 @@ export function createFileRoutes(authModule, instanceManager) {
|
|
|
132
133
|
});
|
|
133
134
|
return;
|
|
134
135
|
}
|
|
135
|
-
//
|
|
136
|
+
// 确定扫描目录:优先级 instanceId > cwd > 默认第一个允许目录
|
|
137
|
+
const instanceId = req.query.instanceId;
|
|
136
138
|
const queryCwd = req.query.cwd;
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
139
|
+
let baseDir;
|
|
140
|
+
if (instanceId) {
|
|
141
|
+
// 通过 instanceId 获取实例的 cwd
|
|
142
|
+
const instance = instanceManager.getInstance(instanceId);
|
|
143
|
+
if (!instance) {
|
|
144
|
+
logger.warn({ instanceId }, 'File list rejected: instance not found');
|
|
145
|
+
res.status(404).json({ error: 'Instance not found' });
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
baseDir = instance.cwd;
|
|
149
|
+
}
|
|
150
|
+
else if (queryCwd) {
|
|
151
|
+
baseDir = normalizePath(queryCwd, allowedCwds[0]) || allowedCwds[0];
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
baseDir = allowedCwds[0];
|
|
155
|
+
}
|
|
140
156
|
// 安全检查:扫描目录必须在白名单范围内
|
|
141
157
|
if (!isPathAllowed(baseDir, allowedCwds)) {
|
|
142
158
|
logger.warn({ baseDir, allowedCwds }, 'File list rejected: directory not allowed');
|
|
@@ -172,11 +188,13 @@ export function createFileRoutes(authModule, instanceManager) {
|
|
|
172
188
|
/**
|
|
173
189
|
* GET /api/file/read - 读取 Markdown 文件内容
|
|
174
190
|
* Query params:
|
|
191
|
+
* - instanceId: 可选,指定实例 ID,用于解析相对路径
|
|
175
192
|
* - path: 文件路径(绝对路径或相对于 cwd 的相对路径)
|
|
176
193
|
*/
|
|
177
194
|
router.get('/file/read', authModule.requireAuth, async (req, res) => {
|
|
178
195
|
try {
|
|
179
196
|
const rawPath = req.query.path;
|
|
197
|
+
const instanceId = req.query.instanceId;
|
|
180
198
|
if (!rawPath) {
|
|
181
199
|
res.status(400).json({ error: 'Missing path parameter' });
|
|
182
200
|
return;
|
|
@@ -191,8 +209,20 @@ export function createFileRoutes(authModule, instanceManager) {
|
|
|
191
209
|
});
|
|
192
210
|
return;
|
|
193
211
|
}
|
|
194
|
-
//
|
|
195
|
-
|
|
212
|
+
// 确定基准目录:优先级 instanceId > 默认第一个允许目录
|
|
213
|
+
let baseDir;
|
|
214
|
+
if (instanceId) {
|
|
215
|
+
const instance = instanceManager.getInstance(instanceId);
|
|
216
|
+
if (!instance) {
|
|
217
|
+
logger.warn({ instanceId }, 'File read rejected: instance not found');
|
|
218
|
+
res.status(404).json({ error: 'Instance not found' });
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
baseDir = instance.cwd;
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
baseDir = allowedCwds[0];
|
|
225
|
+
}
|
|
196
226
|
const absolutePath = normalizePath(rawPath, baseDir);
|
|
197
227
|
if (!absolutePath) {
|
|
198
228
|
res.status(400).json({ error: 'Invalid path format' });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-routes.js","sourceRoot":"","sources":["../../../../backend/src/api/file-routes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"file-routes.js","sourceRoot":"","sources":["../../../../backend/src/api/file-routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,12 @@ export interface InstanceSessionOptions {
|
|
|
27
27
|
* 复用 SessionController 的核心逻辑
|
|
28
28
|
*/
|
|
29
29
|
export declare class InstanceSession extends EventEmitter {
|
|
30
|
+
/**
|
|
31
|
+
* Delay before falling back active source when the last client of a type disconnects.
|
|
32
|
+
* Prevents unnecessary PTY resize cycles during tab switching:
|
|
33
|
+
* webapp disconnect → relay.resumeResize → PTY resize → Claude Code clear screen → content loss.
|
|
34
|
+
*/
|
|
35
|
+
static readonly ACTIVE_SOURCE_FALLBACK_DELAY_MS = 3000;
|
|
30
36
|
readonly instanceId: string;
|
|
31
37
|
readonly name: string;
|
|
32
38
|
readonly cwd: string;
|
|
@@ -41,6 +47,7 @@ export declare class InstanceSession extends EventEmitter {
|
|
|
41
47
|
private _activeSource;
|
|
42
48
|
private _lastKnownSizes;
|
|
43
49
|
private _relay;
|
|
50
|
+
private activeSourceFallbackTimer;
|
|
44
51
|
private pushService;
|
|
45
52
|
private notificationServiceFactory;
|
|
46
53
|
private notificationManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance-session.d.ts","sourceRoot":"","sources":["../../../../backend/src/instance/instance-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iDAAiD,CAAC;AAKlG,qCAAqC;AACrC,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7C,iDAAiD;AACjD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAAC;AAQhE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,gCAAgC;IAChC,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAEpC,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,OAAO,CAA8B;IAE7C,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,eAAe,CAA0D;IACjF,OAAO,CAAC,MAAM,CAA8B;
|
|
1
|
+
{"version":3,"file":"instance-session.d.ts","sourceRoot":"","sources":["../../../../backend/src/instance/instance-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,12 @@ const WS_MAX_CHUNK_BYTES = 32 * 1024;
|
|
|
12
12
|
* 复用 SessionController 的核心逻辑
|
|
13
13
|
*/
|
|
14
14
|
export class InstanceSession extends EventEmitter {
|
|
15
|
+
/**
|
|
16
|
+
* Delay before falling back active source when the last client of a type disconnects.
|
|
17
|
+
* Prevents unnecessary PTY resize cycles during tab switching:
|
|
18
|
+
* webapp disconnect → relay.resumeResize → PTY resize → Claude Code clear screen → content loss.
|
|
19
|
+
*/
|
|
20
|
+
static ACTIVE_SOURCE_FALLBACK_DELAY_MS = 3000;
|
|
15
21
|
instanceId;
|
|
16
22
|
name;
|
|
17
23
|
cwd;
|
|
@@ -26,6 +32,7 @@ export class InstanceSession extends EventEmitter {
|
|
|
26
32
|
_activeSource = null;
|
|
27
33
|
_lastKnownSizes = new Map();
|
|
28
34
|
_relay = null;
|
|
35
|
+
activeSourceFallbackTimer = null;
|
|
29
36
|
pushService = null;
|
|
30
37
|
notificationServiceFactory = null;
|
|
31
38
|
notificationManager = null;
|
|
@@ -95,6 +102,11 @@ export class InstanceSession extends EventEmitter {
|
|
|
95
102
|
onUserInput(source) {
|
|
96
103
|
if (source === this._activeSource)
|
|
97
104
|
return;
|
|
105
|
+
// Cancel any pending fallback timer — user explicitly switched source
|
|
106
|
+
if (this.activeSourceFallbackTimer) {
|
|
107
|
+
clearTimeout(this.activeSourceFallbackTimer);
|
|
108
|
+
this.activeSourceFallbackTimer = null;
|
|
109
|
+
}
|
|
98
110
|
const prev = this._activeSource;
|
|
99
111
|
this._activeSource = source;
|
|
100
112
|
if (source === 'local') {
|
|
@@ -129,6 +141,15 @@ export class InstanceSession extends EventEmitter {
|
|
|
129
141
|
* 注册一个 WS 客户端到此实例
|
|
130
142
|
*/
|
|
131
143
|
addClient(ws, clientType) {
|
|
144
|
+
// Cancel pending active source fallback — a new client connected
|
|
145
|
+
if (this.activeSourceFallbackTimer) {
|
|
146
|
+
clearTimeout(this.activeSourceFallbackTimer);
|
|
147
|
+
this.activeSourceFallbackTimer = null;
|
|
148
|
+
logger.info({
|
|
149
|
+
instanceId: this.instanceId,
|
|
150
|
+
clientType,
|
|
151
|
+
}, 'Active source fallback cancelled (client reconnected)');
|
|
152
|
+
}
|
|
132
153
|
const clientInfo = { ws, alive: true, clientType };
|
|
133
154
|
this.clients.add(clientInfo);
|
|
134
155
|
logger.info({
|
|
@@ -183,23 +204,38 @@ export class InstanceSession extends EventEmitter {
|
|
|
183
204
|
return;
|
|
184
205
|
this.clients.delete(clientInfo);
|
|
185
206
|
const { clientType } = clientInfo;
|
|
186
|
-
//
|
|
207
|
+
// 活跃端断开回退逻辑(延迟执行,防止 tab 切换时不必要的 resize 循环)
|
|
187
208
|
if (clientType === this._activeSource) {
|
|
188
209
|
const hasRemaining = [...this.clients].some(c => c.clientType === clientType);
|
|
189
|
-
if (!hasRemaining) {
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
this.
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
210
|
+
if (!hasRemaining && !this.activeSourceFallbackTimer) {
|
|
211
|
+
this.activeSourceFallbackTimer = setTimeout(() => {
|
|
212
|
+
this.activeSourceFallbackTimer = null;
|
|
213
|
+
// 已被其他操作切走(如 local user input)→ 跳过
|
|
214
|
+
if (this._activeSource !== clientType)
|
|
215
|
+
return;
|
|
216
|
+
// debounce 期间有同类型客户端重连 → 跳过
|
|
217
|
+
const hasReconnected = [...this.clients].some(c => c.clientType === clientType);
|
|
218
|
+
if (hasReconnected)
|
|
219
|
+
return;
|
|
220
|
+
const prev = this._activeSource;
|
|
221
|
+
this._activeSource = this._relay ? 'local' : null;
|
|
222
|
+
if (this._relay && this._activeSource === 'local') {
|
|
223
|
+
this._relay.resumeResize();
|
|
224
|
+
}
|
|
225
|
+
// 清理已无在线客户端的 size 记录,避免后续新客户端继承旧值
|
|
226
|
+
this._lastKnownSizes.delete(clientType);
|
|
227
|
+
logger.info({
|
|
228
|
+
instanceId: this.instanceId,
|
|
229
|
+
prev,
|
|
230
|
+
next: this._activeSource,
|
|
231
|
+
reason,
|
|
232
|
+
}, 'Active source fallback (delayed)');
|
|
233
|
+
}, InstanceSession.ACTIVE_SOURCE_FALLBACK_DELAY_MS);
|
|
197
234
|
logger.info({
|
|
198
235
|
instanceId: this.instanceId,
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
}, 'Active source fallback on disconnect');
|
|
236
|
+
clientType,
|
|
237
|
+
delayMs: InstanceSession.ACTIVE_SOURCE_FALLBACK_DELAY_MS,
|
|
238
|
+
}, 'Active source fallback scheduled');
|
|
203
239
|
}
|
|
204
240
|
}
|
|
205
241
|
logger.info({
|
|
@@ -450,6 +486,10 @@ export class InstanceSession extends EventEmitter {
|
|
|
450
486
|
* 销毁实例:终止 PTY,断开所有客户端
|
|
451
487
|
*/
|
|
452
488
|
destroy() {
|
|
489
|
+
if (this.activeSourceFallbackTimer) {
|
|
490
|
+
clearTimeout(this.activeSourceFallbackTimer);
|
|
491
|
+
this.activeSourceFallbackTimer = null;
|
|
492
|
+
}
|
|
453
493
|
if (this.wsFlushTimer) {
|
|
454
494
|
clearTimeout(this.wsFlushTimer);
|
|
455
495
|
this.wsFlushTimer = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance-session.js","sourceRoot":"","sources":["../../../../backend/src/instance/instance-session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"instance-session.js","sourceRoot":"","sources":["../../../../backend/src/instance/instance-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,13 +18,12 @@ export interface MergeResult {
|
|
|
18
18
|
* 智能合并 Skill Commands
|
|
19
19
|
*
|
|
20
20
|
* 合并策略:
|
|
21
|
-
* 1.
|
|
22
|
-
* 2.
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* - 保留的 Skill → 保留用户的 enabled、autoSend、desc 修改
|
|
21
|
+
* 1. 保留用户设置的命令顺序(这是最重要的)
|
|
22
|
+
* 2. 对于已存在的 Skill commands:保留 enabled、autoSend 设置,更新 desc
|
|
23
|
+
* 3. 对于新增的 Skill commands:添加到列表末尾
|
|
24
|
+
* 4. 对于已删除的 Skill commands:从列表中移除
|
|
26
25
|
*
|
|
27
|
-
* @param existingCommands
|
|
26
|
+
* @param existingCommands 现有命令列表(可能包含用户的修改和自定义顺序)
|
|
28
27
|
* @param newSkillCommands 新扫描出的 Skill Commands
|
|
29
28
|
* @returns 合并结果
|
|
30
29
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-command-merger.d.ts","sourceRoot":"","sources":["../../../../backend/src/skills/skill-command-merger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAGnD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iBAAiB;IACjB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED
|
|
1
|
+
{"version":3,"file":"skill-command-merger.d.ts","sourceRoot":"","sources":["../../../../backend/src/skills/skill-command-merger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAGnD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iBAAiB;IACjB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,gBAAgB,EAAE,mBAAmB,EAAE,EACvC,gBAAgB,EAAE,mBAAmB,EAAE,GACtC,WAAW,CAyDb"}
|
|
@@ -3,80 +3,68 @@ import { isSkillCommand } from './skill-commands.js';
|
|
|
3
3
|
* 智能合并 Skill Commands
|
|
4
4
|
*
|
|
5
5
|
* 合并策略:
|
|
6
|
-
* 1.
|
|
7
|
-
* 2.
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* - 保留的 Skill → 保留用户的 enabled、autoSend、desc 修改
|
|
6
|
+
* 1. 保留用户设置的命令顺序(这是最重要的)
|
|
7
|
+
* 2. 对于已存在的 Skill commands:保留 enabled、autoSend 设置,更新 desc
|
|
8
|
+
* 3. 对于新增的 Skill commands:添加到列表末尾
|
|
9
|
+
* 4. 对于已删除的 Skill commands:从列表中移除
|
|
11
10
|
*
|
|
12
|
-
* @param existingCommands
|
|
11
|
+
* @param existingCommands 现有命令列表(可能包含用户的修改和自定义顺序)
|
|
13
12
|
* @param newSkillCommands 新扫描出的 Skill Commands
|
|
14
13
|
* @returns 合并结果
|
|
15
14
|
*/
|
|
16
15
|
export function mergeSkillCommands(existingCommands, newSkillCommands) {
|
|
17
|
-
// 1.
|
|
18
|
-
const nonSkillCommands = [];
|
|
19
|
-
const existingSkillCommands = new Map();
|
|
20
|
-
// 构建新 skill label 集合,用于 orphan 检测
|
|
21
|
-
const newSkillLabels = new Set(newSkillCommands.map((c) => c.label));
|
|
22
|
-
for (const cmd of existingCommands) {
|
|
23
|
-
if (isSkillCommand(cmd)) {
|
|
24
|
-
existingSkillCommands.set(cmd.label, cmd);
|
|
25
|
-
}
|
|
26
|
-
else if (newSkillLabels.has(cmd.label)) {
|
|
27
|
-
// Orphan: 丢失 fromSkill 标记但与新 skill 同名 → 回收为 skill command
|
|
28
|
-
existingSkillCommands.set(cmd.label, cmd);
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
nonSkillCommands.push(cmd);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
// 2. 构建新 Skill 命令映射
|
|
16
|
+
// 1. 构建新 Skill 映射和标签集合
|
|
35
17
|
const newSkillMap = new Map();
|
|
18
|
+
const newSkillLabels = new Set();
|
|
36
19
|
for (const cmd of newSkillCommands) {
|
|
37
20
|
newSkillMap.set(cmd.label, cmd);
|
|
21
|
+
newSkillLabels.add(cmd.label);
|
|
38
22
|
}
|
|
39
|
-
//
|
|
40
|
-
const
|
|
41
|
-
|
|
42
|
-
let removed = 0;
|
|
23
|
+
// 2. 遍历现有命令,保留用户设置的顺序
|
|
24
|
+
const finalCommands = [];
|
|
25
|
+
const processedLabels = new Set();
|
|
43
26
|
let preserved = 0;
|
|
44
|
-
|
|
45
|
-
for (const
|
|
46
|
-
const
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
27
|
+
let removed = 0;
|
|
28
|
+
for (const cmd of existingCommands) {
|
|
29
|
+
const isExistingSkill = isSkillCommand(cmd);
|
|
30
|
+
const isOrphanSkill = !isExistingSkill && newSkillLabels.has(cmd.label);
|
|
31
|
+
if (isExistingSkill || isOrphanSkill) {
|
|
32
|
+
// 这是一个 Skill command(或 orphan)
|
|
33
|
+
const newSkill = newSkillMap.get(cmd.label);
|
|
34
|
+
if (newSkill) {
|
|
35
|
+
// Skill 仍然存在,保留用户设置,更新 desc
|
|
36
|
+
finalCommands.push({
|
|
37
|
+
...newSkill,
|
|
38
|
+
enabled: cmd.enabled,
|
|
39
|
+
autoSend: cmd.autoSend ?? newSkill.autoSend,
|
|
40
|
+
});
|
|
41
|
+
processedLabels.add(cmd.label);
|
|
42
|
+
preserved++;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
// Skill 已被删除,跳过(移除)
|
|
46
|
+
removed++;
|
|
47
|
+
}
|
|
57
48
|
}
|
|
58
49
|
else {
|
|
59
|
-
//
|
|
60
|
-
|
|
61
|
-
added++;
|
|
50
|
+
// 这是一个 non-Skill command(系统默认或用户自定义),直接保留
|
|
51
|
+
finalCommands.push(cmd);
|
|
62
52
|
}
|
|
63
53
|
}
|
|
64
|
-
//
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
54
|
+
// 3. 添加新增的 Skill commands 到末尾
|
|
55
|
+
let added = 0;
|
|
56
|
+
for (const [label, newCmd] of newSkillMap) {
|
|
57
|
+
if (!processedLabels.has(label)) {
|
|
58
|
+
finalCommands.push(newCmd);
|
|
59
|
+
added++;
|
|
68
60
|
}
|
|
69
61
|
}
|
|
70
|
-
// 4. 组合最终结果:非 Skill commands + 合并后的 Skill commands
|
|
71
|
-
// 按 label 排序 Skill commands
|
|
72
|
-
mergedSkillCommands.sort((a, b) => a.label.localeCompare(b.label));
|
|
73
|
-
const finalCommands = [...nonSkillCommands, ...mergedSkillCommands];
|
|
74
62
|
return {
|
|
75
63
|
commands: finalCommands,
|
|
76
64
|
added,
|
|
77
65
|
removed,
|
|
78
66
|
preserved,
|
|
79
|
-
total:
|
|
67
|
+
total: newSkillCommands.length,
|
|
80
68
|
};
|
|
81
69
|
}
|
|
82
70
|
//# sourceMappingURL=skill-command-merger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-command-merger.js","sourceRoot":"","sources":["../../../../backend/src/skills/skill-command-merger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAkBrD
|
|
1
|
+
{"version":3,"file":"skill-command-merger.js","sourceRoot":"","sources":["../../../../backend/src/skills/skill-command-merger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAkBrD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAChC,gBAAuC,EACvC,gBAAuC;IAEvC,uBAAuB;IACvB,MAAM,WAAW,GAAG,IAAI,GAAG,EAA+B,CAAC;IAC3D,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACnC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,sBAAsB;IACtB,MAAM,aAAa,GAA0B,EAAE,CAAC;IAChD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAC1C,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACnC,MAAM,eAAe,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAC5C,MAAM,aAAa,GAAG,CAAC,eAAe,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAExE,IAAI,eAAe,IAAI,aAAa,EAAE,CAAC;YACrC,+BAA+B;YAC/B,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,QAAQ,EAAE,CAAC;gBACb,4BAA4B;gBAC5B,aAAa,CAAC,IAAI,CAAC;oBACjB,GAAG,QAAQ;oBACX,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;iBAC5C,CAAC,CAAC;gBACH,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC/B,SAAS,EAAE,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,oBAAoB;gBACpB,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,0CAA0C;YAC1C,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC1C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3B,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,aAAa;QACvB,KAAK;QACL,OAAO;QACP,SAAS;QACT,KAAK,EAAE,gBAAgB,CAAC,MAAM;KAC/B,CAAC;AACJ,CAAC"}
|