Managing apps

Once an app is published, you can list, inspect, disable, delete, renew, and password-protect it — all from the CLI or your AI tool via the MCP server.

Listing apps

shell
deloc list                       # First 25 active apps
deloc list --status disabled     # Only disabled apps
deloc list --status expired      # Free-tier apps past their window
deloc list --status all          # Everything regardless of status
deloc list --all                 # Page through everything

Output includes app name, slug, URL, status, size, and (for free tier) days until expiry. In an AI tool, ask "show me my Deloc apps" — the MCP server calls list_apps.

Inspecting an app

shell
deloc status my-dashboard
deloc open my-dashboard          # Open in default browser

deloc status prints:

  • URL (public or {username}.deloc.dev/{slug})
  • Status: active, disabled, expired, or deleted
  • Visibility: public, password-protected, or domain-restricted
  • File count, total size
  • Bandwidth used this month, bandwidth reset date
  • Expiry date (free tier) or "never expires"

Disable, enable, delete

disable

Takes the app offline. Viewers see a 404-style placeholder. Files stay in storage and the app still counts toward your active-app cap until you delete it.

shell
deloc disable my-dashboard

enable

Brings a disabled app back online at its original URL. No new deploy needed.

shell
deloc enable my-dashboard

delete

Permanent. Confirms first. Frees the storage and drops the app from your count.

shell
deloc delete my-dashboard
Delete is irreversible
Once deleted, the app's files are removed from storage and the slug becomes available for anyone to claim. If you're unsure, disable first and come back to delete later.

Free-tier expiry and renewal

Free-tier apps auto-expire 30 days after their last deploy. The goal is to keep the free tier useful for sharing work without filling storage indefinitely.

  • Expired apps serve a placeholder page with a renewal CTA.
  • Expired apps don't count toward your 3-app active-app cap.
  • Files are retained for another 30 days after expiry in case you upgrade or renew.
  • After 60 total days (30 active + 30 expired), files are permanently deleted.
shell
deloc renew my-dashboard

Renewing resets expires_at to now + 30 days. You can renew any number of times while on the free tier. Upgrade to Pro ($10/mo) to remove the expiry altogether.

Password protection

Set, change, or remove at any time — no redeploy required.

shell
deloc password my-dashboard              # Prompts for password, or generates
deloc password my-dashboard --remove     # Make public

Passwords are hashed with bcrypt before storage. The viewer-side flow runs at the Cloudflare Worker: the Worker checks for a valid session cookie, serves a gate if missing, validates the submitted password against the stored hash, and issues a session cookie that persists for the browser session.