← Latest papers
💬 NLP

Ghost Tool Calls: Issue-Time Privacy for Speculative Agent Tools

This paper identifies "ghost tool calls" as a privacy vulnerability where speculative tool invocations leak user intent to external observers before an agent commits to a branch, and proposes "Speculative Tool Privacy Contracts" as a runtime abstraction that mitigates this risk by enforcing issue-time policies to alter or suppress arguments and destinations prior to dispatch.

Original authors: Bardia Mohammadi, Lars Klein, Akhil Arora, Laurent Bindschaedler

Published 2026-06-02
📖 4 min read☕ Coffee break read

Original authors: Bardia Mohammadi, Lars Klein, Akhil Arora, Laurent Bindschaedler

Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine you are hiring a very efficient, but slightly over-eager, personal assistant to help you with a tricky problem. Let's say you ask, "What's the penalty for breaking my lease early?"

A normal assistant would think, "Okay, I need to look up tenant laws," search for that, and then tell you the answer.

But a speculative assistant (the kind this paper talks about) is trying to be super fast. It thinks, "I know what the user might need next! Maybe they are looking to move, so I'll search for apartments. Maybe they are worried about money, so I'll check loan rates. And just in case, I'll look up eviction laws too."

It sends out all these requests at the same time while it's still deciding which one is actually the right answer.

The Problem: "Ghost Calls"

Here is the catch: The assistant eventually decides, "Actually, I only needed the tenant law search." It uses that result to answer you. But the other requests—the apartment search and the loan rate check—were sent out to the internet before the assistant decided to cancel them.

The paper calls these abandoned requests "Ghost Tool Calls."

Even though the assistant never used the results, the websites (the "providers") already received the requests. They logged them. They saw that you were looking for apartments and loans. The assistant can't "un-send" these ghosts. The damage is done the moment the request leaves the assistant's brain, not when the assistant decides to use the answer.

The Misunderstanding

Current safety rules are like a bouncer at a club who only checks your ID after you've already entered the building. They ask, "Did you have permission to enter?" but they don't stop you from walking through the door and leaving a footprint on the carpet before you're even admitted.

The paper argues that for privacy, we need to check the request before it leaves the building (the "issue-time"). Once a ghost call hits the internet, it's too late to clean it up.

The Solution: "Privacy Contracts"

The authors propose a new system called Speculative Tool Privacy Contracts. Think of this as a strict "Pre-Flight Checklist" for every single request the assistant wants to send.

Before the assistant sends a request to the outside world, a "Monitor" (the security guard) checks the request against a contract. The contract has a few rules:

  1. Rewrite: If the request says "Search for my specific apartment," the guard changes it to "Search for generic apartments" before sending it out. The website still gets a request, but it doesn't know your specific situation.
  2. Shadow: If the request is too sensitive (like checking loan rates), the guard doesn't send it to the real website at all. Instead, the guard uses a safe, local "dummy" version to get a rough answer. The real website never sees the request.
  3. Wait (Defer): If the assistant isn't sure it needs the request yet (low confidence), the guard holds the request and waits until the assistant is 100% sure. If the assistant changes its mind, the request is never sent.
  4. Block: If the request is forbidden, it's stopped immediately.

What They Found

The researchers tested this system with different "guards" and different types of assistants. Here is what they discovered:

  • Cleaning up after the fact doesn't work: If you try to delete the log after the request was sent, it's too late. The website already saw it.
  • Just saying "Read Only" isn't enough: Even if the assistant only reads data (doesn't change anything), the act of asking the question still reveals your secrets.
  • The "Rewrite" and "Shadow" guards work best: By changing the words before sending or using a local fake version, they successfully stopped the websites from learning your secrets.
  • Speed vs. Privacy: The system can still be fast. The "guards" didn't slow things down much, and they successfully prevented the "ghost" information from leaking.

The Bottom Line

When AI agents try to be fast by guessing what you need next, they accidentally leak your secrets to the internet before they even know if they were right. To fix this, we can't just clean up the mess later. We have to put a filter on the requests before they leave the house, changing or hiding the sensitive parts so the outside world never sees the "ghosts."

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →