Configuration overview
The config root is a flat .overwire/ directory. Every file is plain YAML or JSON, diffable and scriptable. The desktop app edits these files directly; nothing lives in hidden app state.
| Path | Purpose |
|---|---|
settings.yml | Repository owner and Overwire settings. |
variables.yml | Repository variables resolved by ${{ vars.* }}. |
secrets.yml | Secret declarations, optionally with local-only values. |
rulesets.json | Branch rulesets in GitHub’s native export format. |
github/rulesets/*.json | Additional exported rulesets. |
modes/<workflow>.yml | Workflow default mode and per-step overrides. |
mocks/**/*.yml | Mock contracts for uses: steps. |
payloads/<event>.json | Saved event payload overrides. |
dispatch/<workflow>.yml | Saved workflow_dispatch input defaults. |
pull-requests.yml | Local pull request scenarios. |
statuses.yml | External commit statuses and check runs. |
api-mocks.yml | Declarative GitHub API mock routes. |
environments/ | Per-environment variables, secrets, and protection rules. |
instances.yml | Workspace peer list (workspace roots only). |
state/ | Run-derived state. Local-only. |
cache/ | Local workflow cache. Local-only. |
.gitignore | Scaffolded by overwire init: ignores secrets.yml, state/, and cache/. |
Overwire is not affiliated with, endorsed by, or sponsored by GitHub, Inc., Microsoft Corporation, or Docker, Inc. GitHub and GitHub Actions are trademarks of GitHub, Inc.