{"repo":"slastra/tabctl","free":true,"listed":false,"github":"https://github.com/slastra/tabctl","clone":"git clone https://github.com/slastra/tabctl.git","description":"Control Firefox, Chrome, and friends from the command line. List, switch, close, and open tabs across browsers via D-Bus.","language":"Go","stars":10,"topics":["brave","browser","browser-extension","chrome","cli","command-line-tool","dbus","firefox","golang","hyprland"],"license":"MIT","category":"cli-tools","readme_excerpt":"TabCtl Control browser tabs from the command line using D-Bus IPC. Features - D-Bus Architecture - Fast, reliable inter-process communication - Multi-Browser Support - Firefox, Zen, Chrome, Brave work simultaneously - Core Commands - List, close, activate, and open tabs across browsers - Desktop Switching - Automatic window focus across virtual desktops - Rofi Integration - Quick tab switching with rofi scripts - Multiple Output Formats - TSV, JSON, simple - Clean Architecture - Minimal dependencies, production ready Installation Arch Linux (AUR) After installation, set up native messaging: From Source 1. Build the binaries: Both binaries land in build/ . Use make build rather than a bare go build : it stamps the version, which tabctl status reports, and it keeps every build in one place. The native messaging manifest records an absolute path to the mediator, so binaries in two locations means the browser can keep launching an old one after you rebuild. 2. Install native messaging host: 3. Install the browser extension: - Firefox / Zen: - Chrome / Chromium / Brave / Helium: 4. Restart browser to activate native messaging Usage Basic Commands Tab ID Format Tab IDs are prefixed with the lowercased browser name so multiple browsers (e.g. Brave + Helium) stay distinguishable: - . . - Examples: firefox.1.2 , helium.1874583011.1874583012 , brave.999.42 , chrome.123.45 Tab IDs are ephemeral. list prints them and activate or close consume them. Do not store them. Multiple Browser Pro","default_branch":null,"files":null,"tree":[],"storefront":"/r/slastra","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/slastra/tabctl/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}