Claude Code reads files before you approve anything
A symlinked @import in CLAUDE.md can send files from outside your repo to the model on startup — no tool call, no approval prompt. Audit what your coding agent reads.
Clone a repo, run your coding agent, and a file from somewhere else on your disk goes out with the first request. Security firm Tego AI disclosed a flaw in Claude Code today where a symlinked @import inside a repo's CLAUDE.md gets followed at startup and folded into the model's context — no tool call, no file-edit approval, no out-of-project warning. It's their second Claude Code disclosure in a week, and the interesting part isn't the bug. It's that Anthropic doesn't consider it one.
What actually happened
The mechanism is dull, which is why it works. A repository commits an ordinary-looking CLAUDE.md with an @import directive pointing at a symbolic link checked into the project. The link resolves to something outside the project — say, a credentials file in your home directory. When a developer clones the repo and starts Claude Code, the startup memory loader follows the link and includes the target's contents in the first request it sends.
The approval dialog that's supposed to catch out-of-project reads doesn't fire, because it inspects the in-repo link name (./link) rather than the path it resolves to. Nothing executes. No tool runs. The data is simply in the request body, already on the wire. Tego reports the flaw on Claude Code v2.1.x, and notes Anthropic patched related issues previously under CVE-2025-59829 and CVE-2026-25724 — but the startup memory loader is a third code path those fixes never reached.
Tego says it reported through HackerOne in July and Anthropic closed it as Informative: under Claude Code's threat model, the "trust this folder" dialog is the security boundary. That's a defensible position and also a load-bearing one. Tego's Tomer Niv put the counter-argument plainly: context is whatever gets sent to the model, and the model is a network endpoint.
Why this matters for your business
Both parties are right, which is the problem. If you trust a folder, you've granted the agent read access — that's the documented contract. But most developers read "trust this folder" as "let it work here," not "let it ship arbitrary local files to a third party on launch." The gap between those two readings is where your .env lives.
Practically: treat cloning a repo and starting an agent in it as running untrusted code, because in terms of data egress it is. Client repos, contractor handoffs, that dependency you forked from GitHub — all of it. Run agents on repos you didn't write inside a container or a VM with nothing else mounted. Keep secrets out of the filesystem the agent can reach; a secrets manager the agent must explicitly call is auditable, a .env two directories up is not. And grep for @import and symlinks in any CLAUDE.md or AGENTS.md that arrived from outside your team.
This is what agent security looks like now. Not exploits — configuration you accepted at a prompt you didn't read closely.
Key takeaways
- A symlinked
@importin a repo'sCLAUDE.mdcan pull files from outside the project into Claude Code's first request at startup - No tool call fires and no approval prompt appears — the out-of-project check inspects the link name, not its target
- Tego AI reports the issue on Claude Code v2.1.x; Anthropic closed it as Informative, treating "trust this folder" as the security boundary
- Run coding agents on unfamiliar repos inside a container or VM with nothing else mounted
- Move secrets behind a manager the agent has to call, and audit inherited
CLAUDE.md/AGENTS.mdfiles for imports and symlinks
Running AI agents against your own codebase and not sure what they can reach? We build automations with explicit boundaries — scoped credentials, sandboxed execution, logs you can actually audit. See how we scope agent access or bring us your setup.
Sources: Hackread, The Security Ledger.
- #claude-code
- #ai-agents
- #security
- #dev-tools
- #supply-chain
Tommy Rush — Founder, Rush Commerce
Operator turned builder. 15+ years running operations — now shipping the systems businesses run on. More
Get The Rush Report weekly — one email, zero fluff.
Keep reading
Cursor's ₹649 India tier: dev seats go geographic
Cursor launched a ₹649/month India-only plan, roughly a third of its $20 Pro tier. AI dev tool pricing is now segmented by market, and that changes your budget math.
Read itvBulletin RCE exploit went public: get to 6.2.2 today
A working exploit for vBulletin CVE-2026-61511 dropped four weeks after the patch. Unauthenticated remote code execution, no in-the-wild reports yet. That window closes fast.
Read it