Open-source network automation

Safer network changes. Less fragile SSH glue.

rauto brings CLI, a local Web console, templates, dry runs, recordings, and device profiles into one Rust runtime.

Execution mesh
Preview. Push. Replay.
Control plane armed
Access Switches
Queued
Core Router
Dry Run
Firewall
Replay Ready
Change preview
$ rauto template campus_vlan.j2 --vars site-a.json --dry-run
preview: vlan 210 / interface trunk / commit pending
$ rauto workflow apply-campus.yml --connection edge-core
result: 12 devices updated · 0 rollback · 1 record archive
Replay stream
Enable -> Config state matched
Template rendered into 21 commands
write memory confirmed
JSONL session saved for offline replay
12 Targets
21 Command set
01 Replay records
Rust coreDry run firstRecord and replayDevice-aware templates

Core capabilities

A tighter execution surface for real network changes.

Safe execution, reusable assets, and replayable history in one runtime.

Safer execution primitives

Use dry runs, mode-aware prompts, transaction blocks, and workflow orchestration to avoid blind command pasting.

Standardized operating assets

Reuse connections, templates, JSON variables, profiles, and prompt definitions instead of rebuilding context per task.

Replayable troubleshooting

Record sessions to JSONL, inspect history, and replay exactly what happened when a change window turns noisy.

CLI and local Web console

Start from the command line, open the embedded UI when needed, and keep both surfaces aligned around the same runtime data.

Execution workflow

Preview, run, replay.

Model the device context, render the change, execute with checks, then inspect the result.

Model the target

Save reusable connections, pick a device profile, and validate prompt behavior before touching production.

Render the change

Combine templates with JSON variables and inspect dry-run output so the intended command set is explicit.

Execute with context

Run direct commands, transaction blocks, or workflows with the correct mode transitions and state checks.

Inspect and recover

Browse history, replay session events, and restore archived runtime data when you need auditability or fast recovery.

Operator surfaces

One local control surface for the whole run.

Connections, prompt states, templates, backups, and replay files stay together.

Keep the operator context in one place instead of scattering it across tabs and notes.

Saved connections

Store reusable host, auth, port, and profile context by name, then load it in CLI or Web flows.

Templates and device profiles

Render commands with MiniJinja and model prompt transitions with TOML profiles inherited from rneter.

Session records and history

Capture execution detail as structured events so review and post-change debugging stop depending on memory.

Backup and restore

Archive the local runtime under ~/.rauto and recover connections, profiles, templates, and records when needed.

Use cases

Built for the jobs that come back every week.

Real operator scenarios, not abstract feature bullets.

Bulk switch changes

Render the same intended change across multiple access devices while keeping connection state and prompt handling consistent.

Template-based firewall or router updates

Drive repeatable policy or interface changes from templates and variable files instead of manually retyping each sequence.

Replay after a noisy maintenance window

Use recorded session events and history detail to reconstruct what happened without relying on terminal scrollback.

Reusable lab-to-production workflows

Validate device profiles and execution paths in a lab, then reuse the same operational assets for production runs.

Inside rauto

What is inside rauto.

The current product surface: execution, assets, replay, and local UI.

Execution engine

Run direct commands, templates, transaction-oriented flows, and state-aware device interactions from one execution model.

Template and asset library

Work with saved connections, MiniJinja templates, JSON variables, prompt definitions, and device profiles as first-class assets.

Replay and history

Inspect structured session records, replay events offline, and review what actually happened during a change window.

Local control surface

Use the embedded Web console alongside the CLI and keep backups, records, templates, and connection data in one local runtime.

FAQ

Before you trust it in a change window.

Short answers about how the product behaves.

How do the CLI and Web console fit together?

They share the same local runtime data and execution model, so saved connections, templates, profiles, records, and backups stay aligned.

Can I preview commands before touching devices?

Yes. Dry-run flows let you inspect rendered commands before execution, which is critical when templates or variable files are involved.

Can I define my own device prompt behavior?

Yes. rauto supports built-in profiles inherited from rneter and custom TOML profiles so you can model prompt states and execution modes for your environment.

What data stays local?

Connections, templates, profiles, records, and backup archives live in the local runtime directory. The current product positioning is explicitly local and open-source first.

Open rauto.

Install it, read the docs, or go straight to the repo.