local-llm-router
Verdict safe, but 3 findings (1 medium, 1 low, 1 info), mainly command injection, policy violation. Most recent scan 2026-05-09.
Second scanner: NVIDIA SkillSpector
Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.
What this skill does
Route AI coding queries to local LLMs in air-gapped networks. Integrates Serena MCP for semantic code understanding. Use when working offline, with local models (Ollama, LM Studio, Jan, OpenWebUI), or in secure/closed environments. Triggers on local LLM, Ollama, LM Studio, Jan, air-gapped, offline AI, Serena, local inference, closed network, model routing, defense network, secure coding.
- Package
- 2 files, 88 KB
- SKILL.md
- 6239 words, 12+ sections
- Code
- None. Instructions only.
SKILL.md covers: Local LLM Router for Air-Gapped Networks · Prerequisites (CRITICAL) · Install Serena (required) · Or via uvx · Verify local LLM service · Quick Start · Example usage · Serena Integration (PRIMARY TOOL) · Why Serena First? · Serena MCP Setup · Serena tools by priority (always use higher priority first) · Serena-First Request Handler
Findings
MEDIUM Python code block executes shell commands Command Injectionbehavioral
Code block in SKILL.md at line 99 contains potentially dangerous Python code.
SKILL.md:99
self.process = subprocess.Popen(LOW Dangerous data flow in command pipeline Command Injectionpipeline
Pipeline downloads data from the network and executes it: `curl -fsSL https://ollama.ai/install.sh | sh`. This is a remote code execution pattern. (Note: found in documentation file - may be instructional rather than executable.)
references/model-matrix.md:2
curl -fsSL https://ollama.ai/install.sh | shINFO Skill does not specify a license Policy Violationstatic
Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.
SKILL.md
What is in the package
| File | Kind | Size |
|---|---|---|
SKILL.md | doc | 79 KB |
references/model-matrix.md | doc | 9.3 KB |
External hosts referenced
github.com lmstudio.ai docs.openwebui.com jan.ai localai.io ollama.ai
Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.
Environment variables referenced
MCP_CLIENT KUBERNETES_SERVICE_HOST WORKSPACE_ROOT
Package contents recorded 2026-10-22 at commit f7a43d8f8525. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.
What we checked
- Static analyzer. Pattern rules over SKILL.md and bundled files: known-bad commands, exfiltration URLs, secrets, obfuscation.
- Bytecode analyzer.
- Pipeline analyzer.
- Behavioral analyzer. Checks what the skill asks the agent to do against what its description claims it does.
- Trigger analyzer. Looks for instructions that fire on conditions the user did not ask for.
What we did not check
- Runtime behaviour. The skill was not executed; findings come from reading its files.
- Anything fetched at install or run time, including remote scripts, package dependencies, and URLs the skill tells the agent to open.
- Content the analyzers cannot read: images, binaries, and some non-English text.
- Known scanner bypass classes. See the methodology and limitations page.
Sources
- Repository: https://github.com/hoodini/ai-agents-skills
- Raw scan result: skills-local-llm-router-scan.json
- Badge for your README:
 - Request a re-scan