add-config

Add configuration keys to Wave Terminal's Go settings struct and metadata.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/marrabld/waveterm --skill add-config-marrabld
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: add-config
Source: https://github.com/marrabld/waveterm/tree/main/.kilocode/skills/add-config
Command: npx skills add https://github.com/marrabld/waveterm --skill add-config-marrabld

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This guide helps developers extend Wave Terminal by adding new configuration settings to its hierarchical config system, enabling customization and per-block overrides.

Core Features & Use Cases

  • Provides a repeatable process to modify Go structs, block metadata, default values, and user-facing docs to introduce a new setting.
  • Ensures proper synchronization with schema generation and frontend binding to support consistent behavior across blocks, connections, and global scope.
  • Use case: when adding a new user-configurable option like a new terminal appearance or behavior toggle, this guide covers code changes, metadata overrides, defaults, and documentation.

Quick Start

Edit the Go settings type to add the new field, update block metadata for overrides, refresh defaults and docs, and run the code generation task.

Frequently Asked Questions about add-config

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

FAQPage Schema
How do I add new configuration settings to Wave Terminal's Go struct system?

Adding new configuration settings requires modifying the Go settings struct, updating block metadata, refreshing default values, and running schema generation. This end-to-end workflow ensures the new setting is properly registered across backend and frontend bindings.

What is the process for enabling per-block configuration overrides in Wave Terminal?

Per-block configuration overrides are enabled by updating block metadata alongside the Go settings struct when adding a new config key. This hierarchical approach allows global settings to be customized at the individual block level for flexible user configuration.

Do I need to update schema generation and frontend bindings when extending Wave Terminal config?

Yes, you need to update schema generation and frontend bindings when extending Wave Terminal config. Synchronizing these components ensures consistent behavior and proper type validation across blocks, connections, and the global configuration scope.

How do I enforce safe defaults when introducing a new terminal appearance setting?

You enforce safe defaults by defining them within the Go settings struct metadata when introducing a new terminal appearance setting. This ensures the application maintains stable behavior even if the user does not explicitly configure the new option.

What limitations exist when modifying Wave Terminal's hierarchical config system?

Modifying the hierarchical config system requires strict adherence to proper naming conventions and safe defaults to avoid breaking existing configurations. Failure to synchronize schema generation and frontend bindings can lead to inconsistent behavior across different scopes.