Synology Management Plugin
April 27, 2026 · View on GitHub
A Claude Code plugin for managing a Synology NAS. SSH-based operations with optional DSM HTTP API support.
Per-host details (IP, SSH user, DSM URL, share root, credential references) are stored outside the plugin at $CLAUDE_USER_DATA/synology-mgmt/config.json, so the same install works against any number of NAS environments and survives plugin updates.
Skills
onboard— interactive first-run setup. Captures host, SSH user, SSH key path, DSM web URL, primary volume root, model/version, and (optionally) DSM credential references. Writesconfig.json.synology-operations— SSH-driven file operations, share listing, volume/RAID/SMART status, snapshot inspection, and DSM-API access. Reads fromconfig.json.
Requirements
- SSH service enabled in DSM: Control Panel → Terminal & SNMP → Enable SSH service
- An admin (or
administrators-group) user with SSH access
Installation
claude plugins install synology-mgmt@danielrosehill
Quick start
- Install the plugin.
- Run the
onboardskill — Claude will interview you for the connection details and write them to$CLAUDE_USER_DATA/synology-mgmt/config.json. - Ask Claude things like "check the NAS", "list shares", or "how much space is left on volume1" — it'll read the config and connect.
Storage convention
This plugin follows the claude-rudder:plugin-data-storage convention:
- Plugin code lives at the install path (read-only, replaced on update).
- User config lives at
${CLAUDE_USER_DATA:-${XDG_DATA_HOME:-$HOME/.local/share}/claude-plugins}/synology-mgmt/config.json. - Secrets (DSM password) are never stored in the config — only a reference to where they live (1Password item, env var, file path). Skills resolve the reference at runtime.
License
MIT