Discover entities matching a natural-language description. FindAll is for "give me a list of things that match this criteria" tasks — companies, people, products, papers, anything enumerable. Returns structured entities, not webpages or prose.
Trigger this skill when the user asks for:
Use Search for "what is X?"; use FindAll for "list every X that matches Y".
bash
parallel-cli findall run "AI startups that raised Series A in 2026" --json
bash
parallel-cli findall run "<objective>" [options]
parallel-cli findall status frun_xxx --json
parallel-cli findall poll frun_xxx --json
parallel-cli findall result frun_xxx --json
parallel-cli findall extend frun_xxx <n> --json
parallel-cli findall cancel frun_xxx
FlagDescription-g, --generatorGenerator tier: preview, base, core (default), pro``-n, --match-limitMax matched candidates, 5-1000 (default: 10)--exclude '<json>'Entities to exclude (JSON array of {name, url})--no-waitReturn immediately with frun_xxx; poll separately--dry-runPreview the schema FindAll will use, without creating a run--jsonOutput as JSON-o, --output <file>Save full result to file
Basic discovery:
bash
parallel-cli findall run "Find roofing companies in Charlotte NC" --json
Larger result set with core generator:
bash
parallel-cli findall run "AI startups that raised Series A in 2026" -n 50 --json
pro tier for deeper coverage:
bash
parallel-cli findall run "YC W24 dev tools companies" -g pro -n 100 --json
Preview the schema before running:
bash
parallel-cli findall run "Find Series B fintechs in Latin America" --dry-run --json
Exclude already-known entities:
bash
parallel-cli findall run "Find AI startups in healthcare" \
--exclude '[{"name": "Hippocratic AI", "url": "hippocraticai.com"}]' \
--json
Async — launch then poll separately:
bash
parallel-cli findall run "AI startups that raised Series A in 2026" --no-wait --json
# returns frun_xxx
parallel-cli findall status frun_xxx --json
parallel-cli findall poll frun_xxx --json # waits and returns result
Extend an existing run with more matches:
bash
parallel-cli findall extend frun_xxx 50 --json
Cancel a running job:
bash
parallel-cli findall cancel frun_xxx
1-3 sentences describing:
preview — fast scan, low coverage. Useful only for quick sanity checks.base — broad and fast, but noisy (query echoes, no-URL entries, category placeholders). Use only when the user explicitly accepts noise.core (default) — best balance of coverage and quality.pro — deeper coverage, slower. Use for high-stakes discovery where missing matches is costly.Pick the smallest -n that satisfies the user's intent. Default 10 is fine for "show me a few"; bump to 50–100 for "list every X". Max 1000.
findall run returns JSON with:
findall_id — frun_xxxstatus — running / completed / cancelled / failedschema — the JSON Schema FindAll built for the matchesmatches[] — array of entities, each with fields per the schema (typically name, url, plus skill-specific extracted fields)When relaying matches to the user:
url, query-echo names, or category placeholders. Especially important on -g base.findall_id so the user can extend or cancel later.For large result sets ( -n ≥ 50), save and use sessions_spawn:
bash
parallel-cli findall run "<objective>" -n 100 --json -o /tmp/findall-<topic>.json
Then spawn a sub-agent:
json
{
"tool": "sessions_spawn",
"task": "Read /tmp/findall-<topic>.json and produce a deduplicated table grouped by category.",
"label": "findall-summary"
}
Exit CodeMeaning0Success1Unexpected error (network, parse)2Invalid arguments3API error (non-2xx)
Requires parallel-cli (installed and authenticated). If parallel-cli --version fails, or if a later command fails with an authentication error, tell the user to see https://docs.parallel.ai/integrations/cli and stop.