# webAI Changelog
Source: https://developers.webai.com/changelogs/webai_changelog
Product updates and announcements from webAI
## Scheduled Tasks, smarter Personas, and new models
This release lets a Persona run work on a schedule, helps Auto pick the right Persona for you, and refreshes the local model catalog:
* **[Scheduled Tasks](/using-webai/scheduled-tasks#open-scheduled-tasks)**: Click **Scheduled Tasks** in the left sidebar to see every task in one place. Filter by Persona with **All personas**, show **Active** or **Paused** tasks, and pause, edit, or run any task.
* **[Create a task from chat](/using-webai/scheduled-tasks#create-a-task-from-chat)**: Ask in Chat, such as "remind me every morning". Then click **Open Scheduled tasks** on the reply to see it.
* **[Every N minutes](/using-webai/scheduled-tasks#create-a-task)**: Tasks can repeat every 1 to 30 minutes. **What this task can do** on the form shows the tools and skills the Persona you picked can use.
* **[What is it for?](/using-webai/personas#create-a-persona)**: **New persona** now asks what the Persona is for, so **Auto** can pick your own Personas for matching requests. Auto replies show the Persona that answered right away.
* **[Persona cards and sidebar](/using-webai/personas#find-or-change-a-persona)**: Cards show how many tools, skills, scheduled tasks, and knowledge bases each Persona has. The Persona sidebar stays open while you chat with that Persona.
* **[New models](/settings/model#new-and-removed-models)**: TwIL 3B Pro, TwIL 2B, and Granite 4.2 8B are in the catalog, and TwIL 3B Pro is the default on 8 GB Macs. Llama 3.2, Gemma 3 1B, and Granite 4.1 are removed from the list, and their downloaded files are deleted to free up disk space.
* **[Device pairing](/settings/devices-network#pair-a-device)**: **Pair device** shows a disclaimer about pairing only devices you own, and lets you copy or show the pairing link. Paired devices keep their shared Spaces and contacts in sync more reliably.
* **[Array on Tier 3](/using-webai/personas#array)**: Array is available on Tier 3 Macs (32 GB and above), not only Tier 4.
### Also in this release
* Connected Personas no longer appear in your Contacts list
* File transfers that finish at the last moment count as successful
* Imported knowledge base documents keep their chunk counts, and a failed import says why it failed
* A missing microphone shows a message asking you to connect one
* Persona animations pause when you are idle
* Some models that could not use tools before can now use them
* Bug fixes and stability improvements
## Invite people to Spaces, Contributor roles, and Persona Docs
This release makes it easier to bring people into a Space, and brings built-in Personas in line with the ones you create:
* **[Invite people to a Space](/using-webai/spaces#invite-people-to-a-space)**: Open **Share** from a Space's title bar. An Admin adds people from Contacts under **Add people**, or starts pairing with **Pair a new contact**. That adds them to the Space. It does not hand off or export the Space itself.
* **[Contributor and Admin](/using-webai/spaces#overview)**: Roles read **Contributor** or **Admin**. An Admin can change a role or **Remove from space**. The header shows who is taking part.
* **[Add contact from a Space](/using-webai/spaces#add-a-contact-from-overview)**: On **Overview**, open a member's options and click **Add contact** when they are not already in your Contacts.
* **[Reusable contact invites](/using-webai/contacts#add-a-contact)**: **Generate invite** works for multiple people for 30 minutes.
* **[Built-in Personas](/using-webai/personas#chat-with-a-persona)**: Built-in Personas now offer **Skills**, **Artifacts**, **Docs**, and **Scheduled**, the same places Personas you create have.
* **[Manage Persona Docs](/using-webai/personas#manage-documents)**: Open **Docs** on a Persona's sidebar to add files, or open a document's options and click **Remove**.
### Also in this release
* You can skip the Knowledge step during first-run onboarding and come back to it later
* A document upload that fails can be retried instead of leaving the step stuck
* Invites sent by someone other than the Space owner resolve right away
* Tool calls keep working after the app has been sitting idle
* The model behind knowledge search is ready before a conversation asks for it
* Signing in no longer waits on a stalled account check
* Printing and exporting handle unusual content more reliably
* Pasted text is shown as plain text, not as page markup
* Bug fixes and stability improvements
## Array images, citations, and shared Personas
This release makes Array more capable, document answers easier to check, and shared Personas easier to see in Spaces:
* **[Array](/using-webai/personas#array)**: The built-in Array assistant can work with images (**PNG**, **JPG**, **GIF**, **WebP**). When it needs this device's location, webAI asks **Allow device location?** with **Always ask** or **Always allow**.
* **[Citations](/using-webai/chat#use-the-reply)**: Answers list every source they used. Click a citation to open that document's preview. A source held only on someone else's device shows **Preview unavailable**.
* **[Shared knowledge Personas](/using-webai/spaces#personas)**: Personas are grouped under **Shared knowledge**. Space cards show which Personas are shared. Sharing still connects a Persona to the Space without copying it onto other devices.
### Also in this release
* Contacts you remove stay removed after a restart, and contacts sync correctly across your devices
* Local chat models and the embedding model for document search load more reliably on first try
* Knowledge library setup works on a brand-new install without a restart
* Document search works on the newest macOS
* Joining a Space no longer floods you with toasts for messages posted before you joined
* A failed document import is reported once, not again on every launch
* Skills in a Persona's sidebar run when you pick them
* A Space you just followed appears in your list and sync status right away
* Auto-generated Persona instructions stay short and save properly
* The app no longer asks for Bluetooth access it never used
* Bug fixes and stability improvements
## Clearer models, list pages, and log export
This release makes Settings easier to scan and the main list pages more consistent:
* **[Model catalog](/settings/model#choose-a-model)**: Models use catalog display names, not raw repository ids. Each row shows whether that model can accept images.
* **[List pages](/using-webai/personas#find-or-change-a-persona)**: Spaces, Artifacts, Skills, Contacts, and Personas share matching empty states, title-row controls, and pop-up search. Personas, Skills, and Artifacts also use **All** / **Yours** / **Shared with you**.
* **[Export logs](/settings/system#export-logs)**: **Help → Export Logs...** shows progress while logs collect, and reports **Export failed** with **Retry** if something goes wrong.
* **[Appearance](/settings/appearance#choose-a-theme)**: Choose **System**, **Light**, or **Dark** under **Settings → Appearance**. The theme switcher is no longer on the account menu.
### Also in this release
* Channel messages that arrive slightly out of order show up right away, without reloading the conversation
* Bug fixes and stability improvements
## webAI is here
Local intelligence. Real collaboration.
### What’s in the box
* **[Home](/using-webai/chat)**: Your front door. Prompt, attach, dictate, and pick up threads from History.
* **[Personas](/using-webai/personas)**: Specialist with their own voice, docs, and skills. Type `@` in [Chat](/using-webai/chat) to call one in, or leave it on **Auto**.
* **[Skills](/using-webai/skills)**: Save how you want work done. Create them on a [Persona](/using-webai/personas), then hit `/` when you need them.
* **[Artifacts](/using-webai/artifacts)**: Turn a reply into a living document you can open, preview, and manage again later.
* **[Contacts](/using-webai/contacts) & [Spaces](/using-webai/spaces)**: Pair with a one-time invite, then collaborate in shared spaces where messages and Persona calls move between devices.
* **[Settings](/settings/profile)**: Profile, appearance, models, data, privacy, and system controls in one place.
### Built for how you actually work
[Download a local model](/settings/model) and replies can stay on your machine. Local intelligence when you’re heads-down. Collaborative intelligence when the team needs in.
# Introduction
Source: https://developers.webai.com/getting-started/introduction
Welcome to the webAI HelpCenter. Start building intelligence on hardware you control.
webAI is a desktop workspace for collaborative intelligence. People, Personas, and shared Spaces work together in one app, with intelligence that can run close to your data on hardware you control.
This documentation is for new users and developers. For product vision and platform overview, see [webai.com](https://www.webai.com). Use these docs to learn the clicks, settings, and flows in the app.
Access is through the private preview. [Join the waitlist](https://www.webai.com/waitlist) to download webAI.
## Get started
Short walkthroughs for Chat, Personas, Contacts, Spaces, Skills, and Artifacts.
Check requirements and install webAI.
## Using webAI
Send a prompt, use the reply, and continue the thread later.
Collaborate with people and Personas over the peer-to-peer network.
Open a Persona, or create one with a name, tools, and instructions.
Open documents created from Chat, and manage them from the Artifacts list.
Create skills on a custom Persona, then use them with `/` in Chat.
Add a person so you can invite them to a Space.
Profile, appearance, model, privacy, devices, storage, and system options.
## Help
Answers to common questions about privacy, models, and the app.
webAI product terms and common AI vocabulary.
Get help, join the community, and stay up to date.
## Common questions
# System requirements
Source: https://developers.webai.com/getting-started/system-requirements
macOS desktop requirements, device tiers by RAM, and how to install webAI on your Mac.
webAI is a native macOS app, installing it takes only a couple of minutes. Check that your Mac meets the requirements below, then follow the three steps.
The desktop app requires **macOS Tahoe (26) or later** on an **Apple Silicon** Mac. It runs natively on Apple Silicon, which enables on-device AI when you use a downloaded model.
## Requirements
| Requirement | Details |
| - | - |
| **Operating system** | macOS Tahoe (26) or later |
| **Processor** | Apple Silicon |
| **Graphics memory** | At least 1 GB of available video memory |
## Device tier
webAI reads your Mac's **installed memory** and assigns a **Device tier**. That tier sets which features start on, which local model fits, and how large a context window Chat can use. Open **Settings → System** to see yours as **Device tier**.
| Device tier | Installed RAM |
| - | - |
| **Tier 1** | Under 16 GB |
| **Tier 2** | 16 GB to under 32 GB |
| **Tier 3** | 32 GB to under 64 GB |
| **Tier 4** | 64 GB and above |
* **Tier 1** starts Chat at a 10K context and can grow to 32K. Knowledge-base retrieval starts off so those models do not load into memory.
* **Tier 2** and **Tier 3** start at a 32K context and can grow to 128K. **Tier 3** and above also get [Array](/using-webai/personas#array).
* **Tier 4** starts at a 128K context.
Lower tiers start with fewer features turned on so the app fits in memory. See [Device tier](/settings/system#device-tier) in Settings for more detail.
## Install in three steps
Open the **DMG file**, then **drag and drop** the webAI app into your **Applications** folder.
Open your **Applications** folder and open **webAI**.
Sign in with your credentials and complete the short **onboarding** (a few steps to set up your profile). Then you're ready to go.
**You're all set.** Head to the [Quickstart](/quickstart/general/overview) to ask your first question.
## Common questions
More answers are in the [FAQ](/support/faq#getting-started--privacy).
# Create an Artifact
Source: https://developers.webai.com/quickstart/general/artifact
Ask for a short HTML file, then open it in Artifacts.
This walkthrough makes a short HTML file from a chat reply and opens it in Artifacts. There is no create button on Artifacts. The reply stays a chat until you click **Yes, show dynamic doc**. To preview, share, or download one you already have, see [Artifacts](/using-webai/artifacts).
Click **Personas** and click a Persona, or click **Home** in the left sidebar.
Send `Write a short Hello, World HTML file.` Wait until the reply finishes. The HTML block, **Open in sidebar**, and **Open in Browser** preview the file. They do not add it to Artifacts.
Under the reply, click **Yes, show dynamic doc**. The reply becomes a preview.
**Keep as chat** leaves the reply as chat. It does not create an Artifact.
On that preview, click **Open in Artifacts**. The document is listed under that chat.
What **Keep as chat** and **Dynamic docs** do, and how to preview or download the file, is on [Artifacts](/using-webai/artifacts#create-an-artifact).
# Chat with Personas
Source: https://developers.webai.com/quickstart/general/chat-personas
Open a Persona and send a prompt.
This walkthrough opens a Persona and sends a prompt. To create one, or to change who answers from Chat, see [Personas](/using-webai/personas) and [Chat](/using-webai/chat).
Click **Personas** in the left sidebar, or type `@` on the Home page and pick a Persona.
Click the Persona you want. A chat opens with that Persona.
Type what you want. It does not have to be a question. Click the send icon.
The reply writes into the thread. **Copy** copies the finished reply.
You can also start in [Chat](/using-webai/chat), click the Persona icon and pick a Persona, or type `@` and choose one from the list. Leave that icon on **Auto** if you want webAI to choose who answers. What to do with the reply is on [Chat](/using-webai/chat#send-a-prompt).
# Overview
Source: https://developers.webai.com/quickstart/general/overview
Seven short walkthroughs. Start with any one.
Each walkthrough stands on its own. Start with any one.
Open a Persona and send a prompt.
Name a Persona, create it, and start a chat.
Generate an invite and pair with someone.
Make a Space and invite someone from Contacts.
Create a skill in Skills, then use it on a prompt.
Ask for a short HTML file, then open it in Artifacts.
Create a New Task, pick a Persona and schedule, then Create task.
# Pair with Contacts
Source: https://developers.webai.com/quickstart/general/pair-contacts
Generate an invite and pair with someone.
This walkthrough adds people to Contacts with an invite that works for multiple people for 30 minutes. To invite them to a Space after they are paired, see [Create a Space](/quickstart/general/space). For status, messaging, and remove, see [Contacts](/using-webai/contacts).
Click your name at the bottom of the sidebar, then **Settings**, then **Contacts**.
Click **Generate invite**. Share the QR code, or click **Copy invite link** or **Email**. Each invite works for multiple people for 30 minutes. A countdown shows when it expires.
Stay on Contacts until people pair. They open Contacts, paste the link under **Paste an invite link**, and click **Pair**. Opening the invite link fills that field. They still click **Pair**.
They appear in your list with their name. They are not in a Space until an Admin adds them from that Space under **Share**.
Leaving Contacts before pairing finishes can stop the invite. **Generate invite** and **Pair** need a connection. When the countdown ends, generate another invite.
If someone sent you an invite, paste it under **Paste an invite link** and click **Pair**. Stay on Contacts until you are connected.
# Create a Persona
Source: https://developers.webai.com/quickstart/general/persona
Create a Persona and open a chat with it.
This walkthrough makes a Persona and starts a chat with it. To find one or change one you already have, see [Personas](/using-webai/personas).
Click **Personas** in the left sidebar, or click the **Persona** dropdown on the Home page, then **New Persona**.
Click **Create a persona**. The **New persona** panel opens beside the list.
On a smaller window, this opens full screen instead of beside the list.
Give it a **Name** and say how you want it to sound. Click **Shuffle** if you want a suggestion. Click **Continue**.
The next frames ask what it should do, which tools it may use, and which docs it should read. Click **Continue** to move on. You can leave a frame as it is.
On the last frame, look over the **System prompt**. Edit it if you want, then click **Create**. Click the new card to start a chat.
What each frame is for is on [Personas](/using-webai/personas#create-a-persona). Open that if you want the choice explained before you click **Continue**.
# Create a scheduled task
Source: https://developers.webai.com/quickstart/general/scheduled-task
Open Scheduled Tasks, create a New Task, pick a Persona and schedule, then Create task.
This walkthrough creates a task on **Scheduled Tasks**. To pause, edit, run one now, or ask for a task in Chat, see [Scheduled Tasks](/using-webai/scheduled-tasks).
Click **Scheduled Tasks** in the left sidebar.
Click **New Task**. **Create scheduled task** opens.
Fill in **Name** and **Prompt**. For example, name it `Morning brief` and write a short prompt you want the Persona to run.
Choose a **Persona**. It starts on **Auto**, which decides the tools when the task runs.
Under **Schedule**, set **Repeats** to **Daily**, then pick a time under **Runs at**.
Click **Create task**. The task appears under **Upcoming** with its next run.
You can also ask in [Chat](/using-webai/chat), such as "remind me every morning", then click **Open Scheduled tasks** on the reply. See [Create a task from chat](/using-webai/scheduled-tasks#create-a-task-from-chat).
Keep webAI open when a task is due. Tasks do not run while webAI is closed.
# Create a Skill
Source: https://developers.webai.com/quickstart/general/skill
Create a skill in Skills and use it on a prompt.
This walkthrough makes a skill in **Skills** and uses it on a prompt. For upload, edit, test, Scope, and Draft with AI, see [Skills](/using-webai/skills).
Click **Skills** in the left sidebar.
Click **New skill**, then **Add skill**. The **New skill** panel opens beside the list.
Give it a **Name**. You need a name before **Create skill** will take the click. **Description** is the line you see when you pick it. **Instructions** are what it does.
Click **Create skill**. The skill opens. Open [Chat](/using-webai/chat), type `/`, and choose the new skill. Send the prompt. The skill shapes that reply. You can also open its options and click **Start a chat**.
What **Scope** and **Draft with AI** do, and how to create a skill from a [Persona](/using-webai/personas) you made, is on [Skills](/using-webai/skills#create-a-skill).
# Create a Space
Source: https://developers.webai.com/quickstart/general/space
Make a Space and invite someone from Contacts.
This walkthrough makes a Space and invites someone who is already in Contacts. To use channels, ask a question, or share a file, see [Spaces](/using-webai/spaces).
Click **Spaces** in the left sidebar.
Click **New space**. Give it a **Space name**. **Create** stays off until the name has text. **Description** is optional.
Click **Create**. Click the new Space on the list.
Click **Share** in the title bar. Under **Add people**, add a contact. They join the Space.
An Admin can invite people from **Share**. If **Add people** is empty, add someone in [Contacts](/using-webai/contacts), then come back.
# Appearance
Source: https://developers.webai.com/settings/appearance
Choose System, Light, or Dark.
Appearance sets the theme for webAI. Click your name at the bottom of the sidebar, then **Settings**, then **Appearance**.
## Choose a theme
Click your name at the bottom of the sidebar, then **Settings**, then **Appearance**.
Click **System**, **Light**, or **Dark**. The app switches to that theme. The preview on the card is not a separate control.
**System** follows your device's light or dark setting, and updates when that setting changes. **Light** stays light. **Dark** stays dark. Those two do not follow the device setting after you pick them. Choose the theme here under **Settings → Appearance**. It is not on the account menu.
## Common questions
# Data & Storage
Source: https://developers.webai.com/settings/data-storage
Free space from cached models, manage app data, and clear items that a factory reset keeps.
Data & Storage is where you free space from cached models, manage app data, and clear items that a factory reset keeps. Click your name at the bottom of the sidebar, then **Settings**, then **Data & Storage**.
The page opens on **Apps**. Switch to **Models** for downloaded model files.
## Apps
**Apps** lists built-in apps. Click a row to open its detail.
### Default launch app
**Default launch app** shows which app opens when you start webAI. If none is set, it shows **None — Opens to launcher**. Click **Clear** to remove a default. That does not delete the app or its data.
### Clear app data
Click the app in **Built-in Apps**.
If the app has stored data, click **Clear App Data**, then **Continue**. The app stays installed and returns to its initial state.
Click **Back to Apps** to return to the list.
## Models
Open the **Models** tab to see how much space cached models and related files use. The tab shows a single total for space used. Click **Refresh** to update it. Retired entries and controls that do nothing are hidden, so what you see reflects what is stored.
### Delete a cached model
Open **Cached models**. Each row shows the model and its size. Extra files that belong to a model are labelled **vision projector** or **draft model**, so you can see why they are there.
Click **Reveal** to open the folder on this computer. Click **Delete**, then confirm. The next time you use that model, webAI downloads it again.
You cannot delete a model that is in use. Hugging Face Hub shared entries do not offer **Delete**.
Python environments appear under the same tab. **Reveal** opens the folder. **Delete** frees that space. webAI can rebuild the environment the next time something needs it.
## Preserved on factory reset
**Preserved on factory reset** is at the bottom of the page on every tab. A factory reset keeps these unless you clear them here.
**Clear documents** deletes local docs, whiteboards, tasks, slides, and pixel canvases on this computer. Confirm **Clear documents**. That cannot be undone.
**Reset networking** returns local transport, discovery, and fallback preferences to their defaults. Confirm **Reset networking**. You can change them again under [Devices & Network](/settings/devices-network).
## Common questions
# Devices & Network
Source: https://developers.webai.com/settings/devices-network
Use webAI on another computer as this same account.
Use this page when you want a second computer to use the same webAI account as this one. Click your name at the bottom of the sidebar, then **Settings**, then **Devices & Network**.
This is not the same as [adding a contact](/using-webai/contacts). A contact is another person. A paired device is another computer on this account.
If the other computer has not been set up yet, pair it. If this computer already has its own setup, and you want it to use an account from another computer, use **Join**.
## Pair a device
Pairing adds a computer that is still on the first screen.
Do not pair with someone else's device or a device you do not own, this could lead to identity impersonation. To work with another person, [add them as a contact](/using-webai/contacts) instead.
Click **Pair** next to **Pair a new device**. **Pair device** opens with a QR code under **Scan** and the same warning.
Under **Or share the link**, click **Copy pairing link** to copy it, or **Show link** to read it. You can also let the other computer scan the QR code.
On the other computer, click **Pair with existing device**. Scan the QR code, or open **Link**, paste the pairing link, and click **Pair**.
Both computers show a short code. Click **Confirm** on each one if the codes match. The new computer then appears under **My devices**.
The new computer can look at information that is already on this one. Your shared Spaces and contacts stay in sync between paired computers. A chat or file you add later on one computer is not copied to the other by pairing alone.
A computer can show **Online**, **Offline**, or **Checking**. **Online** means it is connected right now. **Checking** means webAI is still looking. Details about that computer, such as its operating system, appear when it connects. When it is offline, the row shows the last time it checked in.
## Join another device set
Use **Join** when this computer already has its own webAI setup, and you want to throw that setup away so this computer can use an account from another computer.
This removes Spaces, shared files, chats, contacts, and messages that live on this computer. You stay signed in to webAI Cloud, and your profile stays.
Click **Join** next to **Join another device set**.
Type **confirm**, then click **Remove and pair**. webAI returns to the first screen and opens pairing.
On the computer you are joining, click **Pair** and share the QR code or pairing link. Scan or paste it here, then click **Confirm** on both computers if the codes match.
## Rename or remove a computer
The name is a label on this computer. Click it, type a new name, then press Enter or click away. The other computer keeps its own label. An empty name is not saved. Until you rename them, this computer is called **This device** and another computer is called **Linked device**.
You cannot remove this computer from the list. To drop another computer, click **Remove**. That computer can no longer use this account. The next time it opens webAI, it goes back to the first screen and clears the chats, contacts, and Space files tied to this account on that computer. A file you already saved outside webAI is not deleted.
## This computer
**This device** describes this computer. You do not change those rows here.
**Peer ID** and **Pubkey** are IDs for this computer's connection. You do not need them to pair. Click either one to copy the full ID. The screen shows a short version. Copy one if someone helping you asks for it.
## Common questions
# Model
Source: https://developers.webai.com/settings/model
Choose the local model Chat and Personas use on this computer.
Model is where you choose the local model Chat and Personas use on this computer. Click your name at the bottom of the sidebar, then **Settings**, then **Model**.
Picking a model does not download it yet. **Apply** starts the download and load.
## Choose a model
Click your name at the bottom of the sidebar, then **Settings**, then **Model**.
Click the model field. Pick a family, then a size. Some models also ask you to pick a quantization. Models are listed by their catalog display names, not raw repository ids. Each row shows whether that model can accept images.
Each choice shows how much memory it needs. A laptop mark means that model is already on this computer. A download mark means it is not. The footer shows free disk space.
Click **Apply**. Progress appears in the header as **Downloading model** or **Loading model**, with a percent. A model published in several parts shows which part is in progress.
If that model is already loaded, **Apply** stays off until you pick a different one. While the same model is downloading, click **Apply** again to stop it.
**Thinking mode** appears when the selected model can show its reasoning. It starts on. Leave it on to get **Thinking** and **Thought process** in [Chat](/using-webai/chat). Turn it off to skip that reasoning step.
Some catalog models need a Hugging Face token before the first download. Save the token when the form appears, then click **Apply**.
## New and removed models
* **New in the catalog:** TwIL 3B Pro, TwIL 2B, and Granite 4.2 8B.
* **Default on 8 GB Macs:** TwIL 3B Pro.
* **Removed from the catalog:** Llama 3.2, Gemma 3 1B, and Granite 4.1. If you downloaded one of these, webAI deletes its files to free up disk space. Pick another model and click **Apply**.
## Personas on this page
The **Persona** list is on the same Settings page. Local Personas use the model you applied above. Click **+ New Persona** to create one, or open a row to edit it.
For chatting with a Persona and the full create flow, see [Personas](/using-webai/personas).
## Common questions
# Online & Connectors
Source: https://developers.webai.com/settings/online-connectors
Connect Slack, and review recent tool actions.
Online & Connectors is where you connect Slack so Chat and Personas can use it, and where you review recent tool actions. Click your name at the bottom of the sidebar, then **Settings**, then **Online & Connectors**.
## How tools work
A local model can answer from what you type. Tools let it also look things up or take an action outside the chat.
MCP (Model Context Protocol) is the shared format for those tools. When Slack is connected, Slack tools are available to the model. In Chat, the model can pick a tool that fits your request. webAI runs that call on this computer and logs it under **Recent tool actions**.
You do not pick the tool name yourself. You ask in Chat, and the model chooses when a tool helps. You can also assign a tool to a Persona so that Persona can use it. See [Personas](/using-webai/personas).
## Connect Slack
Click your name at the bottom of the sidebar, then **Settings**, then **Online & Connectors**.
Click **Connect** on **Slack**. A sign-in window opens.
Complete the sign-in. The Slack row shows **Connected** when it works.
## What Slack can do
After Slack is connected, Chat can use these Slack tools. The names below are what appear under **Recent tool actions**.
**`slack_search_messages`** searches your workspace for messages that match a topic, person, or keywords.
**`slack_get_channel_history`** retrieves recent messages from one channel, group, or DM.
**`slack_list_channels`** lists channels across the workspace.
**`slack_list_user_conversations`** lists channels and DMs you are in.
**`slack_lookup_users`** resolves a Slack person to an ID, name, and username.
**`slack_post_message`** posts a message to a channel or DM. webAI asks you to approve before it sends.
**`slack_reply_in_thread`** replies in an existing thread. webAI asks you to approve before it sends.
## Disconnect Slack
Open the connected Slack row, then disconnect it. Confirm **Disconnect**. The saved Slack connection is removed. Chat can no longer use Slack tools until you connect it again.
## Action history
**Recent tool actions** lists tool attempts on this computer. Each row shows when it ran, the tool name, whether it was a read or a write, and the result. Slack reads show as **Read**. Posts and replies show as **Write**.
Other tools can appear in this list too. For example, a web search can log here without a Slack connection.
Click **Clear** to empty the list. That does not disconnect Slack.
## Common questions
# Personalization
Source: https://developers.webai.com/settings/personalization
Set the greeting, and save facts a later chat on this device can use.
Personalization holds greeting settings and the facts saved as long-term memory. Click your name at the bottom of the sidebar, then **Settings**, then **Personalization**.
## Weather-based greetings
Click your name at the bottom of the sidebar, then **Settings**, then **Personalization**.
Turn on **Weather-based greetings**. That uses your location to look up weather for the greeting. When it succeeds, the row names the city. If the lookup fails, weather stays off.
Click **Refresh** on **Update location** to look up the city again. If that fails, the saved city stays as it was.
Turn **Weather-based greetings** off to stop using weather in the greeting. That does not clear the greeting history.
## Clear greeting history
**Clear** on **Clear greeting history** resets the personalization patterns and highlights used in the greeting. It does not ask you to confirm. It does not turn weather off, and it does not remove a saved memory.
## Long-term memory
**Long-Term Memory** is a list of facts about you. A chat on this device can use them in a later reply. A Persona that runs on someone else's device does not get them.
The list holds 100 memories. The row shows how many are saved.
An **Always-on** memory is included when a chat on this device uses saved memory. Move one here when the fact should come along even if you did not mention it.
A **Contextual** memory is included when it fits the current conversation. A fact saved from a chat lands here. **Contextual (on demand)** is the same choice on the add form.
### Add a memory
Under **Add a memory manually**, type a short fact. **Add memory** stays off until the field has text. A password, a card number, or a medical detail is not saved.
**Preference** is something you like or how you want work done. **Identity** is who you are, such as a name or where you live. **Artifact reference** is a project, document, or tool you said you own, use, or work on.
Leave **Contextual (on demand)**, or choose **Always-on**.
Click **Add memory**. The fact appears in that list. The row shows the category and a confidence number. A memory you add is saved as certain.
If the list is full, remove a memory and add again. A duplicate of a fact already saved is not added a second time.
### Change or remove a memory
**Make always-on** and **Make contextual** move a fact between the two lists. **Edit** changes the words and the category, then **Save**. **Cancel** leaves it as it was. **Remove** takes that one fact off the list. It does not ask you to confirm.
### Reset all memories
**Reset all** is off when the list is empty. Click it, then confirm **Reset all**. That removes every saved memory. It cannot be undone. It does not clear greeting history.
## Common questions
# Privacy & Security
Source: https://developers.webai.com/settings/privacy-security
Choose whether usage analytics are shared.
Click your name at the bottom of the sidebar, then **Settings**, then **Privacy & Security**.
## Product analytics
**Share usage analytics** sends pseudonymous usage events so webAI can be improved. Message content, Persona names, and contact identifiers are not included. Turn it off to stop sending those events. You can change this later.
See the [Privacy Policy](https://www.webai.com/webai-app-privacy-policy) for how that data is handled.
## Developer analytics
**Allow developer analytics** saves the preference. It does not send diagnostics.
## Common questions
# Profile
Source: https://developers.webai.com/settings/profile
Change the name and picture on this account, and copy its identity.
Profile is the name and picture on this account. Click your name at the bottom of the sidebar, then **Settings**. Settings opens on **Profile**.
## Change your name and picture
Click your name at the bottom of the sidebar, then **Settings**.
Edit **Name**, then press Enter or click away. The name saves, and it is the name at the bottom of the sidebar. On the desktop app, paired devices can pick up that name. If that update does not go out, the name still saves on this device.
Click **Profile picture** and choose an image. That picture replaces the one on this account. A file that is not an image is rejected.
## Identity
**ODID** is your identity on the webAI network. Click it to copy the full value. The row shows a shortened form.
On the desktop app, **IDN User ID** is the identity used when contacts, conversations, and Spaces copy across your paired devices. Click it to copy the full value. When it reads **Not available yet**, the sync controls are not shown.
## Sync across devices
On the desktop app, after **IDN User ID** is available, these controls copy data onto your other paired devices. A status mark beside each reset shows idle, running, waiting, or retrying.
### Reset contact sync
**Reset contact sync** starts the copy of your contacts across paired devices again. It does not remove anyone from Contacts.
### Reset message sync
**Reset message sync** starts the copy of conversations with your contacts across paired devices again. It does not delete those conversations.
### Reset space sync
**Reset space sync** starts the copy of your Spaces across paired devices again. It does not delete a Space.
## Log out
Click **Log out** at the bottom of the Settings list, then confirm **Log out**. That clears the cloud session on this device. Your local identity, chats, and files stay.
## Delete this user
On the desktop app, **Delete user** is under **Identity**. It is not the same as logging out, and it is not a factory reset.
Click **Delete user**.
Confirm **Delete user**. This cannot be undone. It removes your identity from this device, discards this device's network address, and signs you out. Former contacts cannot reach this device until you [pair](/using-webai/contacts) again.
Delete this user does not erase chats, files, and settings. To clear app data on this device, use **Factory reset** in [System](/settings/system).
## Common questions
# System
Source: https://developers.webai.com/settings/system
Check the version, manage updates, see this computer's tier, and reset the app.
System is where you check the version, manage updates, see this computer's tier, and reset the app. Click your name at the bottom of the sidebar, then **Settings**, then **System**.
## About
**Version** shows the build you are running.
**What's New** opens release notes for recent updates. Click **View**. If this build has no notes, the row says so.
**Automatic updates** starts on. Leave it on to check for updates in the background and download them when they are ready. Turn it off to stop that.
Click **Check for updates** to look now. If an update is ready, click **Download and install**.
## Legal
Click **View** next to **Third Party Notices** to read open source licenses and attributions.
## This Machine
**Device tier** is a read-only label from this computer's memory. It sets which features start on when you first set up webAI. Toggles you change yourself stay as you left them.
| Device tier | Installed memory |
| - | - |
| **Tier 1** | Under 16 GB |
| **Tier 2** | 16 GB to under 32 GB |
| **Tier 3** | 32 GB to under 64 GB |
| **Tier 4** | 64 GB and above |
If webAI cannot measure memory, it uses **Tier 1**.
Hardware details under **This Machine** appear when the System Profile integration is available. Otherwise the row tells you that integration is needed.
## Desktop & Context
**Start on login** opens webAI when you sign in to this computer. It starts on.
**Background mode** keeps webAI running in the tray when you close the window. It starts on.
**Notifications** shows system notifications when webAI is in the background. It starts on. Click **Test notifications** to send a sample.
**Quicklaunch shortcut** turns on the global shortcut panel. It starts off.
## Diagnostics
**Performance Metrics** shares inference timing such as time to first token, throughput, and model load time. It starts off.
### Export logs
Use **Help → Export Logs...** when you need a log package for support. A progress dialog titled **Exporting logs** appears while webAI collects and redacts recent logs. If something goes wrong, the dialog says **Export failed** and offers **Retry**. A very large log collection is trimmed so the export can still finish.
## Factory reset
**Factory reset** cannot be undone. It clears app data on this device, including settings, chats, browser history, indexed folders, saved websites, and sub-apps, then reloads webAI.
Network connection settings and local documents stay. To clear those, use [Data & Storage](/settings/data-storage#preserved-on-factory-reset).
Click your name at the bottom of the sidebar, then **Settings**, then **System**.
Click **Factory reset**.
Click **Continue**. webAI resets and reloads.
## Common questions
# Frequently asked questions
Source: https://developers.webai.com/support/faq
Answers to common questions about Chat, Spaces, Personas, Skills, Contacts, and Settings.
Browse by topic below, or open a guide: [Introduction](/getting-started/introduction), [Chat](/using-webai/chat), [Spaces](/using-webai/spaces), [Personas](/using-webai/personas), [Artifacts](/using-webai/artifacts), [Skills](/using-webai/skills), [Contacts](/using-webai/contacts), and [Settings](/settings/profile).
## Getting started & privacy
## Chat
## Spaces
## Personas
## Artifacts
## Skills
## Contacts
## Profile
## Appearance
## Personalization
## Privacy & Security
## Devices & Network
## Model
## Online & Connectors
## Data & Storage
## System
# Support & Community
Source: https://developers.webai.com/support/support
Get help, connect with the community, and stay up to date with webAI.
## Get Help
Have a question or need assistance? We're here to help you get the most out of webAI.
Open a support ticket and our team will get back to you as soon as possible.
Reach out directly at [support@webai.com](mailto:support@webai.com) for technical assistance.
***
## Join Our Community
Connect with developers, share ideas, and get help from the webAI community.
Connect with others building with webAI. Ask questions, share ideas, and join build challenges.
***
## Stay Updated
Keep up with the latest news, features, and tutorials from webAI.
Read the latest news, tutorials, and product updates.
Watch tutorials, demos, and deep dives into webAI features.
Follow us for announcements and community highlights.
***
## Quick Links
Get started with the webAI desktop app on macOS.
Answers to common questions about privacy, models, and settings.
See what's new in the latest releases.
# Terminology
Source: https://developers.webai.com/support/terminology
webAI product terms and common AI vocabulary for readers new to the app or to AI.
Use this glossary when a word in the docs or the app is new. Start with general AI terms, then webAI concepts and surfaces. For how-to steps, open the linked guide.
## General AI
| Term | Definition |
| - | - |
| **Prompt** | The text you send to a model: a question, a statement, or a request. |
| **Reply** | The model's response to a prompt. Also called a completion. |
| **Token** | A small piece of text a model reads or writes. A word may be one token or several. Speeds in Chat often use **tok/s** (tokens per second). |
| **Context window** | How much text (in tokens) the model can consider at once, including the prompt, recent messages, and the reply so far. |
| **Prefill speed** | How fast the model processed the prompt, in tok/s. Shown under [Response stats](/using-webai/chat#response-stats). |
| **Prompt eval** | Prompt tokens that needed evaluation this turn (total prompt tokens minus cached). Shown under [Response stats](/using-webai/chat#response-stats). |
| **Cached prompt** | Prompt tokens reused from the session cache. Shown under [Response stats](/using-webai/chat#response-stats). |
| **Decode speed** | How fast the model wrote the reply, in tok/s. Shown under [Response stats](/using-webai/chat#response-stats). |
| **Generated tokens** | Tokens in the answer. Shown under [Response stats](/using-webai/chat#response-stats). |
| **First token** | Time to the first generated token after prefill. It does not include prompt-eval wall time. Shown under [Response stats](/using-webai/chat#response-stats). |
| **Response time** | Prefill plus generation wall time for that turn. Shown under [Response stats](/using-webai/chat#response-stats). |
| **Context usage** | Tokens used this turn over the model's **Context window**, shown as used / total with a percent. See [Response stats](/using-webai/chat#response-stats). |
| **Parameters** | The learned weights inside a model. A label like "7B parameters" describes size, not speed. |
| **Inference** | Running a model to produce a reply from a prompt. |
| **System prompt** | Instructions that shape tone, role, and limits before the user prompt. In webAI, Personas and Skills carry this kind of instruction. |
| **Temperature** | A setting that makes replies more fixed (lower) or more varied (higher). |
| **Model** | The trained program that turns prompts into replies. |
| **Local model** | A model that runs on your computer when you choose that path. A cloud model runs on someone else's servers. |
| **Quantization** | A smaller, less precise copy of a model that needs less memory. Model settings may ask you to pick a quantization. See [Model](/settings/model). |
| **Fine-tuning** | Further training a model on extra examples so it fits a narrower task. |
| **LoRA** | A small adapter loaded on top of a base model to specialize behavior without replacing the full model. |
| **Embedding** | A numeric representation of text that captures meaning so similar items sit close together. |
| **Embedding model** | A model built to turn text into embeddings for search and comparison. |
| **Chunk** | A short piece of a longer document, split so search and retrieval can work on manageable units. |
| **Chunking** | The process of splitting documents into chunks. |
| **Vector search** | Finding text by similarity of embeddings, not only by exact keywords. |
| **RAG** | Retrieval-augmented generation: fetch relevant chunks first, then ask the model to answer with that material. |
| **Hallucination** | A confident reply that is wrong or invented. |
| **Grounding** | Anchoring a reply in supplied documents, tools, or facts instead of relying only on the model's prior training. |
| **Tool calling** | Letting the model choose an external action, such as searching Slack, when a prompt needs it. |
| **MCP** | Model Context Protocol, a shared format for exposing tools to a model. See [Online & Connectors](/settings/online-connectors). |
## webAI concepts
| Term | Definition |
| - | - |
| **Collaborative intelligence** | Specialized AI working with people, not only a single general model in the cloud. In the app that shows up as Personas, Spaces, Chat, Artifacts, and Skills. |
| **Intelligence Delivery Network (IDN)** | The connective layer behind peer-to-peer work in webAI. It is the network where intelligence runs, connects, and improves on hardware you control. Read more on the [IDN platform page](https://www.webai.com/platform/intelligence-delivery-network). |
| **Peer-to-peer** | Devices connect to each other for collaboration. In Spaces and Contacts, a message, a file, and a Persona call move between those devices. |
When you use a [downloaded model](/settings/model), replies can be generated on your machine. Other paths, such as a connected Persona on someone else's device or a tool that reaches an outside service, can send work off your machine. See the [Privacy Policy](https://www.webai.com/webai-app-privacy-policy) for how that data is handled.
## Surfaces
| Term | Definition |
| - | - |
| **Chat** | Where you send a prompt and use the reply. Threads stay under **History**. See [Chat](/using-webai/chat). |
| **Auto** | In Chat, lets webAI choose who answers instead of locking a Persona. You can also type `@` and pick a Persona from the list. Auto can pick a Persona you created when the request matches what that Persona is for. |
| **What is it for?** | The step in **New persona** where you say what the Persona should do, so Auto can route matching requests to it. See [Create a Persona](/using-webai/personas#create-a-persona). |
| **Answer as** | On a reply, asks another Persona to take the same prompt. |
| **Persona** | A setup with a name, instructions, and tools you can chat with. See [Personas](/using-webai/personas). |
| **Array** | A built-in Persona for multi-step research and planning. It appears on **Tier 3** and **Tier 4** (32 GB and above). See [Array](/using-webai/personas#array). |
| **Connected Persona** | A Persona shared by someone else. It still runs on the device of the person who shared it. Connected Personas do not appear in Contacts. |
| **Scheduled Tasks** | Saved prompts a Persona runs on a schedule. Open **Scheduled Tasks** in the left sidebar to see every task. See [Scheduled Tasks](/using-webai/scheduled-tasks). |
| **Space** | A shared place where invited people collaborate from their own devices. See [Spaces](/using-webai/spaces). |
| **Channel** | A conversation inside a Space. Channel messages copy onto members' devices. |
| **Ask anything** | A question you ask with the Space, not a private chat and not a channel message. |
| **Shared knowledge** | Documents added in a Space that people collaborating there can search. |
| **Admin / Contributor** | Roles in a Space. Admins invite people and manage roles. Contributors collaborate with documents, channels, and Personas. |
| **Artifact** | A document a chat produced after you choose **Yes, show dynamic doc**. See [Artifacts](/using-webai/artifacts). |
| **Skill** | Saved instructions you apply to a prompt. Type `/` in Chat to pick one, or use a Persona's **Skills** list. See [Skills](/using-webai/skills). |
| **Contacts** | People you add so you can invite them to a Space. See [Contacts](/using-webai/contacts). |
| **Generate invite / Pair** | Create an invite that works for multiple people for 30 minutes, then complete pairing so they appear in Contacts. |
## Identity and network
| Term | Definition |
| - | - |
| **ODID** | Your identity on the webAI network. Copy it from [Profile](/settings/profile). |
| **IDN User ID** | On the desktop app, the identity used when contacts, conversations, and Spaces copy across paired devices. See [Profile](/settings/profile). |
## Privacy
| Term | Definition |
| - | - |
| **Share usage analytics** | A Privacy & Security preference that sends pseudonymous usage events so webAI can be improved. Message content, Persona names, and contact identifiers are not included. See [Privacy & Security](/settings/privacy-security). |
## Models and device
| Term | Definition |
| - | - |
| **Downloaded model** | A local model you apply in Settings so Chat and Personas can use it on this computer. See [Model](/settings/model). |
| **Thinking mode** | When the selected model supports it, shows **Thinking** and **Thought process** in Chat. |
| **Device tier** | A read-only label from this computer's memory. It sets which features start on at setup. See [System](/settings/system). |
| **Long-Term Memory** | Facts about you that a chat on this device can use in a later reply. See [Personalization](/settings/personalization). |
# Artifacts
Source: https://developers.webai.com/using-webai/artifacts
Turn a chat reply into a document, then preview it, share it, or download it.
An artifact is a document a chat produced. Open **Artifacts** in the left sidebar to find it again. There is no button to make one here. A reply stays a chat until you click **Yes, show dynamic doc**.
The list is grouped by chat. Click a chat to see the documents it produced.
Click a document. Switch between **Preview** and **Code**.
Click **Share**. Copy it as markdown, email it, or send it to a conversation.
Click the Download icon. The file is saved to your Downloads folder.
## Create an artifact
There is no create button on this page. A reply is not added here until you click **Yes, show dynamic doc**.
Click **Personas** and click a Persona, or click **Home** in the left sidebar. Either one opens a thread you can ask in.
Send `Write a short Hello, World HTML file.` Wait until the reply finishes.
The reply shows an HTML block, with a line count, **Open in sidebar**, and **Open in Browser**. Those preview the file.
Under the reply, you see **Create dynamic doc preview for this response?** Click **Yes, show dynamic doc**. The reply becomes a preview.
**Keep as chat** leaves the reply as chat. It does not create an Artifact, and it hides that prompt for the rest of this chat. Open the options on the chat and turn **Dynamic docs** back on if you want the prompt again.
On that preview, click **Open in Artifacts**. The document is listed under that chat. **Preview** shows it. **Code** shows the text. **Open full doc** opens it in Docs instead.
## Find an artifact
Click **Artifacts** in the left sidebar.
Click the chat that produced the document. You see each artifact from that chat, with when it was last edited.
Click the artifact. **Preview** shows the document. **Code** shows the text.
Click the Copy icon to copy the text. Click the Download icon to save a file. A notice says the download finished, and the file is in your Downloads folder.
There is no delete control on an artifact. It lives in the chat that produced it. Open that chat under **History**, open its options, and click **Delete**. **Archive** hides the chat. It does not take the artifact off this list. A copy you already sent to a conversation stays in that conversation.
If the list is empty, no reply has been turned into a document yet. Ask for a short HTML file, then click **Yes, show dynamic doc**. The page says your generated documents will show up here.
When a reply in [Chat](/using-webai/chat) includes **Open in Artifacts**, that click opens this document. You do not have to hunt for the chat tile first.
Open the options on a chat you own and click **Open chat** to go back to that thread. **Rename** opens **Rename chat**. Change the **Name** and click **Save**.
## Share an artifact
Click **Share** on an open artifact, or the share icon on a row. On a chat tile, open the options and click **Share**. Either one opens **Share artifact**.
**Copy as markdown** puts the document on your clipboard. **Email** opens a mail draft with the document in it.
Under **Send to a conversation**, click a person or a group. If you have no one to send it to yet, the dialog says so.
## Find a chat on the list
On the **Artifacts** list, use the filters and search on the title row:
Every chat on this device that has produced an artifact.
Artifacts from chats you started.
Artifacts someone shared with you. You did not produce these in a chat on this device.
Click the search icon to open pop-up search and type a name. Open the filter and click **A → Z** to order the list by name.
## Common questions
# Chat
Source: https://developers.webai.com/using-webai/chat
Send a prompt in Chat, use the reply, and continue the thread later.
Chat is where you give webAI a prompt and use what comes back. That prompt can be a question, a statement, or a request. Open **Home** in the left sidebar.
Ask for a first pass, a rewrite, or a shorter version. Copy the reply when it is what you want.
Ask for an HTML file or a piece of code. Open it beside the thread to preview or download it.
Start in **Auto**, pick a Persona from the icon, or type **@** and choose one. **Answer as** on a reply asks another Persona to take the same prompt.
The thread stays under **History**. Pin it if you want it above the rest of the sidebar.
## Send a prompt
Click **Home** in the left sidebar.
Type what you want. It does not have to be a question.
Click the Microphone icon to dictate with your voice.
The shortcut is **Cmd + D**.
Type `/` and choose a skill for this message. Create and manage skills on a custom [Persona](/using-webai/skills).
Type `@` and pick a Persona from the list to have that Persona answer. Typing `@` without picking from the list does not select anyone. You can also click the Persona icon and choose **Auto**, or pick a Persona there.
Click the paperclip to **Attach files or images**, or drop a file onto the composer.
Click the send icon. Click it again while a reply is generating to stop.
The reply writes into the thread as it arrives.
On a model with reasoning, **Thinking** stays open while the model works. When the reply arrives, it folds up as **Thought process**. Click it to read the reasoning again. That reasoning stays separate from the reply.
**Copy** copies the finished reply. **Regenerate** asks the same assistant for another version. If the reply includes code or HTML, click **Open in sidebar**.
## Attach a file
Click the paperclip (**Attach files or images**), or drop a file onto the composer. The same control is available when you chat with a [Persona](/using-webai/personas).
You can attach:
* **Images:** `.gif`, `.jpeg`, `.jpg`, `.png`, `.webp`
* **Text:** `.txt`, `.md`, `.csv`, `.json`, `.xml`, `.log`, `.rst`
* **Web:** `.html`, `.htm`
* **Documents:** `.pdf`, `.docx`
Legacy `.doc` files are not supported. Attach one document at a time, or drop one folder when you want those files indexed.
### When it attaches directly
* **Images** join the prompt as image attachments.
* **Text** and **HTML** join as text on that message. Extracted text is capped at **12,000 characters**. Longer text is truncated, and the attachment notes that.
* **PDF** and **DOCX** files with **4 pages or fewer** attach page by page on that message.
A PDF or DOCX over **50 MB** is too large to preview for this attach path.
### When it needs indexing
A **PDF** or **DOCX** with **5 or more pages**, a **folder**, or a document that cannot be previewed page by page must be indexed first. webAI opens a dialog that says the document is too long to attach page by page (or that a folder will be indexed). Choose **This conversation only**. The files stay searchable in this chat and are deleted with the chat.
To give a [Persona](/using-webai/personas#create-a-persona) lasting document context, add files under **Docs it should read** when you create or edit that Persona.
## Use the reply
If you opened code or HTML in the sidebar, use **View** or **Preview**, or **Download**. If the reply includes **Open in Artifacts**, the document is listed under [Artifacts](/using-webai/artifacts).
When an answer lists the sources it used, click a citation to open that document's preview. A source held only on someone else's device shows **Preview unavailable** instead of opening the wrong file.
A Persona is a saved setup you can hand a prompt to. Click the Persona icon and choose **Auto**, or pick a Persona. Or type `@` in the prompt and pick a Persona from the list. **Auto** can pick a Persona you created when the request matches what that Persona is for, and the reply shows which Persona answered. See [Create a Persona](/using-webai/personas#create-a-persona). On a reply, open **Answer as** and pick another Persona to answer that same prompt. To start a thread on one Persona, open [Personas](/using-webai/personas) and click it.
## Response stats
On a finished assistant reply, open the info control next to **Copy** and **Regenerate**. Speeds use **tok/s** (tokens per second). Rows appear only when the app has a value. If none are available, the control says **Stats unavailable for this reply.** Definitions for these labels also live in [Terminology](/support/terminology).
* **Prefill speed**: How fast the model processed the prompt.
* **Prompt eval**: Prompt tokens that needed evaluation this turn (total prompt tokens minus cached).
* **Cached prompt**: Prompt tokens reused from the session cache.
* **Decode speed**: How fast the model wrote the reply.
* **Generated tokens**: Tokens in the answer.
* **First token**: Time to the first generated token after prefill. It does not include prompt-eval wall time.
* **Response time**: Prefill plus generation wall time.
* **Context usage**: Tokens used this turn over the model context window, shown as used / total with a percent.
When a turn used tools, the popover can also say that tool steps change the prompt suffix, so only the common prefix is reusable.
## Return to a thread
**History** lists recent chats. Open the options menu on a row and choose **Pin to sidebar**, **Rename**, **Archive**, or **Delete**. Pinned chats sit under **Pinned**.
Click **see all** next to **History** to open **Chats**. Search your threads, click **New chat**, or select some and click **Delete**.
**Show archived** appears on that list when you have archived a chat.
## Common questions
# Contacts
Source: https://developers.webai.com/using-webai/contacts
Add a person so you can invite them to a Space.
Contacts is where you add a person so you can work with them. Click your name at the bottom of the sidebar, then **Settings**, then **Contacts**. Adding someone does not put them in a [Space](/using-webai/spaces).
Generate an invite, or paste one you received. They join Contacts when pairing finishes.
A Space Admin can add them under **Share** after they are in Contacts. Adding them here does not do that.
## Add a contact
Click your name at the bottom of the sidebar, then **Settings**, then **Contacts**.
Click **Generate invite**. Share the QR code, or click **Copy invite link** or **Email**. Each invite works for multiple people for 30 minutes. A countdown shows when it expires.
Stay on Contacts until people pair. Leaving before that can stop the invite from completing. Click **Stop inviting** to cancel an unused invite.
The other person opens Contacts, pastes the link under **Paste an invite link**, and clicks **Pair**. Opening the invite link fills that field. They still click **Pair**.
They appear in your list with their name when pairing finishes. They are not in a Space until an Admin adds them from that Space under **Share**.
**Generate invite** and **Pair** need a connection. Reconnect before you use them if you are offline. When the countdown ends, generate another invite.
Pairing uses webAI's peer-to-peer connection. It shares your IP address, which can show an approximate location, and your device's public identity, with the person you add. Connect with people you trust.
## People in Contacts
Contacts lists people you paired with. Connected Personas do not appear here. Find them on [Personas](/using-webai/personas).
Each row shows their name and a status: **Online**, **Away**, **Busy**, or **Offline**. A row that says **Re-pair needed** needs a new invite. Generate one and pair again.
On the desktop app, the row also shows their IDN. Click it to copy it.
**Message** on a contact's row opens a conversation with that person.
On the title row, open the filter and choose **Everyone**, **Online**, or **Offline**. **Away** and **Busy** still match **Online**. Click the search icon to open pop-up search and type a name.
If Contacts says it could not load your contacts, they are not gone. It keeps trying. **No contacts yet** means you have not added anyone.
## Remove a contact
Open the options on their row.
Click **Remove**, then confirm **Remove**. That drops the pairing, takes them off Contacts, and clears the conversation with them. Removals stay removed after a restart, and contacts added or deleted on another of your devices show up correctly everywhere. It does not remove them from a Space they already joined. You can pair again later.
## Common questions
# Personas
Source: https://developers.webai.com/using-webai/personas
Open a Persona to chat with it, create one you can call up later, or schedule work for a Persona you made.
Open **Personas** when you want a chat with a setup you chose, not whoever **Auto** picks. Click a card and you are in that thread. Built-in Personas and Personas you create share the same sidebar places for **Scheduled**, **Artifacts**, **Docs**, and **Skills**.
Click a card. The thread uses that Persona's name, prompt, and tools.
Walk through **New persona**. A name is enough to start. You can fill in the rest later.
Open **Scheduled** on a Persona and book a prompt to run later.
Open its settings to edit it, or delete it if you are done with it.
## Chat with a Persona
Click **Personas** in the left sidebar.
Click the Persona you want. A chat opens with that Persona.
Type what you want and send it. Attach a file with the paperclip the same way you do in [Chat](/using-webai/chat#attach-a-file). Copy, regenerate, and open a file from the reply the same way too. When the reply lists sources, click a citation to open that document's preview. A source held only on someone else's device shows **Preview unavailable**.
The sidebar also has **Scheduled**, **Artifacts**, **Docs**, and **Skills**, and it stays open while you chat with that Persona. Click a skill there to use it on that chat. To add or create skills, open **Skills**, click **Add More**, then **+ Create a new skill** when you want a new one. See [Skills](/using-webai/skills). You can also pick a Persona from the Persona icon in [Chat](/using-webai/chat), type `@` there and choose one, or leave that icon on **Auto**.
## Array
**Array** is a built-in Persona for multi-step research and planning. It appears when the device tier is **Tier 3** or **Tier 4** (32 GB of memory and above). Check the tier under [Settings → System](/settings/system#this-machine). On a smaller tier, Array does not show on the Personas list.
Click **Personas** in the left sidebar, then click the **Array** card. A chat opens with Array.
Type what you want and send it. To include an image, click the paperclip (**Attach files or images**) and choose a **PNG**, **JPG**, **GIF**, or **WebP** file. The same attach control is documented in [Chat](/using-webai/chat#attach-a-file).
The reply writes into the thread as it arrives.
Array can show progress under **Plan Pipeline** while it coordinates the steps for that answer. That progress UI is for Array, not for every Persona.
**Copy** copies the finished reply. **Regenerate** asks Array for another version.
### Location for an answer
When Array needs this device's location to answer, webAI opens **Allow device location?** Click **Always ask** to approve this time and get asked again later, or **Always allow** to remember the choice. Location is used when you allow it for that answer. Web search is built into Array, and that path can send search work off your device. See the [Privacy Policy](https://www.webai.com/privacy).
**Settings** is available on Array. **Name**, **Description**, **Connectors**, and **Response tone** are fixed. You can still use **Docs**, **Skills**, **Artifacts**, and **Scheduled** the same way as other Personas.
## Manage documents
Open a Persona, then click **Docs** in its sidebar. Click **Add document** to give that Persona lasting files to read. Supported extensions match **Docs it should read** when you create a Persona.
To remove a document, open the options on its row and click **Remove**, then confirm **Remove**. The file leaves that Persona's Docs. You can add it again later.
## Schedule a task
**Scheduled** on a Persona's sidebar lists the tasks that Persona is on. **Auto** does not have this place. To see every task across Personas, click **Scheduled Tasks** in the left sidebar. See [Scheduled Tasks](/using-webai/scheduled-tasks).
Click **Personas**, open a Persona, then click **Scheduled**.
Click **Schedule task**. **Create scheduled task** opens, set to this Persona.
Fill in **Name** and **Prompt**. **What this task can do** shows this Persona's tools, and lets you pick one of its skills under **Skill to apply on every run**. Under **Schedule**, set **Repeats** to **Once**, **Every N minutes**, **Daily**, or **Weekly**. Times are local to this device.
Keep webAI open when the task is due. It does not run while webAI is closed.
Click **Create task**. The task joins **Scheduled tasks** with its schedule. Click its toggle to **Pause** or **Resume** it.
When it runs, webAI opens a chat named **Scheduled:** plus the task name. Later runs reuse that chat. Open it from **Recents** on that Persona's sidebar.
A task can use only the tools and skills this Persona has. See [Give the Persona tools and skills first](/using-webai/scheduled-tasks#give-the-persona-tools-and-skills-first).
## Create a Persona
Click **Create a persona**. The **New persona** panel opens beside the list. **Continue** moves you forward. **Back** goes to the previous frame. The Persona joins the list when you click **Create**.
On a smaller window, this opens full screen instead of beside the list.
Give it a **Name**, then fill in **How do you want it to sound?** and **What is it for?** **Shuffle** suggests a name and voice, until you type your own. **Continue** stays off until the name has text.
**Auto** uses **What is it for?** to pick a Persona for a request. Describe the tasks and topics this one handles, specifically enough to tell it apart from your others. If you leave it empty, Auto does not route to this Persona. You can still pick it yourself.
Check the jobs it should start with. You can pick more than one, or none, and add skills later from **Skills** → **Add More**.
* **Draft and edit documents**
* **Summarize**
* **Research**
* **Project tracking**
Check a tool to let this Persona use it. A tool that needs a login shows **Connect** until you sign in. You can do that now, or later.
Drop files on **Drop files here**, or browse. Skip this if you have nothing to add. You can add or remove files later from **Docs** on that Persona's sidebar. See [Manage documents](/using-webai/personas#manage-documents).
Supported extensions include PDF, DOCX, Markdown, HTML, CSV, JSON, and common text formats. Folder import shows **Soon** and is not available yet.
These documents give that Persona context. Attach files for a single chat with the paperclip in [Chat](/using-webai/chat#attach-a-file).
**Yes, train** this Persona **as I work** lets it learn from later chats. **No, I'll update it manually** leaves it as you set it up.
The last frame is the **System prompt**. Edit it. **Regenerate** asks for another draft when a model is ready. Then click **Create**, and click the new card to start a chat.
## Find or change a Persona
On the **Personas** list, use the filters and search on the title row. Spaces, Artifacts, Skills, and Contacts share the same empty states, title-row controls, and pop-up search. **All**, **Yours**, and **Shared with you** apply on Personas, Skills, and Artifacts.
Every Persona on this device, including ones that shipped with webAI.
Personas you created here. If the list is empty, you have not made one yet.
Personas someone you paired with shared. You did not create these on this device.
Each card shows how many tools, skills, scheduled tasks, and knowledge bases that Persona has.
Click the search icon to open pop-up search and type a name. Click the sort icon to order the list from A to Z.
Hover a card you created and click its settings icon. **Delete** removes that Persona.
**Auto** has no settings icon. It is the picker in Chat, not a Persona you edit here.
Where a reply is generated depends on that Persona's setup. When you use a downloaded model, replies can be generated on your machine. A network-hosted Persona, or a cloud model on your own API key, sends that work off your device. See the [Privacy Policy](https://www.webai.com/privacy).
## Common questions
# Scheduled Tasks
Source: https://developers.webai.com/using-webai/scheduled-tasks
Have a Persona run a prompt on a schedule, and see all your tasks in one place.
A scheduled task is a saved prompt that a Persona runs on a schedule. Open **Scheduled Tasks** in the left sidebar to see every task, whichever Persona runs it. Schedules run while webAI is open and use this device's local time. For a short walkthrough, see [Create a scheduled task](/quickstart/general/scheduled-task).
Say what you want and when, such as "remind me every morning". Then click **Open Scheduled tasks** on the reply.
Click **New Task**, write the prompt, pick a Persona, and choose when it runs.
Use the toggle on a task, or open its options for **Edit**, **Run now**, and **Delete**.
Use **All personas** to see the tasks one Persona is on.
## Open Scheduled Tasks
Click **Scheduled Tasks** in the left sidebar. The page has two tabs, **Upcoming** and **History**.
* Search by task name, prompt, or Persona.
* Open **All tasks** and choose **Active** or **Paused**.
* Open **All personas** and choose a Persona to see only its tasks.
Each task shows its name, its schedule (for example, **Weekly on Mon at 9:00 AM**), **Next run**, the **Persona** that runs it, and its status.
To see the tasks for one Persona from that Persona, open **Personas**, click the Persona, then click **Scheduled** in its sidebar. See [Schedule a task](/using-webai/personas#schedule-a-task).
## Give the Persona tools and skills first
A task can use only the tools and skills that Persona already has. Set those up on the Persona before you create the task.
* **Tools:** Open the Persona's settings and turn on the tools you want it to use, such as web search. These are the same tools you pick under **Tools it may use** in [Create a Persona](/using-webai/personas#create-a-persona).
* **Skills:** Open the Persona, open **Skills** in its sidebar, and click **Add more**. See [Skills](/using-webai/skills).
## Create a task from chat
In [Chat](/using-webai/chat), say what you want done and when. For example, "Tell me a short positive story every Monday at 9 AM." The task is created for the Persona that answers.
The first time, **Allow tool action?** opens and shows the task details. Click **Allow** to create it, or **Deny** to cancel. After you allow it once, webAI does not ask again for later tasks.
The reply confirms when the task runs. Click **Open Scheduled tasks** to go to the Scheduled Tasks page.
## Create a task
On **Scheduled Tasks**, click **New Task**. Or open a Persona, click **Scheduled**, then **Schedule task**. **Create scheduled task** opens.
Fill in **Name** and **Prompt**.
When you start from **New Task**, choose a **Persona**. It starts on **Auto**, which decides the tools when the task runs. When you start from a Persona's **Scheduled** place, the task uses that Persona.
**What this task can do** shows what the Persona you picked can use on each run.
* **Tools you can ask for** lists that Persona's tools. If it has none, runs can use what the Persona knows and the **Always available** tools: Weather, Location, Date & time, and System Info.
* **Skill to apply on every run** lets you pick one of that Persona's skills, or **No skill** to run the prompt as written.
Runs can happen while you are away, so they are meant to read and summarize, not to send messages or change data.
Under **Schedule**, set **Repeats**:
* **Once**: Pick a date and time under **Runs at**.
* **Every N minutes**: Pick an interval under **Every**: 1, 2, 3, 4, 5, 6, 10, 12, 15, 20, or 30 minutes. Runs land on clock-aligned increments while webAI is open.
* **Daily**: Pick a time under **Runs at**.
* **Weekly**: Pick a time under **Runs at**, then pick at least one day from **Sun** to **Sat**.
Click **Create task**. The task appears under **Upcoming** with its next run.
Keep webAI open when a task is due. Tasks do not run while webAI is closed.
When a run uses web search or another connected tool, that work can be sent off your device. See the [Privacy Policy](https://www.webai.com/privacy).
## Pause or edit a task
On **Scheduled Tasks**, each task has a toggle, **Run now**, and an options menu.
* **Pause** or **Resume**: Click the toggle. A paused task shows **Paused** and does not run until you resume it.
* **Run now**: Click the play icon to run the task right away.
* **Edit**: Open the options and click **Edit** to change the task.
* **Delete**: Open the options and click **Delete**.
A Persona's **Scheduled** place also has the pause toggle for each of its tasks.
## Use the result
When a task runs, webAI opens a chat named **Scheduled:** plus the task name. Later runs reuse that chat. Open it from **Recents** on that Persona's sidebar.
## Common questions
# Skills
Source: https://developers.webai.com/using-webai/skills
Use a skill on a prompt, or create one you can pick again later.
A skill is a saved way of working. Use one when you want a prompt handled a certain way, without writing those instructions again. Type `/` in Chat to pick one for that message. Open **Skills** in the left sidebar to make one, upload a `.webskill` file, or change one you already have.
Type `/` in Chat and choose a skill. It applies to that message.
Click **New skill**, then **Add skill**. A name and instructions are enough to start.
Click **New skill**, then **Upload skill**, and choose a `.webskill` file.
Open a skill. **Edit** changes yours. **Test it** runs a preview on that skill.
## Use a skill
Click **Home** in the left sidebar.
Type `/` and choose a skill from the list.
Type what you want and send it. The skill shapes that reply. Copy, regenerate, and open a file the same way you do in [Chat](/using-webai/chat).
When you open a Persona, the left sidebar is that Persona's. Click a skill under **Skills** to use it on that chat.
Open a Persona and use the **Skills** group in its sidebar the same way. **Auto** does not hold skills.
You can also open **Skills**, open the options on a card, and click **Start a chat**. That opens a new thread in Chat with the skill already on it.
A [Persona](/using-webai/personas) is a saved setup you can hand a prompt to. On a Persona, you can also make a skill there: open **Skills**, click **Add more**, then **Create a new skill**. A **New skill** panel opens beside that Persona. Click **Create**. That panel has no upload and no **Draft with AI**. A new skill there starts on **Whole session**.
## Create a skill
Click **New skill**, then **Add skill**. The **New skill** panel opens beside the list. The skill joins the list when you click **Create skill**.
Click **Skills** in the left sidebar.
Click **New skill**, then **Add skill**. The **New skill** panel opens beside the list.
Give it a **Name**. You need a name before **Create skill** will take the click.
**Description** is the line you see when you pick the skill. **Instructions** are what the Persona does when you pick it.
Click **Create skill**. The skill opens. Type `/` in Chat and choose it, or open its options and click **Start a chat**.
**Draft with AI** sits on the **Instructions** field. If that field is empty, it writes a starting draft from the **Name** and **Description**, so fill those in first if you want the draft to match. The result lands in **Instructions**. Edit it before you click **Create skill**.
After the field has text, the same button is **Improve with AI**. It tightens the wording and the structure, and it keeps what you meant. While either one runs, the button reads **Improving…**.
This needs a model loaded. If none is ready, it tells you to load a model in Settings first.
The control is **Scope**. In **Skills**, a new skill starts on **One turn**. That choice is saved with the skill, so it is how a later pick behaves.
* **One turn** shapes the message you attach it to. Later messages in that chat do not keep it.
* **Whole session** stays on for later messages in this chat, until you remove it. The prompt marks it **Session**.
* **Persona default** is a suggestion for a Persona. Opening that Persona does not turn the skill on. You still pick it from that Persona's **Skills** group, or with `/`.
## Upload a skill
Bring in a package someone else made, or one you packed yourself. Click **New skill**, then **Upload skill**.
Click **Upload skill** and choose a `.webskill` file. A preview opens. The skill is not on the list yet.
Click **Install**. If that package is already on this device, click **Update existing** or **Install as copy**. If it is already installed, the button reads **Already installed**.
The skill joins the list. Type `/` in Chat and choose it, or open its options and click **Start a chat**. An uploaded package is read-only. You cannot edit its instructions. Open its options and click **Uninstall package** to take it off the list.
Installing the file adds the skill. It does not add Personas or sign-ins the package mentions.
### Configure a .webskill file
A `.webskill` file is a zip, not a markdown file on its own. Put `manifest.json` and `SKILL.md` at the top of the zip. Do not put them inside a folder. The app runs the text in `definition.instructions`. `SKILL.md` has to be in the package too, as the readable copy, so keep the two saying the same thing.
```json manifest.json theme={null}
{
"schemaVersion": 1,
"packageId": "com.example.meeting-brief",
"version": "1.0.0",
"name": "Meeting brief",
"description": "Turn notes into decisions, owners, and open questions.",
"activation": "turn",
"definition": {
"schemaVersion": 1,
"packageId": "com.example.meeting-brief",
"version": "1.0.0",
"name": "Meeting brief",
"description": "Turn notes into decisions, owners, and open questions.",
"instructions": "Turn the notes into a short brief. List decisions, owners, and open questions. Do not add items that are not in the notes.",
"activation": "turn",
"personas": { "selectors": [{ "kind": "all" }], "executionRoles": [] },
"tools": [],
"requirements": { "required": [], "optional": [] },
"source": {
"kind": "user",
"provenance": { "system": "local", "locator": "com.example.meeting-brief" }
},
"toolPolicy": { "allow": [], "deny": [], "required": [], "optional": [] }
}
}
```
```md SKILL.md theme={null}
# Meeting brief
Turn the notes into a short brief. List decisions, owners, and open questions. Do not add items that are not in the notes.
```
`packageId` is required. It is the id webAI stores the package under, and it has to be at least two lowercase words separated by dots, such as `com.example.meeting-brief`. A plain name will not install. `version` is required too, as a version number such as `1.0.0`. `activation` is `turn`, `session`, or `persona-default`, the same three choices as **Scope**. The name, description, version, package id, and activation inside `definition` have to match the same fields above it. Extra fields in `definition` are rejected.
## Find a skill
On the **Skills** list, use the filters and search on the title row:
Every skill on this device, including ones that shipped with webAI.
Skills you created here. If the list is empty, you have not made one yet.
Skills someone shared with you. You did not create these on this device.
Click the search icon to open pop-up search and type a name. If the list is empty for the filter you picked, the page shows an empty state until you add or install a skill.
## Edit or test a skill
Open a skill from the **Skills** list. **Test it** and **Start a chat** are on the card. **Edit** is on the open skill.
Click **Skills**, then click the skill.
Open the options and click **Edit**. **Edit** is there when the skill is one you created on this device. **Skill settings** opens beside the skill. Change the **Name**, **Description**, **Instructions**, or **Scope**. Edits save as you go. The next test message uses them. Close with **Done editing**.
Open the options on the card, or on the open skill, and click **Test it**. Send a prompt there to see how the skill replies. That preview is not a thread in History. Click **Clear** to drop the preview messages.
An uploaded `.webskill` package and a skill that shipped with webAI are read-only. Those skills have no **Edit**. An uploaded package shows **Read only**. Open its options and click **Uninstall package** to take it off the list.
To delete a skill you created, open its options and click **Remove**, then **Delete**. On a Persona, **Remove** under **Skills** takes that skill off the Persona. It does not delete the skill from **Skills**.
## Common questions
# Spaces
Source: https://developers.webai.com/using-webai/spaces
Create a Space, share it with people from Contacts, and collaborate with roles, channels, and shared files.
Open **Spaces** in the left sidebar to make one, share it with people, and work in it together. The header shows who is taking part. A question can use files the group added, or a Persona someone connected. That Persona still runs on that person's device.
Open **Share** from the title bar. An Admin adds people from Contacts, or starts pairing someone new.
Roles read **Contributor** or **Admin**. An Admin can change a role or remove someone.
Collaborate in a channel. Type @ to call a Persona there.
Add a document on **Shared knowledge** so the group can search it.
## Create a Space
Click **Spaces** in the left sidebar.
Click **New space**.
Give it a **Space name**. **Create** stays off until the name has text. **Description** is optional.
Click **Create**. The Space is on the list. Click it to open it. The sidebar has **Overview**, **Ask anything**, and **Shared knowledge**, plus **Channels**. Avatars in the title bar show who is taking part.
## Invite people to a Space
An Admin opens **Share** on an open Space to add people and manage who has access. That panel lists people already in the Space and, under **Add people**, contacts you can add. It does not hand off or export the Space itself. Adding a document and sharing one of your Personas are available to any Contributor or Admin.
On an open Space, click **Share** in the title bar.
Under **Add people**, find a contact and add them. They join the Space. A row that says **No IDN identity yet** still needs pairing. A row that says **Re-pair required** needs a new invite in Contacts.
Click **Pair a new contact**. Pairing opens in [Contacts](/using-webai/contacts). After they pair, come back to **Share** and add them under **Add people**.
If **Add people** is empty, add someone in Contacts, then return to **Share**.
Contacts is where you pair with a person. A Space Admin invites that person after they are there. Adding someone to Contacts does not put them in a Space.
## Overview
**Overview** lists **Members**. Each role reads **Contributor** or **Admin**. An Admin can invite people and manage roles. Any Contributor or Admin can add a document and share one of their Personas. An Admin can also remove a file or a Persona connection that someone else added.
If you are an Admin, open another person's role control to set **Contributor** or **Admin**, or choose **Remove from space**. Your own row does not have that menu. Leaving is the way out for you.
### Add a contact from Overview
When someone is already in the Space but not in your Contacts, open the options on their row and click **Add contact**. webAI sends them a contact invite. That pairs you for later Spaces. It does not change their role here.
## Ask, knowledge, and channels
**Ask anything** is a question with the Space. Send with no @ to search Space Knowledge and channel messages. Type @ and pick a connected Persona when you want that Persona to answer.
**Shared knowledge** is where people click **Add document** or share Personas. Sharing connects a Persona to the Space. It does not copy it onto anyone else's device. You, or an Admin, can click **Remove from this space**.
Under **Channels**, click **Add**, type a name, and press Enter. Type @ and pick a Persona to post a reply in the channel. A connected Persona still runs on the device of the person who shared it.
## Leave or delete a Space
Open the options on an open Space, or on its card. **Leave space** removes your access. If you are the only Admin and others remain, the prompt says **Make another admin first**. **Delete space** removes the Space for everyone and cannot be undone.
Use **Saved first**, **Saved only**, or search to find a Space again. The bookmark does not invite anyone.
## Common questions