跳到主要内容
SkillVault logo SkillVault
免费 ChatGPT GPTs Claude Code Cursor

parallel-web

Search the web, extract URL content, and run deep research using the Parallel Chat API and Extract API. Use for ALL web searches, research queries, and general information gathering. Provides synthesized summaries with citations.

0 次下载 0 次浏览 更新于 Oct 31, 2026 v1.0.0
parallel-web skill cover

下方技能配置(提示词、变量、安装步骤)保留英文原文。.aiskill 文件直接面向 AI 智能体,统一使用英文以确保跨平台行为一致。

概述

Search the web, extract URL content, and run deep research using the Parallel Chat API and Extract API. Use for ALL web searches, research queries, and general information gathering. Provides synthesized summaries with citations.

Source: https://github.com/DenDen047/claude-scientific-skills · MIT LICENSE · © 2025 K-Dense Inc.

系统提示词

定义智能体角色、规则与输出格式的指令块。

system-prompt.txt
# Parallel Web Systems API

## Overview

This skill provides access to **Parallel Web Systems** APIs for web search, deep research, and content extraction. It is the **primary tool for all web-related operations** in the scientific writer workflow.

**Primary interface:** Parallel Chat API (OpenAI-compatible) for search and research.
**Secondary interface:** Extract API for URL verification and special cases only.

**API Documentation:** https://docs.parallel.ai
**API Key:** https://platform.parallel.ai
**Environment Variable:** `PARALLEL_API_KEY`

## When to Use This Skill

Use this skill for **ALL** of the following:

- **Web Search**: Any query that requires searching the internet for information
- **Deep Research**: Comprehensive research reports on any topic
- **Market Research**: Industry analysis, competitive intelligence, market data
- **Current Events**: News, recent developments, announcements
- **Technical Information**: Documentation, specifications, product details
- **Statistical Data**: Market sizes, growth rates, industry figures
- **General Information**: Company profiles, facts, comparisons

**Use Extract API only for:**
- Citation verification (confirming a specific URL's content)
- Special cases where you need raw content from a known URL

**Do NOT use this skill for:**
- Academic-specific paper searches (use `research-lookup` which routes to Perplexity for purely academic queries)
- Google Scholar / PubMed database searches (use `citation-management` skill)

---

## Two Capabilities

### 1. Web Search (`search` command)

Search the web via the Parallel Chat API (`base` model) and get a **synthesized summary** with cited sources.

**Best for:** General web searches, current events, fact-finding, technical lookups, news, market data.

```bash
# Basic search
python scripts/parallel_web.py search "latest advances in quantum computing 2025"

# Use core model for more complex queries
python scripts/parallel_web.py search "compare EV battery chemistries NMC vs LFP" --model core

# Save results to file
python scripts/parallel_web.py search "renewable energy policy updates" -o results.txt

# JSON output for programmatic use
python scripts/parallel_web.py search "AI regulation landscape" --json -o results.json
```

**Key Parameters:**
- `objective`: Natural language description of what you want to find
- `--model`: Chat model to use (`base` default, or `core` for deeper research)
- `-o`: Output file path
- `--json`: Output as JSON

**Response includes:** Synthesized summary organized by themes, with inline citations and a sources list.

### 2. Deep Research (`research` command)

Run comprehensive multi-source research via the Parallel Chat API (`core` model) that produces detailed intelligence reports with citations.

**Best for:** Market research, comprehensive analysis, competitive intelligence, technology surveys, industry reports, any research question requiring synthesis of multiple sources.

```bash
# Default deep research (core model)
python scripts/parallel_web.py research "comprehensive analysis of the global EV battery market"

# Save research report to file
python scripts/parallel_web.py research "AI adoption in healthcare 2025" -o report.md

# Use base model for faster, lighter research
python scripts/parallel_web.py research "latest funding rounds in AI startups" --model base

# JSON output
python scripts/parallel_web.py research "renewable energy storage market in Europe" --json -o data.json
```

**Key Parameters:**
- `query`: Research question or topic
- `--model`: Chat model to use (`core` default for deep research, or `base` for faster results)
- `-o`: Output file path
- `--json`: Output as JSON

### 3. URL Extraction (`extract` command) — Verification Only

Extract content from specific URLs. **Use only for citation verification and special cases.**

For general research, use `search` or `research` instead.

```bash
# Verify a citation's content
python scripts/parallel_web.py extract "https://example.com/article" --objective "key findings"

# Get full page content for verification
python scripts/parallel_web.py extract "https://docs.example.com/api" --full-content

# Save extraction to file
python scripts/parallel_web.py extract "https://paper-url.com" --objective "methodology" -o extracted.md
```

---

## Model Selection Guide

The Chat API supports two research models. Use `base` for most searches and `core` for deep research.

| Model  | Latency    | Strengths                        | Use When                    |
|--------|------------|----------------------------------|-----------------------------|
| `base` | 15s-100s   | Standard research, factual queries | Web searches, quick lookups |
| `core` | 60s-5min   | Complex research, multi-source synthesis | Deep research, comprehensive reports |

**Recommendations:**
- `search` command defaults to `base` — fast, good for most queries
- `research` command defaults to `core` — thorough, good for comprehensive reports
- Override with `--model` when you need different depth/speed tradeoffs

---

## Python API Usage

### Search

```python
from parallel_web import ParallelSearch

searcher = ParallelSearch()
result = searcher.search(
    objective="Find latest information about transformer architectures in NLP",
    model="base",
)

if result["success"]:
    print(result["response"])  # Synthesized summary
    for src in result["sources"]:
        print(f"  {src['title']}: {src['url']}")
```

### Deep Research

```python
from parallel_web import ParallelDeepResearch

researcher = ParallelDeepResearch()
result = researcher.research(
    query="Comprehensive analysis of AI regulation in the EU and US",
    model="core",
)

if result["success"]:
    print(result["response"])  # Full research report
    print(f"Citations: {result['citation_count']}")
```

### Extract (Verification Only)

```python
from parallel_web import ParallelExtract

extractor = ParallelExtract()
result = extractor.extract(
    urls=["https://docs.example.com/api-reference"],
    objective="API authentication methods and rate limits",
)

if result["success"]:
    for r in result["results"]:
        print(r["excerpts"])
```

---

## MANDATORY: Save All Results to Sources Folder

**Every web search and deep research result MUST be saved to the project's `sources/` folder.**

This ensures all research is preserved for reproducibility, auditability, and context window recovery.

### Saving Rules

| Operation | `-o` Flag Target | Filename Pattern |
|-----------|-----------------|------------------|
| Web Search | `sources/search_<topic>.md` | `search_YYYYMMDD_HHMMSS_<brief_topic>.md` |
| Deep Research | `sources/research_<topic>.md` | `research_YYYYMMDD_HHMMSS_<brief_topic>.md` |
| URL Extract | `sources/extract_<source>.md` | `extract_YYYYMMDD_HHMMSS_<brief_source>.md` |

### How to Save (Always Use `-o` Flag)

**CRITICAL: Every call to `parallel_web.py` MUST include the `-o` flag pointing to the `sources/` folder.**

```bash
# Web search — ALWAYS save to sources/
python scripts/parallel_web.py search "latest advances in quantum computing 2025" \
  -o sources/search_20250217_143000_quantum_computing.md

# Deep research — ALWAYS save to sources/
python scripts/parallel_web.py research "comprehensive analysis of the global EV battery market" \
  -o sources/research_20250217_144000_ev_battery_market.md

# URL extraction (verification only) — save to sources/
python scripts/parallel_web.py extract "https://example.com/article" --objective "key findings" \
  -o sources/extract_20250217_143500_example_article.md
```

### Why Save Everything

1. **Reproducibility**: Every claim in the final document can be traced back to its raw source material
2. **Context Window Recovery**: If context is compacted mid-task, saved results can be re-read from `sources/`
3. **Audit Trail**: The `sources/` folder provides complete transparency into how information was gathered
4. **Reuse Across Sections**: Saved research can be referenced by multiple sections without duplicate API calls
5. **Cost Efficiency**: Avoid redundant API calls by checking `sources/` for existing results
6. **Peer Review Support**: Reviewers can verify the research backing every claim

### Logging

When saving research results, always log:

```
[HH:MM:SS] SAVED: Search results to sources/search_20250217_143000_quantum_computing.md
[HH:MM:SS] SAVED: Deep research report to sources/research_20250217_144000_ev_battery_market.md
```

### Before Making a New Query, Check Sources First

Before calling `parallel_web.py`, check if a relevant result already exists in `sources/`:

```bash
ls sources/  # Check existing saved results
```

---

## Integration with Scientific Writer

### Routing Table

| Task | Tool | Command |
|------|------|---------|
| Web search (any) | `parallel_web.py search` | `python scripts/parallel_web.py search "query" -o sources/search_<topic>.md` |
| Deep research | `parallel_web.py research` | `python scripts/parallel_web.py research "query" -o sources/research_<topic>.md` |
| Citation verification | `parallel_web.py extract` | `python scripts/parallel_web.py extract "url" -o sources/extract_<source>.md` |
| Academic paper search | `research_lookup.py` | Routes to Perplexity sonar-pro-search |
| DOI/metadata lookup | `parallel_web.py extract` | Extract from DOI URLs (verification) |

### When Writing Scientific Documents

1. **Before writing any section**, use `search` or `research` to gather background information — **save results to `sources/`**
2. **For academic citations**, use `research-lookup` (which routes academic queries to Perplexity) — **save results to `sources/`**
3. **For citation verification** (confirming a specific URL), use `parallel_web.py extract` — **save results to `sources/`**
4. **For current market/industry data**, use `parallel_web.py research --model core` — **save results to `sources/`**
5. **Before any new query**, check `sources/` for existing results to avoid duplicate API calls

---

## Environment Setup

```bash
# Required: Set your Parallel API key
export PARALLEL_API_KEY="your_api_key_here"

# Required Python packages
pip install openai        # For Chat API (search/research)
pip install parallel-web  # For Extract API (verification only)
```

Get your API key at https://platform.parallel.ai

---

## Error Handling

The script handles errors gracefully and returns structured error responses:

```json
{
  "success": false,
  "error": "Error description",
  "timestamp": "2025-02-14 12:00:00"
}
```

**Common issues:**
- `PARALLEL_API_KEY not set`: Set the environment variable
- `openai not installed`: Run `pip install openai`
- `parallel-web not installed`: Run `pip install parallel-web` (only needed for extract)
- `Rate limit exceeded`: Wait and retry (default: 300 req/min for Chat API)

---

## Complementary Skills

| Skill | Use For |
|-------|---------|
| `research-lookup` | Academic paper searches (routes to Perplexity for scholarly queries) |
| `citation-management` | Google Scholar, PubMed, CrossRef database searches |
| `literature-review` | Systematic literature reviews across academic databases |
| `scientific-schematics` | Generate diagrams from research findings |

用户提示词模板

填充变量后发送,即可运行该技能: {{variables}}

user-template.txt

变量

名称 必填 说明 示例

完整技能配置

标准 .aiskill 文件,提供 JSON 与 YAML 两种格式。

parallel-web.aiskill (JSON)
{
  "format": "aiskill/v1",
  "skill": {
    "name": "parallel-web",
    "slug": "parallel-web",
    "version": "1.0.0",
    "description": "Search the web, extract URL content, and run deep research using the Parallel Chat API and Extract API. Use for ALL web searches, research queries, and general information gathering. Provides synthesized summaries with citations.",
    "category": "Research",
    "tags": [
      "research-science",
      "research",
      "api"
    ],
    "platforms": [
      "chatgpt",
      "claude-code",
      "cursor"
    ],
    "tested_environment": "Agent Skills convention (SKILL.md) — works with Claude Code, Cursor, ChatGPT/Codex and compatible agents",
    "license": "MIT LICENSE"
  },
  "prompts": {
    "system": "# Parallel Web Systems API\r\n\r\n## Overview\r\n\r\nThis skill provides access to **Parallel Web Systems** APIs for web search, deep research, and content extraction. It is the **primary tool for all web-related operations** in the scientific writer workflow.\r\n\r\n**Primary interface:** Parallel Chat API (OpenAI-compatible) for search and research.\r\n**Secondary interface:** Extract API for URL verification and special cases only.\r\n\r\n**API Documentation:** https://docs.parallel.ai\r\n**API Key:** https://platform.parallel.ai\r\n**Environment Variable:** `PARALLEL_API_KEY`\r\n\r\n## When to Use This Skill\r\n\r\nUse this skill for **ALL** of the following:\r\n\r\n- **Web Search**: Any query that requires searching the internet for information\r\n- **Deep Research**: Comprehensive research reports on any topic\r\n- **Market Research**: Industry analysis, competitive intelligence, market data\r\n- **Current Events**: News, recent developments, announcements\r\n- **Technical Information**: Documentation, specifications, product details\r\n- **Statistical Data**: Market sizes, growth rates, industry figures\r\n- **General Information**: Company profiles, facts, comparisons\r\n\r\n**Use Extract API only for:**\r\n- Citation verification (confirming a specific URL's content)\r\n- Special cases where you need raw content from a known URL\r\n\r\n**Do NOT use this skill for:**\r\n- Academic-specific paper searches (use `research-lookup` which routes to Perplexity for purely academic queries)\r\n- Google Scholar / PubMed database searches (use `citation-management` skill)\r\n\r\n---\r\n\r\n## Two Capabilities\r\n\r\n### 1. Web Search (`search` command)\r\n\r\nSearch the web via the Parallel Chat API (`base` model) and get a **synthesized summary** with cited sources.\r\n\r\n**Best for:** General web searches, current events, fact-finding, technical lookups, news, market data.\r\n\r\n```bash\r\n# Basic search\r\npython scripts/parallel_web.py search \"latest advances in quantum computing 2025\"\r\n\r\n# Use core model for more complex queries\r\npython scripts/parallel_web.py search \"compare EV battery chemistries NMC vs LFP\" --model core\r\n\r\n# Save results to file\r\npython scripts/parallel_web.py search \"renewable energy policy updates\" -o results.txt\r\n\r\n# JSON output for programmatic use\r\npython scripts/parallel_web.py search \"AI regulation landscape\" --json -o results.json\r\n```\r\n\r\n**Key Parameters:**\r\n- `objective`: Natural language description of what you want to find\r\n- `--model`: Chat model to use (`base` default, or `core` for deeper research)\r\n- `-o`: Output file path\r\n- `--json`: Output as JSON\r\n\r\n**Response includes:** Synthesized summary organized by themes, with inline citations and a sources list.\r\n\r\n### 2. Deep Research (`research` command)\r\n\r\nRun comprehensive multi-source research via the Parallel Chat API (`core` model) that produces detailed intelligence reports with citations.\r\n\r\n**Best for:** Market research, comprehensive analysis, competitive intelligence, technology surveys, industry reports, any research question requiring synthesis of multiple sources.\r\n\r\n```bash\r\n# Default deep research (core model)\r\npython scripts/parallel_web.py research \"comprehensive analysis of the global EV battery market\"\r\n\r\n# Save research report to file\r\npython scripts/parallel_web.py research \"AI adoption in healthcare 2025\" -o report.md\r\n\r\n# Use base model for faster, lighter research\r\npython scripts/parallel_web.py research \"latest funding rounds in AI startups\" --model base\r\n\r\n# JSON output\r\npython scripts/parallel_web.py research \"renewable energy storage market in Europe\" --json -o data.json\r\n```\r\n\r\n**Key Parameters:**\r\n- `query`: Research question or topic\r\n- `--model`: Chat model to use (`core` default for deep research, or `base` for faster results)\r\n- `-o`: Output file path\r\n- `--json`: Output as JSON\r\n\r\n### 3. URL Extraction (`extract` command) — Verification Only\r\n\r\nExtract content from specific URLs. **Use only for citation verification and special cases.**\r\n\r\nFor general research, use `search` or `research` instead.\r\n\r\n```bash\r\n# Verify a citation's content\r\npython scripts/parallel_web.py extract \"https://example.com/article\" --objective \"key findings\"\r\n\r\n# Get full page content for verification\r\npython scripts/parallel_web.py extract \"https://docs.example.com/api\" --full-content\r\n\r\n# Save extraction to file\r\npython scripts/parallel_web.py extract \"https://paper-url.com\" --objective \"methodology\" -o extracted.md\r\n```\r\n\r\n---\r\n\r\n## Model Selection Guide\r\n\r\nThe Chat API supports two research models. Use `base` for most searches and `core` for deep research.\r\n\r\n| Model  | Latency    | Strengths                        | Use When                    |\r\n|--------|------------|----------------------------------|-----------------------------|\r\n| `base` | 15s-100s   | Standard research, factual queries | Web searches, quick lookups |\r\n| `core` | 60s-5min   | Complex research, multi-source synthesis | Deep research, comprehensive reports |\r\n\r\n**Recommendations:**\r\n- `search` command defaults to `base` — fast, good for most queries\r\n- `research` command defaults to `core` — thorough, good for comprehensive reports\r\n- Override with `--model` when you need different depth/speed tradeoffs\r\n\r\n---\r\n\r\n## Python API Usage\r\n\r\n### Search\r\n\r\n```python\r\nfrom parallel_web import ParallelSearch\r\n\r\nsearcher = ParallelSearch()\r\nresult = searcher.search(\r\n    objective=\"Find latest information about transformer architectures in NLP\",\r\n    model=\"base\",\r\n)\r\n\r\nif result[\"success\"]:\r\n    print(result[\"response\"])  # Synthesized summary\r\n    for src in result[\"sources\"]:\r\n        print(f\"  {src['title']}: {src['url']}\")\r\n```\r\n\r\n### Deep Research\r\n\r\n```python\r\nfrom parallel_web import ParallelDeepResearch\r\n\r\nresearcher = ParallelDeepResearch()\r\nresult = researcher.research(\r\n    query=\"Comprehensive analysis of AI regulation in the EU and US\",\r\n    model=\"core\",\r\n)\r\n\r\nif result[\"success\"]:\r\n    print(result[\"response\"])  # Full research report\r\n    print(f\"Citations: {result['citation_count']}\")\r\n```\r\n\r\n### Extract (Verification Only)\r\n\r\n```python\r\nfrom parallel_web import ParallelExtract\r\n\r\nextractor = ParallelExtract()\r\nresult = extractor.extract(\r\n    urls=[\"https://docs.example.com/api-reference\"],\r\n    objective=\"API authentication methods and rate limits\",\r\n)\r\n\r\nif result[\"success\"]:\r\n    for r in result[\"results\"]:\r\n        print(r[\"excerpts\"])\r\n```\r\n\r\n---\r\n\r\n## MANDATORY: Save All Results to Sources Folder\r\n\r\n**Every web search and deep research result MUST be saved to the project's `sources/` folder.**\r\n\r\nThis ensures all research is preserved for reproducibility, auditability, and context window recovery.\r\n\r\n### Saving Rules\r\n\r\n| Operation | `-o` Flag Target | Filename Pattern |\r\n|-----------|-----------------|------------------|\r\n| Web Search | `sources/search_<topic>.md` | `search_YYYYMMDD_HHMMSS_<brief_topic>.md` |\r\n| Deep Research | `sources/research_<topic>.md` | `research_YYYYMMDD_HHMMSS_<brief_topic>.md` |\r\n| URL Extract | `sources/extract_<source>.md` | `extract_YYYYMMDD_HHMMSS_<brief_source>.md` |\r\n\r\n### How to Save (Always Use `-o` Flag)\r\n\r\n**CRITICAL: Every call to `parallel_web.py` MUST include the `-o` flag pointing to the `sources/` folder.**\r\n\r\n```bash\r\n# Web search — ALWAYS save to sources/\r\npython scripts/parallel_web.py search \"latest advances in quantum computing 2025\" \\\r\n  -o sources/search_20250217_143000_quantum_computing.md\r\n\r\n# Deep research — ALWAYS save to sources/\r\npython scripts/parallel_web.py research \"comprehensive analysis of the global EV battery market\" \\\r\n  -o sources/research_20250217_144000_ev_battery_market.md\r\n\r\n# URL extraction (verification only) — save to sources/\r\npython scripts/parallel_web.py extract \"https://example.com/article\" --objective \"key findings\" \\\r\n  -o sources/extract_20250217_143500_example_article.md\r\n```\r\n\r\n### Why Save Everything\r\n\r\n1. **Reproducibility**: Every claim in the final document can be traced back to its raw source material\r\n2. **Context Window Recovery**: If context is compacted mid-task, saved results can be re-read from `sources/`\r\n3. **Audit Trail**: The `sources/` folder provides complete transparency into how information was gathered\r\n4. **Reuse Across Sections**: Saved research can be referenced by multiple sections without duplicate API calls\r\n5. **Cost Efficiency**: Avoid redundant API calls by checking `sources/` for existing results\r\n6. **Peer Review Support**: Reviewers can verify the research backing every claim\r\n\r\n### Logging\r\n\r\nWhen saving research results, always log:\r\n\r\n```\r\n[HH:MM:SS] SAVED: Search results to sources/search_20250217_143000_quantum_computing.md\r\n[HH:MM:SS] SAVED: Deep research report to sources/research_20250217_144000_ev_battery_market.md\r\n```\r\n\r\n### Before Making a New Query, Check Sources First\r\n\r\nBefore calling `parallel_web.py`, check if a relevant result already exists in `sources/`:\r\n\r\n```bash\r\nls sources/  # Check existing saved results\r\n```\r\n\r\n---\r\n\r\n## Integration with Scientific Writer\r\n\r\n### Routing Table\r\n\r\n| Task | Tool | Command |\r\n|------|------|---------|\r\n| Web search (any) | `parallel_web.py search` | `python scripts/parallel_web.py search \"query\" -o sources/search_<topic>.md` |\r\n| Deep research | `parallel_web.py research` | `python scripts/parallel_web.py research \"query\" -o sources/research_<topic>.md` |\r\n| Citation verification | `parallel_web.py extract` | `python scripts/parallel_web.py extract \"url\" -o sources/extract_<source>.md` |\r\n| Academic paper search | `research_lookup.py` | Routes to Perplexity sonar-pro-search |\r\n| DOI/metadata lookup | `parallel_web.py extract` | Extract from DOI URLs (verification) |\r\n\r\n### When Writing Scientific Documents\r\n\r\n1. **Before writing any section**, use `search` or `research` to gather background information — **save results to `sources/`**\r\n2. **For academic citations**, use `research-lookup` (which routes academic queries to Perplexity) — **save results to `sources/`**\r\n3. **For citation verification** (confirming a specific URL), use `parallel_web.py extract` — **save results to `sources/`**\r\n4. **For current market/industry data**, use `parallel_web.py research --model core` — **save results to `sources/`**\r\n5. **Before any new query**, check `sources/` for existing results to avoid duplicate API calls\r\n\r\n---\r\n\r\n## Environment Setup\r\n\r\n```bash\r\n# Required: Set your Parallel API key\r\nexport PARALLEL_API_KEY=\"your_api_key_here\"\r\n\r\n# Required Python packages\r\npip install openai        # For Chat API (search/research)\r\npip install parallel-web  # For Extract API (verification only)\r\n```\r\n\r\nGet your API key at https://platform.parallel.ai\r\n\r\n---\r\n\r\n## Error Handling\r\n\r\nThe script handles errors gracefully and returns structured error responses:\r\n\r\n```json\r\n{\r\n  \"success\": false,\r\n  \"error\": \"Error description\",\r\n  \"timestamp\": \"2025-02-14 12:00:00\"\r\n}\r\n```\r\n\r\n**Common issues:**\r\n- `PARALLEL_API_KEY not set`: Set the environment variable\r\n- `openai not installed`: Run `pip install openai`\r\n- `parallel-web not installed`: Run `pip install parallel-web` (only needed for extract)\r\n- `Rate limit exceeded`: Wait and retry (default: 300 req/min for Chat API)\r\n\r\n---\r\n\r\n## Complementary Skills\r\n\r\n| Skill | Use For |\r\n|-------|---------|\r\n| `research-lookup` | Academic paper searches (routes to Perplexity for scholarly queries) |\r\n| `citation-management` | Google Scholar, PubMed, CrossRef database searches |\r\n| `literature-review` | Systematic literature reviews across academic databases |\r\n| `scientific-schematics` | Generate diagrams from research findings |",
    "user_template": ""
  },
  "variables": [],
  "install": {
    "steps": [
      {
        "title": "Download & unzip",
        "detail": "Download the .zip package from SkillVault and unzip it. The parallel-web/ folder contains SKILL.md plus any companion scripts, references and assets."
      },
      {
        "title": "Copy into your agent skills directory",
        "detail": "Move the folder into your agent's skills directory — e.g. ~/.claude/skills/ (Claude Code), .codex/skills/, .cursor/skills/ or your project's .claude/skills/ folder — then restart or reload the session."
      },
      {
        "title": "Use it",
        "detail": "Describe the task in natural language; the agent loads the skill automatically when the request matches the skill description."
      }
    ]
  },
  "usage": {
    "steps": []
  },
  "metadata": {
    "author": "SkillVault",
    "source": "https://skillvault.top/skills/parallel-web",
    "exported_at": "2026-11-03T07:41:42.179Z"
  }
}
parallel-web.aiskill (YAML)
format: aiskill/v1
skill:
  name: parallel-web
  slug: parallel-web
  version: 1.0.0
  description: >-
    Search the web, extract URL content, and run deep research using the Parallel Chat API and
    Extract API. Use for ALL web searches, research queries, and general information gathering.
    Provides synthesized summaries with citations.
  category: Research
  tags:
    - research-science
    - research
    - api
  platforms:
    - chatgpt
    - claude-code
    - cursor
  tested_environment: >-
    Agent Skills convention (SKILL.md) — works with Claude Code, Cursor, ChatGPT/Codex and
    compatible agents
  license: MIT LICENSE
prompts:
  system: "# Parallel Web Systems API\r\n\r\n## Overview\r\n\r\nThis skill provides access to **Parallel Web Systems** APIs for web search, deep research, and content extraction. It is the **primary tool for all web-related operations** in the scientific writer workflow.\r\n\r\n**Primary interface:** Parallel Chat API (OpenAI-compatible) for search and research.\r\n**Secondary interface:** Extract API for URL verification and special cases only.\r\n\r\n**API Documentation:** https://docs.parallel.ai\r\n**API Key:** https://platform.parallel.ai\r\n**Environment Variable:** `PARALLEL_API_KEY`\r\n\r\n## When to Use This Skill\r\n\r\nUse this skill for **ALL** of the following:\r\n\r\n- **Web Search**: Any query that requires searching the internet for information\r\n- **Deep Research**: Comprehensive research reports on any topic\r\n- **Market Research**: Industry analysis, competitive intelligence, market data\r\n- **Current Events**: News, recent developments, announcements\r\n- **Technical Information**: Documentation, specifications, product details\r\n- **Statistical Data**: Market sizes, growth rates, industry figures\r\n- **General Information**: Company profiles, facts, comparisons\r\n\r\n**Use Extract API only for:**\r\n- Citation verification (confirming a specific URL's content)\r\n- Special cases where you need raw content from a known URL\r\n\r\n**Do NOT use this skill for:**\r\n- Academic-specific paper searches (use `research-lookup` which routes to Perplexity for purely academic queries)\r\n- Google Scholar / PubMed database searches (use `citation-management` skill)\r\n\r\n---\r\n\r\n## Two Capabilities\r\n\r\n### 1. Web Search (`search` command)\r\n\r\nSearch the web via the Parallel Chat API (`base` model) and get a **synthesized summary** with cited sources.\r\n\r\n**Best for:** General web searches, current events, fact-finding, technical lookups, news, market data.\r\n\r\n```bash\r\n# Basic search\r\npython scripts/parallel_web.py search \"latest advances in quantum computing 2025\"\r\n\r\n# Use core model for more complex queries\r\npython scripts/parallel_web.py search \"compare EV battery chemistries NMC vs LFP\" --model core\r\n\r\n# Save results to file\r\npython scripts/parallel_web.py search \"renewable energy policy updates\" -o results.txt\r\n\r\n# JSON output for programmatic use\r\npython scripts/parallel_web.py search \"AI regulation landscape\" --json -o results.json\r\n```\r\n\r\n**Key Parameters:**\r\n- `objective`: Natural language description of what you want to find\r\n- `--model`: Chat model to use (`base` default, or `core` for deeper research)\r\n- `-o`: Output file path\r\n- `--json`: Output as JSON\r\n\r\n**Response includes:** Synthesized summary organized by themes, with inline citations and a sources list.\r\n\r\n### 2. Deep Research (`research` command)\r\n\r\nRun comprehensive multi-source research via the Parallel Chat API (`core` model) that produces detailed intelligence reports with citations.\r\n\r\n**Best for:** Market research, comprehensive analysis, competitive intelligence, technology surveys, industry reports, any research question requiring synthesis of multiple sources.\r\n\r\n```bash\r\n# Default deep research (core model)\r\npython scripts/parallel_web.py research \"comprehensive analysis of the global EV battery market\"\r\n\r\n# Save research report to file\r\npython scripts/parallel_web.py research \"AI adoption in healthcare 2025\" -o report.md\r\n\r\n# Use base model for faster, lighter research\r\npython scripts/parallel_web.py research \"latest funding rounds in AI startups\" --model base\r\n\r\n# JSON output\r\npython scripts/parallel_web.py research \"renewable energy storage market in Europe\" --json -o data.json\r\n```\r\n\r\n**Key Parameters:**\r\n- `query`: Research question or topic\r\n- `--model`: Chat model to use (`core` default for deep research, or `base` for faster results)\r\n- `-o`: Output file path\r\n- `--json`: Output as JSON\r\n\r\n### 3. URL Extraction (`extract` command) — Verification Only\r\n\r\nExtract content from specific URLs. **Use only for citation verification and special cases.**\r\n\r\nFor general research, use `search` or `research` instead.\r\n\r\n```bash\r\n# Verify a citation's content\r\npython scripts/parallel_web.py extract \"https://example.com/article\" --objective \"key findings\"\r\n\r\n# Get full page content for verification\r\npython scripts/parallel_web.py extract \"https://docs.example.com/api\" --full-content\r\n\r\n# Save extraction to file\r\npython scripts/parallel_web.py extract \"https://paper-url.com\" --objective \"methodology\" -o extracted.md\r\n```\r\n\r\n---\r\n\r\n## Model Selection Guide\r\n\r\nThe Chat API supports two research models. Use `base` for most searches and `core` for deep research.\r\n\r\n| Model  | Latency    | Strengths                        | Use When                    |\r\n|--------|------------|----------------------------------|-----------------------------|\r\n| `base` | 15s-100s   | Standard research, factual queries | Web searches, quick lookups |\r\n| `core` | 60s-5min   | Complex research, multi-source synthesis | Deep research, comprehensive reports |\r\n\r\n**Recommendations:**\r\n- `search` command defaults to `base` — fast, good for most queries\r\n- `research` command defaults to `core` — thorough, good for comprehensive reports\r\n- Override with `--model` when you need different depth/speed tradeoffs\r\n\r\n---\r\n\r\n## Python API Usage\r\n\r\n### Search\r\n\r\n```python\r\nfrom parallel_web import ParallelSearch\r\n\r\nsearcher = ParallelSearch()\r\nresult = searcher.search(\r\n    objective=\"Find latest information about transformer architectures in NLP\",\r\n    model=\"base\",\r\n)\r\n\r\nif result[\"success\"]:\r\n    print(result[\"response\"])  # Synthesized summary\r\n    for src in result[\"sources\"]:\r\n        print(f\"  {src['title']}: {src['url']}\")\r\n```\r\n\r\n### Deep Research\r\n\r\n```python\r\nfrom parallel_web import ParallelDeepResearch\r\n\r\nresearcher = ParallelDeepResearch()\r\nresult = researcher.research(\r\n    query=\"Comprehensive analysis of AI regulation in the EU and US\",\r\n    model=\"core\",\r\n)\r\n\r\nif result[\"success\"]:\r\n    print(result[\"response\"])  # Full research report\r\n    print(f\"Citations: {result['citation_count']}\")\r\n```\r\n\r\n### Extract (Verification Only)\r\n\r\n```python\r\nfrom parallel_web import ParallelExtract\r\n\r\nextractor = ParallelExtract()\r\nresult = extractor.extract(\r\n    urls=[\"https://docs.example.com/api-reference\"],\r\n    objective=\"API authentication methods and rate limits\",\r\n)\r\n\r\nif result[\"success\"]:\r\n    for r in result[\"results\"]:\r\n        print(r[\"excerpts\"])\r\n```\r\n\r\n---\r\n\r\n## MANDATORY: Save All Results to Sources Folder\r\n\r\n**Every web search and deep research result MUST be saved to the project's `sources/` folder.**\r\n\r\nThis ensures all research is preserved for reproducibility, auditability, and context window recovery.\r\n\r\n### Saving Rules\r\n\r\n| Operation | `-o` Flag Target | Filename Pattern |\r\n|-----------|-----------------|------------------|\r\n| Web Search | `sources/search_<topic>.md` | `search_YYYYMMDD_HHMMSS_<brief_topic>.md` |\r\n| Deep Research | `sources/research_<topic>.md` | `research_YYYYMMDD_HHMMSS_<brief_topic>.md` |\r\n| URL Extract | `sources/extract_<source>.md` | `extract_YYYYMMDD_HHMMSS_<brief_source>.md` |\r\n\r\n### How to Save (Always Use `-o` Flag)\r\n\r\n**CRITICAL: Every call to `parallel_web.py` MUST include the `-o` flag pointing to the `sources/` folder.**\r\n\r\n```bash\r\n# Web search — ALWAYS save to sources/\r\npython scripts/parallel_web.py search \"latest advances in quantum computing 2025\" \\\r\n  -o sources/search_20250217_143000_quantum_computing.md\r\n\r\n# Deep research — ALWAYS save to sources/\r\npython scripts/parallel_web.py research \"comprehensive analysis of the global EV battery market\" \\\r\n  -o sources/research_20250217_144000_ev_battery_market.md\r\n\r\n# URL extraction (verification only) — save to sources/\r\npython scripts/parallel_web.py extract \"https://example.com/article\" --objective \"key findings\" \\\r\n  -o sources/extract_20250217_143500_example_article.md\r\n```\r\n\r\n### Why Save Everything\r\n\r\n1. **Reproducibility**: Every claim in the final document can be traced back to its raw source material\r\n2. **Context Window Recovery**: If context is compacted mid-task, saved results can be re-read from `sources/`\r\n3. **Audit Trail**: The `sources/` folder provides complete transparency into how information was gathered\r\n4. **Reuse Across Sections**: Saved research can be referenced by multiple sections without duplicate API calls\r\n5. **Cost Efficiency**: Avoid redundant API calls by checking `sources/` for existing results\r\n6. **Peer Review Support**: Reviewers can verify the research backing every claim\r\n\r\n### Logging\r\n\r\nWhen saving research results, always log:\r\n\r\n```\r\n[HH:MM:SS] SAVED: Search results to sources/search_20250217_143000_quantum_computing.md\r\n[HH:MM:SS] SAVED: Deep research report to sources/research_20250217_144000_ev_battery_market.md\r\n```\r\n\r\n### Before Making a New Query, Check Sources First\r\n\r\nBefore calling `parallel_web.py`, check if a relevant result already exists in `sources/`:\r\n\r\n```bash\r\nls sources/  # Check existing saved results\r\n```\r\n\r\n---\r\n\r\n## Integration with Scientific Writer\r\n\r\n### Routing Table\r\n\r\n| Task | Tool | Command |\r\n|------|------|---------|\r\n| Web search (any) | `parallel_web.py search` | `python scripts/parallel_web.py search \"query\" -o sources/search_<topic>.md` |\r\n| Deep research | `parallel_web.py research` | `python scripts/parallel_web.py research \"query\" -o sources/research_<topic>.md` |\r\n| Citation verification | `parallel_web.py extract` | `python scripts/parallel_web.py extract \"url\" -o sources/extract_<source>.md` |\r\n| Academic paper search | `research_lookup.py` | Routes to Perplexity sonar-pro-search |\r\n| DOI/metadata lookup | `parallel_web.py extract` | Extract from DOI URLs (verification) |\r\n\r\n### When Writing Scientific Documents\r\n\r\n1. **Before writing any section**, use `search` or `research` to gather background information — **save results to `sources/`**\r\n2. **For academic citations**, use `research-lookup` (which routes academic queries to Perplexity) — **save results to `sources/`**\r\n3. **For citation verification** (confirming a specific URL), use `parallel_web.py extract` — **save results to `sources/`**\r\n4. **For current market/industry data**, use `parallel_web.py research --model core` — **save results to `sources/`**\r\n5. **Before any new query**, check `sources/` for existing results to avoid duplicate API calls\r\n\r\n---\r\n\r\n## Environment Setup\r\n\r\n```bash\r\n# Required: Set your Parallel API key\r\nexport PARALLEL_API_KEY=\"your_api_key_here\"\r\n\r\n# Required Python packages\r\npip install openai        # For Chat API (search/research)\r\npip install parallel-web  # For Extract API (verification only)\r\n```\r\n\r\nGet your API key at https://platform.parallel.ai\r\n\r\n---\r\n\r\n## Error Handling\r\n\r\nThe script handles errors gracefully and returns structured error responses:\r\n\r\n```json\r\n{\r\n  \"success\": false,\r\n  \"error\": \"Error description\",\r\n  \"timestamp\": \"2025-02-14 12:00:00\"\r\n}\r\n```\r\n\r\n**Common issues:**\r\n- `PARALLEL_API_KEY not set`: Set the environment variable\r\n- `openai not installed`: Run `pip install openai`\r\n- `parallel-web not installed`: Run `pip install parallel-web` (only needed for extract)\r\n- `Rate limit exceeded`: Wait and retry (default: 300 req/min for Chat API)\r\n\r\n---\r\n\r\n## Complementary Skills\r\n\r\n| Skill | Use For |\r\n|-------|---------|\r\n| `research-lookup` | Academic paper searches (routes to Perplexity for scholarly queries) |\r\n| `citation-management` | Google Scholar, PubMed, CrossRef database searches |\r\n| `literature-review` | Systematic literature reviews across academic databases |\r\n| `scientific-schematics` | Generate diagrams from research findings |"
  user_template: ""
variables: []
install:
  steps:
    - title: Download & unzip
      detail: >-
        Download the .zip package from SkillVault and unzip it. The parallel-web/ folder contains
        SKILL.md plus any companion scripts, references and assets.
    - title: Copy into your agent skills directory
      detail: >-
        Move the folder into your agent's skills directory — e.g. ~/.claude/skills/ (Claude Code),
        .codex/skills/, .cursor/skills/ or your project's .claude/skills/ folder — then restart or
        reload the session.
    - title: Use it
      detail: >-
        Describe the task in natural language; the agent loads the skill automatically when the
        request matches the skill description.
usage:
  steps: []
metadata:
  author: SkillVault
  source: https://skillvault.top/skills/parallel-web
  exported_at: "2026-11-03T07:41:42.179Z"

安装指南

  1. 1

    Download & unzip

    Download the .zip package from SkillVault and unzip it. The parallel-web/ folder contains SKILL.md plus any companion scripts, references and assets.

  2. 2

    Copy into your agent skills directory

    Move the folder into your agent's skills directory — e.g. ~/.claude/skills/ (Claude Code), .codex/skills/, .cursor/skills/ or your project's .claude/skills/ folder — then restart or reload the session.

  3. 3

    Use it

    Describe the task in natural language; the agent loads the skill automatically when the request matches the skill description.

使用方法

平台兼容性

ChatGPT GPTs

OpenAI

将系统提示词粘贴到 GPT 的「Instructions」字段,并把用户模板作为起始消息使用。

官方文档

Claude Code

Anthropic

将导出的 .aiskill JSON 保存为项目中的技能文件,或将系统提示词粘贴进 CLAUDE.md / 斜杠命令 Markdown 文件。

官方文档

Cursor

Anysphere

将系统提示词复制到 .cursor/rules/*.mdc(或设置中的 Project Rules),并在智能体提示词中引用用户模板。

官方文档

相关技能

perplexity-search AI agent skill cover
免费
ChatGPT GPTs Claude Code Cursor

perplexity-search

Perform AI-powered web searches with real-time information using Perplexity models via LiteLLM and OpenRouter. This skill should be used when conducting web searches for current information, finding recent scientific literature, getting grounded answers with source citations, or accessing information beyond the model knowledge cutoff. Provides access to multiple Perplexity models including Sonar Pro, Sonar Pro Search (advanced agentic search), and Sonar Reasoning Pro through a single OpenRouter API key.

#research-science#agents#research
0 0 v1.0.0
pyzotero AI agent skill cover
免费
ChatGPT GPTs Claude Code Cursor

pyzotero

Interact with Zotero reference management libraries using the pyzotero Python client. Retrieve, create, update, and delete items, collections, tags, and attachments via the Zotero Web API v3. Use this skill when working with Zotero libraries programmatically, managing bibliographic references, exporting citations, searching library contents, uploading PDF attachments, or building research automation workflows that integrate with Zotero.

#research-science#research#documents
0 0 v1.0.0
research-lookup AI agent skill cover
免费
ChatGPT GPTs Claude Code Cursor

research-lookup

Look up current research information using the Parallel Chat API (primary) or Perplexity sonar-pro-search (academic paper searches). Automatically routes queries to the best backend. Use for finding papers, gathering research data, and verifying scientific information.

#research-science#research#api
0 0 v1.0.0