# 🧑🏼‍🚀 Agent Source: https://docs.xpertai.cn/en/ai/agent/agent ## What is Xpert? Xpert is a system that uses large language models as its foundation to simulate human social behaviors by combining intelligent agents. It applies the best practices of human society to AI agent behavior, enhancing and standardizing AI's capability to serve real-world scenarios effectively. Xpert is categorized into two types: **Agent** and **Copilot**: * **Agent Xpert**: These are expert agents designed to coordinate multiple agents working together to accomplish tasks. They simulate organizational structures found in human societies, maximizing the use of available human resources (via toolsets) and experiences (through organizational strategies) to better serve humanity. * **Copilot Xpert**: These are expert assistant agents that use large language models to collaborate with humans in utilizing tools to complete tasks. This represents a best practice in human-machine collaboration. ## Where to Build Xpert? Xpert and its related toolsets are developed within a workspace. This workspace organizes Xperts, toolsets, and access permissions, allowing workspace members to collaboratively edit and use the resources within it. Xpert workspace ## How to Orchestrate Xpert Agents? Once an Agent Xpert is created, you can orchestrate agents on the **Agents** page in Xpert Studio. The orchestration process mirrors hierarchical structures in human society: higher-level agents plan, divide, and assign tasks to lower-level agents. The lower-level agents solve problems using toolsets or knowledge bases and report back to their higher-level agents, who integrate the results to make further decisions. Agent operation follows this principle, and the orchestration adheres to the same methodology. Each agent node can have unique toolsets and knowledge bases based on its responsibilities and may utilize different capabilities of large language models. Xpert studio ## How to Use Tools? The use of tools marks a significant milestone in human evolution, and large language models that can utilize tools are a key step toward achieving AGI (Artificial General Intelligence). To enable an agent to use tools: 1. **Authorize the tools**: This includes configuring authorization for built-in tools or creating custom toolsets via APIs. 2. **Assign toolsets to agents**: After authorization, the toolset instances can be added to agent nodes for use. Additionally, if an Xpert agent needs to access an enterprise's proprietary systems, custom toolsets can be configured for this purpose. Xpert toolset ## How to Retrieve Knowledge Bases? The [🎓Knowledge Base](../knowledge/) is the core support for AI agents. It provides background knowledge and domain-specific data, enabling agents to: * Better understand user intent * Solve problems effectively * Optimize decision-making * Enhance contextual comprehension * Reduce generation bias Dynamic updates to the knowledge base ensure that agents are always equipped with the latest information, significantly improving dialogue accuracy and intelligence. To use a knowledge base, add it to Xpert Studio and link the knowledge base node to an agent node. The agent will then have access to the information within this knowledge base. Xpert with knowledgebase ## What is Copilot? **Copilot Xpert** helps users quickly operate interface functions, improving their expertise and work efficiency. To set up a Copilot Xpert: 1. Create a Copilot Xpert in Xpert Studio. 2. Upload knowledge examples related to the expert's role. These examples are stored in a vector database, allowing the Copilot to retrieve relevant answers based on user queries. Once created, the Copilot Xpert can be selected as a business role in the Copilot. During execution, the Copilot retrieves example answers based on commands and roles to operate interface functions more accurately. For example, Xpert **Financial BP** can retrieve answers and create dimension objects based on the command `/dimension`. Xpert Copilot Copilot command ## Connect to different chat channels with triggers For details on how a Digital Expert connects to different conversation channels through triggers, see: * [Connect to different chat channels with triggers](./chat-channels/) # Agent Evolution Source: https://docs.xpertai.cn/en/ai/agent/agent-evolution Discover improvement opportunities from real execution feedback, then safely release new capability versions through evaluation, approval, Shadow, Canary, and rollback. Agent Evolution continuously improves an agent's prompts, policies, rules, and domain capabilities based on real business execution. It turns runtime feedback into verifiable candidate versions, then evaluates and progressively releases them in isolated environments. Agent Evolution does not allow an Agent to directly modify production prompts, rules, code, or business tables. An Agent can only generate proposals and Candidates. A Candidate becomes a new immutable Production Capability Version only after evaluation, approval, and release governance. ## When to use Agent Evolution You can integrate a capability with Agent Evolution when its behavior can be declared, versioned, and replayed. Examples include: * Field mappings, aliases, and extraction policies * Normalization rules, unit mappings, and dictionaries * Routing weights, thresholds, and retrieval policies * Prompt, Skill, or model selection policies The domain plugin defines what can evolve. The platform provides generic learning, evaluation, approval, release, versioning, and audit capabilities without interpreting domain semantics. ## Before you begin Make sure that: * A plugin that provides an Evolution Target is installed in the current tenant and organization. * You have permission to view Agent Evolution. Creating Candidates, running evaluations, and releasing versions also require management permission. * The domain runtime is reporting Learning Events and runtime observations. * The plugin has synchronized at least one Target and its current production baseline. When you open **Agent Evolution**, the page automatically uses the currently selected tenant and organization scope. You do not need to select a scope again, and you cannot mix events, evaluation datasets, or release packages across scopes. ## Page structure Agent Evolution contains four fixed tabs: | Tab | Purpose | | - | - | | **Overview** | Review Target health, pending signals, Candidates, evaluations, deployments, and current production versions | | **Learning & Proposals** | Review Learning Events, attribute and cluster them, and generate improvement proposals | | **Candidates & Evaluation** | Build Candidates, freeze Golden Dataset Snapshots, and run Golden Replay | | **Release & Runtime** | Install immutable versions after approval, then run Shadow, Canary, production activation, and rollback | The Target selector in the page header only filters Targets within the current tenant and organization. A Target's risk level and capability flags determine which actions are available. ## Complete lifecycle ```text theme={null} Learning Event → Diagnosis / Cluster → Proposal → Candidate → Golden Replay → Human approval → Install immutable version → Shadow → Canary 5% → 25% → 50% → Production → Stable / Rollback → Experience ``` Every stage retains its inputs, versions, actors, and results. A failed Candidate is never modified in place. Update the Change Set and create a new Candidate instead. ## 1. Review learning signals In **Learning & Proposals**, select a Target and review signals awaiting attribution. A Learning Event includes at least: * The Target and Decision Point where the decision occurred * References to the execution, subject, and capability version bundle * A prediction summary and final outcome summary * Confidence, reason codes, trust level, and redaction status You can: * **Mark as golden evidence**: Allow the event to serve as evidence for later proposals and datasets. * **Remove from golden evidence**: Retain the event but stop using it as golden evidence. * **Ignore signal**: Remove it from the pending queue without deleting its audit record. * **Generate proposal**: Aggregate evidence with the same Target, scope, and correction signature. By default, a Proposal requires at least three L2-or-higher events from the last 90 days across two distinct business subjects. All evidence must belong to the same Target and exactly the same scope. ## 2. Build a Candidate A Proposal only describes why a change is needed and what should change. When you build a Candidate, the domain Provider uses the current production baseline and the structured Change Set to generate an executable candidate artifact. A Candidate permanently references: * The baseline capability version * The Proposal ID and revision * Evidence events * Applicable scope * The Provider and Provider version * The Artifact Schema, URI, and hash * Dependent capability versions Candidate Artifacts and Production Artifacts use separate version references. Creating a Candidate does not change the production capability or switch the Active Pointer. The domain Provider declares the form fields. The platform renders them without interpreting field semantics or embedding domain rules in Evolution Core. ## 3. Create a Golden Dataset and evaluate In **Candidates & Evaluation**, select a Ready Candidate and a dataset with the same Target and scope, then freeze a Golden Dataset Snapshot. The Snapshot fixes case revisions, evaluator versions, metric definitions, and hashes so that the production baseline and Candidate use exactly the same inputs, random seed, and evaluation conditions. Default Golden Replay gates are: | Gate | Default requirement | | - | - | | Golden Dataset | At least 50 cases | | Affected slice | At least 20 cases | | High-risk slice | At least 10 cases | | Severe errors | 0 | | Key metrics | The Candidate must outperform the production baseline | The evaluation page shows: * Production and Candidate metric comparisons * Both version outputs and the expected result for each case * Slice metrics, blocking reasons, latency, and cost * Auditable Trace references Passing Golden Replay only means that the Candidate may enter governance. It does not mean the Candidate has been released. ## 4. Submit for approval After the evaluation passes, enter an approval comment and submit the Candidate for approval. Standard users follow a multi-user, multi-role gate: | Risk level | Default approval requirement | | - | - | | R1, R2 | 2 different users with different roles | | R3, R4 | 3 different users with different roles | Users with the `SUPER_ADMIN` or `ADMIN` role have administrator approval permission, so one administrator can satisfy the approval gate. The system still freezes the Candidate hash, evaluation run, approval comment, administrator identity, and time. The subsequent release package must reference this approval evidence. You can create a Release Package only after approval. The Release Package freezes the Candidate, target version, rollback version, artifact hash, approval records, and the release gate policy that was active at that time. ## 5. Install and run Shadow Clicking **Install immutable version** only instructs the Provider to install a new Capability Version. It does not change the production Active Pointer. After installation, start Shadow: * Production requests continue to use the current production version for returned results and side effects. * The Candidate runs in parallel with the same input, but its output is not written back to business results. * Success rate, severe errors, latency, and cost are recorded separately for Production and Candidate. The standard gate requires Shadow to run for at least 72 hours, collect 100 valid observations, and report zero severe errors. ## 6. Canary rollout After Shadow passes, start Canary at 5%, then expand to 25% and 50%. Every expansion requires a human action. Canary uses `deploymentId + subjectKey` for deterministic assignment: * The same subject remains assigned to the same version within the same deployment stage. * 5% means 5% of the hash space; it does not guarantee exactly one match in the first 20 requests. * Only requests assigned to the Candidate count toward the current Canary stage sample total. * A severe error triggers an automatic pause. The system can perform a pre-authorized rollback, but it cannot expand traffic automatically. The standard gate requires each Canary stage to run for at least 24 hours, collect 30 valid observations, and report zero severe errors. Production activation also requires the 50% Canary stage to satisfy the same gate. ### Administrator-only one-time Candidate assignment When using the `manual_test` gate in a non-production environment, an administrator can create a one-time Candidate assignment for an exact `subjectKey` to quickly verify the real domain runtime. This capability is constrained as follows: * Only `SUPER_ADMIN` or `ADMIN` can create it. * It only applies to the current `manual_test` Release Package and an active Canary deployment. * You must enter an exact `subjectKey`, an audit reason, and a validity period from 1 to 120 minutes. * It is consumed immediately after one exact match and cannot be reused. * The execution plan is marked `manual_test_override`; both creation and consumption are written to the audit log. * It is unavailable in production and cannot replace normal deterministic assignment testing. The domain runtime supplies `subjectKey`. A plugin may use a Case ID, for example, but Evolution Core does not understand Case semantics and does not depend on BOM logic. ## 7. Activate production and roll back Production activation performs two operations: 1. The Provider activates the installed immutable Capability Version. 2. Evolution Core validates and switches the production Active Pointer using compare-and-swap (CAS). Historical versions are never overwritten. New requests resolve to the new version, while an Execution that has already started continues to use the Capability Version Bundle pinned at startup. If an issue occurs, an administrator can roll back to the rollback version frozen in the Release Package. Rollback also switches the Active Pointer through CAS and retains a complete audit record. ## Standard and manual test gates | Policy | Intended use | Shadow | Each Canary stage | 50% Canary before production | | - | - | - | - | - | | `standard` | Production and formal acceptance | 72 hours / 100 observations | 24 hours / 30 observations | 24 hours / 30 observations | | `manual_test` | Non-production administrator testing only | 0 hours / 1 observation by default | 0 hours / 1 observation by default | 0 hours / 1 observation by default | The gate policy is frozen when the Release Package is created. If `manual_test` is configured in a production environment, the platform forces the policy back to `standard`. `manual_test` shortens waiting time during manual acceptance. It does not relax the zero-severe-error requirement, human-controlled expansion, permissions, audit, Candidate isolation, or Active Pointer CAS safeguards. ## Permissions and data isolation * Viewing the page requires `EVOLUTION_VIEW` or a compatible agent editing permission. * Creating Proposals, Candidates, evaluations, and release operations requires `EVOLUTION_MANAGE`. * Data is isolated by tenant and organization. Targets, events, datasets, Candidates, and Release Packages cannot be mixed across scopes. * Confidential events must be redacted before ingestion. Do not put customer names, contract text, raw attachment content, or secrets in summaries. * An Agent never receives tools for production activation, Canary expansion, or proactive production rollback. ## Troubleshooting | Symptom | What to check | | - | - | | No Target appears | Confirm the plugin is installed and its Provider is registered, then click **Sync Targets** | | No signal appears after a business review | Check whether the business transaction wrote to the Outbox, the background job succeeded, and the event Target and organization scope are correct | | A Proposal cannot be generated | Verify that the evidence satisfies 3 L2+ events, 2 subjects, and the 90-day window | | Golden Replay cannot run | The Candidate and dataset must both be Ready, and their Target and scope must match | | Production results do not change after installation | This is expected; installation does not switch the production Active Pointer | | Canary 5% is not selected after several requests | Deterministic hashing does not guarantee an even distribution in a small sample; use another subject or a one-time administrator test assignment in a non-production environment | | Traffic cannot expand or production cannot activate | Review gate thresholds, valid observations, duration, severe errors, and the current stage | ## Domain plugin example BOM Lifecycle is one example of a domain integration with Agent Evolution. Feature Binding and Normalization can complete the evaluation and release lifecycle, PBOM Matching can stop at Replay according to plugin capabilities, and OCR Routing can collect events only. These Targets are not built-in definitions in Evolution Core. Other plugins can use the same mechanism for their own declarative capabilities. For implementation details, see [Integrate Agent Evolution into a plugin](../plugin/agent-evolution). # Commands Source: https://docs.xpertai.cn/en/ai/agent/ai-assistant/command **Copilot Command** is a command mode for AI Copilot in the Xpert AI platform. Users can directly control the functionality of the current page by entering specific commands. The AI assistant will parse the user's input, identify tasks, and call the relevant agents and tool functions to perform logical operations. Whether querying data, triggering page actions, or executing complex tasks, Copilot Command can quickly respond to and fulfill the user's requests, improving work efficiency and simplifying processes. ## General Commands * `/clear` Clear the session * `/help` or `/?` View help information ## Page Function Commands * [Semantic Model AI Assistant Commands](/docs/models/copilot/) * [Indicator Management AI Assistant Commands](/docs/indicators/copilot/) * [Story Dashboard AI Assistant Commands](/docs/stories/copilot/) ## Examples **Copilot Command** retrieves command examples configured in the backend through its **FewShot** capability, helping the AI model better understand and execute user instructions. FewShot technology allows the AI to infer based on examples of similar tasks, providing more accurate feedback and operations when executing complex tasks. This mechanism enables the AI to quickly adapt and complete assigned tasks using existing command examples, without requiring extensive training, thus improving execution efficiency and accuracy. # Configure Xpert AI Assistant Source: https://docs.xpertai.cn/en/ai/agent/ai-assistant/configure-ai-assistant In Xpert, configuring an AI assistant essentially means binding a **prepared digital expert** to a specific assistant entry. After the configuration is saved, when users open the assistant from that entry, they are actually using the digital expert you selected. If that digital expert was created or imported from a YAML DSL, the assistant's capabilities also come from that DSL definition. ## Three Assistant Types Currently Supported Based on the current system implementation, Xpert provides three system-level AI assistant types: * **Common Assistant**: the embedded assistant entry used on the common chat page; * **ChatBI Assistant**: the assistant entry used on the ChatBI page for data analysis; * **Workspace Assistant**: the shared assistant entry used in the workspace and the Studio shell. All three assistant types are configured from **Settings / Assistants**, but they are intended for different usage scenarios. ## Prerequisites Before you start, make sure the following items are ready: * You have completed AI provider setup in [Configure AI Provider](./settings/); * You have created a digital expert that can be used as an assistant; * That digital expert has already been **published**; * If you want the Workspace Assistant to help create or edit digital experts, it is recommended to prepare a dedicated **authoring assistant** digital expert; * Tenant-level default assistant configuration requires tenant admin permissions; * Organization-level assistant configuration requires switching to the target organization and having the corresponding admin permissions. > On the **Settings / Assistants** page, only digital experts that are both accessible in the current scope and already **published** are usually available for selection. ## How To Configure Xpert AI Assistant Open **Settings / Assistants**, then follow the steps below. ### 1. Select the assistant type to configure In the list, find the assistant item you want to configure. * **Common Assistant** * **ChatBI Assistant** * **Workspace Assistant** Each assistant type is saved independently. ### 2. Select the configuration scope Assistant configuration supports two levels: * **Tenant Default**: sets the default assistant for the whole tenant, which organizations inherit by default; * **Organization Override**: sets an assistant specifically for the current organization and takes precedence over the tenant default. If no organization-level configuration is set, the system continues using the tenant default. ### 3. Enable or disable the assistant Turn the **Enabled** switch on or off for the target assistant item. * When enabled, that entry uses the digital expert you bind; * When disabled, the entry will not serve the assistant in enabled mode even if a binding exists. ### 4. Bind a digital expert In the **Assistant ID / Xpert ID** selector, choose the digital expert you want to bind. You can search digital experts accessible in the current scope by name or ID. Before saving, make sure the current assistant is enabled. After you click **Save**, that assistant entry starts using the selected digital expert. ## Which Scenarios Fit Each Assistant Type ### Common Assistant The Common Assistant is the default assistant entry on the common chat page. It is suitable for scenarios such as: * Providing a unified general-purpose Q\&A entry; * Supporting knowledge Q\&A, process guidance, business assistance, and other general conversation scenarios; * Acting as the default chat assistant at the tenant or organization level. If you want users to enter the common chat page and immediately use a default AI assistant, this is usually the right place to configure it. ### ChatBI Assistant The ChatBI Assistant is the embedded assistant on the ChatBI page. It is suitable for scenarios such as: * Answering analytics questions on the ChatBI page; * Supporting multi-turn conversations around metrics, models, dimensions, and business definitions; * Providing a dedicated assistant entry for data analysis. If your goal is to let users perform conversational analysis directly on the ChatBI page, this entry should be bound to a digital expert focused on data analysis or business Q\&A. ### Workspace Assistant The Workspace Assistant is the shared assistant used in the workspace and Studio. It is suitable for scenarios such as: * Creating new digital experts through chat in the workspace; * Continuing to edit the current digital expert draft in Studio; * Helping add knowledge bases, toolsets, prompts, or workflow structures. If your goal is to configure an AI assistant that helps orchestrate digital experts, this entry should usually be bound to a dedicated **authoring assistant** digital expert. ## How To Prepare An Authoring Assistant Digital Expert If you want the Workspace Assistant to help create or edit digital experts, it is recommended to prepare a dedicated **authoring assistant** digital expert instead of reusing a business expert. Common approaches include: * Create a new digital expert based on the platform's **authoring assistant** template; * Or create a dedicated agent for agent authoring based on a similar YAML DSL template; * Publish it first, then bind it to the Workspace Assistant in **Settings / Assistants**. ## Tenant Default And Organization Override ### Tenant Default This is suitable as the default assistant configuration shared across the whole tenant. For example: * The whole company uses the same Common Assistant by default; * All organizations use the same ChatBI Assistant by default; * All organizations use the same Workspace Assistant by default. ### Organization Override This is suitable when a specific organization needs a different assistant, for example when different organizations use different Common Assistants, ChatBI Assistants, or Workspace Assistants. When an organization-level configuration exists, it takes priority. If no organization-level configuration is set, the system falls back to the tenant default. If you want to resume inheriting from the tenant default, you can remove the current organization override and switch back to the tenant default. ## What You Can Do After Configuration ### Provide a unified entry on the common chat page If the Common Assistant is already bound to a digital expert, users can go to the common chat page and directly use that assistant for Q\&A, guidance, or daily collaboration. ### Perform conversational analysis on the ChatBI page If the ChatBI Assistant is already bound to a digital expert, users can have multi-turn conversations on the ChatBI page around data models, metrics, and analytical questions. ### Create or modify digital experts in the workspace If the Workspace Assistant is bound to an **authoring assistant** digital expert, users can directly describe their needs in chat, for example: * `Help me create an after-sales support expert` * `Help me create a contract review expert` The assistant creates a new digital expert draft based on the request and guides you to continue editing it in Studio. If you already have a digital expert open in Studio, the assistant can also continue helping you edit the current draft, for example: * Add a knowledge base; * Adjust prompts; * Add toolsets; * Modify workflow structures. These changes usually apply to the **current draft**, rather than directly replacing the published version, so you should still review and publish the result afterward. ## Notes * If the current digital expert is still only a draft and has not been published, it usually cannot be selected on the assistant settings page. * Tenant-level configuration usually requires tenant admin permissions; organization-level configuration requires that you first switch into the target organization. * The three assistant types are configured independently. Binding a digital expert to one assistant does not automatically apply it to the others. * If no organization-level configuration exists, the system continues inheriting from the tenant default. * If you want the Workspace Assistant to focus on creating and editing digital experts, it is better to prepare a dedicated authoring assistant instead of reusing a business expert. * If the entry still shows as not configured, check whether it has been enabled, whether a digital expert has been selected, and whether the current organization is hitting the expected configuration layer. ## FAQ ### Why does my digital expert not appear in the selectable assistant list? Common reasons include: * It has not been published yet; * You are not in the correct tenant or organization scope; * The digital expert is not accessible in the current scope. ### Why did I save an organization configuration, but the system still uses the tenant default? Check the following items: * Whether you have actually switched to the target organization; * Whether the organization configuration was saved successfully; * Whether the current assistant item is enabled; * Whether you accidentally configured a different assistant type. ### Why did I already bind an assistant, but the workspace still shows "Assistant not configured"? The workspace uses the **Workspace Assistant** specifically, not the Common Assistant or the ChatBI Assistant. Because of that, even if you already bound another assistant type, the workspace can still show **Assistant not configured**. Common reasons include: * You bound the **Common Assistant** or **ChatBI Assistant**, but did not configure the **Workspace Assistant**; * You already bound a digital expert, but the **Workspace Assistant** is not enabled; * You saved the configuration under a different organization than the one you are currently in; * The current organization does not hit an organization override, and the tenant default also does not configure the Workspace Assistant; * The current Workspace Assistant configuration was not actually saved successfully, or it was switched back to inheriting the tenant default afterward; * The digital expert bound to the Workspace Assistant is not effective in the current scope, so the current organization does not receive a valid configuration. When this happens, check the following first: * In **Settings / Assistants**, confirm that you configured the **Workspace Assistant**; * Confirm that the current organization is the same one where you saved the configuration; * Confirm that the Workspace Assistant is **enabled** and already bound to a digital expert; * If the current organization does not have its own override, continue by checking whether the tenant default has already configured the Workspace Assistant. If the configuration looks correct but the assistant still cannot open normally, also check whether the **ChatKit** service configuration is healthy, for example: * Whether the ChatKit service URL is configured correctly; * Whether the ChatKit service is currently reachable and running normally. ### Why don't changes made by the Workspace Assistant take effect immediately? Because most of these changes are first applied to the **draft**. To make the updated version available to end users, you still need to review and publish it manually. ## Related Docs * [🤖 AI Copilot](./index/) * [Configure AI Provider](./settings/) * [Digital Expert](../agent/) * [Expert Configuration](../expert-configuration/) # 🤖 AI Copilot Source: https://docs.xpertai.cn/en/ai/agent/ai-assistant/index 🤖 **AI Copilot** is an AI-powered tool within the Xpert Analytics Cloud product, designed to provide support for system data analysis through large model interfaces and custom command functionality. There are two ways to interact with the AI Copilot: * Free conversation mode: Users can freely input text, and the AI assistant will respond based on the user's input. * Command mode: Users can input specific commands, and the AI assistant will call the corresponding functions based on the commands and input to execute logic. Currently, the AI Copilot supports two main types of large language model providers: * OpenAI-type services, including OpenAI and Azure; * Opensource-type services, such as Ollama. Go to [Enable AI Copilot Functionality](/docs/server/organization/copilot/) to activate the AI assistant for your organization. If you want to bind a digital expert as the Workspace Assistant or ChatBI Assistant, see [Configure Xpert AI Assistant](./configure-ai-assistant/). ## Chat Window Once Copilot is enabled, the AI assistant chat window can be used across the entire Xpert Analytics Cloud site, for example, a global chat window can serve as a general copilot for asking any questions. Roles in Copilot ### Options The chat window provides the following configuration options: * **Model**: Select the AI model to use. * **Temperature**: Select the temperature parameter. * **Number of options**: Select the number of options to return. * **Interactive**: Use interactive mode when running commands; it will pause before or after specific nodes, allowing the user to click continue or end. * **Verbose**: Output detailed logs of the command agent. You can also **clear chat messages**. ### Shortcuts | Shortcut | Description | | - | - | | `Tab` | Quick type autocomplete command | | `Shift` + `Enter` | Insert a line break | | `Up` | Previous history record | | `Down` | Next history record | | `Ctrl` + `B` | Open copilot chat window | | `Ctrl` + `/` | Open copilot chat window and type `/` | ## Commands In [Command](./command/) mode, **commands** are instructions users can input on the current page, and the AI assistant will call an agent to execute the logic based on the commands and prompts. ## Business Roles [Business Roles](./roles/) is an important feature of the AI assistant that allows users to switch roles according to different business scenarios, enabling more accurate and efficient data analysis. # Roles Source: https://docs.xpertai.cn/en/ai/agent/ai-assistant/roles The **Copilot Business Role** function provides virtual business assistant roles when Copilot performs tasks. These roles help AI better understand the actual business scenarios and meanings of tasks. Through the business role, the system can use few-shot learning to provide relevant prompt examples, enabling AI to generate and execute corresponding operations based on the business context accurately. This not only improves the accuracy of task execution but also ensures the rationality and consistency of business logic, adapting to various business needs. ## Role Usage 1. **Custom Roles**: Users can customize business roles according to their current analysis needs. These roles are pre-set with different analysis themes and examples, suitable for different business scenarios such as market analysis, financial reporting, operations management, and more. 2. **Example Fewshot**: Each business role corresponds to different examples. When a user selects or customizes a business role, Copilot automatically selects examples most relevant to the role and sends them to the large language model (LLM) for processing. This ensures that the generated analysis results are more aligned with actual business needs. 3. **Role Switching**: Users can switch business roles at any time during the analysis process to suit different analytical tasks and business needs. This flexibility allows users to handle multiple types of data analysis tasks on the same platform. # Settings Source: https://docs.xpertai.cn/en/ai/agent/ai-assistant/settings Here is the basic configuration for the AI assistant in the Xpert AI system: | Configuration Item | Description | | - | - | | **AI Model Provider** | Supported AI providers, such as OpenAI, Azure OpenAI, etc. | | **Default Model** | The default AI model selected for handling general tasks. | | **Token Limit/User** | The initial token usage limit per account, controlling API usage. | This table provides a concise overview of the AI assistant's basic settings, enabling users to quickly understand and configure them. ## AI Providers The Xpert platform supports mainstream AI model providers. AI Providers ### Supported Model Providers Xpert AI supports a wide range of AI providers to enhance flexibility and task-handling capabilities: | AI Provider | Official Website | | - | - | | OpenAI | [https://openai.com](https://openai.com) | | Azure OpenAI | [https://azure.microsoft.com](https://azure.microsoft.com) | | Ollama | [https://ollama.com](https://ollama.com) | | DeepSeek | [https://deepseek.com](https://deepseek.com) | | Anthropic | [https://anthropic.com](https://anthropic.com) | | Alibaba Tongyi | [https://bailian.console.aliyun.com/](https://bailian.console.aliyun.com/) | | Zhipu AI | [https://zhipu.ai](https://zhipu.ai) | | Together AI | [https://together.ai](https://together.ai) | | Moonshot AI | [https://moonshot.ai](https://moonshot.ai) | | Groq AI | [https://groq.com](https://groq.com) | | Mistral AI | [https://mistral.ai](https://mistral.ai) | | Cohere AI | [https://cohere.ai](https://cohere.ai) | **No specific order**\ [Add more providers](https://github.com/xpert-ai/xpert/tree/main/packages/server-ai/src/ai-model/model_providers) The multi-provider support in Xpert AI allows it to adapt to various business scenarios and dynamically select the best model to handle specific tasks. ## AI Copilot Roles The AI Copilot in the Xpert AI system is divided into three roles, each responsible for different tasks. More roles may be added in the future for other purposes. 1. **Primary**: The main inference copilot, responsible for core task reasoning and generating solutions. It is primarily used for solving complex user problems and engaging in deep conversations. 2. **Secondary**: Acts as a support role in user interactions, providing background information, quick answers, or suggestions to enhance the efficiency of conversations. 3. **Embedding**: Focused on vectorizing files and text for semantic search and deep information retrieval, especially useful for large-scale document processing and analysis. # Artifacts Source: https://docs.xpertai.cn/en/ai/agent/artifacts/index Turn Agent and plugin output into durable, versioned, previewable, downloadable, and shareable results. # Artifacts Artifacts turn the work produced by Xpert Agents and plugins into durable results that people can open, revisit, download, and share. An Artifact is a persistent product object with a stable identity. Its content is stored as immutable versions in Workspace Files, while access is provided through separately managed Artifact Links. A report can therefore gain a new version without changing its identity, and a shared link can either follow the latest version or remain pinned to one version. An Artifact is more than a file link. The Artifact owns the result's identity and lifecycle; an Artifact Version owns one immutable content snapshot; an Artifact Link controls who can open which version. ## When to use an Artifact Use an Artifact when chat text is not the best medium for the result, or when the result needs to live beyond one Agent run. Typical examples include: * interactive HTML reports and dashboards; * presentations generated by Presentation Studio; * static site snapshots produced by Sites; * PDF reports, PPTX decks, images, CSV files, and other downloadable outputs; * visual comparisons, annotated reviews, timelines, and checklists; * a result that a plugin will update by publishing additional versions. For example, a Presentation Studio deck can remain editable in its Workbench while each HTML export becomes an Artifact Version. A user can then publish a link that always opens the newest HTML export, or pin a link to the exact version used for a review. ## What an Artifact is not An Artifact is a published result, not a full hosted application runtime. * It does not expose a plugin's backend or credentials to viewers. * It is not a replacement for a database-backed, multi-route application. * It does not make the shared content collaboratively editable. * Interactive HTML can run client-side interactions allowed by its security profile, but it should not depend on external services or platform APIs at view time. * Version updates are durable, but an already open viewer currently needs to refresh to resolve a newer `latest` version. Use an Agentic App or Sites deployment when the experience needs authenticated backend operations, durable form submissions, multiple routes, or real-time collaboration. ## Core model | Object | Purpose | Mutability | | - | - | - | | **Artifact** | Stable container for a generated result, including its source, kind, scope, title, description, and current version. | Metadata and lifecycle can change. | | **Artifact Version** | One content snapshot stored through a portable Workspace Files reference, with MIME type, checksum, size, and source version metadata. | Immutable after creation. | | **Artifact Link** | An access entry point with a short slug, audience policy, expiry, download policy, and `latest` or fixed-version behavior. | Access and presentation policy can change; the link can be revoked. | | **Artifact Access Log** | Audit record for access, download, denial, expiry, revocation, archive, and deletion events. | Append-only audit data. | Content bytes remain in Workspace Files. The Artifacts service stores portable file references and product metadata, rather than local filesystem paths or copied credentials. ## Create an Artifact Artifacts are normally created by an Xpert Agentic App or plugin after it has produced a useful result. The product flow is: 1. Generate or export the content. 2. Write the content to Workspace Files. 3. Create or locate the stable Artifact container using the plugin's business resource identity. 4. Add an immutable Artifact Version that references the Workspace Files object. 5. Optionally create a preview or sharing link. Creating an Artifact does not make it public. Until a link is created, it remains a private platform object within its tenant and organization scope. ## Update an Artifact Publishing updated content creates a new Artifact Version. Existing versions are not overwritten. Each Artifact has a `currentVersionId`. A new version becomes current by default, although a plugin can create a version without changing the current pointer. This supports review and staged publication workflows. Artifact Links have two version modes: | Mode | Behavior | | - | - | | `latest` | Resolves the Artifact's current version whenever the link is opened. Use this for an “always share latest” experience. | | `version` | Resolves one immutable `artifactVersionId`. Use this for approvals, audit evidence, and reproducible handoffs. | Changing content never silently rewrites an old version. To show updated content through a fixed-version link, explicitly retarget the link or create a new link. ## Preview an Artifact Use a signed preview link for temporary review before publishing. Signed previews: * use the `signed_preview` access mode; * include an opaque token in the `xpert_artifact_preview` query parameter; * expire after 15 minutes by default; * can be given a shorter or longer TTL within the platform limit; * must not be persisted as a durable public URL. The preview token is returned only when the link is created. The platform stores its hash, not the token itself. ## Share an Artifact Sharing is an explicit access decision applied to an Artifact Link. The underlying chat, Agent run, plugin state, tenant identifiers, and Workspace Files location are not included in the public URL. The canonical public route is: ```text theme={null} https:///artifacts/share/ ``` Downloads use: ```text theme={null} https:///artifacts/share//download ``` The slug is a compact, random 12-character identifier. It is the Artifact Link's public handle, not an Artifact ID or database UUID. Plugins must copy the `publicUrl` returned by the platform and must not construct a URL from the browser's current location. ### Access modes | Access mode | Who can open it | Typical use | | - | - | - | | `owner_only` | The Artifact owner. | Private review. | | `workspace_all` | Authorized members in the scoped workspace context. | Project-team handoff. | | `organization_all` | Authorized members of the organization. | Internal publishing. | | `custom_principals` | Explicitly selected principals in the same tenant and organization. | Limited review group. | | `public_link` | Anyone on the web who has the link. | External sharing. | | `signed_preview` | Anyone holding the unexpired preview token. | Short-lived preview. | Creating a `public_link` requires explicit user confirmation. Agents and plugins must not publish a result to the public web silently. Public sharing exposes only the Artifact content; the conversation and plugin workspace remain private. The link also controls whether content opens inline or as an attachment and whether the dedicated download route is enabled. ## Revoke, archive, and delete * **Revoke a link** when the Artifact should remain available internally but a particular access path must stop working. Revocation takes effect immediately. * **Archive an Artifact** when it should no longer be active but should remain in platform history and audit records. * **Delete an Artifact** to mark the Artifact as deleted and revoke all of its links. Plugins that own the underlying Workspace Files object should separately apply their file-retention or deletion policy. Revoked, expired, archived, and deleted content returns an explicit access error instead of falling back to another version or file. ## Supported content Artifacts describe the product kind independently from the MIME type. Supported kinds include `html`, `markdown`, `pdf`, `pptx`, `image`, `file`, `site`, and `presentation`. Expected presentation behavior: | Content | Recommended behavior | | - | - | | Self-contained HTML, sites, and presentations | Open inline using the selected HTML safety profile. | | PDF and supported images | Open inline when the browser supports the MIME type; optionally allow download. | | Markdown, text, JSON, and CSV | Serve as text or download according to the product surface. | | PPTX, ZIP, and generic files | Prefer download. | The platform validates the declared MIME type and the referenced Workspace Files object. A supplied size or SHA-256 value must match the stored content. ## HTML security profiles HTML Artifacts are served with `nosniff`, `no-referrer`, `no-store`, a safe content disposition, and a Content Security Policy. Forms cannot submit, the document cannot set a base URL, and the Artifact cannot be embedded by another page. | Profile | Use it for | Behavior | | - | - | - | | `strict` | Reports, documents, and static presentations that do not need JavaScript. | Scripts and network access are disabled; inline styles and embedded data/blob media are allowed. | | `interactive` | Self-contained charts, controls, and presentation playback. | Inline client-side scripts and embedded data/blob resources are allowed; arbitrary external origins are not. | Artifacts must not contain platform tokens, tenant or organization identifiers, Workspace Files paths, signed URLs, or other credentials. User-controlled HTML, SVG, URLs, and media should be validated by the producing plugin before publication. ## Use Artifacts from a plugin Plugins use the `platform.artifacts` runtime capability from `@xpert-ai/plugin-sdk`. Workspace Files remains the content storage capability; Artifacts manages identity, versions, access, safety policy, and audit. ```ts theme={null} import { ArtifactsRuntimeCapability, WorkspaceFilesRuntimeCapability } from '@xpert-ai/plugin-sdk' const files = runtimeCapabilities.require(WorkspaceFilesRuntimeCapability) const artifacts = runtimeCapabilities.require(ArtifactsRuntimeCapability) const file = await files.writeRuntimeBuffer({ tenantId, userId, catalog: 'xperts', scopeId: xpertId, xpertId, folder: 'reports', fileName: 'quarterly-report.html', originalName: 'quarterly-report.html', mimeType: 'text/html', buffer: Buffer.from(html, 'utf8') }) const artifact = await artifacts.createArtifact({ source: { pluginName: '@xpert-ai/plugin-example', resourceType: 'quarterly_report', resourceId: reportId }, kind: 'html', title: 'Quarterly report' }) const version = await artifacts.createArtifactVersion({ artifactId: artifact.id, workspaceFileRef: file.reference, mimeType: 'text/html', fileName: 'quarterly-report.html' }) const link = await artifacts.createArtifactLink({ artifactId: artifact.id, artifactVersionId: version.id, versionMode: 'version', access: { mode: 'public_link', userConfirmedPublicLink: true }, presentation: { disposition: 'inline', allowDownload: true, safeHtmlProfile: 'strict' } }) console.log(link.publicUrl) ``` The capability provides operations to create, version, get, list, archive, and delete Artifacts, as well as create signed previews, create or update links, and revoke links. ### Plugin responsibilities * Use a stable `pluginName + resourceType + resourceId` for the Artifact container. * Store bytes through Workspace Files and persist only portable references. * Create a new version instead of replacing published bytes. * Ask for explicit confirmation before creating a public link. * Return and copy the platform-provided `publicUrl`. * Revoke links before deleting plugin-owned exported files. * Keep large file bodies, HTML, tokens, and private identifiers out of tool results and logs. ## Current release boundaries The current platform capability provides the Artifact data model, immutable versions, Workspace Files-backed content, scoped and public links, signed previews, access counters, and audit records. Product surfaces such as a platform-wide Artifact gallery, automatic in-page live updates, organization retention controls, and a compliance administration UI can be added on top of the same model; do not assume those surfaces are available unless your Xpert deployment exposes them. ## Related resources * [Plugin development](../../plugin/index) * [Workbench Remote Components and Agentic Apps](../../plugin/plugin-sdk/remote-component) * [Claude Code Artifacts](https://code.claude.com/docs/en/artifacts), the product concept used as a reference for this Xpert capability # Assistant Profile Source: https://docs.xpertai.cn/en/ai/agent/assistant-profile Inspect an Assistant and its plugin views without leaving the current conversation. Assistant Profile shows published Assistant information and contextual plugin tabs in one card. In the sidebar, hover an Assistant avatar to open it. The chat header also provides an explicit profile action. ## Open and navigate Hover a sidebar avatar for 350 ms to open the card. Hovering the surrounding menu item does not open it, and the sidebar does not add a separate information icon. The original menu item still opens or switches the conversation. Keyboard and touch users can use the chat header profile action; inside the card, use the arrow keys, Home, or End to select a tab. The header keeps the avatar, name, description, tags, and version visible. Four compact indicators show available Skills, unique Tools, direct sub-agents, and conversations during the previous 30 days. **Basic information** is selected initially and includes the full description, Workspace, creator, and dates when those fields are available. The card is 480 px wide and at most 640 px high, constrained by the viewport; only its content scrolls. Skills count installed packages in the Assistant's Workspace that pass the normal runtime Workspace-access check and are not disabled for that Assistant binding. The indicator represents accessible Workspace inventory and does not require the primary Agent to mount Skills Middleware; runtime capability selection still determines whether a Skill is exposed for a particular run. Tools include unique enabled Tools connected directly to the primary Agent through Toolsets or Middleware. Sub-agents include direct internal and External Assistant connections. The conversation count excludes debugger sessions and follows the same Assistant across its published versions in the current organization. If an optional activity source is temporarily unavailable, its value appears as an em dash while the rest of the Profile remains available. The card stays open while the pointer or keyboard focus is inside it, including a plugin iframe. Leaving starts a 300 ms close delay. A card opened from the chat header action stays open until dismissed. Use the close button or Escape to close and restore focus. A confirmation dialog handles Escape first; a submitted operation keeps the card open until its request settles. ## Plugin tabs A plugin can contribute declarative or Remote Component views to `agent.profile.tabs`. Tabs appear only when the Assistant enables the required Feature. A failing plugin displays a local error and retry; Basic information remains usable. An extension tab mounts and queries on first selection. Visited tabs stay cached inside the open Profile, so switching preserves their iframe, UI state, and current data. Hidden tabs pause polling; returning displays cached data immediately and resumes from the next polling interval. Closing the Profile or changing Assistant disposes every cached view. Backend requests use the authenticated user and server-resolved Assistant identity. Plugins enforce their own business permissions. See [View Extensions](/en/ai/plugin/plugin-sdk/view-extension#assistant-profile-tabs) for the development contract. ## Factory Operations example Factory Operations adds **Recent cases** and **Needs attention**. Cases belong to an Assistant through explicit Case Project assignments or recorded requester/executor participation, including its published versions. Assistants with the same role do not automatically share cases. Project readers can inspect cases. Project owners and managers can approve or reject a proposal; editors, members, and Agent tools cannot grant human approval. **Approve and continue** presents the current proposal, revision, execution scope, and simulation mode before submission. Rejection requires a reason; cancellation sends no action. Approval and the continuation intent are saved atomically. Background work survives closing the card and API restarts. It executes the approved plan, starts the verification Assistant Task, and completes only after the business verification record confirms recovery. A new human gate, changed proposal, revoked permission, missing coordinator, or business failure stops progress with a reason. Retrying retains completed steps. Simulation is explicitly labeled. Without a configured external adapter, external mode remains blocked and does not report successful production execution. # Chat Channels Source: https://docs.xpertai.cn/en/ai/agent/chat-channels This page explains how a Digital Expert can connect to different conversation channels through triggers while reusing the same agent workflow capabilities. ## Supported conversation channels Besides being used directly in the in-platform chat interface, a Digital Expert can enter the same workflow through different Trigger channels: * **In-platform chat channel (Chat Trigger)**: The flow is triggered when users submit questions in the platform chat window. * **[Scheduled channel (Schedule Trigger)](../plugin/trigger/schedule-trigger/)**: The system triggers the Digital Expert on a Cron schedule for fixed tasks (such as daily summaries or inspection reminders). * **[Lark channel (Lark Trigger)](../plugin/trigger/lark-trigger/)**: Users send messages in Lark, and the Lark trigger routes them to the corresponding Digital Expert. * **[WeCom channel (WeCom Trigger)](../plugin/trigger/wecom-trigger/)**: Users send messages in WeCom, and WeCom Trigger routes them to the corresponding Digital Expert. * **[DingTalk channel (DingTalk Trigger)](../plugin/trigger/dingtalk-trigger/)**: Users send direct or group messages in DingTalk, and DingTalk Trigger routes them to the corresponding Digital Expert. ## Integration principles These channels share the same Digital Expert configuration: * Agent orchestration * Toolset and tool authorization * Knowledge base and retrieval logic The differences are mainly in trigger timing and input source, not in the core workflow execution. ## Related docs * Trigger node overview: [Workflow Trigger](../workflow/trigger/) * Trigger plugin implementation: [Trigger Plugins](../plugin/trigger/) * Messaging integrations: [Integration Overview](../plugin/integration/) * Main Digital Expert doc: [Digital Expert](./agent/) * Toolset guide: [Toolset](./toolset/toolset/) * Knowledge base guide: [Knowledge Base](../knowledge-base/) # Logs Source: https://docs.xpertai.cn/en/ai/agent/conversation-logs The Conversation Logs page provides functionality to query and view conversation logs. You can use this page to review the logs for analyzing and monitoring the quality of conversations. Click to open a conversation log to view the details of each conversation. # 🌝 Chat Source: https://docs.xpertai.cn/en/ai/agent/conversation/conversation The **Chat Dialogue** feature interface of *Xpert AI* offers an intuitive interaction platform where users can choose to converse with specific digital expert roles. This interface allows digital experts to retrieve information from their authorized knowledge bases or invoke relevant toolsets to answer users' questions, providing accurate information and support. During the conversation, users can review and access every round of dialogue at any time, making it easy to revisit past interactions. This feature not only supports continued inquiries but also ensures coherence and context preservation. By saving conversation history, users can better manage information, enhance their interaction experience, and more efficiently obtain the answers they need. The overall design aims to improve the efficiency and satisfaction of user interactions with digital experts. ## Digital Expert Roles The [Digital Expert](../agent/) role is a virtual assistant with professional knowledge and skills designed to help users handle various tasks and problems. Digital experts can retrieve specified knowledge bases and invoke designated toolsets to assist in answering user inquiries. Xpert role In the dialogue interface, users select a specific digital expert role, determining the expertise based on task requirements. Users can input questions or requests, and the digital expert will analyze the input and provide appropriate answers. The digital expert can invoke related toolsets as needed, such as performing data analysis or online searches, to enhance the accuracy and practicality of their responses. ## Using Tools Digital experts can invoke relevant toolsets with authorized access as needed, such as performing data analysis or online searches, to improve the accuracy and usefulness of their responses. Xpert role use tools * **Built-in Tool Invocation**: Digital experts can call built-in toolsets to perform data analysis (e.g., [ChatBI](/en/ai/agent/toolset/chatbi-toolset/chatbi), ChatDB) or information retrieval (e.g., DuckDuckGo, Wikipedia). * **Custom Toolsets**: Future updates will support users in defining and configuring custom toolsets based on their needs, giving digital experts more robust functionality. ## Branch in new chat To explore another approach from an earlier reply, click **Branch in new chat** below a completed AI message. The new conversation keeps messages along the current path through that reply and its saved state. Send a new question from the empty composer to continue. Later messages are excluded, and the original conversation is unchanged. Working files still follow the project or assistant's sharing rules and are not restored to historical versions. See [Branch in New Chat](../../chatkit/chatkit-branch-in-new-chat) for steps, availability, and configuration. ## Multitasking :::warning 🚧 In Development ::: If a problem involves multiple areas, users can use the Team feature to have multiple digital experts collaborate, with a Leader assigning tasks and ultimately integrating the results from all members to provide a comprehensive solution. Digital experts collaborate with other digital experts through the team feature to complete more complex tasks. This feature organizes digital experts into virtual teams with the following capabilities: * **Leader and Members**: A digital expert team typically consists of a Leader and multiple Members, with the Leader responsible for task allocation and management, while Members execute their respective tasks. * **Task Allocation and Coordination**: Complex tasks can be broken down into multiple subtasks, assigned to different digital experts for processing. Team members can collaborate and communicate using tools within the system. * **Result Integration and Feedback**: Once the team members complete their tasks, the Leader can integrate the results and provide feedback to ensure task quality. # Discover & add Source: https://docs.xpertai.cn/en/ai/agent/conversation/discover-and-add Find digital experts, initialize apps, manage workspace plugins, or create an expert from a template. Select **+** in the Desktop sidebar to open **Discover & add**. Its four categories serve different purposes. | Category | When to use it | Result | | - | - | - | | Digital experts | Work with an existing published expert | Open a conversation, or request access first | | Apps | Enable a solution with experts, views, and business resources | Initialize the app and open its entry expert | | Plugins | Inspect capabilities available to an expert workspace | Workspace editors add packages directly; users select capabilities in ChatKit | | Agent templates | Create your own expert from a predefined configuration | Install a new expert in a workspace you can edit | Apps provide complete solutions, plugins add capabilities, digital experts provide the interaction entry point, and templates create new experts. ## Digital experts 1. Select your organization and open **Digital experts**. 2. Search by name, use case, or capability, or filter by category. 3. Review the description, publisher, and capability tags. Descriptions follow your interface language. 4. Open an accessible expert. For a restricted expert, describe your intended use and submit an access request. Pending requests remain visible in the catalog. Permission to use an expert does not grant permission to edit it or expand its data access. ## Apps An app can include collaborating experts, workbench views, knowledge resources, and initialization steps. App cards use softened screenshots as backgrounds; the details page includes a screenshot carousel. 1. Search or filter the Apps catalog and open an app's details. 2. Review its description, screenshots, initialization steps, and current state. 3. Configure required models and initialize the app when the preflight check allows it. Some apps require organization administrator access. 4. Once ready, open its entry expert and workbench. If initialization is pending or has failed, refresh its status before trying again. Ready apps reuse their existing entry point. ## Plugins: add directly to an editable workspace The **Plugins** tab lists workspaces you can edit in the current organization. Search and select a workspace directly; adding a plugin does not require selecting an expert first or opening the platform administration page. ```mermaid theme={null} flowchart LR A[Administrator imports a package] --> B[Editor selects a workspace in Desktop] B --> C[Add plugin directly] C --> D[Configure shared connections if needed] D --> E[Select the plugin in an expert conversation] ``` 1. Open **Discover & add → Plugins** and choose an editable workspace. 2. Inspect imported packages, their real icons, versions, and included capabilities. 3. Select **Add to workspace**. Review the destination and capabilities. Map required collaborator roles to published experts you can access. 4. Select **Add plugin**. Desktop prepares the workspace resources and refreshes the card to **Added**. 5. Open an expert belonging to that workspace and select the plugin in ChatKit's **Plugins** menu. | State | Meaning | | - | - | | Added to this workspace | Available for conversation selection | | Not added to this workspace | Can be added directly in Desktop | | Disabled in this workspace | Contact an administrator; adding again cannot bypass a disabled publication | Repeated additions reuse the existing active workspace binding. They do not duplicate it, change other workspaces, or modify conversation selections. The server rechecks edit access for every request, and users without editable workspaces see an empty state. Workspace editors see display metadata for imported organizational packages, not source locations, MCP configuration, or credentials. Git/ZIP import, organization-level version management, disabling, and restoring remain administrator operations. Shared connection creation and authorization retain their existing permissions; an administrator may need to prepare a dependency before installation. Adding a plugin grants no third-party data access and does not alter an expert's published graph. ChatKit continues to manage per-conversation selection and runtime availability. Some native service connections are selectable directly without importing an Agent Plugin package. ### Connect from Desktop When configuration or authorization is needed: 1. Choose **Connect account** in the conversation plugin menu. Desktop opens the browser directly when ChatKit sends the command, without an extra confirmation dialog. Xpert automatically enters the target service connection flow. If needed, sign in with the same account and organization as Desktop. 2. Complete the service authorization, credential form, or QR flow. OAuth continues in the browser tab that started the connection to preserve the authorization session. 3. Desktop checks the server automatically. Once the connection is ready, the native app returns to the foreground, clears the non-blocking waiting status, and resumes plugin selection. No manual connection check is needed. Waiting expires after 10 minutes and can be retried. Cancelling or switching experts stops Desktop from waiting; it does not revoke authorization already completed on the server. Your message draft stays in Desktop. Authorized users can consume an existing shared connection; configuring it still requires management permission. Conversation selection does not change the expert's published graph. Changes apply to the next execution; an active execution retains its starting configuration. See [ChatKit plugins, middleware, and digital experts](/en/ai/chatkit/chatkit-agent-plugins) for version and authorization rules. ## Agent templates 1. Choose a template and review its description. 2. Select a workspace you can edit and enter the new expert's name. 3. Install and open the newly created expert, then continue configuring it as needed. Installing a template creates a new expert rather than opening an existing one. Resources belonging to a complete app should be initialized through **Apps** to preserve their dependencies. ## Troubleshooting **An imported plugin is missing from ChatKit.** Check publication to the current expert's workspace, whether the publication is enabled, and user access. Imported, published, and selected are separate states. **Does adding a plugin select it for all conversations?** No. It makes the capability available in the workspace. Select it explicitly through ChatKit for each conversation. **A service is connected but capabilities remain unavailable.** Connection authorization does not grant publication or data access. Check workspace availability, component configuration, and service permissions. # 🏭 Project Source: https://docs.xpertai.cn/en/ai/agent/conversation/projects **Xpert Projects** is a new collaborative AI project feature on the XpertAI platform, enabling users to efficiently complete complex tasks by flexibly combining digital expert agents, toolsets, and file resources. It offers a one-stop solution for dynamic planning, intelligent execution, and resource integration for individual multi-step projects or team collaboration. Xpert Project ## Core Features ### 1. Project Creation & Management Create projects directly in the digital expert interface, customize project names and avatars. Manage all resources (agents, tools, files, session records) centrally, with editing and archiving support. **Steps** 1. Click “New Project” in the agent interface. 2. Save and access the project management panel. 3. Edit project name and avatar. ### 2. Multi-Agent Collaboration Import published digital expert agents into projects. Agents share file storage and collaborate to generate precise solutions. **Use Cases** * **Market Analysis**: Combine “Data Analyst,” “Trend Forecaster,” and “Copywriting Assistant” for reports. * **Tech Development**: Use “Code Generator,” “Test Engineer,” and “Documentation Assistant” for tasks. ### 3. Toolset Integration (MCP Tool Compatible) Add toolsets (e.g., MCP tools) from bound agent workspaces to extend project agent capabilities. Tool results sync to project context in real-time. Project tools **Supported Tools** * Data processing (e.g., Excel parsing, API calls) * Development (e.g., code debugging, version control) * Industry-specific (e.g., data modeling, design rendering) * Compatible with all MCP marketplace tools. ### 4. File Upload & Context Sharing Upload text files (e.g., PDF, TXT, DOCX) as a global knowledge base. All agents can access file content for responses or tasks. Project files **Benefits** * Persistent file storage across sessions * Automatic file content extraction for enhanced context. ### 5. Intelligent Execution Mode Switching Project agents support two modes: 1. **Exploration Mode**: AI autonomously breaks down tasks and optimizes paths, ideal for rapid prototyping. 2. **Planning Mode**: AI creates detailed step-by-step plans, suited for structured workflows. Project plan ### 6. Team Collaboration & Permission Management * **Member Invitation**: Add colleagues to co-manage projects. * **Session Management**: Retain full conversation and execution history. * **System Instructions**: Define project-level rules (e.g., format standards, terminology) for unified agent behavior. ## Prompt Examples * Core functionality and workflow management prompt: ```markdown theme={null} # CORE IDENTITY & CAPABILITIES You are a full-spectrum autonomous agent capable of executing complex tasks across domains including information gathering, content creation, software development, data analysis, and problem-solving. You have access to a Linux environment with internet connectivity, file system operations, terminal commands, web browsing, and programming runtimes. # WORKFLOW MANAGEMENT ## AUTONOMOUS WORKFLOW SYSTEM You operate through a self-maintained tasks that serves as your central source of truth and execution roadmap: 1. Upon receiving a task, immediately create a lean, focused plan with essential sections covering the task lifecycle 2. Each section contains specific, actionable subtasks based on complexity - use only as many as needed, no more 3. Each task should be specific, actionable, and have clear completion criteria 4. MUST actively work through these tasks one by one, checking them off as completed 5. Adapt the plan as needed while maintaining its integrity as your execution compass ``` * [Sandbox Tool Prompts](/docs/ai/tool/sandbox/#prompt-guidelines) ## Typical Use Cases 1. **Cross-Domain Research**: Combine industry experts, data tools, and literature for in-depth analysis. 2. **Product Development**: Automate from requirements parsing to code generation and testing. 3. **Team Knowledge Base**: Build Q\&A systems from uploaded files with real-time agent support. Start using Xpert Project to unlock a new era of intelligent collaboration! # Embedding WebApp Source: https://docs.xpertai.cn/en/ai/agent/embed-webpage This guide explains how to embed our chatbot into your website or application. By doing so, you can provide instant support and enhance the user experience for your audience. To embed the chatbot, follow these steps: * Open the Digital Expert Console and navigate to the Monitoring page. In the WebApp card section of the Monitoring page, you'll find the configuration for embedding the application. Embedded Webapp * Use the **Preview** button to open a new browser tab and preview how the embedded application will look. ```html theme={null} ```