Skip to main content
Devin for Terminal is configured through JSON files (with comment support) at the user and project level. These config files control the agent’s model, permissions, MCP servers, and more.

Config File Locations

Path: ~/.config/cognition/config.jsonYour personal defaults that apply across all projects. This is where you set your preferred model, theme, and global permissions.
{
  "agent": { "model": "claude-sonnet-4.5" },
  "permissions": {
    "allow": ["Read(**)", "Exec(git)"]
  }
}

What You Can Configure


Quick Start

The fastest way to get started is to create a .cognition/config.json in your project root:
{
  "permissions": {
    "allow": [
      "Read(**)",
      "Exec(git)",
      "Exec(npm run)"
    ]
  }
}
This pre-approves file reads and common commands so the agent doesn’t prompt you for every action.
You can also configure Devin for Terminal interactively — when the agent asks for permission, choose to save the decision to your project or user config for next time.

Configuration Precedence

When the same setting is defined in multiple places, higher-priority sources win:
PrioritySourceShared?
1 (highest)Organization / Team settingsYes (enterprise)
2Session grants (interactive approvals)No (in-memory)
3Project local (.cognition/config.local.json)No (gitignored)
4Project (.cognition/config.json)Yes (committed)
5 (lowest)User (~/.config/cognition/config.json)No (personal)
Permissions are merged across levels, while scalar values (model, theme) use the highest-priority source.
Organization-level settings cannot be overridden by project or user config. See Configuration Precedence for full details on how merging works.

Limitations

Devin for Terminal does not support .codeiumignore files. If you use Codeium’s autocomplete and have configured ignore patterns, those patterns will not apply to Devin for Terminal.

Learn More