Skip to main content

A real-time debugger for Pipecat

Project description

whisker

PyPI Discord

ᓚᘏᗢ Whisker: A Pipecat Debugger

Whisker is a low-level debugger for the Pipecat voice and multimodal conversational AI framework.

It lets you visualize pipelines and debug frames in real time — so you can see exactly what your bot is thinking and doing.

With Whisker you can:

  • 🗺️ View a live graph of your pipeline
  • ⚡ Watch frame processors flash in real time as frames pass through them
  • 📌 Select a processor to inspect the frames it has handled (both pushed and processed)
  • 🔍 Filter frames by name to quickly find the ones you care about
  • 🧵 Select a frame to trace its full path through the pipeline
  • 💾 Save and load previous sessions for review, collaboration, or troubleshooting

Think of Whisker as trace logging with batteries.

Whisker

🧭 Getting started

Requirements

  • Python 3.11+
  • Pipecat installed
  • Node.js 20+ (for the UI)
  • ngrok (for connecting to the hosted UI)

Install Whisker for Python

uv pip install pipecat-ai-whisker

Add Whisker to your Pipecat pipeline

You can add Whisker to your pipeline by just adding an observer to the pipeline task.

from pipecat_whisker import WhiskerObserver

pipeline = Pipeline(...)

task = PipelineTask(...)

task.add_observer(WhiskerObserver(task.pipeline))

Starting in Pipecat 0.0.99, it is also possible to add Whisker in an unobtrusive way by using an external pipeline task setup file and adding that file to the PIPECAT_SETUP_FILES environment variable.

from pipecat_whisker import WhiskerObserver

from pipecat.pipeline.task import PipelineTask


async def setup_pipeline_task(task: PipelineTask):
    task.add_observer(WhiskerObserver(task.pipeline))

In both cases, this starts the Whisker server that the graphical UI will connect to. By default, the Whisker server runs at:

ws://localhost:9090

🌐 Option A: Use the hosted UI (Recommended)

  1. Expose your local server with ngrok:

    ngrok http 9090
    
  2. Copy the ngrok URL (e.g., your-ngrok-url.ngrok.io)

  3. Open the hosted Whisker UI: https://whisker.pipecat.ai/

  4. Connect to your bot:

    • In the WebSocket URL field, enter: wss://your-ngrok-url.ngrok.io
    • Click connect

🏠 Option B: Run the UI locally

If you prefer to run the UI locally:

  1. Clone the repository:

    git clone https://github.com/pipecat-ai/whisker.git
    
  2. Start the UI:

    cd whisker/ui
    npm install
    npm run dev
    
  3. Connect to http://localhost:5173

The UI will automatically connect to ws://localhost:9090 by default.

💾 Saving sessions

You can also save your sessions to a file, which is helpful for debugging later or sharing with someone for assistance:

whisker = WhiskerObserver(pipeline, file_name="whisker.bin")

Load the file using the Whisker client.

📚 Next steps

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pipecat_ai_whisker-1.0.0.tar.gz (159.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pipecat_ai_whisker-1.0.0-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file pipecat_ai_whisker-1.0.0.tar.gz.

File metadata

  • Download URL: pipecat_ai_whisker-1.0.0.tar.gz
  • Upload date:
  • Size: 159.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pipecat_ai_whisker-1.0.0.tar.gz
Algorithm Hash digest
SHA256 930865013b05ba8cab51e93139a4da07603ceda057e7126402e0e9ca59c86c00
MD5 7329bcf7ce7af35a6b9c6f609e72634c
BLAKE2b-256 81b70c859681ea083a46b79903788e1a426bd546ea52f347e670c8341efb643f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pipecat_ai_whisker-1.0.0.tar.gz:

Publisher: publish.yaml on pipecat-ai/whisker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pipecat_ai_whisker-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pipecat_ai_whisker-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f1e9d2ea059cdddc3b890d0e5470ef2e1623693b92a86a6b7767ac6e2881f595
MD5 ab8e840d9902e142f632ca8c41096429
BLAKE2b-256 e34be8e0777060a8c59a59a7b235cb673af2af39263c2aa9578f8082de6b2890

See more details on using hashes here.

Provenance

The following attestation bundles were made for pipecat_ai_whisker-1.0.0-py3-none-any.whl:

Publisher: publish.yaml on pipecat-ai/whisker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page