microsoft/semantic-kernel · error · NotImplementedError

Computer use tool is not implemented yet.

Error message

Computer use tool is not implemented yet.

What it means

Raised by configure_computer_use_tool(), which is a declared static method but unconditionally raises NotImplementedError. The Responses Agent exposes the method signature for API parity, but the computer-use tool is not yet wired up. This is intentional: callers get a clear signal rather than silent behavior.

Source

Thrown at python/semantic_kernel/agents/open_ai/openai_responses_agent.py:720

                - The country field is a two-letter ISO country code, like US.
                - The timezone field is an IANA timezone like America/Seattle.

        Returns:
            A WebSearchToolParam dictionary with any passed-in parameters.
        """
        tool: WebSearchToolParam = {
            "type": "web_search",
        }
        if context_size is not None:
            tool["search_context_size"] = context_size
        if user_location is not None:
            tool["user_location"] = user_location
        return tool

    @staticmethod
    def configure_computer_use_tool() -> ComputerToolParam:
        """Generate the tool definition for computer use."""
        raise NotImplementedError("Computer use tool is not implemented yet.")

    @staticmethod
    def _generate_structured_output_response_format_schema(name: str, schema: dict) -> dict:
        """Mock function to simulate formatting the final schema with 'strict' = True."""
        return {"type": "json_schema", "name": name, "schema": schema, "strict": True}

    @staticmethod
    def configure_response_format(
        response_format: ResponseFormatUnion
        | dict[Literal["type"], Literal["text", "json_object"]]
        | dict[str, Any]
        | type[BaseModel]
        | type
        | None = None,
    ) -> dict[str, Any] | None:
        """Form the response format.

            {

View on GitHub (pinned to c028a0c7dc)

Solutions

  1. Do not call configure_computer_use_tool(); it is not implemented in this version.
  2. Remove the computer-use tool from your tool list until the feature ships.
  3. Check the semantic_kernel changelog/release notes for when computer-use support lands.
  4. If you need computer use now, call the OpenAI Responses API directly outside the agent abstraction.

Example fix

// before
tools = [OpenAIResponsesAgent.configure_computer_use_tool()]

// after
tools = []  # computer use unavailable; omit it
Defensive patterns

Strategy: type-guard

Validate before calling

# There is no valid call; guard against invoking it at all
import semantic_kernel.agents.open_ai.openai_responses_agent as m
assert not hasattr(m.OpenAIResponsesAgent, 'configure_computer_use_tool') or True  # informational

Type guard

def computer_use_available() -> bool:
    return False  # not implemented in current version

Try / catch

try:
    tool = OpenAIResponsesAgent.configure_computer_use_tool()
except NotImplementedError:
    tool = None  # feature not shipped; skip computer use

Prevention

When it happens

Trigger: Any call to OpenAIResponsesAgent.configure_computer_use_tool(). There is no input that succeeds — the method body is solely `raise NotImplementedError(...)`.

Common situations: Copy-pasting tool-configuration code from an OpenAI Assistants/Responses example that includes computer use, or enumerating available tools programmatically and invoking each configurator. Also hit when following docs that preview the API surface.

Related errors


AI-assisted analysis of microsoft/semantic-kernel@c028a0c7dc (2026-08-13). Data as JSON: /api/errors/1584c6ace98c3f82. Report an issue: GitHub.