mcpbeat Sign in

Configuration Generator Agent Skill

Generate configuration files for applications, services, and infrastructure. Use when: (1) Setting up new projects (package.json, requirements.txt, tsconfig.json), (2) Creating Docker or Kubernetes configurations, (3) Configuring CI/CD pipelines (GitHub Actions, GitLab CI, CircleCI), (4) Setting up web servers (Nginx, Apache), (5) Defining infrastructure as code (Terraform, CloudFormation), (6) Generating linter/formatter configs (ESLint, Prettier, Black). Provides templates and custom-generated configs for diverse tech stacks.

10k tokens
context cost
the whole folder, loaded on every use
6
files
instructions only
0
copies elsewhere
how many repositories repackaged it
141
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/ArabelaTso/Skills-4-SE --skill configuration-generator

The instruction itself

35 sections, as written by the author

Configuration Generator

Generate configuration files for applications, services, and infrastructure across various formats and frameworks.

Quick Start

Use Built-in Templates

Access ready-to-use configuration templates from assets:

# Docker Compose
cat assets/docker-compose.yml

# Kubernetes
cat assets/kubernetes-deployment.yaml

# GitHub Actions
cat assets/github-actions-workflow.yml

Generate Custom Configuration

Specify your requirements to get tailored configuration files.

Common Configuration Types

Application Configurations

Package Managers

Node.js (package.json)

{
  "name": "my-app",
  "version": "1.0.0",
  "scripts": {
    "start": "node index.js",
    "dev": "nodemon index.js",
    "test": "jest",
    "build": "tsc"
  },
  "dependencies": {
    "express": "^4.18.0"
  },
  "devDependencies": {
    "typescript": "^5.0.0",
    "jest": "^29.0.0"
  }
}

Python (requirements.txt)

django==4.2.0
djangorestframework==3.14.0
psycopg2-binary==2.9.5
pytest==7.3.0
black==23.3.0

See app_configs.md for:

  • Package managers (npm, pip, cargo)
  • Build tools (TypeScript, Webpack, Vite)
  • Linters/formatters (ESLint, Prettier, Black)
  • Testing frameworks (Jest, pytest)
  • Environment files (.env, .editorconfig, .gitignore)
Build Configurations

TypeScript (tsconfig.json)

{
  "compilerOptions": {
    "target": "ES2022",
    "module": "commonjs",
    "outDir": "./dist",
    "rootDir": "./src",
    "strict": true,
    "esModuleInterop": true
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules", "dist"]
}

Infrastructure Configurations

Docker

Dockerfile (Multi-stage)

FROM node:18-alpine as builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

FROM node:18-alpine
WORKDIR /app
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/node_modules ./node_modules
USER node
EXPOSE 3000
CMD ["node", "dist/index.js"]

Docker Compose - See assets/docker-compose.yml:

  • Multi-service setup (web, database, cache)
  • Environment variable configuration
  • Volume management
  • Network configuration
Kubernetes

Deployment Configuration - See assets/kubernetes-deployment.yaml:

  • Deployment with replicas
  • ConfigMap and Secret management
  • Service and Ingress configuration
  • Health probes
  • Resource limits

Example Deployment:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web-app
  template:
    spec:
      containers:
      - name: web
        image: myapp:latest
        ports:
        - containerPort: 8000
        resources:
          requests:
            memory: "256Mi"
            cpu: "250m"
          limits:
            memory: "512Mi"
            cpu: "500m"

See infra_configs.md for:

  • Docker and Kubernetes
  • Terraform (AWS, GCP, Azure)
  • CI/CD pipelines
  • Web servers (Nginx, Apache)
CI/CD Pipelines

GitHub Actions - See assets/github-actions-workflow.yml:

  • Test, build, and deploy workflow
  • Service containers (PostgreSQL, Redis)
  • Docker image building
  • Deployment automation

Example Workflow:

name: CI/CD Pipeline

on:
  push:
    branches: [ main ]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-python@v4
        with:
          python-version: '3.11'
      - run: pip install -r requirements.txt
      - run: pytest

Configuration Decision Tree

What type of configuration do you need?

├─ Application Config
│  ├─ Package manager? → package.json, requirements.txt, Cargo.toml
│  ├─ Build tool? → tsconfig.json, webpack.config.js, vite.config.ts
│  ├─ Linter/formatter? → .eslintrc, .prettierrc, pyproject.toml
│  └─ Environment? → .env, .editorconfig, .gitignore
│
├─ Container/Orchestration
│  ├─ Docker? → Dockerfile, docker-compose.yml
│  └─ Kubernetes? → deployment.yaml, service.yaml, ingress.yaml
│
├─ Infrastructure as Code
│  ├─ Terraform? → main.tf, variables.tf, outputs.tf
│  └─ CloudFormation? → template.yaml
│
├─ CI/CD
│  ├─ GitHub Actions? → .github/workflows/ci.yml
│  ├─ GitLab CI? → .gitlab-ci.yml
│  └─ CircleCI? → .circleci/config.yml
│
└─ Web Server
   ├─ Nginx? → nginx.conf
   └─ Apache? → httpd.conf, .htaccess

Generation Approaches

Approach 1: Template-Based

Use pre-built templates from assets/:

When to use:

  • Standard setups
  • Quick prototyping
  • Learning/reference

How:

  • Identify needed template
  • Copy from assets
  • Customize variables
  • Deploy

Example:

# Copy Docker Compose template
cp assets/docker-compose.yml ./

# Edit environment variables
# Deploy
docker-compose up -d

Approach 2: Requirements-Based Generation

Generate from scratch based on specific needs:

When to use:

  • Custom requirements
  • Complex setups
  • Specific tech stack

How:

  • Specify requirements
  • Choose tech stack
  • Define constraints
  • Generate configuration

Example Request: "Generate a GitHub Actions workflow for a Python Django app with PostgreSQL, Redis, and deployment to AWS ECS"

Generated Output: Custom workflow with:

  • Python 3.11 setup
  • PostgreSQL and Redis services
  • Django test suite
  • Docker image build
  • AWS ECS deployment

Approach 3: Hybrid

Combine templates with customization:

When to use:

  • Partially standard setup
  • Template needs modification
  • Best practices + customization

How:

  • Start with template
  • Identify customization points
  • Modify specific sections
  • Validate configuration

Best Practices

1. Use Environment Variables

Separate configuration from code:

Application:

# settings.py
import os

DATABASE_URL = os.getenv('DATABASE_URL')
SECRET_KEY = os.getenv('SECRET_KEY')
DEBUG = os.getenv('DEBUG', 'False') == 'True'

.env file:

DATABASE_URL=postgresql://localhost/mydb
SECRET_KEY=your-secret-key
DEBUG=true

2. Version Control Best Practices

Do commit:

  • .env.example (template)
  • Configuration templates
  • Development configs

Don't commit:

  • .env (secrets)
  • .env.local (local overrides)
  • Production credentials

.gitignore:

.env
.env.local
.env.*.local

3. Validate Configurations

Check syntax before deploying:

# Docker Compose
docker-compose config

# Kubernetes
kubectl apply --dry-run=client -f deployment.yaml

# Terraform
terraform validate

# YAML syntax
yamllint config.yml

4. Document Configuration

Add comments explaining purpose:

# docker-compose.yml
services:
  web:
    # Application server - handles HTTP requests
    image: myapp:latest
    ports:
      # Expose on port 8000 for development
      - "8000:8000"
    environment:
      # Database connection string
      - DATABASE_URL=${DATABASE_URL}

5. Use Sensible Defaults

Provide defaults for optional values:

# Kubernetes ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
  name: app-config
data:
  # Default to info level logging
  LOG_LEVEL: "info"
  # Default connection pool size
  DB_POOL_SIZE: "10"

Common Patterns

Multi-Environment Configuration

Development:

# docker-compose.dev.yml
services:
  web:
    build: .
    volumes:
      - ./app:/app  # Hot reload
    environment:
      - DEBUG=true

Production:

# docker-compose.prod.yml
services:
  web:
    image: registry/myapp:latest
    environment:
      - DEBUG=false
    deploy:
      replicas: 3

Secret Management

Kubernetes Secrets:

apiVersion: v1
kind: Secret
metadata:
  name: app-secrets
type: Opaque
stringData:
  database-url: "postgresql://..."
  api-key: "secret-key"

Docker Compose (with env file):

services:
  web:
    env_file:
      - .env.production

Health Checks

Docker Compose:

services:
  web:
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s

Kubernetes:

livenessProbe:
  httpGet:
    path: /health
    port: 8000
  initialDelaySeconds: 30
  periodSeconds: 10
readinessProbe:
  httpGet:
    path: /ready
    port: 8000
  initialDelaySeconds: 5
  periodSeconds: 5

Complete Example

Request: "Create complete configuration for a Python FastAPI application with PostgreSQL and Redis, using Docker Compose for development and Kubernetes for production"

Generated Configurations:

  • Dockerfile
  • docker-compose.yml (development)
  • requirements.txt
  • kubernetes/deployment.yaml (production)
  • .env.example
  • .github/workflows/deploy.yml

These files work together to provide:

  • Local development environment
  • CI/CD pipeline
  • Production deployment
  • Secret management
  • Health monitoring

Troubleshooting

Configuration Validation Errors

YAML syntax errors:

# Check YAML syntax
python -c "import yaml; yaml.safe_load(open('config.yml'))"

# Or use yamllint
yamllint config.yml

Docker Compose issues:

# Validate and view resolved config
docker-compose config

# Check for errors
docker-compose config --quiet

Environment Variable Issues

Missing variables:

# List all required variables
grep -o '\${[^}]*}' docker-compose.yml

# Check if variable is set
echo $DATABASE_URL

Port Conflicts

Find process using port:

# Linux/macOS
lsof -i :8000

# Windows
netstat -ano | findstr :8000

Reference Materials

Application Configs

See app_configs.md for complete templates:

  • Package managers (package.json, requirements.txt, Pipfile, Cargo.toml)
  • Build tools (tsconfig.json, webpack.config.js, vite.config.ts)
  • Linters and formatters (.eslintrc, .prettierrc, .flake8, pyproject.toml)
  • Testing frameworks (jest.config.js, pytest.ini)
  • Environment files (.env.example, .editorconfig, .gitignore)

Infrastructure Configs

See infra_configs.md for:

  • Docker (Dockerfile multi-stage, docker-compose.yml, .dockerignore)
  • Kubernetes (Deployment, Service, Ingress, ConfigMap, Secret, HPA)
  • Terraform (AWS, GCP, Azure infrastructure)
  • CI/CD (GitHub Actions, GitLab CI, CircleCI)
  • Web servers (Nginx, Apache configuration)

Other skills for the same job

different authors, same section of the catalogue
Azure Kubernetes Automatic Readiness
by microsoft
vendor ×3

Assess Kubernetes workloads and cluster configuration for AKS Automatic compatibility. Identifies incompatibilities, generates fixes, and guides migration from AKS Standard to AKS Automatic. WHEN: migrate to AKS Automatic, check AKS Automatic readiness, validate manifests for Automatic, assess cluster for Automatic compatibility, fix deployment for Automatic compatibility, identify AKS Automatic migration blockers, is my cluster ready for AKS Automatic.

13k tokens
Capacity
by microsoft
vendor ×3

Discovers available Azure OpenAI model capacity across regions and projects. Analyzes quota limits, compares availability, and recommends optimal deployment locations based on capacity requirements. USE FOR: find capacity, check quota, where can I deploy, capacity discovery, best region for capacity, multi-project capacity search, quota analysis, model availability, region comparison, check TPM availability. DO NOT USE FOR: actual deployment (hand off to preset or customize after discovery), quota increase requests (direct user to Azure Portal), listing existing deployments.

6k tokens scripts
Customize
by microsoft
vendor ×3

Interactive guided deployment flow for Azure OpenAI models with full customization control. Step-by-step selection of model version, SKU (GlobalStandard/Standard/ProvisionedManaged), capacity, RAI policy (content filter), and advanced options (dynamic quota, priority processing, spillover). USE FOR: custom deployment, customize model deployment, choose version, select SKU, set capacity, configure content filter, RAI policy, deployment options, detailed deployment, advanced deployment, PTU deployment, provisioned throughput. DO NOT USE FOR: quick deployment to optimal region (use preset).

8k tokens
Deploy Model
by microsoft
vendor ×3

Unified Azure OpenAI model deployment skill with intelligent intent-based routing. Handles quick preset deployments, fully customized deployments (version/SKU/capacity/RAI policy), and capacity discovery across regions and projects. USE FOR: deploy model, deploy gpt, create deployment, model deployment, deploy openai model, set up model, provision model, find capacity, check model availability, where can I deploy, best region for model, capacity analysis. DO NOT USE FOR: listing existing deployments (use foundry_models_deployments_list MCP tool), deleting deployments, agent creation (use agent/create), project creation (use project/create).

26k tokens scripts
Preset
by microsoft
vendor ×3

Intelligently deploys Azure OpenAI models to optimal regions by analyzing capacity across all available regions. Automatically checks current region first and shows alternatives if needed. USE FOR: quick deployment, optimal region, best region, automatic region selection, fast setup, multi-region capacity check, high availability deployment, deploy to best location. DO NOT USE FOR: custom SKU selection (use customize), specific version selection (use customize), custom capacity configuration (use customize), PTU deployments (use customize).

9k tokens
Lamindb
by christophacham
×3

This skill should be used when working with LaminDB, an open-source data framework for biology that makes data queryable, traceable, reproducible, and FAIR. Use when managing biological datasets (scRNA-seq, spatial, flow cytometry, etc.), tracking computational workflows, curating and validating data with biological ontologies, building data lakehouses, or ensuring data lineage and reproducibility in biological research. Covers data management, annotation, ontologies (genes, cell types, diseases, tissues), schema validation, integrations with workflow managers (Nextflow, Snakemake) and MLOps platforms (W&B, MLflow), and deployment strategies.

22k tokens
Latchbio Integration
by christophacham
×3

Latch platform for bioinformatics workflows. Build pipelines with Latch SDK, @workflow/@task decorators, deploy serverless workflows, LatchFile/LatchDir, Nextflow/Snakemake integration.

12k tokens
Modal
by christophacham
×3

Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.

17k tokens

How to use it

Copy the folder

Take arabelatso/configuration-generator from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference pip. Without those the skill loads but fails at the first command.