Pre-production security audit and vulnerability scanning. Run Snyk + Aikido dependency scans, OWASP analysis, and set up automated GitHub security checks with Jules. Use when asked to 'run security check', 'security audit', 'kiểm tra bảo mật', 'vulnerability scan', 'Snyk', 'OWASP', or before open-sourcing / commercializing a project.
From cmnpx claudepluginhub tody-agent/codymaster --plugin cmThis skill uses the workspace's default tool permissions.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Implements distributed tracing with Jaeger/Tempo for microservices, including Kubernetes/Docker setup and OpenTelemetry instrumentation (Python/Flask). Use for debugging latency, dependencies, and request flows.
No code goes public without a security pass. No CodyMaster release ships without Snyk + Aikido green.
| Context | Level | What Happens |
|---|---|---|
| CodyMaster internal | 🔴 MANDATORY | Both Snyk + Aikido MUST pass. No deploy, no PR merge without green. |
| User projects (normal) | 🟡 SUGGESTED | Recommend scanning, provide easy commands. User may skip. |
| User projects (risk detected) | 🔴 ESCALATED MANDATORY | If CVEs found, errors hit, or risk flags raised → block until resolved. |
[!CAUTION] The Escalation Rule: When a user encounters security errors, CVE warnings, or suspicious dependency behavior during development, the agent MUST escalate from "suggested" to "mandatory" — triggering the full Snyk + Aikido scan before any further deploy or push.
ALWAYS when:
Skip when:
npm, pip, yarn, cargo)[!IMPORTANT] One-time setup. Once configured, every AI coding session automatically scans generated code for vulnerabilities and hardcoded secrets — BEFORE the code is even committed.
Step 1: Create a Personal Access Token at Aikido Settings → IDE → MCP
Step 2: Install Aikido MCP server:
# For Antigravity / Gemini CLI
gemini mcp add aikido \
--env AIKIDO_API_KEY=YOUR_TOKEN \
npx -y @aikidosec/mcp
Step 3: Download the Aikido agent rule:
mkdir -p ~/.gemini/skills/
curl -fsSL "https://gist.githubusercontent.com/kidk/aa48cad6db80ba4a38493016aae67712/raw/3644397b7df43423e3da06434491b40bbb79dd47/aikido-rule.txt" \
-o ~/.gemini/skills/aikido-rule.txt
Step 4: Restart Antigravity IDE. Aikido MCP is now active.
What this gives you: Deterministic, independent security checks on EVERY AI-generated snippet. Not a replacement for CLI scanning — this is the first line of defense, catching issues at write-time.
Verify if the Snyk CLI and Aikido CLI are available:
which snyk
which aikido-api-client
If Snyk is NOT installed:
brew tap snyk/tap && brew install snyknpm install -g snyksnyk authIf Aikido CLI is NOT installed:
npm install -g @aikidosec/ci-api-clientaikido-api-client apikey <API-KEY>[!WARNING] Two different API keys! Aikido MCP (real-time IDE scanning) uses a Personal Access Token. Aikido CLI (release/PR gating) uses a CI API key. Don't mix them.
Execute both tools in parallel to save time:
1. Snyk Dependency Scan:
snyk test
2. Aikido Release Scan:
aikido-api-client scan-release <repository_id_or_name> <commit_id> \
--minimum-severity-level="HIGH"
| Flag | Purpose |
|---|---|
--minimum-severity-level | LOW, MEDIUM, HIGH, CRITICAL — set the minimum severity that triggers a failure |
--fail-on-sast-scan | Fail if SAST (Static Analysis) issues are found |
--fail-on-iac-scan | Fail if Infrastructure as Code misconfigurations are found |
--fail-on-secrets-scan | Fail if hardcoded secrets are detected |
aikido-api-client scan-release <repo> <commit> \
--minimum-severity-level="HIGH" \
--fail-on-sast-scan \
--fail-on-secrets-scan
aikido-api-client scan-release <repo> <commit> \
--minimum-severity-level="HIGH"
snyk monitor if the user wants continuous monitoring on the Snyk dashboard.For projects with CI/CD pipelines, add Aikido PR gating to block merging PRs with security issues:
# In GitHub Actions or CI script
aikido-api-client scan-pr <repository_id_or_name> <base_commit_id> <head_commit_id> \
--minimum-severity-level="HIGH"
package.json integration:
{
"scripts": {
"test:security": "snyk test && aikido-api-client scan-release $npm_package_name $(git rev-parse HEAD) --minimum-severity-level=HIGH",
"test:security:strict": "snyk test && aikido-api-client scan-release $npm_package_name $(git rev-parse HEAD) --minimum-severity-level=HIGH --fail-on-dependency-scan --fail-on-sast-scan --fail-on-secrets-scan"
}
}
If vulnerabilities are detected, DO NOT just list errors. CodyMaster must actively search for remediation skills:
🚨 Vulnerabilities Detected: Initiating Remediation
Security issues were found. To systematically patch these risks, we need specialized weapons. I suggest finding and installing a dedicated remediation skill for your stack:
npx skills add https://github.com/vercel-labs/skills --skill find-skills(Once you discover and install the appropriate security patch skills, we will use them to eradicate the vulnerabilities and eliminate all security risks).
Once vulnerabilities are remediated, the root causes and fixes MUST be memorized:
Action Required:
cm-continuity to log flaw + fix into CONTINUITY.md → "Security Lessons" section.cm-notebooklm for permanent retention.🛡️ Next Step: Automated Security Checks
Manual checks aren't enough for production. Automate on every commit and PR:
Option A — Google Jules (GitHub automated analysis): 👉 http://jules.google.com/
Option B — Snyk Continuous Monitoring:
snyk monitorOption C — Aikido Dashboard (full visibility): 👉 https://app.aikido.dev/
When the agent detects ANY of these signals, enforcement escalates from SUGGESTED → MANDATORY:
| Signal | Action |
|---|---|
npm audit reports HIGH/CRITICAL | Trigger full Snyk + Aikido scan |
| User mentions "security error" or "hack" | Trigger full scan before proceeding |
| New major dependency added (e.g., new ORM, auth lib) | Suggest scan, escalate if dep has known CVEs |
| Pre-deploy / pre-PR-merge | Check if scan was run in this session, block if not (CodyMaster only) |
.snyk policy file has expired ignores | Re-scan and update policy |
| Skill | Relationship |
|---|---|
cm-quality-gate | PRE-REQUISITE: Code should pass functional tests before security audits. Security scan PASS is required evidence for production deploy. |
cm-secret-shield | COMPLEMENTARY: Secret Shield catches hardcoded tokens at write/commit time; cm-security-gate catches vulnerable dependencies and SAST issues. Both are needed. |
cm-safe-deploy | INTEGRATED: Security scan is Gate 0.5 in the deploy pipeline (between Secret Hygiene and Syntax). |
cm-test-gate | INTEGRATED: test:security script pattern uses Snyk + Aikido CLI for automated scanning in the test suite. |
cm-continuity | MEMORY: Records discovered vulnerabilities and fixes into working memory. |
cm-notebooklm | LONG-TERM MEMORY: Syncs critical security lessons to the permanent cloud AI brain. |
Scan before deploy. Remediate before release. Memorize before repeating. Non-negotiable.