GitHub Issue Resolver

Security checks across static analysis, malware telemetry, and agentic risk

Overview

The skill mostly matches its GitHub issue-fixing purpose, but an included PR helper can use your GitHub login to push/create PRs and has unsafe shell command handling.

Use this only on repositories you control and trust. Before installing, verify the GitHub account logged into gh, require explicit approval before any push or PR, and consider fixing or avoiding scripts/create_pr.py until its shell command construction and approval handling are corrected.

Static analysis

No static analysis findings were reported for this release.

VirusTotal

66/66 vendors flagged this skill as clean.

View on VirusTotal

Risk analysis

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.

What this means

A malicious or malformed issue title, branch name, or file path could cause local commands to run as the user when the PR helper is used.

Why it was flagged

branch_name, title, and body_file come from sys.argv and are interpolated into shell commands executed with shell=True, so crafted input could execute unintended local shell commands.

Skill content
result = subprocess.run(cmd, shell=True, capture_output=True, text=True) ... run_cmd(f"git checkout -b {branch_name}") ... cmd = f'gh pr create --title "{title}" --body-file "{body_file}"'
Recommendation

Change subprocess calls to shell=False with argument arrays, validate branch/file inputs, and never pass untrusted issue text directly into shell command strings.

What this means

If invoked by the agent, it could push a branch and create a non-draft PR using the user's GitHub access without the explicit approval flow promised in the skill instructions.

Why it was flagged

The helper directly performs remote push and PR creation instead of routing through the sandbox/guardrail approval gates; the shown PR command also lacks --draft.

Skill content
run_cmd(f"git push -u origin {branch_name}") ... cmd = f'gh pr create --title "{title}" --body-file "{body_file}"'
Recommendation

Route PR creation through the guarded sandbox, require an explicit user confirmation at execution time, validate the target repo/branch, and include --draft by default.

What this means

Pushes and PRs will be attributed to whichever GitHub account is logged into gh, and that account's repository permissions determine what the skill can change.

Why it was flagged

The skill relies on the locally authenticated GitHub CLI account for its GitHub operations.

Skill content
print("Requires: gh CLI installed and authenticated.") ... run_cmd("gh auth status", check=True)
Recommendation

Before use, run gh auth status, confirm the account and token scopes, and only use the skill on repositories where you intend that account to act.

What this means

Users may not realize before installation that the skill depends on local GitHub CLI setup and can operate through an authenticated GitHub identity.

Why it was flagged

The registry metadata under-declares the runtime environment compared with the included scripts, which require local GitHub tooling and authentication.

Skill content
Required binaries (all must exist): none ... Primary credential: none ... No install spec — this is an instruction-only skill.
Recommendation

Declare required tools such as git/gh and the expected GitHub authentication requirement in metadata or setup instructions.

What this means

Local audit files may contain snippets of private or proprietary code changes after the skill runs.

Why it was flagged

The audit logger persists diff contents and action history under a local audit directory.

Skill content
diff_file = os.path.join(self._today_dir, "diffs", f"issue-{issue_number}-{safe_filename}.patch") ... f.write(diff_content)
Recommendation

Review and clean the audit directory when needed, and avoid using the skill on highly sensitive repositories unless this local logging is acceptable.