From shipshitdev-library
Scaffolds .env.example templates by scanning codebase for process.env usage, validates required variables, documents secrets, and ensures .gitignore excludes .env files. Supports interactive, validate, and scaffold modes.
npx claudepluginhub shipshitdev/skills# Env Setup - Environment Variable Management Scaffold .env files, validate required variables, document secrets. ## Usage ## Workflow ### Phase 1: Discover Required Variables Scan codebase for `process.env.*` usage: Check existing `.env*` files and config files for context. ### Phase 2: Generate .env Templates Create `.env.example` from discovered variables. Group by service: For monorepos, create per-app templates if apps need different vars. ### Phase 3: Validate Check required variables are set and match expected formats: For TypeScript projects, prefer zod-based env...
/env-setupCreates and manages isolated test environments using Docker Compose and Testcontainers for databases, caches, queues. Generates docker-compose files, env vars, and cleanup code.
/env-setupGenerates .env.example from templates or code analysis with categorized vars and comments, creates .env if missing with prompts, verifies .gitignore, adds TypeScript/Python runtime validation.
/env-setupSets up and audits environment variables for a service across local, Railway, and AWS. Generates .env.example, validates required vars, flags missing ones. Supports local, railway, aws, audit modes.
Scaffold .env files, validate required variables, document secrets.
/env-setup # Interactive environment setup
/env-setup --validate # Validate existing .env files
/env-setup --scaffold # Generate .env template files
Scan codebase for process.env.* usage:
grep -r "process.env\." --include="*.ts" --include="*.tsx" --include="*.js" . | grep -v node_modules | sort -u
Check existing .env* files and config files for context.
Create .env.example from discovered variables. Group by service:
# Application
NODE_ENV=development
PORT=3001
# Database (AWS RDS)
DATABASE_URL=postgresql://user:password@host:5432/dbname
# Authentication
AUTH_SECRET=...
# Monitoring
SENTRY_DSN=https://...
# AI / External APIs
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
# AWS
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
AWS_REGION=us-east-1
For monorepos, create per-app templates if apps need different vars.
Check required variables are set and match expected formats:
# Quick check
if [ ! -f .env ]; then echo ".env not found"; exit 1; fi
For TypeScript projects, prefer zod-based env validation at app startup. Fail fast on missing vars.
Never commit: .env, .env.local, .env.production, .env.staging
Always commit: .env.example (template, no real values)
Ensure .gitignore covers all .env* files except .env.example.
For production: use AWS Secrets Manager, Vercel env vars, or platform-native secrets.
process.env.*.env* files.env.example.gitignore excludes .env*