GitSpawn let received repositories execute code before AI coding-agent trust gates
Manifold Security disclosed a cross-vendor vulnerability class in which AI coding agents automatically ran Git commands while opening a repository and preserved attacker-controlled repository-local Git configuration. Command-bearing settings such as core.fsmonitor could therefore execute code as the developer before normal model, trust or tool-approval controls.
Defensive cross-vendor vulnerability research. The documented delivery condition is narrower than a hostile git URL: the victim must receive a project directory with attacker-controlled local .git configuration intact, such as an archive, shared volume, sync directory or copied workspace. Ordinary clone, fetch and pull do not transfer the source repository's .git/config. Product patch status is a dated September 1, 2026 snapshot unless a vendor advisory establishes otherwise.
First seen
Sep 1, 2026
Case kind
vulnerability
AI role
AGAINST AI
Claims
8
Reconstruction
GitSpawn sits below the model layer. Coding agents commonly run Git commands automatically to learn branch, index and diff state. Manifold Security found that multiple products performed those context-gathering calls without neutralizing repository-local Git settings that can name executable helpers.
The clearest path uses core.fsmonitor. During index refresh, Git can run the helper configured in the repository's own .git/config. If a received workspace arrives with that metadata already present, an affected agent can trigger the command during startup, review preparation, the first message or even the first keystroke. Because the subprocess belongs to the agent application's own context-gathering code rather than an LLM tool call, it can run outside the model-tool sandbox and before the normal trust or approval boundary.
Manifold reported eight findings across seven coding agents. At publication, four had been fixed and four remained open; the mechanisms were not identical in every product, and one Claude review-path key was deliberately withheld while unpatched. The Goose maintainer advisory provides a vendor-confirmed instance of the class: goose review before 1.44.0 could run a repository-controlled core.fsmonitor command before contacting the model.
Mechanism & boundary
01
A project directory arrives with local Git metadata intact
The attack requires attacker-controlled .git configuration to be present on disk, which can happen through an archive, shared/synced directory, copied workspace, nested repository or similar file transfer.
The process runs as the user; the Goose advisory specifically notes inherited environment secrets and provider API keys as accessible impact.
Boundary: developer process / credentials and local repositories
Timeline
Jun 26, 2026
Claude Code core.fsmonitor path is reported
report
Manifold says the finding was closed as a duplicate of a same-day report and later fixed by 2.1.196.
Jul 7, 2026
Qwen Code finding is reported
report
Alibaba SRC accepted the report; Manifold still reproduced it on 0.22.3 on September 1.
Jul 8, 2026
Cursor finding is reported
report
The report was closed as a duplicate of an earlier finding and was patched before publication.
Jul 13, 2026
Goose finding is reported
report
The Goose variant was acknowledged and later tracked as CVE-2026-72718.
Jul 14, 2026
Grok Build finding is reported
report
Manifold says it duplicated a July 1 report and remained reproducible on 1.0.13 on September 1.
Jul 15, 2026
A second Claude Code review-path finding is reported
report
This distinct Git configuration sink was closed as a duplicate of an internal ticket and remained reproducible on 2.1.252 on September 1.
Jul 20, 2026
Hermes Agent and OpenAI Codex findings are reported
report
Manifold says Codex was patched; Hermes remained unpatched at the September 1 retest and was assigned CVE-2026-71963 by VulnCheck.
Jul 24, 2026
Goose publishes its advisory
publication
GHSA-r5pp-p5r8-466r identifies versions before 1.44.0 as affected and 1.44.0 as patched.
Sep 1, 2026
Manifold publishes GitSpawn
publication
The disclosure reports eight findings across seven agents, with four findings still open at that dated snapshot.
Claims & evidence
reported findingsupported
The core repository-delivery path requires the victim to receive a directory with its .git metadata intact; Manifold notes that ordinary clone, fetch and pull do not copy a remote repository's local .git/config.
Locator: Affected versions, Patched versions and CVE ID fields
reported findingsupported
In the documented core.fsmonitor path, an agent's automatic Git context-gathering command could cause Git to execute a helper command stored in the repository's own .git/config, outside the agent sandbox and without a tool-approval prompt.
Locator: Summary and Root cause sections for goose review
reported findingsupported
The researchers documented product paths where attacker code executed before the user's normal workspace-trust, model-interaction or approval boundary had taken effect.
Locator: Summary: no submitted prompt, model call, tool approval or trust prompt before execution
reported findingsupported
Manifold Security reported eight related findings across seven AI coding agents, including Claude Code, OpenAI Codex, Cursor, Goose, Qwen Code, Grok Build and Hermes Agent.
Locator: GHSA severity, CVSS v4 vector, CVE ID and CWE fields
reported findingsupported
Manifold's September 1 publication reported eight findings across seven agents; four findings were fixed and four were still unpatched at that publication snapshot.
Scope: Status is tied to Manifold's September 1, 2026 retest/publication. Later version numbers without a vendor advisory or reproduction do not by themselves establish remediation.
Measured value
4 unpatched findings out of 8 disclosed findings
Method
Manifold Security disclosure status table and September 1 retest
Locator: TL;DR and timeline table: eight findings across seven agents, status at publication
reported findingsupported
For the Goose variant, successful execution runs with the privileges of the user running Goose and inherits that user's environment, so environment secrets and provider API keys can be exposed.
Scope: Potential technical impact described by the advisory; the source does not report realized theft from a malicious in-the-wild exploitation.
A coding agent can execute attacker-controlled host code before the model participates. Security reviews therefore need to include startup discovery, version-control helpers and other application-owned subprocesses, not only model tool calls. A workspace-trust prompt that appears after context gathering is not a boundary for work already performed.
Controls & mitigations
Update affected coding agents to vendor-fixed versions and verify product-specific advisories rather than assuming the class is fixed everywhere.
Prefer a fresh clone from a URL you selected over opening a received directory that already contains a .git directory.
Inspect or discard repository-local Git configuration before opening file-transferred workspaces in an AI coding agent.
Sanitize command-bearing Git configuration for every automatic context-gathering invocation, not only core.fsmonitor.
Move pre-model repository discovery behind the same workspace-trust boundary that governs explicit agent actions.
Run application-owned Git subprocesses under the same least-privilege and sandbox assumptions as model-initiated tools.
Limit ambient developer credentials and provider secrets available to coding-agent processes.
What remains unknown
The reviewed primary sources establish reproducible vulnerabilities, not malicious exploitation in the wild.
Vendor-confirmed current remediation status after September 1 remains unresolved for the Claude ultrareview path, Hermes Agent, Qwen Code and Grok Build.
Not every finding used core.fsmonitor; at least one distinct command-bearing Git configuration key was intentionally withheld while unpatched.
The prevalence of project handoffs that preserve attacker-controlled .git metadata is not measured by the scoped sources.
DiggingBeagle. “GitSpawn let received repositories execute code before AI coding-agent trust gates.” First seen Sep 1, 2026. https://diggingbeagle.com/cases/gitspawn-let-received-repositories-execute-code-before-ai-coding-agent-trust-gat/
DiggingBeagle is a non profit research project documenting AI security incidents, agent failures, vulnerabilities and AI-assisted operations. A case keeps its claims beside the sources that support, contest or limit them. Later updates stay visible, so a reader can see when the account changed.
We publish case reconstructions, dated reporting and analysis across records. Each has a different evidentiary role. About the project and our methodology explain how the work is reviewed.