dshbase

Plugin directory / Developer / dsh-plugin-ftp-server

dsh-plugin-ftp-server

Unverified YinjiangCN

✓ Actively maintained Builds on 5 official DSH packages

View on GitHub ↗ ← Back to plugin directory

1Stars
0Forks
0Open issues
Language
2026-08-15Last push
Cross-platformPlatform

What it does

Configurable FTP file server for DeepSeek Harness with a browser settings panel (zero-dependency FTP core).

Our take
Unverified — not yet verified

Configurable FTP file server for DeepSeek Harness with a browser settings panel (zero-dependency FTP core). Not yet verified — install and test it yourself.

“Unverified” means our automated CI has not yet installed this plugin. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

Plugin author? Get the “Verified” label — submit your own evidence (screenshots, logs, or a short demo) and we'll review and flip the badge.

Submit verification evidence ↗

README

dsh-plugin-ftp-server

Run a configurable FTP file server inside DeepSeek Harness, managed from a browser settings panel. Host any directory over plain FTP — browse, upload, download, rename and delete files with any FTP client.

⚠️ Plain FTP has no TLS: credentials and data travel in cleartext. Use it on trusted networks only.

Features

  • Zero-dependency FTP server core (pure Node built-ins), spawned as a child process of the harness
  • Full command support: USER/PASS, PWD/CWD/CDUP, LIST/NLST/MLSD, RETR/STOR/APPE/STOU, DELE/MKD/RMD, RNFR/RNTO, SIZE/MDTM/REST (resume), PASV/EPSV/PORT, FEAT/STAT/ABOR/NOOP
  • Chrooted to the shared root — path escape (..) is blocked, and the root itself cannot be deleted or renamed
  • Single account + password, or anonymous mode
  • Browser panel (Settings → FTP 服务): configure host/port/root/credentials, start/stop, live status (PID, uptime), shared-root listing and server log
  • Idle timeout (180 s), crash detection, automatic child-process cleanup when the plugin is stopped

Install

dsh plugin --profile web add github:YinjiangCN/dsh-plugin-ftp-server

Then restart dsh. Open Settings → FTP 服务, fill in the form and click 启动服务.

Usage

Field Default Meaning
监听地址 (host) 0.0.0.0 Bind address
端口 (port) 2121 Control port
共享根目录 (root) workspace/ftp-root Directory shared over FTP (created on start)
用户名 (user) ftp Login account (ignored in anonymous mode)
密码 (pass) (empty) Login password
允许匿名 (anonymous) off Allow anonymous login

Clients connect with ftp://<user>@<host>:<port>. The password is kept in memory only; it is passed as a child-process argument and never written to disk.

Security notes

  • Do not set 共享根目录 to / unless you really want to share the whole filesystem — anyone with the credentials can read/modify every file (the server runs with the harness user's privileges).
  • Plain FTP is unencrypted; prefer an internal/trusted network.
  • The server supports one account; for multiple users run multiple instances on different ports.

Development

lib/index.js      host half — FTP process management + Typert Remote service `ftpServer`
lib/client.js     browser half — settings panel (module-loader bundle)
lib/ftp-server.js standalone FTP server (spawned by the host half)
cordis.patch.yml  loader patch mounting the host half

The host half registers the ftpServer Remote service; the panel calls status/start/stop/listRoot through the Typert Gateway (host-side SRC-mode discovery with hand-written strict client descriptors).

License

MIT

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-plugin-ftp-server for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:YinjiangCN/dsh-plugin-ftp-server

Headless (CLI) profile:

dsh plugin --profile headless add github:YinjiangCN/dsh-plugin-ftp-server

Test report

Not yet L3-verified — see failure note below if we already ran it.

Status: pending · last test 2026-08-27
Note: 验证: runtime-fail Browse all pending failures →
Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in Developer

Browse all 7795 plugins →