Versioned security assessment

Report ID: SA-5ADC00CC

7/1/2026, 2:54:03 AM

writing-skills security assessment v2

Skill Security Certification Report

Audit History
Audit model: codex Historical report
Skill name
writing-skills
Version
v2
Maintainer
ZhanlinCui
Coverage
7 Files scanned · 2,911 Lines analyzed
Policy version
Unavailable

Highest confirmed finding severity

Medium

2 confirmed security findings require attention.

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.

Static analysis reported many high-risk patterns, but most are false positives from Markdown examples, documentation links, and quoted file paths. The confirmed risk is the bundled render-graphs.js helper, which runs Graphviz and writes generated files under a user-supplied skill directory. No evidence found for malicious intent, credential exfiltration, command-and-control behavior, or prompt injection.

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

7 Files scanned · 2,911 Lines analyzed

3 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 1 evidence location

Network access

May connect to external services.

Observed in 4 evidence locations

Filesystem access

May read or write local files.

Observed in 28 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 312 evidence locations

Risk findings

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

Confirmed security concerns (2)

RISK-001 Medium
Executable Graphviz Helper Runs Local Commands
The render-graphs.js helper imports child_process and runs dot through execSync. The command string is fixed, so direct shell injection was not found, but it still executes a local external tool on DOT content extracted from a user-selected SKILL.md file.
The script directly uses execSync for Graphviz execution. The command is hardcoded and receives data through stdin, which lowers injection risk but confirms external command execution.
RISK-002 Medium
Helper Reads and Writes Under a User-Supplied Directory
The helper resolves the skill directory from a command-line argument, reads SKILL.md, creates a diagrams directory, and writes SVG or DOT outputs. This is expected tool behavior, but users should only run it on trusted local skill directories.
The filesystem behavior is explicit and semantically legitimate for a renderer. Risk remains because the path is user supplied and output files are created automatically.
Needs review findings (1)
REVIEW-001 Low
Persuasion Guidance Could Be Misused in Prompt Design
The skill includes guidance on authority, commitment, and scarcity techniques for improving compliance. It frames the use as ethical skill design, but marketplace users should avoid using these techniques to bypass user intent or safety controls.
The text explicitly discusses increasing AI compliance, which has dual-use potential. The same file also includes an ethical-use section, so malicious intent is not confirmed.

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.

Static false positives ignored (4)
Low
Markdown Code Blocks Trigger Static Command Detections
Many reported Ruby backtick and command findings are fenced examples in documentation, not executable code. These examples explain skill structure, shell snippets, or Markdown patterns and do not run by themselves.
The cited lines are inside Markdown fences or prose examples. I found no code path that executes those snippets automatically.
Low
Documentation Image URLs Are Not Runtime Network Calls
The hardcoded URLs are image links in copied documentation. They may load if rendered by a Markdown viewer, but the skill code does not fetch them or send data to them.
The URLs appear in Markdown links and image tags. No JavaScript or shell code performs network requests to those URLs.
Low
Home Directory Paths Are Documentation Examples
The hidden home directory findings reference example paths such as skill library locations. They describe where skills may live and do not access those paths directly.
The paths are shown as prose and command examples in documentation. I did not find automatic reads from hidden home files.
Low
Weak Crypto and C2 Keyword Hits Are Semantic False Positives
The weak cryptography and command-and-control detections appear to match words such as hash, md, command, and image query parameters in documentation. No evidence found of cryptographic implementation, encoded payloads, beaconing, or remote control logic.
The surrounding context is authoring guidance and citations, not crypto code or network control logic. This is a strong false-positive pattern match.

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