parallel-data-enrichment

작성자: parallel-web

Bulk enrichment of company, people, or product data with web-sourced fields like CEO names, funding, and contact info. Accepts inline JSON data or CSV files; outputs enriched results to CSV Runs asynchronously with progress tracking via monitoring URL and polling commands Requires parallel-cli tool and internet access; handles large datasets with configurable timeouts Supports flexible field requests through natural language intent descriptions (e.g., "CEO name and founding year")

npx skills add https://github.com/parallel-web/parallel-agent-skills --skill parallel-data-enrichment

Data Enrichment

Enrich: $ARGUMENTS

Before starting

Inform the user that enrichment may take several minutes depending on the number of rows and fields requested.

Optional: Suggest output columns

If the user gave a vague intent ("enrich these companies with useful info") and you're not sure what columns to add, ask the API for a suggestion before kicking off the run:

parallel-cli enrich suggest "Find CEO and recent funding info" --json

The response is an envelope: {title, processor, enriched_columns, warnings}. Extract just the enriched_columns array (not the whole envelope) and pass it as the value of --enriched-columns on enrich run, in place of --intent — the two flags are alternative ways to specify what to enrich, not combined. If suggest returned a processor, pass it through explicitly via --processor on the run call (it's a tuned recommendation for the schema). Skip this whole section if the user already specified the fields they want.

enrich suggest requires parallel-cli ≥ 0.3.0. If it errors with anything resembling no such command / No such command / unknown command, do not bail — skip the suggestion step, fall through to step 1 with --intent, complete the run, and mention parallel-cli update (or pipx upgrade parallel-web-tools) in the final response so the user picks up the feature next time.

Step 1: Start the enrichment

Use ONE of these command patterns (substitute user's actual data):

For inline data:

parallel-cli enrich run --data '[{"company": "Google"}, {"company": "Microsoft"}]' --intent "CEO name and founding year" --target "output.csv" --no-wait --json

For CSV file:

parallel-cli enrich run --source-type csv --source "input.csv" --target "output.csv" --source-columns '[{"name": "company", "description": "Company name"}]' --intent "CEO name and founding year" --no-wait --json

If this is a follow-up to a previous research task and you have its interaction_id, add context chaining:

parallel-cli enrich run --data '...' --intent "..." --target "output.csv" --no-wait --json --previous-interaction-id "$INTERACTION_ID"

The enrichment will run with the full context of that prior research — so you can enrich entities discovered earlier without restating what was already found. Note: enrichment does not itself produce a new interaction_id, so you cannot chain a further follow-up off of an enrichment.

IMPORTANT: Always include --no-wait so the command returns immediately instead of blocking.

Parse the --json output to extract taskgroup_id and url. The output is {taskgroup_id, url, num_runs} — there is no interaction_id field, do not look for one. Immediately tell the user:

  • Enrichment has been kicked off
  • The monitoring URL where they can track progress

Tell them they can background the polling step to continue working while it runs.

Step 2: Poll for results

Pick a concrete output path (e.g., /tmp/enrichment-acme.json). Note: the file is JSON regardless of the extension you choose — it's an array of {input, output} objects, not a CSV. Name it .json to avoid confusing yourself or the user.

parallel-cli enrich poll "$TASKGROUP_ID" --timeout 540 --output "/tmp/enrichment-<descriptive-name>.json"

Important:

  • Use --timeout 540 (9 minutes) to stay within tool execution limits
  • The --target from step 1 is unused in --no-wait mode — only --output here determines where results are saved, and the file is always JSON

If the poll times out

Enrichment of large datasets can take longer than 9 minutes. If the poll exits without completing:

  1. Tell the user the enrichment is still running server-side
  2. Re-run the same parallel-cli enrich poll command to continue waiting

Response format

After step 1: Share the monitoring URL (for tracking progress).

After step 2:

  1. Report number of rows enriched
  2. Preview first few rows from the output file (it's a JSON array of {input, output} objects)
  3. Tell the user the full path to the output file

Do NOT re-share the monitoring URL after completion — the results are in the output file.

Setup

If parallel-cli is not found, install and authenticate:

/parallel:parallel-cli-setup

If any parallel-cli enrich command returns 403, tell the user balance is likely required. Offer to run parallel-cli balance get, and if needed ask for explicit confirmation before running parallel-cli balance add <amount_cents>. Then retry the original enrichment command.

parallel-web의 다른 스킬

parallel-cli-setup
parallel-web
Set up and maintain the Parallel CLI (install, auth, balance, skills install)
official
parallel-deep-research
parallel-web
복잡한 주제에 대해 구성 가능한 깊이, 지연 시간, 비용 트레이드오프를 제공하는 철저한 연구. 30초에서 25분까지의 세 가지 프로세서 계층(pro-fast, ultra-fast, ultra)과 1배에서 3배까지의 기본 비용 스케일링. 폴링을 통한 비동기 실행: 연구를 즉시 시작하고, URL을 통해 진행 상황을 모니터링하며, 준비 완료 시 차단 없이 결과를 검색. 출력은 포맷된 마크다운 보고서와 JSON 메타데이터로 제공되며, 빠른 개요를 위해 실행 요약이 stdout에 출력됨. 명시적...
official
parallel-findall
parallel-web
Discover entities (companies, people, products, etc.) matching a natural-language description. Use when the user asks to 'find all X' or 'list every Y that…' —…
official
parallel-monitor
parallel-web
Continuously track the web for changes on a recurring cadence. Use when the user asks to 'monitor', 'track changes to', 'watch', or 'alert me when' something…
official
parallel-web-extract
parallel-web
Extract content from multiple URLs in parallel, token-efficiently. Handles webpages, articles, PDFs, and JavaScript-heavy sites with a single command Runs in a forked context to minimize token overhead compared to built-in WebFetch Supports batch extraction of multiple URLs with optional focus objectives Requires parallel-cli installation and authentication; outputs extracted content as markdown to a local file for follow-up queries
official
parallel-web-search
parallel-web
인터넷 전반에 걸쳐 최신 정보, 연구, 사실 확인을 위한 빠른 웹 검색. 단일 목표 기반 쿼리 또는 여러 키워드 검색을 병렬로 실행하여 최대 10개의 결과를 발췌문 및 메타데이터와 함께 반환합니다. --after-date를 통한 시간 기반 필터링과 --include-domains를 통한 도메인별 검색을 지원합니다. 제목, URL, 게시 날짜, 발췌문이 포함된 구조화된 JSON을 출력하여 쉽게 구문 분석하고 후속 쿼리를 수행할 수 있습니다. 모든 주장에 대해 마크다운을 사용한 인라인 인용이 필요합니다...
official
result
parallel-web
실행 ID로 완료된 연구 작업 결과를 가져옵니다.
official
setup
parallel-web
Set up the Parallel plugin (install CLI)
official