imac-cam
Analysis
The skill does capture the iMac camera as described, but it also starts an unauthenticated background web server from /tmp that can expose the camera image and other temporary files.
Findings (3)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
subprocess.Popen(['python3', '-m', 'http.server', '8765'], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) ... subprocess.run(['osascript', '-e', 'tell application "Photo Booth" to quit'], capture_output=True)
The script launches the HTTP server as a background process and later quits Photo Booth, but the artifacts do not show any corresponding shutdown of the server.
Checks whether tool use, credentials, dependencies, identity, account access, or inter-agent boundaries are broader than the stated purpose.
subprocess.run(['osascript', '-e', 'tell application "Photo Booth" to activate'], ...) ... subprocess.run(['/usr/sbin/screencapture', '-x', '-R' + rect, CAPTURE_FILE], ...)
The implementation uses macOS automation and screen capture to activate Photo Booth and save an image of the camera window. This matches the stated purpose but uses privacy-sensitive local permissions.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
os.chdir('/tmp')
subprocess.Popen(['python3', '-m', 'http.server', '8765'], ...)
...
print(f"查看地址: http://{ip}:8765/cam_capture.png")The skill serves files from /tmp and advertises a network IP URL for the camera capture, with no artifact evidence of authentication, localhost-only binding, file scoping, or access control.
