All commands support
--help for detailed usage. Run cerulion --help to see the full list.Quick Reference
| Category | Command | Description |
|---|---|---|
| workspace | workspace create <name> | Create a new workspace |
workspace init <location> | Initialize in existing directory | |
| node | node create <type> | Create a new node |
node modify <type> | Add inputs/outputs to a node | |
node build <type> | Compile and validate | |
node run <type> | Run single node (testing) | |
| graph | graph create <name> | Create a graph definition |
graph run <name> | Execute a graph | |
| topic | topic list | List all active topics |
topic info <topic> | Show topic details | |
topic echo <topic> | Print messages in real-time | |
topic hz <topic> | Measure publish rate | |
| tui | tui | Launch interactive terminal UI |
Workspace Commands
Workspaces are the top-level container for your Cerulion project. They hold nodes, graphs, and configuration.workspace create
workspace create
Create a new workspace with scaffolded structure.
| Argument | Description |
|---|---|
name | Name of the workspace to create |
- Example
- Output
workspace init
workspace init
Initialize a workspace in an existing directory.
| Argument | Description |
|---|---|
location | Path to initialize (use . for current directory) |
Node Commands
Nodes are the building blocks of Cerulion applications. Each node is a processing unit with typed inputs and outputs.node create
node create
Create a new node from a template.
| Argument | Description |
|---|---|
type | Node type name (becomes the node identifier) |
| Option | Description |
|---|---|
--period-ms <N> | Run periodically every N milliseconds |
--ext-trigger | Trigger from external event instead of timer |
- Periodic node
- Triggered node
node modify
node modify
Add inputs, outputs, or bindings to an existing node.
| Modification | Description |
|---|---|
-i <schema> [name] | Add an input port with the given schema |
-o <schema> <topic> | Add an output port publishing to topic |
--ext-bind | Bind to external trigger source |
- Add input
- Add output
- Bind trigger
Input and output schemas must be defined first using
cerulion schema create.node build
node build
Compile a node and validate its configuration.
| Argument | Description |
|---|---|
type | Node type to build |
Build validates schemas, checks port connections, and compiles the node code.
node run
node run
Run a single node directly (useful for testing).
| Argument | Description |
|---|---|
type | Node type to run |
Graph Commands
Graphs compose multiple nodes into a connected pipeline. Nodes communicate via topics.graph create
graph create
Create a new graph definition.
| Argument | Description |
|---|---|
name | Graph name |
| Option | Description |
|---|---|
-n <prefix> | Namespace prefix for all topics in this graph |
- Simple
- Namespaced
Namespacing allows running multiple instances of the same graph with isolated topics.
graph run
graph run
Execute a graph (runs all staged nodes).
| Argument | Description |
|---|---|
name | Graph name to run |
Topic Commands
Topics are named channels for pub/sub communication between nodes.topic list
topic list
List all active topics.Example output:
topic info
topic info
Show detailed information about a topic.
- Command
- Output
topic echo
topic echo
Print messages from a topic in real-time.
- Command
- Output
topic hz
topic hz
Measure the publish rate of a topic.
- Command
- Output
Interactive UI
cerulion tui
Launch the terminal user interface for visual system monitoring.
- Real-time node status monitoring
- Topic message inspection
- Graph visualization
- Performance metrics
- Keyboard-driven navigation
| Key | Action |
|---|---|
q | Quit |
Tab | Switch panels |
Enter | Select / Expand |
e | Echo selected topic |
? | Show help |
Global Options
These options work with any command:| Option | Description |
|---|---|
--help | Show help for command |
--version | Show Cerulion version |
--verbose | Enable verbose output |
--quiet | Suppress non-error output |
--config <path> | Use custom config file |