adk-code-mode

v0.2.2 suspicious
4.0
Medium Risk

A "Code Mode" Code Executor for ADK for agents to interact with tools, files, and custom packages with Python

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package shows signs of potential misuse through shell execution and obfuscation techniques, despite a low risk for network calls and credential theft. The maintainer's metadata raises additional concerns.

  • Shell risk due to docker usage and external script execution
  • Metadata risk due to a new or inactive maintainer account
Per-check LLM notes
  • Network: The network call attempts a local connection which is likely benign unless there's additional context suggesting misuse.
  • Shell: Shell execution commands seem to involve package building and sandboxing, but the use of 'docker' and running external scripts could indicate elevated risk if not properly documented or controlled.
  • Obfuscation: The presence of base64 decoding suggests some level of obfuscation, but it could also be for legitimate purposes such as handling encoded data.
  • Credentials: No clear patterns indicating credential harvesting were detected.
  • Metadata: The maintainer has a new or inactive account and lacks a full author name, raising some suspicion but not definitive evidence of malice.

🔬 Heuristic Checks

Outbound Network Calls score 1.5

Found 1 network call pattern(s)

  • try: with socket.create_connection(("127.0.0.1", port), timeout=0.5): break
Code Obfuscation score 10.0

Found 6 obfuscation pattern(s)

  • es.Blob( data=base64.b64decode(content), mime_type=mime_type or "applicatio
  • = "bytes": blob = base64.b64decode(result["data"]) """ part = await tool_context.load_a
  • eturn file.content return base64.b64decode(file.content) def _stderr_with_exit_code(stderr: str, exit
  • tion/octet-stream" assert base64.b64decode(result["data"]) == raw @pytest.mark.asyncio async def test
  • "print(blob['kind'], base64.b64decode(blob['data']), blob['mime_type'])\n" ) result = awai
  • return 1 try: exec(compiled, globs) except SystemExit as exc: code_val = e
Shell / Subprocess Execution score 8.0

Found 4 shell execution pattern(s)

  • ol: try: result = subprocess.run( ["docker", "version", "--format", "{{.Server.Ve
  • _sandbox_wheel() -> Path: subprocess.run( ["uv", "build", "--wheel"], cwd=_SANDBOX_WH
  • ndbox_wheel.read_bytes()) subprocess.run( [ "docker", "build",
  • PATH", "")]) ) proc = subprocess.Popen( [sys.executable, "-m", "adk_code_mode_sandbox"],
Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

Email domain looks legitimate: a2anet.com>

Suspicious Page Links

All external links appear legitimate

Git Repository History

Repository A2ANet/adk-code-mode 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 adk-code-mode
Create a mini-application called 'AgentCodeCraft' that leverages the 'adk-code-mode' Python package to enable users to execute Python code within a secure sandboxed environment. This application will allow developers to write and run Python scripts that interact with various system tools, files, and custom packages, all while maintaining security and control over the execution environment.

### Core Features:
1. **Sandboxed Execution:** Ensure that all code runs in a secure, isolated environment to prevent unauthorized access or damage to the host system.
2. **Interactive Shell:** Provide an interactive shell where users can type Python code and see immediate results.
3. **File System Interaction:** Allow the execution of code that reads from and writes to files, but restrict access to sensitive system directories.
4. **Custom Package Support:** Enable users to import and use custom Python packages within their scripts.
5. **Logging and History:** Keep a log of executed commands and their outputs for debugging and auditing purposes.
6. **User Authentication:** Implement basic user authentication to ensure only authorized users can execute code.
7. **Syntax Highlighting:** Enhance the user experience by adding syntax highlighting for Python code.

### Steps to Build AgentCodeCraft:
1. **Setup Environment:** Install Python and the 'adk-code-mode' package. Set up a virtual environment for isolation.
2. **Design UI/UX:** Create a simple yet intuitive user interface using a Python GUI library like Tkinter or PyQt.
3. **Integrate 'adk-code-mode':** Use 'adk-code-mode' to handle the execution of Python code within a sandboxed environment.
4. **Implement Security Measures:** Configure 'adk-code-mode' to enforce strict security policies, such as restricting file access and disabling certain dangerous operations.
5. **Develop Core Functions:** Write functions to manage user input, execute code, handle output, and log activities.
6. **Add Customization Options:** Allow users to customize their environment by importing custom packages and setting up aliases for commonly used commands.
7. **Test Thoroughly:** Test the application under various scenarios to ensure it behaves as expected and is secure.
8. **Deploy and Maintain:** Deploy the application and provide ongoing support and updates.

### Utilizing 'adk-code-mode':
- **Initialization:** Initialize 'adk-code-mode' at the start of the application to set up the sandboxed environment.
- **Execution:** Pass user input to 'adk-code-mode' for execution, capturing any errors or outputs.
- **Security Configuration:** Customize the security settings provided by 'adk-code-mode' to fit the specific needs of your application.
- **Integration with UI:** Integrate 'adk-code-mode' seamlessly with the UI components to provide a smooth user experience.