bspcq, q for query

A bspc analyzer (utility for bspwm)

This is a small program that prints a user friendly, visual representation, of
your current bsp tree.

The aim is to assist in using bspwm so new users have an easier time getting
into tiling window managers, and have some toys to play with.

It's essentially the same as

bspc query -M -m <monitor-name> | jq

Except there are fewer parameters, a less complex syntax to remember and an
intuitive visual.


python -m pipx install bspcq


# Prints the full tree, including output from all monitors.
# Provides a simpler view, perfect for finding window class names.
bspcq -s
# Grabs info on all nodes that belong to the specified domain.
bspcq -M/D/N
# Passes through a query to `bspc query` and prints our tree.
bspcq -m/d/n <monitor/desktop/node-identifier>




My goals currently are to:

  • Align bspcq as closely as possible with bspc query. I would like for
    bspcq to behave almost identically to bspc query - it just adds a visual
  • Remain as lean as possible. A nice-to-have feature would be 0 reliance on
    external libraries, so I'd like to remove rich and implement a way to display
    the tree myself.

This was just an afternoon project that's turning into a week long project since
it's quite a lot of fun!

GitHub - aidenlangley/bspcq at
A user friendly bspc analyzer. Contribute to aidenlangley/bspcq development by creating an account on GitHub.