cosmo CLI reference.
Every command and flag for the cosmo developer CLI, verified against packages/cli.
cosmo synapse
Boot the local dev synapse - a zero-dependency TCP + NDJSON broker - and stream every Signal that crosses it. The same subject-matching semantics as MemorySynapse and NATS, so code written against the dev server runs unchanged in production.
$ cosmo synapse --help Manage Cosmonapse synapse servers. Subcommands start Boot a synapse (memory / nats / kafka) and stream Signals. view List namespaces, or stream Signals for one namespace. stop Gracefully stop a running namespace. # ── cosmo synapse start ───────────────────────────────────── $ cosmo synapse start <transport> [options] Arguments transport memory | nats | kafka Options --namespace, -n <ns> Namespace. Default: dev --host <addr> Bind address (memory). Default: 127.0.0.1 --port <n> TCP port (memory). Default: 7070 --broker <url> Broker URL (nats/kafka). --quiet Don't stream Signals to stdout. Examples $ cosmo synapse start memory --namespace=quickstart URL: cosmo://127.0.0.1:7070 Namespace: quickstart Transport: TCP + NDJSON (single-host dev only) Connect a Dendrite with: await connect_synapse('cosmo://127.0.0.1:7070') Ctrl-C or cosmo synapse stop --url=cosmo://127.0.0.1:7070 --namespace=quickstart ──────────────────────────────────────────────── $ cosmo synapse start nats --namespace=prod --broker=nats://localhost:4222 # ── cosmo synapse view / stop ──────────────────────────────── $ cosmo synapse view --url=cosmo://127.0.0.1:7070 # list all namespaces $ cosmo synapse view --url=cosmo://127.0.0.1:7070 -n dev # stream live signals $ cosmo synapse stop --url=cosmo://127.0.0.1:7070 -n dev # graceful stop
Run state (which namespaces are live, on which ports) is kept under ~/.cosmonapse by default - override the location with the COSMONAPSE_STATE_DIR environment variable. cosmo synapse stop reads that state to find the running server.
Have a feature in mind?
The protocol, SDKs, and CLI are still pre-1.0. If something here is missing, ambiguous, or wrong - open an issue and propose a change. Every breaking change is debated in DECISIONS.md first.