🧪 Skills

ScholarGraph

Academic literature intelligence toolkit for multi-source paper search, analysis, and knowledge graph building with AI assistance.

v1.4.3
❤️ 1
⬇️ 691
👁 1
Share

Description


name: scholargraph description: Academic literature intelligence toolkit for multi-source paper search, analysis, and knowledge graph building with AI assistance. metadata: openclaw: emoji: "📚" version: "1.0.0" source: type: github url: https://github.com/Josephyb97/ScholarGraph license: MIT requires: bins: - bun optionalBins: - python3 env: - AI_PROVIDER optionalEnv: - OPENAI_API_KEY - DEEPSEEK_API_KEY - QWEN_API_KEY - ZHIPU_API_KEY - SERPER_API_KEY - NCBI_API_KEY - IEEE_API_KEY - CORE_API_KEY - UNPAYWALL_EMAIL - CROSSREF_MAILTO - SERPAPI_KEY install: command: bun install verify: bun run cli.ts --help security: network: true filesystem: true llmPrompts: true notes: | - Makes API calls to academic sources (arXiv, Semantic Scholar, etc.) - Stores data in local SQLite database - Uses custom LLM system prompts for structured output - Optional Python dependencies (pymupdf, python-pptx) for PDF/PPT features

ScholarGraph - Academic Literature Intelligence Toolkit

Overview

ScholarGraph is a comprehensive academic literature intelligence toolkit that helps researchers efficiently search, analyze, and manage academic papers using AI-powered tools. Features 11 academic search sources with intelligent domain-based source selection and PDF download capabilities.

Security & Privacy

This skill operates with the following permissions:

  • Network Access: Queries academic APIs (arXiv, Semantic Scholar, OpenAlex, PubMed, CrossRef, DBLP, IEEE, CORE, Google Scholar, Unpaywall) and web search services
  • File System: Reads/writes configuration files, downloads PDFs, stores knowledge graphs in SQLite database (data/knowledge-graphs.db)
  • LLM Integration: Sends custom system prompts to AI providers for structured JSON output (concept extraction, paper analysis, etc.)
  • Optional Python: PDF figure extraction (pymupdf) and PPT export (python-pptx) require Python 3.8+

Data Storage: All data is stored locally. No telemetry or analytics are collected.

API Keys: Optional API keys are only used for their respective services and are never transmitted elsewhere.

Source Code: Open source under MIT license at https://github.com/Josephyb97/ScholarGraph

Features

Core Modules (6)

  1. Literature Search - Multi-source academic paper discovery (11 sources)

    • Free sources: arXiv, Semantic Scholar, OpenAlex (250M+), PubMed (biomedical), CrossRef (150M+ DOI), DBLP (CS), Web Search
    • API-key sources: IEEE Xplore, CORE, Google Scholar (SerpAPI), Unpaywall (OA PDF)
    • Adapter-based plugin architecture for easy extension
    • Complementary search strategy with auto domain detection (biomedical/cs/engineering/physics)
    • Priority-based source selection per domain
    • Query expansion for better search results
    • PDF download with multi-strategy URL resolution
  2. Concept Learner - Rapid knowledge framework construction

    • Generate structured learning cards
    • Include code examples and related papers
    • Support beginner/intermediate/advanced depth levels
  3. Knowledge Gap Detector - Proactive blind spot identification

    • Analyze knowledge coverage in specific domains
    • Identify critical, recommended, and optional gaps
    • Provide learning recommendations and time estimates
  4. Progress Tracker - Real-time field monitoring

    • Track research topics and keywords
    • Generate daily/weekly/monthly reports
    • Monitor trending papers and topics
  5. Paper Analyzer - Deep paper analysis

    • Extract key contributions and insights
    • Support quick/standard/deep analysis modes
    • Generate structured analysis reports
  6. Knowledge Graph Builder - Concept relationship visualization

    • Build interactive knowledge graphs
    • Support Mermaid and JSON output formats
    • Find learning paths between concepts
    • SQLite-based persistent storage
    • Bidirectional concept-paper indexing

Advanced Features (9)

  1. Review Detector - Automatic review paper identification

    • Multi-dimensional scoring (title 30% + citations 25% + abstract 25% + AI 20%)
    • Chinese and English keyword support
    • Confidence-based filtering with user confirmation
  2. Concept Extractor - Extract concepts from review papers

    • AI-powered extraction of 15-30 core concepts
    • Four-level categorization (foundation/core/advanced/application)
    • Importance scoring and relationship identification
    • Cross-review deduplication and merging
  3. Review-to-Graph Workflow - End-to-end pipeline

    • Search reviews -> Detect -> Confirm -> Analyze -> Extract concepts
    • Build knowledge graph -> Enrich with key papers -> Index -> Store
    • Interactive or automatic confirmation mode
  4. Knowledge Graph Query - Bidirectional literature indexing

    • Concept -> papers: find papers related to a concept
    • Paper -> concepts: find concepts covered by a paper
    • Paper recommendations based on multiple concepts
    • SQLite-optimized high-performance queries
  5. Compare Concepts - Compare two concepts

    • Identify similarities and differences
    • Provide use case recommendations
  6. Compare Papers - Compare multiple papers

    • Find common themes and differences
    • Generate synthesis analysis
  7. Critique - Critical paper analysis

    • Identify strengths and weaknesses
    • Find research gaps and improvement suggestions
    • Support custom focus areas
  8. Learning Path - Find optimal learning paths

    • Discover paths between concepts
    • Generate topological learning order
    • Visualize with Mermaid diagrams
  9. Graph Management - Manage persistent knowledge graphs

    • List all saved graphs
    • View graph statistics
    • Export graphs to JSON
    • Visualize with Mermaid
  10. Paper Visualization - Interactive paper presentation

    • Convert paper analysis to HTML slide presentations
    • Academic dark/light themes with responsive typography
    • Keyboard/touch/scroll navigation, edit mode (E key)
    • PDF figure extraction (pymupdf) and PPT export (python-pptx)
    • 8+ slides: title, abstract, key points, methodology, experiments, contributions, limitations, references
  11. Interactive Knowledge Graph - D3.js force-directed visualization

    • Convert knowledge graphs to interactive HTML with D3.js v7
    • Node size reflects paper count, edge thickness reflects concept tightness
    • Zoom/pan, node dragging, click-to-detail panel, search, legend
    • Paper preview bridge: click "View Presentation" to open paper slides in new tab
    • Category colors: foundation=#4FC3F7, core=#FFB74D, advanced=#CE93D8, application=#81C784

Technical Features

  • 11 Academic Search Sources: arXiv, Semantic Scholar, OpenAlex, PubMed, CrossRef, DBLP, IEEE Xplore, CORE, Google Scholar, Unpaywall, Web Search
  • Complementary Search Strategy: Auto-detects query domain and selects optimal source combination
  • Adapter Pattern: Plugin-based search source architecture for easy extension
  • PDF Download: Multi-strategy URL resolution (direct, Unpaywall, OpenAlex OA, CORE)
  • Multi-AI Provider Support: 15+ AI providers including OpenAI, Anthropic, DeepSeek, Qwen, Zhipu AI, etc.
  • SQLite Persistence: Knowledge graphs stored in SQLite database via bun:sqlite
  • Bidirectional Indexing: Concept-paper and paper-concept bidirectional query support
  • Rate Limiting: Per-source rate limiting with automatic retry and delay
  • Interactive HTML Output: Paper slide presentations, D3.js knowledge graph visualizations
  • Multiple Output Formats: Markdown, JSON, Mermaid, HTML, PPTX
  • TypeScript + Bun: Fast and type-safe runtime
  • CLI + API: Both command-line and programmatic interfaces

Installation

# Clone repository
git clone https://github.com/Josephyb97/ScholarGraph.git
cd ScholarGraph

# Install dependencies
bun install

# Initialize configuration
bun run cli.ts config init

Configuration

Set up your AI provider:

# Using OpenAI
export AI_PROVIDER=openai
export OPENAI_API_KEY="your-api-key"

# Using DeepSeek
export AI_PROVIDER=deepseek
export DEEPSEEK_API_KEY="your-api-key"

# Using Qwen (通义千问)
export AI_PROVIDER=qwen
export QWEN_API_KEY="your-api-key"

Academic Source API Keys (optional, expand search coverage)

export NCBI_API_KEY="your-key"           # PubMed high-speed access (10 req/s)
export IEEE_API_KEY="your-key"           # IEEE Xplore engineering papers
export CORE_API_KEY="your-key"           # CORE open access full text
export UNPAYWALL_EMAIL="your@email.com"  # Unpaywall OA PDF resolver
export CROSSREF_MAILTO="your@email.com"  # CrossRef polite pool (higher rate)
export SERPAPI_KEY="your-key"            # Google Scholar (via SerpAPI)
export SERPER_API_KEY="your-key"         # Web search via Serper

Usage Examples

Search Literature

# Auto-select best sources based on query domain
lit search "transformer attention" --limit 20

# Specify domain for optimized source selection
lit search "CRISPR gene editing" --domain biomedical

# Use specific sources (comma-separated)
lit search "deep learning" --source semantic_scholar,arxiv,openalex --sort citations

# Search and download PDFs
lit search "attention is all you need" --download --limit 3

Download PDFs

# Search and download PDFs
lit download "transformer" --limit 5 --output ./papers

Learn Concepts

lit learn "BERT" --depth advanced --papers --code --output bert-card.md

Detect Knowledge Gaps

lit detect --domain "Deep Learning" --known "CNN,RNN" --output gaps.md

Analyze Papers

lit analyze "https://arxiv.org/abs/1706.03762" --mode deep --output analysis.md

Build Knowledge Graph

lit graph transformer attention BERT GPT --format mermaid --output graph.md

Compare Concepts

lit compare concepts CNN RNN --output comparison.md

Compare Papers

lit compare papers "url1" "url2" "url3" --output comparison.md

Critical Analysis

lit critique "paper-url" --focus "novelty,scalability" --output critique.md

Find Learning Path

lit path "Machine Learning" "Deep Learning" --concepts "Neural Networks" --output path.md

Search Review Papers

lit review-search "attention mechanism" --limit 10

Build Knowledge Graph from Reviews

# From search query (interactive mode)
lit review-graph "deep learning" --output dl-graph --enrich

# From specific URL
lit review-graph "https://arxiv.org/abs/xxxx" --output my-graph --enrich

# Auto-confirm mode (non-interactive)
lit review-graph "transformer" --output tf-graph --enrich --auto-confirm

Query Knowledge Graph

# Find papers by concept
lit query concept "transformer" --graph dl-graph --limit 20

# Find concepts by paper
lit query paper "https://arxiv.org/abs/1706.03762" --graph dl-graph

Manage Knowledge Graphs

# List all graphs
lit graph-list

# View graph statistics
lit graph-stats dl-graph

# Visualize graph
lit graph-viz dl-graph --format mermaid --output graph.md

# Export graph
lit graph-export dl-graph --output dl-graph.json

Paper Visualization

# Generate interactive HTML presentation
lit paper-viz "https://arxiv.org/abs/1706.03762" --output attention.html

# With theme and PPT export
lit paper-viz "https://arxiv.org/abs/1706.03762" --mode deep --theme academic-light --ppt

# Manually provide figures
lit paper-viz "https://example.com/paper" --figures ./my-figures

Interactive Knowledge Graph

# Generate interactive D3.js graph from existing knowledge graph
lit graph-interactive dl-graph --output dl-interactive.html

# Without paper data (lighter weight)
lit graph-interactive my-graph --no-paper-viz

Use Cases

1. Quick Field Onboarding

  • Learn core concepts
  • Detect prerequisite gaps
  • Build knowledge graph
  • Plan learning path

2. Deep Paper Understanding

  • Analyze paper in depth
  • Perform critical analysis
  • Learn new concepts from paper
  • Compare with related papers

3. Research Progress Tracking

  • Monitor research topics
  • Track latest papers
  • Generate progress reports

4. Concept Comparison

  • Compare technical approaches
  • Evaluate different models
  • Build comparison graphs

5. Review-Driven Knowledge Building

  • Search and identify review papers
  • Extract concepts from reviews
  • Build persistent knowledge graphs
  • Query concept-paper relationships

6. Paper Visualization & Graph Exploration

  • Analyze paper and generate interactive HTML presentation
  • Build knowledge graph from reviews
  • Generate interactive D3.js graph with paper preview
  • Click nodes to view paper details and open presentations

Project Structure

ScholarGraph/
├── cli.ts                      # Unified CLI entry
├── config.ts                   # Configuration management
├── README.md                   # Project documentation
├── CHANGELOG.md                # Version history
├── SKILL.md                    # This file
│
├── shared/                     # Shared modules
│   ├── ai-provider.ts          # AI provider abstraction
│   ├── types.ts                # Type definitions
│   ├── validators.ts           # Parameter validation
│   ├── errors.ts               # Error handling
│   └── utils.ts                # Utility functions
│
├── literature-search/          # Literature search module
│   └── scripts/
│       ├── search.ts           # Search engine core
│       ├── types.ts            # Type definitions
│       ├── query-expander.ts   # Query expansion
│       ├── search-strategy.ts  # Complementary search strategy
│       ├── pdf-downloader.ts   # PDF download module
│       └── adapters/           # Search source adapters
│           ├── base.ts         # Adapter interface & base class
│           ├── registry.ts     # Adapter registry
│           ├── index.ts        # Barrel export
│           ├── arxiv-adapter.ts
│           ├── semantic-scholar-adapter.ts
│           ├── web-adapter.ts
│           ├── openalex-adapter.ts
│           ├── pubmed-adapter.ts
│           ├── crossref-adapter.ts
│           ├── dblp-adapter.ts
│           ├── ieee-adapter.ts
│           ├── core-adapter.ts
│           ├── unpaywall-adapter.ts
│           └── google-scholar-adapter.ts
│
├── concept-learner/            # Concept learning module
├── knowledge-gap-detector/     # Gap detection module
├── progress-tracker/           # Progress tracking module
├── paper-analyzer/             # Paper analysis module
│
├── review-detector/            # Review paper identification
│   └── scripts/
│       ├── detect.ts           # Multi-dimensional scoring
│       └── types.ts
│
├── concept-extractor/          # Concept extraction from reviews
│   └── scripts/
│       ├── extract.ts          # AI-powered extraction
│       └── types.ts
│
├── knowledge-graph/            # Knowledge graph module
│   └── scripts/
│       ├── graph.ts            # Graph building core
│       ├── indexer.ts          # Bidirectional indexing
│       ├── storage.ts          # SQLite persistence
│       └── enricher.ts         # Key paper association
│
├── paper-viz/                  # Paper visualization
│   └── scripts/
│       ├── types.ts            # Presentation data interfaces
│       ├── slide-builder.ts    # PaperAnalysis → slides
│       ├── html-generator.ts   # Self-contained HTML generation
│       ├── pdf-figure-extractor.ts  # PDF figure extraction (pymupdf)
│       └── ppt-exporter.ts     # PPT export (python-pptx)
│
├── graph-viz/                  # Interactive knowledge graph
│   └── scripts/
│       ├── types.ts            # D3 graph data interfaces
│       ├── graph-data-adapter.ts # KnowledgeGraph → D3 data
│       ├── html-generator.ts   # Interactive HTML (D3.js v7)
│       └── paper-viz-bridge.ts # Graph → paper presentation bridge
│
├── workflows/                  # End-to-end workflows
│   └── review-to-graph.ts      # Review to graph pipeline
│
├── data/                       # Data directory (auto-created)
│   └── knowledge-graphs.db     # SQLite database
│
├── downloads/                  # PDF downloads (auto-created)
│   └── pdfs/
│       └── metadata.json       # Download index
│
└── test/                       # Tests and documentation
    ├── ADVANCED_FEATURES.md
    ├── TEST_RESULTS.md
    └── scripts/

Supported AI Providers

International

  • OpenAI
  • Anthropic (Claude)
  • Azure OpenAI
  • Groq
  • Together AI
  • Ollama (local)

China

  • 通义千问 (Qwen/DashScope)
  • DeepSeek
  • 智谱 AI (GLM)
  • MiniMax
  • Moonshot (Kimi)
  • 百川 AI (Baichuan)
  • 零一万物 (Yi)
  • 豆包 (Doubao)

Output Formats

Markdown Reports

  • Concept cards with definitions, components, history, applications
  • Gap reports with analysis and recommendations
  • Progress reports with trending topics
  • Paper analyses with methods, experiments, contributions
  • Comparison analyses with similarities and differences
  • Critical analyses with strengths, weaknesses, and suggestions

JSON Data

Structured data for programmatic processing

Mermaid Diagrams

Interactive knowledge graphs and learning paths

Interactive HTML

  • Paper slide presentations with keyboard/scroll/touch navigation
  • D3.js force-directed knowledge graph with zoom, search, and paper panel

Requirements

  • Bun 1.3+ or Node.js 18+
  • AI provider API key
  • Internet connection for paper search
  • Python 3.8+ (optional, for PDF figure extraction and PPT export)

License

MIT License

Links

Version

Current version: 1.0.0

Author

ScholarGraph Team


Design Inspirations:

For detailed documentation, see README.md For advanced features, see test/ADVANCED_FEATURES.md For test results, see test/TEST_RESULTS.md

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs