<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/greatscott-enveil-enveil-hide-env-secrets-from-praing-eyes-secrets-live-in-local-encrypted-store-sspqxahku" -->

---
title: GreatScott/enveil: ENVeil: Hide .env secrets from prAIng...
description: enveil is a Rust CLI tool that protects .env secrets from AI coding tools (Claude Code, Copilot, Cursor, etc.) that can read project files. Instead of storing...
canonical: https://daily.dev/posts/greatscott-enveil-enveil-hide-env-secrets-from-praing-eyes-secrets-live-in-local-encrypted-store-sspqxahku
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: GreatScott/enveil: ENVeil: Hide .env secrets from prAIng eyes: secrets live in local encrypted stores (per project) and are injected directly into apps at runtime, never touching disk as plaintext. | daily.dev
og:description: enveil is a Rust CLI tool that protects .env secrets from AI coding tools (Claude Code, Copilot, Cursor, etc.) that can read project files. Instead of storing...
og:url: https://daily.dev/posts/greatscott-enveil-enveil-hide-env-secrets-from-praing-eyes-secrets-live-in-local-encrypted-store-sspqxahku
og:image: https://api.daily.dev/og/posts/sSPQXaHKu.png
og:image:alt: GreatScott/enveil: ENVeil: Hide .env secrets from prAIng eyes: secrets live in local encrypted stores (per project) and are injected directly into apps at runtime, never touching disk as plaintext.
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# GreatScott/enveil: ENVeil: Hide .env secrets from prAIng eyes: secrets live in local encrypted stores (per project) and are injected directly into apps at runtime, never touching disk as plaintext.

**[Hacker News](https://daily.dev/sources/hn)** · 7 min read · 0 upvotes · 1 comments

## Summary

enveil is a Rust CLI tool that protects .env secrets from AI coding tools (Claude Code, Copilot, Cursor, etc.) that can read project files. Instead of storing secrets as plaintext, it uses symbolic `ev://` references in .env files while keeping real values in a per-project encrypted local store (AES-256-GCM with Argon2id key derivation). Secrets are injected directly into subprocess environments at runtime, never written to disk as plaintext. The tool includes commands for initializing stores, adding/deleting secrets, rotating passwords, and importing existing .env files, with 31 automated tests verifying security invariants like nonce freshness, tamper detection, and wrong-password rejection.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://github.com/GreatScott/enveil>

## Community discussion

Top comments from developers on daily.dev.

**@anger** · 0 upvotes

> It seems I had the same idea, but with a different approach. I use Go, with a Git hook to prevent commits containing secrets, and with a self-hosted repository so development teams can share secrets in real time. I'd like to hear your suggestions and improvements. I hope you see potential in it.
>
> [https://github.com/MaximoCoder/Enveil](https://github.com/MaximoCoder/Enveil)

---

Tags: [#security](https://daily.dev/tags/security), [#rust](https://daily.dev/tags/rust), [#encryption](https://daily.dev/tags/encryption), [#secrets-management](https://daily.dev/tags/secrets-management)

[View this post on daily.dev](https://daily.dev/posts/greatscott-enveil-enveil-hide-env-secrets-from-praing-eyes-secrets-live-in-local-encrypted-store-sspqxahku)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"GreatScott/enveil: ENVeil: Hide .env secrets from prAIng eyes: secrets live in local encrypted stores (per project) and are injected directly into apps at runtime, never touching disk as plaintext.","url":"https://daily.dev/posts/greatscott-enveil-enveil-hide-env-secrets-from-praing-eyes-secrets-live-in-local-encrypted-store-sspqxahku","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/greatscott-enveil-enveil-hide-env-secrets-from-praing-eyes-secrets-live-in-local-encrypted-store-sspqxahku"},"datePublished":"2026-02-24T10:52:21.665Z","dateModified":"2026-02-24T10:52:42.435Z","description":"enveil is a Rust CLI tool that protects .env secrets from AI coding tools (Claude Code, Copilot, Cursor, etc.) that can read project files. Instead of storing...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/9935f8df2a4c49de34f78c92c2143e06?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/9935f8df2a4c49de34f78c92c2143e06?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Hacker News","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Hacker News","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn","url":"https://daily.dev/sources/hn"},"commentCount":1,"discussionUrl":"https://daily.dev/posts/greatscott-enveil-enveil-hide-env-secrets-from-praing-eyes-secrets-live-in-local-encrypted-store-sspqxahku","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":1}],"keywords":"security,rust,encryption,secrets-management","timeRequired":"PT7M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Hacker News","item":"https://daily.dev/sources/hn"},{"@type":"ListItem","position":3,"name":"GreatScott/enveil: ENVeil: Hide .env secrets from prAIng eyes: secrets live in local encrypted stores (per project) and are injected directly into apps at runtime, never touching disk as plaintext."}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/greatscott-enveil-enveil-hide-env-secrets-from-praing-eyes-secrets-live-in-local-encrypted-store-sspqxahku","comment":[{"@type":"Comment","text":"It seems I had the same idea, but with a different approach. I use Go, with a Git hook to prevent commits containing secrets, and with a self-hosted repository so development teams can share secrets in real time. I’d like to hear your suggestions and improvements. I hope you see potential in it.\nhttps://github.com/MaximoCoder/Enveil","datePublished":"2026-03-02T04:33:24.717Z","url":"https://daily.dev/posts/sSPQXaHKu#c-Op491BKCQ","author":{"@type":"Person","name":"Maximo Gonzalez Nacianceno","url":"https://daily.dev/anger","image":"https://lh3.googleusercontent.com/a/ACg8ocKZvlSMHrdvNJ5RHKrlFrYzBRK8mSroGX8MZ7AxogcWdY0qW_Pq=s96-c"}}]}
```

