FreshCtx™

Client-tool protection

FreshCtx + ElevenLabs

Register a consequential ElevenLabs client tool with register_elevenlabs_client_tool() so declared evidence is revalidated inside the handler boundary.

What FreshCtx protects

FreshCtx revalidates the declared customer or account evidence immediately before a booking, payment, or account-update handler starts. A changed record blocks as STALE_REASONING and an unresolved match blocks as UNVERIFIABLE.

Where the pre-action boundary sits

The boundary sits inside the registered client tool, before the application handler runs. Configure the matching tool in the ElevenLabs dashboard with “Wait for response” enabled so the conversation receives the result.

Limitations

  • FreshCtx does not transcribe audio, resolve customer identity, or decide whether two names are semantically equivalent; the application performs that matching and declares the evidence it used.
  • The application owns the event-loop lifecycle required by the ElevenLabs SDK.
  • Transcripts, customer details, booking IDs, credentials, and tool parameters are not copied into FreshCtx objects or audit records.

Installation

install
python -m pip install 'freshctx[elevenlabs]==0.16.0'

Minimal example

ElevenLabs · minimal example
from elevenlabs.conversational_ai.conversation import ClientTools
from freshctx.integrations.elevenlabs import register_elevenlabs_client_tool

client_tools = ClientTools()
register_elevenlabs_client_tool(
    client_tools,
    "confirm_booking",
    confirm_booking,
    depends_on=[customer_decision],
    store=store,
)

Continue

Third-party names and logos are trademarks of their respective owners. Their appearance identifies compatible integration surfaces and does not imply endorsement or partnership.