Agent skill

Doi Resolution Guide

by wentorai in wentorai/research-plugins

DOI content negotiation and metadata retrieval techniques. An agent skill from wentorai/research-plugins.

MITAuto-check passedResearch & Science

Install Doi Resolution Guide

skills CLI
$ npx skills add wentorai/research-plugins --skill doi-resolution-guide -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install wentorai/research-plugins doi-resolution-guide --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/wentorai/research-plugins.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/literature/metadata/doi-resolution-guide .claude/skills/doi-resolution-guide && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
doi-resolution-guide
GitHub stars
298
Used in
1 other repo
Token cost
~1.5k tokens
SKILL.md length
274 words
Files
1
Skills in repo
405
Repo updated
First seen
Licence
MIT

At a glance

DOI content negotiation and metadata retrieval techniques. An agent skill from wentorai/research-plugins.

  • Tasks that involve Citation management
  • SKILL.md covers What Is DOI Content Negotiation?, Supported Metadata Formats, Retrieving Metadata via… and Using the CrossRef API, plus 3 more sections
  • Calls curl; reaches doi.org and api.crossref.org

What it does

Doi Resolution Guide is an agent skill from wentorai/research-plugins. DOI content negotiation and metadata retrieval techniques

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Research & Science, covering Citation management. It works with LaTeX. The repository describes itself as: 350+ academic research skills, MCP configs, and plugins for Research-Claw and AI agents. The licence is MIT.

When your agent uses it

  • Tasks that involve Citation management

Example prompts

  • “/doi-resolution-guide”

Requirements

  • Python 3

What it can do on your machine

Read from SKILL.md and the folder at commit bf44b3c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • doi.org
    • api.crossref.org
    • dx.doi.org

    Also links to:

    • api.openalex.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Doi Resolution Guide loads about 1.5k tokens when it runs. Until then it costs about 20 tokens; SKILL.md has 274 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~20
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from wentorai/research-plugins at commit bf44b3c, republished under its MIT licence (© wentorai). 274 words, ~1,466 tokens.

Download SKILL.mdSave it as .claude/skills/doi-resolution-guide/SKILL.md (or your agent's skills folder).
name
doi-resolution-guide
description
DOI content negotiation and metadata retrieval techniques

DOI Resolution Guide

Master DOI content negotiation to programmatically retrieve structured metadata, citation data, and formatted references from any Digital Object Identifier.

What Is DOI Content Negotiation?

Every DOI (e.g., 10.1038/s41586-021-03819-2) resolves to a landing page by default. However, the DOI system supports HTTP content negotiation: by sending different Accept headers, you can retrieve structured metadata in various formats instead of an HTML page.

The DOI resolver endpoint is https://doi.org/{doi} or equivalently https://dx.doi.org/{doi}.

Supported Metadata Formats

Accept HeaderFormatUse Case
application/vnd.citationstyles.csl+jsonCSL-JSONProgrammatic metadata extraction
text/x-bibliography; style=apaFormatted citationReady-to-paste APA reference
text/x-bibliography; style=bibtexBibTeXLaTeX bibliography import
application/x-bibtexBibTeX (alt)LaTeX bibliography import
application/rdf+xmlRDF/XMLLinked data applications
text/turtleTurtle RDFLinked data applications
application/vnd.crossref.unixref+xmlCrossRef UnixrefFull CrossRef metadata

Retrieving Metadata via Content Negotiation

Get CSL-JSON (Most Useful for Programmatic Access)
bash
curl -LH "Accept: application/vnd.citationstyles.csl+json" \
  https://doi.org/10.1038/s41586-021-03819-2
python
import requests

doi = "10.1038/s41586-021-03819-2"
headers = {"Accept": "application/vnd.citationstyles.csl+json"}
response = requests.get(f"https://doi.org/{doi}", headers=headers, allow_redirects=True)

metadata = response.json()
print(f"Title: {metadata['title']}")
print(f"Authors: {', '.join(a.get('family', '') for a in metadata.get('author', []))}")
print(f"Journal: {metadata.get('container-title', 'N/A')}")
print(f"Year: {metadata.get('published', {}).get('date-parts', [[None]])[0][0]}")
print(f"Type: {metadata.get('type')}")
Get a Formatted Citation
bash
# APA format
curl -LH "Accept: text/x-bibliography; style=apa" \
  https://doi.org/10.1038/s41586-021-03819-2

# Chicago format
curl -LH "Accept: text/x-bibliography; style=chicago-author-date" \
  https://doi.org/10.1038/s41586-021-03819-2

# Harvard format
curl -LH "Accept: text/x-bibliography; style=harvard-cite-them-right" \
  https://doi.org/10.1038/s41586-021-03819-2
Get BibTeX for LaTeX
bash
curl -LH "Accept: application/x-bibtex" \
  https://doi.org/10.1038/s41586-021-03819-2

Output:

bibtex
@article{Jumper_2021,
  title={Highly accurate protein structure prediction with AlphaFold},
  volume={596},
  DOI={10.1038/s41586-021-03819-2},
  journal={Nature},
  author={Jumper, John and Evans, Richard and ...},
  year={2021},
  pages={583--589}
}

Using the CrossRef API

The CrossRef API provides richer metadata and supports batch queries without content negotiation.

Single Paper Lookup
python
import requests

doi = "10.1038/s41586-021-03819-2"
response = requests.get(
    f"https://api.crossref.org/works/{doi}",
    headers={"User-Agent": "ResearchClaw/1.0 (mailto:you@university.edu)"}
)

work = response.json()["message"]
print(f"Title: {work['title'][0]}")
print(f"Publisher: {work['publisher']}")
print(f"Citation count: {work.get('is-referenced-by-count', 0)}")
print(f"Reference count: {work.get('references-count', 0)}")
print(f"License: {work.get('license', [{}])[0].get('URL', 'N/A')}")
Batch DOI Resolution
python
dois = [
    "10.1038/s41586-021-03819-2",
    "10.1126/science.abj8754",
    "10.1016/j.cell.2021.06.025"
]

results = []
for doi in dois:
    resp = requests.get(
        f"https://api.crossref.org/works/{doi}",
        headers={"User-Agent": "ResearchClaw/1.0 (mailto:you@university.edu)"}
    )
    if resp.status_code == 200:
        results.append(resp.json()["message"])
    else:
        print(f"Failed to resolve: {doi}")

DOI Validation and Normalization

python
import re

def normalize_doi(raw_input):
    """Extract and normalize a DOI from various input formats."""
    # Match DOI pattern: 10.XXXX/...
    match = re.search(r'(10\.\d{4,9}/[^\s]+)', raw_input)
    if match:
        doi = match.group(1)
        # Remove trailing punctuation
        doi = doi.rstrip('.,;:)')
        return doi.lower()
    return None

# Examples
normalize_doi("https://doi.org/10.1038/s41586-021-03819-2")  # 10.1038/s41586-021-03819-2
normalize_doi("DOI: 10.1038/s41586-021-03819-2.")            # 10.1038/s41586-021-03819-2
normalize_doi("See paper at doi.org/10.1038/s41586-021-03819-2 for details")  # works too

Practical Tips

  • Polite pool: CrossRef provides faster responses to requests with a User-Agent header that includes a mailto: contact. This is their "polite pool" with higher rate limits.
  • OpenAlex alternative: OpenAlex (https://api.openalex.org/works/doi:10.xxx/yyy) provides similar metadata for free, with richer entity linking.
  • Handle redirects: Always use allow_redirects=True (or -L in curl) as DOIs redirect through the resolver.
  • Caching: DOI metadata rarely changes. Cache resolved metadata locally to avoid redundant API calls.
  • Rate limits: CrossRef allows 50 requests/second in the polite pool. For bulk operations, use their data dumps instead.

See Also

  • doi-content-negotiation -- Detailed API reference for retrieving metadata in multiple formats via HTTP content negotiation.

© wentorai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/literature/metadata/doi-resolution-guide of wentorai/research-plugins.

Open the folder on GitHubat commit bf44b3c

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in wentorai/research-plugins, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Doi Resolution Guide next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Doi Resolution Guide compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Doi Resolution Guide this skillwentorai/research-plugins2981 repos~1.5kAutomated safety check: PassMIT
Citation Managementneflibata-feng/MyArxiv-Agent12620 repos~8.1kAutomated safety check: NotesMIT
Academic Paper Writing PipelineImbad0202/academic-research-skills51k—~16kAutomated safety check: PassCustom licence
Literature Review AgentAr9av/PaperOrchestra6772 repos~5.2kAutomated safety check: PassCustom licence
Academic Searchustc-ai4science/academic-search666—~1.1kAutomated safety check: PassMIT
Collaborating With Claudeappautomaton/latex-arxiv-SKILL4571 repos~1.5kAutomated safety check: PassMIT

Similar skills

  • Citation Management

    neflibata-feng/MyArxiv-Agent

    Comprehensive citation management for academic research. An agent skill from neflibata-feng/MyArxiv-Agent.

    126 GitHub starsUsed in 20 repos~8.1k tokens
    Research & ScienceAuto-check: notes
  • Academic Paper Writing Pipeline

    Imbad0202/academic-research-skills

    Runs a 12-agent pipeline that plans, drafts, cites, reviews and formats academic papers, with modes for revision, rebuttals, abstracts and citation checks.

    51k GitHub stars~16k tokensUpdated 5 days ago
    Research & ScienceAuto-check passed
  • Literature Review Agent

    Ar9av/PaperOrchestra

    Step 3 of the PaperOrchestra pipeline (arXiv:2604.05018). An agent skill from Ar9av/PaperOrchestra.

    677 GitHub starsUsed in 2 repos~5.2k tokens
    Research & ScienceAuto-check passed
  • Academic Search

    ustc-ai4science/academic-search

    A skill your agent uses when the user asks to search or review academic papers, retrieve scholarly metadata or citation counts, validate or deduplicate scholarly records, find an author's…

    666 GitHub stars~1.1k tokensUpdated 1 mo ago
    Research & ScienceAuto-check passed
  • Collaborating With Claude

    appautomaton/latex-arxiv-SKILL

    Use the Claude Code CLI to consult Claude and delegate coding tasks for prototyping, debugging, and code review.

    457 GitHub starsUsed in 1 repo~1.5k tokens
    Research & ScienceAuto-check passed
  • Arxiv MCP Server

    blazickjp/arxiv-mcp-server

    A skill your agent uses when finding, comparing, reading, or monitoring arXiv papers, including requests for abstracts, citation graphs, original LaTeX, section-level technical details, or…

    3.2k GitHub stars~353 tokensUpdated 2 days ago
    Research & ScienceAuto-check passed

More from wentorai/research-plugins

All 405 skills in this repo
  • Abstract Writing Guide

    wentorai/research-plugins

    Craft structured research abstracts that maximize clarity and journal acceptance

    298 GitHub starsUsed in 1 repo~1.7k tokens
    Auto-check passed
  • Academic Citation Manager

    wentorai/research-plugins

    Manage academic citations across BibTeX, APA, MLA, and Chicago formats

    298 GitHub starsUsed in 1 repo~2.7k tokens
    Auto-check passed
  • Academic Paper Summarizer

    wentorai/research-plugins

    Summarize academic papers with structured extraction of key elements

    298 GitHub starsUsed in 1 repo~1.4k tokens
    Auto-check passed
  • Academic Study Methods

    wentorai/research-plugins

    Evidence-based study techniques for academic learning and retention

    298 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Academic Tone Guide

    wentorai/research-plugins

    Adjust writing tone and register for academic audiences and venues

    298 GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Academic Translation Guide

    wentorai/research-plugins

    Academic translation, post-editing, and Chinglish correction guide

    298 GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed

Works with

Questions about Doi Resolution Guide

What does Doi Resolution Guide do?

DOI content negotiation and metadata retrieval techniques. An agent skill from wentorai/research-plugins. Doi Resolution Guide is an agent skill from wentorai/research-plugins.

When should I use Doi Resolution Guide?

Doi Resolution Guide fits situations like: tasks that involve Citation management.

How do I install Doi Resolution Guide in Claude Code?

Run `npx skills add wentorai/research-plugins --skill doi-resolution-guide -a claude-code`. Or copy the skill folder (skills/literature/metadata/doi-resolution-guide in wentorai/research-plugins) into .claude/skills/doi-resolution-guide in your project. Claude Code loads it when a task matches its description.

How do I install Doi Resolution Guide in Codex?

Run `npx skills add wentorai/research-plugins --skill doi-resolution-guide -a codex`. Or copy the skill folder (skills/literature/metadata/doi-resolution-guide in wentorai/research-plugins) into .agents/skills/doi-resolution-guide in your project. Codex loads it when a task matches its description.

Can I use Doi Resolution Guide in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add wentorai/research-plugins --skill doi-resolution-guide -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/doi-resolution-guide, .gemini/skills/doi-resolution-guide, .github/skills/doi-resolution-guide and .opencode/skills/doi-resolution-guide in your project.

What does Doi Resolution Guide need to run?

Going by SKILL.md and its folder, Doi Resolution Guide needs the command-line tools its instructions call (curl). Our summary lists: Python 3.

Does Doi Resolution Guide access the network?

SKILL.md names 4 domains. In commands or code: doi.org, api.crossref.org and dx.doi.org; the agent is likely to contact these when it follows the instructions. As links in the text: api.openalex.org. This is read from the text; nothing was executed.

Is Doi Resolution Guide safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Doi Resolution Guide use?

Doi Resolution Guide is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Doi Resolution Guide use?

About 1.5k tokens (SKILL.md is roughly 5.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Doi Resolution Guide?

Skills that share tags, products or a category with Doi Resolution Guide: Citation Management (neflibata-feng/MyArxiv-Agent, 126 stars), Academic Paper Writing Pipeline (Imbad0202/academic-research-skills, 51k stars), Literature Review Agent (Ar9av/PaperOrchestra, 677 stars) and Academic Search (ustc-ai4science/academic-search, 666 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Doi Resolution Guide?

wentorai (a GitHub user) maintains it in wentorai/research-plugins, which has 298 GitHub stars. The repository holds 405 skills in this directory. The repository was last updated on June 19, 2026.

Source: wentorai/research-plugins on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.