
Parallel Findall
Turn a natural-language entity query into a structured list of companies, people, or products via parallel-cli instead of loose web snippets.
Install
npx skills add https://github.com/parallel-web/parallel-agent-skills --skill parallel-findallWhat is this skill?
- Returns structured entity lists from objectives like “find all X that…”
- Explicit routing: FindAll vs parallel-web-search vs parallel-deep-research
- Requires parallel-cli ≥ 0.6.0 with findall entity-search
- Shell-only integration via Bash(parallel-cli:*)
- User-invocable with natural-language argument hint
Adoption & trust: 6.9k installs on skills.sh; 56 GitHub stars; 1/3 security scanners passed (skills.sh audits).
Recommended Skills
Journey fit
Canonical shelf is Idea because founders use FindAll first for market maps, competitor sets, and lead lists before committing to build. Research subphase fits structured discovery of entities matching criteria, distinct from narrative deep-research or generic webpage search.
Common Questions / FAQ
Is Parallel Findall safe to install?
skills.sh reports 1 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Parallel Findall
# FindAll: Entity Discovery Find: $ARGUMENTS > Requires `parallel-cli` ≥ 0.6.0 (the `findall entity-search` command was added in 0.6.0; the broader `findall` command was added in 0.3.0). If either errors with `no such command` or similar, tell the user to run `parallel-cli update` (or `pipx upgrade parallel-web-tools` if installed via pipx), then retry. ## When to use this skill Use FindAll when the user wants a **structured list of entities** matching a description, not webpages or a narrative answer. | User asks for… | Use | |---|---| | "Find all X that…" / "List every Y…" | **parallel-findall** (this skill) | | Webpage results / quick answers / current info | parallel-web-search | | Narrative report / analysis / "research X" | parallel-deep-research | | Add fields to a list you already have | parallel-data-enrichment | If the user already has a list and just wants to add fields, this is the wrong skill — use parallel-data-enrichment. FindAll has two paths: the comprehensive, asynchronous `findall run` (Steps 1–2) and the fast, synchronous `entity-search` (final section). - **`entity-search`** — very fast (few seconds), only supports people or company search. Supports a more limited set of query arguments. - **`findall run`** — Provides comprehensive coverage, complex, match conditions, exclusions, enrichment, citations, or a type other than people/companies. If it's ambiguous, ask the user which they'd prefer and offer a default. Remember entity search limits: companies/people only, no exclusions/generator/enrichment, and `entity_set_id` can't be used with `enrich`/`extend` (re-run via `findall run` if needed). Switch to `entity-search` **only when the user explicitly signals they want a fast, throwaway list**. `entity-search` is also strictly more limited: it only supports `companies` or `people` entity types, no exclusions, no generator choice, no enrichment, and the returned `entity_set_id` is **not** usable with `findall enrich`/`extend`. If you start there and the user later asks to enrich or extend, you'll have to re-run via `findall run`. ## Step 1: Start the run ```bash parallel-cli findall run "$ARGUMENTS" --no-wait --json ``` Defaults: generator `core`, match limit `10`. Stick with `core` unless the user has a reason to escalate: - `-g pro` — most thorough generator (slower, costlier). Use when the user asks for "comprehensive" coverage or matches are sparse on `core` - `-g base` — fastest, but **markedly lower quality**. Often returns query-echo entities (e.g., directory pages, the literal query string), entries with no URL, or category placeholders. Only use if the user explicitly asks for a quick scan and accepts noise; otherwise prefer `core` - `-n 50` — return up to 50 matched entities (5–1000 allowed) If the user wants to exclude known entities (e.g., "find competitors but not Google or OpenAI"): ```bash parallel-cli findall run "$ARGUMENTS" --no-wait --json \ --exclude '[{"name":"Google","url":"google.com"},{"name":"OpenAI","url":"openai.com"}]' ``` Tip — preview the schema first if the objective is ambiguous: `parallel-cli findall ingest "$ARGUMENTS" --json` shows the entity type and match conditions the API inferred, so you can refine wording before paying for a run. Parse the JSON