From shannon
Detect OWASP Top 10 vulnerabilities via static analysis. Calculate security score (0.00-1.00) for code quality. Auto-generate remediation suggestions with implementation examples. Integrate with Serena for vulnerability tracking and SLA compliance. Use when: securing code, detecting vulnerabilities, improving security posture, validating fixes, enforcing security standards.
npx claudepluginhub krzemienski/shannon-framework --plugin shannonThis skill is limited to using the following tools:
Scan code for OWASP Top 10 vulnerabilities using static analysis. Calculate security score (0.00-1.00) showing vulnerability density. Generate auto-remediation suggestions with code examples. Track vulnerabilities via Serena for SLA compliance and trending.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Scan code for OWASP Top 10 vulnerabilities using static analysis. Calculate security score (0.00-1.00) showing vulnerability density. Generate auto-remediation suggestions with code examples. Track vulnerabilities via Serena for SLA compliance and trending.
Security Score Calculation:
Score = 1.0 - (Critical×0.2 + High×0.1 + Medium×0.05)
Range: 0.00 (many vulns) to 1.00 (secure)
Critical: ≥0.2 deduction each (auth, injection, secrets)
High: ≥0.1 deduction each (XSS, CSRF, path traversal)
Medium: ≥0.05 deduction each (weak crypto, logging)
Vulnerability Categories (OWASP Top 10):
Detection Example:
[CRITICAL] SQL Injection (A3)
File: src/database.js:45
Pattern: query("SELECT * FROM users WHERE id=" + userId)
Fix: Use parameterized query
Score impact: -0.20
[HIGH] Hardcoded Secret (A2)
File: config.ts:12
Pattern: apiKey: "sk_live_abc123def456"
Fix: Move to environment variable
Score impact: -0.20
Auto-Remediation Example:
❌ Vulnerable:
app.get('/user/:id', (req, res) => {
const query = "SELECT * FROM users WHERE id=" + req.params.id;
db.query(query, (err, result) => res.json(result));
});
✅ Fixed:
app.get('/user/:id', (req, res) => {
const query = "SELECT * FROM users WHERE id=$1";
db.query(query, [req.params.id], (err, result) => res.json(result));
});
Serena Payload:
{
"metric_type": "security_vulnerabilities",
"project": "task-app",
"security_score": 0.78,
"vulnerabilities": [
{
"type": "SQL_INJECTION",
"severity": "CRITICAL",
"file": "src/database.js:45",
"sla_hours": 24,
"suggested_fix": "Use parameterized queries",
"created": "2025-11-20T10:00:00Z"
}
]
}
Financial Application Audit:
E-Commerce Platform:
✅ Security score ≥0.85 for production code ✅ Zero critical vulnerabilities ✅ High vulnerabilities fixed within 48h (SLA) ✅ All suggested fixes tested and passing ✅ Serena trending shows improvement or stability ✅ No OWASP Top 10 patterns in code reviews