agentbbs/internal/files
Anthony Ettinger cddd9819cc feat(files): web file browser at files.<host> with webmail-password login
Adds a browser-based file manager so members can use their files without an
SSH key. Served on a loopback HTTP server (AGENTBBS_FILES_WEB_ADDR, default
127.0.0.1:8092) that Caddy fronts at files.<host>. Members sign in with their
webmail username + password, verified against the Mailu IMAP backend
(mailbox.VerifyLogin), and browse the same virtual /me + /public areas as SFTP
— no home directory is ever exposed. Upload/download/mkdir/delete with the
private-area quota enforced; reuses internal/files confinement (fs.go).
setup.sh renders the files.<DOMAIN> Caddy site + env knob. Unit tests cover
the auth gate and an upload/list/download/delete round trip.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 14:09:18 +00:00
..
admin.go feat(files): SFTP member storage — private workspaces + shared public area + mgmt TUI 2026-06-23 09:35:04 +00:00
backend.go feat(files): SFTP member storage — private workspaces + shared public area + mgmt TUI 2026-06-23 09:35:04 +00:00
e2e_test.go feat(files): SFTP member storage — private workspaces + shared public area + mgmt TUI 2026-06-23 09:35:04 +00:00
files_test.go feat(files): SFTP member storage — private workspaces + shared public area + mgmt TUI 2026-06-23 09:35:04 +00:00
fs.go feat(files): web file browser at files.<host> with webmail-password login 2026-06-23 14:09:18 +00:00
server.go feat(files): SFTP member storage — private workspaces + shared public area + mgmt TUI 2026-06-23 09:35:04 +00:00
tui.go feat(files): SFTP member storage — private workspaces + shared public area + mgmt TUI 2026-06-23 09:35:04 +00:00
web.go feat(files): web file browser at files.<host> with webmail-password login 2026-06-23 14:09:18 +00:00
web_test.go feat(files): web file browser at files.<host> with webmail-password login 2026-06-23 14:09:18 +00:00