RBite CLI
What is RBite CLI?
Rbite CLI is the CLI app for the RequestBite service.
It's currently in active development but already allows you to set up ephemeral tunnels that can be used to expose HTTP-based services running on localhost to the public Internet (read more here) and to manage request "views" which allows you to inspect webhooks and incoming HTTP calls - right in the terminal.
Installation
Install the latest release on MacOS or Linux like so:
curl -fsSL https://raw.githubusercontent.com/requestbite/rbite/main/install.sh | bash
The binary will be installed to ~/.local/bin by default.
The installed binary automatically sets up parameter autocompletion for Bash, Zsh and fish. It also installs a comprehensive man page which you can reach by running:
man rbite
Manual Download
Download pre-built binaries from GitHub Releases.
Supported Platforms:
| OS | Architecture | Binary Name |
|---|---|---|
| macOS | Intel (x86-64) | rbite-*-darwin-amd64.tar.gz |
| macOS | Apple Silicon (ARM64) | rbite-*-darwin-arm64.tar.gz |
| Linux | x86-64 | rbite-*-linux-amd64.tar.gz |
| Windows | x86-64 | rbite-*-windows-amd64.zip |
After downloading, extract the archive and move the binary to a directory in your PATH:
# macOS/Linux
tar -xzf rbite-*.tar.gz
mv rbite/rbite ~/.local/bin/
# Make sure ~/.local/bin is in your PATH
export PATH="$HOME/.local/bin:$PATH"
Usage
Ephemeral tunnels
Currently rbite supports setting up ephemeral tunnels. Those are time-limited tunnels on a random URL that are restricted to 1 GB of traffic. These tunnels are completely free and do not require any RequestBite account to use.
The following type of data can be transferred through a tunnel:
- HTTP requests
- SSE streams
- WebSocket streams
Create ephemeral tunnel
Create ephemeral tunnel (in this case exposing http://localhost:8080):
rbite -e 8080
This results in output like so:
______
[______] RequestBite Tunnel ⚡️
__| |_________________________
Ephemeral tunnel created. Expires at 16:20:17 (in 60 minutes).
> Internet endpoint: https://958b846f.et.rbite.dev
> Local service: http://localhost:8080
Press Ctrl+C to stop
2026/04/02 15:20:17 Connected to tunnel server, waiting for connections...
You can now click the link after Internet endpoint above to access the local service.
Show URL as QR code
If you want to open the tunnel URL e.g. on your phone, you can easily show a QR code that you can snap a photo of by running:
rbite -e 8080 --show-qr
Resume session
If you have a non-expired session, you can resume the last one like so:
rbite --resume
Session details
As soon as you have a running tunnel, it will display whatever requests are made to your local endpoint like so (example below):
2026/04/02 16:02:55 Connected to tunnel server, waiting for connections...
2026/04/02 16:02:59 GET / 200 3ms
2026/04/02 16:02:59 GET /@vite/client 200 94ms
2026/04/02 16:02:59 GET /src/main.jsx 200 52ms
2026/04/02 16:02:59 GET /node_modules/.vite/deps/preact_debug.js?v=206b7cd4 200 1ms
2026/04/02 16:02:59 GET /node_modules/.vite/deps/preact.js?v=206b7cd4 200 1ms
2026/04/02 16:02:59 GET /src/index.css 200 1ms
2026/04/02 16:02:59 GET /src/app.jsx 200 0s
Session summary
When your tunnel session expires or you close it manually by hitting Ctrl-C, you will get a summary of what was transferred like so:
--- Session summary ---
Requests served: 101
Data transferred: 2.85 MB
Login
Besides managing ephemeral tunnels, functionality through rbite requires logging in. If you don't already have a RequestBite account, you can sign up for one here - it's completely free of charge. To log in to your RequestBite account, run:
rbite --login
This will try to open your default browser and redirect you to the login screen. Once logged in, you will get a second screen where you need to authorize the RBite CLI app and grant it access to your account and the scopes (capabilities) it needs to work.
Once you hit "Authorize", you will get redirected to http://localhost:7332/ which you can close and you should now see something like the following in your terminal:
Login successful.
Hello {name}!
RBite now has access to your account: {Account Name}.
To switch account, use the --switch-account parameter.
Create request view
To create a request view to which you can intercept webhooks and HTTP request, run the following command:
rbite --views-add [optional-name]
If you don't provide a name for your view, it will be automatically called "Unnamed view #X". You will now see the following output:
View with name "Unnamed view #1" created.
- Send requests to it at https://api.requestbite.com/req/611b2ed4-8b1f-44ed-adc8-f6d83b933f63
- Open it in your browser by running "rbite --views-open 611b2ed4-8b1f-44ed-adc8-f6d83b933f63"
- Tail it in your terminal by running "rbite --views-tail 611b2ed4-8b1f-44ed-adc8-f6d83b933f63"
You can now send any HTTP request to the first URL listed above to inspect HTTP method, headers and body.
Open request view in browser
The easiest way to inspect any HTTP calls to your view is to open it your browser. To do so, run the following command:
rbite --views-open {view-ID}
The app will try to automatically open your browser, but will also print the actual request URL to the terminal so you can manually open it if necessary.
Tail request view in terminal
In case you want to inspect any HTTP request directly in your terminal, you can do so by running:
rbite --views-tail {view-ID}
This will set up an streaming connection to the RequestBite service, awaiting any new webhook. As soon as a webhook or HTTP call is received on the request URL, it will be presented like so:
Tailing view 611b2ed4-8b1f-44ed-adc8-f6d83b933f63 (press Ctrl+C to stop)...
--- 12:40:11 ---
Request Details
===============
Host: 172.18.0.2
Method: POST
Request Headers
===============
Accept-Encoding gzip
Content-Length 18
Content-Type application/json
User-Agent rb-slingshot/0.4.1 (https://requestbite.com/slingshot)
Body Payload
============
{
"foo": "bar"
}
List request views
To list your available request view, run:
rbite --views-list
It will then list your views like this:
1. Unnamed view #1
2. Unnamed view #2
Get details about view (1-2):
To get more details about a view, enter its number:
Name: Unnamed view #1
Capture URL: https://api.requestbite.com/req/5c6eb790-a84a-4be2-8c7c-e2b2454b2f73
Browser URL: https://hq.requestbite.com/views/5c6eb790-a84a-4be2-8c7c-e2b2454b2f73/capture
ID: 5c6eb790-a84a-4be2-8c7c-e2b2454b2f73
Development
TIP
While the full documentation for Rbite CLI lives here, you can find the full source-code of the app on GitHub. If you have any questions or issues, please file a GitHub issue.