Bundle
dsh-vidfetch
dsh-vidfetch — a DeepSeek Harness plugin to download videos.
- Source
- anaksunamu
- License
- MIT
- Updated
- Updated 2 days ago
Readme
# dsh-vidfetch
Give your DeepSeek Harness agent the ability to download a video straight from a URL.
## What it does
Registers a single tool, `fetch_video`, that the model can call to download the main video from any URL.
- Downloads the best available audio+video stream into the directory the agent specifies.
- Returns `ok` plus the list of files it wrote. Or a short error cause if the URL is unsupported.
- No configuration file or extra setup on the agent side: just point `dir` somewhere writable.
## Installation
```sh
dsh plugin --profile web add dsh-vidfetch
```
From this repository:
```sh
git clone https://github.com/anaksunamu/dsh-vidfetch.git
npm install --prefix ./dsh-vidfetch
npm run build --prefix ./dsh-vidfetc
dsh plugin --profile web add ./dsh-vidfetch
```
## Usage
The model calls `fetch_video` with two required parameters:
| Parameter | Type | Description |
| --- | --- | --- |
| `url` | string | The URL where the video is located. |
| `dir` | string | Output directory for the downloaded file. |
Example call the agent makes:
```json
{ "url": "https://example.com/watch/abc123", "dir": "~/downloads" }
```
Output:
```json
{ "message": "ok", "files": ["downloads/video.mp4"] }
```
On failure, `message` contains a short error cause and `files` is empty:
```json
{ "message": "Unsupported URL", "files": [] }
```
## Requirements
- **DSH**: tested against the `0.1.1-rc.x` line.
- **Node**: `^22.19.0 || >=24.0.0`.
- **[yt-dlp](https://github.com/yt-dlp/yt-dlp)**: provided by dependency.
## Permissions & network
Clear the risk explicitly before trusting an agent tool:
- **Outbound network**: each call fetches whatever URL the model passes. The plugin sends no telemetry and contacts no external service of its own.
- **Filesystem write**: files land in the `dir` the model supplies (default: current working directory if empty). The model decides the path — point `dir` at a sandboxed or scratch folder if you don't want arbitrary writes.
- **Subprocess**: runs a `yt-dlp` process per call; it inherits the host's environment.
- **Untrusted content warning**: videos fetched from random URLs are untrusted files. Don't pipe them straight into execution pipelines.
- **No API key required** by this plugin.
## License & listing
- **License**: [MIT](LICENSE.md).
- **Not affiliated** with DeepSeek AI.
- Compatibility notes above are for DSH preview `0.1.1-rc.x`.
Install
dsh plugin --profile web add github:anaksunamu/dsh-vidfetch
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-vidfetch from the hub
- This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.