
IDE for MicroVMs — Manage Ignite MicroVMs directly from VS Code
- MicroVM Management — Start, stop, remove VMs from the sidebar
- Real-time VM Status — See running, stopped, and error states at a glance
- Quick Actions — Context menus and inline actions for VM operations
- Image Browser — Browse and pull VMIF images
- Log Streaming — View VM logs in the sidebar
- Terminal Access — Open vsock console for any running VM
- Help & Feedback — Quick access to documentation and settings
- VS Code 1.75.0 or higher
- Ignite Daemon (
ignited) running on your system
- User must be in the
ignite group: sudo usermod -aG ignite $USER
- Download the latest
.vsix from Releases
- Open VS Code
- Go to Extensions view (
Ctrl+Shift+X)
- Click
... → Install from VSIX
- Select the downloaded
.vsix file
git clone https://github.com/Subeshrock/micro-vm-extension.git
cd micro-vm-extension
npm install
npm run compile
npm run package
code --install-extension ignite-vscode-*.vsix
- Ensure
ignited is running: systemctl status ignited
- Open VS Code
- Click the 🔥 Ignite icon in the Activity Bar (left sidebar)
- Expand sections to manage your MicroVMs
Sidebar Sections
| Section |
Description |
| MICROVMS |
List of running VMs with status indicators |
| IMAGES |
Available VMIF images |
| LOGS |
Quick access to VM logs |
| TERMINAL |
Open vsock console for VMs |
| HELP AND FEEDBACK |
Documentation, settings, about |
Open the Command Palette (Ctrl+Shift+P) and type Ignite:
| Command |
Description |
Ignite: Refresh |
Refresh the sidebar |
Ignite: Start VM |
Start a VM by ID |
Ignite: Stop VM |
Stop a VM by ID |
Ignite: Remove VM |
Remove a VM by ID |
Ignite: View VM Details |
Show VM details popup |
Ignite: Open Terminal |
Open terminal for a VM |
Ignite: View Logs |
Open logs for a VM |
Ignite: Show Output |
Show extension output channel |
Ignite: About |
Show extension info |
| Setting |
Default |
Description |
ignite.socketPath |
/run/ignite/ignite.sock |
Path to the Ignite Unix socket |
ignite.autoConnect |
true |
Auto-connect to ignited on startup |
ignite.logLevel |
info |
Logging level (debug, info, warning, error) |
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Watch mode
npm run watch
# Run tests
npm test
# Package extension
npm run package
src/
├── main.ts # Extension entry point
├── communication/ # Unix socket communication
│ ├── index.ts # Service factory
│ └── socketClient.ts # HTTP over Unix socket
├── extension/
│ ├── commands/
│ │ └── commandRegistry.ts # VS Code commands
│ └── views/treeView/
│ ├── igniteSidebarProvider.ts # Composite sidebar
│ ├── sectionProvider.ts # Section interface
│ ├── types.ts # Sidebar types
│ └── sections/ # Section implementations
│ ├── microvmsSection.ts
│ ├── imagesSection.ts
│ ├── logsSection.ts
│ ├── terminalSection.ts
│ └── helpSection.ts
├── types/ # TypeScript type definitions
├── utils/ # Logger, error handler
└── test/ # Automated test suite
| Phase |
Version |
Features |
| Core Foundation |
v0.1.0 |
Sidebar, VM management, images, logs, terminal |
| Advanced |
v0.2.0 |
Snapshots, TimeMachine, networks, compose |
| Enterprise |
v0.6.0 |
LSP, cluster topology, registry, process tree |
MIT