In-depth and reliable research on Bio/Med
Applicable Scenarios: Complete a round of biological/biomedical research literature retrieval and provide users with detailed and reliable output. Core Objectives: 1. After a user initiates a search, the system can break down the question and keywords. 2. Retrieve literature using publicly available and reproducible data sources. 3. Deduplicate, stratify, classify, and sort the search results. 4. Use clickable text citations in the response. 5. List complete literature information at the end of the document, and mark the IF (Information Impact Factor) with publicly available sources; if high-confidence verification is not possible, it must be marked as "Pending Verification" or "Not Detected".
Featured by
YouMind
Why we love this skill
This skill provides a rigorous biomedical literature review process, from multi-level searches to impact factor (IF) verification, ensuring highly reliable and reproducible results, making it a valuable tool for researchers.
Instructions
The core of this process is: first, use multiple queries to perform a reproducible initial screening in PubMed/NCBI E-utilities, then use PMID for deduplication and abstract evidence grading; only a small number of key documents enter the PMC/BioC full-text review; in-text citations must be clickable; complete bibliographic information must be listed at the end of the article; IF can only be conservatively checked through publicly accessible sources, and cannot be assumed to have JCR or local databases, cannot be guessed, and low-confidence matches cannot be treated as definitive results.
1. Preprocessing after a user initiates a search
1.1 First, analyze the user's question.
After receiving a user's question, the natural language question is first broken down into structured elements.
Must be identified:
• Research subjects: genes, proteins, drugs, channels, cell types, tissues, diseases, and models.
• Biological systems: humans, mice, rats, zebrafish, organoids, retina, brain regions, cell lines, etc.
• Relationship types: expression, regulation, function, mechanism, phenotype, death, survival, treatment, toxicity, development, degeneration, etc.
• Evidence requirements: Whether direct evidence, mechanistic evidence, full-text evidence, charts, dosage parameters, and experimental methods are required.
• Time range: unlimited time, the last 5 years, the last 1 year, the latest developments, and classic literature.
• Output types: short answer, representative literature, review summary, experimental design suggestions, evidence table, mechanism diagram.
Example:
User issue:
"Please help me find literature related to retinal organoid death."
Structured decomposition (example):
• Core models: retinal organoid, retina organoid, hPSC-derived retinal organoid, optic cup organoid.
• Phenotype: cell death, apoptosis, degeneration, survival loss, stress, necrosis.
• Related cells: photoreceptor, cone, rod, retinal ganglion cell, Müller glia.
• Potential mechanisms: oxidative stress, ER stress, mitochondrial dysfunction, hypoxia, inflammation, ferroptosis, necroptosis.
• Evidence objectives: Prioritize original studies that directly observe cell death/apoptosis/degeneration in human or animal retinal organoids; then look for literature on indirect mechanisms.
1.2 Keyword Segmentation Principles (Example)
Don't just write one search query. Prepare at least three categories of terms for each concept.
Category 1: Precise words.
• retinal organoid
• retina organoid
• human retinal organoid
• hPSC-derived retinal organoid
• iPSC-derived retinal organoid
The second category: synonyms and hypernyms.
• optic cup organoid
• 3D retinal culture
• stem cell-derived retina
• retinal differentiation
• retinal tissue model
The third category: mechanism and phenotypic terms.
• apoptosis
• cell death
• degeneration
• survival
• stress
• oxidative stress
• ER stress
• mitochondrial dysfunction
• hypoxia
• necroptosis
• ferroptosis
If the user specifies the cell type, add:
• photoreceptor
• cone
• rod
• retinal ganglion cell
• Müller glia
• bipolar cell
• amacrine cell
If the user specifies the species or origin, add:
• human
• mouse
• rat
• zebrafish
• hESC
• iPSC
• pluripotent stem cell
1.3 Generating hierarchical search queries
Generate at least 3–6 queries. Each query corresponds to a search objective.
First layer: Direct evidence retrieval.
Used to find literature that directly matches the target model and target phenotype.
```text
("retinal organoid" OR "retina organoid" OR "human retinal organoid") AND (apoptosis OR "cell death" OR degeneration)
```
Second layer: Extended model retrieval.
Used to capture literature where the author did not use the precise term "retinal organoid" but it is actually relevant.
```text
("optic cup organoid" OR "3D retinal culture" OR "stem cell-derived retina") AND (survival OR apoptosis OR stress)
```
Third layer: Mechanism-specific search.
Used to verify specific pathways or mechanisms.
```text
("retinal organoid" OR "retina organoid") AND ("oxidative stress" OR "ER stress" OR hypoxia OR mitochondria)
```
Fourth layer: Cell type specific search.
```text
("retinal organoid" OR "retina organoid") AND (photoreceptor OR cone OR rod OR "retinal ganglion cell") AND (death OR apoptosis OR degeneration)
```
Fifth layer: Disease model retrieval.
```text
("retinal organoid" OR "retina organoid") AND (disease OR degeneration OR dystrophy OR retinitis OR glaucoma)
```
Sixth layer: Review/background search.
```text
("retinal organoid" OR "retina organoid") AND (review OR protocol OR model)
```
2. What methods and websites were used for the search?
2.1 Preferred: PubMed / NCBI E-utilities
PubMed is the preferred tool for searching biomedical literature. Do not default to scraping PubMed pages. Use the NCBI E-utilities API instead.
2.1.1 ESearch: Retrieving PMID using a query
interface:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi
```
parameter:
```text
db=pubmed
term=
retmode=json
retmax=20
sort=relevance
```
You can also sort by time:
```text
sort=pub+date
```
Example:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=pubmed&term=(%22retinal%20organoid%22%20OR%20%22retina%20organoid%22)%20AND%20(apoptosis%20OR%20%22cell%20death%22)&retmode=json&retmax=20&sort=relevance
```
Read from the return:
```text
esearchresult.idlist
```
This is the PMID list.
2.1.2 ESummary: Obtaining Literature Metadata
interface:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esummary.fcgi
```
parameter:
```text
db=pubmed
id=PMID1,PMID2,PMID3
retmode=json
```
Extracted fields:
• PMID
• title
• fulljournalname
• source/journal abbreviation
• pubdate
• authors
• DOI and PMCID in articleids
• volume, issue, pages
2.1.3 EFetch: Retrieving Summary and XML Details
interface:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi
```
parameter:
```text
db=pubmed
id=PMID1,PMID2
retmode=xml
rettype=abstract
```
Extracted fields:
• ArticleTitle
• AbstractText
• Journal Title
• ISOAbbreviation
• ISSN / eISSN
• PubDate
• DOI
• PMCID
• MeSH terms
2.1.4 Batch Retrieval Strategy
Recommended process:
1. Call ESearch for each query.
2. For each query, select the first 5–20 results.
3. Merge all PMIDs.
4. Use PMID to remove duplicates.
5. Use ESummary / EFetch to retrieve metadata and abstract data in batches.
6. In the initial screening stage, only read the metadata and abstract; do not start by reading the full text.
────────────────
2.2 Second Phase: Full Review of PMC/BioC Documents
The full text will only be included in the following cases:
• Users request to read the full text carefully.
• The abstract is insufficient to determine the mechanism.
• Requires charts, experimental methods, concentrations, dosages, IC50, EC50, Kd, and Ki.
• A small number of key PMIDs have been identified and require review on a case-by-case basis.
2.2.1 PMID to PMCID
interface:
```text
https://www.ncbi.nlm.nih.gov/pmc/utils/idconv/v1.0/?ids=
```
If PMCID is returned, it means that PMC may have open full text.
2.2.2 Prioritize BioC JSON
interface:
```text
https://www.ncbi.nlm.nih.gov/research/bionlp/RESTful/pmcoa.cgi/BioC_json/
```
Advantages: Highly structured, suitable for extracting main text paragraphs.
2.2.3 Try PMC XML when BioC is unavailable
interface:
```text
https://www.ncbi.nlm.nih.gov/pmc/articles/
```
Skip when extracting the main text:
• references
• bibliography
• Acknowledgments
• author contributions
• competing interests
Full text review must include a stop criterion:
• Each document is scanned only once.
• By default, only paragraphs related to the question are extracted.
• If the target field is not matched, mark it as "No direct evidence found".
• Avoid repeatedly scraping keywords.
────────────────
2.3 bioRxiv / medRxiv
Used to supplement the latest preprints.
You can use the official API:
```text
https://api.biorxiv.org/details/biorxiv/YYYY-MM-DD/YYYY-MM-DD
https://api.biorxiv.org/details/medrxiv/YYYY-MM-DD/YYYY-MM-DD
```
You can also use a regular search as a supplement:
```text
site:biorxiv.org retinal organoid apoptosis
site:medrxiv.org retina organoid degeneration
```
Preprints must be labeled:
```text
This is a preprint and has not been peer-reviewed.
```
────────────────
2.4 Crossref/OpenAlex/Unpaywall
Used to complete DOI, open full-text address, and publication information.
Crossref:
```text
https://api.crossref.org/works?query.title=
```
OpenAlex:
```text
https://api.openalex.org/works?search=
```
Unpaywall:
```text
https://api.unpaywall.org/v2/
```
use:
• DOI completion.
• OA PDF link search.
• Journal name verification.
• Publication year verification.
────────────────
2.5 Publisher Page
Access the publisher's page only when API information is insufficient.
Access rules:
• Each publisher URL will only be tried once.
• If you encounter CAPTCHAs, login barriers, Cloudflare, Access Denied, or institutional access barriers, stop immediately.
• Avoid repeatedly refreshing, changing the path within the same site, or waiting in a loop.
• Use PubMed, PMC, Crossref, OpenAlex, Unpaywall, and DOI metadata as fallback.
3. How to organize information after retrieval
3.1 Establish a unified record structure
Each document is compiled into a unified record.
Fields:
```text
pmid
doi
pmcid
title
authors
journal
journal_abbrev
issn
eissn
year
abstract
query_source
evidence_level
evidence_tags
paper_type
URL
```
3.2 Deduplication
Priority:
1. PMID deduplication.
2. Use DOI to remove duplicates if PMID is unavailable.
3. If there is no DOI, use lower(title) + year + first_author to remove duplicates.
Retain the query_source that was hit the first time, and record which queries hit the document.
3.3 Evidence Classification
It is necessary to distinguish:
Direct evidence:
The target species, tissue, cell type, model, and treatment conditions are directly matched.
Indirect evidence:
Adjacent systems, similar models, and similar mechanisms are supported, but they are not direct systems for user problems.
No direct evidence found:
Only background, speculation, reviews, or adjacent models can be found; there are no direct experimental results.
3.4 Document Type Labeling
At least the following should be noted:
• original research
• review
• protocol
• preprint
• dataset/resource
• clinical study
• method paper
3.5 Sorting Rules
Recommended sorting:
1. Original research with direct evidence.
2. Research on key mechanisms.
3. Latest important research.
4. Classic foundational studies.
5. High-quality review.
6. Indirect evidence.
Do not sort by IF alone. IF is a journal-level indicator and does not equate to the quality of an individual article.
4. How to organize quotations in a reply
4.1 Text Citation Format
All text citations must be clickable.
Format:
```markdown
[[1. **Journal**, Year]](https://pubmed.ncbi.nlm.nih.gov/PMID/)
```
Example:
```markdown
Previous studies have observed developmental stage-related photoreceptor stress and degeneration in human retinal organoids [[1. **Cell Stem Cell**, 2019]](https://pubmed.ncbi.nlm.nih.gov/xxxxxxx/).
```
Do not write it as:
```text
[1]
(PMID: xxxxx)
See reference 1
```
4.2 Recommended Answer Structure
First paragraph: Direct conclusion.
```text
Conclusion: There have been relevant reports, but the direct evidence mainly focuses on...; direct evidence regarding... is still lacking.
```
Second paragraph: Evidence classification.
```text
Direct evidence:
- Reference A: ...
Indirect evidence:
- Reference B: ...
No direct evidence found:
- Not found in this round...
```
Third paragraph: Mechanism summary.
Group by topic, for example:
• apoptosis/caspase pathway
• oxidative stress
• mitochondrial dysfunction
• ER stress
• hypoxia/metabolic stress
• inflammation
• developmental mismatch
Fourth paragraph: Research gap.
Clearly state which issues lack direct evidence.
Fifth paragraph: Inspiration from the experiment.
If the user needs experimental design, provide the marker, assay, time point, and control.
5. Complete list of references at the end of the article
If a specific reference is cited in the text, a complete list must be attached at the end of the article.
Format:
```markdown
## Complete List of Reference Information
1. Smith J et al., **Journal Name** (2021), [PMID: 12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/). *{IF=X,Qn}*
2. Wang X et al., **Journal Name** (2022), [DOI: 10.xxxx/xxxxx](https://doi.org/10.xxxx/xxxxx). *{IF=To be verified}*
```
Author format:
• 1–3 authors: List all.
• More than 3 authors: First author et al.
The PMID / DOI / URL must be clickable.
6. IF Verification and Labeling
6.1 First, let's explain the practical limitations of IF checks.
Normally, the official Journal Impact Factor comes from Clarivate Journal Citation Reports (JCR). However, any external agent typically does not have a Clarivate/JCR account or a local JCR table, so do not verify it through this path.
```
6.2 Practical methods for using IF skill
Main route:
1. If the input is PMID, first use NCBI E-utilities to obtain PubMed metadata.
- Retrieve FullJournalName. - Retrieve Source/ISO abbreviation. - Retrieve ISSN/eISSN. - Retrieve auxiliary fields such as title, year, and DOI.
2. Use the publicly available iikx/iscience mobile JSON interface to query journals.
Search API:
```text
https://m.iikx.com/api/restfull/?m=sci&c=index&a=info&keyword=
```
Details API:
```text
https://m.iikx.com/api/restfull/?m=sci/index/detail&id=
```
3. Perform a conservative match on the search results.
- Prioritizes exact normalized journal title matches. - Second, prioritizes exact abbreviation matches. - Exercises great caution with short and broad terms. - Does not accept obvious substring mismatches, such as mismatching "Nature" as "Nature Reviews" series. - Returns ambiguous/not_found results if the match is unstable, rather than guessing.
4. If PubMed provides an abbreviation, try expanding it to the full name or alternative title using NLM Catalog.
The NLM Catalog search interface remains NCBI E-utilities:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=nlmcatalog&term=[Title Abbreviation]&retmode=xml&retmax=1
```
Then use ESummary to get the Title / TitleAlternate.
5. Read from the iikx detail results:
- Impact factor. - IF year. - JCR quartile. - CAS/CAS quartile, if applicable. - Source URL. - Match confidence.
6. Do not include the IF year in the main text when annotating; use compact annotations.
The final annotation should only state:
```text
*{IF=X,Qn}*
```
If it fails:
```text
*{IF=Pending Verification}*
```
or:
```text
*{IF=Not detected}*
```
6.3 Specific Steps
Perform the following procedure for each document.
Step 1: Prepare the journal search name.
Prioritize retrieving from PubMed metadata:
```text
FullJournalName
ISOAbbreviation / Source
ISSN
eISSN
```
If only a DOI is available, first use Crossref or OpenAlex to obtain the journal name.
Crossref:
```text
https://api.crossref.org/works/
```
OpenAlex:
```text
https://api.openalex.org/works/https://doi.org/
```
Step 2: Standardize journal names.
Standardization rules:
• All lowercase.
• HTML unescape.
• Replace & with and.
• Remove punctuation.
• Combine multiple spaces.
• When making comparisons, you can also use the compact form, which removes all spaces.
Example pseudocode:
Python
import re, html
def norm(s):
s = html.unescape(s or '').lower()
s = re.sub(r'&', ' and ', s)
s = re.sub(r'[^a-z0-9]+', ' ', s)
return re.sub(r'\s+', ' ', s).strip()
def compact(s):
return norm(s).replace(' ', '')
```
Step 3: Query the iikx search interface.
```text
https://m.iikx.com/api/restfull/?m=sci&c=index&a=info&keyword=
```
It is recommended to set a User-Agent, for example:
```text
Mozilla/5.0
```
If no exact match is found on the first page, you can flip through a limited number of pages, for example, up to 8 pages.
Page turning parameters are usually:
```text
page=2
page=3
```
Step 4: Select candidates from the search results.
Candidate fields typically include:
```text
id
classid
title
smalltitle
IF or IF2024
zky2020
URL
```
Matching rules:
• If compact(query) == compact(candidate.title), accept.
• If norm(query) == norm(candidate.title), accept.
• If compact(query) == compact(candidate.smalltitle), accept.
• If norm(query) == norm(candidate.smalltitle), accept.
• Do not accept a substring unless the query is long enough and unambiguous.
• Be especially cautious with short words such as Nature, Science, Cell, Brain, Vision, and Retina.
Step 5: If no match is found, use the NLM Catalog extended abbreviation.
For example, in PubMed, the Source is:
```text
Free Radic Biol Med
```
You can check:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=nlmcatalog&term=Free%20Radic%20Biol%20Med%5BTitle%20Abbreviation%5D&retmode=xml&retmax=1
```
After obtaining the NLM Catalog ID, use it as follows:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esummary.fcgi?db=nlmcatalog&id=
```
Read:
```text
Title
TitleAlternate
```
Then use these full names to search for iikx.
Step 6: Check the iikx details interface.
If the search results contain:
```text
id=
classid=
```
Call:
```text
https://m.iikx.com/api/restfull/?m=sci/index/detail&id=
```
Read from detail:
```text
IF2024, IF2023, IF2022 ...
IF
zky2020 or other JCR quartile fields
jcr22 / jcr12 or partition field
issn
eissn
title
smalltitle
category
```
Step 7: Select the latest IF statement.
Search the returned fields for all instances of the form:
```text
IF20xx
```
For example:
```text
IF2024
IF2023
IF2022
```
Choose the year with the largest significant digit.
If IF20xx is not present, attempt to read:
```text
IF
if_value
```
If no valid value is found, it is marked as not detected.
Step 8: Output confidence level and label.
If exact title/abbreviation matches, and detail returns a valid IF:
```text
*{IF=X,Qn}*
```
If the match is uncertain:
```text
*{IF=Pending Verification}*
```
If the public API returns no results:
```text
*{IF=Not detected}*
```
6.4 IF Annotation Format
Fixed format:
```text
*{IF=X,Qn}*
```
Example:
```markdown
Smith J et al., **Neuron** (2020), [PMID: 12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/). *{IF=15.0, Q1}*
```
Notice:
• The JCR year is not written inside the IF annotation.
• Do not write "2024 JCR IF".
• Do not write "JCR 2024".
• Only the year of publication is retained.
• If the IF is 0.0, null, has an unstable source, or an unstable match, the number will not be displayed.
6.5 Standard handling for IF check failures
Don't guess.
Do not use the journal name to fill in the numbers.
Do not use large models to memorize and fill in IF statements.
Only three states are allowed upon failure:
```text
*{IF=Pending Verification}*
```
Used for:
• Search results are vague.
There are several similar journals.
• Only the abbreviation was found, but the full name could not be confirmed.
• The IF returned by publicly available sources is questionable.
```text
*{IF=Not detected}*
```
Used for:
• The public interface returned no results.
• The journal is not covered by SCI/JCR.
• The new issue does not yet have an IF.
```text
*{IF=Not publicly verifiable}*
```
Used for:
• The user requires an official JCR, but the current Agent does not have Clarivate/JCR permissions.
7. Final self-checklist
Must be checked before shipment:
• Should the user's core questions be answered first?
• Whether to distinguish between direct evidence, indirect evidence, and no direct evidence found.
• Are all text citations clickable?
• Is there a complete list of references at the end of the article?
• Does every document include an IF (Input/Output) label or a label indicating pending verification/not detected?
• Whether the PMID/DOI/URL is clickable.
• Does it avoid substituting overall tissue results for conclusions about specific cell types?
• Does it avoid substituting activation/phosphorylation for an increase in total expression?
• Whether to indicate a preprint.
• Does it specify the search boundaries?
• IF whether it was not based on memory or guesswork.
8. Reproducible pseudocode
Python
queries = build_queries(user_question)
all_pmids = []
for query in queries:
pmids = ncbi_esearch(query, retmax=20, sort='relevance')
all_pmids.extend(pmids)
pmids = deduplicate_keep_order(all_pmids)
metadata = ncbi_esummary(pmids)
abstracts = ncbi_efetch_abstract(pmids)
records = merge_metadata_and_abstracts(metadata, abstracts)
records = tag_evidence(records, user_question)
records = rank_records(records)
selected = select_top_records(records)
if need_fulltext:
for record in selected_key_records:
pmcid = idconv_pmid_to_pmcid(record.pmid)
if pmcid:
record.fulltext = fetch_bioc_or_pmc_xml(pmcid)
For record in selected:
journal_query = record.full_journal_name or record.journal_abbrev
if_result = lookup_if_public_iikx(journal_query)
if_result.confident:
record.if_annotation = f'*{IF={if_result.if_value},{if_result.quartile}}*'
elif if_result.ambiguous:
record.if_annotation = '*{IF=Pending Verification}*'
else:
record.if_annotation = '*{IF=Not Detected}*'
answer = compose_answer(
conclusion
evidence_groups,
clickable_body_citations,
full_reference_list_with_if
)
```
9. Recommended final delivery template
```markdown
in conclusion:
...
Level of evidence:
Direct evidence:
- ……[[1. **Journal**, Year]](https://pubmed.ncbi.nlm.nih.gov/PMID/)
Indirect evidence:
- …[[2. **Journal**, Year]](https://pubmed.ncbi.nlm.nih.gov/PMID/)
No direct evidence found:
- ……
Mechanism summary:
1. ……
2. ……
Search boundaries:
This round of searches primarily involved PubMed, PMC, BioC, and bioRxiv; initial screening was based on metadata and abstracts, with only key documents undergoing full-text verification. IF annotations were based on publicly accessible sources; documents that could not be matched with high confidence were marked as pending verification or not detected.
Complete list of literature information:
1. Smith J et al., **Journal Name** (2021), [PMID: 12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/). *{IF=X,Q1}*
2. Wang X et al., **Journal Name** (2022), [DOI: 10.xxxx/xxxxx](https://doi.org/10.xxxx/xxxxx). *{IF=To be verified}*
```
Related Skills
View allGitHub Front-End Hot Projects - Daily Ranking
Automatically retrieves the daily front-end project rankings and latest project data from Best of JS, combining real-time GitHub star counts and official descriptions to generate a standardized daily front-end trending list document. It includes project URLs, star counts, Chinese descriptions, and recommendations, making it ideal for front-end developers to quickly understand the day's popular projects and technology trends.
Front-end development topic library
Automatically collects high-quality articles and projects from 9 specified front-end platforms over the past month, and intelligently categorizes and organizes them into a structured collection document.
SEO GEO Audit
Unified SEO and GEO audit framework covering technical health, content quality, trust signals, entity authority, and AI visibility. Supports three audit scopes (single page/site/domain) and three output modes (boss/operator/specialist). Provide a website URL to start, or click to see full options.
In-depth and reliable research on Bio/Med
Applicable Scenarios: Complete a round of biological/biomedical research literature retrieval and provide users with detailed and reliable output. Core Objectives: 1. After a user initiates a search, the system can break down the question and keywords. 2. Retrieve literature using publicly available and reproducible data sources. 3. Deduplicate, stratify, classify, and sort the search results. 4. Use clickable text citations in the response. 5. List complete literature information at the end of the document, and mark the IF (Information Impact Factor) with publicly available sources; if high-confidence verification is not possible, it must be marked as "Pending Verification" or "Not Detected".
Featured by
YouMind
Why we love this skill
This skill provides a rigorous biomedical literature review process, from multi-level searches to impact factor (IF) verification, ensuring highly reliable and reproducible results, making it a valuable tool for researchers.
Instructions
The core of this process is: first, use multiple queries to perform a reproducible initial screening in PubMed/NCBI E-utilities, then use PMID for deduplication and abstract evidence grading; only a small number of key documents enter the PMC/BioC full-text review; in-text citations must be clickable; complete bibliographic information must be listed at the end of the article; IF can only be conservatively checked through publicly accessible sources, and cannot be assumed to have JCR or local databases, cannot be guessed, and low-confidence matches cannot be treated as definitive results.
1. Preprocessing after a user initiates a search
1.1 First, analyze the user's question.
After receiving a user's question, the natural language question is first broken down into structured elements.
Must be identified:
• Research subjects: genes, proteins, drugs, channels, cell types, tissues, diseases, and models.
• Biological systems: humans, mice, rats, zebrafish, organoids, retina, brain regions, cell lines, etc.
• Relationship types: expression, regulation, function, mechanism, phenotype, death, survival, treatment, toxicity, development, degeneration, etc.
• Evidence requirements: Whether direct evidence, mechanistic evidence, full-text evidence, charts, dosage parameters, and experimental methods are required.
• Time range: unlimited time, the last 5 years, the last 1 year, the latest developments, and classic literature.
• Output types: short answer, representative literature, review summary, experimental design suggestions, evidence table, mechanism diagram.
Example:
User issue:
"Please help me find literature related to retinal organoid death."
Structured decomposition (example):
• Core models: retinal organoid, retina organoid, hPSC-derived retinal organoid, optic cup organoid.
• Phenotype: cell death, apoptosis, degeneration, survival loss, stress, necrosis.
• Related cells: photoreceptor, cone, rod, retinal ganglion cell, Müller glia.
• Potential mechanisms: oxidative stress, ER stress, mitochondrial dysfunction, hypoxia, inflammation, ferroptosis, necroptosis.
• Evidence objectives: Prioritize original studies that directly observe cell death/apoptosis/degeneration in human or animal retinal organoids; then look for literature on indirect mechanisms.
1.2 Keyword Segmentation Principles (Example)
Don't just write one search query. Prepare at least three categories of terms for each concept.
Category 1: Precise words.
• retinal organoid
• retina organoid
• human retinal organoid
• hPSC-derived retinal organoid
• iPSC-derived retinal organoid
The second category: synonyms and hypernyms.
• optic cup organoid
• 3D retinal culture
• stem cell-derived retina
• retinal differentiation
• retinal tissue model
The third category: mechanism and phenotypic terms.
• apoptosis
• cell death
• degeneration
• survival
• stress
• oxidative stress
• ER stress
• mitochondrial dysfunction
• hypoxia
• necroptosis
• ferroptosis
If the user specifies the cell type, add:
• photoreceptor
• cone
• rod
• retinal ganglion cell
• Müller glia
• bipolar cell
• amacrine cell
If the user specifies the species or origin, add:
• human
• mouse
• rat
• zebrafish
• hESC
• iPSC
• pluripotent stem cell
1.3 Generating hierarchical search queries
Generate at least 3–6 queries. Each query corresponds to a search objective.
First layer: Direct evidence retrieval.
Used to find literature that directly matches the target model and target phenotype.
```text
("retinal organoid" OR "retina organoid" OR "human retinal organoid") AND (apoptosis OR "cell death" OR degeneration)
```
Second layer: Extended model retrieval.
Used to capture literature where the author did not use the precise term "retinal organoid" but it is actually relevant.
```text
("optic cup organoid" OR "3D retinal culture" OR "stem cell-derived retina") AND (survival OR apoptosis OR stress)
```
Third layer: Mechanism-specific search.
Used to verify specific pathways or mechanisms.
```text
("retinal organoid" OR "retina organoid") AND ("oxidative stress" OR "ER stress" OR hypoxia OR mitochondria)
```
Fourth layer: Cell type specific search.
```text
("retinal organoid" OR "retina organoid") AND (photoreceptor OR cone OR rod OR "retinal ganglion cell") AND (death OR apoptosis OR degeneration)
```
Fifth layer: Disease model retrieval.
```text
("retinal organoid" OR "retina organoid") AND (disease OR degeneration OR dystrophy OR retinitis OR glaucoma)
```
Sixth layer: Review/background search.
```text
("retinal organoid" OR "retina organoid") AND (review OR protocol OR model)
```
2. What methods and websites were used for the search?
2.1 Preferred: PubMed / NCBI E-utilities
PubMed is the preferred tool for searching biomedical literature. Do not default to scraping PubMed pages. Use the NCBI E-utilities API instead.
2.1.1 ESearch: Retrieving PMID using a query
interface:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi
```
parameter:
```text
db=pubmed
term=
retmode=json
retmax=20
sort=relevance
```
You can also sort by time:
```text
sort=pub+date
```
Example:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=pubmed&term=(%22retinal%20organoid%22%20OR%20%22retina%20organoid%22)%20AND%20(apoptosis%20OR%20%22cell%20death%22)&retmode=json&retmax=20&sort=relevance
```
Read from the return:
```text
esearchresult.idlist
```
This is the PMID list.
2.1.2 ESummary: Obtaining Literature Metadata
interface:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esummary.fcgi
```
parameter:
```text
db=pubmed
id=PMID1,PMID2,PMID3
retmode=json
```
Extracted fields:
• PMID
• title
• fulljournalname
• source/journal abbreviation
• pubdate
• authors
• DOI and PMCID in articleids
• volume, issue, pages
2.1.3 EFetch: Retrieving Summary and XML Details
interface:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi
```
parameter:
```text
db=pubmed
id=PMID1,PMID2
retmode=xml
rettype=abstract
```
Extracted fields:
• ArticleTitle
• AbstractText
• Journal Title
• ISOAbbreviation
• ISSN / eISSN
• PubDate
• DOI
• PMCID
• MeSH terms
2.1.4 Batch Retrieval Strategy
Recommended process:
1. Call ESearch for each query.
2. For each query, select the first 5–20 results.
3. Merge all PMIDs.
4. Use PMID to remove duplicates.
5. Use ESummary / EFetch to retrieve metadata and abstract data in batches.
6. In the initial screening stage, only read the metadata and abstract; do not start by reading the full text.
────────────────
2.2 Second Phase: Full Review of PMC/BioC Documents
The full text will only be included in the following cases:
• Users request to read the full text carefully.
• The abstract is insufficient to determine the mechanism.
• Requires charts, experimental methods, concentrations, dosages, IC50, EC50, Kd, and Ki.
• A small number of key PMIDs have been identified and require review on a case-by-case basis.
2.2.1 PMID to PMCID
interface:
```text
https://www.ncbi.nlm.nih.gov/pmc/utils/idconv/v1.0/?ids=
```
If PMCID is returned, it means that PMC may have open full text.
2.2.2 Prioritize BioC JSON
interface:
```text
https://www.ncbi.nlm.nih.gov/research/bionlp/RESTful/pmcoa.cgi/BioC_json/
```
Advantages: Highly structured, suitable for extracting main text paragraphs.
2.2.3 Try PMC XML when BioC is unavailable
interface:
```text
https://www.ncbi.nlm.nih.gov/pmc/articles/
```
Skip when extracting the main text:
• references
• bibliography
• Acknowledgments
• author contributions
• competing interests
Full text review must include a stop criterion:
• Each document is scanned only once.
• By default, only paragraphs related to the question are extracted.
• If the target field is not matched, mark it as "No direct evidence found".
• Avoid repeatedly scraping keywords.
────────────────
2.3 bioRxiv / medRxiv
Used to supplement the latest preprints.
You can use the official API:
```text
https://api.biorxiv.org/details/biorxiv/YYYY-MM-DD/YYYY-MM-DD
https://api.biorxiv.org/details/medrxiv/YYYY-MM-DD/YYYY-MM-DD
```
You can also use a regular search as a supplement:
```text
site:biorxiv.org retinal organoid apoptosis
site:medrxiv.org retina organoid degeneration
```
Preprints must be labeled:
```text
This is a preprint and has not been peer-reviewed.
```
────────────────
2.4 Crossref/OpenAlex/Unpaywall
Used to complete DOI, open full-text address, and publication information.
Crossref:
```text
https://api.crossref.org/works?query.title=
```
OpenAlex:
```text
https://api.openalex.org/works?search=
```
Unpaywall:
```text
https://api.unpaywall.org/v2/
```
use:
• DOI completion.
• OA PDF link search.
• Journal name verification.
• Publication year verification.
────────────────
2.5 Publisher Page
Access the publisher's page only when API information is insufficient.
Access rules:
• Each publisher URL will only be tried once.
• If you encounter CAPTCHAs, login barriers, Cloudflare, Access Denied, or institutional access barriers, stop immediately.
• Avoid repeatedly refreshing, changing the path within the same site, or waiting in a loop.
• Use PubMed, PMC, Crossref, OpenAlex, Unpaywall, and DOI metadata as fallback.
3. How to organize information after retrieval
3.1 Establish a unified record structure
Each document is compiled into a unified record.
Fields:
```text
pmid
doi
pmcid
title
authors
journal
journal_abbrev
issn
eissn
year
abstract
query_source
evidence_level
evidence_tags
paper_type
URL
```
3.2 Deduplication
Priority:
1. PMID deduplication.
2. Use DOI to remove duplicates if PMID is unavailable.
3. If there is no DOI, use lower(title) + year + first_author to remove duplicates.
Retain the query_source that was hit the first time, and record which queries hit the document.
3.3 Evidence Classification
It is necessary to distinguish:
Direct evidence:
The target species, tissue, cell type, model, and treatment conditions are directly matched.
Indirect evidence:
Adjacent systems, similar models, and similar mechanisms are supported, but they are not direct systems for user problems.
No direct evidence found:
Only background, speculation, reviews, or adjacent models can be found; there are no direct experimental results.
3.4 Document Type Labeling
At least the following should be noted:
• original research
• review
• protocol
• preprint
• dataset/resource
• clinical study
• method paper
3.5 Sorting Rules
Recommended sorting:
1. Original research with direct evidence.
2. Research on key mechanisms.
3. Latest important research.
4. Classic foundational studies.
5. High-quality review.
6. Indirect evidence.
Do not sort by IF alone. IF is a journal-level indicator and does not equate to the quality of an individual article.
4. How to organize quotations in a reply
4.1 Text Citation Format
All text citations must be clickable.
Format:
```markdown
[[1. **Journal**, Year]](https://pubmed.ncbi.nlm.nih.gov/PMID/)
```
Example:
```markdown
Previous studies have observed developmental stage-related photoreceptor stress and degeneration in human retinal organoids [[1. **Cell Stem Cell**, 2019]](https://pubmed.ncbi.nlm.nih.gov/xxxxxxx/).
```
Do not write it as:
```text
[1]
(PMID: xxxxx)
See reference 1
```
4.2 Recommended Answer Structure
First paragraph: Direct conclusion.
```text
Conclusion: There have been relevant reports, but the direct evidence mainly focuses on...; direct evidence regarding... is still lacking.
```
Second paragraph: Evidence classification.
```text
Direct evidence:
- Reference A: ...
Indirect evidence:
- Reference B: ...
No direct evidence found:
- Not found in this round...
```
Third paragraph: Mechanism summary.
Group by topic, for example:
• apoptosis/caspase pathway
• oxidative stress
• mitochondrial dysfunction
• ER stress
• hypoxia/metabolic stress
• inflammation
• developmental mismatch
Fourth paragraph: Research gap.
Clearly state which issues lack direct evidence.
Fifth paragraph: Inspiration from the experiment.
If the user needs experimental design, provide the marker, assay, time point, and control.
5. Complete list of references at the end of the article
If a specific reference is cited in the text, a complete list must be attached at the end of the article.
Format:
```markdown
## Complete List of Reference Information
1. Smith J et al., **Journal Name** (2021), [PMID: 12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/). *{IF=X,Qn}*
2. Wang X et al., **Journal Name** (2022), [DOI: 10.xxxx/xxxxx](https://doi.org/10.xxxx/xxxxx). *{IF=To be verified}*
```
Author format:
• 1–3 authors: List all.
• More than 3 authors: First author et al.
The PMID / DOI / URL must be clickable.
6. IF Verification and Labeling
6.1 First, let's explain the practical limitations of IF checks.
Normally, the official Journal Impact Factor comes from Clarivate Journal Citation Reports (JCR). However, any external agent typically does not have a Clarivate/JCR account or a local JCR table, so do not verify it through this path.
```
6.2 Practical methods for using IF skill
Main route:
1. If the input is PMID, first use NCBI E-utilities to obtain PubMed metadata.
- Retrieve FullJournalName. - Retrieve Source/ISO abbreviation. - Retrieve ISSN/eISSN. - Retrieve auxiliary fields such as title, year, and DOI.
2. Use the publicly available iikx/iscience mobile JSON interface to query journals.
Search API:
```text
https://m.iikx.com/api/restfull/?m=sci&c=index&a=info&keyword=
```
Details API:
```text
https://m.iikx.com/api/restfull/?m=sci/index/detail&id=
```
3. Perform a conservative match on the search results.
- Prioritizes exact normalized journal title matches. - Second, prioritizes exact abbreviation matches. - Exercises great caution with short and broad terms. - Does not accept obvious substring mismatches, such as mismatching "Nature" as "Nature Reviews" series. - Returns ambiguous/not_found results if the match is unstable, rather than guessing.
4. If PubMed provides an abbreviation, try expanding it to the full name or alternative title using NLM Catalog.
The NLM Catalog search interface remains NCBI E-utilities:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=nlmcatalog&term=[Title Abbreviation]&retmode=xml&retmax=1
```
Then use ESummary to get the Title / TitleAlternate.
5. Read from the iikx detail results:
- Impact factor. - IF year. - JCR quartile. - CAS/CAS quartile, if applicable. - Source URL. - Match confidence.
6. Do not include the IF year in the main text when annotating; use compact annotations.
The final annotation should only state:
```text
*{IF=X,Qn}*
```
If it fails:
```text
*{IF=Pending Verification}*
```
or:
```text
*{IF=Not detected}*
```
6.3 Specific Steps
Perform the following procedure for each document.
Step 1: Prepare the journal search name.
Prioritize retrieving from PubMed metadata:
```text
FullJournalName
ISOAbbreviation / Source
ISSN
eISSN
```
If only a DOI is available, first use Crossref or OpenAlex to obtain the journal name.
Crossref:
```text
https://api.crossref.org/works/
```
OpenAlex:
```text
https://api.openalex.org/works/https://doi.org/
```
Step 2: Standardize journal names.
Standardization rules:
• All lowercase.
• HTML unescape.
• Replace & with and.
• Remove punctuation.
• Combine multiple spaces.
• When making comparisons, you can also use the compact form, which removes all spaces.
Example pseudocode:
Python
import re, html
def norm(s):
s = html.unescape(s or '').lower()
s = re.sub(r'&', ' and ', s)
s = re.sub(r'[^a-z0-9]+', ' ', s)
return re.sub(r'\s+', ' ', s).strip()
def compact(s):
return norm(s).replace(' ', '')
```
Step 3: Query the iikx search interface.
```text
https://m.iikx.com/api/restfull/?m=sci&c=index&a=info&keyword=
```
It is recommended to set a User-Agent, for example:
```text
Mozilla/5.0
```
If no exact match is found on the first page, you can flip through a limited number of pages, for example, up to 8 pages.
Page turning parameters are usually:
```text
page=2
page=3
```
Step 4: Select candidates from the search results.
Candidate fields typically include:
```text
id
classid
title
smalltitle
IF or IF2024
zky2020
URL
```
Matching rules:
• If compact(query) == compact(candidate.title), accept.
• If norm(query) == norm(candidate.title), accept.
• If compact(query) == compact(candidate.smalltitle), accept.
• If norm(query) == norm(candidate.smalltitle), accept.
• Do not accept a substring unless the query is long enough and unambiguous.
• Be especially cautious with short words such as Nature, Science, Cell, Brain, Vision, and Retina.
Step 5: If no match is found, use the NLM Catalog extended abbreviation.
For example, in PubMed, the Source is:
```text
Free Radic Biol Med
```
You can check:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=nlmcatalog&term=Free%20Radic%20Biol%20Med%5BTitle%20Abbreviation%5D&retmode=xml&retmax=1
```
After obtaining the NLM Catalog ID, use it as follows:
```text
https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esummary.fcgi?db=nlmcatalog&id=
```
Read:
```text
Title
TitleAlternate
```
Then use these full names to search for iikx.
Step 6: Check the iikx details interface.
If the search results contain:
```text
id=
classid=
```
Call:
```text
https://m.iikx.com/api/restfull/?m=sci/index/detail&id=
```
Read from detail:
```text
IF2024, IF2023, IF2022 ...
IF
zky2020 or other JCR quartile fields
jcr22 / jcr12 or partition field
issn
eissn
title
smalltitle
category
```
Step 7: Select the latest IF statement.
Search the returned fields for all instances of the form:
```text
IF20xx
```
For example:
```text
IF2024
IF2023
IF2022
```
Choose the year with the largest significant digit.
If IF20xx is not present, attempt to read:
```text
IF
if_value
```
If no valid value is found, it is marked as not detected.
Step 8: Output confidence level and label.
If exact title/abbreviation matches, and detail returns a valid IF:
```text
*{IF=X,Qn}*
```
If the match is uncertain:
```text
*{IF=Pending Verification}*
```
If the public API returns no results:
```text
*{IF=Not detected}*
```
6.4 IF Annotation Format
Fixed format:
```text
*{IF=X,Qn}*
```
Example:
```markdown
Smith J et al., **Neuron** (2020), [PMID: 12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/). *{IF=15.0, Q1}*
```
Notice:
• The JCR year is not written inside the IF annotation.
• Do not write "2024 JCR IF".
• Do not write "JCR 2024".
• Only the year of publication is retained.
• If the IF is 0.0, null, has an unstable source, or an unstable match, the number will not be displayed.
6.5 Standard handling for IF check failures
Don't guess.
Do not use the journal name to fill in the numbers.
Do not use large models to memorize and fill in IF statements.
Only three states are allowed upon failure:
```text
*{IF=Pending Verification}*
```
Used for:
• Search results are vague.
There are several similar journals.
• Only the abbreviation was found, but the full name could not be confirmed.
• The IF returned by publicly available sources is questionable.
```text
*{IF=Not detected}*
```
Used for:
• The public interface returned no results.
• The journal is not covered by SCI/JCR.
• The new issue does not yet have an IF.
```text
*{IF=Not publicly verifiable}*
```
Used for:
• The user requires an official JCR, but the current Agent does not have Clarivate/JCR permissions.
7. Final self-checklist
Must be checked before shipment:
• Should the user's core questions be answered first?
• Whether to distinguish between direct evidence, indirect evidence, and no direct evidence found.
• Are all text citations clickable?
• Is there a complete list of references at the end of the article?
• Does every document include an IF (Input/Output) label or a label indicating pending verification/not detected?
• Whether the PMID/DOI/URL is clickable.
• Does it avoid substituting overall tissue results for conclusions about specific cell types?
• Does it avoid substituting activation/phosphorylation for an increase in total expression?
• Whether to indicate a preprint.
• Does it specify the search boundaries?
• IF whether it was not based on memory or guesswork.
8. Reproducible pseudocode
Python
queries = build_queries(user_question)
all_pmids = []
for query in queries:
pmids = ncbi_esearch(query, retmax=20, sort='relevance')
all_pmids.extend(pmids)
pmids = deduplicate_keep_order(all_pmids)
metadata = ncbi_esummary(pmids)
abstracts = ncbi_efetch_abstract(pmids)
records = merge_metadata_and_abstracts(metadata, abstracts)
records = tag_evidence(records, user_question)
records = rank_records(records)
selected = select_top_records(records)
if need_fulltext:
for record in selected_key_records:
pmcid = idconv_pmid_to_pmcid(record.pmid)
if pmcid:
record.fulltext = fetch_bioc_or_pmc_xml(pmcid)
For record in selected:
journal_query = record.full_journal_name or record.journal_abbrev
if_result = lookup_if_public_iikx(journal_query)
if_result.confident:
record.if_annotation = f'*{IF={if_result.if_value},{if_result.quartile}}*'
elif if_result.ambiguous:
record.if_annotation = '*{IF=Pending Verification}*'
else:
record.if_annotation = '*{IF=Not Detected}*'
answer = compose_answer(
conclusion
evidence_groups,
clickable_body_citations,
full_reference_list_with_if
)
```
9. Recommended final delivery template
```markdown
in conclusion:
...
Level of evidence:
Direct evidence:
- ……[[1. **Journal**, Year]](https://pubmed.ncbi.nlm.nih.gov/PMID/)
Indirect evidence:
- …[[2. **Journal**, Year]](https://pubmed.ncbi.nlm.nih.gov/PMID/)
No direct evidence found:
- ……
Mechanism summary:
1. ……
2. ……
Search boundaries:
This round of searches primarily involved PubMed, PMC, BioC, and bioRxiv; initial screening was based on metadata and abstracts, with only key documents undergoing full-text verification. IF annotations were based on publicly accessible sources; documents that could not be matched with high confidence were marked as pending verification or not detected.
Complete list of literature information:
1. Smith J et al., **Journal Name** (2021), [PMID: 12345678](https://pubmed.ncbi.nlm.nih.gov/12345678/). *{IF=X,Q1}*
2. Wang X et al., **Journal Name** (2022), [DOI: 10.xxxx/xxxxx](https://doi.org/10.xxxx/xxxxx). *{IF=To be verified}*
```
Related Skills
View allGitHub Front-End Hot Projects - Daily Ranking
Automatically retrieves the daily front-end project rankings and latest project data from Best of JS, combining real-time GitHub star counts and official descriptions to generate a standardized daily front-end trending list document. It includes project URLs, star counts, Chinese descriptions, and recommendations, making it ideal for front-end developers to quickly understand the day's popular projects and technology trends.
Front-end development topic library
Automatically collects high-quality articles and projects from 9 specified front-end platforms over the past month, and intelligently categorizes and organizes them into a structured collection document.
SEO GEO Audit
Unified SEO and GEO audit framework covering technical health, content quality, trust signals, entity authority, and AI visibility. Supports three audit scopes (single page/site/domain) and three output modes (boss/operator/specialist). Provide a website URL to start, or click to see full options.
Find your next favorite skill
Explore more curated AI skills for research, creation, and everyday work.