coder-link 0.0.9 → 0.1.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.
Files changed (91) hide show
  1. package/README.md +31 -13
  2. package/dist/cli.js +214 -76
  3. package/dist/cli.js.map +1 -1
  4. package/dist/lib/claude-code-manager.d.ts +8 -1
  5. package/dist/lib/claude-code-manager.d.ts.map +1 -1
  6. package/dist/lib/claude-code-manager.js +84 -118
  7. package/dist/lib/claude-code-manager.js.map +1 -1
  8. package/dist/lib/codex-manager.d.ts +34 -0
  9. package/dist/lib/codex-manager.d.ts.map +1 -0
  10. package/dist/lib/codex-manager.js +223 -0
  11. package/dist/lib/codex-manager.js.map +1 -0
  12. package/dist/lib/config-io.d.ts +5 -0
  13. package/dist/lib/config-io.d.ts.map +1 -0
  14. package/dist/lib/config-io.js +50 -0
  15. package/dist/lib/config-io.js.map +1 -0
  16. package/dist/lib/crush-manager.d.ts +1 -2
  17. package/dist/lib/crush-manager.d.ts.map +1 -1
  18. package/dist/lib/crush-manager.js +20 -58
  19. package/dist/lib/crush-manager.js.map +1 -1
  20. package/dist/lib/factory-droid-manager.d.ts +8 -2
  21. package/dist/lib/factory-droid-manager.d.ts.map +1 -1
  22. package/dist/lib/factory-droid-manager.js +193 -260
  23. package/dist/lib/factory-droid-manager.js.map +1 -1
  24. package/dist/lib/kimi-manager.d.ts.map +1 -1
  25. package/dist/lib/kimi-manager.js +19 -30
  26. package/dist/lib/kimi-manager.js.map +1 -1
  27. package/dist/lib/opencode-manager.d.ts +1 -1
  28. package/dist/lib/opencode-manager.d.ts.map +1 -1
  29. package/dist/lib/opencode-manager.js +187 -63
  30. package/dist/lib/opencode-manager.js.map +1 -1
  31. package/dist/lib/pi-manager.d.ts +0 -1
  32. package/dist/lib/pi-manager.d.ts.map +1 -1
  33. package/dist/lib/pi-manager.js +18 -41
  34. package/dist/lib/pi-manager.js.map +1 -1
  35. package/dist/lib/provider-registry.d.ts +200 -0
  36. package/dist/lib/provider-registry.d.ts.map +1 -0
  37. package/dist/lib/provider-registry.js +581 -0
  38. package/dist/lib/provider-registry.js.map +1 -0
  39. package/dist/lib/tool-manager.d.ts +42 -3
  40. package/dist/lib/tool-manager.d.ts.map +1 -1
  41. package/dist/lib/tool-manager.js +155 -34
  42. package/dist/lib/tool-manager.js.map +1 -1
  43. package/dist/mcp-services.d.ts.map +1 -1
  44. package/dist/mcp-services.js +57 -3
  45. package/dist/mcp-services.js.map +1 -1
  46. package/dist/{menu.d.ts → menu/main-menu.d.ts} +1 -1
  47. package/dist/menu/main-menu.d.ts.map +1 -0
  48. package/dist/menu/main-menu.js +90 -0
  49. package/dist/menu/main-menu.js.map +1 -0
  50. package/dist/menu/mcp-menu.d.ts +2 -0
  51. package/dist/menu/mcp-menu.d.ts.map +1 -0
  52. package/dist/menu/mcp-menu.js +136 -0
  53. package/dist/menu/mcp-menu.js.map +1 -0
  54. package/dist/menu/provider-menu.d.ts +4 -0
  55. package/dist/menu/provider-menu.d.ts.map +1 -0
  56. package/dist/menu/provider-menu.js +623 -0
  57. package/dist/menu/provider-menu.js.map +1 -0
  58. package/dist/menu/shared.d.ts +17 -0
  59. package/dist/menu/shared.d.ts.map +1 -0
  60. package/dist/menu/shared.js +255 -0
  61. package/dist/menu/shared.js.map +1 -0
  62. package/dist/menu/system-menu.d.ts +3 -0
  63. package/dist/menu/system-menu.d.ts.map +1 -0
  64. package/dist/menu/system-menu.js +111 -0
  65. package/dist/menu/system-menu.js.map +1 -0
  66. package/dist/menu/tool-menu.d.ts +3 -0
  67. package/dist/menu/tool-menu.d.ts.map +1 -0
  68. package/dist/menu/tool-menu.js +619 -0
  69. package/dist/menu/tool-menu.js.map +1 -0
  70. package/dist/utils/api-test.d.ts +6 -0
  71. package/dist/utils/api-test.d.ts.map +1 -1
  72. package/dist/utils/api-test.js +66 -0
  73. package/dist/utils/api-test.js.map +1 -1
  74. package/dist/utils/brand.d.ts.map +1 -1
  75. package/dist/utils/brand.js +14 -0
  76. package/dist/utils/brand.js.map +1 -1
  77. package/dist/utils/config.d.ts +29 -4
  78. package/dist/utils/config.d.ts.map +1 -1
  79. package/dist/utils/config.js +194 -68
  80. package/dist/utils/config.js.map +1 -1
  81. package/dist/utils/providers.d.ts +32 -0
  82. package/dist/utils/providers.d.ts.map +1 -0
  83. package/dist/utils/providers.js +63 -0
  84. package/dist/utils/providers.js.map +1 -0
  85. package/dist/wizard.d.ts.map +1 -1
  86. package/dist/wizard.js +123 -35
  87. package/dist/wizard.js.map +1 -1
  88. package/package.json +1 -1
  89. package/dist/menu.d.ts.map +0 -1
  90. package/dist/menu.js +0 -1226
  91. package/dist/menu.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-menu.js","sourceRoot":"","sources":["../../src/menu/provider-menu.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { type Ora } from 'ora';
2
+ import type { Plan } from '../utils/config.js';
3
+ export declare function initMenuTerminalGuards(): void;
4
+ export declare function providerSummary(plan: Plan | undefined): string;
5
+ export declare function startCommand(tool: string): {
6
+ cmd: string;
7
+ args: string[];
8
+ };
9
+ export declare function installHint(tool: string): {
10
+ label: string;
11
+ command?: string;
12
+ };
13
+ export declare function pause(message?: string): Promise<void>;
14
+ export declare function createSafeSpinner(text: string): Ora;
15
+ export declare function getProviderIncompatibility(tool: string, plan: Plan): string | null;
16
+ export declare function selectModelId(plan: Plan, currentModel?: string): Promise<string | '__back'>;
17
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/menu/shared.ts"],"names":[],"mappings":"AAEA,OAAY,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAC;AAGpC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAuC/C,wBAAgB,sBAAsB,IAAI,IAAI,CAK7C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,GAAG,MAAM,CAQ9D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAqB1E;AAQD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAqB7E;AAED,wBAAsB,KAAK,CAAC,OAAO,SAA8C,GAAG,OAAO,CAAC,IAAI,CAAC,CAmChG;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAGnD;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAIlF;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,CAwGjG"}
@@ -0,0 +1,255 @@
1
+ import inquirer from 'inquirer';
2
+ import chalk from 'chalk';
3
+ import ora from 'ora';
4
+ import { configManager, isKimiLikePlan } from '../utils/config.js';
5
+ import { toolManager } from '../lib/tool-manager.js';
6
+ import { commandExists } from '../utils/exec.js';
7
+ import { COMMON_MODELS } from '../utils/providers.js';
8
+ import { truncateForTerminal } from '../utils/brand.js';
9
+ import { fetchLMStudioModel } from '../lib/provider-registry.js';
10
+ let guardsInstalled = false;
11
+ function disableMouseTracking() {
12
+ if (!process.stdout.isTTY)
13
+ return;
14
+ process.stdout.write('\x1b[?9l' +
15
+ '\x1b[?1000l' +
16
+ '\x1b[?1002l' +
17
+ '\x1b[?1003l' +
18
+ '\x1b[?1005l' +
19
+ '\x1b[?1006l' +
20
+ '\x1b[?1015l');
21
+ }
22
+ function installStdoutMouseGuard() {
23
+ if (!process.stdout.isTTY)
24
+ return;
25
+ const originalWrite = process.stdout.write.bind(process.stdout);
26
+ const enableRe = /\x1b\[\?(?:9|1000|1002|1003|1005|1006|1015)h/g;
27
+ process.stdout.write = (chunk, encoding, cb) => {
28
+ if (chunk == null)
29
+ return originalWrite(chunk, encoding, cb);
30
+ if (Buffer.isBuffer(chunk) || chunk instanceof Uint8Array) {
31
+ const buf = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk);
32
+ const cleaned = buf.toString('latin1').replace(enableRe, '');
33
+ return originalWrite(Buffer.from(cleaned, 'latin1'), encoding, cb);
34
+ }
35
+ const cleaned = String(chunk).replace(enableRe, '');
36
+ return originalWrite(cleaned, encoding, cb);
37
+ };
38
+ }
39
+ export function initMenuTerminalGuards() {
40
+ if (guardsInstalled)
41
+ return;
42
+ installStdoutMouseGuard();
43
+ disableMouseTracking();
44
+ guardsInstalled = true;
45
+ }
46
+ export function providerSummary(plan) {
47
+ if (!plan)
48
+ return '';
49
+ if (!isKimiLikePlan(plan))
50
+ return '';
51
+ const s = configManager.getProviderSettings(plan);
52
+ const parts = [];
53
+ if (s.baseUrl)
54
+ parts.push(s.baseUrl);
55
+ if (s.model)
56
+ parts.push(s.model);
57
+ return parts.length ? chalk.gray(` (${parts.join(' · ')})`) : '';
58
+ }
59
+ export function startCommand(tool) {
60
+ switch (tool) {
61
+ case 'claude-code':
62
+ return { cmd: 'claude', args: [] };
63
+ case 'opencode':
64
+ return { cmd: 'opencode', args: [] };
65
+ case 'crush':
66
+ return { cmd: 'crush', args: [] };
67
+ case 'factory-droid':
68
+ return commandExists('droid') ? { cmd: 'droid', args: [] } : { cmd: 'factory', args: [] };
69
+ case 'kimi':
70
+ return { cmd: 'kimi', args: [] };
71
+ case 'amp':
72
+ return { cmd: 'amp', args: [] };
73
+ case 'pi':
74
+ return { cmd: 'pi', args: [] };
75
+ case 'codex':
76
+ return { cmd: 'codex', args: [] };
77
+ default:
78
+ return { cmd: tool, args: [] };
79
+ }
80
+ }
81
+ function openUrlCommand(url) {
82
+ if (process.platform === 'win32')
83
+ return `start ${url}`;
84
+ if (process.platform === 'darwin')
85
+ return `open ${url}`;
86
+ return `xdg-open ${url}`;
87
+ }
88
+ export function installHint(tool) {
89
+ switch (tool) {
90
+ case 'amp':
91
+ return { label: 'Install AMP Code', command: 'powershell -c "irm https://ampcode.com/install.ps1 | iex"' };
92
+ case 'pi':
93
+ return { label: 'Install Pi CLI', command: 'bun add -g @mariozechner/pi-coding-agent' };
94
+ case 'opencode':
95
+ return { label: 'Install OpenCode', command: 'bun add -g opencode-ai' };
96
+ case 'kimi':
97
+ return { label: 'Open Kimi CLI install page', command: openUrlCommand('https://kimi.moonshot.cn/') };
98
+ case 'claude-code':
99
+ return { label: 'Open Claude Code install page', command: openUrlCommand('https://docs.anthropic.com/claude-code') };
100
+ case 'crush':
101
+ return { label: 'Open Crush install page', command: openUrlCommand('https://crush.ai/') };
102
+ case 'factory-droid':
103
+ return { label: 'Open Factory Droid install page', command: openUrlCommand('https://factory.ai/') };
104
+ case 'codex':
105
+ return { label: 'Install Codex CLI', command: 'npm install -g @openai/codex' };
106
+ default:
107
+ return { label: 'Install instructions', command: undefined };
108
+ }
109
+ }
110
+ export async function pause(message = 'Press Enter to continue... (or q to quit)') {
111
+ return new Promise((resolve) => {
112
+ console.log(chalk.gray(` ${message}`));
113
+ if (process.stdin.isTTY)
114
+ process.stdin.resume();
115
+ const onData = (data) => {
116
+ cleanup();
117
+ const str = data.toString().trim();
118
+ if (str === 'q' || str === 'Q') {
119
+ console.log(chalk.gray('\n Goodbye!\n'));
120
+ process.exit(0);
121
+ }
122
+ resolve();
123
+ };
124
+ const onEnd = () => {
125
+ cleanup();
126
+ resolve();
127
+ };
128
+ const onError = () => {
129
+ cleanup();
130
+ resolve();
131
+ };
132
+ const cleanup = () => {
133
+ process.stdin.removeListener('data', onData);
134
+ process.stdin.removeListener('end', onEnd);
135
+ process.stdin.removeListener('error', onError);
136
+ };
137
+ process.stdin.on('data', onData);
138
+ process.stdin.once('end', onEnd);
139
+ process.stdin.once('error', onError);
140
+ });
141
+ }
142
+ export function createSafeSpinner(text) {
143
+ const safeText = truncateForTerminal(text, (process.stdout.columns || 80) - 10);
144
+ return ora({ text: safeText, spinner: 'dots' });
145
+ }
146
+ export function getProviderIncompatibility(tool, plan) {
147
+ if (toolManager.isPlanSupported(tool, plan))
148
+ return null;
149
+ if (tool === 'claude-code')
150
+ return 'Requires Anthropic-compatible API';
151
+ return 'Unsupported by this tool';
152
+ }
153
+ export async function selectModelId(plan, currentModel) {
154
+ // Special handling for LM Studio - detect loaded model
155
+ if (plan === 'lmstudio') {
156
+ const spinner = createSafeSpinner('Checking LM Studio for loaded model...').start();
157
+ const detectedModel = await fetchLMStudioModel();
158
+ if (detectedModel) {
159
+ spinner.succeed(`Found loaded model: ${detectedModel}`);
160
+ const choices = [
161
+ { name: `${detectedModel} ${chalk.green('(detected from LM Studio)')}`, value: detectedModel },
162
+ { name: '✍️ Enter custom model ID...', value: '__custom' },
163
+ new inquirer.Separator(),
164
+ { name: chalk.gray('← Back'), value: '__back' },
165
+ ];
166
+ const { selection } = await inquirer.prompt([
167
+ {
168
+ type: 'list',
169
+ name: 'selection',
170
+ message: 'Select Model ID:',
171
+ choices,
172
+ },
173
+ ]);
174
+ if (selection === '__back')
175
+ return '__back';
176
+ if (selection === '__custom') {
177
+ const { custom } = await inquirer.prompt([
178
+ {
179
+ type: 'input',
180
+ name: 'custom',
181
+ message: "Enter model ID (or 'b' to go back):",
182
+ validate: (v) => v.trim().length > 0 || 'Model ID cannot be empty',
183
+ },
184
+ ]);
185
+ if (custom.trim().toLowerCase() === 'b')
186
+ return selectModelId(plan, currentModel);
187
+ return custom.trim();
188
+ }
189
+ return selection;
190
+ }
191
+ else {
192
+ spinner.fail('No model detected in LM Studio (is it running with a model loaded?)');
193
+ const choices = [
194
+ { name: '✍️ Enter model ID manually...', value: '__custom' },
195
+ new inquirer.Separator(),
196
+ { name: chalk.gray('← Back'), value: '__back' },
197
+ ];
198
+ const { selection } = await inquirer.prompt([
199
+ {
200
+ type: 'list',
201
+ name: 'selection',
202
+ message: 'Select Model ID (LM Studio not responding):',
203
+ choices,
204
+ },
205
+ ]);
206
+ if (selection === '__back')
207
+ return '__back';
208
+ const { custom } = await inquirer.prompt([
209
+ {
210
+ type: 'input',
211
+ name: 'custom',
212
+ message: "Enter model ID (or 'b' to go back):",
213
+ validate: (v) => v.trim().length > 0 || 'Model ID cannot be empty',
214
+ },
215
+ ]);
216
+ if (custom.trim().toLowerCase() === 'b')
217
+ return selectModelId(plan, currentModel);
218
+ return custom.trim();
219
+ }
220
+ }
221
+ // Standard handling for other providers
222
+ const common = COMMON_MODELS[plan] || [];
223
+ const choices = [
224
+ ...(currentModel ? [{ name: `${currentModel} ${chalk.green('(current)')}`, value: currentModel }] : []),
225
+ ...common.filter((m) => m !== currentModel).map((m) => ({ name: m, value: m })),
226
+ { name: '✍️ Enter custom model ID...', value: '__custom' },
227
+ new inquirer.Separator(),
228
+ { name: chalk.gray('← Back'), value: '__back' },
229
+ ];
230
+ const { selection } = await inquirer.prompt([
231
+ {
232
+ type: 'list',
233
+ name: 'selection',
234
+ message: 'Select Model ID:',
235
+ choices,
236
+ },
237
+ ]);
238
+ if (selection === '__back')
239
+ return '__back';
240
+ if (selection === '__custom') {
241
+ const { custom } = await inquirer.prompt([
242
+ {
243
+ type: 'input',
244
+ name: 'custom',
245
+ message: "Enter model ID (or 'b' to go back):",
246
+ validate: (v) => v.trim().length > 0 || 'Model ID cannot be empty',
247
+ },
248
+ ]);
249
+ if (custom.trim().toLowerCase() === 'b')
250
+ return selectModelId(plan, currentModel);
251
+ return custom.trim();
252
+ }
253
+ return selection;
254
+ }
255
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/menu/shared.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function diagnosticsMenu(): Promise<void>;
2
+ export declare function logsMenu(): Promise<void>;
3
+ //# sourceMappingURL=system-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-menu.d.ts","sourceRoot":"","sources":["../../src/menu/system-menu.ts"],"names":[],"mappings":"AAaA,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CA+CrD;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAmD9C"}
@@ -0,0 +1,111 @@
1
+ import inquirer from 'inquirer';
2
+ import chalk from 'chalk';
3
+ import { existsSync, readFileSync, writeFileSync } from 'fs';
4
+ import { join } from 'path';
5
+ import { CONFIG_DIR, configManager } from '../utils/config.js';
6
+ import { i18n } from '../utils/i18n.js';
7
+ import { toolManager } from '../lib/tool-manager.js';
8
+ import { printHeader, planLabelColored, maskApiKey, statusIndicator, toolLabel } from '../utils/brand.js';
9
+ import { printError, printInfo, printSuccess } from '../utils/output.js';
10
+ import { pause } from './shared.js';
11
+ export async function diagnosticsMenu() {
12
+ console.clear();
13
+ printHeader('System Diagnostics');
14
+ const auth = configManager.getAuth();
15
+ const plan = auth.plan;
16
+ const apiKey = auth.apiKey;
17
+ console.log(` ${i18n.t('doctor.config_path', { path: configManager.configPath })}`);
18
+ console.log(` ${i18n.t('doctor.current_auth')}`);
19
+ if (plan && apiKey) {
20
+ console.log(` ${i18n.t('doctor.plan')}: ${planLabelColored(plan)}`);
21
+ console.log(` ${i18n.t('doctor.api_key')}: ${maskApiKey(apiKey)}`);
22
+ }
23
+ else {
24
+ console.log(` ${chalk.yellow(i18n.t('doctor.not_set'))}`);
25
+ }
26
+ console.log('\n ' + i18n.t('doctor.tools_header'));
27
+ const tools = toolManager.getSupportedTools();
28
+ for (const tool of tools) {
29
+ const caps = toolManager.getCapabilities(tool);
30
+ if (!caps.supportsProviderConfig) {
31
+ console.log(` ${chalk.gray('○')} ${toolLabel(tool)} ${chalk.gray('(launch only)')}`);
32
+ continue;
33
+ }
34
+ const status = await toolManager.isConfigured(tool);
35
+ console.log(` ${statusIndicator(status)} ${toolLabel(tool)}`);
36
+ }
37
+ console.log('\n ' + i18n.t('doctor.mcp_header'));
38
+ const mcpCapableTools = tools.filter((tool) => toolManager.getCapabilities(tool).supportsMcp);
39
+ if (mcpCapableTools.length === 0) {
40
+ console.log(` ${chalk.gray(i18n.t('doctor.none'))}`);
41
+ }
42
+ else {
43
+ let hasAnyMcp = false;
44
+ for (const tool of mcpCapableTools) {
45
+ const installed = await toolManager.getInstalledMCPs(tool);
46
+ if (installed.length === 0)
47
+ continue;
48
+ hasAnyMcp = true;
49
+ console.log(` ${chalk.cyan(toolLabel(tool))}: ${installed.join(', ')}`);
50
+ }
51
+ if (!hasAnyMcp) {
52
+ console.log(` ${chalk.gray(i18n.t('doctor.none'))}`);
53
+ }
54
+ }
55
+ console.log();
56
+ await pause();
57
+ }
58
+ export async function logsMenu() {
59
+ const LOG_DIR = join(CONFIG_DIR, 'logs');
60
+ const LOG_FILE = join(LOG_DIR, 'error.log');
61
+ while (true) {
62
+ console.clear();
63
+ printHeader('Error Logs');
64
+ if (!existsSync(LOG_FILE)) {
65
+ printInfo('No logs found.');
66
+ }
67
+ else {
68
+ try {
69
+ const logs = readFileSync(LOG_FILE, 'utf-8');
70
+ const lines = logs.split('\n').filter((l) => l.trim()).slice(-15);
71
+ if (lines.length === 0) {
72
+ printInfo('Log file is empty.');
73
+ }
74
+ else {
75
+ console.log(chalk.gray(' Last 15 log entries:\n'));
76
+ for (const line of lines) {
77
+ if (line.includes('[ERROR]')) {
78
+ console.log(` ${chalk.red(line)}`);
79
+ }
80
+ else if (line.includes('[WARN]')) {
81
+ console.log(` ${chalk.yellow(line)}`);
82
+ }
83
+ else {
84
+ console.log(` ${chalk.gray(line)}`);
85
+ }
86
+ }
87
+ }
88
+ }
89
+ catch {
90
+ printError('Failed to read log file');
91
+ }
92
+ }
93
+ console.log();
94
+ const { action } = await inquirer.prompt([
95
+ {
96
+ type: 'list',
97
+ name: 'action',
98
+ message: 'Action:',
99
+ choices: [{ name: '🗑 Clear Logs', value: 'clear' }, new inquirer.Separator(), { name: chalk.gray('← Back'), value: 'back' }],
100
+ },
101
+ ]);
102
+ if (action === 'back')
103
+ return;
104
+ if (action === 'clear' && existsSync(LOG_FILE)) {
105
+ writeFileSync(LOG_FILE, '', 'utf-8');
106
+ printSuccess('Logs cleared');
107
+ await pause();
108
+ }
109
+ }
110
+ }
111
+ //# sourceMappingURL=system-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-menu.js","sourceRoot":"","sources":["../../src/menu/system-menu.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function toolMenu(tool: string): Promise<void>;
2
+ export declare function toolSelectMenu(): Promise<void>;
3
+ //# sourceMappingURL=tool-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-menu.d.ts","sourceRoot":"","sources":["../../src/menu/tool-menu.ts"],"names":[],"mappings":"AAoGA,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8P1D;AAmPD,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA6DpD"}