- Home
- Skills
- Rknall
- Claude Skills
- Config Generator
config-generator_skill
31
GitHub Stars
4
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill rknall/claude-skills --skill config-generator- README.md6.3 KB
- service-templates.md15.2 KB
- SKILL.md16.4 KB
- validation-rules.md1.6 KB
Overview
This skill generates and manages service-specific configuration files for GitLab-style stack projects in a ./config directory, using .env as the single source of configuration and ensuring no secrets are stored in config files. It creates nginx, PostgreSQL, Redis, and custom service configs with strict validation for secrets, paths, and Docker best practices. The skill also scaffolds project meta files and synchronizes .env and .env.example.
How this skill works
I inspect the project for an existing ./config directory, .env, .env.example, service directories, and required meta files. I create per-service directories and flat config files (or subfolders when logical), generate templates based on chosen service templates, inject environment-variable placeholders (${VAR}) only, and update .env and .env.example to remain identical. After generation I run syntax, path, secrets, and docker validations and produce a validation report.
When to use it
- Setting up initial ./config directory and per-service configs for a new project
- Generating nginx, PostgreSQL, Redis, or custom service config templates
- Validating existing config files for secrets, path correctness, and Docker best practices
- Syncing .env with .env.example or adding required .env variables for new services
- Preparing configuration artifacts before running docker compose up
Best practices
- Keep all configuration variables in .env and never hardcode secrets in config files
- Ensure .env and .env.example match exactly after any change
- Use Docker secrets for certificates, passwords, and keys; reference them via /run/secrets
- Keep service config directories flat; only add logical subfolders (e.g., nginx/ssl, nginx/conf.d)
- Run syntax and docker validations after changes (nginx -t, redis-server checks, docker-validation skill)
- Verify all referenced filesystem paths and volume mounts exist before deployment
Example use cases
- Create a simple nginx reverse-proxy config and add NGINX_* variables to .env and .env.example
- Generate PostgreSQL basic or production configs with init.sql and required POSTGRES_* variables
- Produce a Redis cache or persistent template and configure REDIS_* variables
- Validate an existing config directory for accidental secrets and produce remediation steps
- Scaffold CLAUDE.md, .gitignore, and .dockerignore and provide a post-generation validation report
FAQ
Treat it as a critical security issue: remove it from the config, store it in ./secrets or a secrets manager, update config to reference the Docker secret, and re-run validation.
How do .env and .env.example remain in sync?
The generator adds any required variables to both files identically; you must update both when adding new variables and run the .env synchronization check before committing.