INNER CODE UNIT · Python

_says

feder-cr/Jobs_Applier_AI_Agent_AIHawk · src/aihawk/mcp/server.py:233

def _says(title: str, *, read_only: bool = False, destructive: bool = False,
          open_world: bool = True) -> ToolAnnotations:
    """What a client may assume about a tool before it calls it.

    Every tool declares a title and states BOTH hints, never leaving one out:
    `read_only` (readOnlyHint) for a tool that changes nothing, so a client
    may run it without asking each time, and `destructive` (destructiveHint)
    for one that acts on the page or on a browser, which a client confirms.
    Anything that types, clicks, navigates or closes is `destructive` here: a
    form submitted or a page left behind cannot be undone from this side.
    `open_world` says the tool reaches the live web.

    ⛔ AND UNTIL 0.48.0 THERE WAS A THIRD GROUP, five tools that claimed to be
    the first while going through the wake funnel, which STARTS a real Firefox
    when none is running. A tool that can spawn a browser has modified its
    environment, so `readOnlyHint` was false in fact and true on the wire, and
    a client trusting it ran them unattended. Nothing starts a browser now
    but `browser_open` - every other tool goes through `Work.acting`, which

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…