mirror of
https://github.com/danielmiessler/Fabric.git
synced 2026-01-07 21:44:02 -05:00
YAML Configuration Support
Overview
Fabric now supports YAML configuration files for commonly used options. This allows users to persist settings and share configurations across multiple runs.
Usage
Use the --config flag to specify a YAML configuration file:
fabric --config ~/.config/fabric/config.yaml "Tell me about APIs"
Configuration Precedence
- CLI flags (highest priority)
- YAML config values
- Default values (lowest priority)
Supported Configuration Options
# Model selection
model: gpt-4
modelContextLength: 4096
# Model parameters
temperature: 0.7
topp: 0.9
presencepenalty: 0.0
frequencypenalty: 0.0
seed: 42
# Pattern selection
pattern: analyze # Use pattern name or filename
# Feature flags
stream: true
raw: false
Rules and Behavior
- Only long flag names are supported in YAML (e.g.,
temperaturenot-t) - CLI flags always override YAML values
- Unknown YAML declarations are ignored
- If a declaration appears multiple times in YAML, the last one wins
- The order of YAML declarations doesn't matter
Type Conversions
The following string-to-type conversions are supported:
- String to number:
"42"→42 - String to float:
"42.5"→42.5 - String to boolean:
"true"→true
Example Config
# ~/.config/fabric/config.yaml
model: gpt-4
temperature: 0.8
pattern: analyze
stream: true
topp: 0.95
presencepenalty: 0.1
frequencypenalty: 0.2
CLI Override Example
# Override temperature from config
fabric --config ~/.config/fabric/config.yaml --temperature 0.9 "Query"