CallMeTechie
DE Login
Home Products Blog About Contact
30. May 2026 8 Min. read Synology Manager Plus
Claude Code SSH Synology NAS Homelab DevOps Synology Manager Plus

My Synology NAS Now Lives in Claude Code — Without the DSM Clicking

MA
Marc Backes
30. May 2026

A Synology NAS is a wonderfully low-maintenance piece of hardware — right up until the moment you want to know how it's really doing. How warm are the disks? Has one started reallocating sectors? Is the Nextcloud stack still running, or did it hang after the last reboot? Is a DSM update due? For every one of those questions it's the same routine: log in, click through DiskStation Manager, find the right submenu.

That clicking is exactly what I wanted to get rid of. So I built Synology Manager Plus — a plugin for Claude Code that manages my NAS entirely over SSH. Instead of navigating DSM, I type /health-summary or /smart-status and get a structured answer right away.

TL;DR

  • What: a Claude Code plugin for managing Synology NAS over SSH
  • For whom: NAS homelabbers and admins who prefer SSH over the web UI
  • Cost: none — open source under MIT
  • Core idea: read-only by default, no DSM Web API, one or many NAS from a single session

A fork that fixes three things

Synology Manager Plus is a fork of Daniel Rosehill's synology-manager-plugin — a great idea that snagged in three places: marketplace installation didn't work, setup ran through a sub-agent that couldn't hold a multi-turn dialog, and real health checks were missing entirely. The fork fixes exactly that and has grown across several releases since: SMART health, a log viewer, a DSM update check, a complete Docker Compose set and multi-NAS management.

Set up in five minutes

Setup is deliberately guided. The only prerequisite is an enabled SSH service in DSM (Control Panel → Terminal & SNMP). Then:

/plugin marketplace add CallMeTechie/synology-manager-plus
/plugin install synology-manager-plus@synology-manager-plus
/first-run

/first-run asks for the LAN host, an optional WAN host, the port and the user. Then it takes care of the SSH key — Synology Manager Plus uses its own dedicated Ed25519 key and doesn't mix with your GitHub keys. You deploy the public part with a one-liner the plugin gives you to copy:

! ssh-copy-id -p 22 -i ~/.ssh/synology-manager-plus_ed25519.pub admin@192.168.1.10

The leading ! matters — it opens a real terminal in Claude Code for password entry (and you accept the host key fingerprint once during it). After that, the plugin detects model, DSM version, RAM, RAID and Docker automatically and verifies with /diag that all seven health checks are green.

The commands I use every day

My first move in the morning is the health overview:

/health-summary
RAID:    SHR-1 healthy
Volume1: 58% used
Disks:   sda 41°C, sdb 39°C
Memory:  62%   Load(5m): 0.4
Verdict: ok

When I have several NAS, I simply append --all — then the command walks the whole fleet sequentially and gives me a verdict based on the worst single value. Then I drill down:

  • /smart-status — SMART health per disk with a clear pass/warn/critical (a single pending sector is enough for critical)
  • /nas-status — usage, RAID, services, load at a glance
  • /dsm-update-check — is a DSM update due? (read-only, never installs by itself)
  • /logs --source=ssh --last=12h --grep=Failed — a quick look at the log

And for the Docker stacks on the NAS there's a complete compose set: /compose-list, /compose-up, /compose-update (pull + restart, atomic) and /compose-down.

The DSM quirks the plugin solves for you

A NAS is not an ordinary Linux server, and DSM has a few stumbling blocks I learned the hard way while building this:

  • Docker lives at /usr/local/bin/docker — a path that isn't on the PATH of a non-interactive SSH session. The plugin therefore always invokes Docker by absolute path; a CI check keeps a bare docker from ever sneaking in.
  • DSM has no visudo — you set up passwordless sudo via a drop-in file under /etc/sudoers.d/, restricted to exactly smartctl, synoupgrade and docker.
  • smartctl 6.5 speaks an older text format; the plugin parses it robustly and lets you override the device type (ata/sat/nvme) in the profile for exotic disks.

Security: read-only wherever possible

A tool that runs commands on a NAS over SSH has to be careful:

  • Read-only by default: all overview commands change nothing. Mutating actions require an explicit argument.
  • DSM updates never automatically: /dsm-update-check only reports the status — installation deliberately happens only in the web UI.
  • Critical stacks protected: projects in critical_compose_projects can only be stopped with SM_CONFIRM_CRITICAL=yes.
  • No blind trust: you accept the host key once at setup; afterwards all connections run with BatchMode and the cached key.
  • Your data stays local: hosts, users and keys never end up in Git — the real profiles are git-ignored.

And the big Linux sibling

Synology Manager Plus handles Synology specifics. If you also run classic Linux servers alongside — a VPS, a few Raspberry Pis — Fleet Manager is the matching sibling plugin with the same operating model. I use both side by side.

Conclusion

Synology Manager Plus doesn't make the decisions for me, but it does away with the clicking. I see the state of my NAS in one line, spot an ailing disk before it fails, and control Docker stacks without fumbling through DSM. For a NAS homelab, that's exactly the right mix of convenience and control — and because it's open source, it costs you nothing but five minutes of setup.

The code lives on GitHub. If you run a Synology NAS and use Claude Code: give it a try and tell me what's still missing.

Cookie Settings

We use cookies to improve your experience. Essential cookies are always active.

Privacy Policy
ESC
↑↓ navigate open esc close