accompy

v0.3.10 suspicious
5.0
Medium Risk

Generate backing track audio from chord charts

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package shows moderate risks due to potential dynamic module imports and shell executions. These behaviors, while not conclusively malicious, warrant further investigation to ensure they align with the package's intended functionality.

  • High obfuscation risk due to dynamic module imports.
  • Detected shell executions, possibly for playing audio files.
Per-check LLM notes
  • Network: No network calls detected, which is low risk.
  • Shell: Detected shell executions may be related to playing audio files, which is generally benign but could indicate unexpected behavior depending on the package's intended functionality.
  • Obfuscation: The code pattern suggests an attempt to dynamically import modules, which could be used for evasion techniques.
  • Credentials: No clear signs of credential harvesting detected.
  • Metadata: The author has only one package, which may indicate a new or less active account.

🔬 Heuristic Checks

Outbound Network Calls

No suspicious network call patterns found

Code Obfuscation score 2.0

Found 1 obfuscation pattern(s)

  • imported.""" try: __import__(module_name) return True except ImportError: return
Shell / Subprocess Execution score 10.0

Found 6 shell execution pattern(s)

  • h, ] result = subprocess.run( cmd, capture_output=True,
  • darwin": # macOS subprocess.Popen( ["afplay", str(audio_path)],
  • try: subprocess.Popen( [player, str(audio_path)],
  • tem == "windows": subprocess.Popen( ["start", str(audio_path)],
  • return try: subprocess.run([_find_mma(), "-g"], capture_output=True, text=True, timeout
  • ") try: result = subprocess.run( [_find_mma(), str(mma_path), "-f", str(midi_pat
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

Repository thorwhalen/accompy appears legitimate

Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "Thor Whalen" 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 accompy
Create a music composition tool named 'ChordComposer' using Python and the 'accompy' package. This tool will allow users to input chord progressions and generate a backing track in various musical styles. Here are the steps and features for your application:

1. **User Interface**: Design a simple yet intuitive GUI using Tkinter or PyQt for user interaction. The interface should have fields for entering chords and selecting musical style.
2. **Chord Input**: Users should be able to enter a series of chords separated by spaces or commas. For example, 'C G Am F'.
3. **Style Selection**: Provide options for different musical styles such as Pop, Rock, Jazz, Blues, etc. Each style should influence the rhythm and instrumentation of the generated backing track.
4. **Generate Backing Track**: Use the 'accompy' package to convert the entered chord progression into a full backing track. Accompy should automatically handle the arrangement based on the selected style.
5. **Save and Export**: Allow users to save the generated backing track as an MP3 file. Include options for naming the file and choosing a directory.
6. **Play/Pause Functionality**: Implement a feature that allows users to play and pause the generated track directly within the application.
7. **Help and Documentation**: Provide a brief help section within the application explaining how to use the tool effectively.
8. **Error Handling**: Ensure the application gracefully handles errors, such as invalid chord inputs or missing style selections, providing clear feedback to the user.

The 'accompy' package will be used primarily for converting the chord progressions into backing tracks. Your task is to integrate it seamlessly into the application flow, ensuring that the generated tracks match the chosen musical style.