Repository navigation
AI copilot that sits in the call (paid tier, free models first) - #164
Merged
Merged
Conversation
An optional in-call AI agent for one owner, on web, desktop, CLI, API and MCP (plans/MEETING-COPILOT.md). Roofle parity: role presets, live transcript by speaker, suggested next question with jump-to-line, rolling notes (summary, key points, decisions, action items), open questions tracked until answered, key figures and dates, 30-second recap, private "ask the copilot", one-click follow-ups and a conversation review that says when the call is too thin. Everyone in the meeting sees "AI copilot is listening for <name>". - Pro/Team (or admin) only. Free self-hosted open-source models are the default path (Whisper via speaches, qwen2.5 via Ollama); paid providers are the fallback or override: pay as you go at provider cost + 10% from a prepaid CoinPay wallet, or the owner's own Anthropic/OpenAI/ElevenLabs keys (AES-256-GCM at rest). Modes: auto, free, byok, cloud. - Audio rides the existing translation uploads: the copilot is an invisible listener in its own live-translate RoomTranslator, so current clients feed it. - Local models get a bounded JSON schema and every provider's output passes guards (one question per suggestion, length caps, no invented answers). - New: @pairux/meeting-copilot (types, roles, hook, shared panel), API under /api/sessions/:id/copilot and /api/copilot, /api/v1/mcp, /copilot pages, /settings/copilot, `pairux copilot ...` CLI, migration 20261028120000_meeting_copilot, strings in all 19 locales. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
| body: JSON.stringify({ topup: id }), | ||
| }) | ||
| ); | ||
| if (data.checkout_url) window.location.href = data.checkout_url; |
| async function signIn(extra: Partial<CliConfig> = {}) { | ||
| await saveConfig( | ||
| { | ||
| tokens: { accessToken: 'pux_at_x', refreshToken: 'pux_rt_x', expiresAt: Date.now() + 3e6 }, |
ThreatCrush Security Scan52 finding(s) HIGH/CRITICAL: 4 | MEDIUM: 29 | LOW: 19
…and 2 more. Full results in the Security tab. Snippets are redacted; ThreatCrush never prints matched credential material. |
…m-no-tag-length) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
An optional in-call AI agent for one owner, on web, desktop, CLI, API and MCP. PRD:
plans/MEETING-COPILOT.md.What it does (Roofle parity)
Paid tier, free models first
pairux-copilotcompose project.auto,free,byok,cloud.How
RoomTranslator;/translation/feedfeeds both rooms andlisteningcounts both, so existing web/desktop clients feed it unchanged.@pairux/meeting-copilot(types, roles, hook, sharedCopilotPanelfor web + desktop). API:/api/sessions/:id/copilot{,/stream,/ask,/recap,/questions},/api/copilot{,/:id,/:id/follow-ups,/:id/review,/settings,/wallet},/api/billing/copilot-topup, MCP at/api/v1/mcp. Pages:/copilot,/copilot/:id,/settings/copilot. CLI:pairux copilot status|start|stop|watch|notes|ask|recap|followups|review|list|settings|wallet.20261028120000_meeting_copilot(dry-run on prod in a rolled-back transaction: OK). Needs applying by hand on dev2.Verified
next buildOK, full vitest 114 files / 1209 tests pass (32 new copilot tests), i18n parity 38/38 across 19 locales.agent-cli/auth.test.tsloopback tests fail on dev2 locally with code identical to master (green in master CI); leaving CI to arbitrate.🤖 Generated with Claude Code