{
  "schemaVersion": "1.0",
  "item": {
    "slug": "scholargraph",
    "name": "ScholarGraph",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Josephyb97/scholargraph",
    "canonicalUrl": "https://clawhub.ai/Josephyb97/scholargraph",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/scholargraph",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=scholargraph",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "CHANGELOG.md",
      "cli.ts",
      "concept-extractor/scripts/extract.ts",
      "concept-extractor/scripts/types.ts",
      "concept-learner/scripts/learn.ts",
      "concept-learner/scripts/types.ts"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/scholargraph"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/scholargraph",
    "agentPageUrl": "https://openagent3.xyz/skills/scholargraph/agent",
    "manifestUrl": "https://openagent3.xyz/skills/scholargraph/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/scholargraph/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Overview",
        "body": "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."
      },
      {
        "title": "Security & Privacy",
        "body": "This skill operates with the following permissions:\n\nNetwork Access: Queries academic APIs (arXiv, Semantic Scholar, OpenAlex, PubMed, CrossRef, DBLP, IEEE, CORE, Google Scholar, Unpaywall) and web search services\nFile System: Reads/writes configuration files, downloads PDFs, stores knowledge graphs in SQLite database (data/knowledge-graphs.db)\nLLM Integration: Sends custom system prompts to AI providers for structured JSON output (concept extraction, paper analysis, etc.)\nOptional Python: PDF figure extraction (pymupdf) and PPT export (python-pptx) require Python 3.8+\n\nData Storage: All data is stored locally. No telemetry or analytics are collected.\n\nAPI Keys: Optional API keys are only used for their respective services and are never transmitted elsewhere.\n\nSource Code: Open source under MIT license at https://github.com/Josephyb97/ScholarGraph"
      },
      {
        "title": "Core Modules (6)",
        "body": "Literature Search - Multi-source academic paper discovery (11 sources)\n\nFree sources: arXiv, Semantic Scholar, OpenAlex (250M+), PubMed (biomedical), CrossRef (150M+ DOI), DBLP (CS), Web Search\nAPI-key sources: IEEE Xplore, CORE, Google Scholar (SerpAPI), Unpaywall (OA PDF)\nAdapter-based plugin architecture for easy extension\nComplementary search strategy with auto domain detection (biomedical/cs/engineering/physics)\nPriority-based source selection per domain\nQuery expansion for better search results\nPDF download with multi-strategy URL resolution\n\n\n\nConcept Learner - Rapid knowledge framework construction\n\nGenerate structured learning cards\nInclude code examples and related papers\nSupport beginner/intermediate/advanced depth levels\n\n\n\nKnowledge Gap Detector - Proactive blind spot identification\n\nAnalyze knowledge coverage in specific domains\nIdentify critical, recommended, and optional gaps\nProvide learning recommendations and time estimates\n\n\n\nProgress Tracker - Real-time field monitoring\n\nTrack research topics and keywords\nGenerate daily/weekly/monthly reports\nMonitor trending papers and topics\n\n\n\nPaper Analyzer - Deep paper analysis\n\nExtract key contributions and insights\nSupport quick/standard/deep analysis modes\nGenerate structured analysis reports\n\n\n\nKnowledge Graph Builder - Concept relationship visualization\n\nBuild interactive knowledge graphs\nSupport Mermaid and JSON output formats\nFind learning paths between concepts\nSQLite-based persistent storage\nBidirectional concept-paper indexing"
      },
      {
        "title": "Advanced Features (9)",
        "body": "Review Detector - Automatic review paper identification\n\nMulti-dimensional scoring (title 30% + citations 25% + abstract 25% + AI 20%)\nChinese and English keyword support\nConfidence-based filtering with user confirmation\n\n\n\nConcept Extractor - Extract concepts from review papers\n\nAI-powered extraction of 15-30 core concepts\nFour-level categorization (foundation/core/advanced/application)\nImportance scoring and relationship identification\nCross-review deduplication and merging\n\n\n\nReview-to-Graph Workflow - End-to-end pipeline\n\nSearch reviews -> Detect -> Confirm -> Analyze -> Extract concepts\nBuild knowledge graph -> Enrich with key papers -> Index -> Store\nInteractive or automatic confirmation mode\n\n\n\nKnowledge Graph Query - Bidirectional literature indexing\n\nConcept -> papers: find papers related to a concept\nPaper -> concepts: find concepts covered by a paper\nPaper recommendations based on multiple concepts\nSQLite-optimized high-performance queries\n\n\n\nCompare Concepts - Compare two concepts\n\nIdentify similarities and differences\nProvide use case recommendations\n\n\n\nCompare Papers - Compare multiple papers\n\nFind common themes and differences\nGenerate synthesis analysis\n\n\n\nCritique - Critical paper analysis\n\nIdentify strengths and weaknesses\nFind research gaps and improvement suggestions\nSupport custom focus areas\n\n\n\nLearning Path - Find optimal learning paths\n\nDiscover paths between concepts\nGenerate topological learning order\nVisualize with Mermaid diagrams\n\n\n\nGraph Management - Manage persistent knowledge graphs\n\nList all saved graphs\nView graph statistics\nExport graphs to JSON\nVisualize with Mermaid\n\n\n\nPaper Visualization - Interactive paper presentation\n\nConvert paper analysis to HTML slide presentations\nAcademic dark/light themes with responsive typography\nKeyboard/touch/scroll navigation, edit mode (E key)\nPDF figure extraction (pymupdf) and PPT export (python-pptx)\n8+ slides: title, abstract, key points, methodology, experiments, contributions, limitations, references\n\n\n\nInteractive Knowledge Graph - D3.js force-directed visualization\n\nConvert knowledge graphs to interactive HTML with D3.js v7\nNode size reflects paper count, edge thickness reflects concept tightness\nZoom/pan, node dragging, click-to-detail panel, search, legend\nPaper preview bridge: click \"View Presentation\" to open paper slides in new tab\nCategory colors: foundation=#4FC3F7, core=#FFB74D, advanced=#CE93D8, application=#81C784"
      },
      {
        "title": "Technical Features",
        "body": "11 Academic Search Sources: arXiv, Semantic Scholar, OpenAlex, PubMed, CrossRef, DBLP, IEEE Xplore, CORE, Google Scholar, Unpaywall, Web Search\nComplementary Search Strategy: Auto-detects query domain and selects optimal source combination\nAdapter Pattern: Plugin-based search source architecture for easy extension\nPDF Download: Multi-strategy URL resolution (direct, Unpaywall, OpenAlex OA, CORE)\nMulti-AI Provider Support: 15+ AI providers including OpenAI, Anthropic, DeepSeek, Qwen, Zhipu AI, etc.\nSQLite Persistence: Knowledge graphs stored in SQLite database via bun:sqlite\nBidirectional Indexing: Concept-paper and paper-concept bidirectional query support\nRate Limiting: Per-source rate limiting with automatic retry and delay\nInteractive HTML Output: Paper slide presentations, D3.js knowledge graph visualizations\nMultiple Output Formats: Markdown, JSON, Mermaid, HTML, PPTX\nTypeScript + Bun: Fast and type-safe runtime\nCLI + API: Both command-line and programmatic interfaces"
      },
      {
        "title": "Installation",
        "body": "# Clone repository\ngit clone https://github.com/Josephyb97/ScholarGraph.git\ncd ScholarGraph\n\n# Install dependencies\nbun install\n\n# Initialize configuration\nbun run cli.ts config init"
      },
      {
        "title": "Configuration",
        "body": "Set up your AI provider:\n\n# Using OpenAI\nexport AI_PROVIDER=openai\nexport OPENAI_API_KEY=\"your-api-key\"\n\n# Using DeepSeek\nexport AI_PROVIDER=deepseek\nexport DEEPSEEK_API_KEY=\"your-api-key\"\n\n# Using Qwen (通义千问)\nexport AI_PROVIDER=qwen\nexport QWEN_API_KEY=\"your-api-key\""
      },
      {
        "title": "Academic Source API Keys (optional, expand search coverage)",
        "body": "export NCBI_API_KEY=\"your-key\"           # PubMed high-speed access (10 req/s)\nexport IEEE_API_KEY=\"your-key\"           # IEEE Xplore engineering papers\nexport CORE_API_KEY=\"your-key\"           # CORE open access full text\nexport UNPAYWALL_EMAIL=\"your@email.com\"  # Unpaywall OA PDF resolver\nexport CROSSREF_MAILTO=\"your@email.com\"  # CrossRef polite pool (higher rate)\nexport SERPAPI_KEY=\"your-key\"            # Google Scholar (via SerpAPI)\nexport SERPER_API_KEY=\"your-key\"         # Web search via Serper"
      },
      {
        "title": "Search Literature",
        "body": "# Auto-select best sources based on query domain\nlit search \"transformer attention\" --limit 20\n\n# Specify domain for optimized source selection\nlit search \"CRISPR gene editing\" --domain biomedical\n\n# Use specific sources (comma-separated)\nlit search \"deep learning\" --source semantic_scholar,arxiv,openalex --sort citations\n\n# Search and download PDFs\nlit search \"attention is all you need\" --download --limit 3"
      },
      {
        "title": "Download PDFs",
        "body": "# Search and download PDFs\nlit download \"transformer\" --limit 5 --output ./papers"
      },
      {
        "title": "Learn Concepts",
        "body": "lit learn \"BERT\" --depth advanced --papers --code --output bert-card.md"
      },
      {
        "title": "Detect Knowledge Gaps",
        "body": "lit detect --domain \"Deep Learning\" --known \"CNN,RNN\" --output gaps.md"
      },
      {
        "title": "Analyze Papers",
        "body": "lit analyze \"https://arxiv.org/abs/1706.03762\" --mode deep --output analysis.md"
      },
      {
        "title": "Build Knowledge Graph",
        "body": "lit graph transformer attention BERT GPT --format mermaid --output graph.md"
      },
      {
        "title": "Compare Concepts",
        "body": "lit compare concepts CNN RNN --output comparison.md"
      },
      {
        "title": "Compare Papers",
        "body": "lit compare papers \"url1\" \"url2\" \"url3\" --output comparison.md"
      },
      {
        "title": "Critical Analysis",
        "body": "lit critique \"paper-url\" --focus \"novelty,scalability\" --output critique.md"
      },
      {
        "title": "Find Learning Path",
        "body": "lit path \"Machine Learning\" \"Deep Learning\" --concepts \"Neural Networks\" --output path.md"
      },
      {
        "title": "Search Review Papers",
        "body": "lit review-search \"attention mechanism\" --limit 10"
      },
      {
        "title": "Build Knowledge Graph from Reviews",
        "body": "# From search query (interactive mode)\nlit review-graph \"deep learning\" --output dl-graph --enrich\n\n# From specific URL\nlit review-graph \"https://arxiv.org/abs/xxxx\" --output my-graph --enrich\n\n# Auto-confirm mode (non-interactive)\nlit review-graph \"transformer\" --output tf-graph --enrich --auto-confirm"
      },
      {
        "title": "Query Knowledge Graph",
        "body": "# Find papers by concept\nlit query concept \"transformer\" --graph dl-graph --limit 20\n\n# Find concepts by paper\nlit query paper \"https://arxiv.org/abs/1706.03762\" --graph dl-graph"
      },
      {
        "title": "Manage Knowledge Graphs",
        "body": "# List all graphs\nlit graph-list\n\n# View graph statistics\nlit graph-stats dl-graph\n\n# Visualize graph\nlit graph-viz dl-graph --format mermaid --output graph.md\n\n# Export graph\nlit graph-export dl-graph --output dl-graph.json"
      },
      {
        "title": "Paper Visualization",
        "body": "# Generate interactive HTML presentation\nlit paper-viz \"https://arxiv.org/abs/1706.03762\" --output attention.html\n\n# With theme and PPT export\nlit paper-viz \"https://arxiv.org/abs/1706.03762\" --mode deep --theme academic-light --ppt\n\n# Manually provide figures\nlit paper-viz \"https://example.com/paper\" --figures ./my-figures"
      },
      {
        "title": "Interactive Knowledge Graph",
        "body": "# Generate interactive D3.js graph from existing knowledge graph\nlit graph-interactive dl-graph --output dl-interactive.html\n\n# Without paper data (lighter weight)\nlit graph-interactive my-graph --no-paper-viz"
      },
      {
        "title": "1. Quick Field Onboarding",
        "body": "Learn core concepts\nDetect prerequisite gaps\nBuild knowledge graph\nPlan learning path"
      },
      {
        "title": "2. Deep Paper Understanding",
        "body": "Analyze paper in depth\nPerform critical analysis\nLearn new concepts from paper\nCompare with related papers"
      },
      {
        "title": "3. Research Progress Tracking",
        "body": "Monitor research topics\nTrack latest papers\nGenerate progress reports"
      },
      {
        "title": "4. Concept Comparison",
        "body": "Compare technical approaches\nEvaluate different models\nBuild comparison graphs"
      },
      {
        "title": "5. Review-Driven Knowledge Building",
        "body": "Search and identify review papers\nExtract concepts from reviews\nBuild persistent knowledge graphs\nQuery concept-paper relationships"
      },
      {
        "title": "6. Paper Visualization & Graph Exploration",
        "body": "Analyze paper and generate interactive HTML presentation\nBuild knowledge graph from reviews\nGenerate interactive D3.js graph with paper preview\nClick nodes to view paper details and open presentations"
      },
      {
        "title": "Project Structure",
        "body": "ScholarGraph/\n├── cli.ts                      # Unified CLI entry\n├── config.ts                   # Configuration management\n├── README.md                   # Project documentation\n├── CHANGELOG.md                # Version history\n├── SKILL.md                    # This file\n│\n├── shared/                     # Shared modules\n│   ├── ai-provider.ts          # AI provider abstraction\n│   ├── types.ts                # Type definitions\n│   ├── validators.ts           # Parameter validation\n│   ├── errors.ts               # Error handling\n│   └── utils.ts                # Utility functions\n│\n├── literature-search/          # Literature search module\n│   └── scripts/\n│       ├── search.ts           # Search engine core\n│       ├── types.ts            # Type definitions\n│       ├── query-expander.ts   # Query expansion\n│       ├── search-strategy.ts  # Complementary search strategy\n│       ├── pdf-downloader.ts   # PDF download module\n│       └── adapters/           # Search source adapters\n│           ├── base.ts         # Adapter interface & base class\n│           ├── registry.ts     # Adapter registry\n│           ├── index.ts        # Barrel export\n│           ├── arxiv-adapter.ts\n│           ├── semantic-scholar-adapter.ts\n│           ├── web-adapter.ts\n│           ├── openalex-adapter.ts\n│           ├── pubmed-adapter.ts\n│           ├── crossref-adapter.ts\n│           ├── dblp-adapter.ts\n│           ├── ieee-adapter.ts\n│           ├── core-adapter.ts\n│           ├── unpaywall-adapter.ts\n│           └── google-scholar-adapter.ts\n│\n├── concept-learner/            # Concept learning module\n├── knowledge-gap-detector/     # Gap detection module\n├── progress-tracker/           # Progress tracking module\n├── paper-analyzer/             # Paper analysis module\n│\n├── review-detector/            # Review paper identification\n│   └── scripts/\n│       ├── detect.ts           # Multi-dimensional scoring\n│       └── types.ts\n│\n├── concept-extractor/          # Concept extraction from reviews\n│   └── scripts/\n│       ├── extract.ts          # AI-powered extraction\n│       └── types.ts\n│\n├── knowledge-graph/            # Knowledge graph module\n│   └── scripts/\n│       ├── graph.ts            # Graph building core\n│       ├── indexer.ts          # Bidirectional indexing\n│       ├── storage.ts          # SQLite persistence\n│       └── enricher.ts         # Key paper association\n│\n├── paper-viz/                  # Paper visualization\n│   └── scripts/\n│       ├── types.ts            # Presentation data interfaces\n│       ├── slide-builder.ts    # PaperAnalysis → slides\n│       ├── html-generator.ts   # Self-contained HTML generation\n│       ├── pdf-figure-extractor.ts  # PDF figure extraction (pymupdf)\n│       └── ppt-exporter.ts     # PPT export (python-pptx)\n│\n├── graph-viz/                  # Interactive knowledge graph\n│   └── scripts/\n│       ├── types.ts            # D3 graph data interfaces\n│       ├── graph-data-adapter.ts # KnowledgeGraph → D3 data\n│       ├── html-generator.ts   # Interactive HTML (D3.js v7)\n│       └── paper-viz-bridge.ts # Graph → paper presentation bridge\n│\n├── workflows/                  # End-to-end workflows\n│   └── review-to-graph.ts      # Review to graph pipeline\n│\n├── data/                       # Data directory (auto-created)\n│   └── knowledge-graphs.db     # SQLite database\n│\n├── downloads/                  # PDF downloads (auto-created)\n│   └── pdfs/\n│       └── metadata.json       # Download index\n│\n└── test/                       # Tests and documentation\n    ├── ADVANCED_FEATURES.md\n    ├── TEST_RESULTS.md\n    └── scripts/"
      },
      {
        "title": "International",
        "body": "OpenAI\nAnthropic (Claude)\nAzure OpenAI\nGroq\nTogether AI\nOllama (local)"
      },
      {
        "title": "China",
        "body": "通义千问 (Qwen/DashScope)\nDeepSeek\n智谱 AI (GLM)\nMiniMax\nMoonshot (Kimi)\n百川 AI (Baichuan)\n零一万物 (Yi)\n豆包 (Doubao)"
      },
      {
        "title": "Markdown Reports",
        "body": "Concept cards with definitions, components, history, applications\nGap reports with analysis and recommendations\nProgress reports with trending topics\nPaper analyses with methods, experiments, contributions\nComparison analyses with similarities and differences\nCritical analyses with strengths, weaknesses, and suggestions"
      },
      {
        "title": "JSON Data",
        "body": "Structured data for programmatic processing"
      },
      {
        "title": "Mermaid Diagrams",
        "body": "Interactive knowledge graphs and learning paths"
      },
      {
        "title": "Interactive HTML",
        "body": "Paper slide presentations with keyboard/scroll/touch navigation\nD3.js force-directed knowledge graph with zoom, search, and paper panel"
      },
      {
        "title": "Requirements",
        "body": "Bun 1.3+ or Node.js 18+\nAI provider API key\nInternet connection for paper search\nPython 3.8+ (optional, for PDF figure extraction and PPT export)"
      },
      {
        "title": "License",
        "body": "MIT License"
      },
      {
        "title": "Links",
        "body": "GitHub: https://github.com/Josephyb97/ScholarGraph\nIssues: https://github.com/Josephyb97/ScholarGraph/issues\nDiscussions: https://github.com/Josephyb97/ScholarGraph/discussions"
      },
      {
        "title": "Version",
        "body": "Current version: 1.0.0"
      },
      {
        "title": "Author",
        "body": "ScholarGraph Team\n\nDesign Inspirations:\n\nfrontend-slides - Paper slide presentation design reference\nArgo Scholar - Interactive knowledge graph design reference\n\nFor detailed documentation, see README.md\nFor advanced features, see test/ADVANCED_FEATURES.md\nFor test results, see test/TEST_RESULTS.md"
      }
    ],
    "body": "ScholarGraph - Academic Literature Intelligence Toolkit\nOverview\n\nScholarGraph 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.\n\nSecurity & Privacy\n\nThis skill operates with the following permissions:\n\nNetwork Access: Queries academic APIs (arXiv, Semantic Scholar, OpenAlex, PubMed, CrossRef, DBLP, IEEE, CORE, Google Scholar, Unpaywall) and web search services\nFile System: Reads/writes configuration files, downloads PDFs, stores knowledge graphs in SQLite database (data/knowledge-graphs.db)\nLLM Integration: Sends custom system prompts to AI providers for structured JSON output (concept extraction, paper analysis, etc.)\nOptional Python: PDF figure extraction (pymupdf) and PPT export (python-pptx) require Python 3.8+\n\nData Storage: All data is stored locally. No telemetry or analytics are collected.\n\nAPI Keys: Optional API keys are only used for their respective services and are never transmitted elsewhere.\n\nSource Code: Open source under MIT license at https://github.com/Josephyb97/ScholarGraph\n\nFeatures\nCore Modules (6)\n\nLiterature Search - Multi-source academic paper discovery (11 sources)\n\nFree sources: arXiv, Semantic Scholar, OpenAlex (250M+), PubMed (biomedical), CrossRef (150M+ DOI), DBLP (CS), Web Search\nAPI-key sources: IEEE Xplore, CORE, Google Scholar (SerpAPI), Unpaywall (OA PDF)\nAdapter-based plugin architecture for easy extension\nComplementary search strategy with auto domain detection (biomedical/cs/engineering/physics)\nPriority-based source selection per domain\nQuery expansion for better search results\nPDF download with multi-strategy URL resolution\n\nConcept Learner - Rapid knowledge framework construction\n\nGenerate structured learning cards\nInclude code examples and related papers\nSupport beginner/intermediate/advanced depth levels\n\nKnowledge Gap Detector - Proactive blind spot identification\n\nAnalyze knowledge coverage in specific domains\nIdentify critical, recommended, and optional gaps\nProvide learning recommendations and time estimates\n\nProgress Tracker - Real-time field monitoring\n\nTrack research topics and keywords\nGenerate daily/weekly/monthly reports\nMonitor trending papers and topics\n\nPaper Analyzer - Deep paper analysis\n\nExtract key contributions and insights\nSupport quick/standard/deep analysis modes\nGenerate structured analysis reports\n\nKnowledge Graph Builder - Concept relationship visualization\n\nBuild interactive knowledge graphs\nSupport Mermaid and JSON output formats\nFind learning paths between concepts\nSQLite-based persistent storage\nBidirectional concept-paper indexing\nAdvanced Features (9)\n\nReview Detector - Automatic review paper identification\n\nMulti-dimensional scoring (title 30% + citations 25% + abstract 25% + AI 20%)\nChinese and English keyword support\nConfidence-based filtering with user confirmation\n\nConcept Extractor - Extract concepts from review papers\n\nAI-powered extraction of 15-30 core concepts\nFour-level categorization (foundation/core/advanced/application)\nImportance scoring and relationship identification\nCross-review deduplication and merging\n\nReview-to-Graph Workflow - End-to-end pipeline\n\nSearch reviews -> Detect -> Confirm -> Analyze -> Extract concepts\nBuild knowledge graph -> Enrich with key papers -> Index -> Store\nInteractive or automatic confirmation mode\n\nKnowledge Graph Query - Bidirectional literature indexing\n\nConcept -> papers: find papers related to a concept\nPaper -> concepts: find concepts covered by a paper\nPaper recommendations based on multiple concepts\nSQLite-optimized high-performance queries\n\nCompare Concepts - Compare two concepts\n\nIdentify similarities and differences\nProvide use case recommendations\n\nCompare Papers - Compare multiple papers\n\nFind common themes and differences\nGenerate synthesis analysis\n\nCritique - Critical paper analysis\n\nIdentify strengths and weaknesses\nFind research gaps and improvement suggestions\nSupport custom focus areas\n\nLearning Path - Find optimal learning paths\n\nDiscover paths between concepts\nGenerate topological learning order\nVisualize with Mermaid diagrams\n\nGraph Management - Manage persistent knowledge graphs\n\nList all saved graphs\nView graph statistics\nExport graphs to JSON\nVisualize with Mermaid\n\nPaper Visualization - Interactive paper presentation\n\nConvert paper analysis to HTML slide presentations\nAcademic dark/light themes with responsive typography\nKeyboard/touch/scroll navigation, edit mode (E key)\nPDF figure extraction (pymupdf) and PPT export (python-pptx)\n8+ slides: title, abstract, key points, methodology, experiments, contributions, limitations, references\n\nInteractive Knowledge Graph - D3.js force-directed visualization\n\nConvert knowledge graphs to interactive HTML with D3.js v7\nNode size reflects paper count, edge thickness reflects concept tightness\nZoom/pan, node dragging, click-to-detail panel, search, legend\nPaper preview bridge: click \"View Presentation\" to open paper slides in new tab\nCategory colors: foundation=#4FC3F7, core=#FFB74D, advanced=#CE93D8, application=#81C784\nTechnical Features\n11 Academic Search Sources: arXiv, Semantic Scholar, OpenAlex, PubMed, CrossRef, DBLP, IEEE Xplore, CORE, Google Scholar, Unpaywall, Web Search\nComplementary Search Strategy: Auto-detects query domain and selects optimal source combination\nAdapter Pattern: Plugin-based search source architecture for easy extension\nPDF Download: Multi-strategy URL resolution (direct, Unpaywall, OpenAlex OA, CORE)\nMulti-AI Provider Support: 15+ AI providers including OpenAI, Anthropic, DeepSeek, Qwen, Zhipu AI, etc.\nSQLite Persistence: Knowledge graphs stored in SQLite database via bun:sqlite\nBidirectional Indexing: Concept-paper and paper-concept bidirectional query support\nRate Limiting: Per-source rate limiting with automatic retry and delay\nInteractive HTML Output: Paper slide presentations, D3.js knowledge graph visualizations\nMultiple Output Formats: Markdown, JSON, Mermaid, HTML, PPTX\nTypeScript + Bun: Fast and type-safe runtime\nCLI + API: Both command-line and programmatic interfaces\nInstallation\n# Clone repository\ngit clone https://github.com/Josephyb97/ScholarGraph.git\ncd ScholarGraph\n\n# Install dependencies\nbun install\n\n# Initialize configuration\nbun run cli.ts config init\n\nConfiguration\n\nSet up your AI provider:\n\n# Using OpenAI\nexport AI_PROVIDER=openai\nexport OPENAI_API_KEY=\"your-api-key\"\n\n# Using DeepSeek\nexport AI_PROVIDER=deepseek\nexport DEEPSEEK_API_KEY=\"your-api-key\"\n\n# Using Qwen (通义千问)\nexport AI_PROVIDER=qwen\nexport QWEN_API_KEY=\"your-api-key\"\n\nAcademic Source API Keys (optional, expand search coverage)\nexport NCBI_API_KEY=\"your-key\"           # PubMed high-speed access (10 req/s)\nexport IEEE_API_KEY=\"your-key\"           # IEEE Xplore engineering papers\nexport CORE_API_KEY=\"your-key\"           # CORE open access full text\nexport UNPAYWALL_EMAIL=\"your@email.com\"  # Unpaywall OA PDF resolver\nexport CROSSREF_MAILTO=\"your@email.com\"  # CrossRef polite pool (higher rate)\nexport SERPAPI_KEY=\"your-key\"            # Google Scholar (via SerpAPI)\nexport SERPER_API_KEY=\"your-key\"         # Web search via Serper\n\nUsage Examples\nSearch Literature\n# Auto-select best sources based on query domain\nlit search \"transformer attention\" --limit 20\n\n# Specify domain for optimized source selection\nlit search \"CRISPR gene editing\" --domain biomedical\n\n# Use specific sources (comma-separated)\nlit search \"deep learning\" --source semantic_scholar,arxiv,openalex --sort citations\n\n# Search and download PDFs\nlit search \"attention is all you need\" --download --limit 3\n\nDownload PDFs\n# Search and download PDFs\nlit download \"transformer\" --limit 5 --output ./papers\n\nLearn Concepts\nlit learn \"BERT\" --depth advanced --papers --code --output bert-card.md\n\nDetect Knowledge Gaps\nlit detect --domain \"Deep Learning\" --known \"CNN,RNN\" --output gaps.md\n\nAnalyze Papers\nlit analyze \"https://arxiv.org/abs/1706.03762\" --mode deep --output analysis.md\n\nBuild Knowledge Graph\nlit graph transformer attention BERT GPT --format mermaid --output graph.md\n\nCompare Concepts\nlit compare concepts CNN RNN --output comparison.md\n\nCompare Papers\nlit compare papers \"url1\" \"url2\" \"url3\" --output comparison.md\n\nCritical Analysis\nlit critique \"paper-url\" --focus \"novelty,scalability\" --output critique.md\n\nFind Learning Path\nlit path \"Machine Learning\" \"Deep Learning\" --concepts \"Neural Networks\" --output path.md\n\nSearch Review Papers\nlit review-search \"attention mechanism\" --limit 10\n\nBuild Knowledge Graph from Reviews\n# From search query (interactive mode)\nlit review-graph \"deep learning\" --output dl-graph --enrich\n\n# From specific URL\nlit review-graph \"https://arxiv.org/abs/xxxx\" --output my-graph --enrich\n\n# Auto-confirm mode (non-interactive)\nlit review-graph \"transformer\" --output tf-graph --enrich --auto-confirm\n\nQuery Knowledge Graph\n# Find papers by concept\nlit query concept \"transformer\" --graph dl-graph --limit 20\n\n# Find concepts by paper\nlit query paper \"https://arxiv.org/abs/1706.03762\" --graph dl-graph\n\nManage Knowledge Graphs\n# List all graphs\nlit graph-list\n\n# View graph statistics\nlit graph-stats dl-graph\n\n# Visualize graph\nlit graph-viz dl-graph --format mermaid --output graph.md\n\n# Export graph\nlit graph-export dl-graph --output dl-graph.json\n\nPaper Visualization\n# Generate interactive HTML presentation\nlit paper-viz \"https://arxiv.org/abs/1706.03762\" --output attention.html\n\n# With theme and PPT export\nlit paper-viz \"https://arxiv.org/abs/1706.03762\" --mode deep --theme academic-light --ppt\n\n# Manually provide figures\nlit paper-viz \"https://example.com/paper\" --figures ./my-figures\n\nInteractive Knowledge Graph\n# Generate interactive D3.js graph from existing knowledge graph\nlit graph-interactive dl-graph --output dl-interactive.html\n\n# Without paper data (lighter weight)\nlit graph-interactive my-graph --no-paper-viz\n\nUse Cases\n1. Quick Field Onboarding\nLearn core concepts\nDetect prerequisite gaps\nBuild knowledge graph\nPlan learning path\n2. Deep Paper Understanding\nAnalyze paper in depth\nPerform critical analysis\nLearn new concepts from paper\nCompare with related papers\n3. Research Progress Tracking\nMonitor research topics\nTrack latest papers\nGenerate progress reports\n4. Concept Comparison\nCompare technical approaches\nEvaluate different models\nBuild comparison graphs\n5. Review-Driven Knowledge Building\nSearch and identify review papers\nExtract concepts from reviews\nBuild persistent knowledge graphs\nQuery concept-paper relationships\n6. Paper Visualization & Graph Exploration\nAnalyze paper and generate interactive HTML presentation\nBuild knowledge graph from reviews\nGenerate interactive D3.js graph with paper preview\nClick nodes to view paper details and open presentations\nProject Structure\nScholarGraph/\n├── cli.ts                      # Unified CLI entry\n├── config.ts                   # Configuration management\n├── README.md                   # Project documentation\n├── CHANGELOG.md                # Version history\n├── SKILL.md                    # This file\n│\n├── shared/                     # Shared modules\n│   ├── ai-provider.ts          # AI provider abstraction\n│   ├── types.ts                # Type definitions\n│   ├── validators.ts           # Parameter validation\n│   ├── errors.ts               # Error handling\n│   └── utils.ts                # Utility functions\n│\n├── literature-search/          # Literature search module\n│   └── scripts/\n│       ├── search.ts           # Search engine core\n│       ├── types.ts            # Type definitions\n│       ├── query-expander.ts   # Query expansion\n│       ├── search-strategy.ts  # Complementary search strategy\n│       ├── pdf-downloader.ts   # PDF download module\n│       └── adapters/           # Search source adapters\n│           ├── base.ts         # Adapter interface & base class\n│           ├── registry.ts     # Adapter registry\n│           ├── index.ts        # Barrel export\n│           ├── arxiv-adapter.ts\n│           ├── semantic-scholar-adapter.ts\n│           ├── web-adapter.ts\n│           ├── openalex-adapter.ts\n│           ├── pubmed-adapter.ts\n│           ├── crossref-adapter.ts\n│           ├── dblp-adapter.ts\n│           ├── ieee-adapter.ts\n│           ├── core-adapter.ts\n│           ├── unpaywall-adapter.ts\n│           └── google-scholar-adapter.ts\n│\n├── concept-learner/            # Concept learning module\n├── knowledge-gap-detector/     # Gap detection module\n├── progress-tracker/           # Progress tracking module\n├── paper-analyzer/             # Paper analysis module\n│\n├── review-detector/            # Review paper identification\n│   └── scripts/\n│       ├── detect.ts           # Multi-dimensional scoring\n│       └── types.ts\n│\n├── concept-extractor/          # Concept extraction from reviews\n│   └── scripts/\n│       ├── extract.ts          # AI-powered extraction\n│       └── types.ts\n│\n├── knowledge-graph/            # Knowledge graph module\n│   └── scripts/\n│       ├── graph.ts            # Graph building core\n│       ├── indexer.ts          # Bidirectional indexing\n│       ├── storage.ts          # SQLite persistence\n│       └── enricher.ts         # Key paper association\n│\n├── paper-viz/                  # Paper visualization\n│   └── scripts/\n│       ├── types.ts            # Presentation data interfaces\n│       ├── slide-builder.ts    # PaperAnalysis → slides\n│       ├── html-generator.ts   # Self-contained HTML generation\n│       ├── pdf-figure-extractor.ts  # PDF figure extraction (pymupdf)\n│       └── ppt-exporter.ts     # PPT export (python-pptx)\n│\n├── graph-viz/                  # Interactive knowledge graph\n│   └── scripts/\n│       ├── types.ts            # D3 graph data interfaces\n│       ├── graph-data-adapter.ts # KnowledgeGraph → D3 data\n│       ├── html-generator.ts   # Interactive HTML (D3.js v7)\n│       └── paper-viz-bridge.ts # Graph → paper presentation bridge\n│\n├── workflows/                  # End-to-end workflows\n│   └── review-to-graph.ts      # Review to graph pipeline\n│\n├── data/                       # Data directory (auto-created)\n│   └── knowledge-graphs.db     # SQLite database\n│\n├── downloads/                  # PDF downloads (auto-created)\n│   └── pdfs/\n│       └── metadata.json       # Download index\n│\n└── test/                       # Tests and documentation\n    ├── ADVANCED_FEATURES.md\n    ├── TEST_RESULTS.md\n    └── scripts/\n\nSupported AI Providers\nInternational\nOpenAI\nAnthropic (Claude)\nAzure OpenAI\nGroq\nTogether AI\nOllama (local)\nChina\n通义千问 (Qwen/DashScope)\nDeepSeek\n智谱 AI (GLM)\nMiniMax\nMoonshot (Kimi)\n百川 AI (Baichuan)\n零一万物 (Yi)\n豆包 (Doubao)\nOutput Formats\nMarkdown Reports\nConcept cards with definitions, components, history, applications\nGap reports with analysis and recommendations\nProgress reports with trending topics\nPaper analyses with methods, experiments, contributions\nComparison analyses with similarities and differences\nCritical analyses with strengths, weaknesses, and suggestions\nJSON Data\n\nStructured data for programmatic processing\n\nMermaid Diagrams\n\nInteractive knowledge graphs and learning paths\n\nInteractive HTML\nPaper slide presentations with keyboard/scroll/touch navigation\nD3.js force-directed knowledge graph with zoom, search, and paper panel\nRequirements\nBun 1.3+ or Node.js 18+\nAI provider API key\nInternet connection for paper search\nPython 3.8+ (optional, for PDF figure extraction and PPT export)\nLicense\n\nMIT License\n\nLinks\nGitHub: https://github.com/Josephyb97/ScholarGraph\nIssues: https://github.com/Josephyb97/ScholarGraph/issues\nDiscussions: https://github.com/Josephyb97/ScholarGraph/discussions\nVersion\n\nCurrent version: 1.0.0\n\nAuthor\n\nScholarGraph Team\n\nDesign Inspirations:\n\nfrontend-slides - Paper slide presentation design reference\nArgo Scholar - Interactive knowledge graph design reference\n\nFor detailed documentation, see README.md For advanced features, see test/ADVANCED_FEATURES.md For test results, see test/TEST_RESULTS.md"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Josephyb97/scholargraph",
    "publisherUrl": "https://clawhub.ai/Josephyb97/scholargraph",
    "owner": "Josephyb97",
    "version": "1.4.3",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/scholargraph",
    "downloadUrl": "https://openagent3.xyz/downloads/scholargraph",
    "agentUrl": "https://openagent3.xyz/skills/scholargraph/agent",
    "manifestUrl": "https://openagent3.xyz/skills/scholargraph/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/scholargraph/agent.md"
  }
}