Skip to content

[FEATURE]: file upload, download and delete in the file manager #39878

Closed as not planned

Description

@valyc0

Feature request: file upload, download and delete in the file manager

  • I have checked existing issues and feature requests and this is not a duplicate.

Problem

The web app's file browser currently only supports reading, listing and finding files. There is no way to add a file to a project from the browser, download a file to the local machine, or remove a file from the tree. Users have to resort to the terminal or an external editor.

Proposed solution

Add upload, download and delete actions across the file manager surfaces:

  • Upload a file to the project directory from the session header, the file browser empty state, and the file manager panel (button picker + drag & drop).
  • Download any file from the file tree, the search-results list, and the file manager panel.
  • Delete a file or directory with an inline confirmation dialog.

Server/API

New endpoints in the server.fs group:

  • GET /api/fs/download/* — streams a file as an attachment (raw bytes, so it is excluded from the generated client like fs.read).
  • POST /api/fs/upload?path=...&location[directory]=... — base64 payload, returns 204.
  • POST /api/fs/delete?path=...&location[directory]=... — returns 204.

Path containment is enforced on the server for all three operations (including symlink resolution for write/remove).

Client

The vendored SDK does not expose these operations yet, so the app calls the endpoints directly through a shared helper (packages/app/src/utils/file-transfer.ts), with Basic auth for remote servers and i18n labels for all supported locales.

Notes

  • New i18n keys session.files.* added and translated in all 18 locales.
  • Generated client files updated via bun run generate (the files group now exposes upload/delete).

Activity

  1. changed the title [-]feat: file upload, download and delete in the file manager[/-] [+][FEATURE]: file upload, download and delete in the file manager[/+] on Jul 31, 2026
  2. github-actions commented on Jul 31, 2026

    @github-actions
    Contributor

    Thanks for updating the issue! It now follows the contributing guidelines — the title is correctly formatted with [FEATURE]: and all required fields are filled in. We appreciate the detailed write-up!

  3. github-actions commented on Sep 30, 2026

    @github-actions
    Contributor

    To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions