skills/jablonkai/skills/freecad/Gen Agent Trust Hub

freecad

Warn

Audited by Gen Agent Trust Hub on Oct 10, 2026

Risk Level: MEDIUMDYNAMIC_EXECUTIONREMOTE_CODE_EXECUTIONCOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
  • [DYNAMIC_EXECUTION]: The scripts/freecad-bridge.py script implements an HTTP server that uses the Python exec() and compile() functions to run arbitrary code received via network requests. This allows for dynamic assembly and execution of code within the live FreeCAD process context.
  • Evidence: exec(compile(code, filename, "exec"), ns) in scripts/freecad-bridge.py.
  • [REMOTE_CODE_EXECUTION]: The skill establishes an unauthenticated command execution bridge listening on 127.0.0.1:8735. Although it includes basic cross-origin (CORS) protections to prevent browser-based attacks, any other local process or user on the same machine can send and execute arbitrary Python code with the privileges of the user running FreeCAD.
  • Evidence: self.server.listen(QtNetwork.QHostAddress("127.0.0.1"), _PORT) and the POST handler for /run in scripts/freecad-bridge.py.
  • [COMMAND_EXECUTION]: The scripts executed through the bridge run in a Python environment where they can potentially invoke shell commands or interact with the operating system using modules like os or subprocess, extending the risk beyond the FreeCAD application itself.
  • Evidence: The bridge namespace includes App, FreeCAD, and Gui, but the executed code can import other modules like os as seen in scripts/example-bracket.py.
  • [INDIRECT_PROMPT_INJECTION]: The skill acts as an intermediary that translates user modeling requests into Python code for execution. This creates a surface where untrusted data could be used to influence the generated script. The skill does not implement specific sanitization or boundary markers for the data it processes, though the risk is mitigated by the LLM's internal safety filters.
  • Ingestion points: User prompts provided to the agent for 3D modeling tasks.
  • Boundary markers: None identified in the provided files.
  • Capability inventory: Full Python execution within the FreeCAD process, including file system access via the OUT environment variable.
  • Sanitization: No explicit validation or sanitization of the generated Python scripts before they are POSTed to the bridge.
Audit Metadata
Risk Level
MEDIUM
Analyzed
Oct 10, 2026, 10:53 AM