Skip to content

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.

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.

The most direct interface, suitable for:

  • ad-hoc command execution
  • rendering and running saved templates
  • interactive command flow execution
  • transaction blocks, workflows, and orchestration

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

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
  • 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
  • tx for rollback-aware single-target changes
  • tx-workflow for multi-block transactional workflows
  • orchestrate for staged multi-device rollout plans
  • upload for direct SFTP transfers to supported hosts
  • backup for saving and restoring ~/.rauto runtime data
GoalRecommended entryNotes
Run one command quicklyrauto execBest for troubleshooting and quick validation
Render and apply a templaterauto templateBest for reusable command logic
Drive an interactive prompt flowrauto flowBest for copy scp: and wizard-like device flows
Manage and execute in a browserrauto webBest for local self-service and visual operations
Join a central control planerauto agentBest when managed by rauto-manager
Execute a rollback-aware changerauto txBest for compact single-target transactions
Run a workflow JSON filerauto tx-workflowBest for block-based transaction logic
Roll out to multiple targetsrauto orchestrateBest for staged and batch delivery

rauto and rauto-manager serve different layers:

ProjectRoleBest for
rautoExecution engine and local operator toolSingle-node execution, local UI, and agent runtime
rauto-managerCentral control planeMulti-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.