Skip to content

feat: add Party Mode — multi-persona AI discussion sessions#131

Open
viettranx wants to merge 2 commits intomainfrom
feat/party-mode
Open

feat: add Party Mode — multi-persona AI discussion sessions#131
viettranx wants to merge 2 commits intomainfrom
feat/party-mode

Conversation

@viettranx
Copy link
Contributor

Summary

Party Mode enables multi-persona AI discussions where multiple AI personas debate, brainstorm, or discuss a topic together in a shared session.

  • Backend: party engine with turn-based persona execution, WebSocket RPC methods (party.*), PostgreSQL store + migration 000014
  • Frontend: party page, session view, controls, persona sidebar, start dialog
  • i18n: en/vi/zh translations for all party UI strings

Extracted from PR #124 by @duhd-vnpay. System fixes from that PR have been merged separately in PRs #127, #128, #130.

Known Issues (from review)

  • Authorization check on session handlers needs to be added
  • Some event field naming (snake_case vs camelCase) needs alignment
  • msgBus field in PartyMethods is wired but not yet used for multi-client broadcast

Files

  • New: internal/party/ (engine, prompt, types), internal/gateway/methods/party.go, internal/store/party_store.go, internal/store/pg/party.go, pkg/protocol/party.go, migrations/000014_*, ui/web/src/pages/party/ (6 files), i18n locales (3 files)
  • Modified: cmd/gateway.go, internal/store/stores.go, internal/store/pg/factory.go, ui/web/src/ (protocol, sidebar, routes, constants, i18n)

Test plan

  • go build ./... passes
  • go vet ./... passes
  • Run goclaw migrate up to apply migration 000014
  • Create a party session via Web UI and verify persona turns
  • Verify session persistence across page reloads

Co-authored-by: Du Hoang Dinh duhd-vnpay@users.noreply.github.com

viettranx and others added 2 commits March 11, 2026 08:14
Party Mode enables multi-persona AI discussions where multiple AI
personas debate, brainstorm, or discuss a topic together in a shared
session. Users can create sessions with preset or custom persona teams,
watch personas interact, and interject at any point.

Backend: party engine, WebSocket RPC methods (party.*), PG store,
migration 000014.
Frontend: party page, session view, controls, persona sidebar,
start dialog, i18n (en/vi/zh).

Co-authored-by: Du Hoang Dinh <duhd-vnpay@users.noreply.github.com>
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