Skip to content
Automation
Skill

/aris-semantic-scholar

Search published venue papers (IEEE, ACM, Springer, etc.) via Semantic Scholar API. Complements /aris-arxiv (preprints) with citation counts, venue metadata, and TLDR. Use when user says "search semantic scholar", "find IEEE papers", "find journal papers", "venue papers",

From plugin
dr-claw
1k173 skills8 agents
Install
$ npx -y skills add OpenLAIR/dr-claw --skill aris-semantic-scholar --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/aris-semantic-scholar

Context preview

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

Search published venue papers (IEEE, ACM, Springer, etc.) via Semantic Scholar API. Complements /aris-arxiv (preprints) with citation counts, venue metadata, and TLDR. Use when user says "search semantic scholar", "find IEEE papers", "find journal papers", "venue papers",

SKILL.md

aris-semantic-scholar.SKILL.md
name: aris-semantic-scholar
description: Search published venue papers (IEEE, ACM, Springer, etc.) via Semantic Scholar API. Complements /aris-arxiv (preprints) with citation counts, venue metadata, and TLDR. Use when user says "search semantic scholar", "find IEEE papers", "find journal papers", "venue papers", "citation search", or wants published literature beyond arXiv preprints.
argument-hint: query-or-paper-id
allowed-tools: Bash(*), Read, Write
license: MIT
metadata:
  author: wanshuiyin/ARIS
  version: "1.0.0"

Semantic Scholar Paper Search

Search topic or paper ID: $ARGUMENTS

Role & Positioning

This skill is the **published venue** counterpart to `/aris-arxiv`:

| Skill | Source | Best for | |-------|--------|----------| | `/aris-arxiv` | arXiv API | Latest preprints, cutting-edge unrefereed work | | `/aris-semantic-scholar` | Semantic Scholar API | **Published** journal/conference papers (IEEE, ACM, Springer, etc.) with citation counts, venue info, TLDR |

**Do NOT duplicate arXiv's job.** If results contain an `externalIds.ArXiv` field, the paper is also on arXiv — note this but do not re-fetch from arXiv.

Constants

  • **MAX_RESULTS = 10** — Default number of search results.
  • **FETCH_SCRIPT** — `tools/semantic_scholar_fetch.py` relative to the project root. Fall back to inline Python if not found.
  • **DEFAULT_FILTERS** — For general research queries, apply these by default to reduce noise:
  • `--fields-of-study "Computer Science,Engineering"`
  • `--publication-types JournalArticle,Conference`

> Overrides (append to arguments): > - `/aris-semantic-scholar "topic" - max: 20` — return up to 20 results > - `/aris-semantic-scholar "topic" - type: journal` — only journal articles > - `/aris-semantic-scholar "topic" - type: conference` — only conference papers > - `/aris-semantic-scholar "topic" - min-citations: 50` — only highly-cited papers > - `/aris-semantic-scholar "topic" - year: 2022-` — papers from 2022 onward > - `/aris-semantic-scholar "topic" - fields: all` — remove default field-of-study filter > - `/aris-semantic-scholar "topic" - sort: citations` — bulk search sorted by citation count > - `/aris-semantic-scholar "DOI:10.1109/..."` — fetch a single paper by DOI

Workflow

Step 1: Parse Arguments

Parse `$ARGUMENTS` for directives:

  • **Query or ID**: main search term, or a paper identifier:
  • DOI: `10.1109/TWC.2024.1234567`
  • Semantic Scholar ID: `f9314fd99be5f2b1b3efcfab87197d578160d553`
  • ArXiv: `ARXIV:2006.10685`
  • Corpus: `CorpusId:219792180`
  • **`- max: N`**: override MAX_RESULTS
  • **`- type: journal|conference|review|all`**: map to `--publication-types`
  • **`- min-citations: N`**: map to `--min-citations`
  • **`- year: RANGE`**: map to `--year` (e.g. `2022-`, `2020-2024`)
  • **`- fields: FIELDS`**: override `--fields-of-study` (use `all` to remove filter)
  • **`- sort: citations|date`**: use `search-bulk` with `--sort citationCount:desc` or `publicationDate:desc`

If the argument matches a DOI pattern (`10.XXXX/...`), a Semantic Scholar ID (40-char hex), or a prefixed ID (`ARXIV:...`, `CorpusId:...`), skip search and go directly to Step 3.

Step 2: Search Papers

Locate the fetch script:

SCRIPT=$(find tools/ -name "semantic_scholar_fetch.py" 2>/dev/null | head -1)
[ -z "$SCRIPT" ] && SCRIPT=$(find ~/.claude/skills/semantic-scholar/ -name "semantic_scholar_fetch.py" 2>/dev/null | head -1)

**Standard search** (default — relevance-ranked):

python3 "$SCRIPT" search "QUERY" --max MAX_RESULTS \
  --fields-of-study "Computer Science,Engineering" \
  --publication-types JournalArticle,Conference

**Bulk search** (when `- sort:` is specified, or MAX_RESULTS > 100):

python3 "$SCRIPT" search-bulk "QUERY" --max MAX_RESULTS \
  --sort citationCount:desc \
  --fields-of-study "Computer Science" \
  --year "2020-"

If `semantic_scholar_fetch.py` is not found, fall back to inline Python using `urllib` against `https://api.semanticscholar.org/graph/v1/paper/search`.

**Recommended filter combos** (from testing):

| Goal | Flags | |------|-------| | High-quality journal papers | `--publication-types JournalArticle --min-citations 10` | | CS/EE papers, recent | `--fields-of-study "Computer Science,Engineering" --year "2022-"` | | Foundational / high-impact | `search-bulk --sort citationCount:desc --fields-of-study "Computer Science"` | | Conference papers only | `--publication-types Conference` |

> **Note**: `--venue` requires exact venue names (e.g. "IEEE Transactions on Signal Processing"), not partial matches like "IEEE". Avoid using `--venue` in automated flows — prefer `--publication-types` + `--fields-of-study`.

Step 3: Fetch Details for a Specific Paper

When a single paper ID is requested:

python3 "$SCRIPT" paper "PAPER_ID"

Where PAPER_ID can be:

  • DOI: `10.1109/TSP.2021.3071210`
  • ArXiv: `ARXIV:2006.10685`
  • CorpusId: `CorpusId:219792180`
  • S2 ID: `f9314fd99be5f2b1b3efcfab87197d578160d553`

Step 4: De-duplicate Against arXiv

For each result, check `externalIds.ArXiv`:

  • If present → paper is also on arXiv. Note this in output but do NOT re-fetch via `/aris-arxiv`.
  • If absent → paper is **venue-only** (e.g. IEEE without preprint). This is the unique value of this skill.

Step 5: Present Results

Present results as a table:

| # | Title | Venue | Year | Citations | Authors | Type |
|---|-------|-------|------|-----------|---------|------|
| 1 | Deep Learning Enabled... | IEEE Trans. Signal Process. | 2021 | 1364 | Xie et al. | Journal |

For each paper, also show:

  • **DOI link**: `https://doi.org/DOI` (for IEEE/ACM papers, this is the canonical link)
  • **Open Access PDF**: if `openAccessPdf.url` is non-empty, show it
  • **TLDR**: if available, show the one-line summary
  • **Also on arXiv**: if `externalIds.ArXiv` exists, note the arXiv ID

Step 6: Detailed Summary

For each paper (or top 5 if many results):

## [Title]

- **Venue**: [venue nam
Read more
Ships withdr-claw

A Super AI Lab with massive AI Doctors as Assistants. Best IDE for Research via AI Power.

Get the whole plugin

Other skills on dr-claw.