{
  "markdown": "# Varlock Skill for Claude Code\n\n> Secure-by-default environment variable management. Ensures secrets are **never exposed** in Claude sessions.\n\n## Why This Skill?\n\nWhen working with Claude Code, secrets can accidentally leak into:\n- Terminal output\n- Claude's input/output context\n- Log files or traces\n- Git commits or diffs\n\nThis skill wraps [Varlock](https://varlock.dev) to enforce secure patterns and prevent accidental exposure.\n\n## Installation\n\n### Option A: One-liner (Recommended)\n\n```bash\nmkdir -p ~/.claude/skills/varlock && curl -sSL https://raw.githubusercontent.com/wrsmith108/varlock-claude-skill/main/skills/varlock/SKILL.md -o ~/.claude/skills/varlock/SKILL.md\n```\n\n### Option B: Manual\n\n```bash\ngit clone https://github.com/wrsmith108/varlock-claude-skill /tmp/varlock-skill\ncp -r /tmp/varlock-skill/skills/varlock ~/.claude/skills/\nrm -rf /tmp/varlock-skill\n```\n\n## Prerequisites\n\nInstall the Varlock CLI:\n\n```bash\ncurl -sSfL https://varlock.dev/install.sh | sh -s -- --force-no-brew\nexport PATH=\"$HOME/.varlock/bin:$PATH\"\n```\n\n## Core Principle\n\n**Secrets must NEVER appear in Claude's context.**\n\n| Never Do | Safe Alternative |\n|----------|------------------|\n| `cat .env` | `cat .env.schema` |\n| `echo $SECRET` | `varlock load` |\n| `printenv \\| grep API` | `varlock load \\| grep API` |\n\n## Quick Reference\n\n```bash\n# Validate all secrets (shows masked values)\nvarlock load\n\n# Quiet validation (no output on success)\nvarlock load --quiet\n\n# Run command with secrets injected\nvarlock run -- npm start\n\n# View schema (safe - no values)\ncat .env.schema\n```\n\n## Schema File\n\nCreate `.env.schema` to define variable types and sensitivity:\n\n```bash\n# Global defaults\n# @defaultSensitive=true @defaultRequired=infer\n\n# Public config\n# @type=enum(development,staging,production) @sensitive=false\nNODE_ENV=development\n\n# Sensitive secrets\n# @type=string(startsWith=sk_) @required @sensitive\nSTRIPE_SECRET_KEY=\n\n# @type=url @required @sensitive\nDATABASE_URL=\n```\n\n### Annotations\n\n| Annotation | Effect |\n|------------|--------|\n| `@sensitive` | Value masked in all output |\n| `@sensitive=false` | Value shown (for public keys) |\n| `@required` | Must be present |\n| `@type=string(startsWith=X)` | Prefix validation |\n\n\n## Handling Secret Requests\n\nWhen users ask Claude to:\n\n- **\"Check if API key is set\"** → `varlock load | grep API_KEY`\n- **\"Debug authentication\"** → `varlock load` (validates all)\n- **\"Update a secret\"** → Decline; ask user to update manually\n- **\"Show me .env\"** → `cat .env.schema` instead\n\n## Credits\n\nThis skill wraps [Varlock](https://github.com/dmno-dev/varlock) by [DMNO](https://dmno.dev).\n\n## License\n\nMIT\n",
  "bytes": 2650,
  "sha": "478536b5c648d2a4d14260a414c37671301e37456ccd657ab242a4d6e31741e3",
  "repo_slug": "wrsmith108/varlock-claude-skill",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_wrsmith108_varlock_claude_skill_varlock_c58137ce/readme"
}