Skip to content
Back to skills

Arxiv Search

ASecurity

Imported skill arxiv_search from langchain

  • 3 stars
  • 0 votes
  • 0 copies
  • 3 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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.