anemoi-inference

v0.11.0 safe
4.0
Medium Risk

A package to run inference from data-driven forecasts weather models.

🤖 AI Analysis

Final verdict: SAFE

The package has a low network risk score and no clear signs of malicious intent. While there are some concerns regarding shell execution and metadata, these do not strongly suggest a supply-chain attack.

  • No network calls detected.
  • Incomplete author information and non-secure license URL.
Per-check LLM notes
  • Network: No network calls detected, which is low risk.
  • Shell: Shell execution to get hostname suggests the package might be querying system information but does not necessarily indicate malicious activity.
  • Metadata: The author's information is incomplete and the license URL is non-secure, but no clear signs of malicious intent.

📦 Package Quality Overall: Medium (7.2/10)

◈ Medium Test Suite 6.0

Partial test coverage signals detected

  • Test runner config found: pyproject.toml
✦ High Documentation 9.0

Well-documented package

  • Documentation URL: "Documentation" -> https://anemoi-inference.readthedocs.io/
  • 1 documentation file(s) (e.g. conf.py)
  • Detailed PyPI description (1913 chars)
○ Low Contributing Guide 4.0

No contributing guide or governance files found

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

Partial type annotation coverage

  • Type checker (mypy / pyright / pytype) referenced in project
  • 218 type-annotated function signatures detected in source
✦ High Multiple Contributors 10.0

Active multi-contributor project

  • 22 unique contributor(s) across 100 commits in ecmwf/anemoi-inference
  • Active community — 5 or more distinct contributors

🔬 Heuristic Checks

Outbound Network Calls

No suspicious network call patterns found

Code Obfuscation score 4.0

Found 2 obfuscation pattern(s)

  • template = zlib.decompress(base64.b64decode(grib)) return ekd.from_source("memory", template)[0]
  • ld | None: template = zlib.decompress(base64.b64decode(grib)) return ekd.from_source("memo
Shell / Subprocess Execution score 2.0

Found 1 shell execution pattern(s)

  • try: result = subprocess.run( ["scontrol", "show", "hostname", slurm_
Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

Email domain looks legitimate: ecmwf.int>

Suspicious Page Links score 2.0

Found 1 suspicious link(s) on the package page

  • Non-HTTPS external link: http://www.apache.org/licenses/LICENSE-2.0
Git Repository History

Repository ecmwf/anemoi-inference 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 anemoi-inference
Create a mini-application named 'WeatherForecaster' using the Python package 'anemoi-inference'. This application will allow users to input geographical coordinates (latitude and longitude) and select a specific date to receive weather forecast predictions based on data-driven models. The goal is to provide real-time weather insights for travelers, farmers, and anyone interested in accurate weather predictions. Here are the steps and features to include:

1. **Setup Environment**: Ensure all necessary dependencies, including 'anemoi-inference', are installed.
2. **User Interface**: Develop a simple user interface where users can input their location (latitude and longitude) and select a date for which they want a forecast.
3. **Data Retrieval**: Utilize 'anemoi-inference' to fetch weather forecast data for the specified location and date. The package will handle the heavy lifting of model inference and data processing.
4. **Visualization**: Display the forecast data in an easy-to-understand format. Include temperature, humidity, wind speed, and precipitation probability.
5. **Additional Features**:
   - Provide a graphical representation of the weather conditions (e.g., sunny, cloudy, rainy).
   - Allow users to compare multiple dates within a certain range (e.g., one week).
   - Offer historical data comparison if available through the package.
6. **Output Format**: Ensure the output is both visually appealing and accessible via console or web interface.
7. **Testing & Validation**: Validate the accuracy of the forecasts against actual weather conditions when possible.

By following these guidelines, you'll create a practical tool that leverages advanced weather forecasting models to provide valuable information to users.

💬 Discussion Feed

Leave a comment

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