What to build
Implement single-instance enforcement so only one Ronin process runs at a time. When a second ronin invocation is launched:
- Detect that an instance is already running (via lock file, socket, or D-Bus)
- Route the CLI intent (
--new, --quick, --attach <path>) to the existing process
- Focus the existing window
- Apply the launch intent in the running instance
This replaces the M0 behavior where multiple simultaneous processes were unsupported but not prevented.
Acceptance criteria
Blocked by
None - can start immediately
What to build
Implement single-instance enforcement so only one Ronin process runs at a time. When a second
ronininvocation is launched:--new,--quick,--attach <path>) to the existing processThis replaces the M0 behavior where multiple simultaneous processes were unsupported but not prevented.
Acceptance criteria
roninlaunch acquires an instance lockroninlaunch detects the existing instance--newcreates a thread,--quickopens quick mode,--attachattaches file)Blocked by
None - can start immediately