alterlab-research-lookup — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited alterlab-research-lookup (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill provides real-time research information lookup with intelligent backend routing:
core model): Default backend for all general research queries. Provides comprehensive, multi-source research reports with inline citations via the OpenAI-compatible Chat API (Beta, https://api.parallel.ai/v1beta/chat/completions).The skill automatically detects query type and routes to the optimal backend.
Use this skill when you need:
| Scenario | Use Instead |
|---|---|
| You specifically want Perplexity (choosing a Sonar model yourself), no routing | alterlab-perplexity |
| Extracting or verifying the content of a known URL, or calling Parallel's Search/Task APIs directly | alterlab-parallel-web |
| Structured per-paper experimental data (sample sizes, effect sizes, quality scores) | alterlab-bgpt-search |
| Mapping the citation network around a seed paper | alterlab-citation-graph |
| A systematic review with PRISMA screening and risk-of-bias assessment | alterlab-literature-review |
The skill automatically routes queries to the best backend based on content:
Query arrives
|
+-- Contains academic keywords? (papers, DOI, journal, peer-reviewed, etc.)
| YES --> Perplexity sonar-pro-search (academic search mode)
|
+-- Everything else (general research, market data, technical info, analysis)
--> Parallel Chat API (core model)Queries containing these terms are routed to Perplexity for academic-focused search:
find papers, find articles, research papers on, published studiescite, citation, doi, pubmed, pmidpeer-reviewed, journal article, scholarly, arxiv, preprintsystematic review, meta-analysis, literature searchfoundational papers, seminal papers, landmark papers, highly citedAll other queries go to the Parallel Chat API (core model), including:
You can force a specific backend:
# Force Parallel Deep Research
python scripts/research_lookup.py "your query" --force-backend parallel
# Force Perplexity academic search
python scripts/research_lookup.py "your query" --force-backend perplexityDefault backend. Provides comprehensive, multi-source research with citations via the Chat API (core model).
Query Examples:
- "Recent advances in CRISPR gene editing 2025"
- "Compare mRNA vaccines vs traditional vaccines for cancer treatment"
- "AI adoption in healthcare industry statistics"
- "Global renewable energy market trends and projections"
- "Explain the mechanism underlying gut microbiome and depression"Response includes:
Used for academic-specific queries. Prioritizes scholarly databases and peer-reviewed sources.
Query Examples:
- "Find papers on transformer attention mechanisms in NeurIPS 2024"
- "Foundational papers on quantum error correction"
- "Systematic review of immunotherapy in non-small cell lung cancer"
- "Cite the original BERT paper and its most influential follow-ups"
- "Published studies on CRISPR off-target effects in clinical trials"Response includes:
Query Examples:
- "Western blot protocol for protein detection"
- "Statistical power analysis for clinical trials"
- "Machine learning model evaluation metrics comparison"Query Examples:
- "Prevalence of diabetes in US population 2025"
- "Global AI market size and growth projections"
- "COVID-19 vaccination rates by country"When searching for papers, favor high-quality, influential work, but treat citation counts and venue as rough proxies rather than measures of quality: they lag for recent papers, vary widely by field, and under-represent null results, regional journals, and non-English work. Judge each paper on its design and evidence (see alterlab-scientific-thinking), and include a lower-profile paper when it is the most direct evidence for the claim. The thresholds below are working heuristics, not established cut-offs.
| Paper Age | Citation Threshold | Classification |
|---|---|---|
| 0-3 years | 20+ citations | Noteworthy |
| 0-3 years | 100+ citations | Highly Influential |
| 3-7 years | 100+ citations | Significant |
| 3-7 years | 500+ citations | Landmark Paper |
| 7+ years | 500+ citations | Seminal Work |
| 7+ years | 1000+ citations | Foundational |
Tier 1 - Premier Venues (prefer when relevant):
Tier 2 - High-Impact Specialized (Strong preference):
Tier 3 - Respected Specialized (Include when relevant):
# Primary backend (Parallel Chat API)
export PARALLEL_API_KEY="your_parallel_api_key"
# Academic search backend (Perplexity via OpenRouter)
export OPENROUTER_API_KEY="your_openrouter_api_key"At least one key is required; with only one, every query goes to that backend.
Parallel Chat API (Beta):
POST https://api.parallel.ai/v1beta/chat/completions (OpenAI SDK with base_url="https://api.parallel.ai/v1beta")core (60s-5min latency, complex multi-source synthesis)openaiPerplexity sonar-pro-search:
perplexity/sonar-pro-search (via OpenRouter; $3/$15 per million tokens plus $18 per 1,000 requests at 2026-09 list prices)web_search_options.search_context_size: high and Perplexity's search_mode: academic; OpenRouter may not forward the latter, so academic-only sourcing is best-efforturl_citation annotations and/or citations/search_results fields; the script merges and deduplicates themrequests# Auto-routed research (recommended)
python scripts/research_lookup.py "your query" -o sources/research_YYYYMMDD_HHMMSS_<topic>.md
# Force specific backend
python scripts/research_lookup.py "your query" --force-backend parallel -o sources/research_<topic>.md
python scripts/research_lookup.py "your query" --force-backend perplexity -o sources/papers_<topic>.md
# JSON output
python scripts/research_lookup.py "your query" --json -o sources/research_<topic>.json
# Batch queries
python scripts/research_lookup.py --batch "query 1" "query 2" "query 3" -o sources/batch_research_<topic>.mdSave every research-lookup result to the project's sources/ folder. Results cost money to obtain, and the saved file is what lets you (and reviewers) trace each citation back to the raw search output.
| Backend | -o Flag Target | Filename Pattern |
|---|---|---|
| Parallel Deep Research | sources/research_<topic>.md | research_YYYYMMDD_HHMMSS_<brief_topic>.md |
| Perplexity (academic) | sources/papers_<topic>.md | papers_YYYYMMDD_HHMMSS_<brief_topic>.md |
| Batch queries | sources/batch_<topic>.md | batch_research_YYYYMMDD_HHMMSS_<brief_topic>.md |
Pass -o pointing into sources/ on every call, and keep the citations, source URLs, and DOIs in the saved file — they are the audit trail. The default text output already includes a Sources section (title, date, URL for each source) and an Additional References section (DOIs and academic URLs extracted from the response text); use --json for the full citation metadata.
# General research — save to sources/ (includes Sources + Additional References sections)
python scripts/research_lookup.py "Recent advances in CRISPR gene editing 2025" \
-o sources/research_20250217_143000_crispr_advances.md
# Academic paper search — save to sources/ (includes paper citations with DOIs)
python scripts/research_lookup.py "Find papers on transformer attention mechanisms in NeurIPS 2024" \
-o sources/papers_20250217_143500_transformer_attention.md
# JSON format for maximum citation metadata (full citation objects with URLs, DOIs, snippets)
python scripts/research_lookup.py "CRISPR clinical trials" --json \
-o sources/research_20250217_143000_crispr_trials.json
# Forced backend — save to sources/
python scripts/research_lookup.py "AI regulation landscape" --force-backend parallel \
-o sources/research_20250217_144000_ai_regulation.md
# Batch queries — save to sources/
python scripts/research_lookup.py --batch "mRNA vaccines efficacy" "mRNA vaccines safety" \
-o sources/batch_research_20250217_144500_mrna_vaccines.mdEach output format preserves citations differently:
| Format | Citations Included | When to Use |
|---|---|---|
| Text (default) | Sources (N): section with [title] (date) + URL + Additional References (N): with DOIs and academic URLs | Standard use — human-readable with all citations |
JSON (--json) | Full citation objects: url, title, date, snippet, doi, type | When you need maximum citation metadata |
For Parallel backend, saved files include: research report + Sources list (title, URL) + Additional References (DOIs, academic URLs). For Perplexity backend, saved files include: academic summary + Sources list (title, date, URL, snippet) + Additional References (DOIs, academic URLs).
Use `--json` when you need to:
sources/ folder documents exactly how all research information was gatheredsources/ for existing results before making new API callsBefore calling research_lookup.py, check if a relevant result already exists:
ls sources/ # Check existing saved resultsIf a prior lookup covers the same topic, re-read the saved file instead of making a new API call.
When saving research results, always log:
[HH:MM:SS] SAVED: Research lookup to sources/research_20250217_143000_crispr_advances.md (3,800 words, 8 citations)
[HH:MM:SS] SAVED: Paper search to sources/papers_20250217_143500_transformer_attention.md (6 papers found)This skill supports scientific writing by providing (each result saved to sources/):
Treat returned citations as leads: open and check any paper before citing it, because search-model answers can misattribute findings or garble bibliographic details (alterlab-citation-verifier checks that references exist).
| Task | Skill |
|---|---|
| Scholarly index search (OpenAlex) | alterlab-openalex |
| PubMed search | alterlab-pubmed |
| Zotero library / DOI-to-BibTeX management | alterlab-pyzotero |
| Verify that the references you collected exist | alterlab-citation-verifier |
Known Limitations:
Fallback Behavior:
--force-backend choice), the query goes to the other backendsuccess: false and the error — rerun with --force-backend to try the other oneBackend-key setup and specific error messages: see references/troubleshooting.md.
Query: "Recent advances in transformer attention mechanisms 2025"
Backend: Parallel Chat API (core model)
Response: Comprehensive markdown report with citations from authoritative sources, covering recent papers, key innovations, and performance benchmarks.
Query: "Find papers on CRISPR off-target effects in clinical trials"
Backend: Perplexity sonar-pro-search (academic mode)
Response: Curated list of 5-8 high-impact papers with full citations, DOIs, citation counts, and venue tier indicators.
Query: "Compare and contrast mRNA vaccines vs traditional vaccines for cancer treatment"
Backend: Parallel Chat API (core model)
Response: Detailed comparative report with data from multiple sources, structured analysis, and cited evidence.
Query: "Global AI adoption in healthcare statistics 2025"
Backend: Parallel Chat API (core model)
Response: Current market data, adoption rates, growth projections, and regional analysis with source citations.
This skill serves as the primary research interface with intelligent dual-backend routing:
core model): Comprehensive, multi-source research for any topicalterlab-parallel-web for web search and URL extractionPart of the AlterLab Academic Skills suite.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.