Container Security (Snyk)
@snykSnyk's container-security skill: scan Docker images for OS and app vulnerabilities via the Snyk MCP server and fix Dockerfiles.
Instruction-only Snyk skill (3 Markdown files, no scripts); it needs a Snyk login, sends image scans to Snyk through npx snyk@latest, and may edit Dockerfiles and run docker builds.
Install Container Security (Snyk) in Google Antigravity
Antigravity loads skills from .agents/skills/ in your project or ~/.gemini/config/skills/ for all projects (official docs). Full guide
Install the "Container Security (Snyk)" skill for Google Antigravity. Follow the steps at https://www.antigravityskills.org/install/container-security.md (source: https://github.com/snyk/studio-recipes/tree/main/command_directives/synchronous_remediation/skills/container-security). Before running anything, show me what you will download and whether it includes scripts, and wait for my OK. Install it into this project (.agents/skills/) unless I say global. When done, check that Antigravity lists it as an installed skill.
The agent reads the install file, shows you what it will download and waits for your OK.
Option 2: install it yourself
- 1. Download the repository
git clone --depth 1 https://github.com/snyk/studio-recipes /tmp/studio-recipes && git -C /tmp/studio-recipes log -1 --format=%h
We reviewed commit 691f03c. If the second command prints a different hash, the skill may have changed since our review.
- 2. Copy the skill into this project (workspace skill)
mkdir -p .agents/skills && cp -r /tmp/studio-recipes/command_directives/synchronous_remediation/skills/container-security .agents/skills/
Run from your project root. Antigravity reads workspace skills from .agents/skills/<folder>/; the folder holds SKILL.md and references/ (3 Markdown files, no scripts).
- 3. Or install it for all projects (global skill)
mkdir -p ~/.gemini/config/skills && cp -r /tmp/studio-recipes/command_directives/synchronous_remediation/skills/container-security ~/.gemini/config/skills/
Use this instead of the previous step. For the Antigravity CLI the global folder is ~/.gemini/antigravity-cli/skills/.
- 4. Add the Snyk MCP server to Antigravity
{ "mcpServers": { "Snyk": { "command": "npx", "args": ["-y", "snyk@latest", "mcp", "-t", "stdio"] } } }This is the repo's mcp/.mcp.json. Put it in ~/.gemini/config/mcp_config.json (all projects) or .agents/mcp_config.json (this project). Needs Node.js for npx. Without the MCP server the skill has no scan tool.
- 5. Log in to Snyk
npx -y snyk@latest auth
The README says snyk auth (or set SNYK_TOKEN for non-interactive use). The npx form is our adaptation for machines without a global Snyk CLI.
- 6. Check that Antigravity sees both
Antigravity 2.0 app: start a new conversation and ask "What skills do you have?"; container-security should be listed. Antigravity CLI: run /skills (/skills reload in a session that was already open). The Snyk server should appear under Settings > Customizations > Installed MCP Servers.
The studio-recipes README does not mention Antigravity, and Snyk's installer does not install this skill. These steps copy the documented skill folder into Antigravity's standard skill folders and reuse the repo's own MCP config.
Using Claude Code, Cursor or Codex? See other assistants below.
What is Container Security (Snyk)?
How to use Container Security (Snyk)?
Key features of Container Security (Snyk)
- ✓Scans a local image, a registry image or a .tar archive through the Snyk MCP container scan tool
- ✓Optional parameters the skill passes: Dockerfile path (file), app_vulns, severity_threshold and exclude_base_image_vulns
- ✓Two-scan method to separate vulnerabilities inherited from the base image from those your own layers add
- ✓Remediation guidance for base-image upgrades, single OS packages and application dependencies
- ✓Dockerfile hardening checklist: pinned tags, non-root user, multi-stage builds, --no-install-recommends
- ✓Verification step: rebuild without cache, re-scan and compare before/after counts
When to use Container Security (Snyk)
- 1Scanning a Docker image before deploying it
- 2Hardening an existing Dockerfile
- 3Choosing a base image with fewer known vulnerabilities
- 4Finding out which vulnerabilities come from the base image and which you added
Installation & Setup Guide
Agent Rules / Prompt SetupFollow these steps (taken from the project's own docs) to configure Container Security (Snyk) in your development environment.
git clone --depth 1 https://github.com/snyk/studio-recipes /tmp/studio-recipes && mkdir -p .claude/skills && cp -r /tmp/studio-recipes/command_directives/synchronous_remediation/skills/container-security .claude/skills/
command_directives/synchronous_remediation/skills/README.md documents cp -r skills/<skill-name> into <project>/.claude/skills/ (recommended) or ~/.claude/skills/ (global).
curl -fsSL 'https://raw.githubusercontent.com/snyk/studio-recipes/main/installer/dist/snyk-studio-install.sh' -o snyk-studio-install.sh && bash ./snyk-studio-install.sh --dry-run
From the README. The installer merges the Snyk MCP config and other recipes (hooks, snyk-fix commands) into detected assistants; it does not add container-security. Remove --dry-run after checking what it will change.
snyk auth
Or set SNYK_TOKEN from your Snyk account (README).
The installer configures the Snyk MCP server for Cursor, but the repo gives no Cursor path for the container-security skill, so we do not list one.
Usage Example & Verification
1) Project example (End-to-End Example in SKILL.md): "Scan my app:latest image and help me fix it."
-> What happens: the agent calls the Snyk container scan tool with image="app:latest" and app_vulns=true, summarises the findings by severity and source (base image vs. your layers), and proposes a base-image upgrade, package pins and dependency updates. After you apply them it rebuilds and re-scans.
2) Our example: "Review my Dockerfile, build it as myapp:dev and scan it with the Dockerfile attached. Only show high and critical issues."
-> What happens: this follows Scenario 2 in SKILL.md ("Secure my Dockerfile"): a Dockerfile review, a docker build, then a scan with file="./Dockerfile" and severity_threshold="high", combined into one fix list. The skill's allowed tools include Write and Edit, so it may offer to change the Dockerfile; check the diff.
3) Our example: "Which vulnerabilities in node-api:1.4 come from the base image, and which did we add?"
-> What happens: Step 2.3 in SKILL.md: one scan with exclude_base_image_vulns=true (only your layers) and one without it (full picture), then a comparison.In a new Antigravity conversation ask "What skills do you have?" (CLI: /skills) and look for container-security; check that Snyk is switched on under Installed MCP Servers. Then try "Scan nginx:latest with Snyk and summarise the critical issues".
Security Review
Static reviewInstruction-only Snyk skill (3 Markdown files, no scripts); it needs a Snyk login, sends image scans to Snyk through npx snyk@latest, and may edit Dockerfiles and run docker builds.
Full review: scope, findings, risks
Static review at commit 691f03c. The skill folder command_directives/synchronous_remediation/skills/container-security/ contains SKILL.md and two reference files, all Markdown; there is no executable code. SKILL.md's allowed-tools field grants mcp_snyk_snyk_container_scan plus Read, Write, Edit, Bash and Grep, and its steps include docker pull, docker login <registry>, docker build --no-cache and optional Dockerfile fixes, so the agent can change files and run Docker in your project. The scan is done by the Snyk MCP server that mcp/.mcp.json starts with npx -y snyk@latest mcp -t stdio, which downloads the newest Snyk CLI and sends the image analysis to Snyk; it needs snyk auth or SNYK_TOKEN. The skill reads no API keys itself. Snyk's README installer is downloaded with curl from raw.githubusercontent.com and run with bash; it supports --dry-run and --uninstall, but according to installer/manifest.json it does not install this skill.
Operational Notes & Known Limitations
Known Limitations
- •Needs the Snyk MCP server and an authenticated Snyk account (SKILL.md compatibility field). Docker must be installed for local images; private registries may need docker login
- •Snyk's one-command installer does not install this skill (we counted): installer/manifest.json has 9 recipes and the only skills among them are snyk-fix (for Codex and Copilot CLI only) and secure-dependency-health-check. You copy container-security yourself
- •Antigravity is not mentioned anywhere in the repository (we searched all files). The README's supported list is Cursor, Claude Code, GitHub Copilot (CLI and VS Code), Gemini, Windsurf and Kiro, and the installer has no Antigravity target
- •allowed-tools names the scan tool mcp_snyk_snyk_container_scan, a client-prefixed name, while the scenarios in the same file call it snyk_container_scan. In other clients the tool may be listed under a different name, so the agent has to match it
- •Version drift (we counted): the installer manifest pins Snyk CLI 1.1306.0, but mcp/.mcp.json runs npx -y snyk@latest, so the MCP server is whatever Snyk published last
- •All vulnerability numbers in SKILL.md (for example 18 vulnerabilities, or a base-image change that 'eliminates ~14 vulns') are sample output, not data about your image
- •Difference from the Portainer MCP page on this site: Portainer manages running containers and stacks; this skill only scans images and suggests fixes. It does not deploy or start anything
Frequently Asked Questions
Is the Container Security skill safe?
In our static review of commit 691f03c, the skill is 3 Markdown files with no scripts. It lets the agent use the Snyk scan tool plus Read, Write, Edit, Bash and Grep, so it can edit your Dockerfile and run docker pull, docker login and docker build. Scans go to Snyk, and the Snyk MCP server runs npx -y snyk@latest.
How do I install Container Security in Antigravity?
Copy command_directives/synchronous_remediation/skills/container-security from snyk/studio-recipes into .agents/skills/ (or ~/.gemini/config/skills/), add the Snyk MCP server to mcp_config.json, run snyk auth, then ask "What skills do you have?" (CLI: /skills). The repo does not mention Antigravity.
Does Snyk's installer include this skill?
No. We counted the 9 recipes in installer/manifest.json; none of them installs container-security. The installer sets up the Snyk MCP server, hooks and the snyk-fix and dependency-health skills.
Do I need a Snyk account?
Yes. SKILL.md requires an authenticated Snyk account; the README says to run snyk auth or set SNYK_TOKEN.
Will it change my Dockerfile automatically?
It can. Write and Edit are in its allowed tools, and the workflow can fix Dockerfile issues and rebuild with docker build --no-cache. Ask it to show changes before applying them.
Supported Platforms
Keep exploring this topic
Browse the full Antigravity skills directory for more source-linked skills with install steps and static safety reviews.
Related Skills
Portainer MCP
@portainer
Portainer's MCP server (now deprecated upstream): lets AI agents inspect environments and manage Docker, Kubernetes and GitOps stacks through the Portainer API.
DigitalOcean MCP
@digitalocean-labs
DigitalOcean's open-source MCP server: manage Droplets, App Platform, databases, DNS, Kubernetes and more from an AI agent.
Metasploit Framework
@sickn33
Community skill that gives an agent a command reference for the Metasploit penetration-testing framework. It is an offensive-security skill: the upstream file is marked risk: offensive and meant for authorised assessments and lab use only.
Popular Skills
View All →Agent Manager
@sickn33
Manage multiple local CLI agents via tmux sessions.
Systematic Debugging
@sickn33
Debug systematically, not randomly. Find and fix bugs methodically.
Browser Automation (Playwright)
@sickn33
Expert browser automation for cleaning scraping and reliable testing.