# Faster apps: warm servers, viewer identity, and deep links

> App actions run on a warm per-app server, handlers know who is using the app, and every page inside an app gets its own shareable URL.

Jul 20, 2026. Topics: Apps. https://www.generalinput.com/changelog/2026-07-20-apps-warm-servers-viewer-identity

July reworked how apps run and how people move through them. Actions respond faster because they hit a server that's already up, app code can behave differently for different members, and any page inside an app can be linked to directly. See how apps fit into [agents inside your apps](/blog/agents-inside-your-apps).

### How it works

- **Warm per-app servers.** Each app gets one warm sandbox server shared by everyone using it, instead of a fresh sandbox per action. It starts on the first action, stops after five minutes idle, picks up new versions in place, and is replaced on any failure.
- **Viewer identity.** Handlers still run with the app owner's connections, but every call now knows who is using the app, so agents can build rules like "only I can delete" or "reps see their own accounts." Checks are enforced in server code, never by hiding a button.
- **Browser bar and deep links.** Apps get back, forward, and home controls, and the current page is reflected in the dashboard URL, so a copied link opens on the same page with the same filters.
- **Stays signed in.** Long-open apps refresh their session in place, without reloading or losing state.
- **Connections first.** An app with unconnected required integrations shows a connect screen instead of loading into errors.

### Also shipped

- Handlers can stop long requests early when the person closes the page.