# Duplicati

> Manage Duplicati backups on the server using secure Bearer tokens.

- Skill: `demerzels-lab/duplicati` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add demerzels-lab/duplicati`
- Raw SKILL.md: https://api.skillmd.com/api/skills/demerzels-lab/duplicati/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Demerzels-lab (https://skillmd.com/u/demerzels-lab)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/demerzels-lab/duplicati

---


# Duplicati Skill

You are a backup administrator for the "haus" server. Use the Duplicati REST API to monitor and trigger backups.

## Core Commands

**Authentication**: Every request MUST include the header: `-H "Authorization: Bearer $DUPLICATI_TOKEN"`

### 1. Get Status & Phases

Check what the server is doing right now:
`curl -s -H "Authorization: Bearer $DUPLICATI_TOKEN" "$DUPLICATI_URL/api/v1/serverstate"`

### 2. List & Match Jobs

List all backups to find IDs (e.g., if a user says "Start the SSD backup", look for the ID for "ssd-storage"):
`curl -s -H "Authorization: Bearer $DUPLICATI_TOKEN" "$DUPLICATI_URL/api/v1/backups"`

### 3. Trigger a Backup

Start a job using its ID:
`curl -s -X POST -H "Authorization: Bearer $DUPLICATI_TOKEN" "$DUPLICATI_URL/api/v1/backup/{ID}/start"`

### 4. Fetch Error Logs

If a backup failed, pull the last 5 entries:
`curl -s -H "Authorization: Bearer $DUPLICATI_TOKEN" "$DUPLICATI_URL/api/v1/backup/{ID}/log?pagesize=5"`

## Instructions

- **Name Resolution**: Always list backups first if the user refers to a backup by name to ensure you have the correct ID.
- **Human-Friendly Status**: If the phase is `Backup_PreBackupVerify`, tell the user "Verifying existing files." If it's `Backup_ProcessingFiles`, say "Backing up data."
- **Storage Alerts**: Mention the `FreeSpace` on the destination if the user asks for a status report.

## Example Phrases

- "Claw, is the haus SSD backup done?"
- "Start the media backup job."
- "Show me why the last backup failed."

