PageSourceSearch

https://multiai.co/_next/static/chunks/3-ufkbfngfbo2.js

js multiai.co collected 2026-09-24 14:37:32 UTC 15,213 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,730274,e=>{"use strict";let t=(0,e.i(456420).default)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);e.s(["Send",0,t],730274)},655321,e=>{"use strict";let t="multiai:open-support";e.s(["OPEN_SUPPORT_EVENT",0,t,"openSupportChat",0,function(){window.dispatchEvent(new CustomEvent(t))}])},363827,e=>{"use strict";var t=e.i(843476),o=e.i(271645),a=e.i(615227),s=e.i(77071),n=e.i(730274),r=e.i(263676),i=e.i(154626),d=e.i(655321);let l="multiai_support_session",c=/\[([^\]]+)\]\(([^)\s]+)\)|(?<![\w/[(])(\/[a-z][a-z0-9/-]*)|([\w.+-]+@[\w-]+\.[\w.-]+)/g;function u(){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 py-1.5","aria-label":"Thinking",children:[(0,t.jsx)("span",{className:"size-1.5 animate-bounce rounded-full bg-muted-foreground/70 [animation-delay:-300ms]"}),(0,t.jsx)("span",{className:"size-1.5 animate-bounce rounded-full bg-muted-foreground/70 [animation-delay:-150ms]"}),(0,t.jsx)("span",{className:"size-1.5 animate-bounce rounded-full bg-muted-foreground/70"})]})}let m=["What does it cost?","Which AI models do you support?","How is this different from ChatGPT?"];
1e.s(["SupportChat",0,function({showLauncher:e=!0}={}){let[h,p]=(0,o.useState)(!1),[g,f]=(0,o.useState)(!1),[w,b]=(0,o.useState)([]),[y,x]=(0,o.useState)(""),[v,k]=(0,o.useState)(!1),j=(0,o.useRef)(null),N=(0,o.useRef)(null),S=(0,o.useRef)(null);function T(){S.current||(f(!0),S.current=setTimeout(()=>{p(!1),f(!1),S.current=null},150))}function A(e){b(t=>{let o=[...t];return o[o.length-1]={role:"assistant",content:e},o})}async function E(e){let t=e.trim();if(!t||v)return;x(""),k(!0);let o=w.slice(-6);b(e=>[...e,{role:"user",content:t},{role:"assistant",content:""}]);try{let e,a=await fetch("/api/support",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:((e=window.sessionStorage.getItem(l))||(e=crypto.randomUUID(),window.sessionStorage.setItem(l,e)),e),message:t,path:window.location.pathname,history:o})});if(!a.ok){let e=await a.json().catch(()=>null);A(e?.error??`Something went wrong at our end. Email ${i.SUPPORT_EMAIL} and a person will pick it up.`);return}if(!a.body)return void A(`No answer came back. Email ${i.SUPPORT_EMAIL} and a person will pick it up.`);let s=a.body.getReader(),n=new TextDecoder,r="";for(;;){let{done:e,value:t}=await s.read();if(e)break;r+=n.decode(t,{stream:!0}),A(r)}}catch{A(`I could not reach the server. Email ${i.SUPPORT_EMAIL} and a person will pick it up.`)}finally{k(!1)}}return(0,o.useEffect)(()=>{j.current?.scrollTo({top:j.current.scrollHeight})},[w,v]),(0,o.useEffect)(()=>{let e=()=>{S.current&&(clearTimeout(S.current),S.current=null),f(!1),p(!0)};return window.addEventListener(d.OPEN_SUPPORT_EVENT,e),()=>window.removeEventListener(d.OPEN_SUPPORT_EVENT,e)},[]),(0,o.useEffect)(()=>{if(!h)return;N.current?.focus();let e=e=>{"Escape"===e.key&&T()};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[h]),(0,o.useEffect)(()=>()=>{S.current&&clearTimeout(S.current)},[]),(0,t.jsxs)(t.Fragment,{children:[e&&(0,t.jsx)("button",{type:"button",onClick:()=>h?T():p(!0),"aria-label":h?"Close support chat":"Ask a question","aria-expanded":h,className:"fixed bottom-5 right-5 z-40 grid size-12 place-items-center rounded-full bg-primary text-primary-foreground shadow-[0_6px_24px_-6px_rgba(0,0,0,0.35)] outline-none transition-transform duration-200 hover:scale-105 focus-visible:ring-2 focus-visible:ring-ring/50 active:scale-90 motion-reduce:transition-none motion-reduce:hover:scale-100 motion-reduce:active:scale-100",children:(0,t.jsxs)("span",{className:"relative grid size-5 place-items-center",children:[(0,t.jsx)(a.MessageCircle,{className:`absolute size-5 transition-all duration-200 motion-reduce:transition-none ${h?"scale-75 rotate-90 opacity-0":"scale-100 rotate-0 opacity-100"}`}),(0,t.jsx)(r.X,{className:`absolute size-5 transition-all duration-200 motion-reduce:transition-none ${h?"scale-100 rotate-0 opacity-100":"scale-75 -rotate-90 opacity-0"}`})]})}),h&&(0,t.jsxs)("div",{role:"dialog","aria-label":"Support chat",className:`fixed ${e?"bottom-20":"bottom-5"} right-5 z-40 flex h-[min(40rem,calc(100dvh-6.5rem))] w-[min(23rem,calc(100vw-2.5rem))] origin-bottom-right flex-col overflow-hidden rounded-2xl border border-border/60 bg-card shadow-[0_20px_60px_-20px_rgba(0,0,0,0.35)] motion-reduce:animate-none ${g?"animate-out fade-out-0 zoom-out-95 slide-out-to-bottom-1 duration-150":"animate-in fade-in-0 zoom-in-95 slide-in-from-bottom-1 duration-200"}`,children:[(0,t.jsxs)("div",{className:"flex shrink-0 items-start gap-2 border-b border-border/60 px-4 py-3",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:"Ask about MultiAI"}),(0,t.jsx)("p",{className:"mt-0.5 text-xs text-muted-foreground",children:"You are talking to an AI agent."})]}),w.length>0&&(0,t.jsx)("button",{type:"button",onClick:function(){v||(window.sessionStorage.removeItem(l),b([]),x(""),N.current?.focus())},disabled:v,"aria-label":"Start a new conversation",title:"Start a new conversation",className:"grid size-7 shrink-0 place-items-center rounded-lg text-muted-foreground transition-colors duration-150 hover:bg-muted/60 hover:text-foreground disabled:pointer-events-none disabled:opacity-40 motion-safe:animate-in motion-safe:fade-in motion-safe:duration-200",children:(0,t.jsx)(s.Plus,{className:"size-4"})}),(0,t.jsx)("button",{type:"button",onClick:()=>p(!1),"aria-label":"Close support chat",className:"-mr-1 grid size-7 shrink-0 place-items-center rounded-lg text-muted-foreground transition-colors hover:bg-muted/60 hover:text-foreground",children:(0,t.jsx)(r.X,{className:"size-4"})})]}),(0,t.jsxs)("div",{ref:j,className:"min-h-0 flex-1 space-y-3 overflow-y-auto px-4 py-4",children:[0===w.length&&(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"Ask anything about what MultiAI does, what it costs, or how it compares. If I cannot answer, I will point you at a person."}),(0,t.jsx)("ul",{className:"mt-4 space-y-2",children:m.map(e=>(0,t.jsx)("li",{children:(0,t.jsx)("button",{type:"button",onClick:()=>void E(e),className:"w-full rounded-xl border border-border/60 px-3 py-2 text-left text-[13px] transition-colors duration-150 hover:bg-muted/50",children:e})},e))})]}),w.map((e,o)=>(0,t.jsx)("div",{className:"user"===e.role?"ml-auto w-fit max-w-[85%] rounded-2xl rounded-br-sm bg-primary px-3.5 py-2 text-[13px] text-primary-foreground":"w-fit max-w-[92%] rounded-2xl rounded-bl-sm bg-muted/60 px-3.5 py-2 text-[13px] leading-relaxed text-foreground
1/90",children:e.content?"assistant"===e.role?function(e){let o=[],a=0,s=0;for(let n of e.matchAll(c)){let[r,i,d,l,c]=n,u=n.index??0;u>a&&o.push(e.slice(a,u)),a=u+r.length;let m=d??l??(c?`mailto:${c}`:null);if(!m){o.push(r);continue}o.push((0,t.jsx)("a",{href:m,target:m.startsWith("mailto:")?void 0:"_blank",rel:"noopener noreferrer",className:"font-medium underline decoration-current/40 underline-offset-2 transition-colors hover:decoration-current",children:i??l??c},`l${s++}`))}return a<e.length&&o.push(e.slice(a)),o}(e.content):e.content:(0,t.jsx)(u,{})},o))]}),(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),E(y)},className:"flex shrink-0 items-center gap-2 border-t border-border/60 p-3",children:[(0,t.jsx)("input",{ref:N,value:y,onChange:e=>x(e.target.value),"aria-label":"Ask a question",placeholder:"Ask a question…",maxLength:1e3,className:"h-9 min-w-0 flex-1 rounded-full border border-border/60 bg-background px-3.5 text-[13px] outline-none transition-colors placeholder:text-muted-foreground focus:border-foreground
1/25"}),(0,t.jsx)("button",{type:"submit",disabled:v||0===y.trim().length,"aria-label":"Send",className:"grid size-9 shrink-0 place-items-center rounded-full bg-primary text-primary-foreground transition-all duration-200 hover:opacity-90 disabled:opacity-40 active:scale-95",children:(0,t.jsx)(n.Send,{className:"size-4"})})]})]})]})}])},87730,e=>{"use strict";var t=e.i(843476),o=e.i(271645),a=e.i(522016),s=e.i(618566),n=e.i(593583),r=e.i(263676);let i=[{id:"start",label:"Getting started"},{id:"chatting",label:"Chatting"},{id:"models",label:"Models"},{id:"credits",label:"Credits & plans"},{id:"team",label:"Your team"},{id:"content",label:"Your content"},{id:"data",label:"Your data"}],d=[{slug:"what-is-multiai",title:"What is MultiAI",summary:"One workspace for every AI model, shared with your team: what you get, how it is organised, and where to start.",section:"start",updated:"2026-08-05"},{slug:"your-first-chat",title:"Your first chat",summary:"The composer, the model chips, the four modes and the worklog - what everything on the screen does, in the order you meet it.",section:"start",updated:"2026-08-12"},{slug:"multi-mode",title:"Multi mode",summary:"Ask several models the same question at once and read the answers side by side - how to run one, how to carry the thread on, and when it is worth the cost.",section:"chatting",updated:"2026-08-05"},{slug:"debate-mode",title:"Debate mode",summary:"Models answer, read each other, revise, and one writes a combined answer. The three rounds, what they cost, and how to choose the moderator.",section:"chatting",updated:"2026-08-12"},{slug:"group-mode",title:"Group mode",summary:"Several people and one model in the same conversation: how a session starts, inviting your team and outside guests, the join link, the host's control of model and thinking, pausing AI replies for the whole room, and what it all costs.",section:"chatting",updated:"2026-08-24"},{slug:"agent-mode",title:"Agent mode",summary:"Let a model take steps - read a page, calculate exactly, check the date - and watch each one as it happens. What it is for, and what it costs.",section:"chatting",updated:"2026-08-05"},{slug:"skills",title:"Skills",summary:"Teach the AI how your team does a specific job, once. An open format other agents read too - so a skill you already have works here, on every model.",section:"chatting",updated:"2026-08-05"},{slug:"web-search",title:"Web search",summary:"Let an answer use what is on the internet now, with each model searching through its own provider. When to turn it on, and when it only adds cost.",section:"chatting",updated:"2026-08-05"},{slug:"worklog",title:"The worklog",summary:"The right-hand panel that records how an answer was reached: an agent's steps and a debate's working rounds, with the time and cost of each.",section:"chatting",updated:"2026-08-21"},{slug:"voice-dictation",title:"Voice dictation",summary:"Speak your prompt instead of typing it. The words land in the composer for you to edit, in 18 languages, and cost no credits.",section:"chatting",updated:"2026-08-21"},{slug:"choosing-a-model",title:"Choosing a model",summary:"Fast, Smart and Frontier, what thinking levels really change, and why the model you pick is the biggest lever on both quality and cost.",section:"models",updated:"2026-08-12"},{slug:"bring-your-own-key",title:"Bring your own key",summary:"Run models on your own OpenAI, Anthropic, Google, xAI, Kimi, DeepSeek or Z.ai accounts and pay no credits for those answers - how keys are stored, and when it is worth doing.",section:"models",updated:"2026-08-05"},{slug:"how-credits-work",title:"How credits work",summary:"What an answer actually costs, why the model and thinking level matter more than anything else, and how to make a plan's credits go further.",section:"credits",updated:"2026-08-05"},{slug:"your-team",title:"Your team",summary:"Inviting people, members and admins, dividing the shared credit pool, and who is allowed to start a live session.",section:"team",updated:"2026-08-05"},{slug:"knowledge-base",title:"Knowledge base",summary:"Add your team's documents once and every chat can draw on them. How matching works, what is kept, and the limits worth knowing.",section:"content",updated:"2026-08-05"},{slug:"memory",title:"Memory",summary:"The AI remembers useful details from your chats - your preferences, your work - and carries them into future ones. What is saved, and how you stay in control.",section:"content",updated:"2026-08-11"},{slug:"projects",title:"Projects",summary:"Group chats that belong together and g
1ive them standing instructions, so every conversation starts with the context it needs.",section:"content",updated:"2026-08-05"},{slug:"personas",title:"Personas and prompts",summary:"Reusable voices for your chats, a shared prompt library, and how personas, projects and workspace instructions stack together.",section:"content",updated:"2026-08-05"},{slug:"files-and-artifacts",title:"Files and artifacts",summary:"Attaching documents to a message, reading only the part you need, and the charts, tables, documents and code that come back.",section:"content",updated:"2026-08-05"},{slug:"sharing-a-chat",title:"Sharing a chat",summary:"Publish a snapshot of a conversation with an expiry, a password or named viewers - and what is deliberately left out of it.",section:"content",updated:"2026-08-05"},{slug:"your-data",title:"Your data",summary:"What is stored, who can see it, what reaches model providers, and how to delete a chat, a document or your whole account.",section:"data",updated:"2026-08-05"}];d.map(e=>[e.slug,e]),e.s(["DocsSidebar",0,function(){let e=(0,s.usePathname)(),[l,c]=(0,o.useState)(!1),u=i.map(e=>{var t;return{section:e,docs:(t=e.id,d.filter(e=>e.section===t))}}).filter(e=>e.docs.length>0),m=(0,t.jsx)("nav",{"aria-label":"Documentation",children:(0,t.jsx)("ul",{className:"space-y-6",children:u.map(({section:o,docs:s})=>(0,t.jsxs)("li",{children:[(0,t.jsx)("p",{className:"px-3 text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:o.label}),(0,t.jsx)("ul",{className:"mt-1.5 space-y-0.5",children:s.map(o=>{let s=`/docs/${o.slug}`,n=e===s;return(0,t.jsx)("li",{children:(0,t.jsx)(a.default,{href:s,"aria-current":n?"page":void 0,onClick:()=>c(!1),className:`block rounded-lg px-3 py-1.5 text-sm transition-colors ${n?"bg-muted font-medium text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground"}`,children:o.title})},o.slug)})})]},o.id))})});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"lg:hidden",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>c(e=>!e),"aria-expanded":l,"aria-controls":"docs-nav-mobile",className:"inline-flex h-9 items-center gap-2 rounded-full border border-border/70 bg-card px-3.5 text-[13px] font-medium transition-colors hover:bg-muted",children:[l?(0,t.jsx)(r.X,{className:"size-3.5"}):(0,t.jsx)(n.Menu,{className:"size-3.5"}),l?"Close":"Browse docs"]}),l&&(0,t.jsx)("div",{id:"docs-nav-mobile",className:"mt-3 rounded-xl border border-border/60 bg-card p-3",children:m})]}),(0,t.jsx)("div",{className:"hidden lg:block",children:(0,t.jsx)("div",{className:"sticky top-24 max-h-[calc(100vh-8rem)] overflow-y-auto pb-8",children:m})})]})}],87730)}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.