[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-78373":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":15,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":20,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":24,"readmeContent":25,"aiSummary":26,"trendingCount":16,"starSnapshotCount":16,"syncStatus":27,"lastSyncTime":28,"discoverSource":29},78373,"girl-agent","AnnenkovLabs\u002Fgirl-agent","AnnenkovLabs","ИИ-девушка с человеческим поведением: сон, настроение, расписание, память, стадии отношений и конфликты. Userbot mode через MTProto — реагирует, печатает, ставит реакции. Anti-AI промпт убирает ChatGPT-повадки. Не чат-бот — персонаж с состоянием.","",null,"TypeScript",313,41,7,1,0,13,46.67,"Other",false,"master",true,[],"2026-06-12 04:01:23","\u003Cdiv align=\"center\">\n\n![girl-agent banner](https:\u002F\u002Fgirl-agent.com\u002Fog-image.png)\n\n# girl-agent\n\n**ИИ-девушка в Telegram, которая ведёт себя как человек.**\nСо сном, расписанием, памятью, характером — и без «конечно, я понимаю».\n\n[Сайт](https:\u002F\u002Fgirl-agent.com) · [Документация](https:\u002F\u002Fdocs.girl-agent.com) · [Канал](https:\u002F\u002Ft.me\u002FGirlAgentAI) · [Сообщество](https:\u002F\u002Ft.me\u002FGirlAgentAI_chat) · [Автор: @voided\\_net](https:\u002F\u002Ft.me\u002Fvoided_net)\n\n[![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-source--available-blue)](.\u002FLICENSE)\n[![Node](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fnode-%E2%89%A522-339933?logo=node.js&logoColor=white)](https:\u002F\u002Fnodejs.org)\n[![Telegram](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTelegram-Bot%20%2B%20Userbot-26A5E4?logo=telegram&logoColor=white)](https:\u002F\u002Ft.me\u002FGirlAgentAI)\n[![Docker](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocker-ready-2496ED?logo=docker&logoColor=white)](#docker-для-серверов)\n\n\u003C\u002Fdiv>\n\n---\n\n> Это бета. Со всеми проблемами и багами — в [Issues](https:\u002F\u002Fgithub.com\u002FTheSashaDev\u002Fgirl-agent\u002Fissues) или [@voided_net](https:\u002F\u002Ft.me\u002Fvoided_net).\n\n## О проекте\n\nОна не отвечает на каждое сообщение. Иногда читает и молчит. Иногда ставит реакцию. Иногда отвечает через час, потому что была занята или просто не хотела.\n\nЭто не баг. Так задумано.\n\n`girl-agent` — движок ИИ-персоны для Telegram. **Не промпт. Не GPTs. Не плагин.** Это полноценный агент со своим состоянием: расписание дня, паттерн присутствия, сон, память на месяцы вперёд, конфликт-система, пять счётчиков отношений, девять стадий сближения. Поведение собирается из этих слоёв, а не из одного `system_prompt`.\n\n---\n\n## Содержание\n\n- [Быстрый старт](#быстрый-старт)\n  - [Linux \u002F macOS \u002F WSL — одной командой](#linux--macos--wsl--одной-командой)\n  - [Windows — через npx](#windows--через-npx-рекомендуем)\n  - [Если уже есть Node ≥ 22](#если-уже-есть-node--22)\n  - [Docker (для серверов)](#docker-для-серверов)\n- [Что под капотом](#что-под-капотом)\n- [Почему не просто GPTs или промпт](#почему-не-просто-gpts-или-промпт)\n- [Документация](https:\u002F\u002Fdocs.girl-agent.com)\n- [Безопасность](#безопасность)\n- [Лицензия](#лицензия)\n- [Changelog](.\u002FCHANGELOG.md)\n\n---\n\n## Быстрый старт\n\n### Linux \u002F macOS \u002F WSL — одной командой\n\nБез Node на машине, без `sudo`:\n\n```sh\ncurl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002FTheSashaDev\u002Fgirl-agent\u002Fmaster\u002Fscripts\u002Finstall.sh | sh\n```\n\nЧто произойдёт:\n- определит OS + arch (linux x64\u002Farm64, macos x64\u002Farm64, wsl);\n- если есть Docker → поставит Docker-обёртку (полная изоляция от системы);\n- иначе → скачает [официальный Node.js 22 LTS](https:\u002F\u002Fnodejs.org) в `~\u002F.local\u002Fshare\u002Fgirl-agent\u002Fruntime\u002F` и поставит туда же `@thesashadev\u002Fgirl-agent` (системный Node не трогается);\n- положит shim `girl-agent` в `~\u002F.local\u002Fbin\u002Fgirl-agent`;\n- ничего не пишется в `\u002Fusr\u002Flocal\u002F`, `sudo` не нужен.\n\nДальше:\n\n```sh\ngirl-agent                  # интерактивный визард первичной настройки\ngirl-agent --profile=arina  # запустить готовый профиль\ngirl-agent server --help    # серверный режим (без TTY, для systemd \u002F cron \u002F CI)\n```\n\nОпции установщика:\n\n```sh\ncurl -fsSL ...\u002Finstall.sh | sh -s -- --docker        # форсировать Docker\ncurl -fsSL ...\u002Finstall.sh | sh -s -- --local         # форсировать локальную Node\ncurl -fsSL ...\u002Finstall.sh | sh -s -- --version=0.4.1 # конкретную версию пакета\n```\n\nУдалить: `rm -rf ~\u002F.local\u002Fshare\u002Fgirl-agent ~\u002F.local\u002Fbin\u002Fgirl-agent`.\n\n---\n\n### Windows — через npx (рекомендуем)\n\nСамый быстрый способ. Без установщика, без WSL, без Docker.\n\n1. Скачай и поставь [Node.js 22 LTS](https:\u002F\u002Fnodejs.org\u002Fen\u002Fdownload\u002F) (`.msi`-инсталлер, галочка **Add to PATH**).\n2. В PowerShell:\n\n   ```powershell\n   npx @thesashadev\u002Fgirl-agent\n   ```\n\n   Первый запуск скачает пакет (~30 МБ) и откроет визард прямо в PowerShell. WebUI поднимется на `http:\u002F\u002Flocalhost:3000`.\n\nХочешь короче — поставь глобально:\n\n```powershell\nnpm install -g @thesashadev\u002Fgirl-agent\ngirl-agent\n```\n\nНужен системный лоток и автозапуск? Есть [нативный десктоп-клиент на Rust](.\u002Fdesktop-rs\u002F) — готовые бинари в [Releases](https:\u002F\u002Fgithub.com\u002FTheSashaDev\u002Fgirl-agent\u002Freleases).\n\n---\n\n### Если уже есть Node ≥ 22\n\n```sh\nnpx @thesashadev\u002Fgirl-agent\nnpx @thesashadev\u002Fgirl-agent --profile=arina\n```\n\nИли глобально:\n\n```sh\nnpm install -g @thesashadev\u002Fgirl-agent\ngirl-agent\n```\n\n---\n\n### Docker (для серверов)\n\nИнтерактивная первичная настройка (визард внутри контейнера):\n\n```sh\ndocker run -it --rm -v girl-agent-data:\u002Fdata ghcr.io\u002Fthesashadev\u002Fgirl-agent:latest\n```\n\nHeadless (для systemd \u002F docker-compose \u002F k8s) — сначала готовим конфиг, потом запускаем без TTY:\n\n```sh\n# 1) шаблон конфига\ndocker run --rm ghcr.io\u002Fthesashadev\u002Fgirl-agent:latest server --print-config > bot.json\n\n# 2) отредактировать bot.json (token, api-key)\n\n# 3) поднять в фоне\ndocker run -d --name girl-agent --restart=unless-stopped \\\n  -v girl-agent-data:\u002Fdata \\\n  -v $PWD\u002Fbot.json:\u002Fconfig\u002Fbot.json:ro \\\n  ghcr.io\u002Fthesashadev\u002Fgirl-agent:latest \\\n  server --config \u002Fconfig\u002Fbot.json --headless\n```\n\nИли совсем без файла, через env-vars:\n\n```sh\ndocker run -d --name girl-agent --restart=unless-stopped \\\n  -v girl-agent-data:\u002Fdata \\\n  -e GIRL_AGENT_MODE=bot \\\n  -e GIRL_AGENT_TOKEN=... \\\n  -e GIRL_AGENT_API_PRESET=claudehub \\\n  -e GIRL_AGENT_API_KEY=... \\\n  -e GIRL_AGENT_NAME='Аня' -e GIRL_AGENT_AGE=22 \\\n  ghcr.io\u002Fthesashadev\u002Fgirl-agent:latest \\\n  server --headless\n```\n\nГотовые шаблоны (можно скопировать прямо из бинаря):\n\n```sh\ngirl-agent server --print-config    # bot.json\ngirl-agent server --print-systemd   # \u002Fetc\u002Fsystemd\u002Fsystem\u002Fgirl-agent.service\ngirl-agent server --print-docker    # Dockerfile \u002F compose \u002F k8s snippets\n```\n\nИ в корне: [`docker-compose.example.yml`](.\u002Fdocker-compose.example.yml).\n\n**Из исходников:**\n\n```sh\ngit clone https:\u002F\u002Fgithub.com\u002FTheSashaDev\u002Fgirl-agent.git\ncd girl-agent\nnpm install\nnpm run dev\n```\n\n---\n\n## Что под капотом\n\nПоведение собирается из нескольких слоёв, а не из одного промпта.\n\n| | Слой              | Что делает |\n|-|-------------------|------------|\n| 📱 | **Presence**      | Она не всегда онлайн. Паттерн присутствия зависит от персонажа: кто-то в телефоне круглые сутки, кто-то заходит раз в час, кто-то только вечером. |\n| 😴 | **Sleep**         | Ночью спит — можно разбудить через `:wake`, но без команды шанс ответа низкий. |\n| 📅 | **Daily-life**    | У каждого дня есть расписание: пары, работа, дорога, свободное время. Если на занятиях — телефон недоступен. |\n| ❤️ | **Relationship**  | Пять счётчиков: интерес, доверие, симпатия, раздражение, толер.кринжа. Меняются от каждого диалога. |\n| 📈 | **Stages**        | 9 стадий сближения: «дала тг, но холодная» → «давно вместе». Стадия влияет на тепло, флирт, длину ответов. |\n| ⚠️ | **Conflict**      | Если давить, спамить или нарушать границы — включается конфликт. Может замолчать на часы или дни. |\n| 🧠 | **Memory**        | Важные события пишутся в `long-term.md` и всплывают в будущих диалогах. |\n| 🚫 | **Anti-AI**       | Промпт запрещает markdown, «конечно», «я понимаю», эмодзи-ряды, вопросы в конце и всё что палит ChatGPT. |\n| 👤 | **Userbot mode**  | Настоящий Telegram-аккаунт через MTProto. Умеет читать, ставить реакции, печатать, удалять и редактировать. Выглядит как живой человек. |\n| 🗓 | **Agenda**        | Бот сам планирует проактивные сообщения: пожелать удачи на собес, спросить как прошла встреча, поздравить с днём рождения. |\n\n[Подробный разбор каждого слоя →](https:\u002F\u002Fdocs.girl-agent.com\u002Fdocs\u002Fdevelopers\u002Farchitecture)\n\n---\n\n## Почему не просто GPTs или промпт\n\nВариантов сделать «девушку в Telegram» несколько — от костыльных до полноценных. Разберём что есть и где дыры.\n\n\u003Cdetails>\n\u003Csummary>\u003Cstrong>ChatGPT GPTs\u003C\u002Fstrong> — кастомный бот внутри ChatGPT с system prompt\u003C\u002Fsummary>\n\n- Нет памяти между сессиями — каждая начинается с нуля\n- Нет Telegram — только веб-интерфейс\n- Нет реакций, печати, редактирования\n- Бот всегда «онлайн» — нет расписания или сна\n- Память ограничена контекстным окном\n\n**Итог:** чат-бот с кастомным промптом, без состояния и реалистичного поведения.\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\u003Cstrong>OpenClaw + prompt\u003C\u002Fstrong> — фреймворк для AI-ассистентов с личностью в markdown\u003C\u002Fsummary>\n\nЛичность через `SOUL.md`, `IDENTITY.md`, `USER.md`. Telegram-bridge через GramJS (MTProto).\n\n- Нет реализм-модулей: presence, sleep, conflict, daily-life, relationship stages\n- Нет agenda — бот не планирует действия\n- Память = история сообщений, нет long-term storage\n- Нет relationship score и conflict system\n\n**Итог:** хороший bridge для Telegram, но не персонаж-движок. Поведение = промпт + история.\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\u003Cstrong>HeatherBot\u003C\u002Fstrong> — локальный userbot, persona в YAML, 4-слойная память\u003C\u002Fsummary>\n\n~10K строк Python, MTProto via Telethon, 17 NSFW-overlays.\n\n- Слишком специфично под NSFW\n- Сложно настроить — нужны llama-server, Ollama, ComfyUI\n- Требует мощного GPU — 12B модель локально\n- Нет presence\u002Fsleep\u002Fconflict как отдельных модулей\n\n**Итог:** мощное, но узкое решение под NSFW с тяжёлой инфраструктурой.\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\u003Cstrong>Character.AI\u003C\u002Fstrong> — закрытый сервис для AI-переписки\u003C\u002Fsummary>\n\n- Нет Telegram — только веб-интерфейс\n- Нет контроля — всё на их серверах\n- Память сбрасывается между сессиями\n- Persona обрезается при росте истории\n\n**Итог:** закрытый сервис с ограниченной памятью и без Telegram.\n\n\u003C\u002Fdetails>\n\n\u003Cdetails open>\n\u003Csummary>\u003Cstrong>girl-agent\u003C\u002Fstrong> — движок с несколькими слоями состояния\u003C\u002Fsummary>\n\n- **Presence** — паттерны присутствия (частота, офлайн, вероятность ответа)\n- **Sleep** — время сна, night wake chance\n- **Daily-life** — расписание, занятость, приоритеты\n- **Relationship stages** — `met-irl-got-tg` → `convinced` → `dating-stable` → `long-term`\n- **Relationship score** — интерес, доверие, симпатия, раздражение, толер.кринжа\n- **Conflict** — если давить\u002Fспамить, включается конфликт, может замолчать\n- **Memory** — важные события в `long-term.md`, всплывают в диалогах\n- **Anti-AI** — промпт запрещает markdown, «конечно», «я понимаю», эмодзи-ряды\n- **Userbot mode** — умеет читать, реагировать, печатать, удалять, редактировать\n- **Agenda** — бот планирует действия, живёт своей жизнью\n\n**Итог:** поведение собирается из состояния, а не из текстовых инструкций.\n\n\u003C\u002Fdetails>\n\n---\n\n## Безопасность\n\n> ⚠️ **Не публикуй:** `data\u002F`, `config.json`, `sessionString`, API-ключи.\n>\n> 🔒 **Для userbot-режима** используй отдельный тестовый аккаунт — Telegram может забанить основной за подозрительную активность.\n\nПодробнее: [Security & Privacy →](https:\u002F\u002Fdocs.girl-agent.com\u002Fdocs\u002Fusers\u002Fsecurity-privacy)\n\n---\n\n## Лицензия\n\n📄 **Source-available** — исходный код открыт для личного тестирования, оценки и вкладов.\n\n| Разрешено | Запрещено без письменного разрешения |\n|-----------|--------------------------------------|\n| ✅ Клонировать и запускать локально | ❌ Коммерческое использование |\n| ✅ Создавать issues и PR-ы | ❌ Платный хостинг |\n| ✅ Изучать код и экспериментировать | ❌ Перепродажа |\n| | ❌ Публичные конкурирующие клоны |\n| | ❌ Использование кода в коммерческих продуктах |\n\n📜 Полный текст: [LICENSE](.\u002FLICENSE).\n","girl-agent 是一个模拟人类行为的AI女友项目，专为Telegram设计。其核心功能包括模仿人类的作息规律、情绪变化、日程安排和个人记忆等，并通过MTProto协议以用户机器人的形式与用户互动，如回应消息、发送表情等。该项目采用TypeScript开发，特别之处在于它不是简单的聊天机器人，而是一个具有状态和个性的角色，能够根据设定的关系阶段和冲突系统展现出复杂的行为模式。适用于希望在社交媒体上体验更加真实、自然的人机交互场景。",2,"2026-06-11 03:56:43","CREATED_QUERY"]