skills/deepxiv/SKILL.md
Search and progressively read open-access academic papers through DeepXiv. Use when the user wants layered paper access, section-level reading, trending papers, or DeepXiv-backed literature retrieval.
npx skillsauth add wanshuiyin/Auto-claude-code-research-in-sleep deepxivInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Search topic or paper ID: $ARGUMENTS
DeepXiv is the progressive-reading literature source:
| Skill | Source | Best for |
|-------|--------|----------|
| /arxiv | arXiv API | Batch search, PDF download, metadata |
| /deepxiv | DeepXiv SDK | Progressive section-level reading |
| /semantic-scholar | S2 API | Published venue metadata, citation counts |
| /alphaxiv | alphaxiv.org | Instant LLM-optimized summary of one paper, with LaTeX source fallback |
Use DeepXiv when you want to avoid loading full papers too early.
deepxiv_fetch.py, resolved per
shared-references/integration-contract.md §2
(Policy D1 — primary + fallback cascade). If unresolved (canonical
chain exhausted), fall back to the raw deepxiv CLI (documented per
command below).Overrides (append to arguments):
/deepxiv "agent memory" - max: 5— top 5 results/deepxiv "2409.05591" - brief— quick paper summary/deepxiv "2409.05591" - head— metadata + section overview/deepxiv "2409.05591" - section: Introduction— read one section only/deepxiv "trending" - days: 14 - max: 10— trending papers/deepxiv "karpathy" - web— DeepXiv web search/deepxiv "258001" - sc— Semantic Scholar metadata by ID
DeepXiv is optional. If the CLI is not installed, tell the user:
pip install deepxiv-sdk
On first use, deepxiv auto-registers a free token and stores it in ~/.env.
Parse $ARGUMENTS for:
- max: N: override MAX_RESULTS- brief: fetch paper brief- head: fetch metadata and section map- section: NAME: fetch one named section- trending or query trending: fetch trending papers- days: 7|14|30: trending time window- web: run DeepXiv web search- sc: fetch Semantic Scholar metadata by IDIf the main argument looks like an arXiv ID and no explicit mode is given, default to - brief.
Resolve $DEEPXIV_FETCHER via the canonical strict-safe chain (see
shared-references/integration-contract.md §2).
Policy D1 cascade: the resolved adapter is preferred; if unresolved
(canonical chain exhausted), fall back to raw deepxiv CLI commands
documented in Step 3.
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
DEEPXIV_FETCHER=".aris/tools/deepxiv_fetch.py"
[ -f "$DEEPXIV_FETCHER" ] || DEEPXIV_FETCHER="tools/deepxiv_fetch.py"
[ -f "$DEEPXIV_FETCHER" ] || { [ -n "${ARIS_REPO:-}" ] && DEEPXIV_FETCHER="$ARIS_REPO/tools/deepxiv_fetch.py"; }
[ -f "$DEEPXIV_FETCHER" ] || DEEPXIV_FETCHER=""
# Smoke test (optional — adapter resolution shown to user). The cascade
# in Step 3 below branches purely on `[ -n "$DEEPXIV_FETCHER" ]`; a
# resolved-but-non-functional adapter is not currently auto-demoted.
if [ -n "$DEEPXIV_FETCHER" ]; then
echo "DeepXiv adapter resolved at: $DEEPXIV_FETCHER" >&2
else
echo "DeepXiv adapter unresolved (canonical chain exhausted); raw deepxiv CLI fallback will be used." >&2
fi
Search papers
python3 "$DEEPXIV_FETCHER" search "QUERY" --max MAX_RESULTS
Fallback:
deepxiv search "QUERY" --limit MAX_RESULTS --format json
Brief summary
python3 "$DEEPXIV_FETCHER" paper-brief ARXIV_ID
Fallback:
deepxiv paper ARXIV_ID --brief --format json
Section map
python3 "$DEEPXIV_FETCHER" paper-head ARXIV_ID
Fallback:
deepxiv paper ARXIV_ID --head --format json
Specific section
python3 "$DEEPXIV_FETCHER" paper-section ARXIV_ID "SECTION_NAME"
Fallback:
deepxiv paper ARXIV_ID --section "SECTION_NAME" --format json
Trending
python3 "$DEEPXIV_FETCHER" trending --days 7 --max MAX_RESULTS
Fallback:
deepxiv trending --days 7 --limit MAX_RESULTS --output json
Web search
python3 "$DEEPXIV_FETCHER" wsearch "QUERY"
Fallback:
deepxiv wsearch "QUERY" --output json
Semantic Scholar metadata
python3 "$DEEPXIV_FETCHER" sc "SEMANTIC_SCHOLAR_ID"
Fallback:
deepxiv sc "SEMANTIC_SCHOLAR_ID" --output json
When searching, present a compact table:
| # | ID | Title | Year | Citations | Notes |
|---|----|-------|------|-----------|-------|
When reading a paper, show:
brief → head → sectionUse this progression:
searchpaper-briefpaper-headpaper-sectionDo not jump to full-paper reads when a brief or one section answers the question.
Required when research-wiki/ exists in the project; skip silently
otherwise. When the wiki dir exists, resolve $WIKI_SCRIPT per the
canonical chain at
shared-references/wiki-helper-resolution.md
(Variant B — warn-and-skip). Ingest papers that were meaningfully
read (brief / head / section / full) during this invocation — mere
search hits without a depth read do not need ingestion:
if [ -d research-wiki/ ]; then
cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
ARIS_REPO="${ARIS_REPO:-$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null)}"
if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
fi
WIKI_SCRIPT=".aris/tools/research_wiki.py"
[ -f "$WIKI_SCRIPT" ] || WIKI_SCRIPT="tools/research_wiki.py"
[ -f "$WIKI_SCRIPT" ] || { [ -n "${ARIS_REPO:-}" ] && WIKI_SCRIPT="$ARIS_REPO/tools/research_wiki.py"; }
[ -f "$WIKI_SCRIPT" ] || {
echo "WARN: research_wiki.py not found; depth-read summary delivered, wiki ingest skipped. Fix: bash tools/install_aris.sh or smart_update.sh (refreshes ~/.aris/repo), export ARIS_REPO, or cp <ARIS-repo>/tools/research_wiki.py tools/." >&2
WIKI_SCRIPT=""
}
if [ -n "$WIKI_SCRIPT" ]; then
for each arxiv_id the user asked this skill to read in depth:
python3 "$WIKI_SCRIPT" ingest_paper research-wiki/ \
--arxiv-id "<arxiv_id>"
fi
fi
The helper handles metadata / slug / dedup / page / index / log in one
call — do not handwrite papers/<slug>.md. See
shared-references/integration-contract.md.
Backfill missed ingests with
python3 "$WIKI_SCRIPT" sync research-wiki/ --arxiv-ids <id1>,<id2>,...
after resolving $WIKI_SCRIPT as above.
deepxiv commands when available./arxiv or /research-lit "topic" - sources: web./arxiv and /semantic-scholar, not a replacement.development
Search GitHub Issues and Discussions for software errors, version compatibility problems, and exact error-string matches. Use for debugging and discovery only; results are not paper-citation evidence.
development
Search GitHub Issues and Discussions for software errors, version compatibility problems, and exact error-string matches. Use for debugging and discovery only; results are not paper-citation evidence.
testing
Run the Anti-Autoresearch integrity-forensics sweep (span-anchored evidence ledger → GPT auditors propose findings → deterministic rules-only adjudicator) against a paper via a SHA-pinned thin launcher — then convert the verdict into a typed policy gate (BLOCK/WARN/NO_NEW_BLOCKER) and an append-only obligations ledger. Use when user says "integrity forensics", "forensic audit this paper", "投稿前自查诚信", "审这篇论文的诚信", or says "anti-autoresearch" when the upstream repo's own skills are not installed. Also invoked by /paper-writing (submission self-forensics, default ON), /peer-review (forensic appendix), /resubmit-pipeline.
testing
Privileged applier that LANDS meta-optimize / corpus-audit patches the user approved — the ONLY skill permitted to mutate the skill corpus from a self-modification proposal, with cross-model jury and human approval at landing. Use when the user says "meta apply", "/meta-apply", "land the staged patches", "应用优化", after a /meta-optimize run.