Nextcloud
Any Nextcloud server. Voice captures and notes go into a folder in Files as the recording and a markdown file. Tasks go to Nextcloud Tasks. Snag gets its own app password and never sees your password.
Takes voice, notes and tasks. The recording always goes in, and so do note photos and files.
Connect
You need the server's address and a Nextcloud account. For Tasks, the Nextcloud Tasks app (or any task list on the server).
- Open Settings > Connections > Add a connection > Nextcloud.
- Type the server's address in Server (for example
cloud.example.com). Continue is offered once it looks like a web address. - Tap Sign in to Nextcloud. Your server's own login page opens in a browser sheet. Sign in and approve Snag. The panel shows "Waiting for Nextcloud" and "Approve Snag in the browser" until the server replies. Cancel stops it.
- Under "Where should it go?", set Folder (default
Snag) and pick a Tasks list. - Tap Continue, then Make default or Not now.
The app password Snag gets is listed in Nextcloud under Settings > Security, named after Snag, and can be revoked there.
With an app password instead
- On the sign-in step, tap Use an app password instead.
- In Nextcloud, create an app password under Settings > Security.
- Fill in Login name and App password, then tap Save.
Snag checks the pair with the server before keeping it.
What it writes
A voice capture
Two files in the folder, named from the recording time and the capture:
snag-20261016-094107-6f9619ff.m4a, the recording.snag-20261016-094107-6f9619ff.md:
---
source: snag
kind: voice
recorded: 2026-10-16T09:41:07+01:00
duration_seconds: 12.4
audio: "snag-20261016-094107-6f9619ff.m4a"
speech_detected: true
transcript_engine: <engine>
input_route: "<route>"
locale: "en_GB"
capture_id: <capture id>
---
# Voice note, 16 Oct 2026 09:41
## Device transcript
Book the MOT before the 31st and pack the good headphones
## Actions
- [ ] Book the MOT before the 31st
- [ ] Pack the good headphonesThe Actions section is there only when Snag found things to do. Each file's modified time is set to when it was recorded.
A note
Each photo or file as snag-...-1-<name>, then snag-....md with the front matter, the text, and an image link to each file.
A task
A task (VTODO) in the chosen Tasks list: the task name as its summary, the notes as its description, the due date when set, status needs action.
Options
On the connection page:
| Option | Default | What it does |
|---|---|---|
| Folder | Snag | Where recordings and markdown go. Subfolders with / are made as needed |
| Tasks list | The personal list where there is one | Lists on the server that take tasks |
Limits
- Use the server's
https://address. iOS allows plainhttp://only for servers on the local network. - Tasks go to Nextcloud Tasks only, not Deck.
- Things to do found in a voice capture are checkbox lines in the markdown, not separate tasks.
- A retry writes the same file names again, so it overwrites rather than adding copies. A task already on the server counts as done.
- Sign-in errors: "Couldn't connect to Nextcloud at cloud.example.com.", "Nextcloud didn't accept that login name and app password.", "That server address isn't a web address."
- If Nextcloud refuses a file, the capture is marked "Nextcloud refused it (HTTP 403)." (with the status) in the Snagged list.
Next: Reminders