v0.10.2

Released: July 6, 2026 ยท Download


๐Ÿ› Bug fixes / Improvements

idx destroy no longer leaves orphaned agent processes

Destroying a projectโ€™s index removes .idx/server.sock and .idx/server.state โ€” the very files the CLI used to detect and stop a running agent. Once those were gone, the agent could no longer be reached externally and was left running indefinitely, unreachable but alive.

The agent now closes its own listener as the last step of a successful idx.destroy, so it exits on its own once the index files are removed โ€” no external signal required.

idx destroy no longer resurrects the .idx directories it just removed

While a running agentโ€™s file-watch loop was still active during destroy, it would see each .idx removal as a filesystem event, resolve it to the parent directory (since the removed path itself no longer exists), and resync that directory โ€” recreating the very index destroy had just deleted. With the watch loop running for the whole recursive delete, this affected every indexed directory in the project, including the root.

idx destroy now stops the agentโ€™s watch loop first, and waits for it to fully exit, before removing any index files.

# destroy now reliably leaves zero .idx directories behind,
# even with a running agent and nested per-directory indexes
idx agent start
idx destroy
find . -name ".idx" -type d   # empty

๐Ÿ—๏ธ Architecture

  • ADR 0026 โ€” idx destroy stops the watch loop before removing indices and the server self-shuts-down after a successful destroy, restoring the guarantee from ADR 0011 (which described a mechanism removed by the ADR 0019/0020 migration to the client-server architecture) using the current architectureโ€™s primitives.