heyvm 1.0.1 → 1.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 (34) hide show
  1. package/README.md +54 -27
  2. package/bin/heyvm-core +0 -0
  3. package/bin/heyvm-files +0 -0
  4. package/core/go.mod +3 -0
  5. package/core/go.sum +6 -0
  6. package/package.json +1 -1
  7. package/ui/dist/App.d.ts.map +1 -1
  8. package/ui/dist/App.js +9 -1
  9. package/ui/dist/App.js.map +1 -1
  10. package/ui/dist/index.js +615 -372
  11. package/ui/dist/index.js.map +1 -1
  12. package/ui/dist/screens/VMDetailScreen.d.ts.map +1 -1
  13. package/ui/dist/screens/VMDetailScreen.js +65 -34
  14. package/ui/dist/screens/VMDetailScreen.js.map +1 -1
  15. package/ui/dist/screens/tabs/FilesTab.d.ts +2 -2
  16. package/ui/dist/screens/tabs/FilesTab.d.ts.map +1 -1
  17. package/ui/dist/screens/tabs/FilesTab.ink-original.d.ts +10 -0
  18. package/ui/dist/screens/tabs/FilesTab.ink-original.d.ts.map +1 -0
  19. package/ui/dist/screens/tabs/FilesTab.ink-original.js +420 -0
  20. package/ui/dist/screens/tabs/FilesTab.ink-original.js.map +1 -0
  21. package/ui/dist/screens/tabs/FilesTab.js +607 -300
  22. package/ui/dist/screens/tabs/FilesTab.js.map +1 -1
  23. package/ui/dist/screens/tabs/TerminalTab.d.ts.map +1 -1
  24. package/ui/dist/screens/tabs/TerminalTab.js +90 -49
  25. package/ui/dist/screens/tabs/TerminalTab.js.map +1 -1
  26. package/ui/dist/utils/mouseParser.d.ts +39 -0
  27. package/ui/dist/utils/mouseParser.d.ts.map +1 -0
  28. package/ui/dist/utils/mouseParser.js +45 -0
  29. package/ui/dist/utils/mouseParser.js.map +1 -0
  30. package/ui/dist/utils/terminalEmulator.d.ts.map +1 -1
  31. package/ui/dist/utils/terminalEmulator.js +4 -1
  32. package/ui/dist/utils/terminalEmulator.js.map +1 -1
  33. package/bin/file-browser +0 -0
  34. package/bin/heyvm +0 -0
package/README.md CHANGED
@@ -66,7 +66,7 @@ These components communicate via **JSON-RPC over stdio**, providing process isol
66
66
  Install heyvm globally via npm:
67
67
 
68
68
  ```bash
69
- npm install -g heyvm
69
+ npm install -g heyvm@latest
70
70
  ```
71
71
 
72
72
  Then run from anywhere:
@@ -81,7 +81,7 @@ For development or contributing:
81
81
 
82
82
  ```bash
83
83
  # Clone the repository
84
- git clone https://github.com/adishm/heyvm.git
84
+ git clone https://github.com/adishM98/heyvm.git
85
85
  cd heyvm
86
86
 
87
87
  # Install dependencies for both UI and Core backend
@@ -106,6 +106,39 @@ make run
106
106
 
107
107
  The UI will start in your terminal, and the Go backend will run as a background process communicating via stdio.
108
108
 
109
+ ### Updating to Latest Version
110
+
111
+ **If installed globally via npm:**
112
+
113
+ ```bash
114
+ npm update -g heyvm
115
+ ```
116
+
117
+ Or reinstall with the latest version:
118
+
119
+ ```bash
120
+ npm install -g heyvm@latest
121
+ ```
122
+
123
+ **If installed from source:**
124
+
125
+ ```bash
126
+ # Navigate to the heyvm directory
127
+ cd /path/to/heyvm
128
+
129
+ # Pull latest changes
130
+ git pull origin main
131
+
132
+ # Reinstall dependencies and rebuild
133
+ make install
134
+ make build-all
135
+ ```
136
+
137
+ Check your current version:
138
+ ```bash
139
+ npm list -g heyvm
140
+ ```
141
+
109
142
  ### Uninstalling heyvm
110
143
 
111
144
  To completely remove heyvm from your system:
@@ -142,7 +175,6 @@ Passwords stored in the OS keychain need to be removed manually:
142
175
 
143
176
  - **macOS**: Open "Keychain Access" app → Search for "heyvm" → Delete entries
144
177
  - **Linux**: Use your keyring manager (GNOME Keyring, KWallet, etc.)
145
- - **Windows**: Open "Credential Manager" → Search for "heyvm" → Remove entries
146
178
 
147
179
  **Note**: SSH keys are never copied or stored by heyvm, so no additional cleanup is needed for key-based authentication.
148
180
 
@@ -344,8 +376,7 @@ heyvm/
344
376
  ├── core/ # Backend - Go
345
377
  │ ├── cmd/
346
378
  │ │ ├── heyvm-core/ # Main backend entry point
347
- │ │ ├── heyvm/ # CLI wrapper
348
- │ │ └── file-browser/ # Standalone file browser
379
+ │ │ └── heyvm/ # CLI wrapper
349
380
  │ ├── internal/
350
381
  │ │ ├── auth/ # Authentication providers
351
382
  │ │ │ ├── provider.go
@@ -364,11 +395,10 @@ heyvm/
364
395
  │ │ │ ├── manager.go
365
396
  │ │ │ ├── session.go
366
397
  │ │ │ └── errors.go
367
- │ │ ├── vm/ # VM models and registry
368
- │ │├── registry.go
369
- │ │├── models.go
370
- │ │└── errors.go
371
- │ │ └── tui/ # Terminal UI utilities
398
+ │ │ └── vm/ # VM models and registry
399
+ │ │ ├── registry.go
400
+ │ │ ├── models.go
401
+ │ │ └── errors.go
372
402
  │ └── go.mod
373
403
  ├── docs/ # Documentation
374
404
  │ ├── PRD.md # Product requirements
@@ -376,9 +406,7 @@ heyvm/
376
406
  │ ├── development.md # Development guide
377
407
  │ └── exploration/ # Development notes
378
408
  ├── bin/ # Compiled binaries (generated)
379
- ├── heyvm-core
380
- │ ├── heyvm
381
- │ └── file-browser
409
+ └── heyvm-core
382
410
  ├── build/ # Build artifacts (generated)
383
411
  ├── Makefile # Build automation
384
412
  ├── README.md # This file
@@ -574,7 +602,7 @@ While heyvm is designed to work without manual configuration, you can directly e
574
602
  If you encounter issues:
575
603
 
576
604
  1. Check the logs: `cat ~/.heyvm/logs/heyvm-core.log`
577
- 2. Review existing [GitHub Issues](https://github.com/adishm/heyvm/issues)
605
+ 2. Review existing [GitHub Issues](https://github.com/adishm98/heyvm/issues)
578
606
  3. Open a new issue with:
579
607
  - heyvm version
580
608
  - Operating system
@@ -583,16 +611,6 @@ If you encounter issues:
583
611
 
584
612
  ## Roadmap
585
613
 
586
- ### Current Features (Phase 1)
587
- - ✅ VM management and storage
588
- - ✅ SSH key and password authentication
589
- - ✅ Split-pane TUI interface
590
- - ✅ Full terminal emulator (xterm.js with ANSI/VT100 support)
591
- - ✅ Terminal scrollback (1000 lines)
592
- - ✅ Interactive programs support (vim, nano, htop, sudo)
593
- - ✅ File browser with dual-pane view
594
- - ✅ Secure credential storage
595
-
596
614
  ### Planned Features (Future Phases)
597
615
  - 🔄 Cloud provider integration (AWS, Azure, GCP)
598
616
  - 🔄 Bastion/jump host support
@@ -603,6 +621,17 @@ If you encounter issues:
603
621
  - 🔄 Multi-VM command execution
604
622
  - 🔄 SSH config import
605
623
 
624
+ ## Project Maturity
625
+
626
+ heyvm is still in its early stages. While it solves real problems and is actively used, it hasn't been battle-tested across every edge case or environment.
627
+
628
+ If you encounter issues or have ideas for improvements:
629
+ - **Found a bug?** [Open an issue](https://github.com/adishM98/heyvm/issues) - detailed bug reports help immensely
630
+ - **Want a feature?** [Request it](https://github.com/adishM98/heyvm/issues) - I'd love to hear how heyvm can better fit your workflow
631
+ - **Want to customize it?** Fork the repository and make it your own! Add features, change behaviors, experiment freely
632
+
633
+ The beauty of open source is that you don't have to wait. If you need something now, fork it, build it, and if you think others might benefit, send a PR back. The project welcomes contributions of all kinds.
634
+
606
635
  ## Contributing
607
636
 
608
637
  Contributions are welcome! Here's how you can help:
@@ -652,9 +681,7 @@ Built with:
652
681
 
653
682
  ## Support & Community
654
683
 
655
- - **Issues**: [GitHub Issues](https://github.com/adishm/heyvm/issues)
656
- - **Discussions**: [GitHub Discussions](https://github.com/adishm/heyvm/discussions)
657
- - **Documentation**: [docs/](docs/)
684
+ - **Issues**: [GitHub Issues](https://github.com/adishM98/heyvm/issues)
658
685
 
659
686
  ---
660
687
 
package/bin/heyvm-core CHANGED
Binary file
Binary file
package/core/go.mod CHANGED
@@ -17,8 +17,11 @@ require (
17
17
  github.com/dvsekhvalnov/jose2go v1.5.0 // indirect
18
18
  github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 // indirect
19
19
  github.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c // indirect
20
+ github.com/jesseduffield/gocui v0.3.0 // indirect
20
21
  github.com/kr/fs v0.1.0 // indirect
22
+ github.com/mattn/go-runewidth v0.0.9 // indirect
21
23
  github.com/mtibben/percent v0.2.1 // indirect
24
+ github.com/nsf/termbox-go v1.1.1 // indirect
22
25
  github.com/stretchr/objx v0.5.2 // indirect
23
26
  golang.org/x/sys v0.40.0 // indirect
24
27
  golang.org/x/term v0.39.0 // indirect
package/core/go.sum CHANGED
@@ -13,15 +13,21 @@ github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 h1:ZpnhV/YsD2/4cESfV5+
13
13
  github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4=
14
14
  github.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c h1:6rhixN/i8ZofjG1Y75iExal34USq5p+wiN1tpie8IrU=
15
15
  github.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c/go.mod h1:NMPJylDgVpX0MLRlPy15sqSwOFv/U1GZ2m21JhFfek0=
16
+ github.com/jesseduffield/gocui v0.3.0 h1:l7wH8MKR2p+ozuZdtdhQiX7szILbv50vkMk1tg2+xow=
17
+ github.com/jesseduffield/gocui v0.3.0/go.mod h1:2RtZznzYKt8RLRwvFiSkXjU0Ei8WwHdubgnlaYH47dw=
16
18
  github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8=
17
19
  github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg=
18
20
  github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
19
21
  github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
20
22
  github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
23
+ github.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0=
24
+ github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
21
25
  github.com/mtibben/percent v0.2.1 h1:5gssi8Nqo8QU/r2pynCm+hBQHpkB/uNK7BJCFogWdzs=
22
26
  github.com/mtibben/percent v0.2.1/go.mod h1:KG9uO+SZkUp+VkRHsCdYQV3XSZrrSpR3O9ibNBTZrns=
23
27
  github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs=
24
28
  github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
29
+ github.com/nsf/termbox-go v1.1.1 h1:nksUPLCb73Q++DwbYUBEglYBRPZyoXJdrj5L+TkjyZY=
30
+ github.com/nsf/termbox-go v1.1.1/go.mod h1:T0cTdVuOwf7pHQNtfhnEbzHbcNyCEcVU4YPpouCbVxo=
25
31
  github.com/pkg/sftp v1.13.10 h1:+5FbKNTe5Z9aspU88DPIKJ9z2KZoaGCu6Sr6kKR/5mU=
26
32
  github.com/pkg/sftp v1.13.10/go.mod h1:bJ1a7uDhrX/4OII+agvy28lzRvQrmIQuaHrcI1HbeGA=
27
33
  github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "heyvm",
3
- "version": "1.0.1",
3
+ "version": "1.1.0",
4
4
  "description": "A zero-config, interactive terminal UI to connect, manage, and transfer files to VMs over SSH",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAQrD,MAAM,CAAC,OAAO,UAAU,GAAG,sBAqM1B"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAQrD,MAAM,CAAC,OAAO,UAAU,GAAG,sBA8M1B"}
package/ui/dist/App.js CHANGED
@@ -74,6 +74,8 @@ export default function App() {
74
74
  setActivePaneSide('left');
75
75
  };
76
76
  // Global keyboard handler
77
+ // NOTE: When terminal tab is active, ALL input (including Ctrl+C) goes to terminal
78
+ // Only Ctrl+O can exit the terminal tab back to overview
77
79
  useInput((input, key) => {
78
80
  // Modal takes precedence
79
81
  if (showAddVMModal)
@@ -83,10 +85,16 @@ export default function App() {
83
85
  setActiveTab('overview');
84
86
  return;
85
87
  }
86
- // Terminal has complete input priority - don't intercept ANYTHING when terminal is active
88
+ // Terminal has COMPLETE input priority - don't intercept ANYTHING when terminal is active
89
+ // This includes Ctrl+C, Ctrl+D, Escape, etc. - everything goes to the PTY
87
90
  if (activePaneSide === 'right' && selectedVM && activeTab === 'terminal') {
88
91
  return; // Let terminal handle all input
89
92
  }
93
+ // Ctrl+C: Quit app (only when NOT in terminal tab)
94
+ if (key.ctrl && input === 'c') {
95
+ exit();
96
+ return;
97
+ }
90
98
  // Global quit (only from left pane with no selection)
91
99
  if (input === 'q' && activePaneSide === 'left' && !selectedVM) {
92
100
  exit();
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"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"}