Events, metrics and alerts
Four surfaces tell you what the platform is doing, and they answer different questions.
| Group | Question it answers |
|---|---|
events | What has happened recently, as a live feed? |
metrics | What are the numbers, over time? |
alerts | What condition should tell me, and did it? |
audit | Who did what, and when? |
notifications and webhooks are the delivery side. Notifications go to people in the web app, and webhooks go to your own systems.
Events
The event feed is durable and ordered. Every job, transfer and command completion, every device going online or offline, every alert firing lands in it with a position, and you resume from a position rather than from a timestamp. That is what makes it safe for a script to disconnect and come back without missing anything.
events tail
clika-cli events tail [flags]
Follows the feed, printing one JSON line per event. It prints everything retained after --cursor first, then blocks on the server's long poll and prints each new event the moment it lands. There is no polling interval to tune, because it is not polling.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--cursor | int | 0 | Start after this feed position. 0 means the start of the retention window. |
--types | string | all | Comma-separated event names to include, for example transfer_completed,job_completed. |
--once | bool | false | Print what the feed already holds after --cursor and exit, instead of following. |
The id on the last line you printed is the cursor to resume from.
$ clika-cli events tail --types job_completed
{"id":1041,"type":"job_completed","job":"nightly-llm-sweep-jetson-01","status":"completed","at":"2026-09-03T09:12:44Z"}
{"id":1042,"type":"job_completed","job":"nightly-llm-sweep-orin-02","status":"completed","at":"2026-09-03T09:13:02Z"}
clika-cli events tail --cursor 1041 --once
events list
clika-cli events list [flags]
Reads one page and exits. Use it when you want a page rather than a stream.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--cursor | int | 0 | Return events after this position. |
--limit | int | server default 100 | Events per page, up to 500. |
--types | string | all | Comma-separated event names. |
--wait_s | int | 0 | When nothing is past --cursor yet, hold the read open this many seconds waiting for the next event. |
--stream | bool | false | Stream the raw live server-sent-events push instead of reading the feed. There is no replay, no filtering, and some ingress proxies block it. Prefer events tail. |
Resume from the response's next_cursor, or from a row's id.
clika-cli events list --types job_completed --limit 20
clika-cli events list --cursor 1041 --wait_s 30
Metrics
clika-cli metrics data <name> [flags]
clika-cli metrics log --body '<json>'
metrics data queries the stored data points for one metric by name.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--start | string | none | Range start, RFC 3339. |
--end | string | none | Range end, RFC 3339. |
--limit | string | 1000 | Maximum points to return. |
--offset | string | 0 | Offset, for paging through a long range. |
clika-cli metrics data tokens_per_second --start 2026-09-01T00:00:00Z --end 2026-09-03T00:00:00Z
metrics log writes data points in, which is how an external system feeds numbers to the platform that no job produced.
Alerts
clika-cli alerts rules
clika-cli alerts rules-id <id>
clika-cli alerts rules-create --body '<json>'
clika-cli alerts rules-update-id <id> --body '<json>'
clika-cli alerts rules-delete-id <id>
clika-cli alerts history
An alert rule is a condition over the platform's state or metrics. alerts history is what fired and when, which is the first thing to read when someone asks whether an alert actually went off.
Notifications
Notifications are the in-app inbox for a person.
| Command | What it does |
|---|---|
notifications list | Your notifications. |
notifications mark-read <id> | Mark one read. |
notifications mark-all-read | Mark them all read. |
notifications delete-delete-id <id> | Delete one. |
notifications delete-delete | Clear them all. |
Webhooks
Webhooks are the outbound half. The platform posts to a URL you own when something happens.
| Command | What it does |
|---|---|
webhooks list | Configured webhooks. |
webhooks get <id> | One webhook. |
webhooks create --body '<json>' | Add one. |
webhooks update <id> --body '<json>' | Change one. |
webhooks test <id> | Send a test delivery, so you can confirm the endpoint before relying on it. |
webhooks delete <id> | Remove one. |
Prefer a webhook when another system should react. Prefer events tail when a script of yours should react and you would rather not run a listening endpoint.
Audit
clika-cli audit list
clika-cli audit get <target_type> <target_id>
audit list is the activity log across the organization. audit get narrows it to one resource, for example every change ever made to one device, which is the query you want during an investigation.
The licensing audit trail is separate, and lives at v1 licensing-audit-log. See licensing.
Deployment health
Three unauthenticated-style probes, exposed as commands like everything else:
| Command | What it reports |
|---|---|
health list | The overall health check, dependencies included. |
livez list | Liveness: the process is up. |
ready list | Readiness: the process is up and able to serve. |
They are most useful when you are debugging a deployment rather than using one. A ready that fails while livez passes usually means a dependency, such as the database, is not available yet.
Full command reference
Every command below is generated from the deployment's own API description, so
one subcommand is exactly one platform operation. Each entry names the method,
the endpoint and the MCP tool name, so the same operation is
identifiable whichever surface you drive it from. Path parameters are positional
arguments, query parameters are flags, and a request body is --body or
--body-file. The hand-written commands, the ones that stream, propagate an
exit code, or hand your terminal to ssh, carry no operation line.
The prose above covers the commands most people reach for. This section is the complete surface, for when you need the flag you have not used before.
clika-cli events
events has 2 subcommands.
clika-cli events list
Reads one page of the durable org event feed (GET /api/events?cursor=) and exits: job/transfer/command completions, device online/offline edges, alert triggers and more. Resume from a response's next_cursor (or a row's ID) with --cursor; --wait_s holds an empty read open until the next event lands. Use 'events tail' to follow the feed, or --stream for the raw live SSE push (no replay, unfiltered).
clika-cli events list [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--cursor | int | none | return events after this feed position (0 = from the start of the retention window) |
--limit | int | none | maximum events per page (server default 100, maximum 500) |
--raw | bool | false | print raw response without pretty-printing |
--stream | bool | false | stream the live SSE push instead of reading the feed (no replay; blocked by some ingresses, prefer 'events tail') |
--types | string | none | comma-separated event names to include (e.g. transfer_completed,job_completed) |
--wait_s | int | none | when nothing is past --cursor yet, hold the read open up to this many seconds for the next event |
Endpoint: GET /api/events. MCP tool name: get_events.
clika-cli events tail
Streams the durable org event feed (GET /api/events?cursor=) as one JSON line per event: job/transfer/command completions, device online/offline edges, alert triggers and more. Prints everything retained after --cursor (default 0 = the whole retention window), then blocks on the server's wait_s long-poll and prints each new event the moment it lands, no tick-polling. The last line's "id" is the cursor to resume from.
clika-cli events tail [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--cursor | int | none | start after this feed position (0 = from the start of the retention window) |
--once | bool | false | print what the feed holds after --cursor and exit instead of following |
--types | string | none | comma-separated event names to include (e.g. transfer_completed,job_completed) |
clika-cli metrics
metrics has 2 subcommands.
clika-cli metrics data
Query metric data points
clika-cli metrics data <name> [flags]
Positional arguments: required <name>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--end | string | none | Range end (RFC3339) |
--limit | string | none | Max points to return (default: 1000) |
--offset | string | none | Offset for pagination |
--raw | bool | false | print raw response without pretty-printing |
--start | string | none | Range start (RFC3339) |
Endpoint: GET /api/metrics/{name}/data. MCP tool name: get_metrics_name_data.
clika-cli metrics log
Log metric data points
clika-cli metrics log [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--body | string | none | request body (inline JSON) |
--body-file | string | none | request body (path to a JSON file) |
--raw | bool | false | print raw response without pretty-printing |
Endpoint: POST /api/metrics/log. MCP tool name: post_metrics_log.
clika-cli alerts
alerts has 6 subcommands.
clika-cli alerts history
List alert history
clika-cli alerts history [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--page | string | none | Page number (default: 1) |
--page_size | string | none | Items per page (default: 50, max: 500) |
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/alerts/history. MCP tool name: get_alerts_history.
clika-cli alerts rules
List alert rules
clika-cli alerts rules [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/alerts/rules. MCP tool name: get_alerts_rules.
clika-cli alerts rules-create
Create alert rule
clika-cli alerts rules-create [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--body | string | none | request body (inline JSON) |
--body-file | string | none | request body (path to a JSON file) |
--raw | bool | false | print raw response without pretty-printing |
Endpoint: POST /api/alerts/rules. MCP tool name: post_alerts_rules.
clika-cli alerts rules-delete-id
Delete alert rule
clika-cli alerts rules-delete-id <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: DELETE /api/alerts/rules/{id}. MCP tool name: delete_alerts_rules_id.
clika-cli alerts rules-id
Get alert rule
clika-cli alerts rules-id <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/alerts/rules/{id}. MCP tool name: get_alerts_rules_id.
clika-cli alerts rules-update-id
Update alert rule
clika-cli alerts rules-update-id <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--body | string | none | request body (inline JSON) |
--body-file | string | none | request body (path to a JSON file) |
--raw | bool | false | print raw response without pretty-printing |
Endpoint: PUT /api/alerts/rules/{id}. MCP tool name: put_alerts_rules_id.
clika-cli notifications
notifications has 5 subcommands.
clika-cli notifications delete-delete
Clear all notifications
clika-cli notifications delete-delete [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: DELETE /api/notifications. MCP tool name: delete_notifications.
clika-cli notifications delete-delete-id
Delete notification
clika-cli notifications delete-delete-id <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: DELETE /api/notifications/{id}. MCP tool name: delete_notifications_id.
clika-cli notifications list
List notifications
clika-cli notifications list [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--limit | string | 50, max 200 | Page size |
--offset | string | 0 | Page offset |
--raw | bool | false | print raw response without pretty-printing |
--unread | string | none | When true, return only unread notifications |
Endpoint: GET /api/notifications. MCP tool name: get_notifications.
clika-cli notifications mark-all-read
Mark all notifications as read
clika-cli notifications mark-all-read [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: POST /api/notifications/mark-all-read. MCP tool name: post_notifications_mark_all_read.
clika-cli notifications mark-read
Mark notification as read
clika-cli notifications mark-read <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: POST /api/notifications/{id}/mark-read. MCP tool name: post_notifications_id_mark_read.
clika-cli audit
audit has 2 subcommands.
clika-cli audit get
Resource audit history
clika-cli audit get <target_type> <target_id> [flags]
Positional arguments: required <target_type>, <target_id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--limit | string | 100, max 500 | Page size |
--offset | string | 0 | Page offset |
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/audit/{target_type}/{target_id}. MCP tool name: get_audit_target_type_target_id.
clika-cli audit list
List audit / activity events
clika-cli audit list [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--action | string | none | Filter by action name |
--actor_id | string | none | Filter by actor id |
--category | string | none | mutation|authz|access|utilization |
--limit | string | 100, max 500 | Page size |
--offset | string | 0 | Page offset |
--raw | bool | false | print raw response without pretty-printing |
--since | string | none | Inclusive lower bound (RFC3339) |
--target_id | string | none | Filter by target id |
--target_type | string | none | Filter by target type |
--until | string | none | Inclusive upper bound (RFC3339) |
Endpoint: GET /api/audit. MCP tool name: get_audit.
clika-cli webhooks
webhooks has 6 subcommands.
clika-cli webhooks create
Create webhook
clika-cli webhooks create [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--body | string | none | request body (inline JSON) |
--body-file | string | none | request body (path to a JSON file) |
--raw | bool | false | print raw response without pretty-printing |
Endpoint: POST /api/webhooks. MCP tool name: post_webhooks.
clika-cli webhooks delete
Delete webhook
clika-cli webhooks delete <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: DELETE /api/webhooks/{id}. MCP tool name: delete_webhooks_id.
clika-cli webhooks get
Get webhook
clika-cli webhooks get <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/webhooks/{id}. MCP tool name: get_webhooks_id.
clika-cli webhooks list
List webhooks
clika-cli webhooks list [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/webhooks. MCP tool name: get_webhooks.
clika-cli webhooks test
Test webhook
clika-cli webhooks test <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: POST /api/webhooks/{id}/test. MCP tool name: post_webhooks_id_test.
clika-cli webhooks update
Update webhook
clika-cli webhooks update <id> [flags]
Positional arguments: required <id>.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--body | string | none | request body (inline JSON) |
--body-file | string | none | request body (path to a JSON file) |
--raw | bool | false | print raw response without pretty-printing |
Endpoint: PUT /api/webhooks/{id}. MCP tool name: put_webhooks_id.
clika-cli health
health has 1 subcommands.
clika-cli health list
Health check
clika-cli health list [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/health. MCP tool name: get_health.
clika-cli livez
livez has 1 subcommands.
clika-cli livez list
Liveness check
clika-cli livez list [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/livez. MCP tool name: get_livez.
clika-cli ready
ready has 1 subcommands.
clika-cli ready list
Readiness check
clika-cli ready list [flags]
| Flag | Type | Default | Meaning |
|---|---|---|---|
--raw | bool | false | print raw response without pretty-printing |
Endpoint: GET /api/ready. MCP tool name: get_ready.
Related
- Jobs and benchmarks: the work these events and metrics describe.
- Devices: device health, which is per-device rather than deployment-wide.
- Organizations, projects and access: who is allowed to read the audit log.