AI Analysis
The package exhibits medium risk due to shell execution capabilities and low maintainer activity. These factors suggest potential security concerns, though clear evidence of malicious intent is lacking.
- Shell risk at 7/10 due to potential for arbitrary command execution
- Low maintainer activity and poor metadata quality
Per-check LLM notes
- Network: No network calls were detected, which is normal if the package does not require internet access.
- Shell: The presence of shell execution suggests potential risks as it can be used to execute arbitrary commands, which might indicate unintended behavior or security vulnerabilities.
- Obfuscation: No obfuscation patterns detected, indicating low risk.
- Credentials: No credential harvesting patterns detected, indicating low risk.
- Metadata: The package shows low maintainer activity and poor metadata quality, raising suspicion but not definitive proof of malintent.
Package Quality Overall: Low (3.6/10)
Test suite present — 14 test file(s) found
Test runner config found: pyproject.toml14 test file(s) detected (e.g. test_desktop_app_import.py)
No documentation detected
No documentation URL, doc files, or meaningful description found
No contributing guide or governance files found
No CONTRIBUTING, CODE_OF_CONDUCT, or governance files found
Partial type annotation coverage
56 type-annotated function signatures detected in source
Unable to verify contributor count: no GitHub repository found
No GitHub repository linked — contributor count unavailable
Heuristic Checks
No suspicious network call patterns found
No obfuscation patterns detected
Found 6 shell execution pattern(s)
DE_PACKAGES) result = subprocess.run(cmd, shell=True) else: result = subprocess.run(e) else: result = subprocess.run( ["npm", "install", "-g"] + UPGRADE_PACKAGES,try: out = subprocess.check_output( ["mdfind", f"kMDItemCFBundleIdentifier == 'try: return subprocess.check_output( ["scutil", "--proxy"], text=True, stderr=suif status.direct: subprocess.Popen([status.launch_target], env=env) else: snv) else: subprocess.Popen(["open", "-a", status.launch_target], env=env) def is_r
No credential harvesting patterns detected
No typosquatting candidates detected
No author email provided
All external links appear legitimate
No GitHub repository linked
No GitHub repository link found
3 maintainer concern(s) found
Author name is missing or very shortAuthor "" appears to have only 1 package on PyPI (new or inactive account)Package has no PyPI classifiers (low effort / metadata quality)
No known vulnerabilities found in OSV database.
AI App Starter Prompt
Create a command-line interface (CLI) tool named 'CodeSavior' using Python and the 'ai-code-switcher' package. This tool will allow developers to easily switch between different AI coding assistants (e.g., ChatGPT, Claude, etc.) and launch their respective CLIs with a single command. The primary goal of CodeSavior is to streamline the process of integrating various AI coding tools into a developer's workflow. Steps to follow: 1. Install the required packages, including 'ai-code-switcher', using pip. 2. Define a main function that takes user input to select which AI coding assistant they want to use. 3. Use the 'ai-code-switcher' package to switch profiles and launch the appropriate CLI for the selected AI coding assistant. 4. Implement error handling to manage cases where the user inputs an invalid selection or if there's an issue with launching the CLI. 5. Add a feature to save the last used profile so that it can be automatically selected on subsequent runs. 6. Include a help menu that lists all available options and provides usage instructions. 7. Ensure that the tool is well-documented and includes a README file explaining how to install and run the application. Suggested Features: - Support for multiple AI coding assistants. - Ability to customize the CLI arguments passed to each AI coding assistant. - User-friendly prompts guiding the user through the selection process. - Logging functionality to record usage and potential issues. - Integration with configuration files for advanced users to tweak settings. The 'ai-code-switcher' package is utilized primarily in Step 3, where it acts as the backbone of switching between different AI coding assistant profiles. It abstracts away the complexity of managing multiple CLIs, allowing for a seamless experience for the end-user.