adding-config

Declare and validate Juju charm configuration options in charmcraft.yaml.

1|Updated Feb 8, 2026
One-click install
npx skills add https://github.com/tonyandrewmeyer/cantrip --skill adding-config
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: adding-config
Source: https://github.com/tonyandrewmeyer/cantrip/tree/main/src/cantrip/skills/adding-config
Command: npx skills add https://github.com/tonyandrewmeyer/cantrip --skill adding-config

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Configuring Juju charms can be error-prone and time-consuming. This skill helps operators declare, validate, and apply charm configuration options safely, reducing misconfigurations and deployment failures.

Core Features & Use Cases

  • Declarative config declarations in charmcraft.yaml with types, defaults, and descriptions
  • Early validation in config-changed to catch invalid configurations and block faulty deployments
  • Idempotent application of config to both Pebble-based workloads and machine charms, with clear status handling
  • Testable workflows and example scenarios to guide operators through config changes

Quick Start

Describe the charm's config options you want to declare and validate, and I'll generate a safe config workflow.

Frequently Asked Questions about adding-config

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I validate Juju charm config options safely before deployment?

You can validate Juju charm config safely by applying early validation logic in the config-changed event handler to catch invalid configurations and block faulty deployments before they affect your workload.

What is the best way to declare configuration options in charmcraft.yaml?

Declare configuration options in charmcraft.yaml using a declarative approach that specifies types, defaults, and descriptions for each charm config option to ensure safe and structured validation.

How do I apply Juju charm config changes to Pebble-based workloads idempotently?

Apply Juju charm config changes to Pebble-based workloads idempotently by validating options and applying changes with clear status handling, ensuring config state is preserved without duplicate operations.

Does this config validation approach work for both machine charms and Pebble-based charms?

Yes, this config validation approach supports both Pebble-based workloads and machine charms, applying idempotent runtime configuration changes and preserving config state across both charm types.

Why does my Juju charm config-changed event fail to catch invalid configurations?

Your config-changed event likely lacks early validation logic to catch invalid configurations, which this approach solves by validating options immediately during the config-changed event to block faulty deployments.