autohand-cli 0.7.7 → 0.7.9
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/CommunitySkillsCache-N2RWBCY2.cjs +7 -0
- package/dist/{CommunitySkillsCache-Q22FUAR5.js → CommunitySkillsCache-YWDFZBKP.js} +2 -2
- package/dist/MemoryManager-J7APSLZ7.js +7 -0
- package/dist/MemoryManager-RLLYVIDY.cjs +7 -0
- package/dist/PermissionManager-ISI5OAJK.cjs +10 -0
- package/dist/{PermissionManager-HATZKTRC.js → PermissionManager-WYP5JPCQ.js} +3 -3
- package/dist/SessionManager-7MF76Q3Q.cjs +9 -0
- package/dist/{SessionManager-S5R6O3NU.js → SessionManager-SFBDIBGA.js} +2 -2
- package/dist/{SkillsRegistry-R5WDM6T3.js → SkillsRegistry-E437FFJV.js} +2 -2
- package/dist/SkillsRegistry-UTK2YT4M.cjs +8 -0
- package/dist/{SyncApiClient-FAOMIZAP.js → SyncApiClient-AYXYSOJM.js} +1 -1
- package/dist/SyncApiClient-ID3KXEMA.cjs +10 -0
- package/dist/agents-N2ZB4O2A.cjs +9 -0
- package/dist/{agents-ICAC3KD3.js → agents-ZMT7HBRT.js} +2 -2
- package/dist/agents-new-3EWS2NR3.cjs +11 -0
- package/dist/agents-new-TCGUYK5I.js +11 -0
- package/dist/cc-2W6M7J45.cjs +8 -0
- package/dist/cc-UTTLESTY.js +8 -0
- package/dist/{chunk-XFPITUFJ.cjs → chunk-32R47CAQ.cjs} +50 -8
- package/dist/{chunk-2JPUEN44.cjs → chunk-3DGR4GNN.cjs} +57 -84
- package/dist/{chunk-WIUGUR5T.js → chunk-3DVEGFBZ.js} +8 -8
- package/dist/{chunk-YWKZF2SA.js → chunk-3SDEZTZD.js} +46 -46
- package/dist/{chunk-KH7BCZJN.js → chunk-4BZ65NIH.js} +1 -1
- package/dist/{chunk-52MLYK5P.js → chunk-4YQ2OJAL.js} +1 -1
- package/dist/{chunk-VDZJ3W4M.cjs → chunk-5UC3VAJ2.cjs} +2 -2
- package/dist/{chunk-NYQVQYIF.cjs → chunk-6DSJ7XST.cjs} +16 -11
- package/dist/chunk-6SM6N7DJ.js +2828 -0
- package/dist/{chunk-MDWULS57.js → chunk-6UJMCWRY.js} +56 -33
- package/dist/{chunk-Q3WCMY3Z.js → chunk-7GJR65DQ.js} +2 -2
- package/dist/{chunk-B5N5UAMO.cjs → chunk-7WKEDH3E.cjs} +5 -5
- package/dist/{chunk-B4ZPNXZE.cjs → chunk-A5KU3JZW.cjs} +1 -1
- package/dist/{chunk-PMMSDR44.cjs → chunk-AQNY2M6Q.cjs} +3 -1
- package/dist/{chunk-AVL4DKQO.js → chunk-BTVNRLSE.js} +1 -1
- package/dist/{chunk-PU534KPO.cjs → chunk-CHVXUA3O.cjs} +4 -4
- package/dist/{chunk-QXAPHGEW.js → chunk-CMNQAF6C.js} +7 -2
- package/dist/{chunk-7TOHYAUF.cjs → chunk-CPO5KEQS.cjs} +2 -2
- package/dist/{chunk-PR53E47T.cjs → chunk-DRXFJR7F.cjs} +22 -30
- package/dist/{chunk-JBKP2CLA.cjs → chunk-FN5S5OE7.cjs} +47 -47
- package/dist/{chunk-SFGJQPGC.cjs → chunk-FPHU2ES6.cjs} +56 -33
- package/dist/{chunk-3L76MLO5.cjs → chunk-FSTLJIR5.cjs} +21 -28
- package/dist/chunk-HF65HHDU.cjs +83 -0
- package/dist/{chunk-A552JHUJ.cjs → chunk-HUA44A35.cjs} +21 -18
- package/dist/{chunk-B7EUETGY.cjs → chunk-HWDP4HQO.cjs} +4 -4
- package/dist/{chunk-OC5YDNFC.js → chunk-IYZBLUEJ.js} +35 -52
- package/dist/chunk-J2RUI7GJ.js +83 -0
- package/dist/{chunk-WH3D42BQ.js → chunk-J7VV7JAB.js} +55 -82
- package/dist/{chunk-VEDIYPWY.cjs → chunk-JRV4SOJU.cjs} +9 -9
- package/dist/{chunk-GWIAMKKF.js → chunk-K6CZ2AGI.js} +6 -3
- package/dist/{chunk-SYJLMBLP.cjs → chunk-KJAZ4YAR.cjs} +17 -17
- package/dist/{chunk-BAFJQUWR.js → chunk-KS45GREN.js} +12 -19
- package/dist/chunk-KXNAGJE6.cjs +589 -0
- package/dist/chunk-L5QWMGLV.cjs +2828 -0
- package/dist/{chunk-U5WIP4HS.js → chunk-LCBOOA7S.js} +47 -5
- package/dist/chunk-LJCSSR5V.cjs +63 -0
- package/dist/chunk-LKIKNRUP.js +219 -0
- package/dist/{chunk-WQSWU2QA.cjs → chunk-LY5VN3B3.cjs} +9 -6
- package/dist/{chunk-YAGD43KA.cjs → chunk-LYMZDJX5.cjs} +36 -37
- package/dist/{chunk-SLISYSP4.cjs → chunk-MRDZHNCF.cjs} +4 -4
- package/dist/chunk-NCC6ETZS.js +362 -0
- package/dist/chunk-NCLCL7JK.js +63 -0
- package/dist/chunk-NTFNUTY2.js +589 -0
- package/dist/{chunk-GDTZQSJ6.cjs → chunk-O3EX3SAD.cjs} +2 -2
- package/dist/chunk-OO7EKEJH.cjs +219 -0
- package/dist/{chunk-P2Z6GDEN.js → chunk-OXJCLU3X.js} +1 -1
- package/dist/{chunk-23JQSCTO.js → chunk-P6EGMTK4.js} +1 -1
- package/dist/{chunk-VPAN5H7Q.js → chunk-PFS5ZOCO.js} +30 -31
- package/dist/{chunk-EKY5PKQI.js → chunk-PGH3MHPP.js} +3 -1
- package/dist/{chunk-GR7VWN63.js → chunk-PVSYZXS7.js} +18 -26
- package/dist/{chunk-NI3BQXKU.js → chunk-QAJM6VG5.js} +2 -2
- package/dist/{chunk-OBV3UUIL.js → chunk-R5PZPF55.js} +1 -1
- package/dist/{chunk-MJFBVQHB.js → chunk-RDGYHJ52.js} +5 -5
- package/dist/{chunk-YDH2BMEN.js → chunk-RX4KPL6H.js} +1 -1
- package/dist/{chunk-GFJ6AETU.cjs → chunk-T7HQBZZB.cjs} +6 -6
- package/dist/chunk-TSV4LVHK.js +35 -0
- package/dist/{chunk-7VW3A7DO.cjs → chunk-TUO5SZRD.cjs} +2 -2
- package/dist/{chunk-C3IFF3EH.cjs → chunk-UL5T2XIY.cjs} +36 -53
- package/dist/chunk-ULQ6MDSJ.cjs +362 -0
- package/dist/{chunk-UL7YPRCU.js → chunk-UP6YRP44.js} +1 -1
- package/dist/{chunk-G77ZY4QG.js → chunk-VQDWNDP5.js} +1 -1
- package/dist/chunk-VXCMGBXY.cjs +35 -0
- package/dist/{chunk-JHFH3N4U.cjs → chunk-WCN5WDOI.cjs} +2 -2
- package/dist/{chunk-53BR4MUW.cjs → chunk-WGO4ACS7.cjs} +3 -3
- package/dist/{chunk-4M2GX7RH.cjs → chunk-WJICM4SK.cjs} +2 -2
- package/dist/{chunk-4RWTUT2Z.js → chunk-WT367RVU.js} +19 -16
- package/dist/{chunk-A6QBABQ7.js → chunk-XOSFZHSS.js} +2 -2
- package/dist/{chunk-3YEDXG6S.js → chunk-YDJA5ETO.js} +1 -1
- package/dist/completion-NCSTSKTL.cjs +11 -0
- package/dist/{completion-Y42FKDT3.js → completion-NTZERPAZ.js} +2 -1
- package/dist/constants-B2X7KDIH.cjs +20 -0
- package/dist/{constants-ZLG6M5SI.js → constants-OFIAR4E5.js} +1 -1
- package/dist/export-5AJNVX4O.cjs +9 -0
- package/dist/{export-WJ5P6E5Z.js → export-ZQHTLV4W.js} +2 -1
- package/dist/feedback-F7BMGSV6.cjs +12 -0
- package/dist/feedback-NL7CWTRY.js +12 -0
- package/dist/hooks-AX5VPCZ3.cjs +10 -0
- package/dist/hooks-V22HVLQT.js +10 -0
- package/dist/index.cjs +5306 -3582
- package/dist/index.js +3780 -2056
- package/dist/language-IEKARNQH.js +13 -0
- package/dist/language-ULQCKXAD.cjs +13 -0
- package/dist/localProjectPermissions-7FI3XF4K.cjs +17 -0
- package/dist/{localProjectPermissions-YFFAKLUZ.js → localProjectPermissions-FD5AK5FB.js} +2 -2
- package/dist/login-PD3DFJLM.js +15 -0
- package/dist/login-VHGT4YKT.cjs +15 -0
- package/dist/logout-2QXNFGDT.js +13 -0
- package/dist/logout-A4SMKEFO.cjs +13 -0
- package/dist/permissions-S7433NQJ.js +10 -0
- package/dist/permissions-YZ6WCDBL.cjs +10 -0
- package/dist/plan-B3CW5DXJ.cjs +10 -0
- package/dist/plan-JFGNRL2S.js +10 -0
- package/dist/resume-54ERVSFM.cjs +10 -0
- package/dist/resume-YJ5CVKAP.js +10 -0
- package/dist/search-4TEQMUPU.js +11 -0
- package/dist/search-QGLS4SV7.cjs +11 -0
- package/dist/share-2B2T3AUU.cjs +11 -0
- package/dist/share-SZMXZIA3.js +11 -0
- package/dist/skills-HVQNCTGK.cjs +12 -0
- package/dist/{skills-3YEEODHK.js → skills-PB4HXV4R.js} +1 -1
- package/dist/{skills-install-FTGOHOZ4.cjs → skills-install-7SFS24HY.cjs} +10 -9
- package/dist/{skills-install-KAXAQSN6.js → skills-install-UBBNXWD5.js} +4 -3
- package/dist/skills-new-5FSDAJWE.js +12 -0
- package/dist/skills-new-IOTZYE6F.cjs +12 -0
- package/dist/{status-7LCXYYY4.js → status-AGPSKXSW.js} +2 -2
- package/dist/status-WOINF556.cjs +9 -0
- package/dist/{sync-3B7SNBYC.js → sync-64MZDWGG.js} +3 -3
- package/dist/sync-F5ECJW25.cjs +39 -0
- package/dist/{sync-H4UHHLKU.js → sync-LYKDHRFM.js} +3 -3
- package/dist/sync-W5UR7BEP.cjs +14 -0
- package/dist/theme-CWG3ZLHB.cjs +13 -0
- package/dist/theme-HQKV7YAP.js +13 -0
- package/package.json +2 -2
- package/dist/CommunitySkillsCache-2BITCEAA.cjs +0 -7
- package/dist/MemoryManager-2ATHG7BH.js +0 -7
- package/dist/MemoryManager-AENCGCEW.cjs +0 -7
- package/dist/PermissionManager-6HZGTK2N.cjs +0 -10
- package/dist/SessionManager-AG4WT3DP.cjs +0 -9
- package/dist/SkillsRegistry-ZXU6YDRP.cjs +0 -8
- package/dist/SyncApiClient-UOA4VLLD.cjs +0 -10
- package/dist/agents-YONWPKFS.cjs +0 -9
- package/dist/agents-new-NV557UVG.cjs +0 -10
- package/dist/agents-new-QHM3CO4B.js +0 -10
- package/dist/chunk-3HPUOQJN.cjs +0 -23
- package/dist/chunk-5DN5KNXU.js +0 -81
- package/dist/chunk-7BYSXAKS.js +0 -23
- package/dist/chunk-ARVFUZOB.js +0 -736
- package/dist/chunk-GWXXFQ3F.cjs +0 -81
- package/dist/chunk-XFQS2VGT.cjs +0 -736
- package/dist/completion-WVFWX7XQ.cjs +0 -10
- package/dist/constants-G2PLP5HH.cjs +0 -20
- package/dist/export-BKBJ7PB2.cjs +0 -8
- package/dist/feedback-HZBCTSFG.js +0 -10
- package/dist/feedback-JBQ3UPGZ.cjs +0 -10
- package/dist/hooks-G4VLYMLX.cjs +0 -9
- package/dist/hooks-LN4A6NQL.js +0 -9
- package/dist/language-KODBDE5R.js +0 -12
- package/dist/language-SJT475NW.cjs +0 -12
- package/dist/localProjectPermissions-AYQYGTOE.cjs +0 -17
- package/dist/login-TC2KROQI.js +0 -14
- package/dist/login-TYMR2ZD3.cjs +0 -14
- package/dist/logout-2ECV365P.js +0 -12
- package/dist/logout-CO3CPYZJ.cjs +0 -12
- package/dist/permissions-5MTH22EF.js +0 -9
- package/dist/permissions-IP5SITPI.cjs +0 -9
- package/dist/resume-EPOEF3WV.cjs +0 -9
- package/dist/resume-LOYD5MMP.js +0 -9
- package/dist/share-544SIZOY.js +0 -10
- package/dist/share-OETK2GUF.cjs +0 -10
- package/dist/skills-CRM55MKM.cjs +0 -12
- package/dist/skills-new-JF4FKNUT.cjs +0 -11
- package/dist/skills-new-JYX2GBKM.js +0 -11
- package/dist/status-E7MZEQ26.cjs +0 -9
- package/dist/sync-4RARBQIH.cjs +0 -39
- package/dist/sync-YZ6YZ42H.cjs +0 -14
- package/dist/theme-3XV5BWUB.js +0 -12
- package/dist/theme-Z2WS5XWZ.cjs +0 -12
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkLJCSSR5Vcjs = require('./chunk-LJCSSR5V.cjs');
|
|
4
4
|
|
|
5
5
|
// src/commands/hooks.ts
|
|
6
6
|
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
@@ -194,7 +194,7 @@ async function hooks(ctx) {
|
|
|
194
194
|
const toggleLabel = settings.enabled !== false ? "\u25EF Disable all hooks" : "\u25CF Enable all hooks";
|
|
195
195
|
choices.push({ name: "toggle_global", message: toggleLabel });
|
|
196
196
|
}
|
|
197
|
-
const actionResult = await
|
|
197
|
+
const actionResult = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
198
198
|
type: "select",
|
|
199
199
|
name: "action",
|
|
200
200
|
message: "Action",
|
|
@@ -230,29 +230,22 @@ async function toggleHooksMulti(manager, allHooks) {
|
|
|
230
230
|
enabled: h.enabled !== false
|
|
231
231
|
};
|
|
232
232
|
});
|
|
233
|
-
const result = await
|
|
234
|
-
type: "
|
|
233
|
+
const result = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
234
|
+
type: "select",
|
|
235
235
|
name: "selected",
|
|
236
|
-
message: "Toggle hooks (
|
|
236
|
+
message: "Toggle hooks (select to enable/disable)",
|
|
237
237
|
choices,
|
|
238
|
-
initial:
|
|
238
|
+
initial: 0
|
|
239
239
|
});
|
|
240
240
|
if (!result) return;
|
|
241
|
-
const
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
const
|
|
245
|
-
const
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
const eventIndex = eventHooks.indexOf(hook);
|
|
250
|
-
await manager.toggleHook(hook.event, eventIndex);
|
|
251
|
-
changed++;
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
if (changed > 0) {
|
|
255
|
-
console.log(_chalk2.default.green(` \u2713 Updated ${changed} hook(s)`));
|
|
241
|
+
const selectedIndex = Number(result.selected);
|
|
242
|
+
const hook = allHooks[selectedIndex];
|
|
243
|
+
if (hook) {
|
|
244
|
+
const eventHooks = allHooks.filter((h) => h.event === hook.event);
|
|
245
|
+
const eventIndex = eventHooks.indexOf(hook);
|
|
246
|
+
await manager.toggleHook(hook.event, eventIndex);
|
|
247
|
+
const newState = hook.enabled === false ? "enabled" : "disabled";
|
|
248
|
+
console.log(_chalk2.default.green(` \u2713 Hook ${newState}: ${hook.event}`));
|
|
256
249
|
} else {
|
|
257
250
|
console.log(_chalk2.default.gray(" No changes made"));
|
|
258
251
|
}
|
|
@@ -263,26 +256,26 @@ async function addHook(manager) {
|
|
|
263
256
|
name: e,
|
|
264
257
|
message: `${e} ${_chalk2.default.dim(`- ${EVENT_DESCRIPTIONS[e]}`)}`
|
|
265
258
|
}));
|
|
266
|
-
const eventResult = await
|
|
259
|
+
const eventResult = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
267
260
|
type: "select",
|
|
268
261
|
name: "event",
|
|
269
262
|
message: "Event to hook into",
|
|
270
263
|
choices: eventChoices
|
|
271
264
|
});
|
|
272
265
|
if (!eventResult) return;
|
|
273
|
-
const commandResult = await
|
|
266
|
+
const commandResult = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
274
267
|
type: "input",
|
|
275
268
|
name: "command",
|
|
276
269
|
message: "Shell command to execute",
|
|
277
270
|
validate: (val) => typeof val === "string" && val.trim().length > 0 || "Command is required"
|
|
278
271
|
});
|
|
279
272
|
if (!commandResult || !commandResult.command) return;
|
|
280
|
-
const descResult = await
|
|
273
|
+
const descResult = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
281
274
|
type: "input",
|
|
282
275
|
name: "description",
|
|
283
276
|
message: "Description (optional)"
|
|
284
277
|
});
|
|
285
|
-
const asyncResult = await
|
|
278
|
+
const asyncResult = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
286
279
|
type: "confirm",
|
|
287
280
|
name: "async",
|
|
288
281
|
message: "Run asynchronously (non-blocking)?",
|
|
@@ -307,7 +300,7 @@ async function removeHook(manager, allHooks) {
|
|
|
307
300
|
message: `${eventTag} ${desc2}`
|
|
308
301
|
};
|
|
309
302
|
});
|
|
310
|
-
const selectResult = await
|
|
303
|
+
const selectResult = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
311
304
|
type: "select",
|
|
312
305
|
name: "hookIndex",
|
|
313
306
|
message: "Select hook to remove",
|
|
@@ -319,7 +312,7 @@ async function removeHook(manager, allHooks) {
|
|
|
319
312
|
const eventHooks = allHooks.filter((h) => h.event === hook.event);
|
|
320
313
|
const eventIndex = eventHooks.indexOf(hook);
|
|
321
314
|
const desc = hook.description || getShortCommand(hook.command);
|
|
322
|
-
const confirmResult = await
|
|
315
|
+
const confirmResult = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
323
316
|
type: "confirm",
|
|
324
317
|
name: "confirm",
|
|
325
318
|
message: `Remove "${desc}"?`,
|
|
@@ -342,7 +335,7 @@ async function testHook(manager, allHooks) {
|
|
|
342
335
|
message: `${eventTag} ${desc}`
|
|
343
336
|
};
|
|
344
337
|
});
|
|
345
|
-
const selectResult = await
|
|
338
|
+
const selectResult = await _chunkLJCSSR5Vcjs.safePrompt.call(void 0, {
|
|
346
339
|
type: "select",
|
|
347
340
|
name: "hookIndex",
|
|
348
341
|
message: "Select hook to test",
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
|
+
|
|
3
|
+
var _chunkLY5VN3B3cjs = require('./chunk-LY5VN3B3.cjs');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
var _chunkL5QWMGLVcjs = require('./chunk-L5QWMGLV.cjs');
|
|
12
|
+
|
|
13
|
+
// src/commands/language.ts
|
|
14
|
+
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
15
|
+
async function language(ctx) {
|
|
16
|
+
const currentLocale = _chunkL5QWMGLVcjs.getCurrentLocale.call(void 0, );
|
|
17
|
+
const currentDisplayName = _chunkL5QWMGLVcjs.LANGUAGE_DISPLAY_NAMES[currentLocale];
|
|
18
|
+
console.log(_chalk2.default.cyan(`
|
|
19
|
+
\u{1F310} ${_chunkL5QWMGLVcjs.t.call(void 0, "commands.language.title")}
|
|
20
|
+
`));
|
|
21
|
+
console.log(_chalk2.default.gray(`${_chunkL5QWMGLVcjs.t.call(void 0, "commands.language.currentLanguage", { language: currentDisplayName })}`));
|
|
22
|
+
console.log();
|
|
23
|
+
const options = _chunkL5QWMGLVcjs.SUPPORTED_LOCALES.map((locale) => ({
|
|
24
|
+
label: locale === currentLocale ? `${_chunkL5QWMGLVcjs.LANGUAGE_DISPLAY_NAMES[locale]} (${_chunkL5QWMGLVcjs.t.call(void 0, "common.current")})` : _chunkL5QWMGLVcjs.LANGUAGE_DISPLAY_NAMES[locale],
|
|
25
|
+
value: locale
|
|
26
|
+
}));
|
|
27
|
+
const result = await _chunkL5QWMGLVcjs.showModal.call(void 0, {
|
|
28
|
+
title: _chunkL5QWMGLVcjs.t.call(void 0, "commands.language.selectPrompt"),
|
|
29
|
+
options,
|
|
30
|
+
initialIndex: _chunkL5QWMGLVcjs.SUPPORTED_LOCALES.indexOf(currentLocale)
|
|
31
|
+
});
|
|
32
|
+
if (!result) {
|
|
33
|
+
console.log(_chalk2.default.gray("\nLanguage selection cancelled."));
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
const selected = result.value;
|
|
37
|
+
if (selected === currentLocale) {
|
|
38
|
+
console.log(_chalk2.default.gray(`
|
|
39
|
+
${_chunkL5QWMGLVcjs.t.call(void 0, "commands.language.noChange")}`));
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
await _chunkL5QWMGLVcjs.changeLanguage.call(void 0, selected);
|
|
43
|
+
ctx.config.ui = { ...ctx.config.ui, locale: selected };
|
|
44
|
+
await _chunkLY5VN3B3cjs.saveConfig.call(void 0, ctx.config);
|
|
45
|
+
const newDisplayName = _chunkL5QWMGLVcjs.LANGUAGE_DISPLAY_NAMES[selected];
|
|
46
|
+
console.log(_chalk2.default.green(`
|
|
47
|
+
\u2713 ${_chunkL5QWMGLVcjs.t.call(void 0, "commands.language.changed", { language: newDisplayName })}`));
|
|
48
|
+
console.log();
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
async function languageInfo() {
|
|
52
|
+
const currentLocale = _chunkL5QWMGLVcjs.getCurrentLocale.call(void 0, );
|
|
53
|
+
const currentDisplayName = _chunkL5QWMGLVcjs.LANGUAGE_DISPLAY_NAMES[currentLocale];
|
|
54
|
+
console.log(_chalk2.default.cyan(`
|
|
55
|
+
\u{1F310} ${_chunkL5QWMGLVcjs.t.call(void 0, "commands.language.title")}
|
|
56
|
+
`));
|
|
57
|
+
console.log(_chalk2.default.gray(`${_chunkL5QWMGLVcjs.t.call(void 0, "commands.language.currentLanguage", { language: currentDisplayName })}`));
|
|
58
|
+
console.log(_chalk2.default.gray(`Locale code: ${_chalk2.default.white(currentLocale)}`));
|
|
59
|
+
console.log();
|
|
60
|
+
console.log(_chalk2.default.gray("Supported languages:"));
|
|
61
|
+
for (const locale of _chunkL5QWMGLVcjs.SUPPORTED_LOCALES) {
|
|
62
|
+
const marker = locale === currentLocale ? _chalk2.default.green("\u25CF") : _chalk2.default.gray("\u25CB");
|
|
63
|
+
console.log(` ${marker} ${_chunkL5QWMGLVcjs.LANGUAGE_DISPLAY_NAMES[locale]}`);
|
|
64
|
+
}
|
|
65
|
+
console.log();
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
var metadata = {
|
|
69
|
+
command: "/language",
|
|
70
|
+
description: "change display language",
|
|
71
|
+
implemented: true
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
exports.language = language; exports.languageInfo = languageInfo; exports.metadata = metadata;
|
|
79
|
+
/**
|
|
80
|
+
* @license
|
|
81
|
+
* Copyright 2025 Autohand AI LLC
|
|
82
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
83
|
+
*/
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkL5QWMGLVcjs = require('./chunk-L5QWMGLV.cjs');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
var _chunkAQNY2M6Qcjs = require('./chunk-AQNY2M6Q.cjs');
|
|
4
7
|
|
|
5
8
|
// src/commands/resume.ts
|
|
6
9
|
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
7
|
-
var _enquirer = require('enquirer'); var _enquirer2 = _interopRequireDefault(_enquirer);
|
|
8
10
|
var _fsextra = require('fs-extra'); var _fsextra2 = _interopRequireDefault(_fsextra);
|
|
9
11
|
var _path = require('path'); var _path2 = _interopRequireDefault(_path);
|
|
10
12
|
var metadata = {
|
|
@@ -17,7 +19,7 @@ async function getSessionTitle(sessionMeta) {
|
|
|
17
19
|
return sessionMeta.summary.slice(0, 60);
|
|
18
20
|
}
|
|
19
21
|
try {
|
|
20
|
-
const conversationPath = _path2.default.join(
|
|
22
|
+
const conversationPath = _path2.default.join(_chunkAQNY2M6Qcjs.AUTOHAND_PATHS.sessions, sessionMeta.sessionId, "conversation.jsonl");
|
|
21
23
|
if (await _fsextra2.default.pathExists(conversationPath)) {
|
|
22
24
|
const content = await _fsextra2.default.readFile(conversationPath, "utf-8");
|
|
23
25
|
const lines = content.trim().split("\n").filter((line) => line);
|
|
@@ -84,24 +86,25 @@ async function resume(ctx) {
|
|
|
84
86
|
hint: "Use /sessions to see all"
|
|
85
87
|
});
|
|
86
88
|
}
|
|
87
|
-
const
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
89
|
+
const options = choices.map((choice) => ({
|
|
90
|
+
label: choice.message,
|
|
91
|
+
value: choice.name,
|
|
92
|
+
description: choice.hint
|
|
93
|
+
}));
|
|
94
|
+
const result = await _chunkL5QWMGLVcjs.showModal.call(void 0, {
|
|
95
|
+
title: "Choose a session",
|
|
96
|
+
options
|
|
97
|
+
});
|
|
98
|
+
if (!result) {
|
|
99
|
+
console.log(_chalk2.default.gray("\nResume cancelled."));
|
|
97
100
|
return null;
|
|
98
101
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
if (error.name === "ExitPromptError" || _optionalChain([error, 'access', _ => _.message, 'optionalAccess', _2 => _2.includes, 'call', _3 => _3("canceled")])) {
|
|
102
|
-
console.log(_chalk2.default.gray("\nResume cancelled."));
|
|
102
|
+
if (result.value === "__more__") {
|
|
103
|
+
console.log(_chalk2.default.gray("\nUse /sessions to see all sessions, then /resume <id>"));
|
|
103
104
|
return null;
|
|
104
105
|
}
|
|
106
|
+
return resumeSession(ctx.sessionManager, result.value);
|
|
107
|
+
} catch (error) {
|
|
105
108
|
console.error(_chalk2.default.red(`Failed to list sessions: ${error.message}`));
|
|
106
109
|
return null;
|
|
107
110
|
}
|
|
@@ -111,7 +114,7 @@ async function resumeSession(sessionManager, sessionId) {
|
|
|
111
114
|
const session = await sessionManager.loadSession(sessionId);
|
|
112
115
|
const messages = session.getMessages();
|
|
113
116
|
const firstUserMessage = messages.find((m) => m.role === "user");
|
|
114
|
-
const title = session.metadata.summary || _optionalChain([firstUserMessage, 'optionalAccess',
|
|
117
|
+
const title = session.metadata.summary || _optionalChain([firstUserMessage, 'optionalAccess', _ => _.content, 'access', _2 => _2.slice, 'call', _3 => _3(0, 50)]) || "Untitled session";
|
|
115
118
|
console.log(_chalk2.default.cyan(`
|
|
116
119
|
Resuming: ${title}`));
|
|
117
120
|
console.log(_chalk2.default.gray(` Project: ${session.metadata.projectPath}`));
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _chunkCPO5KEQScjs = require('./chunk-CPO5KEQS.cjs');
|
|
6
6
|
|
|
7
7
|
// src/permissions/PermissionManager.ts
|
|
8
8
|
var DEFAULT_SECURITY_BLACKLIST = [
|
|
@@ -121,7 +121,7 @@ var PermissionManager = class {
|
|
|
121
121
|
async initLocalSettings() {
|
|
122
122
|
if (!this.workspaceRoot || this.localSettingsLoaded) return;
|
|
123
123
|
try {
|
|
124
|
-
const localSettings = await
|
|
124
|
+
const localSettings = await _chunkCPO5KEQScjs.loadLocalProjectSettings.call(void 0, this.workspaceRoot);
|
|
125
125
|
if (_optionalChain([localSettings, 'optionalAccess', _ => _.permissions])) {
|
|
126
126
|
this.localSettings = localSettings.permissions;
|
|
127
127
|
}
|
|
@@ -133,7 +133,7 @@ var PermissionManager = class {
|
|
|
133
133
|
* Get merged settings (global + local)
|
|
134
134
|
*/
|
|
135
135
|
getMergedSettings() {
|
|
136
|
-
return
|
|
136
|
+
return _chunkCPO5KEQScjs.mergePermissions.call(void 0, this.settings, this.localSettings);
|
|
137
137
|
}
|
|
138
138
|
/**
|
|
139
139
|
* Set permission mode (can be overridden by CLI flags)
|
|
@@ -193,7 +193,7 @@ var PermissionManager = class {
|
|
|
193
193
|
const pattern = this.contextToPattern(context);
|
|
194
194
|
if (allowed && this.workspaceRoot) {
|
|
195
195
|
try {
|
|
196
|
-
await
|
|
196
|
+
await _chunkCPO5KEQScjs.addToLocalWhitelist.call(void 0, this.workspaceRoot, pattern);
|
|
197
197
|
if (!this.localSettings) {
|
|
198
198
|
this.localSettings = { whitelist: [] };
|
|
199
199
|
}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
showConfirm,
|
|
3
|
+
showInput,
|
|
4
|
+
showModal
|
|
5
|
+
} from "./chunk-6SM6N7DJ.js";
|
|
6
|
+
|
|
1
7
|
// src/commands/export.ts
|
|
2
8
|
import chalk from "chalk";
|
|
3
9
|
import path2 from "path";
|
|
4
|
-
import enquirer from "enquirer";
|
|
5
10
|
|
|
6
11
|
// src/session/exportSession.ts
|
|
7
12
|
import fs from "fs-extra";
|
|
@@ -253,22 +258,19 @@ async function execute(args, context) {
|
|
|
253
258
|
console.log(chalk.yellow("No sessions found to export."));
|
|
254
259
|
return;
|
|
255
260
|
}
|
|
256
|
-
const
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
}))
|
|
261
|
+
const sessionOptions = sessions.slice(0, 10).map((s) => ({
|
|
262
|
+
label: `${s.projectName} - ${new Date(s.createdAt).toLocaleString()} (${s.messageCount} messages)`,
|
|
263
|
+
value: s.sessionId
|
|
264
|
+
}));
|
|
265
|
+
const sessionResult = await showModal({
|
|
266
|
+
title: "Select a session to export:",
|
|
267
|
+
options: sessionOptions
|
|
264
268
|
});
|
|
265
|
-
|
|
266
|
-
const selectedId = await sessionPrompt.run();
|
|
267
|
-
session = await sessionManager.loadSession(selectedId);
|
|
268
|
-
} catch {
|
|
269
|
+
if (!sessionResult) {
|
|
269
270
|
console.log(chalk.gray("Cancelled."));
|
|
270
271
|
return;
|
|
271
272
|
}
|
|
273
|
+
session = await sessionManager.loadSession(sessionResult.value);
|
|
272
274
|
}
|
|
273
275
|
const metadata2 = session.metadata;
|
|
274
276
|
const messages = session.getMessages();
|
|
@@ -276,56 +278,37 @@ async function execute(args, context) {
|
|
|
276
278
|
console.log(chalk.yellow("No messages in session to export."));
|
|
277
279
|
return;
|
|
278
280
|
}
|
|
279
|
-
const
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
]
|
|
281
|
+
const formatOptions = [
|
|
282
|
+
{ label: "Markdown (.md)", value: "md" },
|
|
283
|
+
{ label: "JSON (.json)", value: "json" },
|
|
284
|
+
{ label: "HTML (.html)", value: "html" }
|
|
285
|
+
];
|
|
286
|
+
const formatResult = await showModal({
|
|
287
|
+
title: "Export format:",
|
|
288
|
+
options: formatOptions
|
|
288
289
|
});
|
|
289
|
-
|
|
290
|
-
try {
|
|
291
|
-
format = await formatPrompt.run();
|
|
292
|
-
} catch {
|
|
290
|
+
if (!formatResult) {
|
|
293
291
|
console.log(chalk.gray("Cancelled."));
|
|
294
292
|
return;
|
|
295
293
|
}
|
|
294
|
+
const format = formatResult.value;
|
|
296
295
|
const options = {};
|
|
297
296
|
if (format === "md" || format === "html") {
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
initial: true
|
|
297
|
+
options.includeToolOutputs = await showConfirm({
|
|
298
|
+
title: "Include tool outputs?",
|
|
299
|
+
defaultValue: true
|
|
302
300
|
});
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
options.includeToolOutputs = true;
|
|
307
|
-
}
|
|
308
|
-
const includeTocPrompt = new Confirm({
|
|
309
|
-
name: "includeToc",
|
|
310
|
-
message: "Include table of contents?",
|
|
311
|
-
initial: false
|
|
301
|
+
options.includeToc = await showConfirm({
|
|
302
|
+
title: "Include table of contents?",
|
|
303
|
+
defaultValue: false
|
|
312
304
|
});
|
|
313
|
-
try {
|
|
314
|
-
options.includeToc = await includeTocPrompt.run();
|
|
315
|
-
} catch {
|
|
316
|
-
options.includeToc = false;
|
|
317
|
-
}
|
|
318
305
|
}
|
|
319
306
|
const suggestedFilename = getSuggestedFilename(metadata2, format);
|
|
320
|
-
const
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
initial: suggestedFilename
|
|
307
|
+
const filename = await showInput({
|
|
308
|
+
title: "Save as:",
|
|
309
|
+
defaultValue: suggestedFilename
|
|
324
310
|
});
|
|
325
|
-
|
|
326
|
-
try {
|
|
327
|
-
filename = await filenamePrompt.run();
|
|
328
|
-
} catch {
|
|
311
|
+
if (!filename) {
|
|
329
312
|
console.log(chalk.gray("Cancelled."));
|
|
330
313
|
return;
|
|
331
314
|
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import {
|
|
2
|
+
saveConfig
|
|
3
|
+
} from "./chunk-K6CZ2AGI.js";
|
|
4
|
+
import {
|
|
5
|
+
LANGUAGE_DISPLAY_NAMES,
|
|
6
|
+
SUPPORTED_LOCALES,
|
|
7
|
+
changeLanguage,
|
|
8
|
+
getCurrentLocale,
|
|
9
|
+
showModal,
|
|
10
|
+
t
|
|
11
|
+
} from "./chunk-6SM6N7DJ.js";
|
|
12
|
+
|
|
13
|
+
// src/commands/language.ts
|
|
14
|
+
import chalk from "chalk";
|
|
15
|
+
async function language(ctx) {
|
|
16
|
+
const currentLocale = getCurrentLocale();
|
|
17
|
+
const currentDisplayName = LANGUAGE_DISPLAY_NAMES[currentLocale];
|
|
18
|
+
console.log(chalk.cyan(`
|
|
19
|
+
\u{1F310} ${t("commands.language.title")}
|
|
20
|
+
`));
|
|
21
|
+
console.log(chalk.gray(`${t("commands.language.currentLanguage", { language: currentDisplayName })}`));
|
|
22
|
+
console.log();
|
|
23
|
+
const options = SUPPORTED_LOCALES.map((locale) => ({
|
|
24
|
+
label: locale === currentLocale ? `${LANGUAGE_DISPLAY_NAMES[locale]} (${t("common.current")})` : LANGUAGE_DISPLAY_NAMES[locale],
|
|
25
|
+
value: locale
|
|
26
|
+
}));
|
|
27
|
+
const result = await showModal({
|
|
28
|
+
title: t("commands.language.selectPrompt"),
|
|
29
|
+
options,
|
|
30
|
+
initialIndex: SUPPORTED_LOCALES.indexOf(currentLocale)
|
|
31
|
+
});
|
|
32
|
+
if (!result) {
|
|
33
|
+
console.log(chalk.gray("\nLanguage selection cancelled."));
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
const selected = result.value;
|
|
37
|
+
if (selected === currentLocale) {
|
|
38
|
+
console.log(chalk.gray(`
|
|
39
|
+
${t("commands.language.noChange")}`));
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
await changeLanguage(selected);
|
|
43
|
+
ctx.config.ui = { ...ctx.config.ui, locale: selected };
|
|
44
|
+
await saveConfig(ctx.config);
|
|
45
|
+
const newDisplayName = LANGUAGE_DISPLAY_NAMES[selected];
|
|
46
|
+
console.log(chalk.green(`
|
|
47
|
+
\u2713 ${t("commands.language.changed", { language: newDisplayName })}`));
|
|
48
|
+
console.log();
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
async function languageInfo() {
|
|
52
|
+
const currentLocale = getCurrentLocale();
|
|
53
|
+
const currentDisplayName = LANGUAGE_DISPLAY_NAMES[currentLocale];
|
|
54
|
+
console.log(chalk.cyan(`
|
|
55
|
+
\u{1F310} ${t("commands.language.title")}
|
|
56
|
+
`));
|
|
57
|
+
console.log(chalk.gray(`${t("commands.language.currentLanguage", { language: currentDisplayName })}`));
|
|
58
|
+
console.log(chalk.gray(`Locale code: ${chalk.white(currentLocale)}`));
|
|
59
|
+
console.log();
|
|
60
|
+
console.log(chalk.gray("Supported languages:"));
|
|
61
|
+
for (const locale of SUPPORTED_LOCALES) {
|
|
62
|
+
const marker = locale === currentLocale ? chalk.green("\u25CF") : chalk.gray("\u25CB");
|
|
63
|
+
console.log(` ${marker} ${LANGUAGE_DISPLAY_NAMES[locale]}`);
|
|
64
|
+
}
|
|
65
|
+
console.log();
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
var metadata = {
|
|
69
|
+
command: "/language",
|
|
70
|
+
description: "change display language",
|
|
71
|
+
implemented: true
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
export {
|
|
75
|
+
language,
|
|
76
|
+
languageInfo,
|
|
77
|
+
metadata
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* @license
|
|
81
|
+
* Copyright 2025 Autohand AI LLC
|
|
82
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
83
|
+
*/
|