CLI Reference
All funnel client commands and flags
funnel http
create an http tunnel to a local service.
funnel http <address><address> is local address or port to forward to (e.g. "3000" or "localhost:3000").
| Flag | Description |
|---|---|
-s, --server | tunnel server url (overrides config) |
-i, --id | tunnel id (subdomain), generated if omitted |
-t, --token | authentication token (overrides config) |
--quic-port | quic port on the server (overrides discovery) |
--insecure | skip tls certificate verification (for development) |
--team | associate tunnel with a team |
funnel http 3000 # localhost:3000
funnel http 3000 --id my-app # custom subdomain
funnel http 127.0.0.1:8080 --server https://tunnel.example.com # explicit server
funnel http 3000 --team backend # associate with teamfunnel tcp
create a tcp tunnel to a local service (databases, ssh, game servers).
funnel tcp <port><port> is local port to forward to.
| Flag | Description | Default |
|---|---|---|
-s, --server | tunnel server url (overrides config) | |
-i, --id | tunnel id (subdomain), generated if omitted | |
-t, --token | authentication token (overrides config) | |
--quic-port | quic port on the server (overrides discovery) | |
--insecure | skip tls certificate verification (for development) | |
--team | associate tunnel with a team | |
--remote-port | request a specific port on the server (0 = auto-assign) | 0 |
funnel tcp 5432 # expose localhost:5432
funnel tcp 5432 --id my-db # custom tunnel id
funnel tcp 22 --id my-ssh --remote-port 2222 # request specific server port
funnel tcp 5432 --team backend # associate with teamfunnel tls
create a tls passthrough tunnel (traffic forwarded without termination).
funnel tls <port><port> is local port to forward to (TLS traffic is passed through without termination).
| Flag | Description | Default |
|---|---|---|
-s, --server | tunnel server url (overrides config) | |
-i, --id | tunnel id (subdomain), generated if omitted | |
-t, --token | authentication token (overrides config) | |
--quic-port | quic port on the server (overrides discovery) | |
--insecure | skip tls certificate verification (for development) | |
--team | associate tunnel with a team | |
--remote-port | request a specific port on the server (0 = auto-assign) | 0 |
funnel tls 8443 # expose localhost:8443 with tls passthrough
funnel tls 8443 --id secure-app # custom tunnel id
funnel tls 443 --remote-port 8443 # request specific server portfunnel login
log in via oauth.
funnel login| Flag | Description | Default |
|---|---|---|
--provider | oauth provider name | github |
funnel login # uses github by default
funnel login --provider gitlab # use a different providerfunnel logout
log out (clear token for current context).
funnel logoutfunnel whoami
show the currently authenticated user.
funnel whoamifunnel status
show active tunnels on the server.
funnel statusfunnel keys
manage api keys.
funnel keys list
funnel keys create deploy-key # full access
funnel keys create ci-runner --scopes tunnels # tunnels only
funnel keys revoke <id>funnel keys list
list api keys.
funnel keys listfunnel keys create
create a new api key.
funnel keys create <name><name> is name for the new key.
| Flag | Description |
|---|---|
--scopes | comma separated scopes (defaults to management,tunnels) |
funnel keys revoke
revoke an api key.
funnel keys revoke <id><id> is key id to revoke.
funnel sessions
view tunnel sessions.
funnel sessions| Flag | Description | Default |
|---|---|---|
--all | show all sessions (admin only) | |
--limit | maximum number of sessions to show | 50 |
funnel sessions
funnel sessions --all # admin: show all users' sessions
funnel sessions --limit 100funnel users
manage users (admin only).
funnel users list
funnel users set-role <id> admin # promote to admin
funnel users deactivate <id> # revoke access
funnel users reactivate <id>funnel users list
list all users.
funnel users list| Flag | Description | Default |
|---|---|---|
--limit | maximum number of users to show | 50 |
funnel users set-role
set a user's role.
funnel users set-role <id> <role><id> is user id.
<role> is new role (admin or member).
funnel users deactivate
deactivate a user.
funnel users deactivate <id><id> is user id.
funnel users reactivate
reactivate a user.
funnel users reactivate <id><id> is user id.
funnel teams
manage teams.
funnel teams create backend
funnel teams members <id>
funnel teams add-member <team_id> <user_id>
funnel teams set-role <team_id> <user_id> owner # promote to owner
funnel teams remove-member <team_id> <user_id>funnel teams list
list teams.
funnel teams listfunnel teams create
create a new team.
funnel teams create <name><name> is team name.
funnel teams delete
delete a team.
funnel teams delete <id><id> is team id.
funnel teams members
list team members.
funnel teams members <id><id> is team id.
funnel teams add-member
add a member to a team.
funnel teams add-member <team_id> <user_id><team_id> is team id.
<user_id> is user id to add.
funnel teams remove-member
remove a member from a team.
funnel teams remove-member <team_id> <user_id><team_id> is team id.
<user_id> is user id to remove.
funnel teams set-role
set a member's role in a team.
funnel teams set-role <team_id> <user_id> <role><team_id> is team id.
<user_id> is user id.
<role> is role (owner or member).
funnel context
manage server contexts.
funnel context create staging --server https://tunnel.example.com
funnel context use staging # switch active context
funnel context listfunnel context list
list all contexts.
funnel context listfunnel context use
switch to a different context.
funnel context use <name><name> is context name to switch to.
funnel context create
create a new context.
funnel context create <name><name> is context name.
| Flag | Description |
|---|---|
--server | server url |
funnel context delete
delete a context.
funnel context delete <name><name> is context name to delete.
funnel config
view configuration.
funnel config show
show current configuration.
funnel config showfunnel config path
print config file path.
funnel config pathfunnel completion
generate shell completion script.
funnel completion <shell><shell> is shell to generate completions for.
funnel completion bash > /etc/bash_completion.d/funnel
funnel completion zsh > ~/.zfunc/_funnel
funnel completion fish > ~/.config/fish/completions/funnel.fishGlobal Flags
| Flag | Description |
|---|---|
-c, --context | context to use (overrides current_context in config) |
--json | output raw json envelope from the api |
--version | Print version and protocol info |
--help | Print help |