#12425·onyx

FileReaderTool always disabled in standard (vector-DB-enabled) deployments

Author: AsifKagan8Created Jun 25, 2026Updated Sep 11, 2026
LabelsStale

bug: FileReaderTool.is_available() returns DISABLE_VECTOR_DB, which is False in any standard deployment running OpenSearch or pgvector. As a result, _construct_tools_impl silently skips the tool for every request. Users who upload .xlsx or .csv files in chat are told the tool isn't available, even though the tool itself works correctly.

root cause: backend/onyx/tools/tool_implementations/file_reader/file_reader_tool.py

@classmethod
def is_available(cls, db_session: Session) -> bool:
    # TODO(evan): temporary – gate behind DISABLE_VECTOR_DB until the tool is
    # generalised for standard (vector-DB-enabled) deployments.
    return DISABLE_VECTOR_DB

DISABLE_VECTOR_DB is False in all standard deployments, so this method always returns False. The tool is never constructed, never passed to the LLM, and the LLM reports it has no file reading capability.

Expected behavior

FileReaderTool should be available in standard deployments. It reads from the file store, which is independent of the vector DB.

Fix

@classmethod def is_available(cls, db_session: Session) -> bool: # noqa: ARG003 return True

Version: Confirmed in v4.1.1 through v4.1.7 and current main.