AI Tasks
Задачи и проекты через Telegram и веб. Вы пишете обычным текстом или голосом, а агент — ваш Codex или модель через OpenRouter — раскладывает задачи по проектам, ставит теги и сроки, поручает коллегам, напоминает и отвечает на вопросы по истории.
Быстрый старт
- Создайте бота у @BotFather и скопируйте его токен.
- Узнайте свой Telegram ID у @userinfobot.
- Запустите AITasks.exe и введите токен и ID на странице настройки.
- Напишите своему боту
/startи выберите часовой пояс. - Подключите агента: Codex на этом компьютере подхватится сам, иначе — ключ OpenRouter.
- Пригласите коллег, если работаете командой.
Создание Telegram-бота
Бот — это ваш личный вход в AI Tasks в Telegram. Создаётся за минуту у официального бота Telegram — @BotFather.
- Откройте @BotFather и нажмите «Запустить» (Start). Проверьте, что у него синяя галочка — это официальный бот.
- Отправьте команду
/newbot. - Введите имя — его видно в списке чатов, можно по-русски, например «Задачи отдела».
- Введите логин — латиницей, 5–32 символа, обязательно заканчивается на
bot: напримерzadachi_otdela_bot. Если занят — придумайте другой. - BotFather пришлёт сообщение с токеном — строкой вида
1234567890:AAH…. Скопируйте её целиком: она понадобится на странице настройки AI Tasks.
/revoke, выберите бота, получите новый токен и впишите его в AI Tasks («Настройки» → «Telegram-бот»): старый перестанет работать.Бота можно сменить и позже, уже после настройки — см. «Как сменить бота на другого».
По желанию
/setuserpic— аватар бота,/setdescription— текст, который видят до нажатия «Запустить»,/setabouttext— описание в профиле.- Меню команд (подсказки после «/») AI Tasks настраивает сам.
- Бот работает в личных сообщениях: добавлять его в группы и менять настройки приватности не нужно.
Ваш Telegram ID
Telegram ID — число, по которому AI Tasks узнаёт владельца. Откройте @userinfobot, нажмите «Запустить» — он ответит сообщением со строкой Id: 123456789. Это число и нужно.
Владельцем станет только человек с этим ID. Остальные попадают в бота по приглашениям владельца — посторонний, нашедший бота, получит отказ.
Запуск программы
Настольная версия — AITasks.exe
- Скачайте
AITasks.exeиз раздела Releases на GitHub и положите в отдельную папку, напримерC:\AITasks. - Запустите. Если Windows предупредит о неизвестном издателе — «Подробнее → Выполнить в любом случае» (файл не подписан).
- В браузере откроется страница настройки
http://127.0.0.1:8765/setup:- Токен бота и Telegram ID — из шагов выше; токен сразу проверяется у Telegram.
- Доступ из локальной сети — чтобы открывать веб-интерфейс с телефона и других компьютеров (подробнее).
- Распознавание голоса — точная модель (~1,6 ГБ) или быстрая (~0,5 ГБ); скачивается один раз при первом запуске.
- Запускать при входе в Windows и не давать компьютеру засыпать — чтобы бот работал, пока компьютер включён.
- Нажмите «Сохранить и запустить». Программа перезапустится и будет работать в фоне — значок у часов.
Меню значка: Открыть веб-интерфейс (вход без ссылки из бота), Настройки и состояние, папка с данными, журнал, перезапуск, выход. Оранжевая точка на значке — что-то требует внимания; подробности на странице состояния.
Данные, настройки и журнал лежат в папке data рядом с exe. Обновление программы — заменить exe (сначала «Выход» в меню значка).
Сервер из исходников
Скопируйте .env.example в .env, впишите TELEGRAM_BOT_TOKEN и OWNER_TELEGRAM_ID и запустите start.cmd (или .\start.ps1). Подробности — в README проекта.
Первый вход в боте
- Найдите своего бота по логину (или по ссылке со страницы состояния) и нажмите «Запустить» — бот ответит «Вы — владелец» и создаст два пространства: общее «Моя команда» и ваше «Личное».
- Выберите часовой пояс — по нему считаются сроки, напоминания и утренняя сводка (по умолчанию в 09:00, изменить:
/digest 08:30). - Готово — пишите задачи. Вход в веб-интерфейс — команда
/web: бот пришлёт одноразовую ссылку, она действует 15 минут. На компьютере с программой проще: значок у часов → «Открыть веб-интерфейс».
Агент: Codex или OpenRouter
Сам сервер задачи не «думает» — это делает агент. Вариантов два, можно оба.
Codex (основной)
- На компьютере с AITasks.exe. Установите Codex CLI и один раз выполните в терминале
codex login. Встроенный раннер подхватит его сам — статус «Codex отвечает» на странице состояния. - На другом компьютере (ваш ноутбук, компьютеры коллег): веб-интерфейс → вкладка «Codex» → «Выпустить токен» → вставить готовый промпт в Codex, он настроит себя сам и скачает
aitasks_runner.exe. Раннер должен быть запущен — тогда Codex отвечает на сообщения из Telegram и веб-чата.
Общий Codex
- Разрешить свой Codex доверенному человеку: веб-интерфейс → «Codex» → «Доступ к вашему Codex» (или «Люди» → контакт → «Разрешить мой Codex»). Когда собственный Codex этого человека не в сети, ваш раннер обработает сообщения этого человека. Codex работает с задачами от имени этого человека — ваши задачи при этом не видны, — но сообщения проходят через ваш компьютер и ваш аккаунт Codex и тратят лимиты вашей подписки.
- Настройки разрешения: дневной лимит сообщений (по умолчанию без ограничений; исчерпан — придёт сообщение с кнопкой «+20»), ограниченный режим (Codex не смотрит картинки с диска и не ищет в интернете), «не писать текст в журнал», пауза и отзыв.
- Кто отвечает на ваши сообщения:
/codexв боте или «Codex» в веб-интерфейсе. «Авто» — ваш Codex, если он в сети; иначе разрешённый вам; иначе OpenRouter; иначе очередь. Можно выбрать конкретный Codex. Ответ чужого Codex помечен «🤖 Codex Ивана». - Нужен раннер версии 0.4 или новее: обновите
aitasks_runner.exe(раннер внутри AITasks.exe обновляется вместе с программой).
OpenRouter (запасной)
Модель через OpenRouter с вашим ключом — отвечает, когда Codex не в сети. Ключ: веб-интерфейс → «Настройки» → «Запасной агент», или команда /key в боте; модель — /model. Ключ хранится зашифрованным.
/status.Как писать задачи
Обычным языком, одним сообщением или несколькими. Голосовые, «кружки» в Telegram и кнопка 🎙 в веб-чате тоже работают — речь распознаётся на компьютере с программой.
- Завтра до 12 отправить в МЗ ответ на замечания по препарату X
- Поручи Анне запросить у поставщика COA на субстанцию, срок пятница
- Напомни в четверг в 10 позвонить в Росздравнадзор
- Что у нас по регистрации X в Казахстане?
- Сделал модуль 3 по X
- Запомни: у поставщика новый контакт — Иван, отдел качества
- Когда сделаем №15, через 30 дней проверить статус экспертизы
- Выгрузи в PDF все задачи по Карине
Что делает агент
- Проекты (П3) — препараты, регистрации, тендеры, договоры, крупные личные дела. Задача может входить в несколько проектов. Появилась вторая задача про тот же объект — агент сам создаст проект (с кнопкой отмены).
- Теги (#регуляторка, #ждем_ответа, #минздрав, #рк…) — направление, состояние, тип, контрагент, страна.
- Сроки и напоминания — «завтра», «к пятнице», «в 10:00»; задачи со сроком попадают в утреннюю сводку, о просроченных бот напомнит.
- Поручения — «Поручи Анне…»: коллега получит уведомление. Поручать можно и контакту из другого пространства — задача останется у вас, а исполнитель увидит только её. Исполнитель может отказаться («🙅 Отказаться» или «откажись от №12») — автор получит уведомление.
- Пространства — агент работает во всех ваших пространствах сразу: задачу по проекту из общего пространства положит туда, личное дело — в личное, и скажет, куда.
- Связи задач — «когда сделаем №15, через 30 дней проверить…»: задача ждёт (⛓ ждёт №15), а срок ставится сам, когда №15 закроют, — дата закрытия плюс 30 календарных дней. Участники получат «можно начинать». Если №15 отменят, бот спросит автора, нужна ли ещё ждавшая задача.
- Отчёты — «выгрузи все открытые задачи», «отчёт по проекту X», «всё по Карине»: агент отберёт задачи и пришлёт в Telegram PDF и HTML, их удобно переслать. В отчёте — задачи, сроки, исполнители, комментарии, а для проектов целиком ещё и заметки. Личные задачи и комментарии агента — только если попросите.
- Письма и документы — перешлите или вставьте текст письма: агент заведёт проекты по темам, задачи на каждое действие и «ожидания» на обещания другой стороны с напоминанием.
- Правки — «перенеси на пятницу», «убери из проекта»; «нет, срок другой» сразу после ответа исправляет только что созданное.
- Вопросы по истории — «что было по…», «что у меня на сегодня».
- Ревизия —
/revision: агент предложит объединить дубли проектов и тегов.
Файлы и документы
Присылайте боту документы и фото — по одному или альбомом, с подписью или без. В веб-интерфейсе файл прикрепляется в карточке задачи, в окне проекта («Заметки, файлы, история») или кнопкой 📎 в чате. Файл обозначается Ф7.
- (письмо из МЗ в PDF) Разбери, что от нас хотят
- (договор) Это к проекту метформина, запомни условия поставки
- (фото накладной) К задаче 15
- Что в договоре с Фармсинтезом про сроки поставки?
- Пришли мне протокол встречи с Минздравом
- Что делает агент. Читает файл, заводит задачи и «ожидания» как для письма, прикрепляет файл к задачам, проектам и заметкам (можно к нескольким), пишет краткое содержание и даёт понятное имя вместо «scan_001.pdf». Потом ищет по тексту документов и присылает файл по просьбе.
- Форматы. Текст — из PDF, Word, Excel, PowerPoint, писем eml и Outlook msg (с вложениями), txt, csv и html. Фото, сканы и страницы PDF агент смотрит как картинки, так что читает и сканы без текста. Старые doc и xls — только имя и размер.
- Размер. Через Telegram — до 20 МБ (больше Telegram не даёт ботам скачивать), через веб — до 100 МБ.
- Где хранятся. Сами файлы — на компьютере с программой (
data\files). Чтобы они переезжали вместе с ботом на другой компьютер, у каждого файла есть копия вне компьютера: без облака — в Telegram (присланный боту файл там уже есть, загруженный через веб бот кладёт в ваш чат — не удаляйте такие сообщения), с облаком — там. - Облако (владельцу): веб-интерфейс → «Настройки» → «Файлы и облако». Яндекс.Диск — кнопка «Подключить» и код на странице Яндекса; файлы лягут в папку «Приложения/AI Tasks». Или любое S3-хранилище: Yandex Object Storage, Selectel, VK Cloud, Cloudflare R2, Backblaze B2. Подключается один раз — настройка переезжает вместе с данными. Там же видно, сколько файлов в облаке и сколько есть только на этом компьютере.
Команды бота
Эти же команды Telegram подсказывает, когда набираете «/».
| Команда | Что делает |
|---|---|
| Загружаю… | |
Веб-интерфейс
- Чат — тот же разговор с агентом, что и в Telegram (общая лента), кнопка 🎙 для голоса, 📎 — файлы агенту (или перетащите их в окно).
- Задачи — поиск и фильтры: мои, поручил я, просроченные, без проекта, по проекту и тегу; карточка задачи с историей, комментариями, сроками и файлами.
- Проекты — список проектов с алиасами, заметки, файлы и история проекта.
- Люди — пространства (участники и роли, приглашения со сроком и отзывом, переименование, выход, удаление), контакты (блокировка, разрешение Codex), добавление человека по Telegram ID.
- Codex — кто отвечает на ваши сообщения, кому разрешён ваш Codex, токен и готовый промпт для Codex, скачивание раннера.
- Настройки — часовой пояс, время сводки, ключ OpenRouter, смена Telegram-бота и облако для файлов (владельцу), светлая или тёмная тема.
Коллеги, пространства и контакты
- Личное пространство есть у каждого. Туда же приходят поручения от людей из пространств, где вы не участник, — с пометкой «↪ из … от …». В такой задаче можно смотреть детали и файлы, комментировать, отметить выполненной или отказаться.
- Общее пространство — для общих проектов: его участники видят все задачи пространства, кроме личных. Пригласить — ссылкой (
/inviteили «Люди» → «Пригласить по ссылке»; ссылка одноразовая и действует 7 дней). Неиспользованные ссылки видны там же, их можно отозвать. - Контакты — все, с кем есть общее пространство, и те, кого вы добавили. Контакту можно поручить задачу без общего пространства. Заблокированный контакт не сможет поручать вам задачи из своих пространств.
- Добавить человека по Telegram ID: в боте
/add— выбрать в контактах Telegram, или «Люди» → «Добавить человека». Можно сразу добавить в ваши пространства и разрешить ваш Codex. Кто ещё не пользуется ботом, зарегистрируется, открыв бота и нажав «Запустить» (бот не может написать первым), — перешлите ссылку на бота. Новых людей в бот добавляет его владелец. - Управление — вкладка «Люди»: переименование, роли (владелец/участник), удаление участника, выход, удаление пространства (нужно ввести его название). Из личного пространства выйти и удалить его нельзя.
- Перенос задачи в другое пространство — «перенеси №12 в личное» агенту или «📦 В другое пространство…» в карточке задачи. Переносит автор задачи или владелец её пространства. Номер, история, сроки, исполнители, файлы и связи «сначала — потом» сохраняются; проект выбирается из нового пространства.
- Имена и алиасы. Если имя в Telegram непонятное, задайте понятное: своё —
/name Иван Петровили «Настройки»; участнику своего пространства — «Люди» → ✏️. Алиасы («Ваня», «закупщик») там же или агенту: «Ваня — это Иван Петров». По ним агент понимает «поручи Ване», а распознавание голоса — имена. - Чтобы отвечал Codex коллеги, коллега подключает свой Codex во вкладке «Codex» своего веб-интерфейса (ссылку даёт
/web), или вы разрешаете коллеге свой (общий Codex). Для своего раннера на другом ПК сервер должен быть доступен по сети — ниже.
Телефон и локальная сеть
Telegram работает везде, где есть интернет. Веб-интерфейс по умолчанию открывается только на компьютере с программой. Чтобы открывать его с телефона и других компьютеров в той же сети (Wi-Fi, офис):
- Страница настройки → галочка «Доступ из локальной сети» → «Сохранить».
- На странице состояния появится адрес вида
http://192.168.1.50:8765— его же получают ссылки/webиз бота. - Нажмите «Разрешить в брандмауэре» (Windows спросит права администратора) или «Разрешить», если Windows сама спросит про доступ.
- Сеть в Windows должна быть частной: Параметры → Сеть и Интернет → свойства подключения → «Частная сеть».
- Чтобы адрес не менялся, закрепите IP компьютера в настройках роутера (резервирование DHCP).
За пределами локальной сети веб-интерфейс не откроется (Telegram — да). Для доступа отовсюду нужен VPS или туннель — адрес вписывается в поле «Внешний адрес».
Переезд на другой компьютер
Бот работает в одном месте, а данные переезжают вместе с ним. В чате бота с вами закреплено служебное сообщение: где сейчас работает AI Tasks и зашифрованный снимок данных (прочитать его может только программа с токеном вашего бота). Не удаляйте и не открепляйте его.
- Перенести: запустите AITasks.exe на новом компьютере с тем же токеном и ID — страница настройки спросит «Перенести сюда?». Старый компьютер сохранит данные и перейдёт в ожидание; ничего не теряется.
- «Выход» в меню значка — пометка «остановлен»: следующий запуск на любом компьютере заберёт бота сразу.
- Автоподхват: если рабочий компьютер не выходит на связь 10 минут, копия в ожидании заберёт бота сама — с последнего сохранения (данные сохраняются каждые 5 минут).
- Копия в ожидании показывает «Бот работает на другом компьютере» и отправляет браузер туда.
Вопросы и проблемы
Бот пишет, что сообщение в очереди, или не отвечает
Агент не в сети. Проверьте на странице состояния строку «Codex»: установлен ли Codex CLI и выполнен ли codex login. Для раннера на другом компьютере — запущен ли aitasks_runner.exe. Запасной вариант — ключ OpenRouter (/key). Команда /status покажет состояние и очередь.
«Бот работает на другом компьютере»
Бот сейчас на другом компьютере — эта копия ждёт. Чтобы перенести бота сюда вместе с данными, нажмите «Перенести сюда» на странице настройки этого компьютера.
Ссылка входа в веб-интерфейс «устарела»
Ссылка из /web одноразовая и действует 15 минут — отправьте /web ещё раз. На компьютере с программой можно войти без ссылки: значок у часов → «Открыть веб-интерфейс».
Веб-интерфейс не открывается с телефона
Проверьте по порядку: включён «Доступ из локальной сети»; телефон в той же сети Wi-Fi; сеть Windows — частная; есть разрешение в брандмауэре; адрес — из страницы состояния (IP мог смениться — закрепите его в роутере).
Голосовые не распознаются
При первом запуске модель распознавания скачивается (до 1,6 ГБ) — ход скачивания виден на странице состояния. Если распознавание выключено в настройках, включите его и выберите модель.
Windows предупреждает о неизвестном издателе
Файл не подписан цифровой подписью. Нажмите «Подробнее» → «Выполнить в любом случае». Скачивайте exe только из Releases своего репозитория.
Как сменить бота на другого
Создайте нового бота у @BotFather (как). Затем владелец: веб-интерфейс → «Настройки» → «Telegram-бот» → вставить токен → «Сменить бота» (или то же поле на странице настройки на компьютере с программой). AI Tasks перезапустится с новым ботом; задачи, проекты, история и участники сохранятся. Прежний бот разошлёт участникам сообщение со ссылкой на нового — каждому нужно один раз нажать в нём «Запустить». Старого бота потом можно удалить в @BotFather командой /deletebot.
Токен бота попал к посторонним
В @BotFather: /revoke → выберите бота → получите новый токен. Впишите его в «Настройки» → «Telegram-бот» (или на странице настройки) — программа перезапустится с новым токеном, участникам ничего делать не нужно.
Где хранятся данные и как сделать резервную копию
В папке data рядом с exe: база задач, ключи, настройки, журнал. Резервная копия — скопировать папку, когда программа закрыта. Кроме того, свежий снимок данных всегда лежит в закреплённом сообщении в чате с ботом, а перед переездом прежняя база сохраняется в data\backups.
Как удалить всё
«Выход» в меню значка, отключите автозапуск на странице настройки (до выхода) и удалите папку с программой. В чате с ботом открепите служебное сообщение. Самого бота можно удалить в @BotFather командой /deletebot.