Skip to content

Environment Variables

Council respects several environment variables for configuration, testing, and accessibility.

Override the default runtime directory (~/.council/). Used by --ephemeral mode and tests to isolate state.

Default: ~/.council/

Example:

Terminal window
export COUNCIL_HOME=/tmp/council-test
council convene "Review request" --panel tech-review

Override the default data directory (~/Council/) for expert and panel YAML files.

Default: ~/Council/ (or config.paths.dataHome if set in config.yaml)

Example:

Terminal window
export COUNCIL_DATA_HOME=~/my-councils
council expert list

Precedence:

  1. COUNCIL_DATA_HOME environment variable
  2. config.paths.dataHome in ~/.council/config.yaml
  3. Default: ~/Council/

On an interactive terminal, a bare council (no subcommand) launches Council Console, the full-screen TUI, by default. These variables control that behavior.

When set (any non-empty value), a bare council skips the TUI and uses the classic CLI. Equivalent to passing --no-tui. Subcommands (council convene …) are unaffected — they never launch the TUI.

Default: (unset) — bare council launches the TUI on an interactive TTY

Example:

Terminal window
export COUNCIL_NO_TUI=1
council # classic CLI banner + help, no TUI

Legacy opt-in that forces the TUI for a bare council when set to 1. Now that the TUI is the default, this is redundant but still honored so older setups keep working. COUNCIL_NO_TUI and --no-tui take precedence.

Default: (unset)

Example:

Terminal window
COUNCIL_TUI=1 council # force the TUI (redundant with the default)

When set (any non-empty value), disables ANSI color codes in output. Follows the NO_COLOR standard.

Example:

Terminal window
export NO_COLOR=1
council convene "Review this API design" --panel tech-review --format plain

Effect:

  • Color output disabled
  • ASCII charset used (block art retained for banners)
  • Spinner/progress indicators simplified

Force ASCII-only charset. Disables Unicode box-drawing characters and emoji.

Example:

Terminal window
export COUNCIL_ASCII=1
council convene "Review request" --panel tech-review

Use Cases:

  • Legacy terminals without Unicode support
  • Screen readers and accessibility tools
  • Log files and CI environments
  • TERM=dumb is automatically detected

Override the auto-detected path to @github/copilot/npm-loader.js. Council auto-detects the bundled loader; use this only when troubleshooting authentication or installation issues.

Default: Auto-detected from @github/copilot package

Example:

Terminal window
export COPILOT_CLI_PATH=/custom/path/to/npm-loader.js
council doctor

When to Use:

  • Custom Copilot CLI installations
  • Debugging authentication failures
  • Non-standard Node.js module resolution

Standard terminal type variable. Council detects TERM=dumb and automatically switches to ASCII-only charset.

Example:

Terminal window
TERM=dumb council convene "Review request" --panel tech-review

Auto-Detection:

  • TERM=dumb → ASCII charset, no color
  • Modern terminals → Unicode + color