#6305·odysseus

Add configurable tool approval mode

Author: DracieVajkoCreated Sep 15, 2026Updated Sep 15, 2026
Labelsenhancementready for review

Prerequisites

  • I searched open issues and this has not already been proposed.
  • I searched discussions and this is not already being debated there.
  • This is a concrete, actionable proposal — not a vague "it would be nice if..." request.

Area

Chat / Agent

Problem or Motivation

Odysseus currently has tool approval behaviour that is effectively controlled by the existing environment variable ODYSSEUS_AUTO_APPROVE_TOOLS, while administrators do not have a clear setting in the UI to choose the desired approval behaviour.

This makes it difficult to switch between a normal approval workflow and automatic tool execution without changing the deployment environment and restarting the application. For self-hosted deployments, an administrator may want to keep approval prompts enabled by default, but temporarily or permanently allow enabled agent tools to run without prompting.

A configurable setting would make this behaviour accessible from the existing Agent Tools settings while preserving the current environment-variable override for deployments that rely on it.

Proposed Solution

Proposed Solution Add an admin-configurable Tool approval setting under Settings → Agent Tools with two options:

  • Always ask — preserve the existing approval behaviour and prompt before tool execution.
  • Auto-approve tools — skip the tool approval prompt for enabled agent tools.

The setting should be persisted through the existing settings API and default to Always ask.

Proposed persisted value:

json
{
  "tool_approval_mode": "ask"
}

Supported values:

ask
auto

The existing environment variable should remain supported:

ODYSSEUS_AUTO_APPROVE_TOOLS=true

When the environment variable is enabled, it continues to act as an explicit deployment-level override and forces auto-approval regardless of the UI setting.

The change should only bypass the approval prompt; existing tool/security validation should remain active.


### Alternatives Considered

```md
1. Continue using only `ODYSSEUS_AUTO_APPROVE_TOOLS`
   
   This works for self-hosted deployments but requires editing the deployment environment and restarting the application. It also provides no visible indication of the current approval mode in the UI.

2. Add a separate toggle instead of a two-state setting
   
   A toggle would be simpler, but explicit `Always ask` / `Auto-approve tools` labels make the security behaviour clearer and avoid ambiguity.

3. Remove the existing environment variable and replace it with the UI setting
   
   This would break existing self-hosted configurations. Keeping the environment variable preserves backwards c

### Alternatives Considered

_No response_

### Prior Art / Related Issues

No directly related issue was found. This proposal extends the existing `ODYSSEUS_AUTO_APPROVE_TOOLS` deployment behaviour with an administrator-facing setting in the Agent Tools UI.

### Are you willing to implement this?

Yes — I can open a PR