beam
Getting Started

Config file

Auto-load your token and server from ~/.config/arjia-beam/config so the CLI Just Works.

The CLI auto-loads ~/.config/arjia-beam/config (or $XDG_CONFIG_HOME/arjia-beam/config) so you never have to remember the token. Simple key=value lines, # comments allowed.

Format

# ~/.config/arjia-beam/config   (chmod 600 — it holds your token)
token=your-api-token
server=https://beam.example.com
# key=per-webhook-secret          # optional; callers must then send ?key=...
# forward=http://localhost:8080   # optional default forward target

Values may be optionally quoted; blank lines and # comments are ignored. The file is optional — a missing or unreadable file is not an error, the CLI just falls back to flags, env vars, and built-in defaults.

The file holds your API token. chmod 600 it so other users on the machine can't read it.

Precedence

For every setting:

explicit flag / env var  >  config file  >  built-in default

Because server and forward have built-in defaults, the CLI can only detect "the user didn't set this" as "still equal to the default" — so a config value fills in only when the flag is left at its default. token and key have no default, so the config value is used whenever the flag is empty.

Recognized keys

keymaps todefault
token--token— (required to listen)
server--server— (required)
key--key
forward--forwardhttp://localhost:3000

With that in place

beam webhook listen myhook            # zero flags → forward to localhost:3000
beam webhook listen myhook --tail     # zero flags → just watch requests
beam webhook send myhook -d '{}'      # send reuses server (and key) too

The same server and key are reused by beam webhook send, so re-firing a delivery needs only the hub name.

On this page