MCPcopy Index your code
hub / github.com/FelixKratz/SketchyBar

github.com/FelixKratz/SketchyBar @v2.24.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.24.0 ↗ · + Follow
747 symbols 2,320 edges 67 files 0 documented · 0% updated 34d agov2.24.0 · 2026-06-04★ 12,00151 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Install Documentation Setups Plugins

This bar project aims to create a highly flexible, customizable, fast and powerful status bar replacement for people that like playing with shell scripts.

More Setups

Features

  • Full configurability at any time
  • Dynamic animation system
  • Powerful scripting and event system
  • Optimized to be fast and efficient
  • Interactive mouse support
  • Support for displaying macOS menu bar apps (aliases)
  • Can draw arbitrary graphs
  • On-demand popup menus

The main design principle of this project is that all elements of the bar can be added, removed and freely changed at any point in time. Thus, the configuration of the bar is not static, rather it is possible to adapt the appearance of the bar completely dynamically with the help of a powerful event-driven scripting system at any point in time using the highly configurable basic building blocks SketchyBar offers.

Getting Started

Refer to the installation guide in the documentation to get the program set up. Once this is sorted you can start to become familiar with the syntax of sketchybar by going through the default sketchybarrc file and the default plugin scripts, which are located in ~/.config/sketchybar/ and look like this:

All commands and options are explained in detail in the relevant sections of the configuration documentation. You can try the commands directly from the commandline to see which affect they have and how they alter the bar. Once you have become familiar with the syntax you can look for a config to start from here or start from scratch and customize everything to your liking.

You might also enjoy looking at the Tips & Tricks section for some further tips on your journey. If you are searching for functional items you might want to check the plugins section if someone has already created what you are looking for.

Should you encounter things not working as you expect them to, please do not hesitate to open an issue, as this is either a bug or a documentation problem and relevant in any case.

Documentation

For the full documentation of all commands and properties please refer to the website.

If questions remain, feel free to consult the Q&A section.

Supporting

You can support this project is many ways: - By creating issues and pull-requests if you encounter problems - By sharing your plugins and setups - By starring the project on GitHub - If this project has value to you, consider quantifying it and donating to a charity of your choice. If you want to let me know about your donation, you can contact me via email. - If you want to support me directly, you can do so via ko-fi

Credits

This project was forked from spacebar and completely reimagined and rewritten.

The original idea is based on the status bar that was included in yabai before getting removed.

Related Projects

Some animation examples

https://user-images.githubusercontent.com/22680421/211198711-45318f04-e96f-4aa1-a0ba-c7f30f050902.mp4

Core symbols most depended-on inside this repo

Shape

Function 523
Class 221
Enum 3

Languages

C77%
C++23%

Modules by API surface

src/bar_manager.c80 symbols
src/misc/helpers.h53 symbols
src/bar_item.c53 symbols
src/event.c35 symbols
src/text.c30 symbols
src/background.c30 symbols
src/popup.c28 symbols
src/alias.c25 symbols
src/window.c24 symbols
src/image.c24 symbols
src/message.c23 symbols
src/display.c22 symbols

For agents

$ claude mcp add SketchyBar \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page