by zjunlp
A Large-Scale Knowledge Graph for Automated Scientific Research
# Add to your Claude Code skills
git clone https://github.com/zjunlp/SciAtlasNo comments yet. Be the first to share your thoughts!
SciAtlas is a research map you can use from the command line. Give it a topic, an idea, an author, or a paper trail, and it helps you look up literature, gather graph-backed evidence, and turn the result into readable reports and reusable JSON artifacts.
Behind that simple workflow is a large scientific knowledge graph. SciAtlas connects papers, authors, institutions, venues, keywords, citations, and a four-level research taxonomy from domains down to topics. That means a search is not limited to matching words: it can follow how research areas, people, concepts, and papers relate to one another.
This repository packages that capability as a lightweight SciAtlas client. New users can install it with pip, register an API token, and start running literature-grounded research tasks without setting up Neo4j, maintaining graph data, or touching backend infrastructure.
With the client, SciAtlas becomes a practical research assistant for:
request.json and response.json, plus user-facing summary.txt and report.md;agent-skill/ to migrate the base search-papers capability into end-to-end downstream tasks for tools such as Codex, Claude Code, and other coding agents.Install directly from GitHub:
pip install "git+https://github.com/zjunlp/SciAtlas.git#subdirectory=sciatlas"
For isolated CLI usage:
pipx install "git+https://github.com/zjunlp/SciAtlas.git#subdirectory=sciatlas"
After installation:
sciatlas -h
Open:
http://scinet.openkg.cn/register
Complete email verification and copy your personal token.
Quick link: 🔑 API Token.
At minimum, configure the hosted SciAtlas API endpoint and your personal token.
Linux / macOS:
export SCIATLAS_API_BASE_URL="http://scinet.openkg.cn"
export SCIATLAS_API_KEY="your-personal-sciatlas-token"
export SCIATLAS_TIMEOUT=900
export SCIATLAS_RUNS_DIR="./runs"
Windows CMD:
set SCIATLAS_API_BASE_URL=http://scinet.openkg.cn
set SCIATLAS_API_KEY=your-personal-sciatlas-token
set SCIATLAS_TIMEOUT=900
set SCIATLAS_RUNS_DIR=.\runs
📕 Optional: use your own LLM for keyword extraction
export LLM_PROVIDER="chat_completions"
export LLM_API_KEY="your-provider-api-key"
export LLM_BASE_URL="https://your-provider-or-gateway.example/v1"
export LLM_MODEL="your-model-name"
# Optional when your provider uses a custom endpoint or auth header:
# export LLM_CHAT_COMPLETIONS_URL="https://your-provider-or-gateway.example/v1/chat/completions"
# export LLM_AUTH_HEADER="x-api-key: your-provider-api-key"
export SCIATLAS_LLM_TIMEOUT=30
export SCIATLAS_LLM_TEMPERATURE=0
export SCIATLAS_LLM_MAX_TOKENS=512
This step is optional. Configure it only when you want SciAtlas to use your LLM API to turn a free-form query into better search keywords.
Keep LLM_PROVIDER=chat_completions, then replace LLM_API_KEY, LLM_BASE_URL, and LLM_MODEL with your provider values. If your provider gives a full chat-completions endpoint, set LLM_CHAT_COMPLETIONS_URL; if it requires a custom auth header, set LLM_AUTH_HEADER.
Leave the LLM values empty if you do not need this. SciAtlas will use built-in keyword extraction, and normal search, review, idea, trend, and researcher workflows still run.
User-editable template: .env.example. Set these variables only if you want LLM-assisted keyword extraction.
🖊 Optional: OpenAlex metadata support
export OA_API_KEY=""
export OPENALEX_MAILTO=""
OpenAlex is useful when you want extra metadata or PDF-related support. It is not required for the main CLI examples in this README. If you leave these variables empty, normal SciAtlas retrieval still works.
User-editable template: .env.example. Set these only if you want OpenAlex-assisted metadata support.
🖌 Optional: GROBID for local PDF workflows
GROBID is only needed when you process local PDF files. It reads scientific PDFs and extracts titles, authors, abstracts, and references. If you are only running the text-based CLI commands above, you can skip this section.
Start GROBID locally:
docker pull lfoppiano/grobid:latest
docker run -d --rm --name grobid -p 8070:8070 lfoppiano/grobid:latest
curl http://127.0.0.1:8070/api/isalive
Then set:
export GROBID_BASE_URL="http://127.0.0.1:8070"
Windows CMD:
set GROBID_BASE_URL=http://127.0.0.1:8070
User-editable template: .env.example. Leave GROBID_BASE_URL empty unless you process local PDFs.
Runtime variables:
| Variable | Required For | Notes |
|---|---|---|
| SCIATLAS_API_BASE_URL | all hosted SciAtlas tasks | Hosted SciAtlas API base URL. |
| SCIATLAS_API_KEY | all hosted SciAtlas tasks | Sent as X-API-Key and Authorization: Bearer. |
| LLM_PROVIDER | optional frontend enhancement | Keep as chat_completions. |
| LLM_API_KEY | optional frontend enhancement | Your provider key; leave empty for local or no-auth services. |
| LLM_BASE_URL | optional frontend enhancement | Provider base URL, usually ending in /v1. |
| LLM_CHAT_COMPLETIONS_URL | optional frontend enhancement | Use only when your provider gives a full endpoint. |
| LLM_MODEL | optional frontend enhancement | Model name from your provider. |
| LLM_AUTH_HEADER | optional frontend enhancement | Use only for custom auth, for example x-api-key: your-provider-api-key. |
| LLM_HTTP_HEADERS | optional frontend enhancement | Optional extra headers as JSON. |
| GROBID_BASE_URL | PDF tasks | Needed for --pdf-path workflows. |
| OA_API_KEY | optional | OpenAlex metadata/PDF support. |
| OPENALEX_MAILTO | optional | OpenAlex contact email. |
sciatlas health
sciatlas config
sciatlas search-papers \
--query "open world agent" \
--keyword "high:open world agent" \
--top-k 10
SciAtlas uses personal API tokens for public access.
Visit:
http://scinet.openkg.cn/register
Steps:
sciatlas_xxx token.The token is shown only once.
curl -H "Authorization: Bearer $SCIATLAS_API_KEY" \
http://scinet.openkg.cn/v1/auth/token/status
curl -H "Authorization: Bearer $SCIATLAS_API_KEY" \
"http://scinet.openkg.cn/v1/auth/usage?days=7"
| Command | Scenario | Main Output |
|---|---|---|
| sciatlas search-papers | Paper search | Related papers and Markdown report |
| sciatlas related-authors | Related-author discovery | Candidate authors and scores |
| sciatlas author-papers | Author paper lookup | Papers by a specified author |
| sciatlas support-papers | Support-paper retrieval | Evidence papers for candidate authors |
| `