vibecodingmachine-cli 2026.1.22-1441 → 2026.1.24-1641

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.
@@ -0,0 +1,2 @@
1
+ {"timestamp":"2026-01-24T03:42:12.706Z","type":"auto-mode-stop","reason":"startup","message":"Auto Mode stopped (startup)"}
2
+ {"timestamp":"2026-01-24T03:42:41.636Z","type":"auto-mode-stop","reason":"startup","message":"Auto Mode stopped (startup)"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vibecodingmachine-cli",
3
- "version": "2026.01.22-1441",
3
+ "version": "2026.01.24-1641",
4
4
  "description": "Command-line interface for Vibe Coding Machine - Autonomous development",
5
5
  "main": "src/index.js",
6
6
  "bin": {
@@ -25,7 +25,6 @@
25
25
  "author": "Vibe Coding Machine Team",
26
26
  "license": "MIT",
27
27
  "dependencies": {
28
- "vibecodingmachine-core": "^2026.01.22-1441",
29
28
  "@aws-sdk/client-dynamodb": "^3.600.0",
30
29
  "@aws-sdk/lib-dynamodb": "^3.600.0",
31
30
  "boxen": "^5.1.2",
@@ -43,7 +42,9 @@
43
42
  "open": "^11.0.0",
44
43
  "ora": "^5.4.1",
45
44
  "react": "^19.2.0",
46
- "table": "^6.8.1"
45
+ "screenshot-desktop": "^1.15.3",
46
+ "table": "^6.8.1",
47
+ "vibecodingmachine-core": "^2026.01.24-1641"
47
48
  },
48
49
  "devDependencies": {
49
50
  "eslint": "^8.57.0",
@@ -1138,6 +1138,49 @@ async function handleFeedbackSubmission() {
1138
1138
  const userProfile = await getUserProfile();
1139
1139
  const userEmail = userProfile ? userProfile.email : 'anonymous';
1140
1140
 
1141
+ // Ask if user wants to include a screenshot
1142
+ let includeScreenshot = false;
1143
+ let screenshotData = null;
1144
+
1145
+ try {
1146
+ const { screenshot } = await inquirer.prompt([{
1147
+ type: 'confirm',
1148
+ name: 'screenshot',
1149
+ message: 'Include a screenshot with your feedback?',
1150
+ default: false
1151
+ }]);
1152
+
1153
+ includeScreenshot = screenshot;
1154
+
1155
+ if (includeScreenshot) {
1156
+ console.log(chalk.gray('šŸ“ø Capturing screenshot...'));
1157
+ try {
1158
+ const screenshot = require('screenshot-desktop');
1159
+ const imgBuffer = await screenshot({ format: 'png' });
1160
+
1161
+ // Convert to base64 and check size
1162
+ const base64 = imgBuffer.toString('base64');
1163
+ const dataUrl = `data:image/png;base64,${base64}`;
1164
+ const size = Buffer.byteLength(dataUrl, 'utf8');
1165
+
1166
+ // Much stricter size limit - 100KB max
1167
+ if (size > 100 * 1024) {
1168
+ console.log(chalk.yellow('āš ļø Screenshot is too large, submitting feedback without screenshot'));
1169
+ includeScreenshot = false;
1170
+ } else {
1171
+ screenshotData = dataUrl;
1172
+ console.log(chalk.green(`āœ… Screenshot captured (${(size / 1024).toFixed(2)} KB)`));
1173
+ }
1174
+ } catch (screenshotError) {
1175
+ console.log(chalk.yellow('āš ļø Failed to capture screenshot, continuing without it'));
1176
+ includeScreenshot = false;
1177
+ }
1178
+ }
1179
+ } catch (err) {
1180
+ // User cancelled or error occurred
1181
+ includeScreenshot = false;
1182
+ }
1183
+
1141
1184
  console.log(chalk.gray('\n' + t('interactive.feedback.comment.instructions') + '\n'));
1142
1185
 
1143
1186
  const commentLines = [];
@@ -1186,12 +1229,19 @@ async function handleFeedbackSubmission() {
1186
1229
  userDb.setAuthToken(token);
1187
1230
  }
1188
1231
 
1189
- await userDb.submitFeedback({
1232
+ const feedbackData = {
1190
1233
  email: userEmail,
1191
1234
  comment: comment,
1192
1235
  interface: 'cli',
1193
- version: pkg.version
1194
- });
1236
+ version: pkg.version,
1237
+ type: 'cli_feedback'
1238
+ };
1239
+
1240
+ if (includeScreenshot && screenshotData) {
1241
+ feedbackData.screenshot = screenshotData;
1242
+ }
1243
+
1244
+ await userDb.submitFeedback(feedbackData);
1195
1245
 
1196
1246
  console.log(chalk.green('\nāœ“ ' + t('interactive.feedback.success')));
1197
1247
  } catch (error) {