icd10chy
icd10chy is a native Omarchy bar plugin for looking up billable ICD-10-CM
diagnosis codes. Type a description — "type 2 diabetes", "chest pain" — or a
code prefix such as E11 or S72, and the matching codes come back live.
Each result shows the code, its full description, the three-character category it sits under, and the ICD-10-CM chapter it belongs to. Pressing Enter copies the code to the clipboard and leaves the panel open, so a run of codes can be pulled one after another without reaching for the mouse.
Billable codes only
The plugin queries the U.S. National Library of Medicine's Clinical Tables
ICD-10-CM index, which contains only leaf codes — the ones that are valid on a
claim. Category headers such as E11 are never returned as results; searching
E11 returns the billable codes beneath it (E11.00, E11.21, E11.311, …).
Matching
| Mode | Behaviour |
|---|---|
| Auto (default) | A query that starts with a letter followed by a digit is matched against the code; anything else is matched against the description. |
| Description | Always match the description, so E11 finds codes whose text contains it. |
| Code | Always match the code as a prefix. |
The API's default search field is the code alone, so the plugin always sends
the field explicitly. A bare description search against the default field
returns zero matches with a 200 OK, which is why the mode is never left
implicit.
Keys
| Key | Action |
|---|---|
Enter |
Copy the selected code to the clipboard (runs the search first if the query changed) |
Ctrl+Enter |
Open the selected code in the configured browser |
↑ ↓ |
Move the selection |
Esc |
Close the panel |
Left-clicking a result copies it; right-clicking opens it. Right-clicking the bar icon opens the CMS ICD-10 code-set page.
Scripting
The widget answers on its own IPC target, so a lookup can come from a keybinding or a script:
omarchy-shell yamz8.icd10chy lookup "chest pain" # opens the panel and searches
omarchy-shell yamz8.icd10chy copy # copies the selected code, echoes it
omarchy-shell yamz8.icd10chy toggle # open / close
lookup returns ok, or empty query when handed nothing. copy returns the
code it put on the clipboard, or no selection.
Omarchy integration
The widget uses Omarchy's native Panel, BarIconButton, KeyboardPanel,
PanelHero, ButtonGroup, and theme tokens. Its tag mark is a monochrome
Nerd Font glyph, so it follows the active bar foreground color and font instead
of falling back to a colored emoji.
Runtime dependencies are curl, wl-copy, and network access to
clinicaltables.nlm.nih.gov. No API key is needed.
Privacy
The plugin writes no cache, history, or analytics, and clears the query and results whenever the panel closes. Queries are still sent to the NLM, so do not enter patient names, record numbers, or other personal identifiers.
This is a coding reference aid, not medical advice and not a substitute for a certified coder's judgment.
Settings
| Setting | Values | Default |
|---|---|---|
| Match the query against | auto, term, code |
auto |
| Results shown | 5–12 | 8 |
Install
omarchy plugin add https://github.com/yamz8/icd10chy.git --enable
omarchy plugin add clones the repository, validates the manifest, and installs
it as yamz8.icd10chy. Update later with omarchy plugin update yamz8.icd10chy.
Install from a local checkout
cp -R ./icd10chy ~/.config/omarchy/plugins/yamz8.icd10chy
omarchy plugin validate ~/.config/omarchy/plugins/yamz8.icd10chy
omarchy plugin enable yamz8.icd10chy
Plugin files hot reload. If the widget does not appear immediately, run:
omarchy-shell shell rescanPlugins
Remove
omarchy plugin disable yamz8.icd10chy
omarchy plugin remove yamz8.icd10chy
Removing the plugin takes the widget out of the bar and deletes
~/.config/omarchy/plugins/yamz8.icd10chy. The plugin writes nothing outside that
folder and never modifies your Omarchy configuration, so nothing is left behind.
Use
- Left-click the tag icon to open the code finder.
- Right-click it to open the CMS ICD-10 code-set page.
- Press
Enterto search, thenEnteragain to copy the selected code. - Press
Ctrl+Enterto open the code in the browser. - Press
Up/Downto choose a result,Escto close, orTabto switch bar panels.
The bar editor exposes every setting below. For example:
omarchy bar set yamz8.icd10chy defaultMode code
omarchy bar set yamz8.icd10chy resultLimit 10
Validate
omarchy plugin validate .
node --test tests/icd10.test.mjs
/usr/lib/qt6/bin/qmlformat Icd10chy.qml >/dev/null
Data source
The Clinical Table Search Service is provided by the U.S. National Library of Medicine. No API key is required. The table contains only billable leaf codes, so category headers are never returned as results.
License
MIT