Borrowing it
Nothing to install: this file belongs to nolindnaidoo/envsync-le. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/nolindnaidoo/envsync-le/main/CLAUDE.mdgit clone --depth 1 https://github.com/nolindnaidoo/envsync-leWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/nolindnaidoo/envsync-le/claude-md)<a href="https://agentmods.dev/instructions/nolindnaidoo/envsync-le/claude-md"><img src="https://agentmods.dev/badge/instructions/nolindnaidoo/envsync-le/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/nolindnaidoo/envsync-le/claude-md"><img src="https://agentmods.dev/badge/instructions/nolindnaidoo/envsync-le/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.01343 | $0.01343 |
| Opus 5.5 | $0.00537 | $0.00537 |
| Sonnet 5.5 | $0.00269 | $0.00269 |
| Haiku 4.5 | $0.00134 | $0.00134 |
Grade A, and why
envsync-le CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 21d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
88% identical to regex-le CLAUDE.md — 21 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 91 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CLAUDE.md
AGENTS.md is the technical source of truth for this repo: the engineering standard the code is held to — control flow, error handling, immutability, structure — plus this repo's architecture, invariants, toolchain and release. Read it before writing code. README.md is user-facing and partly generated.
The repo also hosts the Rust CLI in crate/ — read crate/CLAUDE.md and
crate/AGENTS.md for that side; the shared corpus is crate/fixtures/.
Where to look
| Question | File |
|---|---|
| How should this code be written? | AGENTS.md — the standard, plus this repo's architecture and invariants |
| What does the user see? | README.md — Testing and Performance are generated |
| What changed? | CHANGELOG.md |
Gates
bun run typecheck && bun run lint && bun run test
Before a release, also bun run test:integration, bun run package, and
bun run test:e2e-vsix — the last is the only test that exercises the
artifact users actually install.
Things that will bite you
- Two README sections are generated. Testing and Performance sit between
<!-- coverage:start -->/<!-- performance:start -->markers and come fromscripts/coverage-readme.jsandscripts/perf-readme.js. Edit the code and regenerate; do not type numbers in by hand. They are regenerated at release, and CI does not check them. - Output changes must update the characterization goldens in the same commit, with a CHANGELOG entry describing the behaviour change.
- Every claim must be provable. No feature, metric or format goes in a README, the manifest, or help text unless the code backs it. That governs behaviour and numbers — not availability. Whether something is published, listed or installable is a fact about a registry at a moment in time, and it is false right up until you make it true. Copy for a release you are about to make is staged, never forbidden: write it, and let the release commit be what makes it true.
- This repo is one of ten identical ones. The shared config files, scripts
and workflows are byte-identical across the family, and
letools-site/scripts/check-fleet.tsis what holds them there rather than memory: runbun run check:fleet ../from a checkout of the site with the ten beside it, or dispatch its Fleet workflow. It names the file and the repos that drifted, so a missed copy is a report rather than something you find months later. Anything undercrate/is outside the check on purpose — the crates stand on their own. - Detection is shared with the Rust CLI, and the corpus under
crate/is the contract. Changing detection behaviour means runningbun scripts/check-detection-parity.tsand updating the corpus — on both sides, in the same commit. CI fails when either drifts. - What the contract holds equal is the shared
compare_env_filesMCP tool, which both servers offer and must answer identically; a difference there is a bug. The surfaces are meant to differ. This one is IDE-first — the workspace's env files, discovered and watched as a set — this is the one extension with noactiveTextEditorat all, because a drift check is about a file set and never about one buffer. The CLI is terminal-first: a tree walk, exit codes and JSON Lines, none of which has an editor equivalent. That is not drift, and nothing holds them equal — seecrate/SPEC.md. - The npm command line is the crate's surface, not the extension's.
src/cli/builds the npm packageenvsync-le, which installs the same command the crate does, so it is held to the Rust CLI byte for byte bybun run check:cli-parity(afterbun run build:cliand acargo buildincrate/). A change to the crate's flags, walk, template matching, exit codes or output changessrc/cli/in the same commit.--versionis compared too, because every surface carries one version. See AGENTS.md, Release. - No value ever reaches an answer. Only key names are parsed, compared or reported. The parity script greps the corpus for a value and fails if it finds one; the crate does the same to its embedded copy.
- Localization is two mechanisms, and they fail separately.
src/i18n/package.nls.*.jsoncovers the manifest;l10n/bundle.l10n.*.jsoncovers runtime strings throughvscode.l10n.t(). Twelve locales each, held in exact key parity by the integration test. Never calll10n.t()at module scope, never compare a translated label against an English literal, and use positional{0}placeholders rather than template literals. - CI narrows itself on a docs-only push. A change touching only
*.mdandLICENSEruns the Linux leg alone and skips the version gate;ci-crate.ymlruns itspolicygate with every Rust job skipped. Nothing that covers the change is skipped — the integration suite and the installed-VSIX end-to-end are Linux-only anyway. Anything unrecognised, and an unreadable diff, counts as code and runs everything. A release commit always touchespackage.json, so a release still sees the full three-OS matrix. - Coverage floors are a backstop, not a target. They sit well below where the code actually is, and they are not raised to track it — a floor that follows real coverage becomes a tax on writing the next module.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 21d ago Changed · +8 lines · +144 tokens per session d718ade6b7c2
- 29d ago Changed · -5 tokens per session cc651e4695d2
- 1mo ago Changed · -1 tokens per session 8a454a853435
- 2mo ago First seen · 83 lines · 1,205 tokens per session scan A 48bd9943ace2
envsync-le CLAUDE.md is an instructions file published in the GitHub repository nolindnaidoo/envsync-le (1 stars, last pushed 7d ago), licensed MIT. It adds 1,343 tokens to every session, about $0.0054 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 88% identical to regex-le CLAUDE.md, differing in 21 lines, and is treated as a copy.
envsync-le CLAUDE.md compared with instructions from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| envsync-le CLAUDE.mdnolindnaidoo/envsync-le | Instructions file | 1 | 7d ago | MIT | A | 1,343 | Claude Code |
| vscode buildNext.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 9,719 | GitHub Copilot |
| next.js AGENTS.mdvercel/next.js | Instructions file | 143k | today | MIT | A | 7,461 | Codex, OpenCode |
| langchain AGENTS.mdlangchain-ai/langchain | Instructions file | 149k | yesterday | MIT | A | 4,680 | Codex, OpenCode |
| vscode oss-third-party-notices.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 5,516 | GitHub Copilot |
| vscode copilot-instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 3,093 | GitHub Copilot |
| deepseek-harness AGENTS.mddeepseek-ai/deepseek-harness | Instructions file | 274k | 2d ago | MIT | A | 4,313 | Codex, OpenCode |