alexwlchan-chives

v42 safe
4.0
Medium Risk

Utility functions for working with my local media archives

🤖 AI Analysis

Final verdict: SAFE

The package appears to be safe with low risks across all categories except for network and shell execution risks, which are moderately high but still within normal bounds for utility packages managing files and potentially interacting with external services.

  • Moderate network risk due to potential interaction with external services.
  • Moderate shell risk due to possible execution of commands.
Per-check LLM notes
  • Network: The package makes network requests which could be legitimate if it interacts with external services.
  • Shell: Executing shell commands can be risky as it might indicate the package is performing actions that could be exploited.
  • Obfuscation: No obfuscation patterns detected, indicating low risk.
  • Credentials: No credential harvesting patterns detected, indicating low risk.
  • Metadata: The package has some minor red flags but no clear signs of malicious intent.

📦 Package Quality Overall: Low (4.8/10)

✦ High Test Suite 9.0

Test suite present — 8 test file(s) found

  • Test runner config found: pyproject.toml
  • 8 test file(s) detected (e.g. test_browser_fixtures.py)
◈ Medium Documentation 5.0

Some documentation present

  • Detailed PyPI description (1587 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

  • 120 type-annotated function signatures detected in source
○ Low Multiple Contributors 1.0

Unable to verify contributor count: no GitHub repository found

  • No GitHub repository linked — contributor count unavailable

🔬 Heuristic Checks

Outbound Network Calls score 9.0

Found 6 network call pattern(s)

  • s: Headers | None = None ) -> urllib.request.Request: """ Build a urllib Request, appending query
  • ragment) ) req = urllib.request.Request(url, headers=headers or {}) return req def fe
  • s, headers=headers) with urllib.request.urlopen(req, context=ssl_context) as resp: data: byt
  • s, headers=headers) with urllib.request.urlopen(req, context=ssl_context) as resp: image_dat
  • try: nodeinfo_resp = urllib.request.urlopen(nodeinfo_url, context=ssl_context) except HTTPEr
  • return False link_resp = urllib.request.urlopen(link_href, context=ssl_context) link_info = json
Code Obfuscation

No obfuscation patterns detected

Shell / Subprocess Execution score 10.0

Found 6 shell execution pattern(s)

  • ] # fmt: on output = subprocess.check_output(cmd, text=True) return output.strip() == "av1" class
  • palette", ] result = subprocess.check_output(cmd, text=True) return result.strip() def _get_transcr
  • if any). """ result = subprocess.check_output(["get_live_text", str(path)], text=True) return result.
  • nfig["height"])]) return subprocess.check_output(cmd, text=True) def _get_video_data(video_path: str | Path
  • eo_path), ] output = subprocess.check_output(cmd) ffprobe_resp = json.loads(output) # The output
  • ges. """ rc = subprocess.call(["git", "diff", "--exit-code", "--quiet"], cwd=site_root)
Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

Email domain looks legitimate: alexwlchan.net>

Suspicious Page Links

All external links appear legitimate

Git Repository History

No GitHub repository linked

  • No GitHub repository link found
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 alexwlchan-chives
Create a media archive management tool using the 'alexwlchan-chives' Python package. This tool will help users organize and manage their local media files efficiently. Here’s a detailed plan for building this application:

1. **Project Overview**: Develop a command-line interface (CLI) tool that allows users to interact with their media archives easily. Users should be able to view, add, remove, and search through their media files.

2. **Features**:
   - **Media File Listing**: List all media files in a specified directory.
   - **Add Media Files**: Allow users to add new media files to the archive.
   - **Remove Media Files**: Provide functionality to delete media files from the archive.
   - **Search Functionality**: Implement a search feature to find specific media files based on filename, date, or tags.
   - **Tagging System**: Enable users to tag media files for better organization.

3. **Utilizing 'alexwlchan-chives' Package**: The 'alexwlchan-chives' package offers various utility functions that can be leveraged for tasks such as reading file metadata, managing file paths, and handling file operations. Use these utilities to streamline your application’s interaction with the local file system.

4. **Development Steps**:
   - **Setup**: Install the 'alexwlchan-chives' package and set up a virtual environment for your project.
   - **CLI Development**: Build the CLI using Python’s argparse module, integrating 'alexwlchan-chives' functions where appropriate.
   - **File Operations**: Implement file listing, adding, and removal functionalities using the package’s file handling utilities.
   - **Metadata Handling**: Utilize the package’s metadata functions to extract useful information about media files.
   - **User Interface**: Design a clean and intuitive CLI interface for user interaction.
   - **Testing**: Write tests to ensure each feature works correctly and the application handles edge cases gracefully.

5. **Deliverables**: Your final product should include the complete source code of the CLI tool, installation instructions, and a README file explaining how to use the application and its key features.

This project will not only provide a practical solution for organizing media archives but also offer an opportunity to explore the capabilities of the 'alexwlchan-chives' package in real-world applications.