v0.6.0

Released: May 27, 2026 Β· Download


✨ New features

idx server start/stop/status β€” self-managing daemon

The idx server command is now a full daemon manager. Instead of running idx server in the foreground or using the removed idx daemon subcommands, use the new lifecycle commands:

# Start the server as a background daemon
idx server start

# Check server status
idx server status

# Stop the server daemon
idx server stop

The server runs the file-watch loop internally β€” no separate idx daemon enable or idx watch process is needed. Stopping the server also stops the watch loop.

idx daemon enable/disable/status are removed. See the daemon migration guide.

idx skills install β€” fully bundled, no git required

Skills are now bundled directly into the idx binary. Installation requires no network connection, git binary, or external dependencies:

idx skills install claude
idx skills install copilot
idx skills install cursor

Installed skill files are copied from the embedded binary to ~/.<editor>/skills/idx-search/. For claude, "Bash(idx *)" is also added to ~/.claude/settings.json automatically.


πŸ› Improvements

More reliable idx destroy

idx destroy now sends idx.destroy to the server via RPC before removing files, giving the server a clean shutdown path. The server daemon is then stopped automatically after destroy completes.

Improved error messages in CLI commands

Error messages for unindexed directories and configuration mismatches now include the offending value and a concrete hint for resolution.

Extensive unit test coverage

This release adds unit tests across CLI commands, progress model, skills installation, config YAML parsing, filesystem ignore matchers, and daemon service adapters. Test coverage is now reported to SonarCloud on every PR.


πŸ—οΈ Architecture

  • ADR 0020 β€” idx server is a self-managing daemon; idx server start/stop/status manage the lifecycle; idx daemon enable/disable removed; DI cycle between InitCommandService and ServerDaemonService eliminated.
  • InitCommandService now accepts a InitCommandServiceDeps struct to group dependencies, reducing constructor parameter count.
  • IgnoreMatcherFactory renamed to IgnoreMatcherBuilder for consistency with Go naming conventions.