Skip to content

Feature request: per-call session scope for voice-call plugin #45280

Description

@pondcountry

Problem

The voice-call plugin keys sessions by caller phone number (voice:${normalizedPhone} in response-generator.ts). This means all calls from the same number share conversation history, causing the AI to "remember" previous calls — referencing prior appointments, caller details, etc.

For use cases like a phone receptionist/booking agent, each call should be treated as a completely independent interaction with no memory of prior calls.

Current Workaround

Patching response-generator.ts to use voice:call:${callId} instead of voice:${normalizedPhone} as the session key. This works but gets overwritten on every update.

Proposed Solution

Add a sessionScope config option to the voice-call plugin:

{
  plugins: {
    entries: {
      "voice-call": {
        config: {
          sessionScope: "per-call",  // "per-call" | "per-phone" (default)
        }
      }
    }
  }
}
  • per-phone (default): Current behavior — sessions keyed by phone number, history persists across calls. Useful for personal assistant use cases.
  • per-call: Sessions keyed by call ID — each call starts fresh with zero history. Useful for receptionist/booking/IVR use cases.

Context

Running a koi pond service receptionist that books consultations. The per-phone session caused the AI to reference prior test calls and appointments when it should treat every caller as brand new.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions