rauto Overview
rauto is a Rust-based network automation toolkit that unifies connectivity, execution, orchestration, recording, and replay for network devices and Linux hosts through CLI, local web console, and agent APIs.
What problem does it solve?
Section titled “What problem does it solve?”Traditional network automation often runs into the same set of issues:
- command execution is fragmented and ad-hoc scripts are hard to reuse
- prompt and mode handling varies across vendors
- changes lack rollback-aware execution models
- multi-device operations lack consistent orchestration and audit history
- AI-driven control needs a more reliable execution and templating layer
rauto is designed to unify these low-level concerns into one execution engine that can be reused by network engineers, automation developers, and AI agents.
Core surfaces
Section titled “Core surfaces”The most direct interface, suitable for:
- ad-hoc command execution
- rendering and running saved templates
- interactive command flow execution
- transaction blocks, workflows, and orchestration
Web console
Section titled “Web console”rauto web starts a local self-managed console, suitable for:
- managing saved connections, templates, and command flow templates
- executing commands, transactions, and orchestration in the browser
- inspecting async tasks, recordings, replays, blacklists, and backups
Agent mode
Section titled “Agent mode”rauto agent connects a node to rauto-manager, turning it into a managed execution endpoint for centralized control.
- distributed execution across sites and regions
- centralized task dispatch and visibility from the manager side
- HTTP or gRPC communication with the manager
Key capabilities
Section titled “Key capabilities”- two-layer templating: command templates and device profiles
- built-in multi-vendor profiles with support for custom profiles
- reusable saved connections with import and grouping support
- global command blacklist for dangerous command protection
- session recording and replay with JSONL-based audit history
txfor rollback-aware single-target changestx-workflowfor multi-block transactional workflowsorchestratefor staged multi-device rollout plansuploadfor direct SFTP transfers to supported hostsbackupfor saving and restoring~/.rautoruntime data
When to use each surface
Section titled “When to use each surface”| Goal | Recommended entry | Notes |
|---|---|---|
| Run one command quickly | rauto exec | Best for troubleshooting and quick validation |
| Render and apply a template | rauto template | Best for reusable command logic |
| Drive an interactive prompt flow | rauto flow | Best for copy scp: and wizard-like device flows |
| Manage and execute in a browser | rauto web | Best for local self-service and visual operations |
| Join a central control plane | rauto agent | Best when managed by rauto-manager |
| Execute a rollback-aware change | rauto tx | Best for compact single-target transactions |
| Run a workflow JSON file | rauto tx-workflow | Best for block-based transaction logic |
| Roll out to multiple targets | rauto orchestrate | Best for staged and batch delivery |
Product boundary
Section titled “Product boundary”rauto and rauto-manager serve different layers:
| Project | Role | Best for |
|---|---|---|
rauto | Execution engine and local operator tool | Single-node execution, local UI, and agent runtime |
rauto-manager | Central control plane | Multi-agent management, shared inventory, and centralized dispatch |
If your priority is:
- automation from a single workstation
- local templates, recordings, replays, and transaction tools
- a stable execution layer for AI or higher-level platforms
then rauto should be your primary entry point.
Next, continue with Quick Start and Command Selection and CLI.