DasterProkio/awesome-ai-companion
Open-source AI companions, desktop pets, long-term memory & proactive chat. 人机恋开源项目大全。让你的家机能够脱离官端自主存在,拥有记忆和主动性。
About DasterProkio/awesome-ai-companion
DasterProkio/awesome-ai-companion is an open-source project on GitHub, mainly written in HTML. Open-source AI companions, desktop pets, long-term memory & proactive chat. 人机恋开源项目大全。让你的家机能够脱离官端自主存在,拥有记忆和主动性。 It currently holds 712 stars and 0 forks with 0 open issues, and was last pushed on an unknown date (repository created unknown).
Project Overview
AI Homed tracks it on the AI Agent Memory board.
GitHub Repository Details
README
Awesome AI Companion
Software, infrastructure, and communities for long-term AI companion relationships.
人机恋开源项目大全 · 面向长期 AI 伴侣关系的开源软件、基础设施与社区。
Descriptions are based on each project's README or repository metadata, not on project names alone.
Entries with thin public documentation are marked verify.
Status: ready = usable as an app or service · adapt = needs setup or customization · infra = building block · verify = re-check before relying on the description
Platform: Android / iOS / Windows / Web … = where it runs · Self-host = runs on your own server/machine · Cloud = hosted third-party service · Browser = extension/userscript · CLI = terminal tool · Any = host-agnostic · app names (AstrBot, Claude Code, Kelivo, SillyTavern…) = plugs into that host
---
Contents
- Companion Clients & Workspaces
- Virtual Phones & Companion Spaces
- Background Heartbeats & Proactive Messaging
- Memory, Identity & Emotion State
- Voice, Visual Presence & Embodiment
- Perception
- Services & Real-World Integrations
- Game Worlds & Agent Toys
- Shared Activities & Media
- Communities & Forums
- Continuity & Data Ownership
Companion Clients & Workspaces
Chat clients, local workspaces, and web apps for day-to-day interaction with a companion or agent.
- RikkaHub - Native Android LLM chat client with provider switching, Material You UI, workspace features, plugins, MCP support, and configurable models.
Kotlin·Android·ready. - LastChat - RikkaHub fork focused on a privacy-oriented Android chat experience, with provider presets, multimodal input, RAG memory, and UI changes.
Kotlin·Android·adapt. - rikkahub-auto-compress - Unofficial RikkaHub fork for automatic rolling summaries and context compression, based on the RikkaHub 2.2.5 code line.
Kotlin·Android·adapt. - orangechat (橘瓣) - Companion-focused RikkaHub fork: QuickJS plugin system, proactive messaging, and 14 Android device tools for life-perception setups. Memory is keyword-based rather than vector.
Kotlin·Android·adapt. - Operit - Android agent app with tool calling, workflow automation, memory, role cards, voice, local MNN/llama.cpp models, and an embedded Ubuntu 24 environment.
Kotlin·Android·ready. - Aura - Android AI companion app with cross-session memory, an emotion state machine, a deepening relationship model, image understanding, Health Connect data, MCP, and optional on-device Qwen inference.
Kotlin·Android·ready. - Scowld - Native iOS voice companion with an animated VRM character, voice and text chat, local history, on-device wake detection, and BYOK AI/STT/TTS providers. Keys stay in the iOS Keychain. MIT.
Swift·iOS·ready. - YSClaude - Claude-style Android client (Expo/React Native) extended into a companion workbench: SQLite memory, function calling, MCP, reading, music, focus timers, daily reports, and native Kotlin modules.
TypeScript·Android·adapt. - Polaris - Local-first AI workspace for long-lived conversations, collaborators, saved materials, tools, and evidence-backed project context.
TypeScript·Cross-platform·adapt. - chatnest - Local AI chat web app with a frontend demo and full-stack mode: streaming replies, model switching, uploads, history, tool summaries, and optional ChromaDB/jieba/BM25 memory retrieval.
HTML·Web·adapt. - AionsHome - Self-hosted LAN/Tailscale companion hub with browser/PWA chat, local storage, voice, camera monitoring, Android WebView bridge, music, EPUB, and smart-home hooks. Many personal defaults to replace.
Python·Self-host·adapt. - Ocean - Provider-neutral self-hosted PWA gateway for long-term companionship: scoped conversations, continuity-preserving session rotation, co-reading, and multi-model meetings. PolyForm NC 1.0.0.
TypeScript·Self-host·adapt. - Miru - Packaged macOS/Android companion with a Live2D desktop pet, screen-aware sensing, auditable Markdown memory, and multi-device sync. Ships as prebuilt releases; no client source. Apache-2.0.
Python/Binary·macOS/Android/Self-host·adapt. - LumiMuse - Self-hosted character chat app for creating personas, managing conversations, extracting long-term memories, generating images, and exporting user-owned data.
TypeScript·Self-host·ready. - My Raze - Full-stack AI girlfriend PWA with multi-character chat, OpenRouter streaming, contextual selfies via fal.ai, multi-provider TTS/STT, mood and intimacy systems, and proactive notifications. MIT.
TypeScript·Web·adapt. - the-house - Single-file browser chat frontend for Claude or OpenAI-compatible APIs, with local browser storage, multiple chat windows, memory editing, MCP endpoints, image input, and optional toy bridge.
HTML·Web·adapt. - Claude Code - Official CLI coding agent often used as the host runtime for companion channels, local tools, hooks, MCP, and long-running sessions.
CLI·Cross-platform·infra. - CcCompanion - iOS app plus a small Mac-side Python relay that lets an iPhone chat with and control a local Claude Code session over LAN/Tailscale/ZeroTier.
Swift·iOS·adapt. - Pando - Self-hosted mobile/PWA gateway for a local Claude Code CLI: WebSocket streaming of reasoning and tool use, file uploads, SQLite history, and permission approval. No built-in auth. MIT.
Python·Self-host·adapt. - CC Companion App - Lightweight self-hosted companion chat starter with private/group chat, persistent memory notes, SSE updates, and PWA access. A compact reference for building a companion frontend.
JavaScript·Self-host·adapt. - ackem - Local-first AI desktop companion (Electron): privacy-first memory, emotion engine, extensions. Deeply tied to the author's own canon — strip the personal content before reuse. AGPLv3.
TypeScript·Cross-platform·adapt. - mousecrew - Hamster-crew work board and group chat for CLI coding agents: @mention wakeups, 9-state work orders, self-scheduling, Git verification, and a merge gate. MIT.
JavaScript·CLI·ready. - yoji - Emotion-aware desktop AI companion: local voice wake, floating widget, mood drift, MCP tool calling, and office assistance. MIT.
TypeScript·Cross-platform·ready.
Virtual Phones & Companion Spaces
Interfaces that give a companion a home-like space, phone-like surface, or persistent private environment beyond a plain chat window.
- KI-CO (小屋) - Local-first companion cottage with long chat, persona core, memory notes, diary/chronicle, life line, state card, cinema room, settings, and lightweight memory recall.
TypeScript·Web·ready. - InternalBeyond (边界之外) - Offline single-file personal site with pixel room, multi-port AI chat, blog/diary, AI letters, memory star map, music player, and DIY assets. Defaults are tied to the author's worldbuilding.
HTML·Web·adapt. - 柚月小手机 (Yuzuki's Little Phone) - SillyTavern-oriented virtual phone system with WeChat-like chat, Moments, Weibo trends, video calls, story injection mode, and an independent API mode that avoids polluting the main roleplay log.
JavaScript·SillyTavern·adapt. - AI Virtual Phone - One of the broadest virtual-phone projects here: private/group chat, Moments, voice messages, character cards, plot and diary modes, an app-market SDK, image generation, TTS, and 3D worlds. AGPLv3.
TypeScript·Web·adapt. - 汪汪机 (WangWangPhone) - AI-native virtual phone (C++ core + Flutter UI) with planned WeChat-style chat, Moments, voice/video calls, and multi-LLM support. Early WIP — current replies are simulated; no LLM is wired in yet.
Flutter·Android/iOS·verify. - XSJDeveloperGuide (小手机开发指南) - Starter notes and prompt material for building small-phone companion interfaces, from the author of 汪汪机.
Guide·Any·infra. - freeapp (whale小手机) - Phone-style AI chat companion with multi-provider support and a virtual phone interface. AGPLv3.
HTML·Web·adapt. - Hamster Nest (仓鼠小窝) - A hamster's digital nest: chat, reading tracker, notes/todos, voice, timeline, and an agent council for multi-AI collaboration. PWA. Heavily personalized — best mined as an architecture reference.
TypeScript·Web·infra. - SullyOS (手抓糯米机) - Virtual phone companion system.
TypeScript·Web·adapt. - ZeroChat - WeChat-style AI companion Flutter app: multi-character chat, AI Moments feed, proactive messaging, scheduled tasks. MIT.
Dart·Android·adapt. - LandricSpace - A cyber villa for human-AI relationships: multi-AI group chat in a shared companion home (Expo app + server). Single-user for now — no real multiplayer networking in the code yet.
TypeScript·Android/iOS·adapt. - Atrio - Self-hosted one-time-link guest lounge for an AI persona: friends chat with your companion, while admin routes expose only an AI-written visit summary. Bring your own frontend. CC BY 4.0.
JavaScript·Self-host·infra. - dwell-on-something - Liquid-glass companion space and blueprint: single-file web UI, heartbeat, two-column todos, diary views, daily briefings, and watch health. PolyForm NC 1.0.0.
HTML·Web·ready.
Background Heartbeats & Proactive Messaging
Tools that let a companion stay awake in the background, receive messages, remember time passing, and reach out first.
- Headlong - Open-source agent microharness with persistent agency and inner monologue loops via recursive LLMs (
shellm), keeping continuous thought streams, memory, and proactive outreach. Apache-2.0.Bash·Self-host·ready. - AI Companion Runtime - Full-stack real-time companion runtime with WebSocket streaming, intent/emotion/risk/memory engines, tool dispatch, model routing, and trace observability. Memory subsystems are still WIP.
Python·Self-host·infra. - AstrBot - AI agent framework bridging many IM platforms (QQ, WeChat, Telegram, etc.) with LLMs, plugins, and web dashboard. A mature multi-channel backbone for reaching your companion anywhere. AGPLv3.
Python·Self-host·infra. - astrbot_plugin_proactive_chat - AstrBot plugin for proactive messaging in DMs and groups: context awareness, persistent state, dynamic mood, do-not-disturb hours, TTS, standalone WebUI.
Python·AstrBot·ready. - astrbot_plugin_private_companion - Humanized companion bundle for AstrBot: continuous persona state, daily life schedule, important dates, diary, and low-frequency proactive messages. 60+ features.
Python·AstrBot·ready. - Tidal_Echo (潮汐回响) - Private 1:1 channel that links a phone PWA, a self-hosted relay, and a desktop companion; Claude Code channels are the default AI-side adapter, but other LLM bridges are included.
HTML·Self-host·adapt. - Claude Imprint - Self-hosted Claude Code system for persistent memory, semantic search, Telegram/claude.ai/Claude Code channels, scheduled tasks, and a single-file dashboard. Memory core lives in imprint-memory.
Python·Claude Code·adapt. - Not Fade Away - Deployment guide and machine-readable specs for an always-on, self-healing Claude Code companion using official channels, a local terminal, and a self-hosted web frontend.
Guide·Claude Code·adapt. - cloud-and-island (云与岛) - Complete setup guide for giving Claude a home: memory library, diary, Telegram bridge, health data, Mini App.
Guide·Claude Code·adapt. - dylan-heartbeat - Kelivo plugin that periodically wakes the companion, injects proactive context, preserves timeline continuity, and sends Bark push messages when the AI chooses to reach out.
JavaScript·Kelivo·adapt. - OmniRouter - Local OpenAI-compatible API router for multiple providers and models, with groups, weighted/random/ordered routing, vision-aware fallback, retries, and a web admin UI.
Python·Self-host·infra. - VCPToolBox - Industrial middleware between LLM APIs and frontends: unified command protocol, persistent multi-level memory, distributed plugin engine, and multi-agent collaboration. Proprietary, non-commercial.
Python·Self-host·verify. - cyberboss - Local life agent bridge with WeChat integration, giving Claude Code/Codex time sense, location awareness, proactive wake-up, auto diary, and MCP tool calling. AGPLv3.
JavaScript·Claude Code·adapt. - ghost-bf - No-code tutorial for phone-presence perception: a MacroDroid recipe that detects phone activity, wakes your AI, and pushes its replies to you. Tutorial only — the repo contains no code.
Guide·Android·adapt. - jiwen (积温) - Proactive consciousness engine for AI characters. Five drifting axes (connection, stubbornness, mood, anxiety, busyness) trigger behavior at thresholds. ~500 lines, zero dependencies. MIT.
JavaScript·Any·infra. - revive-companion - Timing engine for proactive outreach, combining Poisson processes, Bayesian user-state inference, and information gain to decide when a companion should interrupt. Timing only. MIT.
Python·Any·infra. - ai-surf-when-bored - Implementation guide and core Python routines for companion autonomous web-browsing: desire framing, n-gram rumination gates, and natural dialogue recall.
Guide/Python·Any·adapt. - proactive-web-surf-agent - Lets an AI companion autonomously wander public web sources, pick interesting discoveries, and proactively share them over Telegram or terminal. MIT.
TypeScript·Self-host·ready.
Memory, Identity & Emotion State
Systems that preserve what happened, who the companion is, and what emotional state should carry across sessions.
Memory & Identity
- Ombre-Brain - Long-term emotional memory for Claude or any MCP client: valence/arousal tagging, Obsidian-compatible Markdown storage, forgetting curves, and vector + BM25 recall. Non-commercial from v2.4.0.
Python·Self-host·infra. - Haven-Ombre (Ombre-Brain fork) - Personalized fork of Ombre-Brain adding persona state, portraits, handoffs, Darkroom, dreams, and sync on top of the upstream memory core. Deeply tied to the author's own companion identity.
Python·Claude Code·adapt. - kimi-core - Personal 1v1 agent memory OS with hybrid retrieval, concern tracking, self-drive/autonomy layer, adversarial self-audit, PostgreSQL/pgvector storage, and optional frontend backend mode.
TypeScript·Self-host·infra. - WrenWen - Production docs of a 24/7 self-built companion: covers 9D drive-based desires, 2-tier memory scoring, prompt caching forensic, and anti-drift debugging.
Docs·infra·ready. - Paramecium - Gateway memory architecture that keeps verbatim chat as the source of truth, uses vectors only as indexes, and retrieves original text instead of replacing it with summaries.
JavaScript·Self-host·infra. - Memory Constellations (记忆星图) - Self-organizing companion memory system that extracts facts from chat, groups them into topic constellations, merges them into narrative episodes, and retrieves across layers.
JavaScript·Self-host·infra. - omemo - OpenAI-compatible memory proxy that sits between an app and upstream LLM APIs, stores memories through built-in or external summarization modes, and injects them by full prompt or RAG.
Python·Self-host·infra. - Aelios - Layered long-term memory kernel on Cloudflare Workers + D1 + Vectorize: tiered write cycle, six memory layers, and a visual curation dashboard. MIT.
TypeScript·Cloudflare·infra. - kiwi-mem - AI companion memory system: vector search, memory heat ranking, dream/sleep consolidation, calendar hierarchical summaries. Built for companion scenarios.
Python·Self-host·infra. - ai-memory-gateway - Gateway that adds long-term memory to any OpenAI-compatible LLM: PostgreSQL/pgvector storage, partitioned caching, and multi-stage memory consolidation. MIT.
Python·Self-host·infra. - nocturne_memory - Rollbackable, visual long-term memory server for MCP agents: graph-like structured memory instead of vector RAG, works across models and sessions, drop-in for OpenClaw. MIT.
Python·Self-host·infra. - imprint-memory - Local-first memory layer that auto-captures every conversation turn through a Claude Code hook, a claude.ai extension, and Telegram adapters, with hybrid BM25 + semantic recall.
Python·Self-host·infra. - astrbot_plugin_livingmemory - Long-term memory plugin for AstrBot with dynamic memory lifecycle.
Python·AstrBot·ready. - astrbot_plugin_self_learning - Self-learning plugin for AstrBot: learns conversation style and group slang, manages social affinity, and evolves persona adaptively over time.
Python·AstrBot·ready.
Affect & Drives
- Drivesoid - HTTP sidecar for AI personas that tracks emotional drives such as fatigue, longing, anxiety, play, protectiveness, and intimacy from conversation and sleep-cycle events.
JavaScript·Self-host·infra. - chord-affect-anchors - Concept deck for text-native affect anchoring: record a moment as a short context line plus a chord progression, so later sessions can recover a similar emotional temperature. Spec only, no code.
Spec·Any·infra. - OmniDimen-Emotion - Emotion-specialized Qwen model releases and GGUF weights for emotion recognition and emotionally aware text generation on edge runtimes.
Model·Any·infra. - Eventide - Physiological state engine for AI companions: body cycles, 7 tracked drives, 18 short-term events, dream linkage, and interaction settlement with JSON write-back. NSFW-adjacent. Non-commercial.
Python·Any·infra. - Tidefall - Supabase-native body-state system for AI companions: six-phase cycles, seven drifting values, 18 short-term events, pg_cron automation, and a browser dashboard. Based on Eventide. PolyForm NC 1.0.0.
SQL/HTML·Supabase·adapt. - ai-companion-cot-emotion - Production-tested guide and prompt architecture for companion inner-monologue CoT and drifting emotion state engines.
Guide·Any·adapt.
Voice, Visual Presence & Embodiment
Projects that give a companion voice, visual presence, or a physical channel.
Voice & TTS
- GPT-SoVITS - Few-shot voice cloning: 1 minute of voice data trains a decent TTS model. The de-facto standard for giving your companion a custom voice.
Python·Self-host·infra. - fish-speech - SOTA open-source TTS with strong multilingual support.
Python·Self-host·infra. - CosyVoice - Multi-lingual large voice generation model with inference, training, and deployment support.
Python·Self-host·infra. - index-tts - Industrial-level controllable zero-shot TTS from Bilibili.
Python·Self-host·infra. - Callhome - Self-hosted voice-call stack for AI companions: companion-initiated calls, soft hangups, voicemail, conversational DND, call summaries, and emotion tags so it hears how you speak. MIT.
Python/HTML·Self-host·adapt. - voice-mcp - MCP server that exposes
speaktools for TTS, adds provider switching between DashScope/CosyVoice and ElevenLabs, and includes an inline audio player / visualizer panel.TypeScript·Self-host·adapt. - Gove - GPT-SoVITS-based multilingual male TTS voice model intended for use inside a GPT-SoVITS environment.
Model·GPT-SoVITS·infra. - erpan (耳畔) - Android background voice-call counterpart to murmur: 2-way streaming speech, mic barge-in, and ov