aioshelly

v13.26.1 safe
3.0
Low Risk

Asynchronous library to control Shelly devices.

🤖 AI Analysis

Final verdict: SAFE

The package exhibits low risks across all categories except metadata, where the maintainer's incomplete profile raises slight concerns. However, there is no concrete evidence to suggest malicious intent.

  • No network calls or shell executions detected
  • Maintainer has an incomplete profile
Per-check LLM notes
  • Network: No network calls detected, which is normal unless the package requires network interaction for its functionality.
  • Shell: No shell execution patterns detected, reducing risk of unauthorized system access.
  • Obfuscation: No obfuscation patterns detected, suggesting low risk.
  • Credentials: No credential harvesting patterns detected, indicating safe usage.
  • Metadata: The maintainer has an incomplete profile and a new/inactive account, raising some suspicion but not definitive evidence of malice.

📦 Package Quality Overall: Medium (6.2/10)

✦ High Test Suite 9.0

Test suite present — 5 test file(s) found

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

Some documentation present

  • Detailed PyPI description (3570 chars)
○ Low Contributing Guide 2.0

No contributing guide or governance files found

  • No CONTRIBUTING, CODE_OF_CONDUCT, or governance files found
◈ Medium Type Annotations 5.0

Partial type annotation coverage

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

Active multi-contributor project

  • 8 unique contributor(s) across 100 commits in home-assistant-libs/aioshelly
  • Active community — 5 or more distinct contributors

🔬 Heuristic Checks

Outbound Network Calls

No suspicious network call patterns found

Code Obfuscation

No obfuscation patterns detected

Shell / Subprocess Execution

No shell execution patterns detected

Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

Email domain looks legitimate: home-assistant.io>

Suspicious Page Links

All external links appear legitimate

Git Repository History

Repository home-assistant-libs/aioshelly 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 aioshelly
Create a home automation dashboard using the 'aioshelly' Python package to control and monitor Shelly smart home devices. This application will serve as a central hub for managing various Shelly devices such as switches, plugs, sensors, etc., providing real-time status updates and allowing users to remotely control their devices from a web interface.

Step 1: Set up the environment
- Install Python and necessary libraries including 'aioshelly'.
- Configure your Shelly devices to allow remote access.
- Obtain API credentials if required by the Shelly cloud service.

Step 2: Develop the backend
- Use 'aioshelly' to establish connections with Shelly devices.
- Implement functions to retrieve device statuses, including power consumption, temperature readings, etc.
- Create functions to send commands to Shelly devices, like turning lights on/off, adjusting thermostat settings, etc.

Step 3: Design the frontend
- Build a simple yet intuitive web interface using HTML/CSS/JavaScript.
- Integrate the frontend with the backend via RESTful APIs.
- Display live data from Shelly devices on the dashboard.
- Allow users to interact with the dashboard to control their devices.

Suggested Features:
- Real-time monitoring of multiple Shelly devices.
- Historical data visualization for energy usage and other metrics.
- User authentication to secure access to the dashboard.
- Notifications for device status changes or alerts based on sensor readings.

How 'aioshelly' is Utilized:
- Establishing asynchronous connections to Shelly devices to ensure smooth and responsive operation.
- Using 'aioshelly' to periodically fetch and update device statuses in real-time.
- Leveraging 'aioshelly' for sending commands to Shelly devices to execute user actions from the dashboard.