Skip to main content
Kubiya uses a multi-layer configuration system that allows you to define base configurations and override them at different levels for maximum flexibility while maintaining security.

Configuration Layers

Skills use a 4-layer configuration model where each layer can override settings from the previous layer:
1

Layer 1: Variant Defaults

Source: Built-in variant templatesBase configuration provided by the variant you select (Read Only, Full Access, etc.)
2

Layer 2: Skill Instance

Source: Your skill creation/configurationCustom settings you define when creating the skill instance
3

Layer 3: Entity-Level

Source: Team, Agent, or Environment configurationSettings that apply to all skills used by that entity
4

Layer 4: Runtime

Source: Execution context (environment variables, dynamic parameters)Final overrides that apply at execution time

Precedence Rules

Last Layer Wins

When the same setting appears in multiple layers, the highest layer (closest to runtime) takes precedence:

Complete Example


Dynamic Configuration Examples

Using Environment Variables

Reference environment variables in your skill configuration for dynamic behavior:
Setting Environment Variables:
Effective Configuration at Runtime:
Use the {{VAR:default}} syntax to provide fallback values when environment variables aren’t set.

Configuration Validation

What Can Be Overridden

Not all settings can be overridden at every layer. Security settings are strictly controlled:
Security Settings are Locked: Variant security model settings (like enable_save_file on Read Only variants) cannot be overridden at any layer.

Validation Flow

When a configuration override is attempted:

Common Patterns

Pattern 1: Progressive Restriction

Start permissive at skill instance level, then restrict at team/agent levels:
Benefit: Single skill instance supports multiple use cases with different security requirements.

Pattern 2: Environment-Aware Defaults

Adjust behavior based on environment without changing skill definition:

Pattern 3: Team Workspace Isolation

Give each team their own workspace while using shared skill:

Troubleshooting

Problem: Configuration change isn’t being appliedSolutions:
  1. Check Layer Precedence: A higher layer may be overriding your setting
  2. Verify Setting is Overridable: Check if it’s locked by variant
  3. Review Validation Errors: Check logs for validation failures
  4. Confirm Scope: Ensure override is applied to correct entity (team/agent)
Problem: Effective configuration doesn’t match expectationsSolutions:
  1. View Effective Config:
  2. Trace Configuration Layers:
  3. Check Environment Variables: Verify runtime variables are set
  4. Review Inheritance Chain: Variant → Instance → Team → Agent → Runtime
Problem: Configuration override rejected with validation errorSolutions:
  1. Security Violation: Check you’re not trying to override locked settings
  2. Out of Range: Ensure values are within acceptable limits (timeouts, memory, etc.)
  3. Type Mismatch: Verify value types match expected format (string, number, boolean, array)
  4. Permission Denied: Confirm you have rights to set this configuration at this layer
Problem: Variable syntax {{VAR}} not being replacedSolutions:
  1. Check Syntax: Use {{VARIABLE_NAME}} or {{VARIABLE_NAME:default}}
  2. Verify Variable is Set: Check environment where skill executes
  3. Quote Properly: Environment variables in YAML may need quotes
  4. Check Worker Config: Ensure worker has access to environment variables

Best Practices

Use Variables for Environments

Use {{ENV_VAR}} syntax for settings that differ across dev/staging/prod

Set Defaults in Instance

Define sensible defaults at skill instance level, override only when needed

Team-Level for Shared

Use team-level config for settings shared across team agents

Document Overrides

Comment your configuration overrides explaining why they’re needed
Debugging Tip: Use kubiya skill get <skill-id> --effective-config --agent <agent-id> to see the final resolved configuration after all layers are applied.

Variant Configuration

Learn how variants differ in their default configuration

Skill Variants

Understand variant types and when to use each

Built-in Skills

View all available skills and configuration options

Examples

See real-world configuration patterns in action