Versioned security assessment

Report ID: SA-3B05AAF6

7/5/2026, 1:38:11 AM

grasshopper-workflow security assessment v7

Skill Security Certification Report

Audit History
Audit model: codex Historical report
Skill name
grasshopper-workflow
Version
v7
Maintainer
AmemiyaLai
Coverage
16 Files scanned · 4,253 Lines analyzed
Policy version
Unavailable

Confirmed finding summary

No confirmed security findings

The completed audit recorded no confirmed security findings. This is not proof that the Skill has no side effects.

Installation context

Historical evidence

This report may not describe the currently installable artifact. Open the current Skill page for install guidance.

Open current Skill page

This report does not block or authorize the manifest or ZIP.

The confirmed issues are limited to unrestricted local file writes that can overwrite caller-selected paths. The reconnaissance, dynamic import, external command, and obfuscation alerts are false positives from Grasshopper IDs, markdown fences, static imports, Chinese documentation, and GUID examples. No prompt injection, hidden exfiltration intent, or malicious control flow was found.

Report position

Historical report

Open audit history before using this report to install.

Audit attestation

Not attestable

The required immutable binding is incomplete.

Human verification

Not verified

No human verification is recorded for this report.

Coverage

16 Files scanned · 4,253 Lines analyzed

7 items shown for review

Limitations

This report does not claim runtime or sandbox execution and does not prove the absence of side effects.

Evidence chain

Follow the evidence from source binding to the install contract. Available evidence supports verification; it is not a safety guarantee.

  1. Source

    Binding unavailable

  2. Artifact

    Identity incomplete

  3. Audit

    Complete

  4. Install contract

    Open manifest to verify

    Open manifest

Capabilities observed

Observed means this report recorded supporting evidence. Not recorded does not prove that a capability is absent.

Contains scripts

May execute code included with the Skill.

Observed in 3 evidence locations

Network access

May connect to external services.

Not recorded by this audit

Filesystem access

May read or write local files.

Observed in 9 evidence locations

Env variables

May read values from the process environment.

Not recorded by this audit

External commands

May invoke commands or programs outside the Skill.

Observed in 22 evidence locations

Capability review items (7)
Medium
Python file write/append
with open(args.output, 'w', encoding='utf-8') as f:
cmd_parse_mmd writes parsed data to args.output without constraining the output path. This is intended CLI behavior, but an agent-selected path could overwrite local files.
Medium
Python file write/append
with open(args.output, 'w', encoding='utf-8') as f:
cmd_parse_mmd writes subgraph data to args.output without path restriction. This can overwrite arbitrary files if the caller supplies a sensitive path.
Medium
Python file write/append
with open(args.output, 'w', encoding='utf-8') as f:
cmd_parse_mmd writes slider data to args.output without path restriction. The write is legitimate, but it is still a local overwrite risk.
Medium
Python file write/append
with open(args.output, 'w', encoding='utf-8') as f:
cmd_get_errors writes error output to args.output without constraining the destination. A mistaken or injected path could overwrite unrelated local files.
Medium
Python file write/append
with open(file_path, 'w', encoding='utf-8') as f:
JSONGenerator.save_placement_info writes to a caller-provided file_path without workspace validation. It supports normal workflow generation but can overwrite local files.
Medium
Python file write/append
with open(file_path, 'w', encoding='utf-8') as f:
save_component_id_map writes to an optional caller-provided file_path or a default project file. The default is safe, but the unrestricted path is an overwrite risk.
Medium
Python file write/append
with open(json_path, 'w', encoding='utf-8') as f:
update_guids_in_json overwrites the json_path supplied by the caller after modifying GUID values. The path is not restricted to a workspace.

Risk findings

Confirmed security concerns are separated from items that still need review.

No confirmed security findings were recorded for this completed audit.

Remediation

Suggested fixes recorded by this audit. Applying them is the maintainer’s responsibility.

  1. FIX-001
    Medium
    Unrestricted output paths
    Resolve output paths under a workspace such as GH_WIP, reject traversal, and confirm before overwriting existing files.
  2. FIX-002
    Medium
    In-place JSON updates
    Write updates to a temporary file first, keep a backup, then replace the target file after validation succeeds.
  3. FIX-003
    Low
    Configurable MCP host
    Document that commands should target a trusted local Grasshopper MCP server unless the user explicitly approves a remote host.

Expert evidence

Immutable subject identity, scanner metadata, dismissed matches, and source-level evidence.

Artifact subject

Marketplace commit
Unavailable
Content hash
Unavailable
Tree hash
Unavailable
Skill path
Unavailable
Audit payload hash
Unavailable

Analysis metadata

Audit model: codex

Analysis state: Complete

Scope is limited to the recorded files, lines, methods, and evidence. No runtime or sandbox execution is claimed.

Verify and export

The manifest and lockfile bind install artifacts to cryptographic hashes. This integrity claim is separate from the security assessment.

Audit attestation: not_attestable