@thesashadev/girl-agent 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +170 -170
- package/package.json +64 -64
package/README.md
CHANGED
|
@@ -1,170 +1,170 @@
|
|
|
1
|
-

|
|
13
|
-
- [Что под капотом](#что-под-капотом)
|
|
14
|
-
- [Почему не просто GPTs или промпт](#почему-не-просто-gpts-или-промпт)
|
|
15
|
-
- [Безопасность](#безопасность)
|
|
16
|
-
- [Лицензия](#лицензия)
|
|
17
|
-
|
|
18
|
-
---
|
|
19
|
-
|
|
20
|
-
## О проекте
|
|
21
|
-
|
|
22
|
-
Она не отвечает на каждое сообщение. Иногда читает и молчит. Иногда ставит реакцию. Иногда отвечает через час, потому что была занята или просто не хотела.
|
|
23
|
-
|
|
24
|
-
Это не баг. Так задумано.
|
|
25
|
-
|
|
26
|
-
`girl-agent` — ИИ-девушка, которая ведёт себя в переписке как человек. Со сном, настроением, расписанием, памятью и характером. Без "конечно, я понимаю" и ChatGPT-повадок.
|
|
27
|
-
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
## Быстрый старт
|
|
31
|
-
|
|
32
|
-
```powershell
|
|
33
|
-
git clone https://github.com/TheSashaDev/girl-agent.git
|
|
34
|
-
cd girl-agent
|
|
35
|
-
npm install
|
|
36
|
-
npm run dev
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
Wizard задаст пару вопросов — имя, возраст, Telegram-подключение, LLM-ключ. Всё.
|
|
40
|
-
|
|
41
|
-
Если профиль уже есть:
|
|
42
|
-
|
|
43
|
-
```powershell
|
|
44
|
-
npm run dev -- --profile=arina
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
---
|
|
48
|
-
|
|
49
|
-
## Что под капотом
|
|
50
|
-
|
|
51
|
-
Поведение собирается из нескольких слоёв, а не из одного промпта.
|
|
52
|
-
|
|
53
|
-
- 📱 **Она не всегда онлайн** — паттерн присутствия зависит от персонажа: кто-то в телефоне круглые сутки, кто-то заходит раз в час, кто-то только вечером.
|
|
54
|
-
- 😴 **Ночью спит** — можно разбудить через `:wake`, но без команды шанс ответа низкий.
|
|
55
|
-
- 📅 **Расписание дня** — у каждого дня есть расписание: пары, работа, дорога, свободное время. Если она на занятиях, телефон может быть недоступен.
|
|
56
|
-
- ❤️ **Отношения** — пять счётчиков: интерес, доверие, привлекательность, раздражение, неловкость. Меняются от каждого диалога. Высокое раздражение — чаще игнор и холод.
|
|
57
|
-
- 📈 **Стадии сближения** — отношения проходят стадии: от "дала тг, но холодная" до "давно вместе". Стадия влияет на тепло, флирт, длину ответов.
|
|
58
|
-
- ⚠️ **Конфликты** — если давить, спамить или нарушать границы — включается конфликт. Она может замолчать на часы или дни.
|
|
59
|
-
- 🧠 **Память** — важные события пишутся в `long-term.md` и всплывают в будущих диалогах.
|
|
60
|
-
- 🚫 **Anti-AI** — промпт запрещает markdown, "конечно", "я понимаю", эмодзи-ряды, вопросы в конце сообщений и всё, что палит ChatGPT.
|
|
61
|
-
- 👤 **Userbot mode** — настоящий Telegram-аккаунт через MTProto. Умеет читать сообщения, ставить реакции, печатать, удалять и редактировать. Выглядит как живой человек, а не как бот.
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
## Почему не просто GPTs или промпт
|
|
66
|
-
|
|
67
|
-
Вариантов сделать "девушку в Telegram" несколько — от костыльных до полноценных. Разберём, что есть и где дыры.
|
|
68
|
-
|
|
69
|
-
### ChatGPT GPTs
|
|
70
|
-
|
|
71
|
-
**Как это работает:** Кастомный бот внутри ChatGPT с system prompt. Логика поведения = промпт.
|
|
72
|
-
|
|
73
|
-
**Что упущено:**
|
|
74
|
-
- Нет памяти между сессиями — каждая начинается с нуля
|
|
75
|
-
- Нет Telegram — только веб-интерфейс
|
|
76
|
-
- Нет реакций, печати, редактирования
|
|
77
|
-
- Бот всегда "онлайн" — нет расписания или сна
|
|
78
|
-
- Память ограничена контекстным окном
|
|
79
|
-
|
|
80
|
-
**Итог:** Чат-бот с кастомным промптом, без состояния и реалистичного поведения.
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
### OpenClaw + prompt (markdown-файлы)
|
|
85
|
-
|
|
86
|
-
**Как это работает:** Фреймворк для AI-ассистентов. Личность через markdown-файлы (SOUL.md, IDENTITY.md, USER.md). Telegram bridge через GramJS (MTProto).
|
|
87
|
-
|
|
88
|
-
**Что упущено:**
|
|
89
|
-
- Нет реализм-модулей: presence, sleep, conflict, daily-life, relationship stages
|
|
90
|
-
- Нет agenda — бот не планирует действия
|
|
91
|
-
- Память = история сообщений, нет long-term storage
|
|
92
|
-
- Нет relationship score и conflict system
|
|
93
|
-
|
|
94
|
-
**Итог:** Хороший bridge для Telegram, но не персонаж-движок. Поведение = промпт + история.
|
|
95
|
-
|
|
96
|
-
---
|
|
97
|
-
|
|
98
|
-
### HeatherBot
|
|
99
|
-
|
|
100
|
-
**Как это работает:** Локальный Telegram userbot (MTProto via Telethon), persona в YAML, 4-слойная память, 17 kink-specific overlays. ~10K строк Python.
|
|
101
|
-
|
|
102
|
-
**Что упущено:**
|
|
103
|
-
- Слишком специфично под NSFW — 17 kink overlays
|
|
104
|
-
- Сложно настроить — нужно llama-server, Ollama, ComfyUI
|
|
105
|
-
- Требует мощного GPU — 12B модель локально
|
|
106
|
-
- Нет presence/sleep/conflict как отдельных модулей
|
|
107
|
-
|
|
108
|
-
**Итог:** Мощное, но узкое решение под NSFW с тяжёлой инфраструктурой.
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
### Character.AI
|
|
113
|
-
|
|
114
|
-
**Как это работает:** Закрытый сервис для AI-переписки. Персоны через UI, поведение = prompt engineering + session-level memory.
|
|
115
|
-
|
|
116
|
-
**Что упущено:**
|
|
117
|
-
- Нет Telegram — только веб-интерфейс
|
|
118
|
-
- Нет контроля — всё на их серверах
|
|
119
|
-
- Память сбрасывается между сессиями
|
|
120
|
-
- Memory ограничена — persona обрезается при росте истории
|
|
121
|
-
|
|
122
|
-
**Итог:** Закрытый сервис с ограниченной памятью и без Telegram.
|
|
123
|
-
|
|
124
|
-
---
|
|
125
|
-
|
|
126
|
-
### girl-agent
|
|
127
|
-
|
|
128
|
-
**Как это работает:** Движок с несколькими слоями состояния: presence, sleep, daily-life, relationship stages, conflict, memory, anti-AI. Userbot mode через MTProto.
|
|
129
|
-
|
|
130
|
-
**Технические детали:**
|
|
131
|
-
- Presence — паттерны присутствия (частота, офлайн, вероятность ответа)
|
|
132
|
-
- Sleep — время сна, night wake chance
|
|
133
|
-
- Daily-life — расписание, занятость, приоритеты
|
|
134
|
-
- Relationship stages — stranger → convinced → close → intimate → bonded
|
|
135
|
-
- Relationship score — interest, trust, attraction, annoyance, cringe
|
|
136
|
-
- Conflict — если давить/спамить, включается конфликт, может замолчать
|
|
137
|
-
- Memory — важные события в long-term.md, всплывают в диалогах
|
|
138
|
-
- Anti-AI — промпт запрещает markdown, "конечно", "я понимаю", эмодзи-ряды
|
|
139
|
-
- Userbot mode — умеет читать, реагировать, печатать, удалять, редактировать
|
|
140
|
-
- Agenda — бот планирует действия, живёт своей жизнью
|
|
141
|
-
|
|
142
|
-
**Итог:** Движок с несколькими слоями решения. Поведение собирается из состояния, а не из текстовых инструкций.
|
|
143
|
-
|
|
144
|
-
---
|
|
145
|
-
|
|
146
|
-
## Безопасность
|
|
147
|
-
|
|
148
|
-
⚠️ **Не публикуй:** `data/`, `config.json`, `sessionString` и API-ключи.
|
|
149
|
-
|
|
150
|
-
🔒 **Для userbot mode** используй отдельный тестовый аккаунт — Telegram может забанить основной аккаунт за подозрительную активность.
|
|
151
|
-
|
|
152
|
-
---
|
|
153
|
-
|
|
154
|
-
## Лицензия
|
|
155
|
-
|
|
156
|
-
📄 **Source-available** — исходный код открыт для личного тестирования, оценки и вкладов.
|
|
157
|
-
|
|
158
|
-
**Разрешено:**
|
|
159
|
-
- Клонировать и запускать локально
|
|
160
|
-
- Создавать issues и отправлять pull requests
|
|
161
|
-
- Изучать код и экспериментировать
|
|
162
|
-
|
|
163
|
-
**Запрещено без письменного разрешения:**
|
|
164
|
-
- Коммерческое использование
|
|
165
|
-
- Платный хостинг
|
|
166
|
-
- Перепродажа
|
|
167
|
-
- Публичные конкурирующие клоны
|
|
168
|
-
- Использование кода внутри коммерческих продуктов
|
|
169
|
-
|
|
170
|
-
📜 Полный текст лицензии: [LICENSE](./LICENSE)
|
|
1
|
+

|
|
2
|
+
|
|
3
|
+
[website]: https://girl-agent.com
|
|
4
|
+
[docs]: https://docs.girl-agent.com
|
|
5
|
+
|
|
6
|
+
**[website]** · **[docs]**
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Содержание
|
|
11
|
+
|
|
12
|
+
- [Быстрый старт](#быстрый-старт)
|
|
13
|
+
- [Что под капотом](#что-под-капотом)
|
|
14
|
+
- [Почему не просто GPTs или промпт](#почему-не-просто-gpts-или-промпт)
|
|
15
|
+
- [Безопасность](#безопасность)
|
|
16
|
+
- [Лицензия](#лицензия)
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## О проекте
|
|
21
|
+
|
|
22
|
+
Она не отвечает на каждое сообщение. Иногда читает и молчит. Иногда ставит реакцию. Иногда отвечает через час, потому что была занята или просто не хотела.
|
|
23
|
+
|
|
24
|
+
Это не баг. Так задумано.
|
|
25
|
+
|
|
26
|
+
`girl-agent` — ИИ-девушка, которая ведёт себя в переписке как человек. Со сном, настроением, расписанием, памятью и характером. Без "конечно, я понимаю" и ChatGPT-повадок.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Быстрый старт
|
|
31
|
+
|
|
32
|
+
```powershell
|
|
33
|
+
git clone https://github.com/TheSashaDev/girl-agent.git
|
|
34
|
+
cd girl-agent
|
|
35
|
+
npm install
|
|
36
|
+
npm run dev
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Wizard задаст пару вопросов — имя, возраст, Telegram-подключение, LLM-ключ. Всё.
|
|
40
|
+
|
|
41
|
+
Если профиль уже есть:
|
|
42
|
+
|
|
43
|
+
```powershell
|
|
44
|
+
npm run dev -- --profile=arina
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Что под капотом
|
|
50
|
+
|
|
51
|
+
Поведение собирается из нескольких слоёв, а не из одного промпта.
|
|
52
|
+
|
|
53
|
+
- 📱 **Она не всегда онлайн** — паттерн присутствия зависит от персонажа: кто-то в телефоне круглые сутки, кто-то заходит раз в час, кто-то только вечером.
|
|
54
|
+
- 😴 **Ночью спит** — можно разбудить через `:wake`, но без команды шанс ответа низкий.
|
|
55
|
+
- 📅 **Расписание дня** — у каждого дня есть расписание: пары, работа, дорога, свободное время. Если она на занятиях, телефон может быть недоступен.
|
|
56
|
+
- ❤️ **Отношения** — пять счётчиков: интерес, доверие, привлекательность, раздражение, неловкость. Меняются от каждого диалога. Высокое раздражение — чаще игнор и холод.
|
|
57
|
+
- 📈 **Стадии сближения** — отношения проходят стадии: от "дала тг, но холодная" до "давно вместе". Стадия влияет на тепло, флирт, длину ответов.
|
|
58
|
+
- ⚠️ **Конфликты** — если давить, спамить или нарушать границы — включается конфликт. Она может замолчать на часы или дни.
|
|
59
|
+
- 🧠 **Память** — важные события пишутся в `long-term.md` и всплывают в будущих диалогах.
|
|
60
|
+
- 🚫 **Anti-AI** — промпт запрещает markdown, "конечно", "я понимаю", эмодзи-ряды, вопросы в конце сообщений и всё, что палит ChatGPT.
|
|
61
|
+
- 👤 **Userbot mode** — настоящий Telegram-аккаунт через MTProto. Умеет читать сообщения, ставить реакции, печатать, удалять и редактировать. Выглядит как живой человек, а не как бот.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Почему не просто GPTs или промпт
|
|
66
|
+
|
|
67
|
+
Вариантов сделать "девушку в Telegram" несколько — от костыльных до полноценных. Разберём, что есть и где дыры.
|
|
68
|
+
|
|
69
|
+
### ChatGPT GPTs
|
|
70
|
+
|
|
71
|
+
**Как это работает:** Кастомный бот внутри ChatGPT с system prompt. Логика поведения = промпт.
|
|
72
|
+
|
|
73
|
+
**Что упущено:**
|
|
74
|
+
- Нет памяти между сессиями — каждая начинается с нуля
|
|
75
|
+
- Нет Telegram — только веб-интерфейс
|
|
76
|
+
- Нет реакций, печати, редактирования
|
|
77
|
+
- Бот всегда "онлайн" — нет расписания или сна
|
|
78
|
+
- Память ограничена контекстным окном
|
|
79
|
+
|
|
80
|
+
**Итог:** Чат-бот с кастомным промптом, без состояния и реалистичного поведения.
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
### OpenClaw + prompt (markdown-файлы)
|
|
85
|
+
|
|
86
|
+
**Как это работает:** Фреймворк для AI-ассистентов. Личность через markdown-файлы (SOUL.md, IDENTITY.md, USER.md). Telegram bridge через GramJS (MTProto).
|
|
87
|
+
|
|
88
|
+
**Что упущено:**
|
|
89
|
+
- Нет реализм-модулей: presence, sleep, conflict, daily-life, relationship stages
|
|
90
|
+
- Нет agenda — бот не планирует действия
|
|
91
|
+
- Память = история сообщений, нет long-term storage
|
|
92
|
+
- Нет relationship score и conflict system
|
|
93
|
+
|
|
94
|
+
**Итог:** Хороший bridge для Telegram, но не персонаж-движок. Поведение = промпт + история.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
### HeatherBot
|
|
99
|
+
|
|
100
|
+
**Как это работает:** Локальный Telegram userbot (MTProto via Telethon), persona в YAML, 4-слойная память, 17 kink-specific overlays. ~10K строк Python.
|
|
101
|
+
|
|
102
|
+
**Что упущено:**
|
|
103
|
+
- Слишком специфично под NSFW — 17 kink overlays
|
|
104
|
+
- Сложно настроить — нужно llama-server, Ollama, ComfyUI
|
|
105
|
+
- Требует мощного GPU — 12B модель локально
|
|
106
|
+
- Нет presence/sleep/conflict как отдельных модулей
|
|
107
|
+
|
|
108
|
+
**Итог:** Мощное, но узкое решение под NSFW с тяжёлой инфраструктурой.
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
### Character.AI
|
|
113
|
+
|
|
114
|
+
**Как это работает:** Закрытый сервис для AI-переписки. Персоны через UI, поведение = prompt engineering + session-level memory.
|
|
115
|
+
|
|
116
|
+
**Что упущено:**
|
|
117
|
+
- Нет Telegram — только веб-интерфейс
|
|
118
|
+
- Нет контроля — всё на их серверах
|
|
119
|
+
- Память сбрасывается между сессиями
|
|
120
|
+
- Memory ограничена — persona обрезается при росте истории
|
|
121
|
+
|
|
122
|
+
**Итог:** Закрытый сервис с ограниченной памятью и без Telegram.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
### girl-agent
|
|
127
|
+
|
|
128
|
+
**Как это работает:** Движок с несколькими слоями состояния: presence, sleep, daily-life, relationship stages, conflict, memory, anti-AI. Userbot mode через MTProto.
|
|
129
|
+
|
|
130
|
+
**Технические детали:**
|
|
131
|
+
- Presence — паттерны присутствия (частота, офлайн, вероятность ответа)
|
|
132
|
+
- Sleep — время сна, night wake chance
|
|
133
|
+
- Daily-life — расписание, занятость, приоритеты
|
|
134
|
+
- Relationship stages — stranger → convinced → close → intimate → bonded
|
|
135
|
+
- Relationship score — interest, trust, attraction, annoyance, cringe
|
|
136
|
+
- Conflict — если давить/спамить, включается конфликт, может замолчать
|
|
137
|
+
- Memory — важные события в long-term.md, всплывают в диалогах
|
|
138
|
+
- Anti-AI — промпт запрещает markdown, "конечно", "я понимаю", эмодзи-ряды
|
|
139
|
+
- Userbot mode — умеет читать, реагировать, печатать, удалять, редактировать
|
|
140
|
+
- Agenda — бот планирует действия, живёт своей жизнью
|
|
141
|
+
|
|
142
|
+
**Итог:** Движок с несколькими слоями решения. Поведение собирается из состояния, а не из текстовых инструкций.
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Безопасность
|
|
147
|
+
|
|
148
|
+
⚠️ **Не публикуй:** `data/`, `config.json`, `sessionString` и API-ключи.
|
|
149
|
+
|
|
150
|
+
🔒 **Для userbot mode** используй отдельный тестовый аккаунт — Telegram может забанить основной аккаунт за подозрительную активность.
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## Лицензия
|
|
155
|
+
|
|
156
|
+
📄 **Source-available** — исходный код открыт для личного тестирования, оценки и вкладов.
|
|
157
|
+
|
|
158
|
+
**Разрешено:**
|
|
159
|
+
- Клонировать и запускать локально
|
|
160
|
+
- Создавать issues и отправлять pull requests
|
|
161
|
+
- Изучать код и экспериментировать
|
|
162
|
+
|
|
163
|
+
**Запрещено без письменного разрешения:**
|
|
164
|
+
- Коммерческое использование
|
|
165
|
+
- Платный хостинг
|
|
166
|
+
- Перепродажа
|
|
167
|
+
- Публичные конкурирующие клоны
|
|
168
|
+
- Использование кода внутри коммерческих продуктов
|
|
169
|
+
|
|
170
|
+
📜 Полный текст лицензии: [LICENSE](./LICENSE)
|
package/package.json
CHANGED
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@thesashadev/girl-agent",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "Telegram AI persona engine with memory, schedule, relationship state and MTProto userbot mode.",
|
|
5
|
-
"type": "module",
|
|
6
|
-
"bin": {
|
|
7
|
-
"girl-agent": "dist/cli.js"
|
|
8
|
-
},
|
|
9
|
-
"main": "dist/cli.js",
|
|
10
|
-
"files": [
|
|
11
|
-
"dist",
|
|
12
|
-
"templates",
|
|
13
|
-
"README.md",
|
|
14
|
-
"LICENSE"
|
|
15
|
-
],
|
|
16
|
-
"scripts": {
|
|
17
|
-
"build": "tsup",
|
|
18
|
-
"dev": "tsx src/cli.tsx",
|
|
19
|
-
"start": "node dist/cli.js",
|
|
20
|
-
"typecheck": "tsc --noEmit",
|
|
21
|
-
"prepublishOnly": "npm run
|
|
22
|
-
},
|
|
23
|
-
"author": "TheSashaDev (void)",
|
|
24
|
-
"license": "SEE LICENSE IN LICENSE",
|
|
25
|
-
"keywords": [
|
|
26
|
-
"telegram",
|
|
27
|
-
"ai",
|
|
28
|
-
"agent",
|
|
29
|
-
"tui",
|
|
30
|
-
"ink",
|
|
31
|
-
"mcp",
|
|
32
|
-
"userbot",
|
|
33
|
-
"llm",
|
|
34
|
-
"persona",
|
|
35
|
-
"anthropic",
|
|
36
|
-
"openai"
|
|
37
|
-
],
|
|
38
|
-
"engines": {
|
|
39
|
-
"node": ">=20"
|
|
40
|
-
},
|
|
41
|
-
"dependencies": {
|
|
42
|
-
"@anthropic-ai/sdk": "^0.32.1",
|
|
43
|
-
"@modelcontextprotocol/sdk": "^1.0.4",
|
|
44
|
-
"grammy": "^1.30.0",
|
|
45
|
-
"ink": "^5.0.1",
|
|
46
|
-
"ink-big-text": "^2.0.0",
|
|
47
|
-
"ink-gradient": "^3.0.0",
|
|
48
|
-
"ink-select-input": "^6.0.0",
|
|
49
|
-
"ink-spinner": "^5.0.0",
|
|
50
|
-
"ink-text-input": "^6.0.0",
|
|
51
|
-
"input": "^1.0.1",
|
|
52
|
-
"mri": "^1.2.0",
|
|
53
|
-
"openai": "^4.77.0",
|
|
54
|
-
"react": "^18.3.1",
|
|
55
|
-
"telegram": "^2.26.16"
|
|
56
|
-
},
|
|
57
|
-
"devDependencies": {
|
|
58
|
-
"@types/node": "^22.10.2",
|
|
59
|
-
"@types/react": "^18.3.18",
|
|
60
|
-
"tsup": "^8.3.5",
|
|
61
|
-
"tsx": "^4.19.2",
|
|
62
|
-
"typescript": "^5.7.2"
|
|
63
|
-
}
|
|
64
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@thesashadev/girl-agent",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "Telegram AI persona engine with memory, schedule, relationship state and MTProto userbot mode.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"bin": {
|
|
7
|
+
"girl-agent": "dist/cli.js"
|
|
8
|
+
},
|
|
9
|
+
"main": "dist/cli.js",
|
|
10
|
+
"files": [
|
|
11
|
+
"dist",
|
|
12
|
+
"templates",
|
|
13
|
+
"README.md",
|
|
14
|
+
"LICENSE"
|
|
15
|
+
],
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "tsup",
|
|
18
|
+
"dev": "tsx src/cli.tsx",
|
|
19
|
+
"start": "node dist/cli.js",
|
|
20
|
+
"typecheck": "tsc --noEmit",
|
|
21
|
+
"prepublishOnly": "npm run build"
|
|
22
|
+
},
|
|
23
|
+
"author": "TheSashaDev (void)",
|
|
24
|
+
"license": "SEE LICENSE IN LICENSE",
|
|
25
|
+
"keywords": [
|
|
26
|
+
"telegram",
|
|
27
|
+
"ai",
|
|
28
|
+
"agent",
|
|
29
|
+
"tui",
|
|
30
|
+
"ink",
|
|
31
|
+
"mcp",
|
|
32
|
+
"userbot",
|
|
33
|
+
"llm",
|
|
34
|
+
"persona",
|
|
35
|
+
"anthropic",
|
|
36
|
+
"openai"
|
|
37
|
+
],
|
|
38
|
+
"engines": {
|
|
39
|
+
"node": ">=20"
|
|
40
|
+
},
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@anthropic-ai/sdk": "^0.32.1",
|
|
43
|
+
"@modelcontextprotocol/sdk": "^1.0.4",
|
|
44
|
+
"grammy": "^1.30.0",
|
|
45
|
+
"ink": "^5.0.1",
|
|
46
|
+
"ink-big-text": "^2.0.0",
|
|
47
|
+
"ink-gradient": "^3.0.0",
|
|
48
|
+
"ink-select-input": "^6.0.0",
|
|
49
|
+
"ink-spinner": "^5.0.0",
|
|
50
|
+
"ink-text-input": "^6.0.0",
|
|
51
|
+
"input": "^1.0.1",
|
|
52
|
+
"mri": "^1.2.0",
|
|
53
|
+
"openai": "^4.77.0",
|
|
54
|
+
"react": "^18.3.1",
|
|
55
|
+
"telegram": "^2.26.16"
|
|
56
|
+
},
|
|
57
|
+
"devDependencies": {
|
|
58
|
+
"@types/node": "^22.10.2",
|
|
59
|
+
"@types/react": "^18.3.18",
|
|
60
|
+
"tsup": "^8.3.5",
|
|
61
|
+
"tsx": "^4.19.2",
|
|
62
|
+
"typescript": "^5.7.2"
|
|
63
|
+
}
|
|
64
|
+
}
|