Упс! Не вдала спроба:(
Будь ласка, спробуйте ще раз.
preview
Артем Бородатюк
Артем Бородатюк Засновник FRACTAL
Підписатися на нас
0
7 хвилин читання

Я створив собі бота, який щодня вимагає звіту по моїх власних цілях — і це реально працює

У мене давно є таблиця з чітко прописаними цілями на рік. Проблема завжди була не в тому, щоб їх сформулювати, а в тому, щоб хтось регулярно про них нагадував і не давав відкладати. Тепер цю роль виконує бот, якого я собі зробив: він не вірить обіцянкам, щодня вимагає конкретики, нічого не забуває і не ведеться на жодний булшіт.

Це третій кейс у моїй серії про корисних ботів під щоденні задачі. Цього разу — не про автоматизацію рутинної механічної роботи, а про дещо особистіше: персонального AI-коуча, який контролює виконання власних цілей.

Чому саме такий бот

Варто одразу чесно попередити: цей бот жорсткий і без компромісів. Для більшості людей він може виявитись занадто вимогливим — саме це мені й було потрібно. Якщо хочете щось м'якше — собі легко можна зробити полегшену версію, прибравши частину гостроти з промпту.

Я веду цілі в докс-таблиці вже давно, тож просто дав боту доступ до неї, щоб він щодня тримав мене в тонусі за кожною ціллю. За три тижні такого фокусу вже маю чіткі, вимірювані результати.

Додатково налаштував, що можу відповідати боту голосовими — зранку простіше наговорити статус, ніж друкувати.

Що робить бот

Щодня о 16:00 бот бере одну активну ціль з таблиці і питає, як там справи. Вибирає він не випадково: спершу цілі, яких ще жодного разу не торкався, потім — ті, що найдовше не отримували оновлень, а при рівних умовах — ціль з вищим пріоритетом. Учорашню ціль, по якій уже відповідав, бот того ж дня повторно не питає.

Відповідь бот аналізує через Claude з інструментами і сам вирішує, що з нею робити: дописати короткий запис прогресу в таблицю, чи змінити статус цілі — якщо зі слів зрозуміло, що щось зроблено, майже зроблено, розпочато, скасовано чи перенесено.

Якщо на вечірнє питання не відповів — о 22:00 отримаю колюче нагадування. Ігнор бот теж рахує за відповідь, просто не надто приємну.

По суботах о 09:00 бот присилає тижневе саммері: скільки цілей у кожному статусі окремо по особистих і робочих, відсоток виконаного, що змінилося за тиждень порівняно з минулою суботою, і по яких цілях були реальні записи. Якщо тиждень вийшов без жодного руху — бот прямо так і напише, що тиждень злитий.

Окремо є вкладка для задач-нагадувань: досить написати боту «впиши задачу: X, відповідальний Y, нагадуй раз на місяць» — і він сам створить запис, а якщо забути вказати періодичність, обов'язково перепитає. Коли настає дата нагадування — бот сам нагадає і зафіксує відповідь.

Є й кілька команд для ручного керування: запитати поточну ціль, побачити зведення по всіх статусах, дізнатись топ-3 найпріоритетніші цілі без руху, отримати тижневе саммері поза розкладом чи переглянути список задач.

Як зробити собі такого ж бота

Звучить це складніше, ніж є насправді. Три кроки:

Підписуйтеся на наші соцмережі

  • 1
    Створіть Google Таблицю з колонками для цілей — горизонт, пріоритет, тип (особисте/робоче), текст цілі, відповідальний, статус. Якщо таблиці ще немає, можна взяти готовий шаблон.
  • 2
    Зробіть токени в BotFather і в Anthropic, щоб бот працював нативно в Telegram.
  • 3
    Скопіюйте промпт нижче і віддайте його в Claude Code чи ChatGPT Codex — далі просто крок за кроком виконуйте те, що він порадить.

Якщо щось із цього звучить страшно — просто вставте промпт у Claude Code чи ChatGPT Codex і йдіть за інструкціями моделі. Головне — зробити свого першого такого бота, далі буде простіше.

Промпт

«Збудуй мені Telegram-бота — персонального коуча по цілях, який щодня пушить власника і веде облік прогресу в Google Таблиці.

## Стек (не обговорюється)

- Cloudflare Worker, plain JS, деплой npx wrangler deploy. Ніяких залежностей, крім @anthropic-ai/sdk.

- База — Google Sheets через сервісний акаунт (JWT RS256 → oauth2.googleapis.com, скоуп spreadsheets).

- Мозок — Claude API (модель claude-opus-5, effort low) з tool use.

- Розклад — cron triggers воркера. Все крутиться в хмарі 24/7, нічого не залежить від ноутбука.

## Що я дам (спитай і постав секретами через wrangler secret put)

- TELEGRAM_BOT_TOKEN — токен від BotFather

- ANTHROPIC_API_KEY

- GOOGLE_SA_JSON — повний JSON сервісного акаунта (таблицю я розшарю на його email як Editor)

- WEBHOOK_SECRET — згенеруй сам (openssl rand -hex 24)

- vars: SHEET_ID, ALLOWED_CHAT_ID (бот працює ТІЛЬКИ з цим chat_id, чужих ігнорує мовчки)

## Таблиця цілей

Вкладка з річними цілями. Колонки: A горизонт | B пріоритет (10–100) | C тип (Pers/Work) | D текст цілі | E відповідальний | F відповідальний #2 | G статус | H — колонка бота (нотатки).

Статуси (дропдаун): not started, in progress, almost, done, cancelled, postponed to next year, postponed to far future. «Активні» для бота — перші три.

Шапку шукай динамічно (рядок, де A починається з відомого заголовка), щоб вставка рядків зверху нічого не ламала.

## Поведінка

1. Щодня о 16:00 бот бере ОДНУ активну ціль і питає, що по ній. Вибір: спершу цілі, яких бот ще не торкався, далі — найдавніше торкані (остання дата з нотаток у колонці H), при рівності — вищий пріоритет. Вчорашня відповідана ціль виключається.

2. Відповідь власника обробляє Claude з інструментами:

- save_progress(summary) — дописати в H «дд.мм.рр: суть» (3–15 слів). Викликати на БУДЬ-ЯКУ змістовну відповідь.

- set_status(status) — коли зі слів ясно: зробив → done, майже → almost, почав → in progress, скасував/переніс → відповідний статус.

3. О 22:00 — якщо на питання дня не відповів, колюче нагадування (ігнор — теж відповідь).

4. Субота 09:00 — тижневе саммері: кількість цілей по статусах окремо Pers/Work/разом, % done; зміни статусів за тиждень (порівняння зі знімком минулої суботи в KV); по яких цілях були записи. Якщо тиждень без руху — сказати прямо, що тиждень злитий.

5. Задачі-нагадування (окрема вкладка, створюється автоматично): власник пише «впиши задачу: X, відповідальний Y, нагадуй раз на місяць» → бот вносить рядок (дата створення, задача, відповідальний, періодичність словами, інтервал у днях, дата наступного нагадування, статус active/paused/done). Якщо періодичність не назвав — бот ОБОВ'ЯЗКОВО питає. Коли настає дата — нагадує, пише дату нагадування в наступну вільну колонку справа, а суть відповіді — в сусідню клітинку. Інструменти: add_task, set_task_frequency, answer_task, set_task_status.

6. Команди: /goal (питання зараз), /goals (зведення по статусах), /focus (топ-3 найпріоритетніші без руху), /week (саммері зараз), /tasks (список задач). Зареєструй через setMyCommands«.

Навіщо це взагалі робити

Тут справа не в екзотиці «AI-коуча» заради хайпу. Справа в тому, що навіть найкраще прописані цілі без регулярного зовнішнього тиску мають властивість тихо відкладатись на потім. Людині складно щодня бути суворим менеджером самій для себе — завжди знайдеться поважна причина відкласти чергове зважування прогресу. Бот цю причину просто не приймає.

Якщо серія заходить — продовжуватиму ділитися подібними ботами під конкретні особисті й робочі задачі, з готовими промптами, які можна одразу забрати собі.

Якщо ви хочете поділитися з читачами SPEKA власним досвідом, розповісти свою історію чи опублікувати колонку на важливу для вас тему, долучайтеся. Відтепер ви можете зареєструватися на сайті SPEKA і самостійно опублікувати свій пост.
0
Icon 0

Підписуйтеся на наші соцмережі