Skip to content

About

AI-powered SSH client for network engineers. ARIA agent diagnoses Cisco, Juniper, Arista, BGP, OSPF & firewall issues in real-time. Mac/Win/Linux. Free & open source.

Topics

Resources

Contributing

Security policy

Stars

9 stars

Watchers

0 watching

Forks

Latest commit

 

History

223 Commits

Folders and files

Repository files navigation

NetCopilot

The first AI agent built for network engineers.

Latest Release Downloads Build License

Stars Forks Contributors Open Issues Last Commit Visits

macOS Windows Linux Electron React TypeScript

Download · ARIA Agent · Features · Security · Dev Setup


NetCopilot is not just a terminal — it is an AI agent that connects to your network devices, understands your infrastructure, and acts autonomously to diagnose, troubleshoot, and fix problems.

At its core is ARIA (Autonomous Real-time Infrastructure Agent): a real agentic system that plans investigations, executes commands, reads output, and delivers structured recommendations — all without leaving your terminal. You describe the problem; ARIA handles the rest.

See It in Action

Screen.Recording.2026-04-26.at.12.17.25.AM.mov

Download

Pre-built binaries for all platforms — no build step required.

Download Latest Release

Platform File Architecture Code Signing
macOS .dmg Apple Silicon (arm64) / Intel (x64) ✅ Signed & Notarized by Apple
Windows .exe installer x64 ⏳ Pending (see note below)
Linux .AppImage / .deb x64 — (not required)

Windows users: the current Windows build is unsigned, so SmartScreen may display a "Windows protected your PC" warning. Click More info → Run anyway to continue. Free Windows code signing for NetCopilot has been requested from the SignPath Foundation — once approved, all future Windows releases will be signed by SignPath.io with a certificate issued by the SignPath Foundation.


ARIA — The AI Agent

ARIA is the core of NetCopilot. It is not a chatbot — it is a real agentic system built specifically for network and infrastructure engineers.

How It Works

When you describe a problem, ARIA doesn't just answer — it acts:

You: "There's a BGP flapping issue on this router"

ARIA:
  Plan → [Check BGP summary] [Check neighbor state] [Check route table] [Check logs]
  ↓ show ip bgp summary          ✓
  ↓ show ip bgp neighbors        ✓
  ↓ show ip route bgp            ✓
  ↓ show logging | include BGP   ✓

  Analysis: Neighbor 10.0.0.1 is flapping due to hold-timer expiry.
  MTU mismatch detected on Gi0/0/1. Recommended fix: ...
  1. Plans — generates a structured investigation plan before touching anything
  2. Executes — runs commands automatically, one after another
  3. Analyzes — reads all output collectively, not per-command
  4. Delivers — complete, structured diagnosis with actionable recommendations

Per-Platform Mastery

ARIA carries deep, vendor-specific knowledge for every supported platform — not generic advice. Each device type has a dedicated playbook:

  • Signature commands — the exact commands a senior engineer would run first
  • Common root causes — the failure modes that actually happen in production
  • Diagnostic flow — the correct order to isolate the failing layer

On Cisco ASA → packet-tracer. On FortiGate → diagnose debug flow. On Palo Alto → test security-policy-match. These are the expert moves.

Key Capabilities

Capability Description
Batch Execution 2–5 independent commands in a single round-trip
Structured Context Every message includes parsed hostname, prompt, last 5 commands + outputs
Auto Device Detection Identifies device type from live terminal output before responding
Smart Retry Auto-retries with vendor-appropriate syntax when output is empty
Conversation Compression Summarizes older messages intelligently while preserving intent
L4 Planning Mode Visual investigation plan card with live step-by-step progress
Multi-Session Intelligence Aware of all open sessions; routes commands to correct device
Session Summary Delivers a recap of all commands when closing a tab

Modes & Change Control

ARIA never types configuration into your devices by itself. Its own commands are read-only in every mode; any change goes through a change plan that NetCopilot applies with the platform's own safety net.

Mode What ARIA can do
Investigate Read-only diagnosis — show, display, ping, traceroute… run without clicks; heavy commands (show tech, captures) ask first
Change Proposes change plans. Nothing touches the device until you click Approve
Autopilot Lab and staging devices only — ARIA approves and confirms its own plans, with the same safety nets

Every connection is Production, Staging or Lab (set in the connection dialog). Production devices never run Autopilot, and the Change Policy in Settings → ARIA can keep production read-only or require a written reason for changes outside a maintenance window.

What happens when you approve a change plan

  1. Snapshot — the running configuration is saved (encrypted, inside NetCopilot)
  2. Pre-checks — ARIA's read-only baseline commands
  3. Safety net — Junos commit confirmed, Arista EOS config session with commit timer, Cisco IOS reload in when the management path is touched, NX-OS checkpoint, RouterOS Safe Mode
  4. Apply — if the device rejects a line, NetCopilot backs the change out automatically
  5. Verify — the same checks again; ARIA compares before and after
  6. Keep or roll back — your click. On timer-based platforms the device reverts by itself if the session is lost

Every plan — approved, rejected, rolled back or failed — is kept in Change History with the device diff and full execution log, exportable as Markdown for change tickets.

Control Behavior
Blocked Patterns reload, rm -rf, write erase, etc. — never run, and screened in every change plan
Untrusted output Device output reaches the model marked as data, so text on a device (banners, logs, descriptions) can't instruct ARIA

Auto Watch & Error Alert Badge

When enabled, ARIA silently monitors your terminal output in real time. If it detects errors, misconfigurations, or anomalies — it alerts you immediately without interrupting your work.

Even when the AI panel is closed, a pulsing red badge appears on the ARIA button the moment an error pattern is detected (%Error, command not found, connection refused, etc.). Click it to open ARIA and analyze the issue instantly.

ARIA Setup

ARIA can run on a NetCopilot license (hosted Claude), your own cloud API key, or a model you host yourself:

  1. Open the app → Settings → ARIA
  2. Choose NetCopilot hosted and activate a license, or My own provider
  3. Pick a provider:
Provider What you need Example models
Claude Anthropic API key (sk-ant-…) claude-opus-5-5, claude-sonnet-5-5, claude-haiku-5-5
OpenAI OpenAI API key gpt-4.1, gpt-5
Grok xAI API key grok-4
Local / Custom Any OpenAI-compatible URL — Ollama (http://localhost:11434/v1), LM Studio (http://localhost:1234/v1), vLLM, LocalAI. API key optional qwen2.5:14b, llama3.1:8b
  1. Click Test, then pick a model (click ↻ to list the models your key or server offers)

API keys are stored in the OS keychain. With your own provider, requests go directly from the app to that provider or server — they never pass through NetCopilot servers. For local models, choose one with tool-calling support so ARIA can run commands, and give it a context window of 16K tokens or more.


Features

Supported Protocols

Protocol Details
SSH Password, SSH key, key+passphrase, Cisco Enable Password
Telnet Full NAWS negotiation, automatic terminal resize
Serial RS-232 / USB-to-Serial, configurable baud/parity/data bits/stop bits/flow control

Supported Devices

Category Platforms
Auto-detect Automatically identifies device type on first login
Cisco IOS, IOS-XE, NX-OS, ASA
Routing & Switching Juniper JunOS, Arista EOS, Nokia SR-OS, Huawei VRP, MikroTik RouterOS, HP/Aruba ProCurve
Firewalls Palo Alto PAN-OS, Fortinet FortiOS
Load Balancers F5 BIG-IP TMOS
Servers Linux / Unix, Windows Server
Generic Any SSH/Telnet/Serial device

SFTP Browser

  • Visual file manager that opens as a dedicated tab alongside your terminal sessions
  • Browse remote directories, upload, download, rename, delete files and folders
  • Create new directories with a single click
  • Access via right-click context menu or the 3-dot (⋯) hover menu on any SSH connection
  • Progress indicator for file transfers

Connection Health Monitor

  • Ping dashboard on the home screen — check latency for all connections at a glance
  • Color-coded latency badges: green (fast) → yellow → orange (slow) → red (offline)
  • Refresh button to re-scan all connections on demand
  • Non-blocking — runs in the background while you work

Terminal

  • In-terminal search with regex and case-sensitivity (⌘F)
  • Result counter shows n / total matches as you type; red indicator when nothing is found
  • Right-click context menu (Copy, Paste, Search, Clear)
  • Configurable font family, size, line height, cursor style, and scrollback
  • Session logging with ANSI stripping and optional timestamps
  • Split view — two sessions side by side
  • Auto-reconnect on session drop
  • Connection overlays (spinner, disconnect, error states)

Networking

  • Port Forwarding — local port forwarding rules per connection with live status
  • SOCKS Proxy — dynamic port forwarding (SOCKS4/SOCKS5) through SSH
  • Jump Host / Bastion — connect through intermediate servers transparently

Connection Management

  • Organized library with groups, colors, tags, and notes
  • Smart sidebar sorting — active sessions always float to the top; default sort by last connected so your most-used hosts are always first
  • Tags filter from the HomeScreen pills bar
  • Quick Connect (⌘K) — instant session from user@host:port without saving
  • Startup commands that run automatically after connecting
  • SSH key manager with reusable named keys
  • Full import / export as JSON
  • Import directly from ~/.ssh/config

Keyboard Shortcuts

Shortcut Action
⌘K / Ctrl+K Quick Connect
⌘T / Ctrl+T New tab
⌘W / Ctrl+W Close active tab
⌘, Settings
⌘D / Ctrl+D Toggle Split View
⌘⇧A Toggle ARIA panel
⌘1–9 Switch to tab N
⌘F Search in terminal

Security

Layer Protects Technology
Encrypted Database All connections, settings, configuration SQLCipher (AES-256)
OS Keychain Passwords, SSH keys, license keys, DB encryption key Electron safeStorage
Master Password App-level lock on startup scrypt + timing-safe comparison
Command Blacklist Dangerous command execution Code-level enforcement, always-on

Credentials are never stored in plaintext. The database encryption key is generated on first launch, stored in the OS keychain, and never written to disk directly.


Who Is It For?

  • Network engineers working daily with Cisco, Juniper, Arista, Palo Alto, and similar platforms
  • DevOps and infrastructure teams managing Linux and Windows servers remotely
  • NOC teams that need fast diagnostics and a clean, modern interface
  • Security teams performing network audits and configuration reviews
  • Anyone who spends serious time in SSH sessions and wants real AI assistance

Getting Started

Prerequisites

Setup

git clone https://github.com/AnasProgrammer2/netcopilot.git
cd netcopilot
npm install
npm run dev

The app launches immediately with hot-reload enabled.

Build

npm run build:mac     # macOS
npm run build:win     # Windows
npm run build:linux   # Linux

Output files in dist/.


Tech Stack

Layer Technology
Framework Electron 44 + electron-vite
Frontend React 19, Tailwind CSS, Zustand
Terminal xterm.js 6
Database SQLite (SQLCipher AES-256) via better-sqlite3
AI Backend NetCopilot API
Protocols ssh2, serialport, raw TCP (Telnet)

Roadmap

Released

  • SFTP Browser — visual file transfer (browse, upload, download, rename, delete, mkdir) via right-click or sidebar context menu
  • ARIA Error Alert Badge — pulsing red badge on the ARIA button when an error is detected in the terminal, even while the AI panel is closed
  • Session Summary Dialog — closing a tab with AI activity shows a full summary of commands run, stats, and ARIA's last response
  • Thinking… / Running… indicators — live feedback while ARIA is waiting for the first token or executing between tool calls
  • Port Forwarding — local, remote, and dynamic (SOCKS) tunnels per connection with live status
  • Connection Health Monitor — ping dashboard with live latency badges directly on the home screen
  • Smart sidebar sorting — open sessions always on top, sorted by last connected
  • Terminal search counter — live n / total result count with no-match indicator

Contributing

Contributions are welcome! Please open an issue first to discuss what you'd like to change.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the Business Source License 1.1 (BSL-1.1).

View & learn Anyone can read the source code
Personal use Free — unlimited
Academic / research Free
Internal evaluation Free
Commercial use Requires a license — support@netcopilot.app
Change Date January 1, 2029 → Apache 2.0

Why BSL? The source code is fully visible so you can verify NetCopilot never exfiltrates your credentials, passwords, or SSH keys. BSL ensures no one can take this codebase and launch a competing commercial product without a license.

See the LICENSE file for full details.


Acknowledgments


Built with purpose for the engineers who keep networks running.

About

AI-powered SSH client for network engineers. ARIA agent diagnoses Cisco, Juniper, Arista, BGP, OSPF & firewall issues in real-time. Mac/Win/Linux. Free & open source.

Topics

Resources

Contributing

Security policy

Stars

9 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages