Console CLI¶
The eve-iac console command group drives node consoles through eve-iac-agent. It requires agent authentication (login or token) and a pinned CA in CI — same as other CLI commands.
eve-iac console attach PROJECT NODE
eve-iac console watch PROJECT NODE [NODE...]
eve-iac console exec PROJECT NODE [CMD] [--session ID]
eve-iac console wait PROJECT NODE --expect REGEXP [--timeout-ms MS]
eve-iac console run PROJECT NODE FILE.yaml
eve-iac console history PROJECT NODE [--bytes N]
eve-iac console sessions PROJECT
eve-iac console close PROJECT --session ID
Global flags (--url, --ca-file, --json, …) apply as for other subcommands. See CLI reference.
Interactive attach¶
eve-iac console attach ./IaC/my-lab n_1
Behavior:
- Raw terminal mode (requires a TTY; non-TTY attach is refused).
- Creates an interact Hub session, attaches with that
session_id, streams via 101eve-telnet. - Ctrl+C (
0x03) is forwarded to the node — not used to detach.
Local beginning-of-line escapes¶
These are CLI-local controls. They are not sent to the node and are not part of the eve-telnet protocol. The VSIX does not use these sequences.
| Sequence | Action |
|---|---|
~. |
Disconnect — close session |
~d |
Detach — keep session; print session_id for sharing |
~? |
Local help |
~~ |
Send literal ~ |
Only recognized at the beginning of a line (SSH-like).
Watch¶
eve-iac console watch ./IaC/my-lab n_1 n_2
Important:
- Watch is CLI functionality only. There is no
watchConsolepublic API operation. - Implementation:
attachConsolewithmode=observe+streamConsole. - Multi-node watch is CLI-side multiplexing — lines are prefixed
[NODE]. - No multiplex wire protocol exists on the agent.
Use watch for passive observation. Use exec/wait/run for automation.
Exec, wait, run, history¶
See Exec, wait, run for one-shot vs session exec, wait/run timeouts, and history limits.
Quick examples:
# One-shot (does not join open VSIX session)
eve-iac console exec ./IaC/my-lab n_1 "show version"
# Session-backed
eve-iac console exec ./IaC/my-lab n_1 "show ip int brief" --session sess-abc
eve-iac console wait ./IaC/my-lab n_1 --expect 'Router#' --timeout-ms 120000
eve-iac console run ./IaC/my-lab n_1 day0.yaml
eve-iac console history ./IaC/my-lab n_1 --bytes 8192
Sessions¶
eve-iac console sessions ./IaC/my-lab
eve-iac console close ./IaC/my-lab --session sess-abc
JSON output: add --json on the parent command or subcommand where supported.
Pipeline recipes that combine deploy, start, and console bootstrap: Day-0 console.