Evidence at a glance

, use MITEvidence
PHP CVE CVSS v4.0 9.2Evidence
8.2.35、8.3.36PHP
8.4.27、8.5.12PHP
Node 10 CVE,4 HighEvidence
Node CVE-2026-111497 BrotliEvidence

Remediation Packaged as Agent Skills

Cognition has released Devin Vulnerability Fixes, an MIT-licensed open-source set of agent skills for teams dealing with recent remote-code-execution flaws in PHP, Node.js, and self-managed GitLab. It contains three skills for PHP2Shell, the October 21, 2026 Node.js security release, and GitLab CVE-2026-110264. Because the workflow is described in SKILL.md files, it can also be used by other coding agents that read that format.

The important change is not simply that “an agent can fix vulnerabilities.” Cognition has packaged an internal remediation workflow as reusable repository operations. The agent identifies deployments and versions, proposes changes, runs tests, and produces a pull request for each repository. This turns the scattered work triggered by a security advisory into tasks that are easier to review and assign, but the release reports neither a remediation success rate nor a benchmark.

Inventory First, Changes Only After Approval

The three skills share a five-step workflow. The agent performs a read-only inspection of Dockerfiles, base images, operating-system packages, CI configuration, Helm, Terraform, Packer, Lambda, and configuration management. A developer then chooses which repositories to work on. Higher-risk minor or major upgrades are called out rather than silently applied past an approval gate.

After approval, the skill verifies tags, image digests, package versions, and checksums against official sources before editing. Testing happens in two rounds: first on the current version, then inside the new production image. A regression stops the run. Each repository gets its own pull request, including version changes, test results, runtime differences, a risk label, and a rollback plan. This design limits the agent to proposing and validating changes rather than giving it direct control of production.

Three Vulnerabilities, Three Version Traps

The targets do not all present the same upgrade problem. PHP2Shell consists of two CVEs, each rated CVSS v4.0 9.2 by PHP. Fixed releases include PHP 8.2.35, 8.3.36, 8.4.27, and 8.5.12. PHP 8.1 and older do not have corresponding new releases; the source describes source backports for 7.4, 8.0, and 8.1. That means an upstream version string alone cannot establish whether a system is safe.

The October 2026 Node.js release fixes 10 CVEs, four rated High. One leading issue is an out-of-bounds write in the Brotli decoder that can enable remote code execution. Fixed versions are 22.23.4, 24.22.1, and 26.12.1, while Node.js 20 and older are end-of-life. GitLab CVE-2026-110264 is an integer overflow in the regular-expression compiler that can permit unauthenticated code execution. Rated CVSS 10.0, it affects self-managed CE/EE from version 7.0 onward. GitLab.com and GitLab Dedicated have already been patched, so the relevant audience is teams maintaining their own deployments.

The Hard Part Is Knowing What Is Actually Deployed

The workflow’s practical value depends heavily on avoiding false confidence from cases where a version number appears unchanged or a dependency declaration has been edited without patching the runtime. Debian and Ubuntu may backport fixes without changing the upstream version, so checking only php -v can mislead. The source gives Ubuntu 24.04’s fixed package as 8.3.6-0ubuntu0.24.04.13. Likewise, digest-pinned container images require a new digest, and changing Composer’s require.php declaration does not patch the runtime.

These examples show why remediation is not just changing a dependency field to a higher number. Application code, operating-system packages, images, and actual deployment methods must be reconciled. The plugin scans multiple configuration sources to place version information back in its deployment context. But the source also draws a clear boundary: managed runtimes, appliances, and Electron applications are flagged, not patched by these skills. Finding an exposed system does not mean the agent has a route to fix it.

A Pull Request Is a Delivery Boundary, Not a Security Verdict

Teams can install the plugin from Devin’s marketplace or use Cognition’s repository through the Devin CLI. Other agents can install it with npx skills add CognitionAI/devin-vuln-fixes, provided Node.js 22.20 or later is available; Claude Code has a separate marketplace installation path. Despite the multiple entry points, running the workflow still requires git, a shell, Docker, and registry access. It is therefore better suited to teams that already keep deployment information and tests in their code workflow than to anyone expecting an instant, universal repair tool.

The final judgment should rest on the pull request, not on the claim that “the agent completed the task.” Test results and rollback plans support review, but validation is only as strong as the existing test coverage and the match between the test and production environments. The plugin publishes no fix-rate figure and does not decide what to do with unsupported versions. Used for fixes with clear version targets and tests that can run in the production image, it can reduce manual coordination. For obsolete runtimes, managed platforms, or poorly tested systems, human review remains essential, and “a change was generated” must not be confused with “the risk is gone.”