Skip to content
Back to skills

Arxiv Search

ASecurity

Imported skill arxiv_search from langchain

  • 3 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 11, 2026
researchpython

Works with

  • cli

Security analysis

A92/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned September 11, 2026

npx -y skills add bitwikiorg/skills.md --skill arxiv_search --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Arxiv Search?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Arxiv Search
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/bitwikiorg-arxiv-search/badge)](https://www.skillsdirectory.com/skills/bitwikiorg-arxiv-search)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
description: Imported skill arxiv_search from langchain
name: arxiv_search
signature: cc484e216685e7e047e9da03b5551489b264fe27d817800e6b8b3bc050f4c235
source: /a0/tmp/skills_research/langchain/libs/deepagents-cli/examples/skills/arxiv-search/arxiv_search.py
---

#!/usr/bin/env python3
"""arXiv Search.

Searches the arXiv preprint repository for research papers.
"""

import argparse


def query_arxiv(query: str, max_papers: int = 10) -> str:
    """Query arXiv for papers based on the provided search query.

    Parameters
    ----------
    query : str
        The search query string.
    max_papers : int
        The maximum number of papers to retrieve (default: 10).

    Returns:
        The formatted search results or an error message.
    """
    try:
        import arxiv
    except ImportError:
        return "Error: arxiv package not installed. Install with: pip install arxiv"

    try:
        client = arxiv.Client()
        search = arxiv.Search(
            query=query, max_results=max_papers, sort_by=arxiv.SortCriterion.Relevance
        )
        results = "\n\n".join(
            [f"Title: {paper.title}\nSummary: {paper.summary}" for paper in client.results(search)]
        )
        return results if results else "No papers found on arXiv."
    except Exception as e:
        return f"Error querying arXiv: {e}"


def main() -> None:
    parser = argparse.ArgumentParser(description="Search arXiv for research papers")
    parser.add_argument("query", type=str, help="Search query string")
    parser.add_argument(
        "--max-papers",
        type=int,
        default=10,
        help="Maximum number of papers to retrieve (default: 10)",
    )

    args = parser.parse_args()

    query_arxiv(args.query, max_papers=args.max_papers)


if __name__ == "__main__":
    main()

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…