olares-search
Olares search via olares-cli search — the Desktop global search over Drive files, Sync (Seafile) libraries, Google Drive, Dropbox, Wise/Knowledge, and installed applications, with paging and JSON output. On Olares 1.12.7+ one `search drive` (alias `search files`) covers all four file sources. Use for Olares search, full-text search, find a file by content, Text Search, global search, search apps, search google drive, search dropbox, search sync, search wise.
How do I install this agent skill?
npx skills add https://github.com/beclab/olares --skill olares-searchIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill provides global search capabilities using the Olares CLI to index and query local and cloud-based files. While the skill correctly implements read-only operations and mandates user confirmation for configuration changes, it is inherently susceptible to indirect prompt injection as it processes content from untrusted external sources like Google Drive and Dropbox.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
What does this agent skill do?
search (Desktop global search)
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 search <subcommand> --help for syntax.
When to use
- Find a file or knowledge item by name/content across Drive, Sync, Google Drive, Dropbox, or Wise. One
search drivecovers all four file sources on Olares 1.12.7+. - Find an installed application by visible title.
Mental model:
search drive/search sync/search knowledgeanswer "which file CONTAINS this text" by querying the pre-built per-user index.search appanswers "which installed app matches this name". It is not lifecycle inventory (market list --mine/market status) or resource ranking (dashboard applications). To LIST or READ a known path, useolares-files(files ls/files cat/files download).
Fast paths
| Task | Read | First command |
|---|---|---|
| Find a file by name or content | this file | olares-cli search drive "quarterly report" -o json |
| Find an installed app by its title | this file | olares-cli search app music -o json |
| Find something in Wise | this file | olares-cli search knowledge "retrieval" -o json |
| Tell "not indexed" from "not there" | this file, then olares-files for the known path | olares-cli settings search status -o json |
Verb index
| Subcommand | Purpose | Read when triggered |
|---|---|---|
drive (files) | One search across Drive, Sync, Google Drive, and Dropbox | index coverage — what the index reaches decides whether a miss means anything |
sync | Sync (Seafile) libraries only | indexing — a narrowed view of what drive already covers |
knowledge (wise) | Wise/Knowledge content search | indexing — Wise owns this index; needs Olares 1.12.7+ |
app | Visible installed-app title search | nothing further; it is a title match, not lifecycle inventory |
There is no separate gdrive or dropbox verb: on Olares 1.12.7+ drive searches files_v2, google_drive, dropbox, and seafile in one asynchronous federated request, mirroring the Desktop dialog's single "Files" entry. sync restricts that same channel to seafile. Olares 1.12.6 and older have no federated channel: there drive covers local Drive files only and sync falls back to /api/search/sync, so on those versions both commands are needed to cover what one covers on 1.12.7+.
Cloud result locations such as google/<account>/... and dropbox/<account>/... are valid files paths for files ls, files cat, or files download. A Sync location reads /sync/<repo_id>/... and is annotated with the library's display name — files ls sync/<repo_id>/ takes the id, not the name.
Google Drive and Dropbox results require Olares 1.12.7+ and a bound integration: an unbound account comes back as a failed source rather than an error, so the job still completes and the other sources' results are printed.
Indexing (drive / sync / cloud / knowledge)
Indexing is asynchronous. A miss does not prove absence. For a known path, verify with files ls; inspect extraction failures and index progress with settings search status. Rebuild only after confirming coverage and obtaining approval.
Google Drive and Dropbox use provider-side crawling after account binding. Check whether an account is actually bound with olares-cli settings integration accounts list-by-type google|dropbox: an empty list is what distinguishes "no integration" from "indexed but no match", and a cloud search cannot tell you which one you hit. Binding itself happens in LarePass → Settings → Integration, not from the CLI. Wise owns Knowledge indexing.
Index coverage (drive only)
- Filename indexing is broad, subject to exclude patterns.
- Full-content indexing defaults to Drive
/Documents/; other directories requiresettings search dirs add. - Supported formats can still fail extraction because they are encrypted, corrupt, or oversized. Inspect
settings search status -o json. - Exclude-pattern management remains in the Settings UI; do not invent a CLI verb for it.
Safety and escalation
- Search is read-only.
settings search dirs add/rmandrebuildare separate configuration mutations and need confirmation. - Do not treat
no resultsas proof that a file or app does not exist. Distinguish indexing delay, coverage, extraction failure, integration absence, visibility, and a genuine miss. - Stop if the user asks to bind an integration or rebuild an index without authorizing that separate action; route to
olares-settings.
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/beclab/olares/olares-search">View olares-search on skillZs</a>