vibecodingmachine-cli 2026.1.23-1010 → 2026.1.29-1432

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 (41) hide show
  1. package/package.json +14 -5
  2. package/src/utils/interactive.js +53 -3
  3. package/.allnightai/REQUIREMENTS.md +0 -11
  4. package/.eslintrc.js +0 -16
  5. package/__tests__/antigravity-js-handler.test.js +0 -23
  6. package/__tests__/provider-manager.test.js +0 -84
  7. package/__tests__/provider-rate-cache.test.js +0 -27
  8. package/jest.config.js +0 -8
  9. package/logs/audit/2025-11-07.jsonl +0 -2
  10. package/logs/audit/2025-12-24.jsonl +0 -2
  11. package/logs/audit/2025-12-27.jsonl +0 -1
  12. package/logs/audit/2026-01-03.jsonl +0 -2
  13. package/repro_open.js +0 -13
  14. package/reproduce_issue.js +0 -160
  15. package/reset_provider_order.js +0 -21
  16. package/scripts/README.md +0 -128
  17. package/scripts/auto-start-wrapper.sh +0 -92
  18. package/scripts/convert-requirements.js +0 -35
  19. package/scripts/debug-parse.js +0 -24
  20. package/src/commands/auto.js.bak +0 -710
  21. package/src/utils/auto-mode-ui.js.bak.blessed +0 -207
  22. package/tests/antigravity-js-handler.test.js +0 -23
  23. package/tests/auto-mode.test.js +0 -37
  24. package/tests/config.test.js +0 -34
  25. package/tests/home-bootstrap.test.js +0 -76
  26. package/tests/integration/health-tracking.integration.test.js +0 -284
  27. package/tests/provider-manager.test.js +0 -92
  28. package/tests/rate-limit-display.test.js +0 -44
  29. package/tests/requirements-bullet-parsing.test.js +0 -15
  30. package/tests/requirements-converter.test.js +0 -42
  31. package/tests/requirements-heading-count.test.js +0 -27
  32. package/tests/requirements-legacy-parsing.test.js +0 -15
  33. package/tests/requirements-navigator-buildtree-await.test.js +0 -28
  34. package/tests/requirements-parse-integration.test.js +0 -44
  35. package/tests/wait-for-ide-completion.test.js +0 -56
  36. package/tests/wait-for-ide-quota-detection-cursor-screenshot.test.js +0 -61
  37. package/tests/wait-for-ide-quota-detection-cursor.test.js +0 -60
  38. package/tests/wait-for-ide-quota-detection-negative.test.js +0 -45
  39. package/tests/wait-for-ide-quota-detection.test.js +0 -59
  40. package/verify_fix.js +0 -36
  41. package/verify_ui.js +0 -38
@@ -1,92 +0,0 @@
1
- #!/bin/bash
2
- #
3
- # Wrapper script for 'vcm auto:start' that properly handles Ctrl+C and other key presses
4
- # This script runs vcm auto:start in the background and monitors keyboard input
5
- #
6
-
7
- set -e
8
-
9
- # Colors
10
- RED='\033[0;31m'
11
- GREEN='\033[0;32m'
12
- YELLOW='\033[1;33m'
13
- GRAY='\033[0;37m'
14
- NC='\033[0m' # No Color
15
-
16
- # Get the directory where this script is located
17
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
18
- CLI_DIR="$(dirname "$SCRIPT_DIR")"
19
-
20
- # Path to vcm command
21
- ANA_CMD="$CLI_DIR/bin/vibecodingmachine.js"
22
-
23
- # Path to stop file
24
- STOP_FILE="$HOME/.config/vibecodingmachine/.stop"
25
-
26
- # Cleanup function
27
- cleanup() {
28
- echo -e "\n${YELLOW}Stopping auto mode...${NC}"
29
-
30
- # Create stop file to signal the process
31
- mkdir -p "$(dirname "$STOP_FILE")"
32
- echo "Stop requested at $(date)" > "$STOP_FILE"
33
-
34
- # Send SIGTERM to the vcm process if it's running
35
- if [ -n "$ANA_PID" ] && kill -0 "$ANA_PID" 2>/dev/null; then
36
- kill -TERM "$ANA_PID" 2>/dev/null || true
37
- fi
38
-
39
- # Wait a moment for the process to exit gracefully
40
- sleep 2
41
-
42
- # Force kill if still running
43
- if [ -n "$ANA_PID" ] && kill -0 "$ANA_PID" 2>/dev/null; then
44
- echo -e "${YELLOW}Force stopping...${NC}"
45
- kill -9 "$ANA_PID" 2>/dev/null || true
46
- fi
47
-
48
- # Also kill any remaining aider processes
49
- pkill -9 -f "aider.*vibecodingmachine" 2>/dev/null || true
50
-
51
- echo -e "${GREEN}Auto mode stopped${NC}"
52
- exit 0
53
- }
54
-
55
- # Set up trap for Ctrl+C
56
- trap cleanup INT TERM
57
-
58
- # Start vcm auto:start in background
59
- echo -e "${GRAY}Starting auto mode...${NC}"
60
- echo -e "${GRAY}Press Ctrl+C, Esc, or 'x' to stop${NC}"
61
- echo ""
62
-
63
- # Start vcm in background, saving its PID
64
- # Set ANA_WRAPPER_RUNNING to prevent infinite recursion
65
- export ANA_WRAPPER_RUNNING=1
66
- node "$ANA_CMD" auto:start "$@" &
67
- ANA_PID=$!
68
-
69
- # Monitor for keyboard input AND stop file in the foreground
70
- # Use a non-blocking read to check for key presses
71
- while kill -0 "$ANA_PID" 2>/dev/null; do
72
- # Check for stop file first (created by 'vcm auto:stop' or Ctrl+C signal)
73
- if [ -f "$STOP_FILE" ]; then
74
- echo -e "\n${YELLOW}Stop signal detected${NC}"
75
- cleanup
76
- fi
77
-
78
- # Read a single character with 0.5 second timeout
79
- if read -t 0.5 -n 1 -s key 2>/dev/null; then
80
- # Check if key is 'x', Esc (ASCII 27), or Ctrl+C
81
- if [ "$key" = "x" ] || [ "$key" = "X" ] || [ "$(printf '%d' "'$key")" = "27" ]; then
82
- echo -e "\n${YELLOW}Stop key pressed${NC}"
83
- cleanup
84
- fi
85
- fi
86
- done
87
-
88
- # Process exited naturally
89
- echo -e "\n${GREEN}Auto mode completed${NC}"
90
- wait "$ANA_PID"
91
- exit_code=$?
92
- exit $exit_code
@@ -1,35 +0,0 @@
1
- #!/usr/bin/env node
2
- const fs = require('fs-extra');
3
- const path = require('path');
4
- const os = require('os');
5
- const { getRequirementsPath } = require('vibecodingmachine-core/src/utils/repo-helpers.cjs');
6
- const { convertPackageBlocksToHeadings } = require('../src/utils/requirements-converter');
7
-
8
- async function main() {
9
- try {
10
- const repoRoot = path.resolve(__dirname, '..', '..', '..');
11
- const reqPath = await getRequirementsPath(repoRoot, os.hostname());
12
- if (!reqPath || !await fs.pathExists(reqPath)) {
13
- console.error('Requirements file not found for this host:', reqPath);
14
- process.exit(1);
15
- }
16
-
17
- const content = await fs.readFile(reqPath, 'utf8');
18
- const converted = convertPackageBlocksToHeadings(content, 'todo', '⏳ Requirements not yet completed');
19
-
20
- // Backup
21
- const backupPath = `${reqPath}.bak.${Date.now()}`;
22
- await fs.copy(reqPath, backupPath);
23
- console.log('Backup created at', backupPath);
24
-
25
- await fs.writeFile(reqPath, converted, 'utf8');
26
- console.log('Converted requirements written to', reqPath);
27
- } catch (e) {
28
- console.error('Error converting requirements:', e);
29
- process.exit(1);
30
- }
31
- }
32
-
33
- if (require.main === module) {
34
- main();
35
- }
@@ -1,24 +0,0 @@
1
- const { parseRequirementsFromContent } = require('../src/utils/requirements-parser');
2
- const content = `# REQUIREMENTS
3
-
4
- ## ⏳ Requirements not yet completed
5
-
6
- PACKAGE: cli
7
- Add filter options to ` + "`vcm req:list`" + `: --computer <hostname>
8
-
9
- - Add
10
- - bullet one
11
- - bullet two
12
-
13
- ### Modify "Add Requirement" dialog to include computer selection dropdown. Show computer focus areas as hints. Allow selecting a computer.
14
-
15
- PACKAGE: electron-app
16
- Create modal dialog for resolving sync conflicts. Show side-by-side diff of local vs remote changes.
17
-
18
- - Create network status indicator
19
-
20
- `;
21
-
22
- const reqs = parseRequirementsFromContent(content, 'todo', '⏳ Requirements not yet completed');
23
- console.log('Parsed titles:', reqs.map(r => r.title));
24
- console.log('Full:', JSON.stringify(reqs, null, 2));