Skip to main content

🔥 PyBro CLI

PyPI version PyPI - Python Version Generic badge Generic badge GitHub license GitHub stars GitHub forks GitHub followers Twitter Follow


A Python-based CLI tool for managing Google Chrome profiles in Linux. Born from the need to quickly switch between Chrome profiles using keyboard shortcuts, especially when paired with XFCE's tiling window management. Create custom aliases to launch Chrome with specific profiles and URLs, then bind them to keyboard shortcuts for lightning-fast workflow management.

🚀 Why PyBro?

I built this tool because I needed a way to:

  • Quickly switch between different Chrome profiles (work, personal, client projects)
  • Launch specific URLs in the correct profile
  • Bind these actions to keyboard shortcuts in XFCE
  • Integrate with tiling window management
  • Avoid clicking through Chrome's profile menu every time

💻 System Requirements

Tested Environment

  • OS: Debian 24.04
  • Desktop Environment: XFCE 4.18
  • Shell: Zsh
  • Browser: Google Chrome (Latest Stable)

Note: Currently only tested and confirmed working on Debian 24.04 with XFCE 4.18. While it may work on other Linux distributions or desktop environments, the package is specifically developed and tested for this environment.

Default Chrome Profile Path

~/.config/google-chrome/  # Linux (Debian/Ubuntu)

📦 Installation

# Install specific version from PyPI
pip install pybro-cli==0.1.7

# Or latest version
pip install pybro-cli

# Run the CLI
pybro

PyPI Package: https://pypi.org/project/pybro-cli/0.1.7/

🎯 Example Workflow

1. Create Work Profile Alias

# Run PyBro
pybro

# Select option 1
# Choose your work profile
# Enter: work-chrome
# Enter URL: https://workspace.google.com

2. Create Development Profile

pybro
# Create: dev-chrome
# Select Profile
# Enter URL: http://localhost:3000

3. Set Up XFCE Keyboard Shortcuts

  1. Open XFCE Settings → Keyboard → Application Shortcuts
  2. Click "Add"
  3. Example mappings:
    Command: work-chrome
    Shortcut: Super + 1
    
    Command: dev-chrome
    Shortcut: Super + 2
    

4. Tiling Management

  • Use XFCE's built-in tiling:
    • Tile left: Super + Left
    • Tile right: Super + Right
  • Example workflow:
    Super + 1  # Launch work profile
    Super + Left  # Tile to left
    Super + 2  # Launch dev profile
    Super + Right  # Tile to right
    

📝 Notes & Limitations

  • Shell Support: Built for Zsh, other shells may require syntax modifications
  • Chrome Profiles: Uses standard Chrome profile structure at ~/.config/google-chrome/
  • Desktop Environment: Optimized for XFCE 4.18 keyboard shortcuts and window management
  • URL Support: Handles complex URLs with query parameters and special characters
  • Shell Reload: May require manual source ~/.zshrc after creating new aliases

👥 Contact & Social

🧑‍💻 Chris Trauco - Senior Data Engineer @ OGx Consulting

🔗 Connect with me:

🌐 Project Link: https://github.com/iTrauco/pybro


Made with ❤️ by Chris Trauco

Metadata

Release files for pybro-cli 0.1.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pybro-cli 0.1.8
File Size Uploaded
pybro_cli-0.1.8.tar.gz 15.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pybro-cli 0.1.8
File Interpreter ABI Platform
pybro_cli-0.1.8-py3-none-any.whl Python 3 none any Details

Total release size: 31.6 kB

Release files / pybro_cli-0.1.8.tar.gz

Download URL pybro_cli-0.1.8.tar.gz
Size 15.0 kB
Tags Source
SHA-256 checksum
How to use checksums
6f61b7f1197d2991017d071ccde94bf0a2b624c34d2cf2e353951f9fbdafde7c
BLAKE2b-256 checksum
How to use checksums
531d01224da3775b1889efab8a1cc321ea383ee4f830698ac64bb18fab1692f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release files / pybro_cli-0.1.8-py3-none-any.whl

Download URL pybro_cli-0.1.8-py3-none-any.whl
Size 16.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
342f829082aef2a0b9d3a96f3f0feb2526d3a66a189ac81d780a10c28bcfc37b
BLAKE2b-256 checksum
How to use checksums
2474cfd40031bcc6a7029359aa78ad5677868df227587971bd80738af65b1711
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release history Release notifications | RSS feed

This release

0.1.8 This release

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page