autoemulate

v2.1.1 suspicious
5.0
Medium Risk

A python package for semi-automated emulation

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package has some unusual metadata and a new maintainer with limited history, raising concerns about its authenticity and intentions.

  • Suspicious non-HTTPS links
  • New maintainer with only one package
Per-check LLM notes
  • Network: No network calls detected, which is normal unless the package's functionality inherently requires them.
  • Shell: No shell execution detected, indicating the package does not execute commands on the host system.
  • Obfuscation: The detected patterns seem to be related to setting the model and likelihood to evaluation mode and handling tensor operations, which is common in machine learning libraries.
  • Credentials: No patterns indicative of credential harvesting were found.
  • Metadata: Suspicious non-HTTPS links and a new maintainer with only one package suggest potential risks, but not strong indicators of malice.

📦 Package Quality Overall: Medium (6.4/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://alan-turing-institute.github.io/autoemulate/
  • Detailed PyPI description (16219 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

  • 352 type-annotated function signatures detected in source
✦ High Multiple Contributors 10.0

Active multi-contributor project

  • 5 unique contributor(s) across 100 commits in alan-turing-institute/autoemulate
  • Active community — 5 or more distinct contributors

🔬 Heuristic Checks

Outbound Network Calls

No suspicious network call patterns found

Code Obfuscation score 10.0

Found 6 obfuscation pattern(s)

  • ) -> OutputLike: self.eval() with torch.set_grad_enabled(with_grad):
  • _pred_var(): self.eval() self.likelihood.eval() x = x.to(se
  • ) self.likelihood.eval() x = x.to(self.device) num_points
  • ure. """ self.eval() with torch.set_grad_enabled(with_grad):
  • ues. """ self.eval() # Set model to evaluation mode with torch.set_gra
  • atch, ) self.eval() predictions = [] # Get initial input
Shell / Subprocess Execution

No shell execution patterns detected

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://www.westerling.nu
  • Non-HTTPS external link: http://www.jasonmcewen.org
Git Repository History

Repository alan-turing-institute/autoemulate appears legitimate

Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "AutoEmulate contributors (see our GitHub page)" 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 autoemulate
Create a mini-application called 'EmulationMaster' using the Python package 'autoemulate'. EmulationMaster should serve as a versatile tool for educational purposes, allowing users to easily emulate different systems or devices without needing extensive technical knowledge. The application should provide an intuitive interface where users can select from a variety of pre-configured emulations, such as classic game consoles, simple computer systems, or even basic network setups. Users should also have the ability to customize certain parameters of the emulation process, like clock speed or memory allocation, to observe how these changes affect performance.

Core Features:
1. User-friendly GUI: Implement a graphical user interface using a library like PyQt or Tkinter that allows users to interact with the application easily.
2. Pre-configured Emulations: Include a set of pre-defined emulation profiles for different systems, each with its own settings and configurations.
3. Customization Options: Allow users to adjust specific parameters of the emulation to see how it impacts performance and behavior.
4. Performance Monitoring: Integrate tools within the application to monitor and display real-time performance metrics of the emulated system.
5. Documentation and Help: Provide comprehensive documentation and in-app help guides to assist users in understanding how to use the application effectively.

How to Utilize 'autoemulate':
- Use 'autoemulate' to automate the setup and configuration processes for the various emulation profiles. This will streamline the creation and management of different emulated environments.
- Leverage 'autoemulate's semi-automation capabilities to dynamically adjust emulation settings based on user inputs, ensuring that changes made through the GUI are reflected accurately in the emulated environment.
- Explore 'autoemulate's potential for integration with external tools or services that could enhance the monitoring and analysis aspects of EmulationMaster.

💬 Discussion Feed

Leave a comment

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