# Offline behavior and privacy

> What works without a network connection in Hyperclay Local and which features connect to the internet.

Source: https://hyperclaylocal.com/docs/offline/

Everything in Hyperclay Local except cloud sync and AI model calls works with no network connection at all. Your files live in regular folders on your computer and are served over loopback (`127.0.0.1`).

## What works offline

The following features run locally with zero network traffic:

- Serving documents and static files on `localhost:<port>` and in [the workspace window](https://hyperclaylocal.com/docs/guide/workspace/)
- Saving documents (`POST /_/save`), conditional saves, and the data-clobber guard (see [Saving and stale-write protection](https://hyperclaylocal.com/docs/saving/))
- Local version backups and restores in `.hyperclay/versions/` and `.hyperclay/recovered/` (see [Recover from backups](https://hyperclaylocal.com/docs/guide/backups/))
- File uploads (`POST /_/upload`) and [exporting a document as a zip](https://hyperclaylocal.com/docs/export/)
- The [Data API](https://hyperclaylocal.com/docs/data-api/), [the wire](https://hyperclaylocal.com/docs/programs/), and [live updates between local tabs](https://hyperclaylocal.com/docs/live-updates/)
- [Tailwind on save](https://hyperclaylocal.com/docs/tailwind/), which compiles from bundled dependencies and never fetches packages from the internet
- Your profile in files (**Use my profile in files** caches your hyperclay.com public profile for offline use when connected, or uses a local display name when disconnected; see [Settings and profile](https://hyperclaylocal.com/docs/settings/))

## What connects to the internet

Only features that require a remote server make network requests:

1. **Update checks**: Ten seconds after launch, and every 6 hours after that, Hyperclay Local checks `https://local.hyperclay.com/updates/stable` (or `https://local.hyperclay.com/release-info.json` on installs that cannot replace themselves in place). Writable installs download the update in the background and show **Restart to update to** `v<version>` in the popover; link-only installs show **Update** `v<version>` **available** (see [Updates](https://hyperclaylocal.com/docs/updates/)).
2. **Cloud sync**: When you have connected a sync key and enabled sync, the app connects to `hyperclay.com` to sync your personal and team folders (see [Sync with hyperclay.com](https://hyperclaylocal.com/docs/guide/sync/)).
3. **AI editing**: When you press `⌘J` (`Ctrl+J` on Windows and Linux) and send an edit request, your local agent CLI (such as Claude Code or Codex) sends that prompt to its model provider (see [AI editing](https://hyperclaylocal.com/docs/guide/ai-editing/)).

Both the update check and cloud sync fail quietly when you are offline.

## ClayJS scripts and fonts

Documents opened inside [the workspace window](https://hyperclaylocal.com/docs/guide/workspace/) load their editor offline from a runtime bundled with the app. If you open a document in an external browser tab or share the file standalone and its `<script>` tag loads [ClayJS](https://clayjs.com/docs/) from a remote CDN, that script request requires a network connection. For a standalone file that works offline in any browser, use the [ClayJS offline build](https://clayjs.com/docs/offline/) or vendor the library beside the HTML file.

The fallback directory listing page links one webfont from `https://hyperclay.com/public/fonts/BerkeleyMonoVariable-Regular.woff2`. It declares a full system monospace fallback stack and `font-display: swap`, so offline the directory listing renders in a system monospace font and nothing else changes. The tray popover uses a copy of the same font bundled inside the app.

## Automatic sync recovery

Sync resumes by itself across offline periods and app restarts. If you launch Hyperclay Local without a network connection, synced folders start in the `offline` state (**Can't reach hyperclay.com. Changes sync when you're back online.**) instead of failing, and keep serving locally (see [Offline, paused and viewer states](https://hyperclaylocal.com/docs/sync-states/)). When your connection returns, or on the next launch when online, the sync engine reconciles whatever changed on both sides while it was offline.
