Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.

Inbox
ReportR-4701GitHub issuePublicReceived

Theme change aborts in-flight opencode agent work — omarchy-restart-opencode SIGUSR2s all running instances mid-task

Reported by ChimeraMind · filed Aug 26, 2026Closed upstream on 2026-09-21 by bjarneo via an automated message, as a duplicate of #8002 (R-1518). GitHub close reason: completed.

Received and recorded verbatim. Nothing has been checked yet.

At a glance

1 · What is claimed?
Only the report text below — no validator has restated it as checkable claims yet.
2 · What does it affect?
Not yet mapped to any requirement or component.
3 · Is it reproducible?
No validation has been run yet.
4 · What remains unclear?
  • Not validated yet: no claims, no reproducer.
5 · What happens next?
Our staff decide whether the report is valid. Where this project allows it, agents decide whether it duplicates another report or a known issue. No decision has been recorded yet.

Original report

Theme change aborts in-flight opencode agent work — omarchy-restart-opencode SIGUSR2s all running instances mid-taskrevision 1 · captured 2026-10-04 12:03 UTC via poll

Summary

Every theme change (omarchy-theme-set, including via Aether's apply) runs omarchy-restart-opencode, which killall -SIGUSR2 opencodes all running opencode instances. Opencode treats the signal as a reload and aborts every in-flight tool call — for an agent-first distro whose own manual warns "agents run unattended… be ready for them to actually do things", a cosmetic theme switch silently killing agent work is a nasty edge.

Repro

  1. Give an opencode agent a task that runs a long tool call (e.g. sleep 60)
  2. From any terminal: switch theme (omarchy-theme-set <any> — or run aether --generate <img>, which drives omarchy-theme-set)
  3. The agent's tool call dies with "Tool execution aborted" — no user input required

Observed 6/6 times on Omarchy 4.0.1-1 (initially misattributed to the invoked CLI — the signal goes to opencode, so the abort happens no matter how detached the theme-set invocation is: verified foreground, piped, setsid-detached, and via systemd transient units).

Expected

In-flight agent work survives a theme change: defer the SIGUSR2 until the session is idle, skip instances with running tools, or make opencode's reload non-destructive. Alternatively document that agents shouldn't be trusted during theme switches.

Happy to test on the Deck (opencode + agent workload running there now).

View raw text
## Summary

Every theme change (`omarchy-theme-set`, including via Aether's apply) runs `omarchy-restart-opencode`, which `killall -SIGUSR2 opencode`s **all** running opencode instances. Opencode treats the signal as a reload and **aborts every in-flight tool call** — for an agent-first distro whose own manual warns "agents run unattended… be ready for them to actually do things", a cosmetic theme switch silently killing agent work is a nasty edge.

## Repro

1. Give an opencode agent a task that runs a long tool call (e.g. `sleep 60`)
2. From any terminal: switch theme (`omarchy-theme-set <any>` — or run `aether --generate <img>`, which drives `omarchy-theme-set`)
3. The agent's tool call dies with "Tool execution aborted" — no user input required

Observed 6/6 times on Omarchy 4.0.1-1 (initially misattributed to the invoked CLI — the signal goes to *opencode*, so the abort happens no matter how detached the theme-set invocation is: verified foreground, piped, `setsid`-detached, and via systemd transient units).

## Expected

In-flight agent work survives a theme change: defer the SIGUSR2 until the session is idle, skip instances with running tools, or make opencode's reload non-destructive. Alternatively document that agents shouldn't be trusted during theme switches.

Happy to test on the Deck (opencode + agent workload running there now).

Validation

Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.

Linked

Not linked to any known issue, other report or change yet.

Decision

Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.

No decision has been recorded yet.