/nc/. Reads are async and streaming, with
range requests for partial reads.
For credential setup, see Nextcloud Setup.
Install
Config
NextcloudResource(config) takes a NextcloudConfig object with the
WebDAV URL plus optional Basic Auth credentials. Both READ and WRITE
modes are supported. Use an app password (Settings → Security in
Nextcloud) rather than your account password.
Filesystem Layout
WebDAV resources map directly to virtual paths under the mount prefix. For example, if your Nextcloud root contains:/nc/ exposes:
/nc/Documents/notes.md issues HTTP requests
against <NEXTCLOUD_URL>/Documents/notes.md.
Cache
The Nextcloud resource usesIndexCacheStore. Directory listings come
from a single PROPFIND Depth: 1 and populate file size, type, and
ETag entries that stat reads via a fast path, so a readdir followed
by per-entry stat calls (which is what ls, FUSE getattr, and most
shell commands trigger) costs one HTTP request instead of N.
Fingerprinting and Snapshots
SUPPORTS_SNAPSHOT = True. Per-file fingerprints come from the WebDAV
getetag property, so snapshot drift detection works automatically:
when a remote file changes, its ETag changes, and Mirage notices on the
next access.
Example
Shell Commands
The Nextcloud resource supports the full set of shell commands since it operates on real file content (text, binary, JSON, CSV, etc.). Reads benefit from HTTPRange requests so commands like head -c BYTES
don’t pull the whole file.
Read Commands
Text Processing
File Operations
Path Utilities
Compression
Encoding
Data Format Support
Commands with format-specific variants for structured data files:
These variants auto-detect the format by extension and convert to
tabular text (CSV) for processing.
Streaming
- Reads: streamed in chunks. Downstream commands like
head -n 1early-cancel, so you only pay for the first chunk over the wire. - Range reads:
head -c BYTESand other partial reads issue HTTPRangerequests that Nextcloud and most WebDAV servers honor. - Writes: buffer the payload before upload. Streaming uploads
(Nextcloud’s
uploads/resumable protocol) are a possible future follow-up.
Use Cases
- AI agents accessing personal cloud storage: Mount Nextcloud so agents can read documents, notes, and structured data on a self-hosted cloud.
- Self-hosted alternative to Dropbox/Box: Same shell-command surface, with full read+write support.
- Multi-protocol WebDAV: Works against any RFC 4918-compliant server, not just Nextcloud.
- FUSE mounting: Expose Nextcloud through a virtual FUSE mount for external tools.