Awesome
<a name="readme-top"></a>
<div align="center"> <img height="100" src="./assets/logo.png"> <h1 align="center">Rodel Agent</h1>A Windows desktop application that integrates chat, text-to-image, text-to-speech, and machine translation, supports the current mainstream AI services, and offers an excellent desktop AI experience.
<a title="Get from Microsoft" href="https://www.microsoft.com/store/apps/9NB0NB3MLQTM?launch=true&mode=full" target="_blank"><picture><source srcset="https://get.microsoft.com/images/en-US%20light.svg" media="(prefers-color-scheme: dark)"><source srcset="https://get.microsoft.com/images/en-US%20dark.svg" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)"><img src="https://get.microsoft.com/images/en-US%20dark.svg" width="144"></picture></a>
English · 简体中文
<!-- SHIELD GROUP --> </div>✨ Feature Overview
Please refer to the document website for detailed introduction: Rodel Agent
⚒️ Project Development
Prerequisites
Development Tools | Visual Studio 2022 |
---|---|
Basic Dependencies | .NET 8, Windows App SDK 1.6 |
Submodules | - Richasy/semantic-kernel <br/> - Richasy/WinUI.Share |
Cloning the Repository
Run the following command to clone the main repository and pull the submodules simultaneously.
git clone --recurse-submodules https://github.com/Richasy/Rodel.Agent.git
If you have already cloned the repository but forgot to initialize and update the submodules, you can run the following command in the repository directory to complete this step:
git submodule update --init --recursive
After pulling, please check the branch of the submodule Richasy/semantic-kernel
to ensure it is the dev
branch.
Building
UI
The desktop UI project is located in the src/Desktop/RodelAgent.UI
directory. You can set RodelAgent.UI
as the startup project and switch the environment to x64 for building.
Console
If you are developing specific functional modules, you can find the main console programs for these modules in the src/Console
directory, where you can quickly verify functionalities.
For different functional console programs, you need to manually create a config.json
file in the project directory and fill in your service configuration.
For example, for the chat program, you need to create a config.json
file matching the ChatClientConfiguration and place it in the RodelChat.Console
directory.
The specific service configuration is optional, and you can fill in only the services you want to test. For example:
{
"openai": {
"key": "sk-xxxxxxxxxxxxxxxxxxxxxxx"
}
}
The console will automatically load the local config.json
but will not upload it via git to ensure that the key is not leaked.