droplit
- Visibility
- public
- Deploys
- 1
- Build Number
- ba77a62e
- Updated
- Jun 14, 2026
Overview
droplit is a tiny single-domain hosting agent. Operators drop HTML or
markdown files into the admin UI; on each upload, Claude derives a short
URL slug (e.g. trip-itinerary), a page title, and a one-line description
from the file contents. Markdown is converted to HTML at upload time and
wrapped in a minimal styled template. Each page is stored in Redis and
served at /<slug>/.
The chat agent's only job is to help visitors discover what's hosted: it
calls the list_pages tool to fetch the current catalog and replies with
the URL, title, and one-line description for each page.
Usage
Publishing pages
Sign into /admin with ADMIN_PASSWORD. Drag-and-drop one or more
.html, .htm, .md, or .markdown files into the upload area. For
each file:
- Claude reads the contents and picks a kebab-case slug, a page title, and a one-line description.
- If the chosen slug collides with an existing page, a numeric suffix
is appended (
my-page→my-page-2). - The page is stored in Redis and immediately reachable at
/<slug>/.
Existing pages can be deleted from the same view. Changes propagate to the agent's in-process cache immediately via Redis pub/sub — no restart required.
A bundled welcome page is seeded on first boot if Redis is empty.
Browsing pages
GET /<slug>/andGET /<slug>/index.htmlserve the stored HTML.GET /<slug>301-redirects to/<slug>/so relative links work.- Reserved prefixes (
/admin,/api,/healthz) can never be used as slugs.
Asking the chat agent what's available
In any messaging adapter (web playground, Slack, etc.), ask the agent
what's hosted. It will call list_pages and reply with bulleted entries
that include the path, title, and description.
Inputs
| Input | Required | Description |
|---|---|---|
ADMIN_PASSWORD | yes | Password gating the /admin upload UI |
SESSION_SECRET | yes | HMAC secret used to sign admin session cookies |
Limitations
- Single-replica safe; multi-replica fine. Pages live in Redis, so any replica can serve any page. The in-process cache is refreshed via pub/sub.
- Uploads are capped at 1 MiB per file. Anything larger is rejected.
- Session storage is ephemeral. Admin sessions are HMAC-signed
cookies — they survive process restarts only if
SESSION_SECRETis set to a stable value (otherwise an ephemeral secret is generated and sessions reset on restart). - Page content is served as-is. The admin uploads HTML directly; the host does not sanitize it. Only trust people you've given the admin password to.
- Visibility
- public
- Deploys
- 1
- Build Number
- ba77a62e
- Updated
- Jun 14, 2026