VS Code Marketplace Verified

StruktoLab Studio

by OpenPatch · 15 users
1664ea6d-6f45-5881-9cc1-c10dd7481d85 | v0.5.1
50/ 100
MEDIUM risk
No change since v0.5.0
Analyst verdict
Review before use

The AI review rates the findings as likely false positive, but the risk score (50/100) still counts them.

Analysis record

Analysed
6 days ago
Version
v0.5.1
Artifact
SHA256 BB7…913
Source
Findings (non-IoC)

Is StruktoLab Studio safe?

StruktoLab Studio is a VS Code extension for drawing Nassi-Shneiderman structograms, the box-and-line diagrams used to sketch program flow. It declares no VS Code permissions and no host permissions, so it doesn't ask for broad access to your machine. Its network endpoints are struktolab.openpatch.org, struktolab.new and schemas.openxmlformats.org. The first two belong to OpenPatch, the group that publishes the extension. The third is the standard internet address for the Open XML document format.

The one network finding is NET-FETCH-extension/dist/webview.js-291, a fetch call inside the extension's bundled webview code. If that call were shipping your source files somewhere, it would matter. Here it sits in dist/webview.js, the build output for the panel that draws your diagrams, and it points at the publisher's own servers rather than an unknown host.

The rest of what the scanner picked up is 18 low-severity code-smell matches and six indicator hits that don't name a single hostile domain. Those rules flag ordinary Node.js words like fetch and exec wherever they turn up, and they light up on virtually every bundled extension. There are no malware signatures, no findings against .env or .ssh files, and no code that hides itself.

Nothing in the code points to credential theft, data exfiltration or hidden payloads. A small install count and generic pattern matches aren't evidence of anyone misbehaving, and the extension's reach stops at the diagram files you open.

No Findings

All security checks passed

Publisher Evidence

Low

OpenPatch

Publisher identity, store signals, distribution reach, and warning signals used for context. Treat this as supporting evidence, not a clean bill of health.

67
Noisy-finding weight
x1.00
Publisher domain
openpatch.org
Observed
Store verification signal
Verified publisher
Verified
Extension portfolio
4
Portfolio

12 evidence rows available.

No Threats Detected

This extension passed all security checks

AI Security Report

AI Security Review

Evidence context: threat category none; evidence quality moderate.

What the extension is

StruktoLab Studio is a VS Code extension from OpenPatch, version 0.5.1, that draws Nassi-Shneiderman structograms for .struktolab files. It declares no permissions and no host permissions. The only code that reaches the network is a fetch call at extension/dist/webview.js:291, recorded as NET-FETCH-extension/dist/webview.js-291. That path places the call inside the extension's bundled webview output, which is where a diagram editor keeps the code that renders and refreshes its editor panel.

Is the access justified?

The three endpoints in play are struktolab.new, struktolab.openpatch.org and schemas.openxmlformats.org. Two are the publisher's own project domains. The third is the namespace host for the Open XML document format, a reference any tool that emits or validates OOXML documents has an ordinary reason to carry. Nothing in the manifest-analysis or secret categories fired, so there is no evidence of the extension reaching outside the workspace or touching process execution. This is a file editor, so reading and writing .struktolab files in the open workspace is the job, not a side effect.

Credential findings

The secret category is empty. No finding references .env, .ssh, .git/config, cloud credential stores, or VS Code's secret storage. The extension declares no permissions at all, which means there is no scope it asked for that its purpose doesn't cover.

Where the noise comes from

The 18 code-smell entries are low severity and sit on bundled JavaScript under extension/dist/. Rules tagged postinstall_* and credential_* match basic Node.js vocabulary such as fetch, exec, fs and process.env, and they fire on nearly any non-trivial bundle. Six indicator hits appear with no specific hostile domain attached; the only named endpoints are the two publisher domains and the schema namespace. There are zero malware-family, malware-signature, obfuscation and tool-poisoning matches.

Strongest counterargument

15 installs is a small audience, and this evidence does not independently confirm OpenPatch's marketplace verification. Low download count plus a recent publish is standard supply chain heuristics. But that heuristic needs either broad permissions or a hostile endpoint to mean anything, and this extension has neither: no permissions, no host permissions, and no endpoint outside the publisher's control or a standards schema host. A typosquat would also need a name close to a popular extension, and StruktoLab Studio isn't imitating anything. Neither signal survives contact with the actual findings.

Conclusion

Nothing in the code supports data theft, credential access or payload execution. The volume comes from bundled webview code and broad pattern rules, not from anything the extension does.

Key Reasons

  • No permissions or host permissions declared, and no filesystem, secret or process-execution findings of any kind.
  • The single network finding, NET-FETCH-extension/dist/webview.js-291, sits in bundled webview build output, which is expected for a webview-based visual editor.
  • Named endpoints are the publisher's own domains (struktolab.openpatch.org, struktolab.new) and schemas.openxmlformats.org, the Open XML schema namespace.
  • Zero malware, malware-signature, obfuscation, secret and tool-poisoning matches across the scan.
  • The 18 code-smell entries are low-severity YARA pattern matches on bundled JavaScript under extension/dist/, not behavior.

False Positive Considerations

  • 18 low-severity code-smell rules matching generic Node.js vocabulary (fetch, exec, fs, process.env) in bundled extension/dist/ JavaScript
  • Six unnamed IoC hits with no specific hostile domain; every named endpoint is either publisher-controlled or the OOXML schema host
  • Single NET-FETCH finding located in minified webview build output rather than source
  • Finding volume concentrated in dist/ bundle files, which multiplies pattern matches per bundled library

Reviewed 2026-10-12; recommended action: suppress false positive; model confidence 85%.

VS Code version history

Risk trend by version

2 analyzed versions. Each point is the latest successful scan for that version; failed zero-score scans are hidden. Dates are based on first seen by risky plugins.

Selected
50
Change since first
No change
Change from previous
No change
Versions:
First analyzed version
0.5.0
Aug 14, 2026
Risk range
50 to 50
Across analyzed versions
Latest analyzed version
0.5.1
Oct 9, 2026
Selected version
medium
Version
v0.5.1
6 days ago
Risk score
50
Findings
26
Change vs previous
0

Pick any point on the chart to explore that version's code below.

About This Extension

Visual editor for .struktolab files — Nassi-Shneiderman structograms

Frequently Asked Questions