Skip to content

Feature/interrupt handler aditya gupta#500

Open
adi9336 wants to merge 5 commits intoDark-Sys-Jenkins:mainfrom
adi9336:feature/interrupt-handler-AdityaGupta
Open

Feature/interrupt handler aditya gupta#500
adi9336 wants to merge 5 commits intoDark-Sys-Jenkins:mainfrom
adi9336:feature/interrupt-handler-AdityaGupta

Conversation

@adi9336
Copy link

@adi9336 adi9336 commented Feb 13, 2026

No description provided.

…tion

- Add advanced backchanneling detection to prevent unnecessary interruptions
- Implement smart logic for repeated words (emphasis vs backchanneling)
- Update agent instructions to ignore backchanneling responses
- Add comprehensive ignore words list for acknowledgments and agreements
- Fix audio breaks during interruption verification
- Update README with detailed documentation of new features

Files modified:
- agent_activity.py: Core interruption logic in on_final_transcript()
- interruption_handler.py: Decision-making logic in should_interrupt()
- interrupt_config.py: Word lists and configuration
- basic_agent.py: Agent instructions for LLM behavior
- README.md: Documentation of intelligent interruption system
- Add detailed logging to both RealtimeModel and regular transcript paths
- Implement phrase-based backchanneling detection (e.g., 'i see', 'got it')
- Add word extraction and normalization utilities
- Fix repeated word logic to only interrupt non-ignored words
- Defer interruption decisions to transcript processing for cleaner flow
- Add comprehensive logging for debugging interruption decisions
- Support both single words and multi-word phrases in ignore list
@adi9336
Copy link
Author

adi9336 commented Feb 15, 2026

Title

Context-aware interruption handling + proof

Description

Summary

  • Added context-aware interruption logic to ignore backchannels only when
    the agent is speaking.
  • Preserved immediate interruption for command words (e.g., “stop”,
    “wait”).
  • Added proof artifacts (PROOF.md).

Behavior (per scenarios)

  • Agent speaking + “yeah/ok/hmm”: ignored, agent continues seamlessly.
  • Agent silent + “yeah”: treated as valid input and responded to.
  • Agent speaking + “no stop”: interrupts immediately.
  • Agent speaking + “yeah okay but wait”: interrupts (contains command).

Files

  • livekit-agents/livekit/agents/voice/agent_activity.py
  • README.md
  • proof.md

Notes

  • No VAD kernel changes.
  • Logic is based on agent speaking state and transcript content.

Evidence

See proof/ folder for video and log notes.

If you want a shorter version, say “short PR comment”.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant