Minimize your context switching by interacting with your terminal directly from your browser.
Features
Mix Web and Terminal Tabs
Side by Side Mode
Developer-Console Integration
Installation
Tweety is available on macOS, Linux.
# Homebrew (recommended)
brew install pomdtr/tap/tweety
or download a binary from releases.
If you want to compile it yourself, you can use the following command:
git clone https://github.com/pomdtr/tweety
cd tweety
make install
See the tweety completion
command to generate completion scripts for your shell.
Usage
tweety [-p <port>]
By default, tweety will start on port 9999, so you can access it at http://localhost:9999.
If you prefer to use a browser friendly URL, you can go to https://tweety.sh
instead.
The page will access Tweety on port 9999.
Note: Browser Friendly urls are not available on Safari, and requires to disable the Shield feature on Brave.
Browser Extension
Browser extensions for Chrome and Firefox are available in the extension
folder.
Chrome Extension
- Clone the repository
- Go to
chrome://extensions
- Enable
Developer mode
- Click on
Load unpacked
- Select the
extension/chrome
folder
By default, the extension will try to connect to localhost:9999
. You can
customize the origin in the extension options.
Firefox Extension
- Clone the repository
- Go to `about:debugging
- Click on
This Firefox
- Click on
Load Temporary Add-on...
- Select the
extension/firefox/manifest.json
file
If you have installed Tweety using Homebrew, you can use the following command:
brew services start tweety
To unload the service, use:
brew services stop tweety
Configuration
Use the $XDG_CONFIG_DIR/tweety/tweety.json
file to configure Tweety (defaults
to ~/.config/tweety/tweety.json
).
Alternatively, you can use the TWEETY_CONFIG
environment variable to specify a
custom path.
{
"$schema": "https://github.com/pomdtr/tweety/releases/latest/download/config.schema.json",
"theme": "Tomorrow",
"themeDark": "Tomorrow Night",
"xterm": {
"fontSize": 14,
},
"env": {
"EDITOR": "kak"
},
"defaultProfile": "default",
"profiles": {
"default": {
"command": "bash",
"args": ["--login"],
"env": {
"EDITOR": "vim"
}
},
"fish": {
"command": "fish",
"args": ["--login"],
"favicon": "https://fishshell.com/favicon.ico"
}
}
}
The xterm
section is passed directly to xterm.js, see the documentation.
Endpoints
/
- open the default profile
/?reload=true
- reload the page when the command exits
/?profile=<profile>
- open a specific profile
FAQ
Windows Version?
The package used to create the terminal UI does not support Windows.
But it's planned, so stay tuned! In the meantime, you can run tweety from WSL.