picoclaw/web/frontend/src/components
zeed zhao 6ea364e67d
feat(web): protect launcher dashboard with token and SPA login (#1953)
Add token-based authentication for the Launcher's embedded Web Dashboard.

- Ephemeral token generated in-memory each run (or via PICOCLAW_LAUNCHER_TOKEN env var)
- HMAC-SHA256 session cookie (HttpOnly, SameSite=Lax, Secure when HTTPS)
- Bearer token support for API/script access
- Rate limiting on login (10 attempts/IP/min)
- Referrer-Policy: no-referrer on all responses
- POST-only logout with JSON content-type (CSRF-safe)
- System tray "Copy dashboard token" action
- Login page shows contextual help (console/tray/log file path)
- Path traversal protection via path.Clean
- X-Forwarded-Host/Port/Proto support for reverse proxy deployments
- Full i18n support (English, Chinese)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-29 13:11:43 +08:00
..
channels feat(web): add WeCom QR binding flow to channel settings (#1994) 2026-03-25 16:15:04 +08:00
chat fix(chat): add break-words class to user message for better text wrapping 2026-03-27 17:11:19 +08:00
config feat(web): protect launcher dashboard with token and SPA login (#1953) 2026-03-29 13:11:43 +08:00
credentials feat(web): migrate launcher to modular web frontend/backend and improve management UX (#1275) 2026-03-09 19:42:03 +08:00
logs fix(web): render ansi logs with wrapped lines (#1425) 2026-03-12 19:12:19 +08:00
models Feature/add mimo provider (#1987) 2026-03-25 23:29:44 +08:00
skills feat: render mixed Markdown+HTML in assistant messages and skills (#1900) 2026-03-23 17:25:27 +08:00
tools fix: unified restart required (#1978) 2026-03-28 22:13:50 +08:00
ui feat(web): migrate launcher to modular web frontend/backend and improve management UX (#1275) 2026-03-09 19:42:03 +08:00
app-header.tsx feat: add web gateway hot reload and polling state sync (#1684) 2026-03-17 18:46:00 +08:00
app-layout.tsx feat(web): migrate launcher to modular web frontend/backend and improve management UX (#1275) 2026-03-09 19:42:03 +08:00
app-sidebar.tsx feat(web): improve Weixin channel binding flow (#1968) 2026-03-24 20:33:32 +08:00
page-header.tsx feat(web): add restart-required state for default model changes (#1499) 2026-03-13 16:30:59 +08:00
secret-placeholder.ts fix(chat): avoid full secret exposure for 7-char secrets (#1942) 2026-03-24 11:26:20 +08:00
shared-form.tsx fix(web): render ansi logs with wrapped lines (#1425) 2026-03-12 19:12:19 +08:00