.cursor/skills/sanitize-envrc/SKILL.md
Reads .envrc, creates or updates .envrc.sample with sanitized placeholder values safe for committing, and ensures .envrc is in .gitignore. Use when adding secrets to .envrc, setting up a new project environment, creating a sample env file, protecting secrets from git, or when asked to sanitize, clean, or document environment variables.
npx skillsauth add doesitscript/dotfile-vnext sanitize-envrcInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
.envrc from project root.envrc.sample with secret values replaced by obvious fake values.envrc is in .gitignore — add it if missingA variable is a secret when its name contains (case-insensitive):
KEY, SECRET, TOKEN, PASSWORD, PASS, CREDENTIAL, AUTH, APIKEY, API_KEY
| Variable type | Output in sample |
|---|---|
| Secret variable | "your_VARNAME_here" |
| Boolean-like value (yes, no, true, false, *) | Keep as-is |
| Simple flag variable (non-secret name) | Keep as-is |
| Comment lines | Keep as-is |
| Blank lines | Keep as-is |
Always write this as the first non-blank line:
# Copy this file to .envrc and fill in secret values. Do NOT commit .envrc.
Input .envrc:
# Required for WinRM / Ansible on macOS
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=yes
export no_proxy=*
export APIKEY="sk-proj-abc123..."
export GITHUB_TOKEN="ghp_realtoken"
Output .envrc.sample:
# Copy this file to .envrc and fill in secret values. Do NOT commit .envrc.
# Required for WinRM / Ansible on macOS
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=yes
export no_proxy=*
export APIKEY="your_APIKEY_here"
export GITHUB_TOKEN="your_GITHUB_TOKEN_here"
Search .gitignore for .envrc. If not present, append:
# secrets — do not commit
.envrc
Use Grep to check before appending — never duplicate the entry.
Run git status to confirm .envrc.sample shows as a new/modified file and .envrc does not appear as tracked.
testing
Creates a zip archive from the project root while excluding .git and downloaded dependency/source folders. Use when the user asks to zip a project without git metadata or dependencies, including short trigger prompts like zipprojectroot, @zipprojectroot, archiveproject, or run zipprojectroot.
documentation
Registers remote documentation URLs in project-level .cursor/config.json and processes them for active use. Use when the user provides doc sources, asks to add/index docs, or requests @doc handles with suggested titles.
testing
Stage only related work, exclude unrelated dirty files, and create one or more grouped multiline git commits with clear titles and bodies. Use when the user asks to add and commit current work cleanly, especially in a dirty worktree.
data-ai
Create, refine, close, and reference GitHub issues for concrete brainstorming, resumable work, next-state improvements, and feature follow-ups.