Loading...
Loading...
Environment variable management across Vercel, Convex, and other platforms. Invoke for: trailing whitespace issues, cross-platform parity, Invalid character errors, webhook secrets, API key management, production deployment, dev vs prod configuration.
npx skill4agent add phrazzld/claude-config env-var-hygiene\necho# ✅ Use printf, not echo
printf '%s' 'sk_live_xxx' | vercel env add STRIPE_SECRET_KEY production
# ✅ Trim when setting
npx convex env set --prod KEY "$(echo 'value' | tr -d '\n')"
# ❌ Don't use echo directly
echo "sk_live_xxx" | vercel env add KEY production # May add \n# Generate token once
TOKEN=$(openssl rand -hex 32)
# Set on ALL platforms
npx convex env set --prod CONVEX_WEBHOOK_TOKEN "$(printf '%s' "$TOKEN")"
printf '%s' "$TOKEN" | vercel env add CONVEX_WEBHOOK_TOKEN production| Service | Pattern | Example |
|---|---|---|
| Stripe Secret | | |
| Stripe Public | | |
| Stripe Webhook | | |
| Stripe Price | | |
| Clerk Secret | | |
.env.local# Convex
npx convex env list --prod
# Vercel
vercel env ls --environment=productionCONVEX_DEPLOYMENT=prod:xxx npx convex data# ❌ Unreliable
CONVEX_DEPLOYMENT=prod:xxx npx convex data
# ✅ Reliable
npx convex run --prod module:function
npx convex env list --prod# Dev
npx convex env set KEY "value"
# Prod (use --prod flag)
npx convex env set --prod KEY "$(printf '%s' 'value')"# Production
printf '%s' 'value' | vercel env add KEY production
# With explicit environment
vercel env add KEY production --forcenpx convex env list # dev
npx convex env list --prod # prodvercel env ls # all
vercel env ls --environment=production # prod only# Check Convex prod
npx convex env list --prod | while IFS= read -r line; do
if [[ "$line" =~ [[:space:]]$ ]]; then
echo "WARNING: $(echo "$line" | cut -d= -f1) has trailing whitespace"
fi
done# Validate Stripe key format
value=$(npx convex env list --prod | grep "^STRIPE_SECRET_KEY=" | cut -d= -f2-)
[[ "$value" =~ ^sk_(test|live)_[A-Za-z0-9]+$ ]] || echo "Invalid format"references/format-patterns.mdplatform-specifics.mdhygiene-checklist.mdparity-verification.md/pre-deploy/env-parity-check/stripe-check\nSTRIPE_SECRET_KEY