argus-search

v1.6.2 suspicious
5.0
Medium Risk

Retrieval platform for AI agents — 14 search providers, 12-step content extraction, dead URL recovery, site capture, and local corpus storage. One API.

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package metadata contains non-secure links which raises concerns about potential vulnerabilities. While there is no clear evidence of malicious intent, the limited historical data from the author increases the suspicion level.

  • Presence of non-secure links in metadata
  • Author has limited historical contributions
Per-check LLM notes
  • Metadata: The presence of non-secure links and an author with limited history suggests potential risks, but no clear signs of malicious intent or typosquatting.

📦 Package Quality Overall: Medium (6.0/10)

◈ Medium Test Suite 6.0

Partial test coverage signals detected

  • Test runner config found: pyproject.toml
◈ Medium Documentation 7.0

Some documentation present

  • Documentation URL: "Documentation" -> https://github.com/Khamel83/argus#readme
  • Detailed PyPI description (32098 chars)
○ Low Contributing Guide 4.0

No contributing guide or governance files found

  • Development Status classifier >= Beta
◈ Medium Type Annotations 5.0

Partial type annotation coverage

  • 230 type-annotated function signatures detected in source
✦ High Multiple Contributors 8.0

Active multi-contributor project

  • 4 unique contributor(s) across 100 commits in Khamel83/argus
  • Small but multi-author team (3–4 contributors)

🔬 Heuristic Checks

Outbound Network Calls score 6.0

Found 4 network call pattern(s)

  • ng.enabled: req = urllib.request.Request(cfg.searxng.base_url, method="HEAD") url
  • l, method="HEAD") urllib.request.urlopen(req, timeout=5) checks.append(("SearXNG"
  • " try: async with httpx.AsyncClient(timeout=15) as client: resp = await client.get(
  • " try: async with httpx.AsyncClient(timeout=15) as client: resp = await client.post(
Code Obfuscation score 2.0

Found 1 obfuscation pattern(s)

  • rt trafilatura loop = __import__("asyncio").get_event_loop() extracted = await loop.run_in_exec
Shell / Subprocess Execution score 2.0

Found 1 shell execution pattern(s)

  • try: result = subprocess.run( ["secrets", "decrypt", name],
Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

No author email provided

Suspicious Page Links score 4.0

Found 2 suspicious link(s) on the package page

  • Non-HTTPS external link: http://127.0.0.1:8000/dashboard
  • Non-HTTPS external link: http://argus.local:8271
Git Repository History

Repository Khamel83/argus appears legitimate

Maintainer History score 4.0

2 maintainer concern(s) found

  • Author name is missing or very short
  • Author "" appears to have only 1 package on PyPI (new or inactive account)
Known CVE Vulnerabilities

No known vulnerabilities found in OSV database.

💡 AI App Starter Prompt

Use this prompt to build a project with argus-search
Develop a Python-based mini-app called 'WebAnalyzer' that leverages the 'argus-search' package to provide comprehensive web analysis services. The app should allow users to input a website URL and receive detailed information about it, including but not limited to: extracted content, live status of links, captured site snapshots, and stored local corpus. Additionally, implement a feature that allows users to save their analysis results for future reference. Here are the specific steps and features to include:

1. **User Input Interface**: Create a simple command-line interface where users can enter a website URL.
2. **Live Link Check**: Utilize 'argus-search' to check if all URLs within the provided site are live.
3. **Content Extraction**: Use 'argus-search' to extract content from the specified website, ensuring that the extraction process goes through at least 12 steps as per the package documentation.
4. **Site Snapshot**: Implement functionality to capture a snapshot of the website using 'argus-search'.
5. **Local Corpus Storage**: Store the extracted content locally so that users can access it without needing internet connectivity.
6. **Results Saving**: Allow users to save their analysis results to a local file for future reference.
7. **Detailed Report Generation**: Generate a detailed report summarizing the findings from the above analyses, which includes live link status, extracted content, and snapshot images.

Ensure your implementation makes efficient use of the 'argus-search' package’s capabilities while providing a user-friendly experience. This project will serve as a powerful tool for anyone interested in analyzing websites thoroughly.

💬 Discussion Feed

Leave a comment

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