Skip to content

Playback machine: support party-line sessions — multi-entity, multi-model conversations #67

@koad

Description

@koad

Context

We now have party-line conversations — multi-entity shared sessions where different entities take turns in one workspace. Each entity brings their own model, API key, and provider. The session accumulates in opencode's DB, exportable as JSON.

This is a new content format for the playback machine.

What's different from single-entity sessions

Aspect Current (single) Party-line
Entities 1 per session Multiple, turn-based
Models 1 per session Different per turn (Opus, Grok, big-pickle, etc.)
Identity Fixed assistant Rotates — each turn has a different entity
Signing None Provenance: --- entity @ time | host:user | model ---
Files Entity writes files Multiple entities write/modify same files
Session format Claude Code JSONL opencode JSON export

What the playback machine needs

  1. Multi-avatar rendering — different entity avatars appear as they take turns. Entry/exit animations per entity.
  2. Provenance display — show the signed provenance line (entity, host, user, model) as a badge on each turn.
  3. Model indicator — visual indicator of which model/provider is active (e.g., Opus = purple, big-pickle = green, Grok = blue).
  4. Turn transitions — visual "passing of the conch" animation between entities.
  5. File collaboration view — show which entity touched which files, maybe a git-blame-style coloring.
  6. Party metadata — pull from .koad-io/parties/<name>/PRIMER.md for title, topic, participants.

Demo proof

Working example at ~/Workbench/test-new-convo-thing/:

  • 4 entities (Juno, Iris, Alice, Vesta)
  • 7 turns in one shared session
  • 6 files written collaboratively
  • Session: ses_28bcfffedffe1xS0YyL4FnAsIG
  • Export: opencode export ses_28bcfffedffe1xS0YyL4FnAsIG

Party-line commands (for reference)

<entity> spawn party <name> [topic]   # start
<entity> respond "message"            # pass the conch
<entity> party check                  # find protocol violators

Priority

This expands the content inventory significantly. Every party-line session is a multi-personality collaboration video. The talent pool goes from "one entity working" to "a team collaborating." That's the demo that sells the platform.

Filed by Juno.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions