跳到主要内容
知仓学习社ZHICANG

openalex

Search academic papers via OpenAlex API for open citation data, institutional affiliations, and funding information. Use when user says "openalex se…

执行命令严重 1 · 高危 0wanshuiyin/Auto-claude-code-research-in-sleep

它会碰到什么

扫了多少1 个文本文件,9 KB
它会碰到什么执行命令
命中总数1 处
命中统计严重 1 · 高 0 · 中 0 · 低 0
逐条看命中(1 条严重或高危)
  • 严重 SKILL.md:4perm-wildcard
    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
  1. Optional: API keys — Export them in your shell or project environment:
   export OPENALEX_API_KEY=your-key-here
   export OPENALEX_EMAIL=your-email@example.com
  1. Get API keys (optional but recommended):
  • OpenAlex API key: Free tier $1/day (10,000 list calls, 1,000 search calls) from 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-codex.txt ]; then
    ARIS_REPO=$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills-codex.txt 2>/dev/null) || true
fi
OPENALEX_FETCHER=""
[ -n "${ARIS_REPO:-}" ] && [ -f "$ARIS_REPO/tools/openalex_fetch.py" ] && OPENALEX_FETCHER="$ARIS_REPO/tools/openalex_fetch.py"
[ -z "$OPENALEX_FETCHER" ] && [ -f tools/openalex_fetch.py ] && OPENALEX_FETCHER="tools/openalex_fetch.py"
[ -z "$OPENALEX_FETCHER" ] && [ -f ~/.codex/skills/openalex/openalex_fetch.py ] && OPENALEX_FETCHER="$HOME/.codex/skills/openalex/openalex_fetch.py"
[ -f "$OPENALEX_FETCHER" ] || {
  echo "ERROR: openalex_fetch.py not resolved at \$ARIS_REPO/tools/, tools/, or ~/.codex/skills/openalex/." >&2
  echo "       Fix: rerun install_aris_codex.sh, export ARIS_REPO, or copy the helper to ~/.codex/skills/openalex/." >&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:

python3 "$OPENALEX_FETCHER" work "W2741809807"

Step 4: Parse Results

The script returns structured JSON with:

  • title: Paper title
  • authors: List of author names
  • publication_year: Year published
  • venue: Journal/conference name
  • venue_type: Type of venue (journal, repository, conference, etc.)
  • cited_by_count: Number of citations
  • is_oa: Boolean for open access status
  • oa_status: Open access type (gold, green, bronze, hybrid, closed)
  • oa_url: Direct PDF link if available
  • doi: DOI identifier
  • openalex_id: OpenAlex work ID
  • abstract: Full abstract text
  • topics: Top 3 research topics
  • keywords: Top 5 keywords
  • type: Work type (article, preprint, etc.)

Step 5: Present Results

Format results as a structured table:

| # | Title | Venue | Year | Citations | OA | Summary |
|---|-------|-------|------|-----------|----|---------|
| 1 | ... | IEEE TWC | 2024 | 156 | ✓ | ... |
| 2 | ... | NeurIPS | 2023 | 89 | ✓ | ... |

For each paper, also show:

  • DOI: Canonical identifier
  • OpenAlex ID: For cross-reference
  • Open Access: Status (gold/green/bronze/hybrid/closed) and PDF link
  • Topics: Top research topics
  • Abstract: First 200 characters or full text

Step 6: Offer Follow-up

After presenting results, suggest:

/semantic-scholar "DOI:..."     — get S2 citation context and related papers
/arxiv "arXiv:XXXX.XXXXX"      — fetch arXiv preprint if available
/research-lit "topic" — sources: openalex, semantic-scholar  — combined multi-source review
/novelty-check "idea"          — verify novelty against literature

Key Rules

  • OpenAlex is fully open — no API key required for basic use, but recommended for higher rate limits
  • Comprehensive metadata — OpenAlex provides richer metadata than most sources (institutions, funding, topics)
  • Citation data is open — unlike Semantic Scholar, all citation data is freely accessible
  • Rate limits: Without API key, very limited (~$0.01/day). With free API key: 10,000 list calls/day, 1,000 search calls/day.
  • Polite pool: Set OPENALEX_EMAIL environment variable for faster response times
  • Cross-reference with other sources: OpenAlex indexes papers from arXiv, PubMed, Crossref, etc. — use DOI/arXiv ID to cross-reference
  • If OpenAlex API is unreachable or rate-limited, suggest using /semantic-scholar, /arxiv, or /research-lit "topic" — sources: web as alternatives.

OpenAlex vs Other Sources

| Feature | OpenAlex | Semantic Scholar | arXiv |

|---------|----------|------------------|-------|

| Coverage | 250M+ works | 200M+ papers | 2.4M+ preprints |

| Citation data | Fully open | Partially open | None |

| Institutions | ✓ Full affiliations | ✓ Limited | ✗ |

| Funding | ✓ NSF, NIH, etc. | ✗ | ✗ |

| Open access | ✓ Full OA status | ✓ PDF links | ✓ All papers |

| API key | Optional (free) | Optional (free) | Not required |

| Rate limits | 1,000 searches/day (free key) | Unknown | 1 req/3s |

| Abstract | ✓ Full text | ✓ TLDR | ✓ Full text |

| Best for | Comprehensive metadata, institutions, funding | Citation counts, venue info | Latest preprints |

When to use OpenAlex over S2:

  • Need institutional affiliation data
  • Need funding information
  • Want fully open citation graph
  • Need comprehensive topic/keyword metadata
  • Working with non-CS fields (OpenAlex covers all disciplines)

When to use S2 over OpenAlex:

  • Need real-time citation counts (S2 updates faster)
  • Need "highly influential citations" metric
  • Need paper recommendations
  • CS/AI-focused research (S2 has better CS coverage)

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。

同名技能的其他版本

有 2 个不同仓库或目录里都有叫 openalex 的技能。它们内容并不相同,别混用: