Search
Search runs on a full-text index and covers entry names (files and folders), project names, and people (principal names). It's a metadata search, not a content search - it finds things by name, not by what's inside a file. Two scoped exceptions: the public Explore page also matches project descriptions, topics, paths and README text, and the dashboard omnibox searches RFI and submittal title and body text with a project selected (see below).
Where to search from#
Dashboard omnibox. The global search bar in the web dashboard is the fastest way to jump to a file, project, or person by name. With a project selected it also searches that project's RFIs and submittals by title and body - see RFIs & Submittals - filtered to the ones you actually have read access to, the same as everything else it returns; on org-level views (no project selected) it returns name matches only.
Desktop App. The file picker's search box searches the current project's files and folders by name as you type - the quickest way to jump to a file while you're already working in the app. If the hub can't be reached, it falls back to the local cache and labels the results "from this machine's cache; hub search is unavailable" so a thin result is explained rather than mysterious.
swarmfile-search CLI. A standalone binary for searching from a terminal or a script. Give it plain text and it searches across entries, projects, and people - an org-wide query (no --project) returns projects and people only; file and folder hits need a project scope. Cap results with --limit, or force it to search against the local cache or the hub with --local-only / --remote. Full flag reference: swarmfile-search. The standalone binary stays name-only - to search RFIs and submittals from a terminal, use swarmfile rfi search against a mounted project.
Public projects on Explore#
Search on the public Explore page works a little differently: it matches public projects by name, description, topics, org, slug, file paths, and README text, so visitors can find a project by something they remember from inside it. It only ever returns projects that are deliberately published as public.
How it resolves results#
The swarmfile-search CLI resolves against its local metadata cache first and falls back to the hub, so it keeps working with a flaky or dropped connection to the extent your cache is already populated - a project you've browsed recently stays searchable offline, while one you've never opened won't show up until the hub is reachable again.
Deferred renames show under their projected name. If a rename or move hasn't been confirmed by the hub yet - yours, or one your engine received from a teammate - the local-cache path searches it under the new name: an ancestor rename reprojects full paths, and a match on the old confirmed name is shown under the projected one. The dashboard omnibox searches the hub directly, so it sees confirmed names only. See Working with Files.
The dashboard omnibox always searches the hub directly: it runs in your browser, which has no local cache to fall back on, so a slow result means the request is still in flight rather than the index being broken. The panel says "Searching the hub…" while a query runs and labels the results as coming from the hub.