Claude-skill-registry env-management
Manage environment variables with split .env.client and .env.api structure. Use when adding new env vars, debugging config issues, or setting up environments.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/env-management" ~/.claude/skills/majiayu000-claude-skill-registry-env-management && rm -rf "$T"
manifest:
skills/data/env-management/SKILL.mdsource content
Environment Variables
Split Structure
This project uses split env files (see
docs/PRDs/env-system-refactor.md):
| File | Purpose | Prefix |
|---|---|---|
| Public browser vars | |
| Server secrets | No prefix |
Adding New Variables
Client-side (Public)
- Add to
:.env.clientNEXT_PUBLIC_API_URL=https://api.example.com - Access in code:
const url = process.env.NEXT_PUBLIC_API_URL;
Server-side (Secret)
- Add to
:.env.apiSTRIPE_SECRET_KEY=sk_live_xxx - Access only in server code:
// Only in app/api/*, server/*, or Server Components const key = process.env.STRIPE_SECRET_KEY;
Security Rules
- Never put secrets in
.env.client - Never prefix secrets with
NEXT_PUBLIC_ - Supabase anon key is public (safe for client)
- Supabase service role key is secret (API only)
Local Development
Copy example files:
cp .env.client.example .env.client cp .env.api.example .env.api
Cloudflare Deployment
Set vars in Cloudflare Pages dashboard under Settings > Environment Variables.