Your Hookie account, from the command line.
Everything the console and the MCP tools can do, as commands: manage projects, endpoints, destinations and workflows, search what arrived, and redeliver what failed. Built for scripts, CI jobs and AI agents as much as for people, with --json on every command and a real exit code when something goes wrong.
npm i -g https://app.hookie.ai/cli/hookie-cli.tgz
hookie login
hookie projects listAuthenticates with the same OAuth connection a coding agent uses — read-only until you widen it, revocable in one click.
The commands you will reach for
hookie endpoints create --name Checkout --slug checkout --dataset ordersSet up from a script
Projects, endpoints, destinations, rules and workflows: create and change them from a terminal, a CI job or an agent, with the same validation the console applies.
hookie deliveries search --status failed --since 24hFind what failed
Search what your account stored (events, raw submissions, deliveries) with a time window and paging. --json gives one document an agent or jq can act on.
hookie replay --since 1h --failedRedeliver a bad hour
One delivery, or every failure in a window: each event once per destination, never one still being retried, and it stops rather than piling on when a destination pushes back.
hookie send --endpoint checkout --data @event.jsonSend a test event
Posts to the endpoint's public URL like a real sender, so it takes the same path through ingest, routing and delivery. The answer says where it was routed.
Made for AI agents as well as people
- Every command goes through your account in the app. The CLI changes and reads what the console shows; nothing is received or run on the machine it is on.
- One connection, the same as an MCP client's. It starts read-only, you widen it in the console, and you can revoke it there in one click.
- Safe to automate. A destructive command asks first, and with no one to ask (a script, an agent) it refuses unless told
--yes. Exit codes say whether to fix the input, reconnect, or retry.
Everything the console does, scriptable
Forty commands, generated from the same catalog that defines the tools a connected AI agent gets over MCP, so the CLI, the console and your agent are the same API, and a new capability appears in all three at once.
- List and inspect
hookie endpoints list --json | jq '.webhooks[].base_slug'- Create from a script
hookie endpoints create --name Checkout --slug checkout --dataset orders- Search deliveries
hookie deliveries search --status failed --since 24h- Query a dataset
hookie datasets query --dataset orders- Open the console here
hookie open --project growth --tab deliveries
hookie <command> --help (or hookie help <command>) prints its usage, every flag with its type, and an example; for a generated command they come from the schema. An unknown flag is an error with a suggestion, never a request that silently did something else.
Your workspace, in a file you can review
hookie diff shows what would change; hookie apply makes it so, after asking. Endpoints, rules and destinations live in one file you can put in a repository and change in a pull request.
It is honest about the limits rather than pretending to be a reconciler: a difference the admin API cannot change in place is reported with the reason, and nothing the file omits is ever deleted unless you ask for it with --prune.
# hookie.yml — check it in, review it in a PR
project: default
endpoints:
- name: Checkout
slug: checkout
dataset: orders
criteria: [{"path": "type", "equals": "order.created"}]
destinations:
- name: Warehouse
url: https://warehouse.internal/hook
dataset_filter: ordersStart with one command
Free tier included. Sign in once, and the CLI manages the same account as the console.