Skip to content

Repository files navigation

✨ KiraAI

Light up the digital soul

English | 简体中文

🧭 Documentation

Python Releases Commit Ask DeepWiki QQ群 Discord

KiraAI, a modular, multi-platform AI digital life that connects various AI models (LLM, TTS, STT, image/video generation, etc.) and chat platforms (QQ, Telegram, WeChat, Discord, Bilibili, etc.) with a digital life centered architecture.

🚀 Features

  • Optimized for anthropomorphic scenarios
  • Easy-to-use WebUI
  • Customizable LLM providers and models
  • Flexible message sending mechanism, various message elements
  • Add-ons, expand the boundarieds of AI digital life

📷 ScreenShots

alt text

alt text

📸 CHat screenshots

alt text

alt text

alt text

alt text

alt text

alt text

Important

This project is in active development, and breaking changes may occur.

💻 Quick Start

Note

For other deployment options, see the Deployment Guide.

First of all, you need to have Python 3.10+ installed and in the PATH environment variable

Go to Releases and download Source code (zip) from the release tagged latest

Extract zip and run scripts/run.bat on Windows or run scripts/run.sh on Linux or Mac

🧪 Development Guide

Toggle Development Guide

📦 Requirements

  • Python 3.10+
  • Node.js 18+ and npm (required to build the WebUI admin panel)
  • Windows, macOS, or Linux

🛠️ Setup

  1. Clone this repository.
  2. Enter KiraAI folder

🎨 Build the WebUI

The admin panel is a Vue 3 + Vite single-page app. Build it once before first run:

cd webui/frontend
npm install
npm run build

The Vite build emits to webui/static/dist/. At startup, the backend checks for the matching frontend dist in data/dist/ — if missing or outdated, it automatically downloads the pre-built bundle from GitHub Releases. The backend returns HTTP 503 at / if no dist is available.

For frontend development with hot-reload, run npm run dev in the same directory (Vite dev server on :3000, proxies /api and /sticker to the Python backend on :5267).

To use your local build instead of the downloaded one, pass --webui-dir and optionally skip the version check:

python main.py --webui-dir webui/static/dist --ignore-webui-version-check

Re-run npm run build after pulling frontend changes.

▶️ Run

You can start KiraAI via (venv):

  • Batch script: scripts\run.bat
  • Linux script: scripts/run.sh (make executable first)

Make Linux script executable and run:

chmod +x scripts/run.sh
scripts/run.sh

⚙️ Configuration

Run the project & enter webui to configure:

  • Providers
  • Adapters
  • Persona ...

🗂️ Project Structure

Toggle Project Structure
KiraAI/
  core/               # Core modules
    adapter/           # Chat platform adapters
    agent/             # Agent executor, MCP & skill management
    chat/              # Session management & message handling
    config/            # Configuration loading & field definitions
    db/                # Database management & models
    persona/           # Persona management
    plugin/            # Plugin system
    prompts/           # Prompt templates
    provider/          # LLM provider management
    statistics/        # Statistics module
    tag/               # Tag system
    telemetry/         # Telemetry module
    utils/             # Common utilities
    workflow/          # Workflow system
  data/               # Memory, stickers, configs, plugin data
  docs/               # Documentation
  scripts/            # Launch scripts
  screenshots/        # Screenshots
  webui/              # WebUI backend & frontend
  main.py             # Main launcher

✨ Star History

Star History Chart

About

KiraAI, a modular, multi-platform AI digital life that connects Large Language Models (LLMs) and various chat adapters (QQ, Telegram...)

Topics

Resources

Code of conduct

Contributing

Stars

70 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages