Xedant Agent is a personal AI worker that works on your project on your computer or server: it reads and edits files, runs commands, keeps an eye on code quality, and talks with you in an ordinary chat. It is useful for developers and for business owners who want to make changes to their project themselves. This page is where to start.
Xedant Agent is deployed on your server through Xedant MultiAgent, as part of the Agent Factory subscription. Docker and everything else is installed by MultiAgent itself — there is nothing to install separately.
The agent works in an isolated environment and sees only your project folder — the rest of the system is out of its reach. After that, all that is left is to set up a model and enter the API key from your AI provider — that is covered in Setting up your first model below.
Setting up your credentials
Your credentials are the login and password you use to sign into the app, like an online account. They are set with the environment variables AGENT_LOGIN (login) and AGENT_PASSWORD (password). Environment variables are launch settings: you set them once, and the app applies them automatically on every start.
If the variables are not set, the app generates a temporary password by itself (the login is code) and prints it to the console — the window where the program runs. These credentials work until the app restarts, which is handy when you just want to try the program. The full list of variables is on the Models page.
The password and its fingerprint
The password is not stored as it is, but as a SHA256 hash — a “fingerprint” that cannot be turned back into the original text: even if the settings file falls into the wrong hands, the password stays safe. The built-in generator on the login page produces a ready fingerprint, and that is what goes into the value of AGENT_PASSWORD.
When you sign in with temporary credentials, the login page shows a warning. To make them permanent, set the environment variables and restart the app.
After signing in you receive a JWT token — a digital pass that keeps your session alive for 90 days, so you will not have to sign in again every time.
By default the token signing key is generated automatically and stored in the system’s temporary folder — enough for everyday work. For a permanent key, set the JWT_SECRET_KEY variable (at least 32 characters): the issued passes then stay valid across app restarts.
Other access methods — single sign-on through your server (SSO), API-key sign-in, and live connections — are described on the Login and Authorization page.
The main interface
After signing in you see the chat list — the home screen where your work starts:
- Chat list — all your conversations live here. Each chat shows a title and the time it was last updated. If you have no chats yet, you are greeted by a prominent New Chat button.
- New Chat — every conversation is independent and does not share context with the others, so you can work on several tasks at once without getting lost.
- Live updates — the chat list refreshes itself over SignalR (a technology that pushes updates to the browser instantly): new chats and work progress appear on screen right away, with no page reload.
The chat list is cached locally by the browser, so on return visits it opens instantly. If it ever falls out of sync with the database — for example, after you deleted chats from another browser — press the refresh button next to the chat search field.
Click any chat to open it. Inside is your conversation with the agent; the Chat documentation covers the chat interface in detail.
Demo project
A ready demo project is included in the product: it is a convenient way to watch the agent write, build, test, and fix code. You will see it the first time you start the app.
To work with your own project, point the AGENT_PROJECT_PATH environment variable at it. Xedant Agent works with any codebase — just set the project folder and start a chat.
The demo project includes demo skills — ready-made instructions that teach the agent how to handle typical tasks. They are useful on their own and serve as templates for your own skills. See the Skills documentation for details.
Xedant Agent runs in single-project mode: one instance, one project. Instances are fully isolated, so you can run several at the same time — each on its own port (the numbered address an app listens on) and each for a different project.
Setting up your first model
Before your first chat, you need to create a model — a set of settings that tells the agent which neural network to use and how to connect to it. At minimum, you supply an API key: a secret access key for the neural network, issued by your AI provider (a company that provides neural networks — Anthropic, z.ai, OpenRouter, and others).
Quick way: while you have no models, the message input area shows a create model link — the setup dialog opens right where you need it, so you don’t have to visit the Models page separately.
How to create your first model:
- Click New model — on the Models page in the main menu, or via the create model link in the message input area
- Pick an AI provider from the built-in list — Anthropic, z.ai, OpenRouter, xAI Grok, MiniMax, Kimi, or Custom
- Choose a model variant (for example, Claude Sonnet 5 or Claude Opus 5 for Anthropic) — models differ in quality, speed, and price
- Enter your API key — everything else (model name, provider address, prices) is filled in automatically
If your provider or model is not in the list, take the Custom template and enter your own endpoint address and key, then adjust the settings after creation. You can also contact us — we will add the provider to the built-in list.
Which provider to choose: for heavy development (large software products), z.ai (GLM models) is the most convenient — it has plans for active work. For everything else — including day-to-day work with finished products — DeepSeek with pay-per-actual-token billing works best (it has its own built-in template). If you plan to both develop and use a finished product, create both models and switch depending on the task.
Once the model is created, pick it in the model selector — the dropdown next to the input field (it appears once at least one model exists). You can create several models for different providers and switch between them at any moment. See the Models documentation for details.
Sending your first message
Starting a conversation is simple:
- Create a chat — press New Chat in the chat list.
- Type a message — write your question or describe the task in ordinary words in the input field. The field supports multi-line text.
- Send it — press Enter or the send button. Shift+Enter adds a line break without sending.
- Watch the reply — it appears in real time. If the agent reads files or performs actions, you will see it right in the chat.
Tip: be specific. Instead of “Fix the bug”, write “The login form does not submit when the button is pressed. Help me find the problem.” The more context you give, the more precise the help.
While the agent works, the page header shows live stats: elapsed time, processing speed (tokens per second — tokens are the “units of text” you pay your provider for), and the running cost. A stop button appears next to it — press it to interrupt the request at any moment.
Click any message to see its details — which files were read or changed. Edits show a diff — a visual before/after comparison: added lines in green, removed lines in red. Hover over a message to see its stats (processing time, tokens, cost) and buttons: copy the message or continue the conversation from that point — handy for resuming a stopped chat.
All chat features — message types, skill selection, model switching, the message queue — are described in the Chat documentation.
Working with several chats
Each chat is a separate conversation with its own context: one can be devoted to debugging a function, another to planning a new project, a third to exploring part of the code. Here is how to use them:
- Creating chats — press New Chat in the chat list. After the first message, the agent comes up with a clear title for the chat by itself.
- Switching between chats — return to the chat list and pick the one you need. Each chat remembers the whole conversation, so you continue exactly where you left off.
Recommendation: start a separate chat for each task or topic — conversations stay focused, and the information you need is easy to find. For example, one chat for “Order form update”, another for “Email notification setup”.
What’s next?
Now that you know the basics, you can dig deeper into what the agent can do:
- Chat — message types, skill selection, model switching, the message queue, and the floating task panel. Read about Chat
- Models — several AI providers, API key management, switching between configurations. Read about Models
- Files and projects — how the agent reads, edits, and manages your project’s files. Read about Files and Projects
- Build and deploy — automatic quality checks, controlling how the app runs. Read about Build and Deploy
- Skills — using, creating, and managing skills that extend what the agent can do. Read about Skills
- Settings — a card-based hub: appearance, chat and sound, automation, tools, and configuration. Read about Settings