{"id":22944550,"url":"https://github.com/moeru-ai/airi","last_synced_at":"2026-04-06T23:01:20.965Z","repository":{"id":267909770,"uuid":"896924279","full_name":"moeru-ai/airi","owner":"moeru-ai","description":"💖🧸 Self hosted, you-owned Grok Companion, a container of souls of waifu, cyber livings to bring them into our worlds, wishing to achieve Neuro-sama's altitude. Capable of realtime voice chat, Minecraft, Factorio playing. Web / macOS / Windows supported.","archived":false,"fork":false,"pushed_at":"2026-04-05T11:03:26.000Z","size":451082,"stargazers_count":37091,"open_issues_count":124,"forks_count":3671,"subscribers_count":139,"default_branch":"main","last_synced_at":"2026-04-05T12:20:09.648Z","etag":null,"topics":["ai-companion","ai-vtuber","digital-life","grok-companion","live2d","neuro-sama","neurosama","openclaw","vrm","vtuber"],"latest_commit_sha":null,"homepage":"https://airi.moeru.ai/docs/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/moeru-ai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":["nekomeowww","luoling8192","LemonNekoGH","sumimakito","kwaa"],"ko_fi":"proj_airi","open_collective":"proj-airi","patreon":"proj_airi"}},"created_at":"2024-12-01T16:33:36.000Z","updated_at":"2026-04-05T12:12:04.000Z","dependencies_parsed_at":"2024-12-13T07:32:28.693Z","dependency_job_id":"d02aa475-f995-4c2c-ab2f-303b58e53afa","html_url":"https://github.com/moeru-ai/airi","commit_stats":null,"previous_names":["moeru-ai/airi"],"tags_count":137,"template":false,"template_full_name":null,"purl":"pkg:github/moeru-ai/airi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moeru-ai%2Fairi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moeru-ai%2Fairi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moeru-ai%2Fairi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moeru-ai%2Fairi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moeru-ai","download_url":"https://codeload.github.com/moeru-ai/airi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moeru-ai%2Fairi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31489492,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-06T17:22:55.647Z","status":"ssl_error","status_checked_at":"2026-04-06T17:22:54.741Z","response_time":112,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-companion","ai-vtuber","digital-life","grok-companion","live2d","neuro-sama","neurosama","openclaw","vrm","vtuber"],"created_at":"2024-12-14T14:19:12.753Z","updated_at":"2026-04-06T23:01:20.913Z","avatar_url":"https://github.com/moeru-ai.png","language":"TypeScript","funding_links":["https://github.com/sponsors/nekomeowww","https://github.com/sponsors/luoling8192","https://github.com/sponsors/LemonNekoGH","https://github.com/sponsors/sumimakito","https://github.com/sponsors/kwaa","https://ko-fi.com/proj_airi","https://opencollective.com/proj-airi","https://patreon.com/proj_airi"],"categories":["虚拟角色","多模态大模型","Vue","TypeScript","Repos","Open Source Projects","Uncategorized"],"sub_categories":["资源传输下载","A"],"readme":"\u003cp align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource\n      width=\"250\"\n      srcset=\"./docs/public/logo-dark.png\"\n      media=\"(prefers-color-scheme: dark)\"\n    /\u003e\n    \u003csource\n      width=\"250\"\n      srcset=\"./docs/public/logo-light.png\"\n      media=\"(prefers-color-scheme: light), (prefers-color-scheme: no-preference)\"\n    /\u003e\n    \u003cimg width=\"250\" src=\"./docs/public/logo-light.png\" /\u003e\n  \u003c/picture\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eアイリ VTuber\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  [\u003ca href=\"https:///airi.ayaka.io\"\u003eTry it\u003c/a\u003e] [\u003ca href=\"https://github.com/moeru-ai/airi/blob/main/README.zh-CN.md\"\u003e简体中文文档\u003c/a\u003e]\n\u003c/p\u003e\n\n\u003e Heavily inspired by [Neuro-sama](https://www.youtube.com/@Neurosama)\n\n\u003cimg src=\"./docs/public/readme-image-pc-preview.png\"\u003e\n\nUnlike the other AI driven VTuber open source projects, アイリ VTuber was built with many support of Web technologies such as [WebGPU](https://www.w3.org/TR/webgpu/), [WebAudio](https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API), [Web Workers](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers), [WebAssembly](https://webassembly.org/), [WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket), etc. from the first day.\n\nThis means that **アイリ VTuber is capable to run on modern browsers and devices**, and even on mobile devices (already done with PWA support), this brought a lot of possibilities for us (the developers) to build and extend the power of アイリ VTuber to the next level, while still left the flexibilities for users to enable features that requires TCP connections or other non-Web technologies such as connect to voice channel to Discord, or playing Minecraft, Factorio with you and your friends.\n\n\u003e [!NOTE]\n\u003e\n\u003e We are still in the early stage of development where we are seeking out talented developers to join us and help us to make アイリ VTuber a reality.\n\u003e\n\u003e It's ok if you are not familiar with Vue.js, TypeScript, and devtools that required for this project, you can join us as an artist, designer, or even help us to launch our first live stream.\n\u003e\n\u003e Even you are a big fan of React or Svelte, even Solid, we welcome you, you can open a sub-directory to add features that you want to see in アイリ VTuber, or would like to experiment with.\n\u003e\n\u003e Fields (and related projects) that we are looking for:\n\u003e\n\u003e - Live2D modeller\n\u003e - VRM modeller\n\u003e - VRChat avatar designer\n\u003e - Computer Vision\n\u003e - Reinforcement Learning\n\u003e - Speech Recognition\n\u003e - Speech Synthesis\n\u003e - ONNX Runtime\n\u003e - Transformers.js\n\u003e - vLLM\n\u003e - WebGPU\n\u003e - Three.js\n\u003e - WebXR ([checkout the another project](https://github.com/moeru-ai/n3p6) we have under @moeru-ai organization)\n\u003e\n\u003e **If you are interested in, why not introduce yourself here? [Would like to join part of us to build Airi?](https://github.com/moeru-ai/airi/discussions/33)**\n\n## Current progress\n\nCapable of\n\n- [x] Brain\n  - [x] Play [Minecraft](https://www.minecraft.net)\n  - [x] Play [Factorio](https://www.factorio.com) (WIP, but [PoC and demo available](https://github.com/moeru-ai/airi-factorio))\n  - [x] Chat in [Telegram](https://telegram.org)\n  - [x] Chat in [Discord](https://discord.com)\n  - [ ] Memory\n    - [x] Pure in-browser database support (DuckDB WASM | `pglite`)\n    - [ ] Memory Alaya (WIP)\n  - [ ] Pure in-browser local (WebGPU) inference\n- [x] Ears\n  - [x] Audio input from browser\n  - [x] Audio input from [Discord](https://discord.com)\n  - [x] Client side speech recognition\n  - [x] Client side talking detection\n- [x] Mouth\n  - [x] [ElevenLabs](https://elevenlabs.io/) voice synthesis\n- [x] Body\n  - [x] VRM support\n    - [x] Control VRM model\n  - [x] VRM model animations\n    - [x] Auto blink\n    - [x] Auto look at\n    - [x] Idle eye movement\n  - [x] Live2D support\n    - [x] Control Live2D model\n  - [x] Live2D model animations\n    - [x] Auto blink\n    - [x] Auto look at\n    - [x] Idle eye movement\n\n## Development\n\n```shell\npnpm i\n```\n\n```shell\npnpm dev\n```\n\n## Supported the following LLM API Providers (powered by [xsai](https://github.com/moeru-ai/xsai))\n\n- [x] [OpenRouter](https://openrouter.ai/)\n- [x] [vLLM](https://github.com/vllm-project/vllm)\n- [x] [SGLang](https://github.com/sgl-project/sglang)\n- [x] [Ollama](https://github.com/ollama/ollama)\n- [x] [Google Gemini](https://developers.generativeai.google)\n- [x] [OpenAI](https://platform.openai.com/docs/guides/gpt/chat-completions-api)\n  - [ ] [Azure OpenAI API](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference) (PR welcome)\n- [x] [Anthropic Claude](https://anthropic.com)\n  - [ ] [AWS Claude](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference) (PR welcome)\n- [x] [DeepSeek](https://www.deepseek.com/)\n- [x] [Qwen](https://help.aliyun.com/document_detail/2400395.html)\n- [x] [xAI](https://x.ai/)\n- [x] [Groq](https://wow.groq.com/)\n- [x] [Mistral](https://mistral.ai/)\n- [x] [Cloudflare Workers AI](https://developers.cloudflare.com/workers-ai/)\n- [x] [Together.ai](https://www.together.ai/)\n- [x] [Fireworks.ai](https://www.together.ai/)\n- [x] [Novita](https://www.novita.ai/)\n- [x] [Zhipu](https://bigmodel.cn)\n- [x] [SiliconFlow](https://cloud.siliconflow.cn/i/rKXmRobW)\n- [x] [Stepfun](https://platform.stepfun.com/)\n- [x] [Baichuan](https://platform.baichuan-ai.com)\n- [x] [Minimax](https://api.minimax.chat/)\n- [x] [Moonshot AI](https://platform.moonshot.cn/)\n- [x] [Tencent Cloud](https://cloud.tencent.com/document/product/1729)\n- [ ] [Sparks](https://www.xfyun.cn/doc/spark/Web.html) (PR welcome)\n- [ ] [Volcano Engine](https://www.volcengine.com/experience/ark?utm_term=202502dsinvite\u0026ac=DSASUQY5\u0026rc=2QXCA1VI) (PR welcome)\n\n## Sub-projects born from this project\n\n- [`unspeech`](https://github.com/moeru-ai/unspeech): Universal endpoint proxy server for `/audio/transcriptions` and `/audio/speech`, like LiteLLM but for any ASR and TTS\n- [`hfup`](https://github.com/moeru-ai/hfup): tools to help on deploying, bundling to HuggingFace Spaces\n- [`@proj-airi/drizzle-duckdb-wasm`](https://github.com/moeru-ai/airi/tree/main/packages/drizzle-duckdb-wasm/README.md): Drizzle ORM driver for DuckDB WASM\n- [`@proj-airi/duckdb-wasm`](https://github.com/moeru-ai/airi/tree/main/packages/duckdb-wasm/README.md): Easy to use wrapper for `@duckdb/duckdb-wasm`\n- [`@proj-airi/lobe-icons`](https://github.com/proj-airi/lobe-icons): Iconify JSON bundle for amazing AI \u0026 LLM icons from [lobe-icons](https://github.com/lobehub/lobe-icons), support Tailwind and UnoCSS\n- [Airi Factorio](https://github.com/moeru-ai/airi-factorio): Allow Airi to play Factorio\n- [Factorio RCON API](https://github.com/nekomeowww/factorio-rcon-api): RESTful API wrapper for Factorio headless server console\n- [`autorio`](https://github.com/moeru-ai/airi-factorio/tree/main/packages/autorio): Factorio automation library\n- [`tstl-plugin-reload-factorio-mod`](https://github.com/moeru-ai/airi-factorio/tree/main/packages/tstl-plugin-reload-factorio-mod): Reload Factorio mod when developing\n- [🥺 SAD](https://github.com/moeru-ai/sad): Documentation and notes for self-host and browser running LLMs\n- [`@velin-dev/ml`](https://github.com/luoling8192/velin): Use Vue SFC and Markdown to write easy to manage stateful prompts for LLM\n- [`demodel`](https://github.com/moeru-ai/demodel): Easily boost the speed of pulling your models and datasets from various of inference runtimes.\n- [`inventory`](https://github.com/moeru-ai/inventory): Centralized model catalog and default provider configurations backend service\n- [MCP Launcher](https://github.com/moeru-ai/mcp-launcher): Easy to use MCP builder \u0026 launcher for all possible MCP servers, just like Ollama for models!\n- ~~[`@proj-airi/elevenlabs`](https://github.com/moeru-ai/airi/tree/main/packages/elevenlabs): TypeScript definitions for ElevenLabs API~~\n\n```mermaid\n%%{ init: { 'flowchart': { 'curve': 'catmullRom' } } }%%\n\nflowchart TD\n  Core(\"Core\")\n  Unspeech[\"unspeech\"]\n  DBDriver[\"@proj-airi/drizzle-duckdb-wasm\"]\n  MemoryDriver[\"[WIP] Memory Alaya\"]\n  DB1[\"@proj-airi/duckdb-wasm\"]\n  ICONS[\"@proj-airi/lobe-icons\"]\n  UI(\"@proj-airi/stage-ui\")\n  Stage(\"Stage\")\n  F_AGENT(\"Factorio Agent\")\n  F_API[\"Factorio RCON API\"]\n  F_MOD1[\"autorio\"]\n  SVRT[\"@proj-airi/server-runtime\"]\n  MC_AGENT(\"Minecraft Agent\")\n  XSAI[\"xsai\"]\n\n  subgraph Airi\n    DB1 --\u003e DBDriver --\u003e MemoryDriver --\u003e Memory --\u003e Core\n    ICONS --\u003e UI --\u003e Stage --\u003e Core\n    Core --\u003e STT\n    Core --\u003e SVRT\n  end\n\n  STT --\u003e |Speaking|Unspeech\n  SVRT --\u003e |Playing Factorio|F_AGENT\n  SVRT --\u003e |Playing Minecraft|MC_AGENT\n\n  subgraph Factorio Agent\n    F_AGENT --\u003e F_API -..- factorio-server\n    subgraph factorio-server-wrapper\n      subgraph factorio-server\n        F_MOD1\n      end\n    end\n  end\n\n  subgraph Minecraft Agent\n    MC_AGENT --\u003e Mineflayer -..- minecraft-server\n    subgraph factorio-server-wrapper\n      subgraph factorio-server\n        F_MOD1\n      end\n    end\n  end\n\n  XSAI --\u003e Core\n  XSAI --\u003e F_AGENT\n  XSAI --\u003e MC_AGENT\n```\n\n```mermaid\n%%{ init: { 'flowchart': { 'curve': 'catmullRom' } } }%%\n\nflowchart TD\n  subgraph deploy\u0026bundle\n    direction LR\n    HFUP[\"hfup\"]\n    HF[/\"HuggingFace Spaces\"\\]\n    HFUP -...- UI -...-\u003e HF\n    HFUP -...- whisper-webgpu -...-\u003e HF\n    HFUP -...- moonshine-web -...-\u003e HF\n  end\n\n```\n\n## Models used\n\n- [onnx-community/whisper-large-v3-turbo · Hugging Face](https://huggingface.co/onnx-community/whisper-large-v3-turbo)\n\n## Similar Projects\n\n### Open sourced ones\n\n- [kimjammer/Neuro: A recreation of Neuro-Sama originally created in 7 days.](https://github.com/kimjammer/Neuro): very well completed implementation.\n- [SugarcaneDefender/z-waif](https://github.com/SugarcaneDefender/z-waif): Great at gaming, autonomous, and prompt engineering\n- [semperai/amica](https://github.com/semperai/amica/): Great at VRM, WebXR\n- [elizaOS/eliza](https://github.com/elizaOS/eliza): Great examples and software engineering on how to integrate agent into various of systems and APIs\n- [ardha27/AI-Waifu-Vtuber](https://github.com/ardha27/AI-Waifu-Vtuber): Great about Twitch API integrations\n- [InsanityLabs/AIVTuber](https://github.com/InsanityLabs/AIVTuber): Nice UI and UX\n- [IRedDragonICY/vixevia](https://github.com/IRedDragonICY/vixevia)\n- [t41372/Open-LLM-VTuber](https://github.com/t41372/Open-LLM-VTuber)\n- [PeterH0323/Streamer-Sales](https://github.com/PeterH0323/Streamer-Sales)\n\n### Non-open-sourced ones\n\n- https://clips.twitch.tv/WanderingCaringDeerDxCat-Qt55xtiGDSoNmDDr https://www.youtube.com/watch?v=8Giv5mupJNE\n- https://clips.twitch.tv/TriangularAthleticBunnySoonerLater-SXpBk1dFso21VcWD\n\n## Project Status\n\n![Repobeats analytics image](https://repobeats.axiom.co/api/embed/a1d6fe2c13ea2bb53a5154435a71e2431f70c2ee.svg 'Repobeats analytics image')\n\n## Acknowledgements\n\n- [pixiv/ChatVRM](https://github.com/pixiv/ChatVRM)\n- [josephrocca/ChatVRM-js: A JS conversion/adaptation of parts of the ChatVRM (TypeScript) code for standalone use in OpenCharacters and elsewhere](https://github.com/josephrocca/ChatVRM-js)\n- Design of UI and style was inspired by [Cookard](https://store.steampowered.com/app/2919650/Cookard/), [UNBEATABLE](https://store.steampowered.com/app/2240620/UNBEATABLE/), and [Sensei! I like you so much!](https://store.steampowered.com/app/2957700/_/), and artworks of [Ayame by Mercedes Bazan](https://dribbble.com/shots/22157656-Ayame) with [Wish by Mercedes Bazan](https://dribbble.com/shots/24501019-Wish)\n- [mallorbc/whisper_mic](https://github.com/mallorbc/whisper_mic)\n- [`xsai`](https://github.com/moeru-ai/xsai): Implemented a decent amount of packages to interact with LLMs and models, like [Vercel\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=moeru-ai/airi\u0026type=Date)](https://www.star-history.com/#moeru-ai/airi\u0026Date)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoeru-ai%2Fairi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoeru-ai%2Fairi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoeru-ai%2Fairi/lists"}