Documentation Index
Fetch the complete documentation index at: https://docs.praxis-ai.com/llms.txt
Use this file to discover all available pages before exploring further.
May 2026
Conversation History — see what RAG / KAG retrieved during each turn: Every history record now persists a structured, per-turn list of the file segments retrieval pulled in (file name, relevance %, original chunk length, mode RAG vs KAG, and a preview of the chunk text). It shows up as a new RAG Search Results panel — sibling to Thinking Details and Tool Details — in the chat list, the public
/views/history/:id viewer, and the admin History inspector. Confidential rows owned by another user in the same institution surface a 🔒 with the chunk text pre-redacted to its first ~100 characters. The list endpoints don’t ship the bulk payload — they emit only hasRagSearch, ragSearchCount, and the mode (RAG / KAG) — and the full body is lazy-fetched via GET /api/{user,admin}/history/:id/ragSearch when you expand the section, so history pages stay snappy even when retrieval pulled a lot of segments. Same lazy pattern applies to Thinking Details, whose list payload now also includes a thinkingCount so the summary reads Thinking Details: (3) before you expand instead of an ellipsis.Conversation History — Thinking / RAG / Tool details unified + per-entry copy buttons: The three detail panels share the same shell everywhere they appear (chat list, single-record viewers, admin inspector) — rounded card + divider rows + consistent typography — and each entry has a small copy-to-clipboard chip (duplicate icon → green check on success) so you can grab a thinking round, a retrieved chunk, or a tool response in one click. The Tool Details panel also auto-fetches the full arguments + responses the moment you open it, removing the previous “More Details…” follow-up click. Live in-flight Thinking during streaming now aligns with the assistant column and uses the same card layout, so the live view and the persisted view look identical.File Preview — Processing section split into a live RAG / KAG flow visualization: The right-side Asset Info → Processing section in the File Preview modal is now organized into two color-banded sub-blocks — 🔵 RAG · embeddings pipeline and 🟣 KAG · knowledge-graph extraction — so it’s immediately clear which model, which timings and which token spend belong to which leg of the pipeline. Inside each sub-block a new vertical-stepper timeline renders the file’s flow as connected dots: Enqueued → Started → Completed, with a duration pill on each connector (9ms in queue, 8.5s processing) and the real timestamp next to each step. Past steps are filled with a white ✓; the currently-in-flight step pulses; future steps render as a hollow outlined circle with an italic “pending” so the destination is visible even mid-process. A failed run replaces the terminal ✓ with a red ✗ and flips the label to Failed. Each model row now carries a small provider chip next to the model id — e.g. text-embedding-3-small [openai] and google/gemma-4-31b-it [openrouter] — so admins can tell at a glance which catalog routes a file went through. KAG’s chip uses the authoritative server-stamped provider (kagInlineProcessor records this when it resolves a model, so re-runs after a runtime-config change accurately show which provider each lease used); the previous version of this chip was stuck on the fallback string and reported the wrong provider for OpenRouter-routed jobs. A Total tokens (RAG + KAG) and Cumulative time (RAG + KAG) pair appears at the top of Processing when both phases have run, with the per-phase breakdown in parentheses. The KAG sidebar section was trimmed accordingly — Model / Provider / Tokens moved to the Processing block, so the KPI cards (Entities / Relations / Segments) and the Records: N line are no longer crowded by data that lives elsewhere. The header on the KAG sidebar section now shows the segment count as Knowledge Graph - KAG (N), matching the RAG section’s convention. The Properties section’s Uploader row was renamed to Owner to match the rest of the platform’s nomenclature.File Preview — KAG progress + sub-phase visible while in flight: The Processing > KAG sub-block now surfaces a Progress: N% row while a knowledge-graph job is actively running, computed from progress.percent (kagInlineProcessor stamps this as chunks complete). The granular sub-phase (or the extractor’s progress message) renders inside the Started→Completed connector on the timeline as processing — <phase> while in flight; once done it disappears because the terminal ✓ on Completed conveys the outcome — no redundant “Phase: done” row. The same treatment applies to RAG: when ingestion is mid-pipeline (extract/chunk/sanitize/embed) the current sub-phase is visible in the connector; once finished the dot is the only signal needed.Display Thinking Execution & Display Tool Execution — hide live indicators without losing the audit trail: Two new toggles in Your Profile → Conversation (and on the admin instance edit page) let admins hide the live streaming surfaces independently of the persisted History blocks. Display Thinking Execution controls the 💡 lightbulb block that appears in real time as the model is reasoning; Display Tool Execution controls the inline ⚙️ Running… / 🔧 Ran ✓ indicators interleaved with the streamed response. Disabling either one keeps the live conversation surface minimal but leaves the existing Display Thinking Details / Display Tools Details toggles in charge of what gets surfaced on saved History records — so admins can ship a clean streaming UX without losing the reasoning / tool trace in the audit history. Both default to on, so the change is a no-op for existing institutions until an admin opts in.File Preview — Edit-mode redesign for the segments editor: Entering Edit mode on a file now hides the right-hand Asset Info sidebar so the segments editor takes the full modal width. Inside the editor the per-field card chrome is gone — Title, Summary, Rights and the segments themselves render as a single inline form under two paired section headers (File Properties / RAG Segments), so the eye flows top-to-bottom without box noise. A new Rights group lets admins toggle the file between Private and Public and, for files that live in an instance or account vault, flip an additional Confidential switch (owner-only retrieval). Each toggle saves immediately and the file-grid badges stay in sync. The footer Update button moved up to the right edge of the File Properties divider — directly above the Title and Summary fields it commits — and + Add Segment moved down to a full-width dashed button right after the last segment, where the eye naturally lands when you finish reading the list. The footer collapses entirely when it has nothing left to show. View mode (the non-editing preview) keeps the Asset Info sidebar visible, and Title + Description gain inline pencil-icon edits there so admins with files.edit can patch visible metadata without dropping into the full segments editor. Each segment now shows a Update action (pending-edit-only) next to Sanitize / Delete, all three centred in the segment header — saving a single segment posts that one and shows a “Segment N updated” confirmation in the footer, separate from the bulk Update which still commits every dirty field at once. Save Modifications also no longer needed a workaround: typing into a segment textarea now actually persists keystrokes (the parent modal was a non-observed function component, so MobX updates inside the segments tree were never triggering a re-render — a missing reactive bridge that React then silently reverted as the next render). On narrow viewports the segment header’s status pills collapse to icon-only (Sanitized / Embedded / Code-heavy / Sanitize-failed keep their colour + tooltip) and the character counter switches from 664 / 8,000 to 664 / 8k, so the header stays on one row down to phone widths. The “Tags / AI Tags” rows in Asset Info were removed — they were dead UI with no backend producer; tag editing will return as a real feature once the schema is wired.Voice dictation — microphone stays available after transcription: The mic button in the chat input no longer disappears once dictated text lands in the textarea. After you read through what you said you can click the mic again to add more — additional dictations are appended (with a separating space) to whatever is already there, so you can build up a longer message in multiple passes before sending. Submit and mic now sit side by side once there is content. When the transcript comes back, focus and the caret jump to the end of the textarea so you can keep typing or hit Enter right away.Files — Properties and Edit Segments merged into File Preview: Two old per-file dialogs (Properties and Edit Segments) collapse into the existing File Preview window, removing the back-and-forth of opening one to see metadata and another to edit AI search segments. The right side of the preview now has a collapsible Asset Info sidebar grouped into Properties / Processing / Knowledge — RAG segments. The Title is the first row in Properties. A pinnable rail with hover-expand matches the Pria and Files-search sidebar pattern (click the pin to keep it open; otherwise it expands on hover and collapses when the cursor leaves). The Edit Segments menu action opens the preview directly in edit mode — the body becomes the segments editor, title and description gain pencil icons for inline editing, and an action toolbar (Reprocess / Swap Asset / Delete) sits in the header. Copy file name and Copy link buttons next to the existing Download button flip to a green check on success. The header icon uses the file’s thumbnail when one was baked during processing (with a small fix to several places that were rendering a /file.png fallback for image uploads because of a double-base64-encoded thumbnail). The fullscreen toggle now expands the whole preview window (header + sidebar + content all grow together) instead of stripping the chrome away. Action dialogs launched from inside the preview (Reprocess, Swap Asset, Delete) reliably sit on top of the preview now — they had been rendering at the right z-index but were being trapped in a parent stacking context.Files — Swap Asset (replace the file without rebuilding RAG): A new Swap Asset action in the file’s ⋮ menu lets you replace the physical bytes under an existing file record without regenerating embeddings. The published file URL stays byte-identical so anything that already links to the file keeps working, and the existing knowledge (RAG embeddings, summary, title) is preserved — useful when a source file has been wiped from disk and the embeddings are still good, or when you want to refresh the downloadable copy while keeping the indexed content stable. The dialog accepts either a file upload or a URL the server fetches; an info panel explains the link / knowledge preservation and an amber panel makes it explicit that embeddings will NOT be regenerated. When you want the new content to be discoverable in retrieval, run Reprocess Content from the same menu afterwards. The action is hidden when the file is in the terminal “missing on disk AND no embeddings” state (Delete is the only valid path there), and shows an orange recommended dot when the source file is missing but embeddings remain.Files — Vault Health pills are now the filter: The Vault Health pills at the top of the panel (needs reprocess, errors, needs delete, missing, unoptimized, stale >90d, never used) double as the filter UI. Clicking a pill scopes the vault listing to that category; clicking again clears. The dedicated “Filter Missing Only” button is gone. The Vault Summary box on the left rail now shows a single Health: <grade> chip (A–F across every vault you can access — Personal-only for users without instance access) that scrolls to the per-tab Vault Health section when clicked. A new needs delete category counts files that are missing on disk AND have no embeddings — the only valid action is Delete.Files — sidebar polish, lightbox maximize, RAG tuning, Tree of Knowledge promoted: A second pass on the Files modal lands a handful of user-visible improvements on top of the original content-search ship. The sidebar now has a pinnable rail (chevron at top expands; pin icon flips between blue active when pinned and neutral when hover-expanded — same idiom Pria’s main sidebar uses) with internal vertical scroll when content overflows. The Search section was redesigned into a “Search Type” segmented control (File Name / AI Content) + multi-line textarea with leading magnifier + dedicated Search button — typing no longer auto-fires; only the button (or Cmd/Ctrl+Enter) triggers, and a clear-X button next to the textarea wipes the query and snaps the page back. Search Type and the new All Vaults checkbox (search the user’s full scope vs the active vault only) both persist to localStorage. Content-search result cards now show a “found in” chip with the vault avatar (user picture / institution picture / account picture) + collection chip; clicking a hit navigates to that exact vault + collection before highlighting the file. Admins with files.edit on the institution get inline RAG Tuning sliders (Search Affinity %, Max Articles) below the result panel — save persists to the institution doc and immediately re-runs the active search so the threshold change is visible. Tree of Knowledge is no longer hiding inside the View-mode switch; it’s promoted to a top-level Display selector at the top of the sidebar (Files vs Tree). The Lightbox gained a Maximize / Restore toggle (lg+) that flips between configured width and full-bleed (the first child is forced to fill on maximize so a sized panel still expands). At narrow viewports every lightbox is now full-bleed corner-to-corner (no padding, square corners). Collection cards reflow to full width at <sm so the strip no longer overflows; the collection list inside the lightbox is height-capped with internal scroll so it can never push the file grid below the fold. File status pills (“Excluded” and “Private”) were removed from the grid card, the list / table view, and the compact card — gray backgrounds + a new small icon strip under the thumbnail (blue check = Included, green open lock = Public, purple closed lock = Confidential) carry the same information without the row of noise. Performance: removed react-table-legacy’s built-in 300 ms cell width transition, throttled the ResizeObserver-driven grid update to ~10 Hz, and dropped a width transition on the sidebar — together these stop the file list from “smoothly extending” during resizes / loads and cut the resize CPU cost noticeably.Files — content search across your IP Vault: The Search box at the top of the Files modal grew a name/content mode toggle (Aa / sparkles). In name mode (default) you keep the existing filename substring filter. Switch to content mode and the box becomes Enter-to-search: pressing Enter runs a FAISS + KAG query across the same files your assistants pull from (personal vault + current institution + account-shared siblings) and replaces the file grid with a scored-snippet results panel. Each result card shows the file name, a relevance badge (green/yellow/red), and a 200-character snippet of the matched chunk with your query terms highlighted; confidential files owned by another user in your institution still surface a row + score but the snippet is replaced by 🔒 Private content matched — open the file to view so the chunk text never leaks. Clicking a result includes the file in your selection and snaps the grid to it with a brief blue-ring flash. A ”← Back to N search results” banner stays above the grid so you can flip back to the panel without re-running the query — switching tabs or entering a sub-collection discards the cache (the scope changed). Display = Included re-runs the search constrained to your currently-selected files; Excluded is treated as “no constraint” and Sort is hidden in the results view. Rate-limited per user at 20 searches/minute. The Refresh button in content mode re-runs the search rather than refetching the grid.Files — responsive sidebar layout on large screens: On viewports ≥1024px (lg:), the Search / Display / Sort controls now stack vertically in a 240px left rail next to the file grid instead of a horizontal toolbar above it. Add Files pins to the bottom of the rail. The vault tabs (My Files / Instance / Account) stay above the scroll section in the right column. Smaller viewports keep the existing horizontal toolbar — no mobile regression. As part of this pass, the Display segmented control, Sort pill, and the new search-mode pill all adopted the same visual treatment as the existing View Mode switcher (blue-active, gray-100 container, transparent inactive) and proper radiogroup ARIA so screen readers announce the active option.Knowledge picker — split into two clear axes (Retrieval Mode + Search Only): The Knowledge submenu in the [+] action menu and the Knowledge tab in Your Profile are reorganised. The four mutually-exclusive radio options (Normal / KAG Fusion / Search Only / Disabled) are replaced by a three-option Retrieval Mode radio — Disabled, RAG Only, RAG + KAG Fusion — and a separate Search Only checkbox that is only meaningful when retrieval is on. The previous “KAG Only” label was misleading: KAG is always an augmentation on top of RAG (the dense vector leg runs unconditionally; KAG adds a knowledge-graph leg that is fused with RAG via Reciprocal Rank Fusion). The new copy makes that explicit. Search Only is now expressed as an orthogonal toggle so you can mix it with either RAG Only or RAG + KAG Fusion to return the raw vault chunks (no LLM rewrite) for either retrieval flavour. The badge on the Knowledge parent row reflects the active state — Disabled (red), Search Only (amber), RAG + KAG (blue) — and the Knowledge tab in Your Profile surfaces the same coloured dot. No backend changes — the same three user-profile flags (ragIgnore, ragKagMode, ragOnlySearch) are written from the two new controls; existing profiles map across without any migration step. The K section of the glossary gained dedicated entries for KAG and Knowledge Modes.Voice dictation — new in-place recorder with live waveform: The microphone button in the chat input has been redesigned. Tapping it now opens an in-place dictation widget right where the textarea used to be — a pulsing red dot, an MM:SS timer, a live waveform of your voice, and Cancel / Confirm buttons. Recording stops automatically at the 2-minute mark (with a 10-second warning), and on Confirm the audio is sent to Pria’s transcription service in a single shot. The new flow uses the institution-configured speech-to-text engine (Voxtral / Whisper / etc.) instead of the browser-native Web Speech API, so accuracy and language coverage match what the platform already uses for audio notes and voice mode. Nothing about the recording is stored after transcription — no Upload, no History, no embeddings. Browser support: Chrome / Firefox / Edge / Safari (Safari falls back to MP4 audio automatically). When you confirm, the transcribed text is appended to whatever you’ve already typed in the textarea.Your Data Rights (GDPR controls): A new Your Data Rights subsection at the bottom of My Profile → Your Data lets you see, export, and delete the personal data Pria has about you in one place. The stats card shows how many personal dialogues, vault files (with total size), and memory entries the platform is holding. The Export my data button kicks off a background job that builds a ZIP — README.txt, dialogues.csv, uploads.csv, memory.csv, plus an assets/ directory with the original upload binaries — and emails you a signed download link valid for 30 days. The Delete my data button opens a confirmation dialog where you choose whether to forget your Dialogues (history rows flagged as forgotten), your Personal files in VAULT (soft-deleted; embeddings + physical files erased from disk), or both. Everything is scoped strictly to your personal data: institution / account data is governed by the institution’s own retention policy and is never touched from here. Exports are rate-limited to one request per hour; emailed ZIPs are purged from disk after 30 days by a daily sweeper.Files panel — full redesign: The IP Vault Files modal got a top-to-bottom polish — Google-Drive-style cards with white thumbnail insets, a horizontal collections strip above the file grid (drag a file onto a folder card to move it), a redesigned File Preview modal with an Asset Info sidebar and lazy-loaded RAG Content showing the indexed chunks that retrieval will actually see, and a tri-state Grid / List / Table view switcher. The Lightbox now scales to use the full viewport on wide screens. The Sort pill folds the direction chevron into the active option (click again to flip), and a new Vault Health section in the file panel header surfaces an A–F grade plus a single attention dot (red / orange / yellow) describing the most pressing follow-up. New “Needs reprocess” category flags files that are Included in RAG but have zero embeddings — common after an embedding-model switch — with a red dot on the file’s action menu and beside Reprocess Content inside the menu so the next step is obvious. The bulk action bar is now sticky at the top of the scroll region. Drag files onto a vault tab (My Files / Instance / Account) to move them between vaults — single-file drag and multi-select drag both work, with a blue ring on the hovered tab as drop confirmation. The Files table view (new for both Files and Assistants) is built on the same react-table foundation as the admin tables, with client-side sort, infinite scroll, a bulk-select column, and resizable columns — the Columns menu lets you show/hide Source, RAG Hits, Last Used, Owner, etc.; user choices persist per-user. The Properties dialog (file → ⋮ → Properties) was rearranged into a clean card-per-section layout (File Info / Processing / Statistics), with stacked label/value rows that no longer cram on narrow viewports. RAG segments in the preview no longer have a tiny inner scrollbar — segments expand naturally and only the outer list scrolls.Collections — custom colors: When creating a new collection (or sub-collection) and when editing one, you can now pick an accent color from ten preset swatches or any custom hex value. Once chosen, the folder icon renders as a solid tinted shape across the strip, the compact list, and the full card view. Pick the ∅ option to revert to the default outline icon.gpt-realtime-2 is now the default voice model: OpenAI’s newest realtime voice model is Pria’s default for Convo / Speech-to-Speech mode, replacing gpt-realtime-1.5. It features GPT-5-class reasoning with configurable reasoning effort, a 128k context window (4× the previous default), stronger instruction following, and translation across 70+ languages. The reasoning tokens consumed by each turn are now tracked separately and visible in the conversation usage card as Thinking Tokens (alongside total tokens, input tokens, completion, etc.). Previous models (gpt-realtime-1.5, gpt-realtime, gpt-realtime-mini) remain available in the model picker. Note: gpt-realtime-2 audio pricing is materially higher than -1.5 — review your Pricing tab usage if you operate at scale. Existing institutions that previously selected gpt-realtime-1.5 explicitly stay on -1.5; the default only affects institutions that hadn’t picked a model.OpenAI Realtime endpoint migration (GA): Under the hood, all OpenAI realtime voice sessions now use OpenAI’s GA endpoints (/v1/realtime/client_secrets + /v1/realtime/calls) instead of the deprecated beta /v1/realtime/sessions. The transition is transparent to end users — same voice, same VAD, same tools — but network admins should ensure outbound HTTPS to api.openai.com/v1/realtime/client_secrets and api.openai.com/v1/realtime/calls is allowed; the legacy /v1/realtime/sessions and /v1/realtime paths are no longer used by Pria.Voice agent now sees account-shared files: When you ask the voice agent “how many files do I have?”, it now includes files shared across institutions in your organization (the Account vault), not just your personal files and your institution’s knowledge base. Previously the agent would silently miss account-shared files even though they were visible in the file modal — the tool’s query was institution-scoped only. Files in this bucket are now labeled Owner: Account so the agent (and you, in tool-call traces) can distinguish them from personal/instance files.Live transcripts during voice sessions: The character-by-character transcript display under the voice indicator now works for OpenAI realtime sessions (previously only showed the final transcript at end of each turn). User speech also surfaces live as You: … as soon as transcription completes.Thinking Tokens — visible in every history surface: Reasoning-model output is now reported separately from visible completion across the platform. Wherever you see token counts (the in-line dialog usage card, the per-message info card, your My Profile → History page, the Admin → Histories detail modal and the records table), a new Thinking value appears when the conversation used a reasoning model. The OpenAI Chat Completions and Responses API paths now extract reasoning_tokens from the completion bucket and store them separately; the OpenAI Realtime GA and Google Gemini paths read their native sibling fields (output_token_details.reasoning_tokens / usage_metadata.thoughts_token_count). Anthropic / Bedrock / Mistral / xAI providers do not yet expose a separate thinking-token count from their APIs, so the value stays 0 for those; thinking text content blocks (Claude extended thinking, etc.) continue to be persisted as before.Google Cloud — revoke before changing services: Both the personal Google Cloud panel (My Profile → Google Cloud) and the institution-level Google Workspace integration (Admin → Instance → Configuration → Google) now lock the service toggles while a token is active. To add or remove Gmail / Drive / Calendar / etc. you click Revoke Access (or Disconnect on the institution panel) first, then re-authorize with the new selection. The Authorize button is hidden while a live token exists. An expired personal token shows a Re-authorize Services button so you can refresh the grant without first revoking. A short hint under the toggles spells out the flow so the disabled state isn’t ambiguous.One-shot welcome / Canvas-auth popups dismiss reliably: The “Welcome to your new AI Digital Twin!” prompt and the Canvas-auth recommendation popup now close as expected when you click Later, Yes, Enable, or Dismiss. Their underlying flags are persisted server-side but a MobX reactivity quirk was preventing the in-memory institution object from notifying the popup’s open-state predicate, so the Lightbox occasionally lingered after the API save completed.User Guide & Admin Guide open in a new tab: Clicking User Guide or Admin Guide — from the [+] action menu (More → User Guide / Admin Guide) or from the sidebar tab buttons — now opens the documentation site in a new browser tab instead of the embedded in-app panel. The docs are served from docs.praxis-ai.com, which sets headers (X-Frame-Options / CSP) that block cross-domain iframe embedding, so the previous in-app panel rendered empty.Logout — branded login page preserved: When you arrive on Pria through a branded URL (e.g. /login?brandingId=<id>) and then log out, the post-logout login page now keeps your brand assets instead of falling back to the default Pria look. Internally the brand identifier is re-seeded from the active profile’s institution (or from the URL as a last resort) just before the profile is cleared, so the branded experience stays consistent across the full session lifecycle.Logout — cross-session state leak fixed: Logging out and signing back in as a different user no longer surfaces the previous user’s Digital Twins in the top-navigation switcher. Three underlying issues addressed: (1) the SocketContext-scoped state (entitlements, user-institutions, in-flight indicators, realtime session) is now flushed on every logout — not only when callers remembered to invoke the secondary state cleanup; (2) any /user/refresh/entitlements response that was already in flight when logout fires is now dropped on resolve instead of repopulating the cleared state; (3) the logout sequence now flips the logged-in flag first, so the reactive cascade that runs during cleanup short-circuits at the standard “not logged in” guard and stops firing tokenless requests that surfaced as 403s in the console.Instance Settings — Voice tab, Knowledge/Tools/Assistants explainers, polish round: The instance-settings lightbox grew a dedicated Voice tab (between Personalization and Conversation) that surfaces the Convo / Speech-to-Speech model picker, per-provider voice selectors (Gemini Live, xAI, OpenAI Realtime — voice, VAD eagerness, noise reduction, transcription language), and a Configure all models shortcut into the full admin page. Retrieval is now called Knowledge, and the panel opens with a collapsible explainer covering IP Vault security, RAG, and KAG Fusion; matching collapsible explainers were added to Tools (“About tools”) and Assistants (“About assistants” — Twin defines personality, assistants define skills + agentic workflows). The Conversation > Behavior card gained Enable Moderation and Cite Sources toggles; Tools Guidance and a new Max Tool Result Size (default raised from 40,000 to 60,000 chars) live in a new “Tool Options” card on the Tools tab. Personalization > End-user toggles gained an Enable Location option and richer descriptions. The Billing tab’s Add Credits button is now hidden when Disable Add Credits is set on the instance. The Invite tab gained a Manage Members & Entitlements shortcut for admins, and all configure rows now stack vertically on small screens so long button labels don’t crush the description. Identity tab renamed to General; the Personality block moved to the top of Personalization.Personal Settings — descriptions + Knowledge Sources cues: Each Personalization and Security toggle now carries a short description (Dark Mode, Use Location, Enable STT, Knowledge Sources picker, Must Change Password, Reset password on SSO Login). The Personalization tab also surfaces the current retrieval state at a glance: an amber dot when Search Only is active and a red dot when Knowledge Sources are disabled, mirrored next to the Knowledge Sources sub-header and on the matching selected chip in the picker. The Google Cloud sidebar entry shows a green “Connected” dot when either your personal Google token is valid or the instance has Google OAuth enabled.Action menu polish: Item labels are now consistently Title Case; Audio Notes renamed to New Audio Note, Create new assistant… renamed to New Assistant…, List Assistants renamed to Manage. The Knowledge Sources submenu’s active radio dot picks up the same tone language as the Personalization tab — amber for Search Only, red for Disabled. The Switch assistant for next message picker was rebuilt as a self-contained filtered list (no portaling, no clipping); the current assistant is kept in the list with a “Current” pill so you can see what’s active and clear an override with one click. The next-assistant chip now sits to the left of the send button in the input pill.Instance Settings — Invite & Billing tabs, plus Conversation toggles: The instance-settings lightbox (from the [+] action menu) gained two new tabs. Invite generates a join QR code and a copy-to-clipboard invite link for new members, plus a branded login link for existing ones — minted on first visit and cached on the instance. Billing shows the instance credit balance with an Add Credits button (jumps to the Pricing page’s credit-purchase tab), an explanatory note about pooled vs. non-pooled credits, and a payment-history table filtered to this digital twin. The Conversation → Behavior card now includes Enable Moderation and Cite Sources toggles alongside Tools Guidance and Compact History. Tool and Assistant rows in their respective tabs also show the description right under the name (and above the category / type pills) for faster scanning.Profile & Instance Settings Refresh: Both surfaces were reorganized for clarity. In My Profile the Profile tab is now called General, Preferences is now Personalization (Dark Mode toggle has moved here from the Security tab, alongside a new “Appearance” sub-card), and a new Billing tab is always available — it shows your personal credit balance, an Add Credits button that jumps directly to the Pricing page’s credits tab, a payment-history table when present, and a contextual note explaining when personal credits are consumed (with a special blue notice when the digital twin you’re using pools credits on your behalf). In Instance Settings (the lightbox launched from the action menu) the Features tab is now called Personalization and sits right under Identity. It carries a new UI Theme selector (User Directed / Dark Mode / Light Mode), the previously per-tab Display Thinking Details and Display Tools Details toggles, and the Guest UI (minimum screen) toggle alongside the existing file-upload / audio-notes / clipboard end-user toggles.Dialog Usage Details — In-Place Card: Each message header now shows a small bar-chart icon on hover next to the timestamp. Clicking it swaps the message body in-place for a colour-coded usage card with the model name, a provider chip (Bedrock / OpenAI / Anthropic / Google / xAI / Mistral derived from the model id), full localized timestamp, total / input / completion / baseline tokens, input cache discount and ratio, credits, retrieval (a “RAG” pill alongside the search duration when retrieval ran), tool names invoked (with the count), thinking-block count, latency, and request duration. Clicking the icon again (now showing a back arrow) returns to the message. The card is now visible to every user — previously the same data was hidden behind a popup gated to admin and super accounts only. All row colours were rebalanced so every text label meets WCAG AA contrast in both light and dark mode.Memory Panel — Filter by Instance: When your memory parameters span more than one digital twin, My Profile → Memory now shows a searchable instance picker beside the existing namespace and scope filters. Each option carries the institution’s logo plus its ainame and display name, with a synthetic “Personal” bucket for entries that aren’t tied to an instance. The picker defaults to your current instance when it appears in the bucket list; clearing it returns the view to all instances. No change when your memory lives in a single instance — the picker stays hidden.Push-to-Toggle Microphone: The dictation microphone in the chat input now stays on until you click the red microphone button again. Previously the mic stopped on its own after a short pause and the next phrase needed a fresh click. Now a single click starts recording and the mic keeps running through pauses, restarts, and Chrome’s internal silence cuts — phrases accumulate in the textarea as you go (speak, pause to think, speak again, and the second phrase appends to the first instead of overwriting it). The mic stops only when you click it off or submit the request.Admin Histories: column selector + User Statistics tab: Two coordinated upgrades to Admin → Histories. (1) Each of the Records and Usage tables now has a Columns dropdown in its toolbar — toggle any column off to declutter the view, with your choices saved per-admin in your browser and automatically dropped from the CSV export so recipients see the same shape you do. (2) A new User Statistics tab sits next to Charts: one row per user per day / week / month with query count and credits used, filtered by your existing toolbar (date range, account, institution, account type, user search). Filter and toggle period, then click CSV for a clean per-user usage extract. Results are capped at 5,000 rows; an amber banner appears when truncated so you can narrow the window. Backed by a new admin endpoint POST /api/admin/histories/charts/user-stats.Gemini 3.1 Flash Lite is now GA: Google has promoted gemini-3.1-flash-lite out of preview, and the model picker on Personalization → AI Models now offers the GA identifier alongside the deprecated preview entry. Institutions that previously selected the preview model are upgraded automatically on the next boot to the equivalent GA model — same architecture, same parameters, no prompt or behavior change. The preview identifier will stop accepting requests at the upstream provider on May 25, 2026; pick the GA entry manually if you ever switch away and back.Personal API Key Usage: Admin and super accounts can now see which devices have used their personal API key, when each one was last seen, and how many times it’s been exchanged for a token. Open My Profile → Developer — API Key and expand the new Recent device usage section to view per-device rows with browser/OS family, IP subnet, optional client name/hostname (set via x-pria-client-name / x-pria-client-hostname request headers from your scripts and SDKs), first/last seen, and a call count. Rotating or revoking your key wipes the list — a clean slate every time. The per-row Forget device button removes a row from your list but does NOT invalidate access; to actually invalidate, regenerate your key. Super administrators get a new Admin → System → API Keys tab with the same data system-wide, paginated and filterable by email, key prefix, time window (24h / 7d / 30d / 90d), and UA family — a fast way to spot a key being hit from an unexpected location. Records auto-expire 180 days after a device’s last sign-in.Cross-twin-safe conversation operations: Renaming, deleting, and AI-summarizing a conversation now scope strictly to the active Digital Twin. Previously, if the same conversation number happened to exist in more than one twin you belonged to, a rename or delete from one twin could silently affect the other — most visible to mobile users who switch twins frequently. Web is unchanged: it continues to use your current twin automatically. Mobile (and other API clients) can now pass institution explicitly when calling /api/user/clearHistory, /api/user/renameHistory, and /api/user/summarizeHistory — pass an ObjectId to target a twin, pass null to target personal history regardless of the current twin, or omit the field to use the same fallback as before. Members are verified server-side so a stale token can’t reach a twin you’ve left (returns 403). Course list (/api/user/courses) now returns the most recently used assistant per conversation so the right assistant restores on the next turn.Email-based two-step verification (admin & super, opt-in): Admin and super accounts now see a one-time prompt after login to enable email-based two-factor authentication. When enabled, password and OAuth logins from a new device or location trigger a 6-digit code emailed to the account address, valid for 5 minutes. Trusted devices stay trusted for 7 days within the same network — paste-from-clipboard, auto-submit on the 6th digit, no Submit button to click. Disable any trusted device or turn MFA on/off from My Profile → Two-step verification; admins can override per user via Users → Edit → Credentials. Standard users can opt in voluntarily from their profile but won’t be prompted in this phase. After 5 wrong attempts on a single code the challenge invalidates (request a new one via Resend); after 5 burned challenges in an hour the account enters a 10-minute lockout. iOS Safari + Mail surface the code directly in the keyboard autofill bar for paste-free entry.Reliable Long-Audio Transcription: Long audio uploads (lectures, interviews, recorded meetings) no longer fail with “audio duration exceeds maximum” when split chunks happened to be small in bytes but long in playback time. The chunker now sizes pieces against both the upstream byte ceiling and the transcription model’s duration ceiling, so a heavily compressed 75-minute recording produces four ~19-minute chunks the transcription model accepts instead of two ~37-minute pieces it rejects. Files that previously failed at the extract phase can simply be re-uploaded.Reliable Large Text Uploads: Large plain-text uploads (HR / medical / administrative exports, CSV/TSV dumps over ~16 MB of content) previously failed in the ingestion extract phase with a cryptic Node Buffer error. The extraction staging table now spans multiple documents per upload, lifting the per-upload extracted-text ceiling to ~60 MB. Files that previously failed can simply be re-uploaded. Additional ingestion robustness shipped alongside: ffmpeg media-split errors now surface the ffmpeg stderr tail (previously dropped, leaving operators with a bare “ffmpeg exited with code 1:”), and large .tif/.odt/.ods/.odp uploads are no longer rejected by the image and office extractors.Reliable PDF Export from Vault: Pria can now convert any existing markdown file in your vault to a PDF without re-reading the content — a new generate_pdf capability that operates by reference. Just point Pria at the source file (by URL) and the conversion happens server-side in a single tool call. Together with reliability fixes shipped earlier this month for accent rendering and emoji support, your French and multilingual letters now export correctly with proper bold weight in headings and rendered emoji glyphs. The companion save_to_file flow keeps its one-shot save-as-PDF capability — when the path ends in .pdf, content is treated as Markdown and rendered directly.Simpler save: When asking Pria to save a file, the filename and extension are now a single path argument (e.g. report.md or letter.pdf). This eliminates a class of bug where the requested format and the file extension could disagree — the original incident wrote PDF bytes into a .md file and destroyed the source. The new shape makes that swap impossible.Larger content reads: The default content-extraction cap when summarizing scraped pages, transcribed media, and tool results is now 60,000 characters (up from 40,000). Useful for processing longer letters, articles, and meeting transcripts without truncation. The cap remains overridable per-institution via the CONTENT_MAX_SIZE environment variable.Memory Parameters page: Pria now exposes the running memory it uses to remember context about you — namespaces, key/value pairs, and per-instance shared knowledge — through a new My Profile → Memory entry in the user menu (also reachable from Pria → Settings → Personal → Memory Parameters). Personal entries are private to you; shared entries (the ones added with set_user_memory shared:true) are scoped to a digital twin and visible to every member of that instance. You can edit values, descriptions, toggle the shared flag, delete a single row, or bulk-delete a filter-narrowed selection with a scrollable preview before confirmation. Members with the institutions.edit entitlement can also edit and clear shared memory rows for the instances they administer; everyone else sees those rows in read-only mode.Admin Memory Inspection: Administrators with the users.edit entitlement can now inspect and manage any user’s memory parameters from Admin → Users → Edit user → Memory tab. Memory is grouped by instance for clarity, and admins only see entries for instances they hold users.edit on (super admins see everything). The same edit/delete/bulk-clear controls used in the user-facing Memory page apply here, with a server-side authorization re-check on every mutation.Instance Memory Inspection: A new Instance Memory tab in Admin → Instances → Edit instance shows the shared memory parameters scoped to that instance, with the author email rendered as a quick shortcut to that user’s Memory tab when the admin holds users.edit on the author’s institution.Act As (impersonation): Administrators with users.edit can now impersonate a user from the Edit User modal via a new Act As… button (left of Cancel/Update). A consent dialog requires a written reason (up to 500 characters) and acknowledges that the admin will see the user’s personal data and that every action will be recorded as theirs. While impersonating, an amber Acting as <email> pill stays pinned in the top navigation, the rest of the admin console returns 403 with a clear message, and clicking Stop restores the admin’s session and returns them to the Edit User modal. Sessions auto-expire after 1 hour. Every start and stop is recorded in a new internal audit log (impersonation_log) with the admin’s id, the target’s id, the stated reason, the IP address, and the user agent. Self-impersonation, super-admin targets, and nested impersonation are blocked.April 2026
Display Thinking Details (admin toggle): Pria now collects model reasoning / chain-of-thought from the providers that expose it (Anthropic, AWS Bedrock, Google Gemini, OpenAI summaries, xAI) and renders it in a collapsible 💡 lightbulb block above the assistant response. Mistral does not expose thinking and shows no lightbulb. The new Display Thinking Details checkbox on the institution Personalization page (next to Display Tools Details) controls whether thinking is streamed, displayed, and persisted to History — defaults to on. Personal users always see thinking; institution-scoped accounts inherit the toggle. Streaming consumers receive a new
THINKING event type on Socket.IO RECEIVE_STREAM and the SSE stream — see the API Reference / Streaming docs for the payload shape (per-round id/round/delta/text/done/signature). History list endpoints now expose only a hasThinking: boolean flag; the full thinking body is fetched on demand via GET /api/user/history/{id}/thinking (and the admin counterpart) when the user opens the lightbulb block — keeping list responses lean. Bundled regression fix: institutions that pre-dated the schema default for displayAgentDetails and rtAdminOnly no longer surprise-default to the wrong toggle value.Safer Bulk Delete in IP Vault: The Select All button in the Files panel now respects whatever filter you have active — searching for scr_* and clicking Select All picks only the matching files, not every file in the vault. The bulk-delete confirmation also lists every collection and file that will be removed in a scrollable preview so you can review before clicking the red button. Collections are excluded from Select All while a search is active (selecting a folder would have pulled in non-matching files inside it). No action required.Audio Notes: Capture spoken notes directly from the Pria toolbar. Tap the mic icon to open the Audio Notes modal, tap the microphone to start and stop recording (mobile-friendly toggle, no press-and-hold), then add as many segments as you need with playback, rename, and reorder controls. Hit Save and Pria transcribes the audio in the background through the existing ingestion pipeline — files appear in a new Audio Notes collection in your personal vault. Once transcription completes, each note’s filename is automatically replaced with a short LLM-generated title derived from what you said (e.g. Quarterly planning notes.webm instead of a raw timestamp). The save dialog stays open with a green confirmation and a Close button so you know the recording is on its way to processing. Optional Combine audio into a single note checkbox concatenates segments losslessly via ffmpeg before transcription so a session of short bursts is filed as one note instead of many. Notes are linked to the active assistant and conversation context just like file uploads, and token usage is accounted against your normal credit balance. Audio Notes is enabled by default for personal accounts and for new digital twin instances; instance administrators can disable it from Personalization → UI & Appearance → Disable Audio Notes for Users, and it is automatically hidden in Guest UI mode or whenever Disable File Upload for Users is on. To avoid surprising admins of existing instances, every pre-existing institution had Audio Notes turned off during the rollout — admins must explicitly opt their instance back in.Large Media & Archive Uploads Flow Through the Queue: Long audio/video files that get split into 10-minute chunks, and ZIP archives that expand into multiple documents, now appear as individual rows in the Files panel and progress through the ingestion queue independently — each with its own live progress, retry budget, and terminal state. Previously the parent file stayed “Processing…” while the children were embedded inline, which could pin the event loop and delay other uploads; now every resulting document is embedded as a queued background job. The parent row is hidden from the Files grid once all children are queued, and the children are expanded automatically after each poll so you see exactly what was produced.Live File Ingestion Progress: Uploaded files now show live processing progress in the status tooltip as they flow through the IP Vault pipeline — extract, chunk, sanitize, embed, finalize — with a percentage indicator that climbs smoothly as each chunk is embedded. The Files panel also auto-polls in-flight uploads every few seconds while they process, so you no longer need to manually refresh to see when a large PDF or video transcript is ready for use in RAG. Transient failures are retried automatically with exponential backoff; only terminal errors surface as the “Processing failed” state.File Reprocess Endpoint (API): New POST /api/user/files/{fileId}/reprocess endpoint re-queues an existing IP Vault file through the ingestion pipeline without re-downloading the source. Accepts { "mode": "full" } to wipe all chunks and restart from scratch, or { "mode": "embed" } to keep existing chunks and only regenerate embeddings — useful after switching an institution’s embedding model. Returns 202 Accepted with the queued phase; returns 409 if an earlier job is still in flight. The existing Reprocess Content UI dialog in the Files panel continues to work unchanged.Model Context Sizes Reconciled: Audited all providers against their official documentation and corrected declared input/output token limits across Bedrock, OpenAI, Gemini, Mistral, and xAI catalogs. Highlights: us.amazon.nova-2-lite-v1:0 output bumped from 10K → 64K tokens (previously under-declared 6×); gpt-5-mini and gpt-5-nano input raised from 272K → 400K; codestral-2508 input raised from 128K → 256K; mistral.devstral-2-123b and mistral.mistral-large-3-675b-instruct input tightened from 256K → 128K (matching AWS Bedrock model cards); us.meta.llama3-2-11b-instruct input corrected from 1M → 128K; Nova Pro/Micro output reduced from 10K → 5K; openai.gpt-oss-120b-1:0 realigned to 128K/16K; mistral-embed, codestral-embed, and Gemini Live models nudged to exact doc values. xAI Grok 4.1-fast now declares official 30K output cap; Grok Code Fast 1 declares 10K. No code behavior changes — these are metadata corrections that keep the model picker honest about each model’s true limits.Rename Conversation with AI: The Manage Conversation dialog in Pria now has a Rename with AI button that generates a short, descriptive title for the conversation from the first and last few dialogues — mirroring the existing Summarize with AI action on favorites. Click once, review the suggested name in the editable field, and save with Update.Unified RAG Segment Size: Admin RAG Segments editor now uses a consistent 8,000-character soft cap across all embedding models (instead of showing the underlying token limit interpreted as characters). The new Ollama option mxbai-embed-large (1024-dim, 512-token context) auto-scales ingestion to safer smaller segments, and all uploads benefit from the unified chunk-size constant shared between ingestion and the editor — no more divergence between what gets indexed and what you can edit.Vector Dimensions Surfaced in Model Picker: The embedding model picker now shows Vector Dim (e.g. 1536d, 3072d) in place of Output Size, making it easier to compare embedding models at a glance. The picker also adds support for two new models: mxbai-embed-large (Ollama, 1024-dim) and gemini-embedding-2-preview (Google, 3072-dim) — the latter with a raised 8,192-token input limit that allows larger RAG segments per chunk.Friendlier Custom-LLM Auth Errors: When an institution’s custom AI model (Bring-Your-Own-Token endpoints like LiteLLM proxies) rejects a request with a 401/403, users now see a clear “your administrator needs to verify the API key in Settings → AI Models” message instead of the raw upstream error (which in some cases surfaced proxy internals and partial key fingerprints). Super-admin diagnostic emails are enriched with the offending custom model’s name, URL, and provider, plus the original upstream error — so misconfigurations can be identified without cross-referencing collections manually./api/user/tools Minimum Response: The runtime tools endpoint now accepts {"minimum": true} in the request body to omit the verbose instructions field from each tool, matching the shape of the admin tools endpoint. Useful for selector UIs and BYOT integrations that only need the identifier + short description. Default behavior is unchanged.Tool-Use Uploads Pinned to Personal Vault: Hardened the AI tool-use upload path so files saved via tools (generated images/audio/video, Google Drive downloads, URL scrapes triggered from a tool call) always land in a standard user’s personal vault. Admins keep the existing behavior and can still route tool-use outputs to instance or account vaults.Super Admin Collection Access: Fixed an issue where super admins received a 403 when opening collections (or adding/removing files) that belonged to another institution. The ownership and vault-scoping check in the collection file endpoints now bypasses for super admins, matching the entitlement-based behavior of the rest of the Files panel.Files Panel Stuck Loading: Fixed a case where the Files panel remained pinned on “Loading, please wait…” after a failed collection fetch. The error path now falls back to the empty state so the error banner is visible and the panel remains usable.Embedded Files Panel Scroll Loop: Fixed an infinite scroll-height growth when opening a collection from the admin Instances → IP Vault panel. The embedded Files container now uses a bounded viewport height so the grid’s self-measurement can no longer feed back through the resize observer.Claude Opus 4.7: Added support for Anthropic Claude Opus 4.7 across Bedrock (global.anthropic.claude-opus-4-7, us.anthropic.claude-opus-4-7) and the Anthropic Direct API (claude-opus-4-7). Opus 4.7 uses the adaptive-thinking API with a native 1M input / 128K output context window (no extended-context toggle required). Opus 4.6 remains available and fully supported.Files Entitlement System: IP Vault access is now governed by granular files.list, files.add, files.edit, and files.delete entitlements, so account administrators can precisely scope who manages instance and account vaults. Standard users can no longer upload to instance vaults. Existing admin memberships are automatically seeded with the new entitlements on platform startup — no action required. The Files panel surfaces only the actions each admin is entitled to (for example, delete buttons are hidden from admins without files.delete).Personal Upload Gate Enforced Server-Side: The institution setting Disable File Upload for Users is now enforced on the server — standard users receive a 403 when uploading personal files (via file picker or URL) while the flag is enabled. Allowed Email Domains for File Upload still carves out per-domain exceptions, letting specific users retain personal-upload rights. Collections and existing personal files remain editable; the gate applies to new uploads only. The admin entitlement list now exposes the files.* module under Manage → Entitlements, and the Files panel shows a Your access pill row inside Vault Health that reflects your current entitlement when switching between personal, instance, and account vaults.Excluded Only File Filter: The Files panel now has an Excluded Only toggle alongside Included Only, letting you quickly audit files that are not part of the RAG selection. The two filters are mutually exclusive; toggling a file’s inclusion state while a filter is active removes it from the view in place.Video Generation with Nova Reel and Sora 2: Video generation now routes through Amazon Nova Reel 1.1 (Bedrock, default) or OpenAI Sora 2 / Sora 2 Pro — configurable per institution from admin settings. Nova Reel generates 6-second clips from a text prompt or source image; Sora 2 generates 4, 8, or 12-second clips from text (quality='high' auto-selects Sora 2 Pro). The generate_video tool works in chat and convo modes — source image is optional, aspect ratio (16:9 / 9:16 / 1:1) defaults to 16:9, generated MP4 is saved to the user’s IP Vault. Stability AI’s video endpoint was retired by the provider on 2025-07-24 and the stability.image-to-video option is now marked deprecated (existing institutions pinned to it see a deprecation message — switch to Nova Reel or Sora 2).Stability AI Native Provider: Stability AI is now a first-class provider alongside OpenAI, Anthropic, Google, Mistral, xAI, and Bedrock — dedicated to Image and Audio generation. Introduces the generate_audio tool, available in both chat and convo modes, alongside the existing generate_image tool (generate_video now routes to Nova Reel / Sora 2 — see above). Stable Audio 2 generates up to 190 seconds of audio from text. Generated assets are saved to the user’s vault like any other upload. Admins can pick per-category models (Image / Audio Generation) and override the platform API key per institution.Bedrock Legacy Model Deprecations: Marked us.amazon.nova-premier-v1:0, cohere.command-r-plus-v1:0, and amazon.nova-canvas-v1:0 as deprecated after AWS flagged them as Legacy. Added cohere.command-r-v1:0 as the active Cohere-on-Bedrock replacement. Institutions pinned to the deprecated conversation models should switch to us.amazon.nova-pro-v1:0 / us.amazon.nova-2-lite-v1:0 or cohere.command-r-v1:0. For image generation, switch to a Stability or OpenAI model — Stability image models are no longer available through Bedrock and need to be used via the direct provider.Cross-Twin Conversation Search: From the gallery, search your conversation history across all your active digital twins. Each result shows the matching twin with shortcuts to View the record or Go To the conversation directly — the twin switch happens automatically when needed.Login Security Hardening: Strengthened security across every sign-in path — standard email/password, Google, GitHub, Facebook, custom OAuth2 SSO, and Pria SDK launches. The changes protect SSO logins from cross-site forgery attacks, close a subtle password-validation edge case, and keep one-time login codes out of browser history, server logs, and referrer headers. Existing sessions continue to work; no action required.Fix Max Tokens Dispatch: All AI providers (OpenAI, Anthropic, Google, Bedrock, xAI, Mistral) now correctly honor the institution’s “Max Tokens (Completion)” setting. Previously, xAI and Mistral silently ignored the setting, and OpenAI defaulted to 32,000 when unset. The “Unspecified (LLM Default)” option now truly uses each provider’s native default (4,096 for Anthropic, 8,192 for Google, omit for the others), and “Auto” computes from the model catalog’s output cap. Bedrock + thinking-mode users who picked “Auto” will see significantly longer thinking budgets (the previous hardcoded 3,000-token cap is gone) — monitor for “Too many tokens” throttling and pick an explicit value ≤16,000 if affected. “Unspecified” combined with thinking mode is not supported on bedrock — pick “Auto” or an explicit value ≥10,000 to enable thinking.Admin Edit Modals: Every admin edit page (Instances, Accounts, Users, Assistants, AI Models, SSO, Tools, Questions, Feedbacks, Sessions, Histories, Saved States) now opens as a Lightbox modal over its list page — you no longer lose scroll position, filters, or pagination when editing a record. Prev/Next chevrons (and Ctrl+Arrow shortcuts) let you navigate between rows without closing the modal. Delete confirmations across all admin list pages are now consistent Lightbox dialogs with an entity summary card instead of inline popovers. External deep-links (e.g. Canvas LMS SDK, Pria.js) continue to work — legacy /update/:id URLs are transparently rewritten to the new pattern.Institution Lifecycle Management: The admin Instances list now helps you manage the lifecycle of your institutions. A new status filter (Active | Inactive | All) lets you quickly switch between lifecycles, and a new Last Activity column shows a traffic-light dot (green for recent activity within 30 days, yellow for 30-90 days, red for over 90 days) next to each institution. Open the Manage dialog on a stale active instance to see a Mark as Inactive action, or on an inactive instance to see a Reactivate action. Long-idle inactive instances (over 90 days) also show a Ready for removal badge next to the Delete button, making it easy to spot candidates for cleanup.Inline Account Switcher: Admins with access to multiple accounts and the institutions.edit entitlement can now reassign an instance to a different account directly from the Instances list — click the pencil icon next to the account name, pick a target account from the dropdown, confirm the switch. The row updates in place without reloading the page.Last Activity on Accounts and Users Lists: The admin Accounts and Users lists now show the same Last Activity column and stale indicator as the Instances list — traffic-light dots (green/yellow/red), relative time since last activity, and a yellow “inactive” hint next to the Status column for rows idle for 30+ days. Helps admins quickly spot accounts and users that have gone dormant.Per-Row Entitlement Scoping: Fixed an issue in the admin Instances list where an admin with membership in one institution would see Edit, Manage, and Delete actions on all rows — even institutions where they only had plain membership. Entitlement checks are now scoped per-row, so admin actions only appear on the institutions you actually have the permissions on.Sidebar UX Redesign: Redesigned the Pria sidebar with a dedicated Conversation Model label and entitlement-gated Configure button for quickly jumping to model settings. Digital Twin and TTS Audio sections now use a clean card layout. Added About RAG Modes and About Document Search expandable help sections with lightbulb tips for get_browser and tool configuration. The Tools section is now an always-visible scrollable list showing the enabled count. Removed the “Load Max Dialogues” button — infinite scroll handles it automatically.Welcome Screen Enhancements: The Pria welcome screen now features flip cards that reveal descriptions on hover, a 3-column grid layout, and a subtle shimmer animation on the “What can I help with?” title. The streaming output dialog uses a consistent input box width and a colorful gradient bouncing loader.Streaming Scroll UX: Smoother streaming experience — your input and loader scroll into view immediately on submit, the completed dialog is fetched before clearing the stream to prevent jumps, and the view settles smoothly on the completed message. Async callbacks are guarded against unmount to prevent stale state errors.Admin Lightbox Manage Modal: The admin Instances list Manage action is now a two-tier Lightbox modal (main + nested Confirm) instead of a popup. Release Credits is hidden when an instance has no parent account, action buttons match their icon colors (amber for Recover, orange for Delete History), and cancel handlers are hardened against missing events. All admin list pages now use a consistent ButtonBar wrapper for action menus.Base64 Image Support on Custom LLMs: Custom OpenAI-compatible LLMs (configured via Bring-Your-Own-Token) now accept base64-encoded images in the conversation — matching the behavior of the native OpenAI provider. Useful for vision-capable custom endpoints that don’t support URL-based image input.IP Vault UX Improvements: Owners can now include/exclude, download, and move account-shared files regardless of their current institution context. The Status badge (Included/Excluded) is visible on all account-shared files, and included FileCards display a blue border highlight. Collection lists in instance and account vaults are deduplicated to prevent root-level duplicates, and “Added By” metadata is batch-resolved for faster rendering. The Source field now shows the assistant name with the instance name in parentheses for clearer attribution.PDF OCR Memory Optimization: Reduced memory usage during PDF OCR ingestion — concurrency is now capped at 3 pages at a time (instead of unbounded), rendering scale dropped from 2× to 1.5× (~44% less memory per page), and sync file I/O was replaced with async. Prevents out-of-memory crashes on large image-based PDFs.Anthropic Prompt Cache Limit: The Anthropic provider now caps prompt cache breakpoints at 4 (the API maximum), counting existing cache points first to prevent “too many cache_control blocks” errors on long conversations with system prompts.Android Chrome Login Fix: Fixed a blue-screen issue where Android Chrome users saw a blank blue page after Google sign-in. Root cause: URLs with trailing slashes were not normalized in tool lookup, and a null tool state was rendered as an empty page instead of a loading indicator.Empty Stream Guard: Added empty-stream protection to all 6 AI providers (Bedrock, OpenAI, Anthropic, Google, Mistral, xAI) to prevent “No Content” errors when an upstream API returns an empty streaming response.Files Panel Stability: Fixed an issue where the Files panel could close unexpectedly when clicking the backdrop during upload, file move, or ingestion operations.Admin Instance About Field: The About field in the admin Instance edit form is now a code editor with markdown syntax highlighting and a character counter, making it easier to write and proofread long instance descriptions.Assistant RAG Collections: Assistants can now be scoped to specific document collections in the IP Vault. When configured, the assistant’s RAG retrieval only searches uploads from the selected collections — enabling focused assistants that reference specific knowledge bases while sharing the same IP Vault.Per-Assistant Tool Configuration: Administrators can now control which AI tools each assistant has access to. Set an assistant to “Selected Tools Only” mode and pick specific tools from the institution’s enabled set. A filter toggle lets you quickly view only selected tools or expand to the full list.Assistant-Scoped RAG Search: The standalone RAG Search tool and MCP search-instance-rag endpoint now accept an optional assistant ID to scope results to that assistant’s configured collections. Search results display collection names and the number of files searched, even when no results are found.ANN Vector Search: Switched RAG vector search from Exact Nearest Neighbor (ENN) to Approximate Nearest Neighbor (ANN) with HNSW indexing for significantly faster retrieval at scale.PDF OCR Fix: Fixed an issue where image-based PDF pages failed OCR processing because the original PDF file extension was passed to the vision API instead of the converted PNG page image.xAI Grok Native Provider: Added xAI as a first-class AI provider with native SDK integration — streaming conversations, tool calling, vision, TTS (via ElevenLabs bridge), STT, and embeddings are now routed through xAI’s API directly. Supports Grok 3, Grok 3 Mini, and Grok 2 Vision models.Updated AI Models: Added GPT-5.4, xAI Grok-4.20, Stability AI image generation models, and new embedding models to the platform catalog. Gemini 3.1 Flash Live Preview now default for Google real-time conversations.Admin UI Personalization Reorganization: Reorganized the Personalization tab with a dedicated Convo (Real-Time Speech-to-Speech) section, improved Document Summarization placement, and sub-section visual hierarchy with background styling.Voice Preview Links: Added direct preview links to OpenAI TTS Playground and Google AI Studio for voice audition before selection.ElevenLabs Credential Warning: Warning pill now appears in the Personalization tab when ElevenLabs Agent ID or API Key are missing, guiding admins to the Configuration tab.Lightbox Stability: New preventBackdropClose prop for modal components prevents accidental dismissal during critical workflows.Canvas Course Filtering: Fixed an issue where conversation history was not filtered by course context when launching Pria via Canvas LMS SDK integration.Canvas Section Reorder: Canvas integration section moved above Voice Cloning in the Configuration tab for better discoverability.SDK Iframe Compatibility: Added localStorage and cookie shims for sandboxed iframes, ensuring Pria works reliably when embedded in third-party LMS platforms with restrictive sandbox policies.Voice Media Embeds: Fixed an issue where media embed URLs in AI responses were corrupted by the voice sanitizer, preventing audio and video previews from rendering correctly.Documentation Audit: Comprehensive update of all documentation to reflect current model catalogs, tool counts, voice providers, and admin UI layouts.RAG Mode Selector: Users can now choose between three RAG modes — Normal (default RAG-augmented responses), Search Only (returns only RAG results without AI generation), and Disabled (skips RAG entirely for pure LLM responses). The mode is available in the Pria sidebar, as a toolbar cycle button, and in the user profile page.Admin Histories Pagination & Filtering: The admin Histories page now uses server-side pagination with infinite scroll, replacing the previous approach of loading all records at once. Added a Course Name filter to narrow results by LMS course. Charts (Model Distribution, Peak Usage Heatmap) now respect all toolbar filters including User, Account Type, Course, and Date Range.Admin Server-Side Pagination: All 14 admin list pages now use server-side pagination, replacing the previous approach of loading all records at once. Users, Entitlements, Feedbacks, Institutions, Sessions, Accounts, AI Models, Assistants, Tools, SSO Providers, Payments, Saved States, Questions, and System Sessions all paginate on the server with infinite scroll (or ReactTable manual paging for Questions). A “Showing X of Y” record count appears above each table, and additional pages load automatically as you scroll down.March 2026
- Mistral AI Native Provider: Added Mistral AI as a first-class provider with native SDK integration — conversation, vision, reasoning, code, multilingual, TTS, STT, embeddings, and moderation models are now routed through the Mistral API directly instead of the OpenAI compatibility layer, improving performance and enabling full feature support
- YouTube URL Import: Paste a YouTube video URL into the URL uploader and Pria automatically extracts the transcript with timestamps, video metadata, and thumbnail. Videos without captions can still be imported with Skip Indexing enabled. Re-ingesting a YouTube file refreshes the transcript and thumbnail from the source
- Reprocess Content: Redesigned Reprocess Content dialog with dedicated action cards for re-embedding and re-ingesting, Skip Indexing option for re-ingest, and improved error handling that restores file status on failure
- Skip Indexing: Upload files, URLs, or clipboard content to your IP Vault without generating AI embeddings — useful for storage-only files or content you want to index later. A per-file “Skip Indexing” checkbox is available on all upload tabs, and skipped files can be reprocessed anytime via Reload or Reingest
- SSO Provider Management: Admins can now configure OAuth 2.0 Single Sign-On providers directly from the Admin dashboard — define identity provider endpoints, client credentials, field mappings, and assign them to institutions. Users authenticate at
/sso/{slug}and are automatically logged in and enrolled. Includes connectivity testing, error handling for disabled or missing providers, and dark mode support on the SSO login page - File Preview: Enhanced fullscreen file preview with HTML document rendering (Preview and Source views), print-to-printer support for all file types, and an open-in-new-tab button for viewing files externally
- Guest Mode: Institutions can enable a minimal guest interface that hides the sidebar, file uploads, assistant switching, and profile menu — ideal for demo or guided experiences
- Lightbox Wizards: Create and Enroll Digital Twin flows now open as overlay modals above the Gallery, so you never lose your place while browsing
- Copy Feedback: Clipboard copy actions throughout the UI now show a smooth 3D icon-flip animation instead of popup alerts, with print-optimized stylesheets for clean output in both light and dark mode
- Gallery Favorites: Toggle favorite Digital Twins directly from the Gallery cards for quick access
- ElevenLabs Transport: Admins can choose between WebRTC and WebSocket connection methods for ElevenLabs voice conversations
- RAG Search Timing: Search results now display RAG query duration for performance transparency
- Google Document Upload: Paste Google Docs, Sheets, or Slides URLs directly into the file uploader — content is read via Google OAuth instead of scraping raw HTML. Supports personal and institution-level Google authorization with context-aware error messages guiding users to connect their account when needed
- Google Slides Reader: Google Presentations are now fully supported in URL uploads, extracting text from all slides including shapes, tables, and nested groups
- RAG Segments Panel: Enhanced segment management with content sanitization, metadata editing, and one-click reprocess workflow
- Gemini Live Stability: Improved WebSocket reconnection handling for Gemini voice conversations with automatic retry on unexpected disconnects
- Smarter Conversation Memory: Pria now intelligently compacts older conversation history into concise summaries while keeping your most recent exchanges verbatim, so longer conversations stay coherent and responsive without consuming excessive credits. Compaction activates automatically when Remember History is set to 6 or higher, and summaries are cached between requests for faster follow-ups
- Streaming Performance: Dramatically smoother AI response streaming — delta-based text appending, frozen text caching, and TTS gating reduce per-chunk processing by ~12x, eliminating visible lag during long responses
- Typing Responsiveness: Fixed input lag during AI streaming — typing in the text entry bar is now instant even while a response is being generated
- Stripe Billing: Integrated Stripe-powered credit purchasing with personal and institutional packages, purchase confirmation screens, and a new admin Payments page with full payment history
- Conversation Manager: Manage conversations and favorites in Lightbox popups for a cleaner, more focused experience
- Mini Sidebar: Redesigned sidebar with hover expansion and instant search-as-you-type for quick access to conversations and tools
- Options Tray Redesign: Animated collapsible options panel with soft glow border for a more polished settings experience
- Creation Wizard: Rebuilt the Digital Twin creation flow as an intuitive 8-step wizard with step animations
- PDF Generation: AI can now generate formatted PDF documents via the
save_to_filetool, with math symbols and special character support - Drag & Drop Upload: Upload files by dragging them onto the interface or pasting from clipboard, with a new fullscreen file preview
- Code Editor: Rich code editor with live markdown preview for editing instructions, replacing plain text areas
- Summary View: Redesigned summary display with loader animation and streamlined follow-up interaction UI
- Multi-Provider Embeddings: RAG document embeddings now support Bedrock Titan, Google Gemini, and OpenAI models, selectable per institution
- RAG Chunk Enrichment: Smarter document processing with per-chunk keyword extraction for more accurate search results
- Embedding Segments: New API endpoint and UI for creating and managing individual embedding segments
- OpenAI Realtime Enhancements: Noise reduction, configurable transcription language, and improved session defaults for Convo Mode
- Gemini Realtime Improvements: Fixed transcript accumulation and voice separation in Gemini-powered conversations
- Download Tracking: Upload view now surfaces download statistics and file usage analytics
- Vault Health: File integrity indicators visible for all users across all file statuses
- iPhone & QuickTime Audio Support: Upload
.movrecordings directly — Pria automatically extracts audio and converts to a universally supported format before transcription, so iPhone voice memos and QuickTime exports work seamlessly across all AI providers - API Key Authentication: Admin users can now authenticate via API key for programmatic access — generate, view, copy, and revoke personal API keys directly from the Profile page
- Admin Histories Filter: New account type dropdown in the Histories admin page lets you filter conversation records by user or admin accounts, with filter state preserved across pagination
- Clipboard Restrictions: Institutions can disable copy/paste functionality for non-admin users to protect sensitive AI-generated content — text selection and copy shortcuts are blocked while admins retain full access
- Animated Loading Screen: Redesigned loading experience with animated Pria logo, radial fade effect, and smooth fadeIn transitions
- Bundle Optimization: Eliminated 1.4MB monolithic JavaScript bundle through code splitting for faster page loads
- Security: Membership status enforcement blocks inactive or pending institution members from AI interactions; all active sessions revoked on password change; Facebook login migrated to server-side OAuth2; password policy enforcement; SVG sanitization; vulnerability remediation
- Dark Mode: Fixed select dropdown and input background inconsistencies across dark mode
- File Downloads: Corrected file extension mismatches in downloaded files
- Deep Research: Reasoning effort automatically clamped for deep-research model configurations
- Uploads Access Control: Three-tier security model for file access — owner, institution members, and shared access levels
- iOS Safari: Fixed keyboard toolbar overlapping chat input area on iOS Safari
February 2026
- Gemini Flash Live: Added Google Gemini 2.5 Flash as a third real-time voice provider in Convo Mode via WebRTC, alongside OpenAI Realtime and ElevenLabs, with tool calling, transcription, and per-institution voice selection
- Claude Sonnet 4.6: Added support for Claude Sonnet 4.6 and set as new platform default model
- Gemini 3.1 Pro: Added Gemini 3.1 Pro to the model catalog
- GPT Realtime 1.5: Added OpenAI gpt-realtime-1.5 model and set as default for Convo Mode
- Direct AI Providers: Introduced native Anthropic and Google GenAI providers for direct model access, replacing the OpenAI compatibility bridge for improved performance and full feature support (tool use, streaming, prompt caching)
- Reasoning Effort: Added configurable thinking/reasoning effort levels alongside max token settings for supported models
- Custom AI Models: Added validation for custom model configurations (API URL, API key) to prevent misconfiguration, and deprecated model indicators in the model catalog
- File Collections: Organize files into nested collections with drag-and-drop, breadcrumb navigation, and animated transitions. Bulk edit mode for multi-select move, delete, and reprocess operations
- Files Redesign: Rebuilt the Files interface with a virtualized grid, paginated infinite scroll, live upload progress indicators, and enhanced file cards with loading states and type-specific icons
- Upload Experience: Redesigned upload workflow with deferred processing, RAG segment editing, and Google Drive deduplication
- Chunked Audio/Video Transcription: Large audio and video files (>20MB) are automatically split into time-based chunks and transcribed in parallel with speaker diarization support, raising the upload limit to 150MB
- Excel Legacy Support: Added support for older
.xlsExcel spreadsheet format - History Compaction: LLM-based conversation history compaction keeps the 3 most recent exchanges verbatim while summarizing older context, reducing token usage in long conversations. Configurable per institution
- Extended Context: Added a toggle to enable 1M token extended context for supported models, visible only when the selected model supports it
- Vault Health: New health panel in the Files vault showing error counts, unused files, and content quality scores with garbage detection heuristics for code-heavy or low-value embeddings
- RAG Error Recovery: Files stuck in processing are now automatically marked as failed with a red indicator. Stale uploads (>15 minutes) offer one-click Delete or Reprocess actions
- Edit Assistant Redesign: Redesigned the Edit Assistant lightbox with improved variable management UI and dynamic variable mapping
- ElevenLabs Voice: Added ElevenLabs as a Realtime speech-to-speech voice provider with voice cloning support in Digital Twin personalization
- Google Tools in Convo Mode: Google services (Drive, Calendar, Gmail) now accessible during voice conversations
- Session Analytics: New charts in the admin Sessions and Histories tabs — device type distribution, activity timelines, peak usage heatmaps, and model distribution with selectable chart types
- Google OAuth Multi-Institution: Added context-aware Google OAuth supporting authentication across multiple institutions with automatic token validation
- Account Manager Role: Introduced new Account Manager role for managing multiple institutions within an account (contact humans@praxis-ai.com to request access)
- Enroll Users: Added an Enroll Users tab to the admin Entitlements page for streamlined user onboarding with auto-loading of eligible users
- Platform Monitoring: Enhanced platform-level session monitoring with SSE tracking, per-transport hourly stats, and persistent client session history
- Admin Filtering: Added AccountSelect filter across all admin list pages for easier multi-account management
- Security Hardening: Server-signed HMAC-SHA256 SDK launch tokens, field whitelisting on all update endpoints, hashed reset codes, rate limiting on auth endpoints, and privilege escalation fixes
- Dark Mode: Extended dark mode support to loading dialogs, info banners, branding backgrounds, login buttons, and Canvas token cards across 18+ components
- Profile Auto-Save: Profile setting toggles now auto-save on change without requiring a manual save action
- Feedback Redesign: Redesigned feedback interface as a Lightbox modal for a more focused experience
- Touch Support: Added touch event support for improved mobile and tablet interactions
- Enrollment Search: Enhanced enrollment page with keyword search capability
- Performance: Optimized file queries, assistant loading, SSE connection handling, and session chart aggregations for faster page loads and reduced admin timeouts
January 2026
- Dark Mode (Beta): Release of the
darkmode support in Pria UI with custom dark background images per institution - Digital Twin Gallery: Launched a browsable gallery for discovering and selecting Digital Twins with ElevenLabs voice embedding support
- Text Entry Repositioning: Resized and repositioned the text entry bar to float over the conversation history for improved visual hierarchy and screen real estate optimization
- Files and Assistants Layout: Repositioned Files and Assistants under the text entry bar for a more compact, streamlined display. Redesigned file and assistant cards
- Profile Picture Upload: Added ability to upload profile pictures from webcam or file, with automatic RAG indexing
- Sidebar Enhancements: Collapsible sidebar tray, direct tool enable/disable toggle, and RAG-specific configuration panel
- Terminology Update: Renamed “Agents” to “Tools” across the platform; instances are now consistently called “Digital Twins”
- Institution Cloning: Administrators can now clone an entire institution configuration
- Streaming API: Added Q&A streaming endpoint for real-time response delivery
- Prompt Optimization for 2026 Models: Periodic optimization of system instructions to align with evolving model capabilities (GPT-5.2, Claude 4.5, Gemini 3.0 Flash). Prioritized personality-first responses to create more immersive Digital Twin experiences, balancing conversational tone with technical precision
- Tool Guidance Toggle: Added a new switch to reduce instruction verbosity for general conversations while maintaining comprehensive guidance for advanced research queries. Optimizes token usage and response latency without sacrificing quality
- Model-Aware Response Tuning: Enhanced instruction stack to leverage native capabilities of December 2025+ models, including improved reasoning, reduced hallucination rates, and better context retention across long conversations
- Voice Selection: Enhanced voice picker for Convo mode with improved selection experience
- SDK Hardening: Improved SDK reliability with inactive instance handling and membership validation
- File Cleanup: Added automatic cleanup routine to remove orphaned files from deleted users and institutions
December 2025
- Open AI GPT 5.2: Added support for latest GPT 5.2 model from Open AI
- Manage Favorites: Rename and organize your favorites with custom descriptions or AI-generated summaries.
- GitHub Login: Added support for authentication via GitHub.
- Google Login: Enhanced authentication process for Google accounts.
- Account-Level Assistants: Assistants can now be shared at the account scope, making them instantly available to all digital twins within the same account for maximum reuse and consistency.
- Account-Level RAG Files: Documents can now be promoted from Instance to Account level, enabling every digital twin in the account to access a shared knowledge base.
- History Graph: Now defaults to the last 12 weeks with daily data rendered as a bar chart.
- Assistant Filtering: Added a toggle to quickly filter assistants by type: Personal, Instance, or Account.
- Model Tracking: Automatically records which AI model was used for embeddings, content summarization, and image analysis during file/URL uploads.
November 2025
- Sonnet 4.5: Added support for Claude Sonnet 4.5 model and set as platform default
- All Anthropic Models: Upgraded plan to support large input context up to 1 million tokens
- Tool Upgrade: Improved support for call_canvas and search_canvas to enable simultaneous execution
- Content Length Returned by Tools: Tools now return up to 60,000 characters (increased from 20,000), enabled by expanded input context size
- Assistants Features: New options to disable RAG searches when executing assistants and run assistant instructions without system context (Platform and Digital Twin instructions)
- Pria JS SDK: Added
pria.isReady()function that returns true/false to indicate whether Pria is ready to receive messages - File Import Enhancements: Improved support for ZIP and IMSCC file imports
October 2025
- Shared Memory: Added support for shared memory functionality. Shared memory allows storing information that is accessible across all users of the same digital twin, enabling cross-user data persistence and collaboration.
- Memory Tools Enhancement: Renamed
set_in_user_memorytoset_in_memoryandget_from_user_memorytoget_from_memoryto support both user-specific and shared memory operations with unified tool interfaces. - Privacy Policy Enforcement: Introduced account-level privacy policy settings that require users to accept terms before accessing Digital Twins, ensuring compliance and user consent.
- Selective File Upload Authorization: When file upload functionality is disabled for users, administrators can now specify email domain suffixes to authorize selected user groups for file upload capabilities.
- Selective Assistant Authorization: When Assistant functionality is disabled for users, administrators can now specify email domain suffixes to authorize selected user groups for Assistant access.
- Favorite Digital Twins Priority: Digital twins marked as favorites now appear first in the gallery carousel, providing easier discovery and quick access to frequently used digital twins.
- OCR for Image-Based PDFs: Image-based PDF files (containing no extractable text content) now automatically undergo Optical Character Recognition (OCR) processing for text extraction and indexing.
- Enhanced Date Range Selection: Administrators can now filter history and session records using a comprehensive date range picker, improving record management and data analysis capabilities.
- Documentation Updates: Comprehensive updates to documentation sections covering RAG (Retrieval-Augmented Generation), Bring Your Own Token (BYOT),
call_canvasandsearch_canvastools, and additional features available at https://docs.praxis-ai.com
September 2025
- Anthropic Sonnet 4.5: Support for Claude Sonnet 4.5 (20250929) with 200K context window, 64K output tokens, and enhanced multimodal capabilities including vision, document analysis, and tool use.
- MCP Server: Introduced MCP Server in Praxis-AI Middleware to let any AI solution call your Digital Twin.
- Security & Performance: Improved RAG security and performance.
- REST APIs: Expanded functions in Runtime and Admin REST APIs.
- Documentation: Major updates—especially for Assistants, Canvas integration, and MCP at https://docs.praxis-ai.com
- Convo Mode Input: Added text input for conversations in full screen; reply by text while receiving vocal responses.
- Transcripts in Full Screen: Live transcripts available during Convo mode in full screen.
- Password Reset: Users can be forced to reset their password on next login.
- Logged Remote Calls: Remote connector MCP calls now logged in Tools Details.
- Gepetto Digital Twin: Improved AI Portrait Artist to generate Digital Twin avatars.
- Moderation by Default: Moderation service is now enabled by default when creating new Digital Twins
August 2025
- Connector MCP: Added comprehensive support for Remote Model Context Protocol (MCP) servers, individually configurable for each Digital Twin instance to enable distributed AI capabilities
- Custom LLM Integration: Implemented support for custom Large Language Models (LLMs) with per-Digital Twin configuration, allowing organizations to deploy specialized AI models tailored to specific use cases (ex: Vertex, etc.)
- Digital Twin Gallery Enhancements: Significantly improved user experience with intuitive navigation arrows and resolved display flickering issues on macOS systems for smoother interactions
- OAuth Verification for Canvas Integration: Enhanced security architecture for Canvas Theme SDK access by implementing mandatory OAuth 2.0 authentication workflow, ensuring secure user verification before Digital Twin initialization
- Streamlined Digital Twin Creation: Empowered administrators with a simplified 2-step Digital Twin creation process directly through the Gallery interface, reducing deployment complexity and time-to-value
- Support for Mermaid diagrams and charts: Added support for Mermaid Diagramming and Charting
July 2025
- User Experience: Enhanced digital twin loading for standard users
- Branding: Implemented branding feature for personalized login/signup
- Text Customization: Externalized activation and joining messages
- Logo Branding: Added logo parameter for login sequence customization
- Animation: Added animated picture support for Digital Twins
June 2025
- Token Management: Improved Canvas faculty token refresh system
- Digital Twins: Added gallery for twin selection and management
- REST Tools: Custom REST-enabled tool creation for instances
- Email Notifications: Enhanced approval workflow notifications
- Speech Features: Removed deprecated react-speech component
- Accessibility: Improved contrast ratios and ARIA labels
- Substitution Variables: Developed prompt variable management system
- Email Tool: New email functionality implementation
- Conversation Persistence: Added save/restore last conversation feature
May 2025
- Search Enhancement: Integrated Exa.ai for semantic web search
- xAI Integration: Added support for xAI models
- SDK Toolkit: Enhanced UI development capabilities
- File Upload: Expanded support for all file types across platforms
April 2025
- Credit Transfers: Enhanced account-to-instance credit management
- File Tools: Added get_user_files tool for document collection access
- Instance Management: Developed comprehensive admin management system
- Performance: Improved file loading with asynchronous summaries
- Pricing: Decreased costs across personal accounts
March 2025
- Email Processing: Implemented postal-mime package for content parsing
- Node.js Upgrade: Updated to Node 17 for AWS SDK compatibility
- Streaming: Enhanced conversation streaming capabilities
- Canvas Scoping: Added course ID filtering for history records
- Assistant Management: Made user assistants admin-visible for sharing
February 2025
- AI Models: Added Claude 3.7 Sonnet support
- Conversation Mode: Extended user access to conversation features
- File Management: Enhanced file handling and RAG integration
- Mistral Integration: Added direct API access for Mistral models
- Bug Fixes: Resolved SASS NPM module issues and file system errors
January 2025
- Accessibility: CSS improvements for epileptic users
- Canvas SDK: Updated to version 1.3 with enhanced user ID handling
- Security: Updated VisionLoft SDK to address vulnerabilities
- Navigation: Improved UI layout for large screens
- API Integration: Enhanced Canvas API access with call_canvas tool
- SDK Features: Added browser messaging capabilities and documentation
February 2024
- Scientific Literature: Added CrossRef tool for academic research support
- Real-time Communication: Implemented OpenAI WebRTC APIs with UI
- Voice Features: Enhanced voice selection capabilities
January 2024
- Canvas Integration: Captured global ID for Canvas oAuth tokens
- User ID Updates: Relaxed user ID requirements to support string format
December 2024
- Data Compliance: Implemented DPA compliance features for data deletion and recovery
- Canvas Integration: Added discussion bot plugin
- Token Management: Enhanced Canvas token refresh capabilities
November 2024
- Database Improvements: Enhanced DocumentDB aggregate lookup support
- Retry Logic: Implemented Bedrock retry mechanisms
- Analytics: Added tool usage tracking and metrics
- Instance Management: Added ability to disable specific assistants per instance
October 2024
- Email Notifications: Added low credit alerts for administrators
- Location Services: Enhanced GSearch with location-based results
- AWS Integration: Switched to AWS as default platform for document summarization
- Course Management: Added courses in sidebar for institutional scoping
- Canvas tool: Enhanced LLM interpretation and display capabilities
- Student Analytics: Developed feature to analyze student questions
- Assistant Features: Launched new Assistant functionality and Course Syllabus Generator
- Bug Fixes: Resolved input size limitations and tool usage issues
- Admin Enhancements: Multi-select instance support and Gemini Flash 1.5 implementation
- LTI Brightspace: Bug fixes for course parameter passing
- SSO Integration: Implemented QuickLaunch SSO oAuth
- Credit Management: Added admin ability to transfer credits between accounts
- AI Models: Added support for o1-preview and mini models
- Scalability: Fixed entitlements listing performance issues
May 2023
- UI Improvements: Various interface enhancements and bug fixes
April 2023
- UI Enhancements: Implemented anchor text conversion for links
- Copy Functionality: Added copy input to clipboard feature
- Timeout Resolution: Fixed response timeout issues (25-30% timeout rate resolved)
- SDK Integration: Developed embed SDK for LMS integration
- Personality Customization: Added ability to swap AI personalities per institution
- Code Block Support: Enhanced parsing for multiple code blocks
- Image Display: Implemented HTML image tag support