Food-Research — Comprehensive Evidence Synthesis for Food & Nutrition Science
Build a broad, defensible understanding of a topic by searching many sources,
screening them consistently, and synthesizing across them. Original work; no
third-party research text is reused. Architecture informed by open community
literature-search skills (see Acknowledgements in the repo README).
Streams — pick one and when to use it
Four streams share the same search/screening machinery but differ in depth. Three
of them (quick brief, full review, deep research) prioritize sources by
journal ranking via journal_ranker; the systematic stream does not
(inclusion is by pre-specified eligibility, not prestige).
| Stream |
Use it when… |
Depth |
Journal-ranking filter |
| quick brief |
You need fast orientation on a topic — "what's known about X", a starting point, a scoping glance. |
One search pass; top sources; key open questions. May run inline without subagents. |
Yes — Tier 1 only, usually |
| full review |
You want a thorough narrative review manuscript (the default). |
Four-layer search + two-phase screening + synthesis → write manuscript (writer) → review loop (reviewer) → Word (.docx). |
Yes — Tier 1 preferred, Tier 2 to fill gaps |
| deep research |
The question extends beyond the literature — regulatory landscape, market/technology state, an open-ended "investigate this" — or you want an iterative, verified deep dive on a subtopic. |
Calls the food-deep-research skill (scope → plan → investigate → verify → synthesize → critique loop); its literature portion still passes through journal ranking. |
Yes — for the literature portion |
| systematic |
You need a reproducible, auditable PRISMA review / meta-analysis with a protocol, ≥3 databases, dual independent screening, and risk-of-bias (OHAT) — i.e. a defensible, publishable systematic review. |
Full systematic_reviewer pipeline (protocol → sr_search → dual 3-step sr_screener + sr_moderator → PRISMA → data_extractor results table → risk_of_bias OHAT → sr_synthesis → reviewer loop → writer Word .docx). |
No — eligibility-based inclusion |
First move — set up full-text access (once)
Synthesis quality depends on reading the actual articles, not abstracts. At the
start (any stream), run the food-fetch first-run setup
(python3 scripts/food_fetch_setup.py status): if the user hasn't set up access,
surface the one-time highlighted request to provide their EndNote .Data folder
(or Zotero/Mendeley / a PDF folder) or institutional access, warning that
without non-open-access access the accuracy is substantially limited; save the
choice so it isn't re-asked. If they chose "open-access only", remind briefly of
that accuracy limit each run. Don't block — proceed at open-access + abstract level and
flag paywalled sources in the coverage note. Full rules: food-fetch/SKILL.md and
references/full-text-access.md.
Overall flow
flowchart TD
Q[Research question] --> M{Which stream?}
M -- quick / full --> S1[search_strategist]
M -- deep research --> DR[food-deep-research skill<br/>scope, plan, investigate,<br/>verify, critique loop]
M -- systematic --> SR[systematic_reviewer<br/>PRISMA pipeline]
S1 --> S2[source_scout<br/>four-layer search + dedup]
S2 --> S3[screener_appraiser<br/>two-phase screening + quality tags]
S3 --> JR[journal_ranker<br/>Tier 1 preferred; Tier 2 to fill gaps;<br/>avoid Tier 4]
DR --> JR
JR --> SY[synthesis<br/>evidence matrix, grading, gaps, coverage advisory]
SY --> WR[writer<br/>manuscript, APA7 / target journal]
WR --> RV[reviewer<br/>editorial + integrity]
RV -- revise --> SY
RV -- accept --> DOCX[Final review manuscript .docx]
SR --> SROUT[Systematic-review manuscript .docx<br/>PRISMA + OHAT bias + per-RQ synthesis]
Both the full review and systematic streams finish by writing a manuscript,
passing it through the reviewer loop, and delivering a Word document
(writer). The quick brief and deep research streams do not (quick brief
returns a short brief; deep research is handled by the food-deep-research skill).
Stream detail — invocation & subagent call sequence
Quick brief
- When it wakes: the user wants fast orientation, not an exhaustive review. Phrases like "give me a quick brief on…", "what's known about…", "quick overview of…", "brief me on…", "orient me on…", "TL;DR of the research on…". Also the default when the user asks a scoped factual research question and signals speed ("quickly", "just the highlights").
- How it runs (lightweight — may be inline, no subagents required):
- Frame the question in one line (concepts + scope).
- One search pass over 2–3 high-yield sources (PubMed/Consensus/CrossRef via MCP, else web search) — no four-layer expansion.
- Apply
journal_ranker Tier 1 only — keep Q1/Q2 food-science & nutrition, Nature/Science/Cell, and Q1/Q2 other-discipline hits; ignore the rest unless nothing Tier 1 exists.
- Skim-appraise (relevance + obvious rigor red flags) — no full rubric.
- Write a short brief: 3–6 key findings with citations, the consensus vs open questions, and 2–3 sources to read next.
- Subagents: optional. Run inline for speed; only spin up
source_scout if the topic is broad. journal_ranker is applied as a filter step, not necessarily a separate dispatch.
Full review (default)
- When it wakes: the user wants a thorough, citable review/evidence brief — "do a literature review on…", "comprehensive review of…", "survey the field of…", "build an evidence brief on…", "review the evidence for…" — or asks to research a topic without signalling that speed matters.
- How it runs (full subagent pipeline): dispatch subagents in this order (independent retrieval runs in parallel):
search_strategist → search plan (concepts, controlled vocabulary, Boolean strings, source list).
source_scout → four-layer search + dedup → candidate set (parallel per source).
screener_appraiser → two-phase screening + quality rubric → included set with High/Medium/Low tags.
journal_ranker → prioritize by tier (Tier 1 preferred; Tier 2 only to fill gaps; avoid Tier 4).
synthesis → evidence matrix, grading, contradiction resolution, coverage advisory, gaps.
writer → write the review manuscript (APA 7.0 default, or target journal via journal-selector).
reviewer → editorial + integrity review; if not Accept, loop back to synthesis/writer to revise, then re-review (cap ~2–3).
writer → export the accepted manuscript to Word (.docx).
- Output: a finished review manuscript (
.docx) + annotated bibliography + .bib/.ris.
Deep research
- When it wakes: "deep research on…", "investigate … thoroughly", "I need a deep dive / full briefing on…", or a question extending beyond the literature (regulatory, market, technology landscape). Calls the
food-deep-research skill; its literature portion still passes through journal_ranker.
Systematic
- When it wakes — use the systematic stream when the user needs a defensible, reproducible, publishable systematic review, signalled by any of:
- Explicit terms: "systematic review", "systematic literature review", "PRISMA", "meta-analysis".
- A methodological requirement: "follow a protocol / PROSPERO", "two independent reviewers / dual screening", "with risk of bias", "OHAT", "PRISMA flow diagram".
- A rigor/audit intent: the user wants the review to be reproducible and auditable (every search string, screening decision, and exclusion reason recorded), not just a narrative overview.
- If the user only wants a broad narrative overview, use full review instead; if unsure which they want, ask one question ("narrative review or a full PRISMA systematic review with risk-of-bias?").
- How it runs: the
systematic_reviewer orchestrator drives protocol → sr_search (≥3 databases) → dual independent three-step screening (sr_screener ×2 + sr_moderator) → PRISMA flow → data_extractor results table → risk_of_bias (OHAT) → sr_synthesis → reviewer loop → writer Word .docx. Journal ranking is not applied (eligibility-based inclusion).
Subagents (dispatch, don't inline)
Run these as subagents (via the Agent tool). Layers that are independent — e.g.
per-source retrieval — run in parallel.
search_strategist — turns the question into a search plan: concepts, synonyms/controlled vocabulary (MeSH, FSTA/CAB thesaurus terms), Boolean strings per database, filters, and the source list.
source_scout — executes the four-layer retrieval across sources, records hit counts, and deduplicates into one candidate set.
screener_appraiser — two-phase screening + the food-science quality rubric; outputs the included set with quality tags.
journal_ranker — prioritizes the screened sources by journal ranking (Q1/Q2 food-science & nutrition, plus Nature/Science/Cell families and Q1/Q2 in any other discipline = highest; Q3 second; Q4 avoided). Used by quick brief, full review, and deep research only — never inside a systematic review.
synthesis — evidence matrix, contradiction resolution, evidence grading, gap analysis, and the coverage advisory.
writer — writes the review manuscript and exports Word (.docx) (APA 7.0 default, or target journal via journal-selector). Full review + systematic.
reviewer — combined editorial + integrity review with a revision loop. Full review + systematic.
Systematic-review subagents (systematic stream only):
8. systematic_reviewer — PRISMA orchestrator (protocol → search → dual screening → PRISMA → extraction → risk of bias → synthesis → review → Word).
9. sr_search — ≥3 databases (Web of Science, Scopus, PubMed preferred); combine + deduplicate; log all strings/counts.
10. sr_screener — run as two independent instances; three steps (title → abstract → full text) with per-record include/exclude + reasons.
11. sr_moderator — after each step, compares the two screeners, resolves conflicts, keeps PRISMA counts.
12. data_extractor — pulls the results table (by research question) from the final shortlist.
13. risk_of_bias — OHAT risk-of-bias assessment (in vitro / human / animal) by default.
14. sr_synthesis — PRISMA description → risk-of-bias results → per-RQ synthesis; formats APA 7.0 or target journal.
For a quick brief you may run the workflow inline without subagents.
Step 1 — Frame the question (search_strategist)
- Interventions/nutrition: PICO (Population, Intervention/Exposure, Comparator, Outcome).
- Composition/process/safety: define the food matrix, factor/treatment, and measured response.
- State scope, timeframe, languages, and exclusions. Break the question into concepts and list synonyms + controlled-vocabulary terms per concept.
Step 2 — Plan the sources
Cover several source classes so the picture isn't skewed by one index:
- Bibliographic: FSTA (Food Science & Technology Abstracts — the core food index), PubMed/MEDLINE, Web of Science, Scopus, CAB Abstracts, AGRICOLA, AGRIS (FAO).
- Preprints: bioRxiv, ChemRxiv, agriRxiv.
- Semantic / aggregators: CrossRef, Semantic Scholar, Consensus, Dimensions, Lens.org.
- Safety & regulatory / grey: EFSA, US FDA, USDA (incl. FoodData Central), Codex Alimentarius, WHO, EU/national food-standards bodies.
- Chemistry / bioactives: PubChem, ChEMBL, FooDB, Phenol-Explorer.
- Methods / standards: AOAC, ISO.
Tooling: use whatever literature MCP tools are connected (e.g. PubMed,
Consensus, bioRxiv, CrossRef, Scopus/ScienceDirect) for live retrieval; fall
back to web search for any source without a tool. Record which tool/source
produced each result so the search is reproducible.
Step 3 — Four-layer search (source_scout)
- Layer 1 — structured search: Boolean/keyword + controlled vocabulary across the bibliographic databases (target 100–500 raw hits). Apply date/language filters.
- Layer 2 — backward chaining: mine the reference lists of the key reviews and seminal papers for older frequently-cited work.
- Layer 3 — forward chaining: "cited by" from seminal works to catch the latest research.
- Layer 4 — semantic / cross-disciplinary: related-article and semantic tools to catch methodologically or disciplinarily adjacent work (chemistry, engineering, nutrition, microbiology) that keyword search misses.
- Deduplicate by DOI/title across sources. Record the hit count at each layer.
- Stop when the search saturates — e.g. ≥3 of: no new themes appearing, citation loops closing, timeframe covered, key authors/venues all seen, new hits <10% novel.
Step 4 — Two-phase screening & appraisal (screener_appraiser)
- Phase A — title/abstract: apply inclusion/exclusion; narrow to ~30–50 candidates.
- Phase B — full text: read the semantically strong and borderline items; land ~15–30 (more for systematic).
- Quality rubric (score each source): study design & rigor; replication and whether n is biological (not pseudo-replicated); method validation (LOD/LOQ, recovery, controls, appropriate standards); journal quality and predatory/fabrication check; relevance to the question; recency/currency. Tag each source High / Medium / Low.
- Universal gates (relevance, methodological soundness, predatory/fabrication) are never waived; only publication-type/recency expectations flex by subfield.
Step 4.5 — Prioritize by journal ranking (journal_ranker) — quick / full / deep only
- Tier every screened source: Tier 1 = Q1/Q2 in Food Science & Technology or Nutrition & Dietetics, any Nature/Science/Cell-family journal, or Q1/Q2 in any other WoS discipline/multidisciplinary category; Tier 2 = Q3; Tier 3 = Q4 (avoid).
- Prefer the highest tier that covers each point — if Tier 1 sources suffice, don't include Tier 2/3 for it; drop to Tier 2 only when Tier 1 is insufficient; use Tier 3 only when nothing better exists, and flag it.
- Uses
references/journal-priority.csv for food/nutrition quartiles; JCR knowledge for other fields.
- Skip this step entirely in the systematic stream — inclusion there is by eligibility, not journal ranking.
Step 5 — Synthesis (synthesis)
- Evidence matrix: source × theme grid showing coverage density and method spread.
- Integrate & resolve conflicts: weigh by design and rigor; separate consistent findings from contested ones; explain disagreements (matrix, method, dose, population).
- Grade the evidence: prefer systematic reviews/RCTs for health/nutrition claims; require standardized measurement (AOAC/ISO) for compositional/process claims. State confidence and why.
- Coverage advisory: flag when >70% of sources share one publication year, region, food matrix, method, or venue family — a bias risk.
- Gaps: under-powered areas, missing methods, population/geographic voids; propose the next study.
Deliverables
An evidence brief containing: question & scope; reproducible search strategy
(sources, Boolean strings, filters, dates); screening funnel with counts;
annotated bibliography (per source: design, findings, relevance, quality tag,
intended paper section); literature/evidence matrix; graded conclusions;
coverage advisory; and a gap list. Export references as .bib/.ris
(deduplicated) for reuse.
Deep dives
For a subtopic that needs open-ended investigation beyond the literature (e.g.
regulatory landscape, market/technology state), call the food-deep-research
skill and fold its sourced synthesis back into the evidence brief.
References (load as needed)
references/literature-sources.md — databases + APIs (FSTA/PubMed/WoS/Scopus/CrossRef/OpenAlex + EFSA/FDA/USDA) for search_strategist/source_scout/sr_search.
references/full-text-access.md — reading the actual full text (open access → connected tool → user PDFs → library session), legitimate access only; for source_scout/screener_appraiser and any step that needs more than an abstract.
references/source-quality-hierarchy.md — evidence grading for screener_appraiser/synthesis.
references/reporting-guidelines.md — EQUATOR/PRISMA/CONSORT/STROBE for the systematic stream and appraisal.
references/ohat-risk-of-bias.md — full OHAT tool (11 questions, 4-point scale, design applicability incl. corrected in-vitro Q3/Q4 = NA, and in-vitro criteria) for risk_of_bias.
food-paper/references/writing-style.md + food-paper/references/human-writing.md — writer: academic style + remove AI tells, applied together — write in the field's academic register as a human scientist, and strip machine tells (inflated significance, vague attribution, stock vocabulary, hedge stacking) while keeping calibrated hedging and journal form.
food-paper/references/faithfulness-and-citation.md — grounding + four-gate citation check. Every finding, number, and citation traces to a real source; never fabricate. scripts/verify_citations.py audits the reference set.
food-paper/references/privacy-and-confidentiality.md — privacy scan before delivering the brief/report (no local paths/secrets); scripts/privacy_scan.py.
Handoff
Sources tagged and assigned by section feed food-paper (Introduction and
Discussion evidence, reference list) and are orchestrated by food-pipeline.
Food & nutrition rigor notes
Watch for pseudo-replication (analytical replicates as biological n); matrix
effects and single-cultivar/single-batch over-generalization; unvalidated
assays; and undisclosed funding/conflicts, which are common and material here.
1---2name: food-research3description: Run a comprehensive, multi-source literature and evidence-synthesis workflow for food & nutrition science. Use when the user wants to research a food/nutrition topic in depth, do a literature review, build an evidence brief, screen and synthesize many sources, verify citations, or scope a systematic review. Coordinates food-science databases, preprints, semantic search, and food-safety/regulatory sources; runs a four-layer search, two-phase screening, and cross-source synthesis via subagents; grades evidence and maps gaps. Triggers: research this topic, deep literature review, comprehensive review, evidence synthesis, systematic review, scope a review, find all the literature, what does the evidence say, food science research, nutrition evidence, survey the field.4---56# Food-Research — Comprehensive Evidence Synthesis for Food & Nutrition Science78Build a broad, defensible understanding of a topic by searching many sources,9screening them consistently, and synthesizing across them. Original work; no10third-party research text is reused. Architecture informed by open community11literature-search skills (see Acknowledgements in the repo README).1213## Streams — pick one and when to use it1415Four streams share the same search/screening machinery but differ in depth. Three16of them (**quick brief, full review, deep research**) prioritize sources by17**journal ranking** via `journal_ranker`; the **systematic** stream does not18(inclusion is by pre-specified eligibility, not prestige).1920| Stream | Use it when… | Depth | Journal-ranking filter |21|---|---|---|---|22| **quick brief** | You need fast orientation on a topic — "what's known about X", a starting point, a scoping glance. | One search pass; top sources; key open questions. May run inline without subagents. | Yes — Tier 1 only, usually |23| **full review** | You want a thorough narrative review manuscript (the default). | Four-layer search + two-phase screening + synthesis → **write manuscript** (`writer`) → **review loop** (`reviewer`) → **Word (.docx)**. | Yes — Tier 1 preferred, Tier 2 to fill gaps |24| **deep research** | The question extends beyond the literature — regulatory landscape, market/technology state, an open-ended "investigate this" — or you want an iterative, verified deep dive on a subtopic. | Calls the **`food-deep-research`** skill (scope → plan → investigate → verify → synthesize → critique loop); its literature portion still passes through journal ranking. | Yes — for the literature portion |25| **systematic** | You need a reproducible, auditable PRISMA review / meta-analysis with a protocol, ≥3 databases, **dual independent screening**, and **risk-of-bias (OHAT)** — i.e. a defensible, publishable systematic review. | Full **`systematic_reviewer`** pipeline (protocol → `sr_search` → dual 3-step `sr_screener` + `sr_moderator` → PRISMA → `data_extractor` results table → `risk_of_bias` OHAT → `sr_synthesis` → `reviewer` loop → `writer` **Word .docx**). | **No** — eligibility-based inclusion |2627## First move — set up full-text access (once)28Synthesis quality depends on reading the **actual articles**, not abstracts. At the29start (any stream), run the **`food-fetch` first-run setup**30(`python3 scripts/food_fetch_setup.py status`): if the user hasn't set up access,31surface the one-time highlighted request to provide their **EndNote `.Data` folder**32(or Zotero/Mendeley / a PDF folder) or **institutional access**, warning that33**without non-open-access access the accuracy is substantially limited**; save the34choice so it isn't re-asked. If they chose "open-access only", **remind** briefly of35that accuracy limit each run. Don't block — proceed at open-access + abstract level and36flag paywalled sources in the coverage note. Full rules: `food-fetch/SKILL.md` and37`references/full-text-access.md`.3839### Overall flow4041```mermaid42flowchart TD43 Q[Research question] --> M{Which stream?}44 M -- quick / full --> S1[search_strategist]45 M -- deep research --> DR[food-deep-research skill<br/>scope, plan, investigate,<br/>verify, critique loop]46 M -- systematic --> SR[systematic_reviewer<br/>PRISMA pipeline]47 S1 --> S2[source_scout<br/>four-layer search + dedup]48 S2 --> S3[screener_appraiser<br/>two-phase screening + quality tags]49 S3 --> JR[journal_ranker<br/>Tier 1 preferred; Tier 2 to fill gaps;<br/>avoid Tier 4]50 DR --> JR51 JR --> SY[synthesis<br/>evidence matrix, grading, gaps, coverage advisory]52 SY --> WR[writer<br/>manuscript, APA7 / target journal]53 WR --> RV[reviewer<br/>editorial + integrity]54 RV -- revise --> SY55 RV -- accept --> DOCX[Final review manuscript .docx]56 SR --> SROUT[Systematic-review manuscript .docx<br/>PRISMA + OHAT bias + per-RQ synthesis]57```5859Both the **full review** and **systematic** streams finish by writing a manuscript,60passing it through the `reviewer` loop, and delivering a **Word document**61(`writer`). The **quick brief** and **deep research** streams do not (quick brief62returns a short brief; deep research is handled by the `food-deep-research` skill).6364## Stream detail — invocation & subagent call sequence6566### Quick brief67- **When it wakes:** the user wants fast orientation, not an exhaustive review. Phrases like *"give me a quick brief on…", "what's known about…", "quick overview of…", "brief me on…", "orient me on…", "TL;DR of the research on…"*. Also the default when the user asks a scoped factual research question and signals speed ("quickly", "just the highlights").68- **How it runs (lightweight — may be inline, no subagents required):**69 1. Frame the question in one line (concepts + scope).70 2. One search pass over 2–3 high-yield sources (PubMed/Consensus/CrossRef via MCP, else web search) — no four-layer expansion.71 3. Apply `journal_ranker` **Tier 1 only** — keep Q1/Q2 food-science & nutrition, Nature/Science/Cell, and Q1/Q2 other-discipline hits; ignore the rest unless nothing Tier 1 exists.72 4. Skim-appraise (relevance + obvious rigor red flags) — no full rubric.73 5. Write a short brief: 3–6 key findings with citations, the consensus vs open questions, and 2–3 sources to read next.74- **Subagents:** optional. Run inline for speed; only spin up `source_scout` if the topic is broad. `journal_ranker` is applied as a filter step, not necessarily a separate dispatch.7576### Full review (default)77- **When it wakes:** the user wants a thorough, citable review/evidence brief — *"do a literature review on…", "comprehensive review of…", "survey the field of…", "build an evidence brief on…", "review the evidence for…"* — or asks to research a topic without signalling that speed matters.78- **How it runs (full subagent pipeline):** dispatch subagents in this order (independent retrieval runs in parallel):79 1. `search_strategist` → search plan (concepts, controlled vocabulary, Boolean strings, source list).80 2. `source_scout` → four-layer search + dedup → candidate set (parallel per source).81 3. `screener_appraiser` → two-phase screening + quality rubric → included set with High/Medium/Low tags.82 4. `journal_ranker` → prioritize by tier (Tier 1 preferred; Tier 2 only to fill gaps; avoid Tier 4).83 5. `synthesis` → evidence matrix, grading, contradiction resolution, coverage advisory, gaps.84 6. `writer` → write the review manuscript (APA 7.0 default, or target journal via `journal-selector`).85 7. `reviewer` → editorial + integrity review; if not Accept, loop back to `synthesis`/`writer` to revise, then re-review (cap ~2–3).86 8. `writer` → export the accepted manuscript to **Word (.docx)**.87 - Output: a finished review manuscript (`.docx`) + annotated bibliography + `.bib/.ris`.8889### Deep research90- **When it wakes:** *"deep research on…", "investigate … thoroughly", "I need a deep dive / full briefing on…"*, or a question extending beyond the literature (regulatory, market, technology landscape). Calls the **`food-deep-research`** skill; its literature portion still passes through `journal_ranker`.9192### Systematic93- **When it wakes — use the systematic stream when the user needs a defensible, reproducible, publishable systematic review, signalled by any of:**94 - Explicit terms: *"systematic review", "systematic literature review", "PRISMA", "meta-analysis"*.95 - A methodological requirement: *"follow a protocol / PROSPERO", "two independent reviewers / dual screening", "with risk of bias", "OHAT", "PRISMA flow diagram"*.96 - A rigor/audit intent: the user wants the review to be reproducible and auditable (every search string, screening decision, and exclusion reason recorded), not just a narrative overview.97 - If the user only wants a broad narrative overview, use **full review** instead; if unsure which they want, ask one question ("narrative review or a full PRISMA systematic review with risk-of-bias?").98- **How it runs:** the `systematic_reviewer` orchestrator drives protocol → `sr_search` (≥3 databases) → dual independent three-step screening (`sr_screener` ×2 + `sr_moderator`) → PRISMA flow → `data_extractor` results table → `risk_of_bias` (OHAT) → `sr_synthesis` → `reviewer` loop → `writer` **Word .docx**. **Journal ranking is not applied** (eligibility-based inclusion).99100## Subagents (dispatch, don't inline)101Run these as subagents (via the Agent tool). Layers that are independent — e.g.102per-source retrieval — run in **parallel**.1031. **`search_strategist`** — turns the question into a search plan: concepts, synonyms/controlled vocabulary (MeSH, FSTA/CAB thesaurus terms), Boolean strings per database, filters, and the source list.1042. **`source_scout`** — executes the four-layer retrieval across sources, records hit counts, and deduplicates into one candidate set.1053. **`screener_appraiser`** — two-phase screening + the food-science quality rubric; outputs the included set with quality tags.1064. **`journal_ranker`** — prioritizes the screened sources by journal ranking (Q1/Q2 food-science & nutrition, plus Nature/Science/Cell families and Q1/Q2 in any other discipline = highest; Q3 second; Q4 avoided). Used by **quick brief, full review, and deep research only** — never inside a systematic review.1075. **`synthesis`** — evidence matrix, contradiction resolution, evidence grading, gap analysis, and the coverage advisory.1086. **`writer`** — writes the review manuscript and exports **Word (.docx)** (APA 7.0 default, or target journal via `journal-selector`). Full review + systematic.1097. **`reviewer`** — combined editorial + integrity review with a revision loop. Full review + systematic.110111**Systematic-review subagents** (systematic stream only):1128. **`systematic_reviewer`** — PRISMA orchestrator (protocol → search → dual screening → PRISMA → extraction → risk of bias → synthesis → review → Word).1139. **`sr_search`** — ≥3 databases (Web of Science, Scopus, PubMed preferred); combine + deduplicate; log all strings/counts.11410. **`sr_screener`** — run as **two independent instances**; three steps (title → abstract → full text) with per-record include/exclude + reasons.11511. **`sr_moderator`** — after each step, compares the two screeners, resolves conflicts, keeps PRISMA counts.11612. **`data_extractor`** — pulls the results table (by research question) from the final shortlist.11713. **`risk_of_bias`** — OHAT risk-of-bias assessment (in vitro / human / animal) by default.11814. **`sr_synthesis`** — PRISMA description → risk-of-bias results → per-RQ synthesis; formats APA 7.0 or target journal.119120For a quick brief you may run the workflow inline without subagents.121122## Step 1 — Frame the question (`search_strategist`)123- Interventions/nutrition: PICO (Population, Intervention/Exposure, Comparator, Outcome).124- Composition/process/safety: define the food matrix, factor/treatment, and measured response.125- State scope, timeframe, languages, and exclusions. Break the question into concepts and list synonyms + controlled-vocabulary terms per concept.126127## Step 2 — Plan the sources128Cover several source classes so the picture isn't skewed by one index:129- **Bibliographic:** FSTA (Food Science & Technology Abstracts — the core food index), PubMed/MEDLINE, Web of Science, Scopus, CAB Abstracts, AGRICOLA, AGRIS (FAO).130- **Preprints:** bioRxiv, ChemRxiv, agriRxiv.131- **Semantic / aggregators:** CrossRef, Semantic Scholar, Consensus, Dimensions, Lens.org.132- **Safety & regulatory / grey:** EFSA, US FDA, USDA (incl. FoodData Central), Codex Alimentarius, WHO, EU/national food-standards bodies.133- **Chemistry / bioactives:** PubChem, ChEMBL, FooDB, Phenol-Explorer.134- **Methods / standards:** AOAC, ISO.135136**Tooling:** use whatever literature MCP tools are connected (e.g. PubMed,137Consensus, bioRxiv, CrossRef, Scopus/ScienceDirect) for live retrieval; fall138back to web search for any source without a tool. Record which tool/source139produced each result so the search is reproducible.140141## Step 3 — Four-layer search (`source_scout`)1421. **Layer 1 — structured search:** Boolean/keyword + controlled vocabulary across the bibliographic databases (target 100–500 raw hits). Apply date/language filters.1432. **Layer 2 — backward chaining:** mine the reference lists of the key reviews and seminal papers for older frequently-cited work.1443. **Layer 3 — forward chaining:** "cited by" from seminal works to catch the latest research.1454. **Layer 4 — semantic / cross-disciplinary:** related-article and semantic tools to catch methodologically or disciplinarily adjacent work (chemistry, engineering, nutrition, microbiology) that keyword search misses.146- **Deduplicate** by DOI/title across sources. Record the hit count at each layer.147- **Stop** when the search saturates — e.g. ≥3 of: no new themes appearing, citation loops closing, timeframe covered, key authors/venues all seen, new hits <10% novel.148149## Step 4 — Two-phase screening & appraisal (`screener_appraiser`)150- **Phase A — title/abstract:** apply inclusion/exclusion; narrow to ~30–50 candidates.151- **Phase B — full text:** read the semantically strong and borderline items; land ~15–30 (more for systematic).152- **Quality rubric (score each source):** study design & rigor; replication and whether n is biological (not pseudo-replicated); method validation (LOD/LOQ, recovery, controls, appropriate standards); journal quality and predatory/fabrication check; relevance to the question; recency/currency. Tag each source **High / Medium / Low**.153- Universal gates (relevance, methodological soundness, predatory/fabrication) are never waived; only publication-type/recency expectations flex by subfield.154155## Step 4.5 — Prioritize by journal ranking (`journal_ranker`) — quick / full / deep only156- Tier every screened source: **Tier 1** = Q1/Q2 in Food Science & Technology or Nutrition & Dietetics, any Nature/Science/Cell-family journal, or Q1/Q2 in any other WoS discipline/multidisciplinary category; **Tier 2** = Q3; **Tier 3** = Q4 (avoid).157- Prefer the highest tier that covers each point — if Tier 1 sources suffice, don't include Tier 2/3 for it; drop to Tier 2 only when Tier 1 is insufficient; use Tier 3 only when nothing better exists, and flag it.158- Uses `references/journal-priority.csv` for food/nutrition quartiles; JCR knowledge for other fields.159- **Skip this step entirely in the systematic stream** — inclusion there is by eligibility, not journal ranking.160161## Step 5 — Synthesis (`synthesis`)162- **Evidence matrix:** source × theme grid showing coverage density and method spread.163- **Integrate & resolve conflicts:** weigh by design and rigor; separate consistent findings from contested ones; explain disagreements (matrix, method, dose, population).164- **Grade the evidence:** prefer systematic reviews/RCTs for health/nutrition claims; require standardized measurement (AOAC/ISO) for compositional/process claims. State confidence and why.165- **Coverage advisory:** flag when >70% of sources share one publication year, region, food matrix, method, or venue family — a bias risk.166- **Gaps:** under-powered areas, missing methods, population/geographic voids; propose the next study.167168## Deliverables169An evidence brief containing: question & scope; **reproducible search strategy**170(sources, Boolean strings, filters, dates); screening funnel with counts;171**annotated bibliography** (per source: design, findings, relevance, quality tag,172intended paper section); **literature/evidence matrix**; graded conclusions;173**coverage advisory**; and a **gap list**. Export references as `.bib`/`.ris`174(deduplicated) for reuse.175176## Deep dives177For a subtopic that needs open-ended investigation beyond the literature (e.g.178regulatory landscape, market/technology state), call the **`food-deep-research`**179skill and fold its sourced synthesis back into the evidence brief.180181## References (load as needed)182- `references/literature-sources.md` — databases + APIs (FSTA/PubMed/WoS/Scopus/CrossRef/OpenAlex + EFSA/FDA/USDA) for `search_strategist`/`source_scout`/`sr_search`.183- `references/full-text-access.md` — reading the **actual full text** (open access → connected tool → user PDFs → library session), legitimate access only; for `source_scout`/`screener_appraiser` and any step that needs more than an abstract.184- `references/source-quality-hierarchy.md` — evidence grading for `screener_appraiser`/`synthesis`.185- `references/reporting-guidelines.md` — EQUATOR/PRISMA/CONSORT/STROBE for the systematic stream and appraisal.186- `references/ohat-risk-of-bias.md` — full OHAT tool (11 questions, 4-point scale, design applicability incl. corrected in-vitro Q3/Q4 = NA, and in-vitro criteria) for `risk_of_bias`.187- `food-paper/references/writing-style.md` + `food-paper/references/human-writing.md` — **`writer`: academic style + remove AI tells, applied together** — write in the field's academic register as a human scientist, and strip machine tells (inflated significance, vague attribution, stock vocabulary, hedge stacking) while keeping calibrated hedging and journal form.188- `food-paper/references/faithfulness-and-citation.md` — **grounding + four-gate citation check.** Every finding, number, and citation traces to a real source; never fabricate. `scripts/verify_citations.py` audits the reference set.189- `food-paper/references/privacy-and-confidentiality.md` — **privacy scan before delivering** the brief/report (no local paths/secrets); `scripts/privacy_scan.py`.190191## Handoff192Sources tagged and assigned by section feed `food-paper` (Introduction and193Discussion evidence, reference list) and are orchestrated by `food-pipeline`.194195## Food & nutrition rigor notes196Watch for pseudo-replication (analytical replicates as biological n); matrix197effects and single-cultivar/single-batch over-generalization; unvalidated198assays; and undisclosed funding/conflicts, which are common and material here.