autoplay-sdk

v0.7.9 suspicious
4.0
Medium Risk

Real-time event streaming client for Autoplay connectors

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package exhibits moderate concerns primarily due to missing metadata and repository details, which raises suspicion about its origin and intentions.

  • Metadata risk: Missing repository and author details
  • Potential supply-chain attack indicators
Per-check LLM notes
  • Network: The network call patterns indicate the package uses HTTPX to make API calls, which is common for SDKs but warrants further review of endpoints and data exchanged.
  • Shell: No shell execution patterns were detected.
  • Obfuscation: No obfuscation patterns detected, indicating low risk.
  • Credentials: No credential harvesting patterns detected, indicating low risk.
  • Metadata: The package shows signs of potential malicious activity due to the missing repository and author details.

📦 Package Quality Overall: Medium (5.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/Autoplay-AI/real-time-poc/tree/main/later
  • Detailed PyPI description (25249 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

  • Classifier: Typing :: Typed
  • 281 type-annotated function signatures detected in source
○ Low Multiple Contributors 1.0

Could not retrieve contributor data from GitHub

  • GitHub API error: 404

🔬 Heuristic Checks

⚠ Outbound Network Calls score 7.5

Found 5 network call pattern(s)

  • ) async with httpx.AsyncClient(timeout=timeout) as http: async with aco
  • ) with httpx.Client(timeout=timeout) as client: with con
  • ent is None c = client or httpx.AsyncClient(timeout=timeout) tty = _registration_tty_ui() key =
  • ) http_client = client or httpx.AsyncClient(timeout=_timeout) try: return await _run_product
  • t_seconds() c = client or httpx.AsyncClient(timeout=timeout) try: url = render_products_conf
✓ 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

No author email provided

✓ Suspicious Page Links

All external links appear legitimate

⚠ Git Repository History score 3.0

Repository not found (deleted or private)

  • Repository not found (deleted or private)
⚠ 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 autoplay-sdk
Create a real-time event monitoring dashboard using the 'autoplay-sdk' Python package. This mini-application will serve as a tool for users to monitor various events happening in real-time within their Autoplay connectors environment. The dashboard should provide a user-friendly interface that allows users to visualize different types of events such as data ingestion, processing completion, error notifications, etc., in a clear and concise manner.

Key Features:
1. Real-time Event Streaming: Utilize the 'autoplay-sdk' to establish a connection to the Autoplay server and stream events as they occur. The SDK will handle the underlying communication protocol and event subscription mechanism.
2. Interactive Dashboard: Implement a simple yet effective web-based dashboard using a frontend framework like Streamlit or Dash. This dashboard should display the incoming events in a tabular format, categorizing them based on their type (e.g., Ingestion, Processing, Error).
3. Event Filtering and Searching: Allow users to filter events based on specific criteria such as event type, timestamp range, or severity level. Additionally, implement a search functionality where users can look up events by keyword or event ID.
4. Notifications: Integrate a notification system that alerts users via email or SMS when critical events (such as errors) occur. Use an external service like Twilio for sending SMS notifications and a Python library like smtplib for emails.
5. Data Persistence: Store historical event data in a local SQLite database for future reference. Implement a feature to export this data into a CSV file for offline analysis.
6. Customizable Alerts: Enable users to configure custom alert rules based on specific conditions (e.g., send an email if more than 5 errors occur in an hour). Users should be able to set up these rules through the dashboard UI.

How to Utilize 'autoplay-sdk':
- Establish a connection to the Autoplay server using the SDK's initialization method.
- Subscribe to the desired event streams using the SDK's subscribe method.
- Handle incoming events by implementing a callback function that processes each event and updates the dashboard accordingly.
- Implement error handling to manage any issues that may arise during the event streaming process, ensuring the application remains stable and responsive.

💬 Discussion Feed

Leave a comment

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