| name | synology-file-station |
| description | Operate Synology DSM File Station via WebAPI for major file workflows including listing, search, folder creation, rename, copy/move, delete, upload/download, and archive extract. Use when tasks need scripted NAS file operations with service address, username, and password loaded from environment variables. Note: compress is temporarily unavailable in this skill. |
Synology File Station
Core Goal
- Run major Synology File Station file operations with one CLI script.
- Read connection credentials from env instead of hardcoding secrets.
- Return JSON output suitable for automation pipelines.
Workflow
- Prepare env variables (see
references/env.md and assets/config.example.env).
- Validate config:
python3 scripts/synology_file_station.py check-config
- Optional connection probe:
python3 scripts/synology_file_station.py check-config --probe
- Run the required file operation command (see
references/commands.md).
Major Operations
- Read/browse:
info, list-shares, list, get-info
- Search:
search-start, search-list, search-stop, search-clean
- Directory/file mutation:
mkdir, rename, copy, move, delete
- Transfer:
upload, download
- Archive workflows:
extract (compress is temporarily unavailable)
- Background task control:
background-list, task-status, task-stop
Environment Contract
Required env:
SYNOLOGY_BASE_URL
SYNOLOGY_USERNAME
SYNOLOGY_PASSWORD
Optional env:
SYNOLOGY_VERIFY_SSL
SYNOLOGY_TIMEOUT
SYNOLOGY_SESSION
SYNOLOGY_READONLY (default false; set true to block mutation commands)
SYNOLOGY_MUTATION_ALLOW_PATHS (optional mutation path allowlist)
Output Contract
- Success: JSON object with
type=status and operation-specific fields.
- Failure: JSON object with
type=error and structured error metadata.
- Exit code:
0: success
1: runtime/API error
2: invalid env configuration
References
references/env.md
references/commands.md
Assets
assets/config.example.env
Scripts
scripts/synology_file_station.py