Proof Portal
Omarchy
ProbeLabs65 findings · 95 requirementsA 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.
Shipped agent skill still points at basecamp/omarchy, so agent duplicate searches silently return nothing
Reported by Sean-Mulcahy · filed Sep 4, 2026Closed upstream on 2026-09-06 by the merge of PR #10532 (closed by dhh). GitHub close reason: completed.
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
Shipped agent skill still points at basecamp/omarchy, so agent duplicate searches silently return nothing
What is wrong
The skill Omarchy ships at default/agents/skills/omarchy/ (symlinked by omarchy-provision-user into ~/.claude/skills/omarchy, ~/.agents/skills/omarchy, and the codex/pi equivalents) still names the old repository in contributing.md:
Omarchy lives at https://github.com/basecamp/omarchy.
...
gh issue create --repo basecamp/omarchy --title "..." --body "..."
gh repo fork basecamp/omarchy --cloneThe repository is now omacom/omarchy:
$ gh api repos/basecamp/omarchy --jq .full_name
omacom/omarchyWhy this is worse than a stale link
Most operations follow the rename, so the staleness is invisible in normal use. gh issue view, gh issue list and gh api repos/... all redirect correctly, and gh issue create --repo basecamp/omarchy works too. Search does not follow renames, and it fails in two different ways depending on how it is called:
$ gh api -X GET search/issues -f q='repo:basecamp/omarchy is:issue quickshell'
{"message":"Validation Failed","errors":[{"message":"The listed users and repositories cannot be
searched either because the resources do not exist or you do not have permission to view them.",
"resource":"Search","field":"q","code":"invalid"}],"status":"422"}
$ gh api -X GET search/issues -f q='repo:omacom/omarchy is:issue quickshell'
342The raw API at least errors. But the form an agent is most likely to reach for returns success with an empty list:
$ gh issue list --repo basecamp/omarchy --state all --search "quickshell" --limit 5
# exit 0, no output, no error
$ gh issue view 7390 --repo basecamp/omarchy --json title
{"title":"omarchy update aborts after the Quattro upgrade: ..."} # works fineSo an agent following contributing.md does its duplicate check before filing, is told there are zero matches, and reasonably concludes the bug is new. Direct issue access keeps working throughout, which removes the obvious signal that anything is misconfigured.
I hit exactly this while preparing #10117. Four duplicate searches came back empty and I only caught it because a control search on a term I knew existed came back empty too. There are in fact several related open issues, which that report now cross-references.
Given contributing.md explicitly instructs agents to file verified bugs, this makes the shipped skill a duplicate-issue generator on a repo that already carries ~2,900 open issues.
Suggested fix
Replace basecamp/omarchy with omacom/omarchy throughout default/agents/skills/omarchy/contributing.md (four occurrences: the intro URL, the discussions URL, the gh issue create example, and the gh repo fork example).
Worth considering as well:
- A line in
contributing.mdtelling the agent to sanity-check its duplicate search with a control query before trusting an empty result. That failure mode is not specific to this rename. - A grep in CI for the old owner name across
default/agents/skills/and the docs, so the next rename cannot leave this behind quietly.
Version
Omarchy 4.0.2-1. ~/.claude/skills/omarchy is a symlink to /usr/share/omarchy/default/agents/skills/omarchy and is byte-identical to the packaged copy, so this is not local drift.
View raw text
# Shipped agent skill still points at `basecamp/omarchy`, so agent duplicate searches silently return nothing
## What is wrong
The skill Omarchy ships at `default/agents/skills/omarchy/` (symlinked by `omarchy-provision-user` into `~/.claude/skills/omarchy`, `~/.agents/skills/omarchy`, and the codex/pi equivalents) still names the old repository in `contributing.md`:
```
Omarchy lives at https://github.com/basecamp/omarchy.
...
gh issue create --repo basecamp/omarchy --title "..." --body "..."
gh repo fork basecamp/omarchy --clone
```
The repository is now `omacom/omarchy`:
```console
$ gh api repos/basecamp/omarchy --jq .full_name
omacom/omarchy
```
## Why this is worse than a stale link
Most operations follow the rename, so the staleness is invisible in normal use. `gh issue view`, `gh issue list` and `gh api repos/...` all redirect correctly, and `gh issue create --repo basecamp/omarchy` works too. **Search does not follow renames**, and it fails in two different ways depending on how it is called:
```console
$ gh api -X GET search/issues -f q='repo:basecamp/omarchy is:issue quickshell'
{"message":"Validation Failed","errors":[{"message":"The listed users and repositories cannot be
searched either because the resources do not exist or you do not have permission to view them.",
"resource":"Search","field":"q","code":"invalid"}],"status":"422"}
$ gh api -X GET search/issues -f q='repo:omacom/omarchy is:issue quickshell'
342
```
The raw API at least errors. But the form an agent is most likely to reach for returns success with an empty list:
```console
$ gh issue list --repo basecamp/omarchy --state all --search "quickshell" --limit 5
# exit 0, no output, no error
$ gh issue view 7390 --repo basecamp/omarchy --json title
{"title":"omarchy update aborts after the Quattro upgrade: ..."} # works fine
```
So an agent following `contributing.md` does its duplicate check before filing, is told there are zero matches, and reasonably concludes the bug is new. Direct issue access keeps working throughout, which removes the obvious signal that anything is misconfigured.
I hit exactly this while preparing #10117. Four duplicate searches came back empty and I only caught it because a control search on a term I knew existed came back empty too. There are in fact several related open issues, which that report now cross-references.
Given `contributing.md` explicitly instructs agents to file verified bugs, this makes the shipped skill a duplicate-issue generator on a repo that already carries ~2,900 open issues.
## Suggested fix
Replace `basecamp/omarchy` with `omacom/omarchy` throughout `default/agents/skills/omarchy/contributing.md` (four occurrences: the intro URL, the discussions URL, the `gh issue create` example, and the `gh repo fork` example).
Worth considering as well:
- A line in `contributing.md` telling the agent to sanity-check its duplicate search with a control query before trusting an empty result. That failure mode is not specific to this rename.
- A grep in CI for the old owner name across `default/agents/skills/` and the docs, so the next rename cannot leave this behind quietly.
## Version
Omarchy 4.0.2-1. `~/.claude/skills/omarchy` is a symlink to `/usr/share/omarchy/default/agents/skills/omarchy` and is byte-identical to the packaged copy, so this is not local drift.
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.