Omahub
← All plugins
P

One Thing

by Peter Arnold

One pinned sentence in the bar. Click it to edit. That is the whole app.

Security review

No obvious issues detected

Deterministic scan — not a security guarantee

None
Risk level
None
Analyzed commit
11fbeb3
Scanned
1 month ago

No potentially dangerous behavior detected in the analyzed commit.

Automated analysis only — not a security guarantee.

AI advisory review

No obvious issues detected

Language-model assessment · ~deepseek/deepseek-v4-flash-latest — advisory only

None
AI risk level
None
Recommendation
install
Model
~deepseek/deepseek-v4-flash-latest
Analyzed commit
11fbeb3
Reviewed
1 month ago

This plugin is a simple bar widget that reads and writes a single line of text to a state file. The code is straightforward, uses safe operations (mkdir, head, mktemp, mv), and does not perform any destructive or hidden actions. The deterministic scan found no issues, and manual review confirms no malicious behavior.

How this check works

This review combines the deterministic scan (the rule-based results above) with an independent look at the plugin's code by a language model. The model reads a trimmed sample of the repository's files, the manifest, and the README, then gives a plain-language risk level and a recommendation: install (no notable danger), review (look closer first), or avoid (clearly dangerous).

It runs on the same analyzed commit as the deterministic scan and is strictly advisory — it is not a security guarantee and never blocks a plugin by itself. A human moderator still reviews plugins before they are listed.

AI advisory only — automated analysis, not a security guarantee.

Install
$ omarchy plugin add https://github.com/parnoldx/omarchy-one-thing --enable
Productivity #bar

One Thing

One pinned sentence in the Omarchy bar. Click it to edit. That's the whole app.

Not a note, not a todo list — a 12-pixel goal that is simply there, all day.

One Thing in the Omarchy bar, set from the CLI

Interactions

Where Action Result
Bar left click open the editor (Enter pins · Esc reverts · empty clears)
Bar right click clear it
Bar hover full sentence in a tooltip when the bar elided it
Editor click away keeps what you typed

A vertical bar has no room for a sentence, so the widget collapses to a pin icon that opens the same editor and carries the text in its tooltip.

The file is the API

The sentence lives in one line of plain text. The contract is one line, first 4 KB:

$XDG_STATE_HOME/omarchy/one-thing        # ~/.local/state/omarchy/one-thing

The bar watches that file, so anything that can write a line can set the goal and the bar follows it live:

echo "Ship the PR" > ~/.local/state/omarchy/one-thing

The bundled CLI is the same idea with the quoting made optional:

one-thing                      # print the current one thing
one-thing Ship the PR          # pin a new one
one-thing --clear              # clear it
one-thing --edit               # open the editor on the focused screen

Put it on PATH with:

ln -sf ~/.config/omarchy/plugins/io.github.parnoldx.one-thing/bin/one-thing ~/.local/bin/one-thing

Install

omarchy plugin add https://github.com/parnoldx/omarchy-one-thing.git --enable --yes

Drag it anywhere along the bar afterwards; the bar remembers.

Keybinding (optional)

~/.config/hypr/bindings.lua:

o.bind("SUPER CTRL", "O", "one-thing --edit", "Edit your one thing")

Remove

omarchy plugin remove <id>          # or: omarchy plugin disable <id>
rm -f ~/.local/bin/one-thing        # if you symlinked the CLI
rm -f ~/.local/state/omarchy/one-thing

Nothing else is written anywhere: the plugin ships no service, no hook, no autostart. The only processes it spawns are mkdir -p for its state directory and a 4 KB head -c read of that file — the widget never loads more than the first 4 KB, and never rewrites the file on its own.

Settings

Per-widget keys in the widget's bar.layout entry in ~/.config/omarchy/shell.json:

Key Default What it does
placeholder "One thing" dimmed text shown while nothing is pinned
maxWidth 320 longer sentences elide instead of shoving the bar around
hideWhenEmpty false take up no bar space at all while empty
{ "id": "io.github.parnoldx.one-thing", "maxWidth": 420, "placeholder": "…" }