Agent skill

Loki Config Generator

by akin-ozer in akin-ozer/cc-devops-skills

Generate/create Loki configs — ingester, querier, compactor, ruler, S3/GCS/Azure backends.

Apache-2.0Auto-check passedDevOps & Cloud

Install Loki Config Generator

skills CLI
$ npx skills add akin-ozer/cc-devops-skills --skill loki-config-generator -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install akin-ozer/cc-devops-skills loki-config-generator --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/akin-ozer/cc-devops-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/devops-skills-plugin/skills/loki-config-generator .claude/skills/loki-config-generator && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
loki-config-generator
GitHub stars
320
Token cost
~4.6k tokens
SKILL.md length
998 words
Files
18 (incl. scripts, references)
Skills in repo
30
Repo updated
First seen
Licence
Apache-2.0

At a glance

Generate/create Loki configs — ingester, querier, compactor, ruler, S3/GCS/Azure backends.

  • Works in 12 steps: Gather Requirements → Schema Configuration (CRITICAL) → Storage Configuration → …
  • Tasks that involve File uploads and storage
  • SKILL.md covers Overview, When to Use, Generation Methods and Documentation Lookup, plus 3 more sections
  • Runs Python scripts from its folder; calls python3, helm and docker; reaches grafana.github.io

What it does

Loki Config Generator is an agent skill from akin-ozer/cc-devops-skills. Generate/create Loki configs — ingester, querier, compactor, ruler, S3/GCS/Azure backends.

Its SKILL.md is about 4.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 20 other files, including scripts and reference files (for example `examples/grafana-alloy-daemonset.yaml`, `examples/kubernetes-helm-values.yaml` and `examples/microservices-s3.yaml`).

It sits in DevOps & Cloud, covering File uploads and storage and Container orchestration. It works with Microsoft Azure, OpenTelemetry, Grafana and Kubernetes. The repository describes itself as: DevOps skills for Claude Code and Codex. The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve File uploads and storage
  • Tasks that involve Container orchestration

Example prompts

  • “/loki-config-generator”

Requirements

  • Python 3
  • Docker

Workflow steps

12 steps, taken from the step headings in SKILL.md.

  1. Gather Requirements
  2. Schema Configuration (CRITICAL)
  3. Storage Configuration
  4. Component Configuration
  5. Limits Configuration
  6. Server & Auth
  7. OTLP Ingestion (Loki 3.0+)
  8. Caching
  9. Advanced Features
  10. Ruler (Alerting)
  11. Loki 3.6 Features
  12. Validate Configuration (REQUIRED)

What it can do on your machine

Read from SKILL.md and the folder at commit 276af75. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • helm
    • docker

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • grafana.github.io

    Also links to:

    • grafana.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Loki Config Generator loads about 4.6k tokens when it runs, and up to ~17k if it reads all its reference files. Until then it costs about 28 tokens; SKILL.md has 998 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~28
When it runs · the whole SKILL.md, loaded when a task matches
~4.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~17k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from akin-ozer/cc-devops-skills at commit 276af75, republished under its Apache-2.0 licence (© akin-ozer). 998 words, ~4,646 tokens.

Download SKILL.mdSave it as .claude/skills/loki-config-generator/SKILL.md (or your agent's skills folder). This skill also uses 17 other files; get the full folder from GitHub.
name
loki-config-generator
description
Generate/create Loki configs — ingester, querier, compactor, ruler, S3/GCS/Azure backends.

Loki Configuration Generator

Overview

Generate production-ready Grafana Loki server configurations with best practices. Supports monolithic, simple scalable, and microservices deployment modes with S3, GCS, Azure, or filesystem storage.

Current Stable: Loki 3.6.2 (November 2025) Important: Promtail deprecated in 3.4 - use Grafana Alloy instead. See examples/grafana-alloy.alloy for the Alloy pipeline and examples/grafana-alloy-daemonset.yaml for the Kubernetes deployment.

When to Use

Invoke when: deploying Loki, creating configs from scratch, migrating to Loki, implementing multi-tenant logging, configuring storage backends, or optimizing existing deployments.


Generation Methods

Use scripts/generate_config.py for consistent, validated configurations:

bash
# Simple Scalable with S3 (production)
python3 scripts/generate_config.py \
  --mode simple-scalable \
  --storage s3 \
  --bucket my-loki-bucket \
  --region us-east-1 \
  --retention-days 30 \
  --otlp-enabled \
  --output loki-config.yaml

# Monolithic with filesystem (development)
python3 scripts/generate_config.py \
  --mode monolithic \
  --storage filesystem \
  --no-auth-enabled \
  --output loki-dev.yaml

# Production with Thanos storage (Loki 3.4+)
python3 scripts/generate_config.py \
  --mode simple-scalable \
  --storage s3 \
  --thanos-storage \
  --otlp-enabled \
  --time-sharding \
  --output loki-thanos.yaml

Script Options:

OptionDescription
--modemonolithic, simple-scalable, microservices
--storagefilesystem, s3, gcs, azure
--auth-enabled / --no-auth-enabledExplicitly enable/disable auth
--otlp-enabledEnable OTLP ingestion configuration
--thanos-storageUse Thanos object storage client (3.4+, cloud backends)
--time-shardingEnable out-of-order ingestion (simple-scalable)
--rulerEnable alerting/recording rules (not monolithic)
--horizontal-compactormain/worker mode (simple-scalable, 3.6+)
--zone-awarenessEnable multi-AZ placement safeguards
--limits-dry-runLog limit rejections without enforcing
Method 2: Manual Configuration

Follow the staged workflow below when script generation doesn't meet specific requirements or when learning the configuration structure.

Output Formats

For Kubernetes deployments, generate BOTH formats:

  1. Native Loki config (loki-config.yaml) - For ConfigMap or direct use
  2. Helm values (values.yaml) - For Helm chart deployments

See examples/kubernetes-helm-values.yaml for Helm format.


Documentation Lookup

REQUIRED - Use Context7 MCP for:

  • Configuring features from Loki 3.4+ (Thanos storage, time sharding)
  • Configuring features from Loki 3.6+ (horizontal compactor, enforced labels)
  • Bloom filter configuration (complex, experimental)
  • Custom OTLP attribute mappings beyond standard patterns
  • Troubleshooting configuration errors

OPTIONAL - Skip documentation lookup for:

  • Standard deployment modes (monolithic, simple-scalable)
  • Basic storage configuration (S3, GCS, Azure, filesystem)
  • Default limits and component settings
  • Configurations covered in references/ directory
Context7 MCP (preferred)
resolve-library-id: "grafana loki"
get-library-docs: /websites/grafana_loki, topic: [component]

Example topics: storage_config, limits_config, otlp, compactor, ruler, bloom

Web Search Fallback

Use when Context7 unavailable: "Grafana Loki 3.6 [component] configuration documentation site:grafana.com"


Configuration Workflow

Stage 1: Gather Requirements

Deployment Mode:

ModeScaleUse Case
Monolithic<100GB/dayTesting, development
Simple Scalable100GB-1TB/dayProduction
Microservices>1TB/dayLarge-scale, multi-tenant

Storage Backend: S3, GCS, Azure Blob, Filesystem, MinIO

Key Questions: Expected log volume? Retention period? Multi-tenancy needed? High availability requirements? Kubernetes deployment?

Ask the user directly if required information is missing.

Stage 2: Schema Configuration (CRITICAL)

For all new deployments (Loki 2.9+), use TSDB with v13 schema:

yaml
schema_config:
  configs:
    - from: "2025-01-01"  # Use deployment date
      store: tsdb
      object_store: s3     # s3, gcs, azure, filesystem
      schema: v13
      index:
        prefix: loki_index_
        period: 24h

Key: Schema cannot change after deployment without migration.

Stage 3: Storage Configuration

S3:

yaml
common:
  storage:
    s3:
      s3: s3://us-east-1/loki-bucket
      s3forcepathstyle: false

GCS: gcs: { bucket_name: loki-bucket } Azure: azure: { container_name: loki-container, account_name: ${AZURE_ACCOUNT_NAME} } Filesystem: filesystem: { chunks_directory: /loki/chunks, rules_directory: /loki/rules }

Stage 4: Component Configuration

Ingester:

yaml
ingester:
  chunk_encoding: snappy
  chunk_idle_period: 30m
  max_chunk_age: 2h
  chunk_target_size: 1572864  # 1.5MB
  lifecycler:
    ring:
      replication_factor: 3  # 3 for production

Querier:

yaml
querier:
  max_concurrent: 4
  query_timeout: 1m

Compactor:

yaml
compactor:
  working_directory: /loki/compactor
  compaction_interval: 10m
  retention_enabled: true
  retention_delete_delay: 2h
Stage 5: Limits Configuration
yaml
limits_config:
  ingestion_rate_mb: 10
  ingestion_burst_size_mb: 20
  max_streams_per_user: 10000
  max_entries_limit_per_query: 5000
  max_query_length: 721h
  retention_period: 30d
  allow_structured_metadata: true
  volume_enabled: true
Stage 6: Server & Auth
yaml
server:
  http_listen_port: 3100
  grpc_listen_port: 9096
  log_level: info

auth_enabled: true  # false for single-tenant
Stage 7: OTLP Ingestion (Loki 3.0+)

Native OpenTelemetry ingestion - use otlphttp exporter (NOT deprecated lokiexporter):

yaml
limits_config:
  allow_structured_metadata: true
  otlp_config:
    resource_attributes:
      attributes_config:
        - action: index_label  # Low-cardinality only!
          attributes: [service.name, service.namespace, deployment.environment]
        - action: structured_metadata  # High-cardinality
          attributes: [k8s.pod.name, service.instance.id]

Actions: index_label (searchable, low-cardinality), structured_metadata (queryable), drop

⚠️ NEVER use k8s.pod.name as index_label - use structured_metadata instead.

OTel Collector:

yaml
exporters:
  otlphttp:
    endpoint: http://loki:3100/otlp
Stage 8: Caching
yaml
chunk_store_config:
  chunk_cache_config:
    memcached_client:
      host: memcached-chunks
      timeout: 500ms

query_range:
  cache_results: true
  results_cache:
    cache:
      memcached_client:
        host: memcached-results
Stage 9: Advanced Features

Pattern Ingester (3.0+):

yaml
pattern_ingester:
  enabled: true

Bloom Filters (Experimental, 3.3+): Only for >75TB/month deployments. Works on structured metadata only. See examples/ for config.

Time Sharding (3.4+): For out-of-order ingestion:

yaml
limits_config:
  shard_streams:
    time_sharding_enabled: true

Thanos Storage (3.4+): New storage client, opt-in now, default later:

yaml
storage_config:
  use_thanos_objstore: true
  object_store:
    s3:
      bucket_name: my-bucket
      endpoint: s3.us-west-2.amazonaws.com
Stage 10: Ruler (Alerting)
yaml
ruler:
  storage:
    type: s3
    s3: { bucket_name: loki-ruler }
  alertmanager_url: http://alertmanager:9093
  enable_api: true
  enable_sharding: true
Stage 11: Loki 3.6 Features
  • Horizontally Scalable Compactor: horizontal_scaling_mode: main|worker
  • Policy-Based Enforced Labels: enforced_labels: [service.name]
  • FluentBit v4: structured_metadata parameter support
Stage 12: Validate Configuration (REQUIRED)

Always validate before deployment:

bash
# Syntax and parameter validation
loki -config.file=loki-config.yaml -verify-config

# Print resolved configuration (shows defaults)
loki -config.file=loki-config.yaml -print-config-stderr 2>&1 | head -100

# Dry-run with Docker (if Loki not installed locally)
docker run --rm -v $(pwd)/loki-config.yaml:/etc/loki/config.yaml \
  grafana/loki:3.6.2 -config.file=/etc/loki/config.yaml -verify-config

Validation Checklist:

  • No syntax errors from -verify-config
  • Schema uses tsdb and v13
  • replication_factor: 3 for production
  • auth_enabled: true if multi-tenant
  • Storage credentials/IAM configured
  • Retention period matches requirements

Production Checklist

High Availability Requirements

Zone-Aware Replication (CRITICAL for production multi-AZ deployments):

When using replication_factor: 3, ALWAYS enable zone-awareness for multi-AZ deployments:

yaml
ingester:
  lifecycler:
    ring:
      replication_factor: 3
      zone_awareness_enabled: true  # CRITICAL for multi-AZ

# Set zone via environment variable or config
# Each pod should set its zone based on node topology
common:
  instance_availability_zone: ${AVAILABILITY_ZONE}

Why: Without zone-awareness, all 3 replicas may land in the same AZ. If that AZ fails, you lose data.

Kubernetes Implementation:

yaml
# In Helm values or pod spec
env:
  - name: AVAILABILITY_ZONE
    valueFrom:
      fieldRef:
        fieldPath: metadata.labels['topology.kubernetes.io/zone']
Show full SKILL.md (404 more words)Show less
TLS Configuration (Production Required)

Enable TLS for all inter-component and client communication:

yaml
server:
  http_tls_config:
    cert_file: /etc/loki/tls/tls.crt
    key_file: /etc/loki/tls/tls.key
    client_ca_file: /etc/loki/tls/ca.crt  # For mTLS
  grpc_tls_config:
    cert_file: /etc/loki/tls/tls.crt
    key_file: /etc/loki/tls/tls.key
    client_ca_file: /etc/loki/tls/ca.crt

See examples/production-tls.yaml for complete TLS configuration.

Production Checklist Summary
RequirementSettingRequired For
replication_factor: 3common blockAll production
zone_awareness_enabled: trueingester.lifecycler.ringMulti-AZ
auth_enabled: trueroot levelMulti-tenant
TLS enabledserver blockAll production
IAM roles (not keys)storage configCloud storage
Caching enabledchunk_store_config, query_rangePerformance
Pattern ingesterpattern_ingester.enabledObservability
Retention configuredcompactor + limits_configCost control

Monitoring Recommendations

Key Metrics to Monitor

Configure Prometheus to scrape Loki metrics and alert on these critical indicators:

yaml
# Prometheus scrape config
- job_name: 'loki'
  static_configs:
    - targets: ['loki:3100']
Critical Alerts
yaml
groups:
  - name: loki-critical
    rules:
      # Ingestion failures
      - alert: LokiIngestionFailures
        expr: sum(rate(loki_distributor_ingester_append_failures_total[5m])) > 0
        for: 5m
        labels:
          severity: critical
        annotations:
          summary: "Loki ingestion failures detected"

      # High stream cardinality (performance killer)
      - alert: LokiHighStreamCardinality
        expr: loki_ingester_memory_streams > 100000
        for: 10m
        labels:
          severity: warning
        annotations:
          summary: "High stream cardinality - review labels"

      # Compaction not running (retention broken)
      - alert: LokiCompactionStalled
        expr: time() - loki_compactor_last_successful_run_timestamp_seconds > 7200
        for: 5m
        labels:
          severity: critical
        annotations:
          summary: "Loki compaction stalled - retention not enforced"

      # Query latency
      - alert: LokiSlowQueries
        expr: histogram_quantile(0.99, sum(rate(loki_request_duration_seconds_bucket{route=~"loki_api_v1_query.*"}[5m])) by (le)) > 30
        for: 10m
        labels:
          severity: warning
        annotations:
          summary: "Loki query P99 latency > 30s"

      # Ingester memory pressure
      - alert: LokiIngesterMemoryHigh
        expr: container_memory_usage_bytes{container="ingester"} / container_spec_memory_limit_bytes{container="ingester"} > 0.8
        for: 10m
        labels:
          severity: warning
        annotations:
          summary: "Loki ingester memory usage > 80%"
Key Metrics Reference
MetricDescriptionAction Threshold
loki_ingester_memory_streamsActive streams in memory>100k: review cardinality
loki_distributor_ingester_append_failures_totalIngestion failures>0: investigate immediately
loki_request_duration_secondsQuery latencyP99 >30s: add caching/queriers
loki_ingester_chunks_flushed_totalChunk flush rateLow rate: check ingester health
loki_compactor_last_successful_run_timestamp_secondsLast compaction>2h ago: compaction broken
Grafana Dashboard

Import official Loki dashboards:

  • Dashboard ID: 13407 - Loki Logs
  • Dashboard ID: 14055 - Loki Operational

Log Collection with Grafana Alloy

Promtail is deprecated (support ends Feb 2026). Use Grafana Alloy for new deployments.

Basic Alloy Configuration

See examples/grafana-alloy.alloy for the Alloy pipeline and examples/grafana-alloy-daemonset.yaml for the Kubernetes deployment.

alloy
// Kubernetes log discovery
discovery.kubernetes "pods" {
  role = "pod"
}

// Relabeling for Kubernetes metadata
discovery.relabel "pods" {
  targets = discovery.kubernetes.pods.targets

  rule {
    source_labels = ["__meta_kubernetes_namespace"]
    target_label  = "namespace"
  }
  rule {
    source_labels = ["__meta_kubernetes_pod_name"]
    target_label  = "pod"
  }
  rule {
    source_labels = ["__meta_kubernetes_pod_container_name"]
    target_label  = "container"
  }
}

// Log collection
loki.source.kubernetes "pods" {
  targets    = discovery.relabel.pods.output
  forward_to = [loki.write.default.receiver]
}

// Send to Loki
loki.write "default" {
  endpoint {
    url = "http://loki-gateway.loki.svc.cluster.local/loki/api/v1/push"

    // For multi-tenant
    tenant_id = "default"
  }
}
Migration from Promtail
bash
# Convert Promtail config to Alloy
alloy convert --source-format=promtail --output=alloy-config.alloy promtail.yaml

Complete Examples

See examples/ directory for full configurations:

  • monolithic-filesystem.yaml - Development/testing
  • simple-scalable-s3.yaml - Production with S3
  • microservices-s3.yaml - Large-scale distributed
  • multi-tenant.yaml - Multi-tenant with per-tenant limits
  • production-tls.yaml - TLS-enabled production config
  • grafana-alloy.alloy - Log collection pipeline with Alloy
  • grafana-alloy-daemonset.yaml - Kubernetes DaemonSet for Alloy
  • kubernetes-helm-values.yaml - Helm chart values

Minimal Monolithic:

yaml
auth_enabled: false
server:
  http_listen_port: 3100

common:
  path_prefix: /loki
  storage:
    filesystem:
      chunks_directory: /loki/chunks
      rules_directory: /loki/rules
  replication_factor: 1
  ring:
    kvstore:
      store: inmemory

schema_config:
  configs:
    - from: 2025-01-01
      store: tsdb
      object_store: filesystem
      schema: v13
      index:
        prefix: loki_index_
        period: 24h

limits_config:
  retention_period: 30d
  allow_structured_metadata: true

compactor:
  working_directory: /loki/compactor
  retention_enabled: true

Helm Deployment

bash
helm repo add grafana https://grafana.github.io/helm-charts
helm install loki grafana/loki -f values.yaml

Generate both native config and Helm values for Kubernetes deployments.

yaml
# values.yaml
deploymentMode: SimpleScalable

loki:
  schemaConfig:
    configs:
      - from: "2025-01-01"
        store: tsdb
        object_store: s3
        schema: v13
        index:
          prefix: loki_index_
          period: 24h
  limits_config:
    retention_period: 30d
    allow_structured_metadata: true
  # Zone awareness for HA
  ingester:
    lifecycler:
      ring:
        zone_awareness_enabled: true

backend:
  replicas: 3
  # Spread across zones
  topologySpreadConstraints:
    - maxSkew: 1
      topologyKey: topology.kubernetes.io/zone
      whenUnsatisfiable: DoNotSchedule
read:
  replicas: 3
write:
  replicas: 3

Best Practices

Performance:

  • chunk_encoding: snappy, chunk_target_size: 1572864
  • Enable caching (chunks, results)
  • parallelise_shardable_queries: true

Security:

  • auth_enabled: true with reverse proxy auth
  • IAM roles for cloud storage (never hardcode keys)
  • TLS for all communications (see Production Checklist)

Reliability:

  • replication_factor: 3 for production
  • zone_awareness_enabled: true for multi-AZ (see Production Checklist)
  • Persistent volumes for ingesters
  • Monitor ingestion rate and query latency (see Monitoring section)

Limits: Set ingestion_rate_mb, max_streams_per_user to prevent overload


Common Issues

IssueSolution
High ingester memoryReduce max_streams_per_user, lower chunk_idle_period
Slow queriesIncrease max_concurrent, enable parallelization, add caching
Ingestion failuresCheck ingestion_rate_mb, verify storage connectivity
Storage growing fastEnable retention, check compression, review cardinality
Data loss in AZ failureEnable zone_awareness_enabled: true
Config validation failsRun loki -verify-config, check YAML syntax

Deprecated (Migrate Away)

  • boltdb-shipper → tsdb
  • lokiexporter → otlphttp
  • Promtail → Grafana Alloy (support ends Feb 2026)

Resources

scripts/generate_config.py - Generate configs programmatically (RECOMMENDED) examples/ - Complete configuration examples for all modes references/ - Full parameter reference and best practices

  • logql-generator - LogQL query generation
  • fluentbit-generator - Log collection to Loki

© akin-ozer, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 17 other files (scripts, references) in devops-skills-plugin/skills/loki-config-generator of akin-ozer/cc-devops-skills.

  • SKILL.md
  • examples/grafana-alloy-daemonset.yaml
  • examples/grafana-alloy.alloy
  • examples/kubernetes-helm-values.yaml
  • examples/microservices-s3.yaml
  • examples/monolithic-filesystem.yaml
  • examples/multi-tenant.yaml
  • examples/production-tls.yaml
  • examples/simple-scalable-gcs.yaml
  • examples/simple-scalable-s3.yaml
  • examples/thanos-storage-azure.yaml
  • examples/thanos-storage-gcs.yaml
  • examples/thanos-storage-s3.yaml
  • examples/with-ruler.yaml
  • references/best_practices.md
  • references/loki_config_reference.md
  • scripts/generate_config.py
  • scripts/test_generate_config.py

Open the folder on GitHubat commit 276af75

Compare with similar skills

Loki Config Generator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Loki Config Generator compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Loki Config Generator this skillakin-ozer/cc-devops-skills320—~4.6kAutomated safety check: PassApache-2.0
Mimirgrafana/skills282—~1.2kAutomated safety check: PassApache-2.0
Tempografana/skills282—~1.4kAutomated safety check: PassApache-2.0
Aspire MonitoringCommunityToolkit/Aspire627—~3.5kAutomated safety check: PassMIT
Alloygrafana/skills282—~1.3kAutomated safety check: PassApache-2.0
Beylagrafana/skills282—~1.1kAutomated safety check: PassApache-2.0

Similar skills

  • Mimir

    grafana/skills

    Official

    Stand up Grafana Mimir for horizontally scalable, multi-tenant, long-term Prometheus + OTLP metrics storage.

    282 GitHub stars~1.2k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Tempo

    grafana/skills

    Official

    Stand up Grafana Tempo as a cost-efficient distributed-tracing backend that only needs object storage, and write TraceQL queries against it.

    282 GitHub stars~1.4k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Aspire Monitoring

    CommunityToolkit/Aspire

    ANALYSIS SKILL - Observe Aspire apps: logs, traces, metrics, resource state, telemetry export, browser telemetry, and the standalone dashboard.

    627 GitHub stars~3.5k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Alloy

    grafana/skills

    Official

    Build a unified telemetry pipeline with Grafana Alloy — one OpenTelemetry-compatible binary that collects metrics, logs, traces, and profiles and ships to Grafana Cloud / Prometheus / Loki / Tempo /…

    282 GitHub stars~1.3k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Beyla

    grafana/skills

    Official

    Auto-instrument an application's HTTP / gRPC / DB traffic with Grafana Beyla eBPF — no code changes, no SDK, no restart.

    282 GitHub stars~1.1k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Infrastructure

    grafana/skills

    Official

    Ship Kubernetes, host, container, and cloud-provider telemetry into Grafana Cloud — k8s-monitoring Helm chart for K8s clusters (metrics + logs + traces + events + cost), Alloy…

    282 GitHub stars~1.2k tokensUpdated yesterday
    DevOps & CloudAuto-check passed

More from akin-ozer/cc-devops-skills

All 30 skills in this repo
  • GitHub Actions Generator

    akin-ozer/cc-devops-skills

    Create, generate, or scaffold GitHub Actions workflows, action.yml, or .github/workflows CI/CD pipelines.

    320 GitHub stars~3.1k tokensUpdated 2 mo ago
    Auto-check passed
  • Helm Generator

    akin-ozer/cc-devops-skills

    Create, scaffold, or generate Helm charts, Chart.yaml, values.yaml, templates, helpers.

    320 GitHub stars~2.9k tokensUpdated 2 mo ago
    Auto-check passed
  • Jenkinsfile Generator

    akin-ozer/cc-devops-skills

    Generate/create/scaffold Jenkinsfile — declarative, scripted, shared library, CI/CD pipelines.

    320 GitHub stars~3.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Dockerfile Validator

    akin-ozer/cc-devops-skills

    Validate, lint, audit, or scan a Dockerfile for security and best practices.

    320 GitHub stars~2.3k tokensUpdated 2 mo ago
    Auto-check passed
  • GitHub Actions Validator

    akin-ozer/cc-devops-skills

    Validate, lint, audit, fix GitHub Actions workflows (.github/workflows).

    320 GitHub stars~4.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Jenkinsfile Validator

    akin-ozer/cc-devops-skills

    Validate, lint, audit, or check Jenkinsfiles and shared libraries.

    320 GitHub stars~2.7k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Loki Config Generator

What does Loki Config Generator do?

Generate/create Loki configs — ingester, querier, compactor, ruler, S3/GCS/Azure backends. Loki Config Generator is an agent skill from akin-ozer/cc-devops-skills. Generate/create Loki configs — ingester, querier, compactor, ruler, S3/GCS/Azure backends.

When should I use Loki Config Generator?

Loki Config Generator fits situations like: tasks that involve File uploads and storage; tasks that involve Container orchestration.

How do I install Loki Config Generator in Claude Code?

Run `npx skills add akin-ozer/cc-devops-skills --skill loki-config-generator -a claude-code`. Or copy the skill folder (devops-skills-plugin/skills/loki-config-generator in akin-ozer/cc-devops-skills) into .claude/skills/loki-config-generator in your project. Claude Code loads it when a task matches its description.

How do I install Loki Config Generator in Codex?

Run `npx skills add akin-ozer/cc-devops-skills --skill loki-config-generator -a codex`. Or copy the skill folder (devops-skills-plugin/skills/loki-config-generator in akin-ozer/cc-devops-skills) into .agents/skills/loki-config-generator in your project. Codex loads it when a task matches its description.

Can I use Loki Config Generator in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add akin-ozer/cc-devops-skills --skill loki-config-generator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/loki-config-generator, .gemini/skills/loki-config-generator, .github/skills/loki-config-generator and .opencode/skills/loki-config-generator in your project.

What does Loki Config Generator need to run?

Going by SKILL.md and its folder, Loki Config Generator needs Python for the scripts in its folder and the command-line tools its instructions call (python3, helm and docker). Our summary lists: Python 3; Docker.

Does Loki Config Generator access the network?

SKILL.md names 2 domains. In commands or code: grafana.github.io; the agent is likely to contact it when it follows the instructions. As links in the text: grafana.com. This is read from the text; nothing was executed.

Is Loki Config Generator safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Loki Config Generator use?

Loki Config Generator is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Loki Config Generator use?

About 4.6k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 12k tokens, read only when the agent opens those files.

What are the alternatives to Loki Config Generator?

Skills that share tags, products or a category with Loki Config Generator: Mimir (grafana/skills, 282 stars), Tempo (grafana/skills, 282 stars), Aspire Monitoring (CommunityToolkit/Aspire, 627 stars) and Alloy (grafana/skills, 282 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Loki Config Generator?

akin-ozer (a GitHub user) maintains it in akin-ozer/cc-devops-skills, which has 320 GitHub stars. The repository holds 30 skills in this directory. The repository was last updated on July 26, 2026.

Source: akin-ozer/cc-devops-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.