Fast scientific literature Q&A with citations via FutureHouse's Crow agent (production PaperQA2). Use when the user wants a single, well-cited answer drawn from the published scientific literature — biology, chemistry, medicine, ML, etc. Handles one focused question per call. For multi-paper thematic synthesis use Falcon; for "has anyone done X" precedent queries use Owl.
Scanned 9/11/2026
Install to Claude Code
npx -y skills add qhjqhj00/research-skills-pool --skill Future-House--edison-client--crow-literature-qa --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Future House Edison Client Crow Literature Qa?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/qhjqhj00-future-house-edison-client-crow-literature-qa)More formats (shields.io, HTML) on the badges page.
---
name: crow-literature-qa
description: Fast scientific literature Q&A with citations via FutureHouse's Crow agent (production PaperQA2). Use when the user wants a single, well-cited answer drawn from the published scientific literature — biology, chemistry, medicine, ML, etc. Handles one focused question per call. For multi-paper thematic synthesis use Falcon; for "has anyone done X" precedent queries use Owl.
metadata:
skill-author: Compiled from FutureHouse edison-client (Apache-2.0)
upstream: https://github.com/Future-House/edison-client-docs
---
# Crow — Scientific Literature Q&A (FutureHouse Platform)
Crow is FutureHouse's fast, production literature search agent. It is the deployed version of [PaperQA2](https://github.com/Future-House/paper-qa). Behind the scenes it searches Semantic Scholar, Crossref, and other indexes, fetches full text, runs the PaperQA2 retrieval-augmented generation pipeline, and returns a grounded answer with in-text citations.
Use this skill when the user asks a focused factual question about the scientific literature ("What is known about X?", "What dose of Y was used in study Z?", "Summarize evidence on …"). For broader review-style questions hand off to Falcon; for chemistry-specific questions hand off to Phoenix.
## Prerequisites
- `pip install edison-client` (or `uv pip install edison-client`)
- `EDISON_API_KEY` in env. Get one from <https://platform.edisonscientific.com/profile> → Account → API Tokens. Free tier exists; deeper queries consume credits.
## Minimal usage
```python
from edison_client import EdisonClient, JobNames
client = EdisonClient(api_key=os.environ["EDISON_API_KEY"])
resp = client.run_tasks_until_done({
"name": JobNames.LITERATURE, # alias for Crow
"query": "What dose of semaglutide is used for chronic weight management in adults?",
})
print(resp.formatted_answer) # answer with [Author Year] inline citations
```
`resp` is a `PQATaskResponse` with:
| field | meaning |
|---|---|
| `answer` | plain answer text |
| `formatted_answer` | answer with inline citations and reference list |
| `has_successful_answer` | bool — whether the agent actually grounded its answer |
## Recipes
### Batch many questions in parallel
```python
import asyncio
from edison_client import EdisonClient, JobNames
async def main():
client = EdisonClient(api_key=os.environ["EDISON_API_KEY"])
queries = [
"What is the half-life of remdesivir?",
"What efficacy did GLP-1 agonists show in NAFLD trials?",
"Latest evidence on creatine for cognitive function in older adults?",
]
tasks = [{"name": JobNames.LITERATURE, "query": q} for q in queries]
results = await client.arun_tasks_until_done(tasks)
for q, r in zip(queries, results):
print(q, "→", r.has_successful_answer, "\n", r.answer[:400], "\n")
asyncio.run(main())
```
### Follow-up question on a previous answer
```python
first_id = client.create_task({
"name": JobNames.LITERATURE,
"query": "How many species of birds are there?",
})
follow_up = client.run_tasks_until_done({
"name": JobNames.LITERATURE,
"query": "Of those, how many are corvids?",
"runtime_config": {"continued_job_id": first_id},
})
```
### Fire-and-poll
```python
task_id = client.create_task({"name": JobNames.LITERATURE, "query": "..."})
# … do other work …
status = client.get_task(task_id) # status.status: 'queued' | 'running' | 'success' | 'failed'
```
## Picking the right FutureHouse agent
| If user wants… | Use |
|---|---|
| One focused literature answer (fast) | **Crow** = `JobNames.LITERATURE` (this skill) |
| Same, but maximum reasoning quality | **Falcon** = `JobNames.LITERATURE_HIGH` |
| "Has anyone ever done / measured / tried X?" | **Owl** = `JobNames.PRECEDENT` |
| Synthesis route, molecule design, cheminformatics | **Phoenix** = `JobNames.MOLECULES` |
| Run analysis on a biological dataset | **Finch** = `JobNames.ANALYSIS` |
## Failure modes
- `has_successful_answer == False`: the agent looked but couldn't ground a confident answer. Show the user `resp.answer` (often "I don't know" with reasons) rather than fabricating.
- 401 / `Unauthorized`: `EDISON_API_KEY` missing or invalid.
- `Insufficient credits`: tell the user to top up at <https://platform.edisonscientific.com/profile>.
- Long queries can take 30 s – 3 min. Use `arun_tasks_until_done` for parallel batches.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!