codevf 1.0.2 → 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 +118 -62
- package/dist/commands/chat.d.ts +2 -0
- package/dist/commands/chat.d.ts.map +1 -0
- package/dist/commands/chat.js +130 -0
- package/dist/commands/chat.js.map +1 -0
- package/dist/commands/cvf-chat-command-content.d.ts +2 -0
- package/dist/commands/cvf-chat-command-content.d.ts.map +1 -0
- package/dist/commands/cvf-chat-command-content.js +22 -0
- package/dist/commands/cvf-chat-command-content.js.map +1 -0
- package/dist/commands/cvf-command-content.d.ts +2 -0
- package/dist/commands/cvf-command-content.d.ts.map +1 -0
- package/dist/commands/cvf-command-content.js +109 -0
- package/dist/commands/cvf-command-content.js.map +1 -0
- package/dist/commands/fix.d.ts +1 -0
- package/dist/commands/fix.d.ts.map +1 -1
- package/dist/commands/fix.js +36 -0
- package/dist/commands/fix.js.map +1 -1
- package/dist/commands/listen.d.ts +2 -0
- package/dist/commands/listen.d.ts.map +1 -0
- package/dist/commands/listen.js +109 -0
- package/dist/commands/listen.js.map +1 -0
- package/dist/commands/mcp-tools.d.ts.map +1 -1
- package/dist/commands/mcp-tools.js +15 -15
- package/dist/commands/mcp-tools.js.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +138 -56
- package/dist/commands/setup.js.map +1 -1
- package/dist/index.js +37 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/api/client.d.ts +4 -0
- package/dist/lib/api/client.d.ts.map +1 -1
- package/dist/lib/api/client.js +6 -0
- package/dist/lib/api/client.js.map +1 -1
- package/dist/lib/api/sessions.d.ts +85 -0
- package/dist/lib/api/sessions.d.ts.map +1 -0
- package/dist/lib/api/sessions.js +137 -0
- package/dist/lib/api/sessions.js.map +1 -0
- package/dist/lib/api/tasks.d.ts +44 -0
- package/dist/lib/api/tasks.d.ts.map +1 -1
- package/dist/lib/api/tasks.js +82 -1
- package/dist/lib/api/tasks.js.map +1 -1
- package/dist/lib/api/websocket.d.ts +4 -2
- package/dist/lib/api/websocket.d.ts.map +1 -1
- package/dist/lib/api/websocket.js +54 -5
- package/dist/lib/api/websocket.js.map +1 -1
- package/dist/lib/auth/token-manager.d.ts.map +1 -1
- package/dist/lib/auth/token-manager.js +17 -6
- package/dist/lib/auth/token-manager.js.map +1 -1
- package/dist/lib/utils/logger.d.ts +3 -0
- package/dist/lib/utils/logger.d.ts.map +1 -1
- package/dist/lib/utils/logger.js +12 -4
- package/dist/lib/utils/logger.js.map +1 -1
- package/dist/mcp/index.js +134 -8
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/tools/chat.d.ts +81 -1
- package/dist/mcp/tools/chat.d.ts.map +1 -1
- package/dist/mcp/tools/chat.js +624 -21
- package/dist/mcp/tools/chat.js.map +1 -1
- package/dist/mcp/tools/instant.d.ts +18 -5
- package/dist/mcp/tools/instant.d.ts.map +1 -1
- package/dist/mcp/tools/instant.js +320 -31
- package/dist/mcp/tools/instant.js.map +1 -1
- package/dist/mcp/tools/listen.d.ts +35 -0
- package/dist/mcp/tools/listen.d.ts.map +1 -0
- package/dist/mcp/tools/listen.js +97 -0
- package/dist/mcp/tools/listen.js.map +1 -0
- package/dist/mcp/tools/task-checker.d.ts +60 -0
- package/dist/mcp/tools/task-checker.d.ts.map +1 -0
- package/dist/mcp/tools/task-checker.js +139 -0
- package/dist/mcp/tools/task-checker.js.map +1 -0
- package/dist/mcp/tools/tunnel.d.ts +38 -0
- package/dist/mcp/tools/tunnel.d.ts.map +1 -0
- package/dist/mcp/tools/tunnel.js +109 -0
- package/dist/mcp/tools/tunnel.js.map +1 -0
- package/dist/modules/permissions.d.ts +1 -0
- package/dist/modules/permissions.d.ts.map +1 -1
- package/dist/modules/permissions.js +2 -0
- package/dist/modules/permissions.js.map +1 -1
- package/dist/modules/tunnel.d.ts +5 -0
- package/dist/modules/tunnel.d.ts.map +1 -1
- package/dist/modules/tunnel.js +55 -0
- package/dist/modules/tunnel.js.map +1 -1
- package/dist/modules/websocket.d.ts.map +1 -1
- package/dist/modules/websocket.js +3 -2
- package/dist/modules/websocket.js.map +1 -1
- package/dist/types/index.d.ts +7 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/ui/LiveSession.js +2 -2
- package/dist/ui/LiveSession.js.map +1 -1
- package/dist/ui/SessionUI.d.ts +1 -1
- package/dist/ui/SessionUI.d.ts.map +1 -1
- package/dist/ui/SessionUI.js +4 -1
- package/dist/ui/SessionUI.js.map +1 -1
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +8 -7
- package/dist/utils/errors.js.map +1 -1
- package/package.json +3 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listen.d.ts","sourceRoot":"","sources":["../../src/commands/listen.ts"],"names":[],"mappings":"AAeA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CA0InD"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { AuthManager } from '../modules/auth.js';
|
|
4
|
+
import { ApiClient } from '../modules/api.js';
|
|
5
|
+
import { WebSocketClient } from '../lib/api/websocket.js';
|
|
6
|
+
import { handleError } from '../utils/errors.js';
|
|
7
|
+
export async function listenCommand() {
|
|
8
|
+
const authManager = new AuthManager();
|
|
9
|
+
if (!authManager.isAuthenticated()) {
|
|
10
|
+
console.log(chalk.red('❌ Not authenticated. Please run: codevf login'));
|
|
11
|
+
process.exit(1);
|
|
12
|
+
}
|
|
13
|
+
const apiClient = new ApiClient(authManager);
|
|
14
|
+
try {
|
|
15
|
+
const spinner = ora('Initializing session monitor...').start();
|
|
16
|
+
// Fetch available projects as potential sessions
|
|
17
|
+
const projects = await apiClient.getProjects();
|
|
18
|
+
spinner.stop();
|
|
19
|
+
if (!projects.projects || projects.projects.length === 0) {
|
|
20
|
+
console.log(chalk.yellow('⚠️ No active projects to monitor.'));
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
// Create monitors for each project with active tasks
|
|
24
|
+
const monitors = new Map();
|
|
25
|
+
const wsClients = new Map();
|
|
26
|
+
console.log(chalk.bold.cyan('🎧 Session Monitor Started\n'));
|
|
27
|
+
console.log(chalk.dim(`Monitoring ${projects.projects.length} projects. Press Ctrl+C to exit.\n`));
|
|
28
|
+
const token = authManager.getAccessToken();
|
|
29
|
+
for (const project of projects.projects.slice(0, 5)) {
|
|
30
|
+
// Monitor up to 5 projects
|
|
31
|
+
const monitor = {
|
|
32
|
+
taskId: project.id,
|
|
33
|
+
projectName: project.name,
|
|
34
|
+
messageCount: 0,
|
|
35
|
+
lastMessageTime: new Date().toLocaleTimeString(),
|
|
36
|
+
isActive: true,
|
|
37
|
+
};
|
|
38
|
+
monitors.set(project.id, monitor);
|
|
39
|
+
// Try to connect to each project's WebSocket
|
|
40
|
+
try {
|
|
41
|
+
const wsUrl = apiClient.getWebSocketUrl(project.id, token);
|
|
42
|
+
const wsClient = new WebSocketClient(wsUrl);
|
|
43
|
+
wsClient.on('engineer_message', (message) => {
|
|
44
|
+
const monitor = monitors.get(project.id);
|
|
45
|
+
if (!monitor)
|
|
46
|
+
return;
|
|
47
|
+
monitor.messageCount++;
|
|
48
|
+
monitor.lastMessageTime = new Date().toLocaleTimeString();
|
|
49
|
+
const senderLabel = chalk.magenta('🔵 Engineer');
|
|
50
|
+
console.log(chalk.dim(`[${monitor.lastMessageTime}] `) +
|
|
51
|
+
chalk.bold(`${monitor.projectName}`) +
|
|
52
|
+
chalk.dim(` (${project.id})\n`) +
|
|
53
|
+
`${senderLabel}: ${message.text || message}\n`);
|
|
54
|
+
});
|
|
55
|
+
wsClient.on('billing_update', (update) => {
|
|
56
|
+
const monitor = monitors.get(project.id);
|
|
57
|
+
if (!monitor)
|
|
58
|
+
return;
|
|
59
|
+
console.log(chalk.dim(`[${new Date().toLocaleTimeString()}] `) +
|
|
60
|
+
chalk.bold(`${monitor.projectName}`) +
|
|
61
|
+
chalk.dim(` 💳 ${update.creditsUsed} credits (${update.duration})\n`));
|
|
62
|
+
});
|
|
63
|
+
wsClient.on('closure_request', () => {
|
|
64
|
+
const monitor = monitors.get(project.id);
|
|
65
|
+
if (!monitor)
|
|
66
|
+
return;
|
|
67
|
+
monitor.isActive = false;
|
|
68
|
+
console.log(chalk.yellow(`⚠️ Session ${project.id} ending.\n`));
|
|
69
|
+
});
|
|
70
|
+
wsClient.on('error', (error) => {
|
|
71
|
+
console.log(chalk.yellow(`[Warning] Cannot monitor ${project.name}: ${error.message || error}`));
|
|
72
|
+
});
|
|
73
|
+
// Start connection
|
|
74
|
+
wsClient.connect().catch(() => {
|
|
75
|
+
// Silent fail for inactive sessions
|
|
76
|
+
});
|
|
77
|
+
wsClients.set(project.id, wsClient);
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
console.error(chalk.dim(`Skipping ${project.name}: Not an active session`));
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
// Print periodic status
|
|
84
|
+
const statusInterval = setInterval(() => {
|
|
85
|
+
console.log(chalk.bold.cyan('\n📊 Session Status:\n'));
|
|
86
|
+
monitors.forEach((monitor) => {
|
|
87
|
+
const status = monitor.isActive ? chalk.green('🟢 Active') : chalk.gray('⚫ Ended');
|
|
88
|
+
console.log(`${status} ${chalk.bold(monitor.projectName)} - ` +
|
|
89
|
+
`${monitor.messageCount} messages, ` +
|
|
90
|
+
`last: ${monitor.lastMessageTime}`);
|
|
91
|
+
});
|
|
92
|
+
console.log('');
|
|
93
|
+
}, 30000); // Print status every 30 seconds
|
|
94
|
+
// Handle graceful shutdown
|
|
95
|
+
process.on('SIGINT', () => {
|
|
96
|
+
clearInterval(statusInterval);
|
|
97
|
+
console.log(chalk.yellow('\n\n👋 Closing monitoring connections...\n'));
|
|
98
|
+
wsClients.forEach((client) => {
|
|
99
|
+
client.disconnect();
|
|
100
|
+
});
|
|
101
|
+
console.log(chalk.green('✓ Monitor closed.\n'));
|
|
102
|
+
process.exit(0);
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
handleError(error);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=listen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listen.js","sourceRoot":"","sources":["../../src/commands/listen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAUjD,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAEtC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,CAAC;IAE7C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,GAAG,CAAC,iCAAiC,CAAC,CAAC,KAAK,EAAE,CAAC;QAE/D,iDAAiD;QACjD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;QAC/C,OAAO,CAAC,IAAI,EAAE,CAAC;QAEf,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QAED,qDAAqD;QACrD,MAAM,QAAQ,GAAgC,IAAI,GAAG,EAAE,CAAC;QACxD,MAAM,SAAS,GAAiC,IAAI,GAAG,EAAE,CAAC;QAE1D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,QAAQ,CAAC,QAAQ,CAAC,MAAM,oCAAoC,CAAC,CAAC,CAAC;QAEnG,MAAM,KAAK,GAAG,WAAW,CAAC,cAAc,EAAE,CAAC;QAE3C,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACpD,2BAA2B;YAC3B,MAAM,OAAO,GAAmB;gBAC9B,MAAM,EAAE,OAAO,CAAC,EAAE;gBAClB,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,YAAY,EAAE,CAAC;gBACf,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE;gBAChD,QAAQ,EAAE,IAAI;aACf,CAAC;YAEF,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAElC,6CAA6C;YAC7C,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC3D,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;gBAE5C,QAAQ,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,OAAY,EAAE,EAAE;oBAC/C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBACzC,IAAI,CAAC,OAAO;wBAAE,OAAO;oBAErB,OAAO,CAAC,YAAY,EAAE,CAAC;oBACvB,OAAO,CAAC,eAAe,GAAG,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;oBAE1D,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;oBAEjD,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,eAAe,IAAI,CAAC;wBACxC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;wBACpC,KAAK,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,EAAE,KAAK,CAAC;wBAC/B,GAAG,WAAW,KAAK,OAAO,CAAC,IAAI,IAAI,OAAO,IAAI,CACjD,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,MAAW,EAAE,EAAE;oBAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBACzC,IAAI,CAAC,OAAO;wBAAE,OAAO;oBAErB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,IAAI,CAAC;wBAChD,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;wBACpC,KAAK,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,WAAW,aAAa,MAAM,CAAC,QAAQ,KAAK,CAAC,CACxE,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;oBAClC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBACzC,IAAI,CAAC,OAAO;wBAAE,OAAO;oBAErB,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACzB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,eAAe,OAAO,CAAC,EAAE,YAAY,CACtC,CACF,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;oBAClC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,4BAA4B,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,IAAI,KAAK,EAAE,CACtE,CACF,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,mBAAmB;gBACnB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;oBAC5B,oCAAoC;gBACtC,CAAC,CAAC,CAAC;gBAEH,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,IAAI,yBAAyB,CAAC,CAC7D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;YACvD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACnF,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK;oBAC/C,GAAG,OAAO,CAAC,YAAY,aAAa;oBACpC,SAAS,OAAO,CAAC,eAAe,EAAE,CACrC,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,gCAAgC;QAE3C,2BAA2B;QAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACxB,aAAa,CAAC,cAAc,CAAC,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC,CAAC;YAExE,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC3B,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tools.d.ts","sourceRoot":"","sources":["../../src/commands/mcp-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"mcp-tools.d.ts","sourceRoot":"","sources":["../../src/commands/mcp-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA+BH;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyFtE;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkFnE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoD/D"}
|
|
@@ -8,13 +8,12 @@ import { ConfigManager } from '../lib/config/manager.js';
|
|
|
8
8
|
import { TokenManager } from '../lib/auth/token-manager.js';
|
|
9
9
|
import { ApiClient } from '../lib/api/client.js';
|
|
10
10
|
import { TasksApi } from '../lib/api/tasks.js';
|
|
11
|
-
import { WebSocketClient } from '../lib/api/websocket.js';
|
|
12
11
|
import { logger } from '../lib/utils/logger.js';
|
|
13
12
|
/**
|
|
14
13
|
* Check if MCP is configured
|
|
15
14
|
*/
|
|
16
15
|
function checkMcpConfig() {
|
|
17
|
-
const configManager = new ConfigManager('
|
|
16
|
+
const configManager = new ConfigManager('config.json');
|
|
18
17
|
if (!configManager.exists()) {
|
|
19
18
|
console.log(chalk.yellow(' [!] MCP not configured'));
|
|
20
19
|
console.log(chalk.dim(' Run: ') + chalk.white('codevf setup') + chalk.dim(' to configure'));
|
|
@@ -70,6 +69,11 @@ export async function handleCvfInstant(message) {
|
|
|
70
69
|
const tokenManager = new TokenManager(configManager);
|
|
71
70
|
const apiClient = new ApiClient(config.baseUrl, tokenManager);
|
|
72
71
|
const defaultProjectId = config.defaults?.projectId || '1';
|
|
72
|
+
logger.info('handleCvfInstant config:', {
|
|
73
|
+
baseUrl: config.baseUrl,
|
|
74
|
+
defaults: config.defaults,
|
|
75
|
+
defaultProjectId,
|
|
76
|
+
});
|
|
73
77
|
const tasksApi = new TasksApi(apiClient, config.baseUrl, defaultProjectId);
|
|
74
78
|
console.log(chalk.cyan(' [→] Creating instant query...'));
|
|
75
79
|
// Create task
|
|
@@ -77,23 +81,17 @@ export async function handleCvfInstant(message) {
|
|
|
77
81
|
message: finalMessage,
|
|
78
82
|
taskMode: 'realtime_answer',
|
|
79
83
|
maxCredits,
|
|
84
|
+
projectId: defaultProjectId,
|
|
80
85
|
});
|
|
81
86
|
if (task.warning) {
|
|
82
87
|
console.log(chalk.yellow(` [!] ${task.warning}`));
|
|
83
88
|
}
|
|
84
|
-
console.log(chalk.cyan(` [→]
|
|
85
|
-
//
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
const ws = new WebSocketClient(wsUrl);
|
|
91
|
-
await ws.connect();
|
|
92
|
-
console.log(chalk.cyan(' [→] Waiting for engineer response...'));
|
|
93
|
-
// Wait for response (5 min timeout)
|
|
94
|
-
const response = await ws.waitForResponse(300000);
|
|
95
|
-
// Disconnect
|
|
96
|
-
ws.disconnect();
|
|
89
|
+
console.log(chalk.cyan(` [→] Waiting for engineer response (Task ${task.taskId})...`));
|
|
90
|
+
// Wait for response via polling (5 min timeout)
|
|
91
|
+
const response = await tasksApi.waitForResponse(task.taskId, {
|
|
92
|
+
timeoutMs: 300000,
|
|
93
|
+
pollIntervalMs: 3000,
|
|
94
|
+
});
|
|
97
95
|
// Display response
|
|
98
96
|
console.log();
|
|
99
97
|
console.log(chalk.bold.green(' ✓ Engineer Response:'));
|
|
@@ -157,7 +155,9 @@ export async function handleCvfChat(message) {
|
|
|
157
155
|
const task = await tasksApi.create({
|
|
158
156
|
message: finalMessage,
|
|
159
157
|
taskMode: 'realtime_chat',
|
|
158
|
+
status: 'requested',
|
|
160
159
|
maxCredits,
|
|
160
|
+
projectId: defaultProjectId,
|
|
161
161
|
});
|
|
162
162
|
if (task.warning) {
|
|
163
163
|
console.log(chalk.yellow(` [!] ${task.warning}`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../src/commands/mcp-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../src/commands/mcp-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsJH;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CA6NlD"}
|
package/dist/commands/setup.js
CHANGED
|
@@ -9,6 +9,8 @@ import path from 'path';
|
|
|
9
9
|
import os from 'os';
|
|
10
10
|
import { ConfigManager } from '../lib/config/manager.js';
|
|
11
11
|
import { OAuthFlow } from '../lib/auth/oauth-flow.js';
|
|
12
|
+
import { commandContent } from './cvf-command-content.js';
|
|
13
|
+
import { chatCommandContent } from './cvf-chat-command-content.js';
|
|
12
14
|
/**
|
|
13
15
|
* Get Claude Code config path based on platform
|
|
14
16
|
*/
|
|
@@ -31,6 +33,7 @@ function createCvfSlashCommand() {
|
|
|
31
33
|
const homeDir = os.homedir();
|
|
32
34
|
const commandsDir = path.join(homeDir, '.claude', 'commands');
|
|
33
35
|
const cvfCommandPath = path.join(commandsDir, 'cvf.md');
|
|
36
|
+
const cvfChatCommandPath = path.join(commandsDir, 'cvf-chat.md');
|
|
34
37
|
// Create commands directory if it doesn't exist
|
|
35
38
|
if (!fs.existsSync(commandsDir)) {
|
|
36
39
|
fs.mkdirSync(commandsDir, { recursive: true, mode: 0o755 });
|
|
@@ -38,56 +41,18 @@ function createCvfSlashCommand() {
|
|
|
38
41
|
// Check if cvf.md already exists
|
|
39
42
|
if (fs.existsSync(cvfCommandPath)) {
|
|
40
43
|
console.log(chalk.green('✅ /cvf slash command already exists'));
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
fs.writeFileSync(cvfCommandPath, commandContent, { mode: 0o644 });
|
|
47
|
+
console.log(chalk.green('✅ Created /cvf slash command for Claude Code'));
|
|
48
|
+
}
|
|
49
|
+
// Check if cvf-chat.md already exists
|
|
50
|
+
if (fs.existsSync(cvfChatCommandPath)) {
|
|
51
|
+
console.log(chalk.green('✅ /cvf-chat slash command already exists'));
|
|
41
52
|
return true;
|
|
42
53
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
description: Ask a CodeVF engineer for help with code validation, debugging, or technical questions
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
# CodeVF Engineer Assistance
|
|
49
|
-
|
|
50
|
-
Please help me with the following question or task by consulting a CodeVF engineer using the appropriate MCP tool:
|
|
51
|
-
|
|
52
|
-
**My request:**
|
|
53
|
-
{{PROMPT}}
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
**Instructions for Claude:**
|
|
58
|
-
|
|
59
|
-
1. **Analyze the request** to determine which CodeVF tool is most appropriate:
|
|
60
|
-
- Use \`codevf-instant\` for:
|
|
61
|
-
- Quick validation questions (1-10 credits, ~2 min response)
|
|
62
|
-
- "Does this fix work?"
|
|
63
|
-
- "Is this approach correct?"
|
|
64
|
-
- "Can you identify the error?"
|
|
65
|
-
- Simple technical questions
|
|
66
|
-
|
|
67
|
-
- Use \`codevf-chat\` for:
|
|
68
|
-
- Complex debugging requiring back-and-forth (4-1920 credits, 2 credits/min)
|
|
69
|
-
- Multi-step troubleshooting
|
|
70
|
-
- Architecture discussions
|
|
71
|
-
- Extended collaboration
|
|
72
|
-
|
|
73
|
-
2. **Use the appropriate tool:**
|
|
74
|
-
- For instant queries: Call \`codevf-instant\` with the message and appropriate maxCredits (1-10)
|
|
75
|
-
- For extended sessions: Call \`codevf-chat\` with the message and appropriate maxCredits (suggest 240 for ~2 hours)
|
|
76
|
-
|
|
77
|
-
3. **Present the response:**
|
|
78
|
-
- For instant queries: Share the engineer's response directly
|
|
79
|
-
- For chat sessions: Provide the session URL so the user can monitor the conversation
|
|
80
|
-
|
|
81
|
-
**Credit Guidelines:**
|
|
82
|
-
- Instant validation: 1-10 credits (typically 3-5 credits per question)
|
|
83
|
-
- Extended chat: 2 credits per minute (240 credits = 2 hours)
|
|
84
|
-
|
|
85
|
-
**Example Usage:**
|
|
86
|
-
- \`/cvf Does this authentication fix prevent the timing attack?\` → Use codevf-instant
|
|
87
|
-
- \`/cvf Complex race condition in WebSocket reconnection needs debugging\` → Use codevf-chat
|
|
88
|
-
`;
|
|
89
|
-
fs.writeFileSync(cvfCommandPath, commandContent, { mode: 0o644 });
|
|
90
|
-
console.log(chalk.green('✅ Created /cvf slash command for Claude Code'));
|
|
54
|
+
fs.writeFileSync(cvfChatCommandPath, chatCommandContent, { mode: 0o644 });
|
|
55
|
+
console.log(chalk.green('✅ Created /cvf-chat slash command for Claude Code'));
|
|
91
56
|
return true;
|
|
92
57
|
}
|
|
93
58
|
catch (error) {
|
|
@@ -207,13 +172,126 @@ export async function setupCommand() {
|
|
|
207
172
|
const oauthFlow = new OAuthFlow(baseUrl, 'mcp');
|
|
208
173
|
const authResult = await oauthFlow.authenticate();
|
|
209
174
|
spinner.succeed('Authentication successful!');
|
|
210
|
-
//
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
175
|
+
// Fetch existing projects for selection
|
|
176
|
+
let projectId;
|
|
177
|
+
try {
|
|
178
|
+
spinner.start('Fetching your projects...');
|
|
179
|
+
const response = await fetch(`${baseUrl}/api/cli/projects`, {
|
|
180
|
+
headers: {
|
|
181
|
+
'Authorization': `Bearer ${authResult.accessToken}`,
|
|
182
|
+
},
|
|
183
|
+
});
|
|
184
|
+
if (response.ok) {
|
|
185
|
+
const data = await response.json();
|
|
186
|
+
spinner.succeed('Projects loaded');
|
|
187
|
+
if (data.success && data.selectionOptions) {
|
|
188
|
+
console.log(chalk.dim('\n' + (data.message || '')));
|
|
189
|
+
const { selectedProject } = await prompts({
|
|
190
|
+
type: 'select',
|
|
191
|
+
name: 'selectedProject',
|
|
192
|
+
message: 'Choose a default project:',
|
|
193
|
+
choices: data.selectionOptions.map((option) => ({
|
|
194
|
+
title: option.label,
|
|
195
|
+
description: option.description,
|
|
196
|
+
value: option.value
|
|
197
|
+
})),
|
|
198
|
+
initial: 0,
|
|
199
|
+
});
|
|
200
|
+
projectId = selectedProject === 'new' ? undefined : selectedProject;
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
// Provide user-friendly fallback when API fails
|
|
204
|
+
spinner.warn('Could not load existing projects from server');
|
|
205
|
+
const { projectChoice } = await prompts({
|
|
206
|
+
type: 'select',
|
|
207
|
+
name: 'projectChoice',
|
|
208
|
+
message: 'How would you like to configure the default project?',
|
|
209
|
+
choices: [
|
|
210
|
+
{
|
|
211
|
+
title: '🆕 Create a new project when needed',
|
|
212
|
+
description: 'The CLI will create a new project automatically',
|
|
213
|
+
value: 'new'
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
title: '📝 Enter a specific project ID',
|
|
217
|
+
description: 'If you know the ID of an existing project',
|
|
218
|
+
value: 'manual'
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
title: '⏩ Skip for now',
|
|
222
|
+
description: 'You can configure this later',
|
|
223
|
+
value: 'skip'
|
|
224
|
+
}
|
|
225
|
+
],
|
|
226
|
+
initial: 0,
|
|
227
|
+
});
|
|
228
|
+
if (projectChoice === 'manual') {
|
|
229
|
+
const { manualProjectId } = await prompts({
|
|
230
|
+
type: 'text',
|
|
231
|
+
name: 'manualProjectId',
|
|
232
|
+
message: 'Enter project ID:',
|
|
233
|
+
initial: '',
|
|
234
|
+
validate: (value) => {
|
|
235
|
+
if (!value.trim())
|
|
236
|
+
return 'Project ID cannot be empty';
|
|
237
|
+
if (!/^\d+$/.test(value.trim()))
|
|
238
|
+
return 'Project ID must be a number';
|
|
239
|
+
return true;
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
projectId = manualProjectId?.trim();
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
projectId = undefined; // Either 'new' or 'skip' - both result in no default project
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
else {
|
|
250
|
+
spinner.warn('Could not connect to CodeVF servers');
|
|
251
|
+
const { offlineChoice } = await prompts({
|
|
252
|
+
type: 'select',
|
|
253
|
+
name: 'offlineChoice',
|
|
254
|
+
message: 'Unable to fetch projects. How would you like to proceed?',
|
|
255
|
+
choices: [
|
|
256
|
+
{
|
|
257
|
+
title: '🆕 Create new projects automatically',
|
|
258
|
+
description: 'The CLI will create projects as needed',
|
|
259
|
+
value: 'auto'
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
title: '⏩ Skip project configuration',
|
|
263
|
+
description: 'Configure later when connection is available',
|
|
264
|
+
value: 'skip'
|
|
265
|
+
}
|
|
266
|
+
],
|
|
267
|
+
initial: 0,
|
|
268
|
+
});
|
|
269
|
+
projectId = undefined; // No default project in offline mode
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
catch (error) {
|
|
273
|
+
spinner.warn('Connection error while loading projects');
|
|
274
|
+
console.log(chalk.dim(` Error: ${error.message}`));
|
|
275
|
+
const { errorChoice } = await prompts({
|
|
276
|
+
type: 'select',
|
|
277
|
+
name: 'errorChoice',
|
|
278
|
+
message: 'Unable to connect to CodeVF. How would you like to proceed?',
|
|
279
|
+
choices: [
|
|
280
|
+
{
|
|
281
|
+
title: '🆕 Create new projects automatically',
|
|
282
|
+
description: 'The CLI will create projects when needed',
|
|
283
|
+
value: 'auto'
|
|
284
|
+
},
|
|
285
|
+
{
|
|
286
|
+
title: '⏩ Skip project configuration',
|
|
287
|
+
description: 'Configure later when connection is restored',
|
|
288
|
+
value: 'skip'
|
|
289
|
+
}
|
|
290
|
+
],
|
|
291
|
+
initial: 0,
|
|
292
|
+
});
|
|
293
|
+
projectId = undefined; // No default project when connection fails
|
|
294
|
+
}
|
|
217
295
|
// Save MCP configuration
|
|
218
296
|
mcpConfigManager.save({
|
|
219
297
|
baseUrl,
|
|
@@ -238,7 +316,11 @@ export async function setupCommand() {
|
|
|
238
316
|
console.log(chalk.dim('1. Restart Claude Code to load the MCP server'));
|
|
239
317
|
console.log(chalk.dim('2. Use the /cvf slash command in Claude Code:'));
|
|
240
318
|
console.log(chalk.dim(' Example: ') + chalk.white('/cvf Does this fix work?'));
|
|
241
|
-
console.log(chalk.dim('
|
|
319
|
+
console.log(chalk.dim(' Example: ') + chalk.white('/cvf Create tunnel to port 3000'));
|
|
320
|
+
console.log(chalk.dim('3. Or ask Claude to use MCP tools directly:'));
|
|
321
|
+
console.log(chalk.dim(' - codevf-instant: Quick validation (1-10 credits)'));
|
|
322
|
+
console.log(chalk.dim(' - codevf-chat: Extended debugging (2 credits/min)'));
|
|
323
|
+
console.log(chalk.dim(' - codevf-tunnel: Expose local dev server (free)\n'));
|
|
242
324
|
}
|
|
243
325
|
}
|
|
244
326
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -12,6 +12,8 @@ import { initCommand } from './commands/init.js';
|
|
|
12
12
|
import { syncCommand } from './commands/sync.js';
|
|
13
13
|
import { fixCommand } from './commands/fix.js';
|
|
14
14
|
import { tasksCommand } from './commands/tasks.js';
|
|
15
|
+
import { chatCommand } from './commands/chat.js';
|
|
16
|
+
import { listenCommand } from './commands/listen.js';
|
|
15
17
|
import { handleError } from './utils/errors.js';
|
|
16
18
|
import { ConfigManager } from './modules/config.js';
|
|
17
19
|
import { AiAgent } from './modules/aiAgent.js';
|
|
@@ -23,6 +25,8 @@ import { renderHeader, renderQuickCommands, showModeSwitched, } from './ui/Sessi
|
|
|
23
25
|
import { handleSlashCommand, isSlashCommand, handleHybridMode, handleAiMode, handleHumanMode, } from './modules/commandHandler.js';
|
|
24
26
|
const args = hideBin(process.argv);
|
|
25
27
|
const SETUP_ONLY_MODE = process.env.SETUP_ONLY_MODE !== 'false';
|
|
28
|
+
const isNpxInvocation = process.env.npm_config_user_agent?.includes('npx') ||
|
|
29
|
+
process.env.npm_execpath?.includes('npx');
|
|
26
30
|
/**
|
|
27
31
|
* Safely loads config without throwing errors
|
|
28
32
|
*/
|
|
@@ -174,8 +178,13 @@ async function runInteractiveMode() {
|
|
|
174
178
|
*/
|
|
175
179
|
if (args.length === 0) {
|
|
176
180
|
if (SETUP_ONLY_MODE) {
|
|
177
|
-
|
|
178
|
-
|
|
181
|
+
if (isNpxInvocation) {
|
|
182
|
+
setupCommand().catch(handleError);
|
|
183
|
+
}
|
|
184
|
+
else {
|
|
185
|
+
console.log(chalk.dim('CodeVF CLI is in beta. Run "codevf setup" to configure Claude Code integration.'));
|
|
186
|
+
process.exit(0);
|
|
187
|
+
}
|
|
179
188
|
}
|
|
180
189
|
// Check if this is the first run
|
|
181
190
|
if (isFirstRun()) {
|
|
@@ -247,6 +256,27 @@ else {
|
|
|
247
256
|
catch (error) {
|
|
248
257
|
handleError(error);
|
|
249
258
|
}
|
|
259
|
+
})
|
|
260
|
+
.command('cvf-chat [project-id]', 'Start or join a live chat session with an engineer', (yargs) => {
|
|
261
|
+
return yargs.positional('project-id', {
|
|
262
|
+
type: 'string',
|
|
263
|
+
describe: 'Optional project ID to connect to',
|
|
264
|
+
});
|
|
265
|
+
}, async (argv) => {
|
|
266
|
+
try {
|
|
267
|
+
await chatCommand(argv['project-id']);
|
|
268
|
+
}
|
|
269
|
+
catch (error) {
|
|
270
|
+
handleError(error);
|
|
271
|
+
}
|
|
272
|
+
})
|
|
273
|
+
.command('cvf-listen', 'Monitor all active chat sessions in real-time', () => { }, async () => {
|
|
274
|
+
try {
|
|
275
|
+
await listenCommand();
|
|
276
|
+
}
|
|
277
|
+
catch (error) {
|
|
278
|
+
handleError(error);
|
|
279
|
+
}
|
|
250
280
|
})
|
|
251
281
|
.command('fix <issue>', 'Start a live debugging session', (yargs) => {
|
|
252
282
|
return yargs
|
|
@@ -264,6 +294,10 @@ else {
|
|
|
264
294
|
type: 'boolean',
|
|
265
295
|
default: false,
|
|
266
296
|
describe: 'Do not auto-start opencode server; require existing server',
|
|
297
|
+
})
|
|
298
|
+
.option('tunnel', {
|
|
299
|
+
type: 'number',
|
|
300
|
+
describe: 'Automatically create tunnel for specified port (e.g., --tunnel 3000)',
|
|
267
301
|
});
|
|
268
302
|
}, async (argv) => {
|
|
269
303
|
try {
|
|
@@ -273,7 +307,7 @@ else {
|
|
|
273
307
|
await aiAgent.run(argv.issue, { startServer: !argv['no-start-server'] });
|
|
274
308
|
return;
|
|
275
309
|
}
|
|
276
|
-
await fixCommand(argv.issue);
|
|
310
|
+
await fixCommand(argv.issue, { tunnel: argv.tunnel });
|
|
277
311
|
}
|
|
278
312
|
catch (error) {
|
|
279
313
|
handleError(error);
|