smabar
Health Pass
- License — License: NOASSERTION
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 23 GitHub stars
Code Pass
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
Your app dock. Extendable with your own plugins. Linux, Windows, macOS (beta).
smabar
Your app dock. Extendable with your own plugins.
Linux · Windows · macOS (beta)
Download · Docs · Plugin Store · Changelog
Pin apps, folders, files and websites to one edge of the screen. Add plugins
for whatever you want to keep an eye on: clock, system, media, weather, crypto
and todos come built in, more are in the store, and a coding agent can write
you a new one over MCP. smabar runs beside your system taskbar; it shows no
window list and no tray.
Install
Packages, checksums and release notes: https://smabar.com/download/
| Platform | Package | Notes |
|---|---|---|
| Linux x86-64 | .deb (Debian, Ubuntu, Mint), .rpm (Fedora, openSUSE) |
sudo apt install ./smabar_<version>_amd64.deb or sudo dnf install ./smabar-<version>.x86_64.rpm. X11 and Wayland with layer-shell. |
| Windows x64 | installer, or the Microsoft Store | The installer carries no Authenticode certificate, so SmartScreen asks once. |
| macOS 13+ | .dmg for Apple Silicon and Intel — beta |
Drag smabar to Applications. The app is not notarized: allow the first start under System Settings › Privacy & Security. No click-through, no screenshots, no volume or media providers yet. |
Direct installations check for signed updates and install them only after you
confirm. Plugins need Python; smabar sets it up on first use.
Plugins
A plugin is a tile on the bar, a flyout for the details and a popup when
something happens. Everything about it lives in your home directory:~/.smabar/plugins/<id>/ holds the code, ~/.smabar/data/<id>/ its data,~/.smabar/logs/ its log. Edit a file and the plugin reloads.
Any language. A plugin is a process that speaks JSON-RPC 2.0 over stdin
and stdout, one message per line: it receives its settings, renders HTML and
hears about clicks. "runtime": "exec" starts whatever program you name, in
Go, Rust, Node or a shell script.
Python without setup. smabar ships uv and installs its own Python 3.14
under ~/.smabar/tools/, separate from anything on your system."runtime": "python" runs your script with uv run --script, so dependencies
are declared in the script header (PEP 723) and installed on first start. The
SDK in sdk/ (MIT) handles the protocol; a plugin is render(),log() and on_action(). The six bundled plugins in plugins/
(MIT) are the reference.
More plugins and themes are in the Plugin Store.
They live in public GitHub repositories; the catalog is signed, and the app
asks before it installs anything.
MCP: your agent builds and uses plugins
The bar runs an MCP server at http://127.0.0.1:7627/mcp, localhost only.
Connect Claude Code, Codex or any MCP client you run locally
(setup). It can do two things.
Build a plugin. Describe what you want to see:
Show the next departures of bus 412 from Marktplatz on the bar. Count the
minutes down and send a popup two minutes before.
The agent reads the built-in guide (plugin_guide), writes the files into~/.smabar/plugins/ (plugin_write_file) and the plugin runs without a
restart. Every write answers with the plugin's warnings and render status, so
the agent checks its own work.
Use a plugin. A running plugin can register commands with JSON Schemas;
the agent discovers them with plugin_commands and calls them withplugin_call. The bundled Todos plugin registers todos.list, todos.create,todos.update, todos.complete, todos.reopen, todos.delete andtodos.snooze. The tasks live in ~/.smabar/data/todos/ and never leave your
machine. One paragraph in your project's CLAUDE.md, and your agent plans
against the same list you see on the bar:
My tasks live in smabar's Todos plugin. Before planning, read them through the
smabar MCP tool `plugin_call` (plugin `todos`, command `todos.list`). Create
the next steps with `todos.create`, with a reminder where it helps, and
complete finished ones with `todos.complete`.
Make it yours
Top or bottom edge. Reserve space, float freely or auto-hide. A fisheye that
magnifies the tile under the pointer. Four themes built in; a theme is one
JSON file with colours, fonts and behaviour, so describing a look to your agent
is enough to get a new one.
Boring where it counts
- Every plugin is its own process. A crashing plugin never takes the bar with it.
- Plugins deliver HTML, no JavaScript. The bar sanitises the markup and provides the interactions itself.
- No cloud, no account. The MCP server listens on localhost only.
- Plugin processes run with your user rights, so read a plugin before you install it. The source is here: read every line before you trust it.
Build from source
Stable Rust (rust-toolchain.toml), Bun, uv and just. Linux additionally
needs the Tauri system libraries listed in .github/workflows/ci.yml.
just check # every gate: format, lint, tests
just dev # the app against the Vite dev server
just build # release bundles for this machine
Contributing
Bug reports and pull requests are welcome. See CONTRIBUTING.md.
License
PolyForm Shield 1.0.0. The plugin SDK in sdk/ and the bundled
plugins in plugins/ are additionally available under the MIT license.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found




