Install
$ agentstack add skill-huggingface-s2-cli-s2-cli ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
The s2 CLI is read-only. It queries the Semantic Scholar Graph API and requires S2_API_KEY or PWC_SEMANTIC_SCHOLAR_API_KEY. Run s2 --help or a nested --help command when the live parser and this skill disagree; the parser is authoritative.
Install with uv tool install git+https://github.com/huggingface/s2-cli.git. Use compact TSV for reading. Add --json for programmatic filtering, joining, or schema-dependent processing.
PAPER accepts a modern or legacy arXiv ID, a DOI, a 40-character Semantic Scholar paper ID, a prefixed ID (ARXIV:, DOI:, CorpusId:, PMID:, URL:), an arXiv or Semantic Scholar URL, or a quoted title. Title matching uses Semantic Scholar's closest-title endpoint and prints a header with the matched title, ID, arXiv ID, and match score. If the header is wrong, rerun with an ID. Do not fall back to s2 search to resolve a specific paper.
Commands
s2 refs PAPER [--limit LIMIT] [--offset OFFSET] [--fields FIELDS] [--json]— papers this paper cites.s2 citations PAPER [--limit LIMIT] [--offset OFFSET] [--fields FIELDS] [--json]— papers that cite this paper.s2 search QUERY [--limit LIMIT] [--offset OFFSET] [--year YEAR] [--fields FIELDS] [--json]— search the Semantic Scholar graph.s2 version— show CLI and API contract versions.
Default --limit is 20. Search max --limit is 100; refs/citations max is
- There is no
--all. When stderr prints# more: rerun with --offset N,
pass that offset. Citations must keep offset + limit <= 9999.
Research workflow
- Use
s2 search QUERY --limit 100 --jsonfor graph-wide discovery. - Run a second
s2 search QUERY --year 2025-2026 --limit 100 --jsonfor a
recent slice. Do not treat one search as both the classic and recent lists.
- Use
s2 refs PAPERfor a bibliography ands2 citations PAPERfor citing
work. Quote titles. Prefer ARXIV: IDs after the first resolution.
- Extract arXiv IDs from the
arxivTSV column orexternalIds.ArXivin JSON. - Do not curl
api.semanticscholar.orgwhile this CLI is available.
Output and limits
- Stable exit codes are
0success,2invalid usage or missing key,3
network/rate-limit failure, and 4 not found or invalid API response.
- Default request pacing is 1.5s. Do not page citations of famous papers up to
the 10k cap unless the user explicitly asks.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: huggingface
- Source: huggingface/s2-cli
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.