Skip to main content

config

Configure Era governance rules and settings.

Usage

era-code config [options]

Options

OptionDescription
-g, --globalEdit global config (~/.era/governance.yaml)
-l, --localEdit local config (.era/governance.local.yaml, gitignored)
--listShow current effective configuration
--set <key=value>Set a config value
--get <key>Get a config value
-q, --quietNo output (for scripting)

Configuration Scopes

Settings cascade from global to local, with later scopes overriding earlier ones:

ScopeFilePurpose
Global~/.era/governance.yamlUser defaults across all projects
Project.era/governance.yamlProject settings (committed)
Local.era/governance.local.yamlPersonal overrides (gitignored)

Settings

default_agent

Choose the default agent for new conversations.

ValueDescription
planStrategic planning agent (default)
orchestrationMain coding agent
# Set default agent
era-code config --set settings.default_agent=orchestration

# Get current value
era-code config --get settings.default_agent

Changes apply on next era-code start.

audit_mode

Enable logging of all governance decisions.

era-code config --set settings.audit_mode=true

Governance Rules

Control which commands are allowed or blocked. Rules are organized by category (kubernetes, helm, docker, git, etc.).

# Allow kubectl apply
era-code config --set rules.kubectl-apply=allow

# Block docker push
era-code config --set rules.docker-push=deny

# Get a rule's current state
era-code config --get rules.kubectl-apply

Interactive Mode

Running era-code config without options opens an interactive tree view where you can:

  • Navigate with arrow keys
  • Toggle settings with space/enter
  • Expand/collapse categories
  • View detailed info for each setting

Examples

List all settings

era-code config --list

Set global defaults

era-code config --global --set settings.default_agent=orchestration

Override for local development

era-code config --local --set rules.kubectl-apply=allow