Skip to content

Configuration Overview

Loading model

Kompass loads configuration in this order:

  1. the bundled base config
  2. the first matching home-directory override file
  3. the first matching project override file

For both the home directory and the project root, Kompass checks these file names in order:

  1. .opencode/kompass.jsonc
  2. .opencode/kompass.json
  3. kompass.jsonc
  4. kompass.json

Later layers replace or augment earlier configuration depending on the field.

Main sections

shared

Shared render-time guidance, including:

  • prApprove
  • validation

commands

Controls command availability and template overrides.

  • <name>.enabled
  • <name>.template
  • legacy enabled and templates fields are still recognized for compatibility

agents

Controls bundled agent definitions and enablement.

  • description
  • promptPath
  • permission

tools

Controls built-in tool enablement and per-adapter tool name remapping.

components

Controls reusable template partials and path overrides used during command rendering.

defaults

Shared defaults such as baseBranch.

adapters

Adapter-specific configuration. Today this includes:

  • adapters.opencode.agentMode
  • adapters.opencode.subtaskCommandMode

Tool alias example

You can keep a Kompass tool enabled but expose it under a custom adapter-facing name:

{
"tools": {
"ticket_sync": {
"enabled": true,
"name": "custom_ticket_name"
}
}
}