npx skills add ...
npx skills add beclab/olares --skill olares-knowledge
Olares Knowledge via olares-cli knowledge — manage download-server URL, yt-dlp, aria2, torrent, HuggingFace, and Wise download tasks: create/list/inspect/pause/resume/cancel/remove, prefs, sync, and file probes. Requires Olares 1.12.7+. Not for installer download or copying a Drive file with files download.
npx skills add beclab/olares --skill olares-knowledge
Shared front door: load
../olares-shared/SKILL.mdfor suite routing, active-profile selection, platform entry points, and the auth proceed/stop gate. Load its auth reference only when login, profile switching, token storage, or auth recovery is actually needed.
Use olares-cli knowledge download <verb> --help for syntax.
Not top-level
download(installer packages:download component/wizard/check). Notfiles download(pull a Drive/Sync file) — that lives inolares-files.
All verbs require Olares 1.12.7+ because the Settings download edge and provider are both required. If the version cannot be established, follow the shared profile/auth gate before deciding that an upgrade is needed.
| Task | Read | First command |
|---|---|---|
| Download a URL and know when it lands | creating a task | olares-cli knowledge download create <url> -o json, then download wait <id> |
| See what is downloading now | this file | olares-cli knowledge download list -o json |
| Find out which qualities a link offers before taking one | provider/quality inspection | olares-cli knowledge download inspect <url> -o json |
| Check whether something is already on disk | URL vs resource-path decisions | olares-cli knowledge download file exists <path> -o json |
| Family | Verbs | Read when triggered |
|---|---|---|
| start one | create, info, wait | create and follow a task |
| manage the ones that exist | list, pause, resume, cancel, remove | listing, pausing and retiring tasks |
| probe + prefs | inspect, prefs get, prefs set | provider/quality inspection |
| sync | unfinished, sync | cursor and drain semantics |
| torrent | torrent inspect, stats, peers, files, seed stop/resume; torrent create | torrent selection and seeding |
| file tools | file exists, file remove | URL vs resource-path decisions |
| settings | settings get, settings set | global download-server settings |
info <id> every few seconds rather than blocking a turn on create --wait, which is there for scripts that want one call. Either way the status is the only terminality input: waiting_to_move / moving are still in progress, and error is a failure even when will_auto_retry says a server sweep may pick the row up again.--name off unless the user asked for a specific filename, and never build one out of a URL path — a name sent on create is pinned to the row for good. Magnet links, --torrent uploads and HuggingFace repos reject the flag outright: those names come from torrent metadata or the repo id.(n) suffix; they do not reuse or block an existing row. Create sends Idempotency-Key only to collapse transport retries of one attempt — not URL dedup.waiting or downloading (otherwise 400). Resume, cancel, and remove return 409 while the task is in the yt-dlp mover phase (waiting_to_move / moving) — wait and retry; do not treat pause the same way.inspect is advisory: provider/quality probing may fail while a create still works. Report that uncertainty instead of declaring the URL undownloadable.list / info to check; the CLI does not detect or block duplicates.file remove takes a download-server resource path, not an arbitrary local filesystem path.olares-settings under settings integration cookie. The hand-off does need the user, though — the cookies.txt is their own browser export, so ask for it rather than hunting for a file. See provider/quality inspection for the signals and the full flow.