Skip to content

Bug: Disabling Tools in config is not respected #1320

Closed

Description

@sroidl-airup

Version Affected 0.3.67

Context
I created a custom mode - Chat - in which I purposefully disabled every tool. In this state, I expect the LLM to be a Chatbot without any context of my project. Eventually, I want to experiment with different MCP tools, so I want a mode which starts with zero tool access.

Issue
Although I disabled all tools per the config

{
  "$schema": "https://opencode.ai/config.json",
  "share": "disabled",
  "autoupdate": false,
  "mode": {
    "chat": {
      "tools": {
        "bash": false,
        "edit": false,
        "write": false,
        "read": false,
        "grep": false,
        "glob": false,
        "list": false,
        "patch": false,
        "todoread": false,
        "todowrite": false,
        "webfetch": false
      }
    }
}

When prompted with: List the top-level directories of the project, the agent can somehow execute the command anyways.

Expectation:
The agent should not have any access and tell me so.

Activity

  1. thdxr commented on Jul 25, 2025

    @thdxr
    Member

    you can see it literally executing the command? or just that it's able to answer? it's able to enaswer this because we do return some environment info in the system prompt which isn't possible to disable right now

  2. self-assigned this
    on Jul 26, 2025
  3. sroidl-airup commented on Jul 28, 2025

    @sroidl-airup
    Author

    I did another try and it seems that it took the information from the system prompt.
    Only after switching to the PLAN mode, it could access the README.md

    Refer to this session on the opencode repository.

    I'll close the issue as it seems to work as intended.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions