Command Center
for servers & your machine
Run commands on your local machine or across remote servers over SSH, manage connections, keep a reusable command library, schedule and chain multi-server workflows, and monitor resources — with an in-app AI assistant and a built-in MCP server for Claude, Cursor & Kiro.
Not sure which Mac? Apple menu → About This Mac: “Apple M1/M2/M3…” = Apple Silicon, “Intel” = Intel.
Windows 10/11 · macOS 12+ (Intel & Apple Silicon) · Linux (tar.gz, x86_64) · Offline & private · Free Starter plan
One interface for the whole ops workflow
From SSH management to resource monitoring — SelfCmd covers the full ops workflow without switching tools.
SSH Connection Manager
Organize servers with groups and tags, search instantly, and import sessions from Xshell, MobaXterm, FinalShell, SecureCRT, PuTTY and ~/.ssh/config. Reach servers behind a bastion with built-in jump-host (ProxyJump) support — password or key auth on both hops. Open an interactive terminal, or browse and transfer files with the built-in SFTP explorer — straight from a connection. Quick-connect with ssh user@host too. Passwords are AES-encrypted at rest.
AI Assistant & MCP
Describe intent in plain language and the in-app AI assistant proposes a command you review before running — with one-click failure diagnosis. A built-in Model Context Protocol server also lets Claude, Cursor and other agents list/run your commands, tasks and workflows, read diagnostics (metrics, log tails, remote file reads and directory listings) and make guarded changes (run commands, write files) — reusing stored connections, fully offline. Safety first: action tools off by default, two-step + native desktop confirmation, per-connection access tiers, dangerous-command/sensitive-path screening, and a full audit log.
Command Library
Save your most-used commands as one-click buttons, organized by group and tag — or switch to a “most-used” view (Top 10/20/custom N) ranked by how often you actually run them. The editor gives you shell syntax highlighting and a live preview of the fully-expanded command. Parameterize with reusable {{variables}} — type “{{” in any command box to autocomplete them, or copy a variable’s reference in one click; the same variables also expand in tasks, workflows and SFTP paths. Export/import your whole library, and dangerous commands (rm -rf, mkfs, dd…) ask for a second confirmation before they run.
Workflow Engine
Chain remote commands and SFTP transfers into reusable runs. Pick sequential or parallel execution, set per-step timeout, retry and stop-on-failure, and override the connection per step. Pass one step’s output into the next, watch live per-step progress, cancel any time, and export/import whole workflows as JSON.
Scheduled Tasks
Run commands on a schedule — one-time at a set moment, or repeating from every few seconds to hours — on a remote host or your local machine. Attach result checks to flag failures automatically, pause and resume individual tasks, watch a live countdown to the next run, and keep a per-task output log.
Resource Monitor
Track CPU, memory, disk usage, disk I/O, network bandwidth — and SSD/NVMe disk life (SMART wear) — against thresholds you set, with a hold-duration so brief spikes don’t cry wolf. One host is a single row: enable several metrics on it at once, and rows turn amber then red as usage crosses your limits. Get non-blocking toast alerts, recovery notices and optional throttled email — never a pile-up of dialogs — open a trend view for any metric, and export/import your whole monitor set.
Built-in Toolbox
A categorized toolbox: ping, port/service probing and same-LAN MAC lookup; SFTP/FTP transfer; a serial (COM-port) console for switches, routers and embedded boards; plus dev utilities — timestamp/epoch converter, cron expression helper, JSON/YAML formatter, base converter, checksums, text compare, keyword extract and a notes scratchpad. Pin the tools you use most to the sidebar for one-click access.
Multi-language UI
The whole interface — menus, dialogs, tooltips and messages — switches between English and Simplified Chinese instantly at runtime, no restart needed. Add another language by dropping a JSON file into the locales/ folder; the app auto-detects it. Fonts and layout scale cleanly from laptops to 4K.
Offline & Private
Everything runs on your machine — servers, credentials and logs never leave it, and the app never phones home or ships telemetry. Passwords are AES-encrypted at rest, and Pro licenses activate fully offline and bind to your device. Light and dark themes are built in and switch on the fly.
Chain tasks into reusable runs
Build workflows that combine SSH commands and SFTP transfers across your servers. Each step gets retry, stop-on-failure, and live progress — re-run a whole deploy or restart sequence with one click.
- ✓Per-step retry & stop-on-failure
- ✓Per-step SSH connection override
- ✓SFTP transfer steps with auto mkdir
- ✓Live progress, cancel, and last-run status
- ✓Export / import workflows as JSON
Let Claude, Cursor or Kiro operate your servers — safely
SelfCmd ships a built-in Model Context Protocol server. AI agents reuse your saved connections to diagnose and act — fully offline, with a human in the loop for every change.
- ✓Read-only by default: metrics, log tails, file reads, dir listings
- ✓Guarded writes: run commands, run tasks/workflows, write files
- ✓Two-step + native desktop confirmation before any action
- ✓Per-connection access tiers: full / read-only / blocked
- ✓Dangerous-command & sensitive-path screening + full audit log
Start free, scale when ready
No subscription. Pro is a one-time, offline license — your data never leaves your machine.
Starter
Every feature, with generous limits — great for individuals.
- ✓Up to 5 SSH connections
- ✓Up to 10 scheduled tasks
- ✓Up to 30 library commands
- ✓Up to 10 workflows & 10 monitors
- ✓Groups, tags & session import
- ✓Full toolbox: net diag, SFTP/FTP, timestamp/cron/JSON-YAML
- —Unlimited resources
- —Priority support
Pro
Launch price — first 100 buyers
A one-time, offline license that removes every limit. Free updates within v2.
Online checkout coming soon — click to email us
- ✓Unlimited connections, tasks & buttons
- ✓Unlimited workflows & monitors
- ✓Email alerts on thresholds
- ✓Config & workflow export / import
- ✓Offline activation, machine-bound
- ✓No account, no phone-home
- ✓Priority email support
- —Multi-seat team licensing
- —Volume discounts
Team
Volume licensing for teams — 5 seats included, discounted extras.
Online checkout coming soon — click to email us
- ✓Everything in Pro
- ✓5 seats included (~$30 each)
- ✓Extra seats at $30 · volume discounts
- ✓Shareable command & workflow libraries (export / import)
- ✓Centralized licensing & invoicing
- ✓Priority support
All plans store data locally — no cloud required. Pro is a one-time purchase, activated offline.
Online checkout is being finalized. To buy Pro or Team now, email [email protected] and we'll send an offline license.
Built for how ops teams work
See how SelfCmd solves everyday server management challenges.
Migrate from your old SSH client
Switching from Xshell, MobaXterm, FinalShell, SecureCRT or PuTTY? Import your saved sessions in seconds, then organize them with groups and tags.
Nightly Server Maintenance
Schedule disk cleanup, log rotation, and service restarts across many servers. SelfCmd runs them on your interval — no cron setup needed.
Deploy & Verify Workflow
Build a workflow: pull latest code → upload config → restart service → health check. Run it with one click, with retry and live progress.
Verify a deploy, document the change
After deploying a new build: run File Checksum on the local artifact and the remote copy to confirm they match byte-for-byte. Open Text Compare to diff the old and new config side-by-side and spot unintended changes. Then paste the summary into Notes — timestamped, searchable, always at hand for the next incident review.
Reach servers behind a bastion
Production hosts on a private network? Turn on the jump host (ProxyJump) for a connection and SelfCmd tunnels through your bastion — for the terminal, SFTP, scheduled tasks and monitoring alike, with password or key auth on each hop.
Disk & Memory Alerts
Set an 85% disk threshold on production servers. Get a non-blocking toast — and optional email — the moment usage spikes, plus a recovery notice.
One row per server, many signals
Watch a fleet without clutter: enable CPU, memory, disk and SSD/NVMe disk-life (SMART wear) on each host as a single row. Catch drives approaching end-of-life before they fail, and see the worst metric color the row at a glance.
AI-assisted incident triage
Point an MCP client — or the in-app AI assistant — at a host marked read-only: pull metrics, tail logs and read configs to find the cause. Any write action stays gated behind desktop confirmation.
Up and running in 2 minutes
No Docker, no cloud account, no subscription required.
Changelog
- —Run one command across many hosts
- —SFTP tasks get a multi-host window
- —Host availability now comes from one shared source across every connection picker
- —Consistent typography throughout, a slightly larger default font, and a bottom window bar that shows how many windows are docked and highlights them while collapsed
- —Fixed the status bar and monitor metric cells rendering as unreadable white blocks on some dark-theme setups
- —Clearer failures for local commands: unexpanded {{variables}} are caught before anything runs, and Windows now warns when bash-only syntax is about to go through cmd.exe instead of leaving you with a cryptic error in the system language
- —Readability fixes: SFTP tasks moved from the "More" menu onto the toolbar
- —Monitoring redesigned: one row per server with a column for each metric (CPU, memory, disk, disk I/O, network, disk life); values read green when healthy and turn red the moment a threshold is crossed
- —Watch several metrics on one server at once, with a shared or per-metric threshold; long-running monitors now keep the SSH connection alive and auto-reconnect if it drops
- —Serial (COM-port) console now lives under Connections, right alongside your SSH hosts
- —Command Library: a "most used" group surfaces your top commands (custom Top-N), plus a resizable/maximizable editor
- —More reliable in-app feedback with built-in spam protection
- —Help reorganized into a "Support & License" tab, with Check-for-update moved next to the version info
- —SSH jump host (ProxyJump / bastion): reach private servers through a bastion for the terminal, SFTP, scheduled tasks, workflows and monitoring — password or key auth on each hop, jump credentials encrypted at rest and stripped from shared exports
- —MCP server gains read-only remote file tools (read file, tail log, list directory) plus a guarded write-file tool with sensitive-path screening; MCP connections are jump-host aware
- —Workflow reliability: cancel now interrupts the in-flight command, and parallel runs no longer share step-output state between threads
- —Terminal: smoother line-precise scrollback and a draggable scrollbar; edit dialogs (connections, tasks, workflows, monitors, SFTP) dock to the window bar so they’re easy to find when minimized
- —Command boxes autocomplete {{variables}} as you type, with a one-click reference copy
- —Groundwork for Linux (AppImage) packaging and a cross-platform test matrix on CI
- —AI Command Assistant: describe intent in plain language, review the proposed command, then run it on a chosen connection — with one-click failure diagnosis
- —Built-in MCP server for Claude / Cursor / Kiro: read-only tools by default, two-step + native desktop confirmation, per-connection access tiers, full audit log
- —Command Library: reusable {{variables}} shared across tasks, workflows and SFTP paths; export / import the whole library; dangerous commands ask for a second confirmation
- —New toolbox utilities, now grouped by category: timestamp / epoch converter, cron expression helper, JSON / YAML formatter
- —Open an interactive terminal and browse files over SFTP straight from a connection; quick-connect with ssh user@host
- —UI: larger row spacing and fonts, light/dark polish, and a layout that adapts from laptops to 4K displays
- —Reliable in-app check-for-update feedback
- —Cloudflare R2 upload / checksum compatibility fixes for installers
- —Fixed a footer hydration warning on the website
- —Optional launch on Windows startup
- —Reworked Help page (Support / Version sections)
- —Get-license opens a pre-filled email with machine ID
- —Feedback falls back to your email client when offline
- —Unified domains and contact details
- —Migrated to PySide6 Qt6 interface
- —Added side-nav with lazy-loaded panels
- —Live locale switching (EN / ZH)
- —Dark / Light / System theme via qdarktheme
- —Collapsible command groups with lazy rendering
- —CPU / Memory / Disk usage monitoring
- —Email alert via SMTP with throttle control
- —Per-item enable/disable toggle
- —Alert history and cooldown
- —Visual task-flow builder
- —Sequential and parallel execution modes
- —SFTP upload steps inside workflows
- —Export / import workflow JSON
- —Collapsible command groups
- —Tag-based filtering
- —Single-click fill + double-click execute
- —Batch execute dialog
- —Fernet AES password encryption at rest
- —Per-install keystore
- —Secure export / import of full config
Got questions?