Actors/Packages/CLI/Installation
@sigx/actors-cli · Preview

Installation#

Install it as a devDependency of the package that owns the host, and the commands appear.

Install#

Terminal
pnpm add -D @sigx/actors-cli

Requires @sigx/cli ≥ 0.9 and @sigx/terminal ≥ 0.11.

Flags#

FlagDefaultMeaning
--urlpoll a running host's ops endpoint; wins over a local module
--secret$SIGX_OPS_SECRETbearer token for that endpoint
--baseops mount base path
--appdiscoveredpath to the actor app module, for embedded mode
--timeout5000request timeout, ms
--jsonoffmachine-readable output
--interval1000dashboard refresh, ms

SIGX_OPS_SECRET is the preferred way to pass the token — a secret in --secret lands in your shell history and in ps.

The app-module convention#

Embedded mode reads named exports from your app module. app is required; the rest each unlock panels:

TypeScript
// src/actors.app.ts
export const app = defineActorApp({ actors, storage }).use(metrics()).use(health());
export const metrics = m;        // unlocks the latency and error panels
export const ops = o;            // unlocks the ops sections
export const cluster = c;        // unlocks the cluster tab

Without metrics, the dashboard still runs — it simply has less to show.

Health exit codes#

Terminal
sigx actors health --url http://host:3000
CodeMeans
0ready
1reachable but not ready
2unreachable, or a usage error

1 and 2 are deliberately distinct. A host answering "not ready" is alive and draining; a host answering nothing is a different incident. Collapsing them makes an alert unable to tell a rolling deploy from an outage.

The dashboard#

sigx actors (or top) opens the dashboard. It is width- and height-aware: tables window to the rows available and scroll to follow the cursor, columns shrink from the right so a host id or actor key is never truncated, and alert banners wrap.

KeyAction
j / kmove the cursor on the visible tab only
enteropen a per-host drill-down on the Hosts tab
escclose it

Detail is only requested while a drill-down is open, so the extra load is opt-in.

Every panel states its scope — cluster-wide or one host. That distinction is easy to lose and expensive to get wrong. The READY column shows FATAL distinctly from not-ready, per Health & readiness.

Next steps#