Skip to content
Automation
Skill

/openalex

Search academic papers via OpenAlex API for open citation data, institutional affiliations, and funding information. Use when user says "openalex search", "search openalex", "open citation graph", or wants comprehensive academic metadata beyond arXiv/Semantic Scholar.

From plugin
auto-claude-code-research-in-sleep
14k187 skills
Install
$ npx -y skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill openalex --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/openalex

Context preview

The summary Claude sees to decide when to auto-load this skill.

Search academic papers via OpenAlex API for open citation data, institutional affiliations, and funding information. Use when user says "openalex search", "search openalex", "open citation graph", or wants comprehensive academic metadata beyond arXiv/Semantic Scholar.

SKILL.md

openalex.SKILL.md
name: openalex
description: Search academic papers via OpenAlex API for open citation data, institutional affiliations, and funding information. Use when user says "openalex search", "search openalex", "open citation graph", or wants comprehensive academic metadata beyond arXiv/Semantic Scholar.
argument-hint: "[search-query]"
allowed-tools: Bash(*), Read, Write

OpenAlex Academic Search

Search query: $ARGUMENTS

Role & Positioning

This skill uses OpenAlex as a **comprehensive open academic graph** source:

| Skill | Source | Best for | |-------|--------|----------| | `/arxiv` | arXiv API | Latest preprints, cutting-edge unrefereed work | | `/semantic-scholar` | Semantic Scholar API | Published venue papers (IEEE, ACM, Springer) with citation counts | | `/openalex` | OpenAlex API | **Open citation graph, institutional affiliations, funding data, comprehensive metadata** | | `/deepxiv` | DeepXiv CLI | Layered reading: search, brief, section map, section reads | | `/exa-search` | Exa API | Broad web search: blogs, docs, news, companies, research papers | | `/gemini-search` | Gemini MCP / CLI | AI-powered broad literature discovery |

Use OpenAlex when you want:

  • **Open citation data** — fully open citation graph (no API key required for basic use)
  • **Institutional affiliations** — author institutions and collaborations
  • **Funding information** — NSF, NIH, and other funding sources
  • **Comprehensive metadata** — topics, keywords, abstract, open access status
  • **Cross-database coverage** — indexes 250M+ works from multiple sources

Constants

  • **MAX_RESULTS = 10** — Default number of results. Override with `— max: 20`.
  • **DEFAULT_SORT = relevance** — Sort by relevance. Override with `— sort: citations` or `— sort: date`.
  • **OPENALEX_FETCHER** — canonical name `openalex_fetch.py`, resolved per

[`shared-references/integration-contract.md`](../shared-references/integration-contract.md) §2 (Policy D1 — standalone `/openalex` has no documented inline fallback, so unresolved helper terminates with an explicit error).

> Overrides (append to arguments): > - `/openalex "topic" — max: 20` — return up to 20 results > - `/openalex "topic" — year: 2023-` — papers from 2023 onward > - `/openalex "topic" — year: 2020-2023` — papers from 2020 to 2023 > - `/openalex "topic" — type: article` — only journal articles > - `/openalex "topic" — type: preprint` — only preprints > - `/openalex "topic" — open-access` — only open access papers > - `/openalex "topic" — min-citations: 50` — minimum 50 citations > - `/openalex "topic" — sort: citations` — sort by citation count (descending) > - `/openalex "topic" — sort: date` — sort by publication date (newest first)

Setup

Prerequisites

1. **Python 3.7+** with `requests` library:

   pip install requests

2. **Optional: API keys** — Create `.claude/.env` in project root:

   # Copy from template
   cp .claude/.env.example .claude/.env
   
   # Edit and add your keys
   # .claude/.env
   OPENALEX_API_KEY=your-key-here
   OPENALEX_EMAIL=your-email@example.com

Claude Code automatically loads `.claude/.env` as environment variables.

3. **Get API keys** (optional but recommended):

  • **OpenAlex API key**: Free tier $1/day (10,000 list calls, 1,000 search calls) from [openalex.org](https://openalex.org/)
  • **Email for polite pool**: Faster response times (no registration needed)

Verify Setup

python3 "$OPENALEX_FETCHER" search "machine learning" --max 3

(Resolve `$OPENALEX_FETCHER` via the canonical chain first — see Step 2 below.)

Workflow

Step 1: Parse Arguments

Parse `$ARGUMENTS` for:

  • **query**: The research topic (required)
  • **max**: Override MAX_RESULTS
  • **year**: Publication year filter (e.g., `2023-`, `2020-2023`)
  • **type**: Work type filter (`article`, `preprint`, `book`, `book-chapter`, `dataset`, `dissertation`)
  • **open-access**: Only include open access papers
  • **min-citations**: Minimum citation count threshold
  • **sort**: Sort order (`relevance`, `citations`, `date`)

Step 2: Locate Script

Resolve `$OPENALEX_FETCHER` via the canonical strict-safe chain (see [`shared-references/integration-contract.md`](../shared-references/integration-contract.md) §2). Policy D1: there is no native inline fallback for OpenAlex (retrieval requires the `requests` SDK + optional API key — the fetcher script encapsulates pagination, throttling, and per-source parameters), so unresolved helper terminates with explicit remediation.

cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
if [ -z "${ARIS_REPO:-}" ] && [ -f .aris/installed-skills.txt ]; then
    ARIS_REPO=$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null) || true
fi
if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
    ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
fi
OPENALEX_FETCHER=".aris/tools/openalex_fetch.py"
[ -f "$OPENALEX_FETCHER" ] || OPENALEX_FETCHER="tools/openalex_fetch.py"
[ -f "$OPENALEX_FETCHER" ] || { [ -n "${ARIS_REPO:-}" ] && OPENALEX_FETCHER="$ARIS_REPO/tools/openalex_fetch.py"; }
[ -f "$OPENALEX_FETCHER" ] || {
  echo "ERROR: openalex_fetch.py not resolved at .aris/tools/, tools/, \$ARIS_REPO/tools/, or via ~/.aris/repo." >&2
  echo "       Fix: rerun bash tools/install_aris.sh or smart_update.sh (refreshes ~/.aris/repo), export ARIS_REPO, or copy the helper to tools/." >&2
  echo "       Also ensure 'requests' is installed: pip install requests" >&2
  exit 1
}

Step 3: Execute Search

**Basic search:**

python3 "$OPENALEX_FETCHER" search "QUERY" --max 10

**With filters:**

python3 "$OPENALEX_FETCHER" search "QUERY" --max 10 \
  --year 2023- \
  --type article \
  --open-access \
  --min-citations 20 \
  --sort citations

**Get specific work by DOI:**

python3 "$OPENALEX_FETCHER" work "10.1109/TWC.2024.1234567"

**Get specific work by OpenAlex ID:**

Read more
Ships withauto-claude-code-research-in-sleep

· · · · · · -orange?style=flat) · · 💬 Join Community · 💡 Use ARIS as a skill-based workflow in Claude Code / Codex CLI / Cursor / Trae / Antigravity / GitHub Copilot CLI / OpenClaw, or get the full experience with the standalone ARIS-Code CLI — enjoy any

Get the whole plugin
Stats
14,445
Stars
1,280
Forks
Active
Maintenance
Python
Language
MIT
License
11h ago
Last commit
5mo ago
Created

Repo: wanshuiyin/Auto-claude-code-research-in-sleep