AgentSkillsCN

ads

当用户提到‘ADS’、‘NASA ADS’、‘天体物理数据系统’,或要求搜索天文/天体物理文献、按 bibcode 查找论文、从 ADS 获取引用次数,或从 ADS 数据库检索 BibTeX 时使用。

SKILL.md
--- frontmatter
name: ads
description: Use when the user mentions 'ADS', 'NASA ADS', 'Astrophysics Data System', or asks to search astronomy/astrophysics literature, find papers by bibcode, get citation counts from ADS, or retrieve BibTeX from the ADS database.

NASA ADS Search and Retrieval Skill

Search and retrieve papers from NASA's Astrophysics Data System (ADS).

Requires: requests (pip install requests)

Setup

ADS requires an API token for authentication.

Getting a Token

  1. Go to https://ui.adsabs.harvard.edu
  2. Sign in (or create an account)
  3. Click your name in the top-right → "Account settings"
  4. Select "API Token" from the left sidebar
  5. Click "Generate a new key"
  6. Copy the token string

Storing the Token

Save your token in one of these locations:

Option 1: Config file (recommended)

bash
mkdir -p ~/.ads
echo "YOUR_TOKEN_HERE" > ~/.ads/dev_key
chmod 600 ~/.ads/dev_key

Option 2: Environment variable

bash
export ADS_DEV_KEY="YOUR_TOKEN_HERE"

Bibcode Format

ADS uses bibcodes as unique identifiers:

  • Format: YYYYJJJJJVVVVMPPPPA
  • Example: 2019ApJ...882L..12P (ApJ Letters, 2019)

Basic Usage

bash
# Get a record by bibcode
python scripts/ads.py 2019ApJ...882L..12P

# Get BibTeX
python scripts/ads.py 2019ApJ...882L..12P --format bibtex

Searching

bash
# Search by author
python scripts/ads.py --search "author:Einstein"

# Search by first author only
python scripts/ads.py --search "author:^Hawking"

# Search by title
python scripts/ads.py --search 'title:"dark energy"'

# Search by abstract
python scripts/ads.py --search 'abs:"gravitational waves"'

# Search by year range
python scripts/ads.py --search "author:Penrose year:2015-2020"

# Search by journal
python scripts/ads.py --search "bibstem:ApJ year:2023"

# Combined search
python scripts/ads.py --search 'author:Planck title:"cosmological parameters"'

# Limit results
python scripts/ads.py --search "author:Witten" -n 5

Search Query Syntax

FieldSyntaxExample
Authorauthor:"Last, First"author:"Hawking, S"
First Authorauthor:^Nameauthor:^Einstein
Titletitle:"phrase"title:"black hole"
Abstractabs:"phrase"abs:"dark matter"
Yearyear:YYYY or year:YYYY-YYYYyear:2020-2023
Journalbibstem:abbrevbibstem:MNRAS
arXiv IDarXiv:idarXiv:1207.7214
DOIdoi:valuedoi:10.1086/345794
Objectobject:nameobject:M31

Boolean operators: AND (default), OR, NOT, - (negation)

Common Journal Abbreviations

AbbreviationJournal
ApJAstrophysical Journal
ApJLApJ Letters
MNRASMonthly Notices of the RAS
A&AAstronomy & Astrophysics
AJAstronomical Journal
PhRvDPhysical Review D
PhRvLPhysical Review Letters
JCAPJournal of Cosmology and Astroparticle Physics

Citations

bash
# Get papers citing a record
python scripts/ads.py 2019ApJ...882L..12P --citations

# Top 20 citing papers
python scripts/ads.py 2019ApJ...882L..12P --citations -n 20

Output Formats

bash
# Default (shows metadata)
python scripts/ads.py 2019ApJ...882L..12P

# BibTeX
python scripts/ads.py 2019ApJ...882L..12P --format bibtex

Typical Workflow

  1. Search for papers: python scripts/ads.py --search "author:Name"
  2. Note the bibcode
  3. Get full details: python scripts/ads.py <bibcode>
  4. Get BibTeX: python scripts/ads.py <bibcode> --format bibtex
  5. Check citations: python scripts/ads.py <bibcode> --citations

Rate Limits

ADS allows 5000 requests per day per API token.

Comparison with Other Skills

  • ADS: Astronomy/astrophysics focus, published papers, bibcodes
  • INSPIRE: High-energy physics focus, SPIRES syntax, recids
  • arXiv: Preprint source code (LaTeX), all physics categories

Use together: search on ADS for published papers with citation data, use arXiv skill to get source.