ai-dino-in-terminal

v0.1.1 suspicious
5.0
Medium Risk

A terminal Chrome dino runner with human, rule-agent, and LLM modes.

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package is flagged as suspicious due to its network and shell risks, despite no clear evidence of malicious intent. The combination of these factors warrants caution.

  • network calls that could potentially be used for data exfiltration
  • execution of shell commands which can be risky if not properly sanitized
Per-check LLM notes
  • Network: The package makes network calls which could be for legitimate purposes like fetching updates or configuration but may also indicate potential data exfiltration or C2 communication.
  • Shell: Executing shell commands might be necessary for the package's functionality, such as checking the version of an external tool, but it can also pose a risk if misused for arbitrary command execution.
  • Metadata: The repository's low activity and the maintainer's single package suggest potential unreliability, but there are no clear signs of malicious intent.

📦 Package Quality Overall: Medium (5.4/10)

✦ High Test Suite 9.0

Test suite present — 16 test file(s) found

  • 16 test file(s) detected (e.g. test___init__.py)
◈ Medium Documentation 5.0

Some documentation present

  • Detailed PyPI description (2795 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

  • 165 type-annotated function signatures detected in source
◈ Medium Multiple Contributors 6.0

Limited contributor diversity

  • 2 unique contributor(s) across 62 commits in adamwoohhh/agents-competition
  • Two distinct contributors found

🔬 Heuristic Checks

Outbound Network Calls score 7.5

Found 5 network call pattern(s)

  • (data.decode()) req = urllib.request.Request( f"{self.config.base_url.rstrip('/')}/re
  • }, ) with urllib.request.urlopen(req, timeout=timeout) as resp: raw_respo
  • e() with mock.patch("urllib.request.urlopen", side_effect=fake_urlopen): agent._call
  • with mock.patch("urllib.request.urlopen", return_value=FakeResponse()): agen
  • e() with mock.patch("urllib.request.urlopen", return_value=FakeResponse()): agent._c
Code Obfuscation

No obfuscation patterns detected

Shell / Subprocess Execution score 4.0

Found 2 shell execution pattern(s)

  • try: completed = subprocess.run( [codex_path, "--version"], capture_
  • try: completed = subprocess.run( command, capture_output=Tru
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 2.5

Git history flags: Repository has zero stars and zero forks

  • Repository has zero stars and zero forks
Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "AI Dino in Terminal contributors" 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 ai-dino-in-terminal
Create a fun and interactive terminal-based game using the 'ai-dino-in-terminal' Python package. This game will allow players to control a dinosaur character in a runner game format, similar to the Chrome Dino game but with enhanced AI capabilities. Your task is to build a fully functional mini-application that not only entertains but also showcases the versatility of the package by integrating different game modes and AI-driven features.

Steps to follow:
1. Set up the project environment and install the required 'ai-dino-in-terminal' package.
2. Implement a basic human-controlled mode where users can control the dinosaur using keyboard inputs.
3. Introduce a rule-agent mode where the dinosaur is controlled by pre-defined rules to navigate obstacles automatically.
4. Develop an LLM mode where the dinosaur is controlled by an AI model trained to play the game, demonstrating the integration of advanced AI techniques.
5. Enhance the user interface to display scores, lives, and other game statistics.
6. Add sound effects and background music to make the game more engaging.
7. Implement a leaderboard feature to store and display high scores.
8. Test each game mode thoroughly to ensure smooth gameplay and correct functionality.
9. Document the project, including setup instructions, usage guidelines, and any additional notes on how the 'ai-dino-in-terminal' package was utilized.

Suggested Features:
- Customizable game settings such as difficulty levels and speed.
- Different types of obstacles with varying degrees of complexity.
- Integration with external APIs for real-time weather data to dynamically adjust game conditions.
- Multiplayer support allowing players to compete against each other in real-time.
- Save game progress so players can continue from where they left off.

The goal is to create an entertaining yet educational project that demonstrates the capabilities of the 'ai-dino-in-terminal' package while providing a unique gaming experience.