Health Check & Setup Verification
The :LovelaceHealth command is your first stop for verifying that the Neovim extension is properly configured and connected to the Localhost daemon.
Running the Health Check
After installing the extension, verify your setup:
:LovelaceHealth
Expected Output
A successful health check displays:
# Lovelace Health Check
## Daemon Connection
**Status**: ✓ Connected
**Socket Path**: /tmp/lovelace-localhost.sock
## Authentication
**Status**: ✓ Authenticated
**User**: user@example.com
## Agent Workers
**Active Workers**: 3
**Idle Workers**: 2
**Busy Workers**: 1
What Each Section Means
Daemon Connection:
- Shows whether the plugin can communicate with the Localhost daemon
- Displays the Unix socket path being used for communication
- Connection is required for all Lovelace operations
Authentication:
- Indicates whether you're authenticated with Lovelace
- Shows your user email if authenticated
- Required for submitting tasks
Agent Workers:
- Shows the current state of the agent pool
- Idle workers are available for new tasks
- Busy workers are currently executing tasks
Common Health Check Scenarios
✅ Fully Operational
All sections show green checkmarks (✓). You're ready to submit tasks.
⚠️ Connected but Not Authenticated
## Daemon Connection
**Status**: ✓ Connected
## Authentication
**Status**: ✗ Not Authenticated
Solution: Run the authentication flow:
:LovelaceAuth
❌ Daemon Not Running
## Daemon Connection
**Status**: ✗ Failed to connect
**Error**: Connection refused (ECONNREFUSED)
Solution: Start the Localhost daemon:
# Start daemon
localhost-ctl start
# Verify it's running
localhost-ctl status
# Then re-run health check
❌ Socket Path Incorrect
## Daemon Connection
**Status**: ✗ Failed to connect
**Socket Path**: /wrong/path/to/socket.sock
Solution: Configure the correct socket path:
require("lovelace").setup({
daemon = {
socket_path = "/tmp/lovelace-localhost.sock" -- Correct path
}
})
Troubleshooting Connection Issues
Daemon Status Check
Verify the daemon is running and accessible:
# Check daemon status
localhost-ctl status
# Check socket file exists
ls -la /tmp/lovelace-localhost.sock
# Verify permissions
# Socket should be readable/writable by your user
Socket Path Discovery
The plugin searches for the socket in this order:
- Config setting:
daemon.socket_pathin your setup - Environment variable:
$LOVELACE_SOCKET - Common locations:
/tmp/lovelace-localhost.sock~/.lovelace/localhost.sock/var/run/lovelace/localhost.sock
Enable Debug Logging
For detailed connection diagnostics:
require("lovelace").setup({
log_level = "debug"
})
Then check Neovim messages:
:messages
Look for lines like:
[Lovelace] Attempting connection to /tmp/lovelace-localhost.sock
[Lovelace] Connection failed: Connection refused
[Lovelace] Retrying in 1 second (attempt 2/3)
Auto-Start Configuration
The extension can automatically start the daemon if it's not running:
require("lovelace").setup({
daemon = {
auto_start = true, -- Try to start daemon automatically
retry_count = 3, -- Number of connection retries
}
})
Auto-start behavior:
- Detects daemon is not running
- Executes
localhost-ctl start - Waits 2 seconds for startup
- Retries connection
- Shows error if still failing
Health Check Workflow
Use this workflow when troubleshooting:
-
Run health check:
vim:LovelaceHealth -
If daemon disconnected:
bashlocalhost-ctl start localhost-ctl status -
Re-run health check:
vim:LovelaceHealth -
If not authenticated:
vim:LovelaceAuth -
Verify success:
vim:LovelaceHealth
Next Steps
- Authentication Guide - Set up device authorization
- Task Submission - Submit your first task
- Troubleshooting - Common issues and solutions
- Command Reference - Full :LovelaceHealth documentation
Related Documentation
- Installation Guide - Complete setup instructions
- Configuration Deep Dive - Advanced configuration options
- :LovelaceHealth Command - Full command reference