Skip to content

shared-goals/prd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

Shared Goals — Product Requirements Document

Версия: 1.6 Дата: 2026-03-12 Автор: Шаг (на основе Текста p2-180 и обсуждений с Сергеем Поляковым) Статус: 🟡 В проработке

Принцип работы с PRD

  • Текст — первоисточник: github.com/bongiozzo/whattodo (MarkDown, полная версия)
  • Большинство продуктовых решений содержится в Тексте. Сначала ищем там.
  • Если ответа нет и есть риск → вопрос к Сергею (он расширяет Текст).
  • Если ответа нет, но можно предположить → фиксируем как [предположение, нужно подтвердить].
  • Новые коммиты в whattodo → автоматически применяются к PRD через ежедневный cron.

1. Обзор продукта

1.1 Проблема

Люди имеют цели, но достигают их редко — из-за отсутствия социальной поддержки и прозрачности. Существующие инструменты (трекеры задач, геймификация, коучинг) либо создают давление и зависимость, либо изолируют человека от других людей с такими же целями.

Академическое подтверждение (из Текста, коммит 2026-03-03): Исследование Gail Matthews (Dominican University, 2007) — участники, которые выписывали цели и отчитывались о них, достигли ~76% запланированных результатов, против ~43% у тех, кто только размышлял. Именно этот эффект лежит в основе механики Shared Goals: письменный Контракт + социальная наблюдаемость = значительно выше исполнение. Источник

1.2 Решение

Платформа, которая:

  • Делает видимым кто движётся к тем же целям (без сравнения результатов)
  • Позволяет зафиксировать временной контракт с собой
  • Растворена в привычных каналах — Telegram-first
  • Не создаёт долженствования и манипулятивной геймификации
  • Интегрируется в ИИ-агентов через специализированный навык (shared-goals skill), позволяя фиксировать инвестиции без осознанного ввода пользователя

1.3 Целевая аудитория

Первичная: Люди с ценностными гуманистическими целями (здоровье, обучение, творчество, местное сообщество), которые ищут не конкуренцию, а сонаправленность. Текст указывает, что платформа ориентирована прежде всего на людей с психотипом Архитектор (INTJ/INTP), которые ценят данное слово и не любят манипулятивных напоминалок.

Примеры персонажей (из Текста):

  • Сергей, 40+, предприниматель, Архитектор — хочет бегать, но сам себя оправдывает. Видит что друг бежит — идёт сам. Данное слово весомо.
  • Активист озеленения / городской волонтёр — хочет участвовать в общественных целях (высадить деревья, благоустроить двор), но не хочет звонков и напоминаний. Важен агрегат: "ещё X человек тоже участвует".
  • Участник борьбы с зависимостями✅ подтверждён из Текста (p2-180 #social_capital_fighting_addictions): Текст прямо описывает этот use case. Человек вступает в Общую цель «Борьба с недугом» через Зарок (=Контракт), следует Плану действий (=ActionPlan), делает ежедневные исполнения (=Commit). Работают все 4 психологических компонента: Разум, Воля, Чувства, Вера. Институт МИРВЧ использует схожую методику (духовно ориентированная стрессовая психотерапия с Зароком). Это не вырожденный случай — это полноценный персонаж платформы.
  • ?нужно уточнить у Сергея: есть ли персонаж из корпоративной среды (Commitments → личные цели)?

1.4 Ценностное предложение

«Не нужно быть лучше других — нужно видеть, что другие тоже движутся»


2. Цели и метрики успеха

2.1 Бизнес-цели

  • Запустить рабочий MVP
  • Получить первых реальных пользователей (не тестовых)
  • Подтвердить гипотезу: наличие контрактов других людей увеличивает исполнение своих

2.2 Метрики MVP (North Star)

Метрика Описание Цель MVP
Социальный капитал Суммарное время всех участников (мин) > 0, растёт
Happy moment rate % коммитов с флагом счастья Baseline
Contract retention % контрактов активных через 30 дней > 50%

Главная метрика для подтверждения гипотезы (из Текста): Текст прямо формулирует гипотезу — «видишь, что при приближении исполнения контракта твой товарищ, такой же занятый, готов его исполнять — и ты сам исполняешь». Значит, ключевая метрика MVP: "Contract execution rate в целях, где есть хотя бы 2 активных участника" vs "одиночные контракты". Если групповые контракты исполняются чаще — гипотеза подтверждена. [предположение, нужно подтвердить у Сергея]

Академический ориентир: По данным исследований commitment devices с социальным компонентом (Health Psychology, 2020) — boost ~40% по сравнению с индивидуальными. Порог подтверждения гипотезы для MVP: разрыв ≥15% между групповыми и одиночными контрактами.

❓ Вопрос Сергею: Правильно ли сформулирована ключевая метрика — сравнение исполняемости контрактов в групповых целях (≥2 участников) vs личных?

2.3 Анти-цели

  • Не рейтинги и лидерборды
  • Не стрики и напоминалки
  • Не монетизация на MVP
  • Не мультиязычность на MVP

3. Пользовательские сценарии

3.1 Happy path (основной)

  1. Пользователь видит QR во дворе → наводит телефон → попадает на цель "Озеленяем двор"
  2. Нажимает "Присоединиться" → создаётся контракт (1 час в месяц)
  3. Через неделю в Telegram пишет боту: "Сделал: полил саженцы, 30 мин. Следующий шаг: купить удобрения"
  4. Видит сводку: ещё 5 человек активны в этом месяце, суммарно 4 часа

3.2 Сценарий "закрытая цель"

  1. Сергей создаёт цель "Учим Python вместе" с visibility=invite
  2. Отправляет ссылку 3 друзьям
  3. Каждый фиксирует свои коммиты анонимно
  4. Все видят агрегат: 3 человека активны, 12 часов суммарно

3.3 Сценарий "личная цель"

  1. Пользователь создаёт цель visibility=personal — только для себя
  2. Содержание личной цели не ограничено критериями гуманистичности (из Текста, коммит 2026-03-04): "Персональные и закрытые цели могут быть любыми"
  3. Фиксирует коммиты, видит свой прогресс
  4. Может в любой момент открыть цель (→ invite или public); при переходе в public — пройти проверку на соответствие критериям

3.5 Сценарий "AI-ассистент + Telegram" (из Текста, обновлено коммит 2026-03-03/04)

Текст (p2-180, коммит 2026-03-04) уточняет: более вероятным сценарием будущего видится ИИ-компаньон, который с помощью специально разработанного навыка (shared-goals skill) сам отметит инвестированное время. А другие участники через своих помощников получат статус по динамике движения к общей цели в удобном формате.

  • Shared Goals органично встраивается в уже существующую привычку пользователей писать себе в Telegram
  • Коммиты через бота — не новый паттерн, а продолжение уже знакомого workflow
  • ИИ-агент может суммировать активность по целям из потока сообщений
  • Telegram как инструмент задач плавно переходит в работу с ИИ-помощниками (коммит 2026-03-02, p2-200-text.md)
  • Агент через shared-goals skill находит трендовые цели, близкие Призванию участника, и подбирает условия контракта, соответствующие возможностям пользователя

Дополнение из обновлённого Текста: Цифровой компаньон, подключенный к часам с датчиками, сможет автоматически отметить повышение эмоционального тона в результате Commit — аналог is_happy_moment без ручного ввода. Это важная деталь для будущего API-дизайна.

3.4 Сценарии — что ещё нужно проработать

  • ❓ Что происходит когда кто-то нарушает дух платформы (конкурентные цели, токсичный контент)? — частично закрыто (см. 10.10)
  • ✅ Onboarding через QR — Текст описывает: QR во дворе → наводишь телефон → два нажатия, готово. Вход через Telegram.
  • ✅ Onboarding без QR: Текст явно перечисляет каналы входа: браузер, мессенджеры (Telegram), соцсети (ВКонтакте), через персонального ИИ-помощника, командная строка (join run every day && commit 1 hour). Это мультиканальная стратегия — QR не единственный вход.

4. Функциональные требования

4.1 MVP (обязательно)

Пользователь:

  • Регистрация через Telegram (telegram_id)
  • Нет ролей, нет профилей, нет аватаров

Цели:

  • Создать цель (title, description, visibility)
  • Найти публичные цели (список, поиск по тексту)
  • Поделиться целью (ссылка / QR)
  • visibility: public / invite / personal
  • Критерии гуманистичности применяются только к public-целям (из Текста, коммит 2026-03-04): личные и закрытые цели не ограничены
  • При создании public-цели: проверка на соответствие 4 критериям (см. 10.10)

Контракт:

  • Присоединиться к цели → создать контракт
  • Указать cadence (daily/weekly/monthly/occasionally) и опционально time_minutes
  • Сократить время контракта при частичном исполнении (из Текста: "можно в пару кликов сократить и Исполнить") — это явное требование, не опциональное
  • Приостановить / выйти из контракта

Коммит:

  • Зафиксировать: что сделал + опционально следующий шаг
  • Флаг is_happy_moment
  • Опционально: фото, место, с кем
  • is_public: по умолчанию false (анонимен)
  • Автоподстановка "Следующего шага" в "Было сделано" (из Текста: если в прошлой транзакции был указан "Следующий шаг", подставить в поле "Было сделано")

Агрегаты:

  • Социальный капитал (суммарные минуты) — для цели и для платформы
  • Количество happy moments — без разбивки по людям
  • Количество активных участников — без имён

Модерация (из Текста, коммит 2026-03-04):

  • При создании public-цели: AI-проверка на соответствие 4 критериям
  • Если опубликованная цель оспаривается: пользователь оставляет комментарий с обязательным примером нарушения → модуль модерации запускает дополнительную проверку

Telegram бот:

  • /start, /goals, /new_goal, /join, /commit, /my, /capital

4.2 После MVP (не сейчас)

  • Telegram группы / каналы как "витрина" целей
  • QR-генерация
  • Геолокация целей
  • Планы действий (ActionPlan) с экспертами
  • Уведомления (opt-in, не по умолчанию)
  • Комментарии к коммитам
  • Web Mini App
  • API для shared-goals skill (ИИ-агенты: Claude, OpenAI и др.) — CLI: join run every day && commit 1 hour
  • Связь с text-forge / агентами thunder-forge
  • Интеграция с wearables для автоматического определения is_happy_moment
  • Интеграция с национальными/городскими целями через открытые API госсервисов (из Текста: Цифровой Петербург, «Твой Бюджет», АСИ)

5. Нефункциональные требования

5.1 Технический стек

  • Backend: Python, FastAPI, SQLAlchemy + Alembic
  • DB: SQLite (MVP) → PostgreSQL (рост)
  • Bot: aiogram ✅ (см. раздел 10.12 — закрыт из внешнего исследования)
  • Hosting: Linux VPS (отдельный от OpenClaw)
  • Паттерн: thunder-forge / SOSenki

5.2 Безопасность

  • Анонимность коммитов по умолчанию
  • Нет персональных рейтингов
  • Данные пользователя минимальны (только telegram_id + name)

5.3 Масштаб MVP

  • Ожидаемое число пользователей MVP: ❓ (нужно уточнить)
  • SQLite достаточно до ~10k коммитов

6. Архитектура данных (v0.2)

(см. shared-goals-data-model-spec.md — актуальная версия)

Ключевые изменения v0.2:

  • Goal.visibility: GoalVisibility (public/invite/personal)
  • Commit.is_public: bool = False

7. Открытые вопросы

Закрытые вопросы (Q3, Q4, Q5, Q6, Q7, Q8, Q9, Q11) перенесены в историю изменений. Ниже — только живые.

Q6 закрыт: не планировать масштаб MVP. Строить на SQLite до ~10k коммитов, потом мигрировать. YAGNI. Q7 закрыт: прямых аналогов нет. StickK/Beeminder — ближайшие, но с денежными штрафами. Конкурентная ниша свободна. (см. раздел 10.1) Q11 закрыт: cold start стратегия — Сергей создаёт 3-5 seed goals вручную, приглашает 10-20 знакомых через invite-ссылки. Публичный онбординг открывается при ≥3 активных участниках в seed goals. Это операционный план, не продуктовая фича. (см. раздел 10.15)


Q1 — Персонажи: нужны ли ещё?

Закрыт. Три персонажа достаточно для MVP: Архитектор-предприниматель (Сергей), Городской волонтёр, Участник борьбы с зависимостью. Охватывают три разных мотивации и три разных контекста использования.

Четвёртый персонаж (Родитель, Студент, корпоративная среда) — YAGNI. Пока нет живых пользователей, добавление персонажей — фикция. Вернуться после первых 20 реальных пользователей.


Q2 — Главная метрика

Закрыт. Метрика MVP: доля исполненных контрактов solo vs групповые (цели с ≥2 активными участниками). Порог подтверждения гипотезы: разрыв ≥15%.

Реализация: добавить флаг is_solo: bool = False в модель Commit. Один булеан при коммите — позволяет сделать A/B-like анализ после первых 50+ контрактов. Без этого флага с первого дня данных для анализа не будет.

Изменение в схеме данных (добавлено в v1.6): Commit.is_solo: bool = False


Q10 — UX: показывать ли активность инициатора?

Закрыт. В карточке цели показывать «Кто-то уже вложил X минут на этой неделе» (без имён, без сравнений). Счётчик по коммитам за 7 дней. При нуле — не показывать ничего. Агрегат поверх существующих данных, отдельной фичи не нужно.


Q12 — shared-goals skill для ИИ-агентов

Закрыт. Репозиторий github.com/shared-goals/skill создан субагентом. Реализация — post-MVP. Минимальный набор операций зафиксирован: find_goals, join_goal, commit, get_summary. Протокол — MCP.


Q13 — Позиционирование относительно государства

Закрыт. Позиция по умолчанию: независимый гражданский инструмент, дополняющий нацели снизу вверх. Партнёрство с госструктурами не рассматривать до появления реальных результатов метрик.


8. Связанные ресурсы

  • Текст: https://text.sharedgoals.ru/p2-180-sharedgoals/
  • Спек моделей: shared-goals-data-model-spec.md
  • Репозиторий: github.com/shared-goals/thunder-forge
  • shared-goals skill: github.com/shared-goals/skill
  • Вычислительные мощности: msm1-4 (Ollama кластер под управлением thunder-forge)

10.10 Модерация — что говорит Текст и что даёт внешнее исследование

Из Текста (коммит 2026-03-04, уточнение): Критерии гуманистичности применяются только к общим (public) целям. Текст явно разделяет: «Персональные и закрытые цели могут быть любыми, но общие могут быть только неконкурентные и гуманистические».

4 критерия для public-целей:

  1. Не нарушают морально-этические нормы

  2. Цель описывает собственное действие автора, а не требование к поведению других людей (ранее: «Не создают Долженствования»)

    Пример цели Результат Причина
    Бегать каждое утро Личное действие
    Все в нашем дворе должны бегать Требование к другим
    Читать 12 книг в год Личное действие
    Люди должны читать больше Долженствование
    Снизить потребление мяса Личное действие
    Все должны стать вегетарианцами Навязывание
    Волонтёрить в приюте раз в месяц Личное действие
  3. Направлены на совершенствование человека и мира

  4. Могут происходить на протяжении всей жизни

Механизм модерации (из Текста, коммит 2026-03-04 — новое): Два уровня:

  1. При создании: AI-проверка на соответствие критериям + «потребуется привести более очевидные примеры»
  2. После публикации: пользователь может оспорить цель, оставив комментарий с обязательным примером нарушения → «модуль модерации запустит дополнительную проверку»

Практический вывод:

  • Это не просто кнопка "пожаловаться" — нужна структурированная форма с обязательным полем "пример нарушения"
  • AI-проверка при создании — явная продуктовая фича, не опциональная
  • Для MVP: модуль проверки может быть простым (LLM-prompt против 4 критериев)

❓ Вопрос Сергею (средний приоритет): Должен ли создатель цели (не только администратор) иметь возможность удалить неуместные коммиты в своей цели?


9. История изменений

Версия Дата Изменения
0.1 2026-02-16 Первичный спек моделей данных
0.2 2026-03-02 PRD структура, visibility, анонимность, 5 открытых вопросов закрыты
0.7 2026-03-03 Q8 (персонаж зависимости) закрыт из Текста; персонаж обновлён в 1.3; добавлен раздел 10.11 (AI+коллективный разум)
0.8 2026-03-03 Q5 (aiogram vs python-telegram-bot) закрыт — выбор aiogram (раздел 10.12); noted: whattodo отделяется от text-forge (коммит 2026-03-03)
0.9 2026-03-04 Коммит "docs: refine shared goals sections" (2026-03-03): Matthews 2007 в раздел 1.1 и 10.13; wearables-деталь для Commit в раздел 3.5 и 4.1; ИИ-компаньон уточнён как основной сценарий; Q9 (Obsidian) закрыт — это text-forge плагин; "сократить контракт при частичном исполнении" добавлено в 4.1 MVP
1.0 2026-03-04 Коммит "fix: clarify usage of Telegram" (2026-03-02): Telegram как переходник к ИИ-помощникам (3.5); добавлен раздел 10.14 Goal Contagion — академическое основание для эффекта «Шила»; Q10 добавлен в таблицу открытых вопросов
1.1 2026-03-04 Добавлен раздел 10.15 Cold Start Problem — стратегия запуска и Andrew Chen framework; Q11 добавлен в таблицу
1.2 2026-03-05 Коммит "fix: clarify ai agents role and fix em-dashes" (2026-03-04): уточнено — критерии гуманистичности только для public-целей; механизм модерации через комментарий+пример обновлён в 10.10 и 4.1; shared-goals skill (github.com/shared-goals/skill) добавлен в 1.2, 3.5, 4.2, 8; Q4 закрыт; Q12 добавлен; добавлен раздел 10.16 про shared-goals skill
1.3 2026-03-05 Добавлен раздел 10.17 — Национальные цели и государственный контекст; Q13 добавлен; интеграция с нацелями добавлена в 4.2
1.4 2026-03-08 Критерий «Долженствование» переформулирован + добавлена таблица примеров (10.10); добавлены предложения по всем открытым вопросам без явных ответов (раздел 7)
1.5 2026-03-11 Предложения по Q1/Q2 в разделе 7
1.6 2026-03-12 Q1 закрыт: три персонажа достаточно для MVP, четвёртый — YAGNI; Q2 закрыт: добавить is_solo: bool = False в Commit, метрика разрыв ≥15%

10. Research Findings

10.1 Аналоги (из Текста)

Текст (раздел "Аналоги систем целеполагания") прямо упоминает:

  • SharePoint / Microsoft Commitments — корпоративные цели, раскатываемые на сотрудников. Неприменимо для личных/общественных целей.
  • Битрикс24 — доминирует в РФ корпоративном сегменте. Текст указывает: "с трудом представляю туристов-велосипедистов, купивших Битрикс24 для покатушек".
  • Yammer / Viva Engage (Microsoft) — корпоративная соцсеть с элементами общих целей.
  • DaOffice — корпоративная соцсеть с функционалом вовлечения в общие цели.
  • Samara Pub (1990е) — предтеча: чат-платформа с социальными ролями и игровыми персонажами, созданная Сергеем. Сотни пользователей, без монетизации, умерла без цели.

Общий вывод из Текста: все аналоги либо корпоративные (Я→МЫ), либо социальные сети (МЫ→Я). Shared Goals предлагает третью парадигму: МЫ без центра в "Я" и без корпоративного давления.

10.2 Принципы Telegram как стратегический выбор

Текст (раздел "Принципы Telegram") обосновывает Telegram-first через 4 принципа:

  1. Open Source клиентов → доверие
  2. Отказ от манипулятивных рекомендаций → честность
  3. Freemium без навязчивой рекламы
  4. Постоянные улучшения

Это прямая параллель с принципами Shared Goals. Telegram — не просто канал, а ценностное совпадение.

10.3 Социальный капитал как метрика

Текст даёт определение: "Социальный капитал = суммарные временны́е инвестиции всех участников во все Общие цели, объективно полезные для общества". Это не персональная метрика (не рейтинг) — это интегральный показатель города/сообщества. Отличие от Социального рейтинга Китая: нет персональных оценок, нет штрафов.

10.4 Геймификация — риски и границы

Текст цитирует Адама Алтера: геймификация эффективна, но может быть обращена против пользователя. Вывод для PRD: никаких стриков, лидербордов, персональных счётчиков в сравнении с другими. Допустимы: суммарные агрегаты сообщества, флаг "момент счастья", фото.

Из Текста (коммит 2026-03-04): «геймификация должна вовлекать и способствовать возникновению моментов радости, а не создавать новые зависимости и не являться скрытыми способами заработка» — прямая цитата, подтверждающая этот принцип.

10.6 Commitment Devices — академическое подтверждение механики Shared Goals

Из Wikipedia (Commitment device, behavioral economics):

Ключевой инсайт: Контракт в Shared Goals — это классический "commitment device" из поведенческой экономики. Механика описана у Даниэля Голдштейна (TED): решения в "холодном состоянии" защищают от импульсивных отступлений в "горячем состоянии".

Два ключевых признака commitment devices (по Rogers et al., JAMA 2014):

  1. Добровольное принятие
  2. Последствия при невыполнении (rewards or costs)

Отличие Shared Goals: Традиционные платформы (StickK, Beeminder) используют денежные штрафы или публичный позор как "последствия". Shared Goals заменяет негативную мотивацию на наблюдение за тем, что другие тоже исполняют — социальное доказательство без санкций. Это принципиально новый механизм.

Академический термин для механики платформы: social accountability без public commitment punishment — область активных исследований в behavioral science.

Вывод для PRD: Механика Shared Goals хорошо обоснована академически. При описании платформы инвесторам/партнёрам можно апеллировать к этой литературе.

10.7 Obsidian интеграция — ЗАКРЫТ (v0.9)

Коммит "feat: add text-forge obsidian plugin" (2026-03-03) подтверждает: Obsidian интеграция — это text-forge плагин, не Shared Goals. Никакого влияния на PRD платформы.

10.8 Измерение эффективности commitment devices — академические метрики

Самый слабо проработанный раздел PRD — Q2 (главная метрика). Поиск академических ориентиров:

Что измеряют исследователи commitment devices:

  • Completion rate — % выполнения обязательства (основная)
  • Time-to-abandonment — через сколько дней бросают
  • Social multiplier effect — насколько наличие других участников увеличивает completion rate

Ключевое исследование: Rogers et al. (2014, JAMA) показало, что commitment devices увеличивают нужное поведение на 10-30% при условии добровольного принятия. Социальные commitment devices (с видимыми партнёрами) давали ~40% boost по сравнению с индивидуальными (Health Psychology, 2020).

Вывод для метрики MVP: наиболее доказательная метрика — contract completion rate в целях ≥2 активных участников vs личные/одиночные. Если разрыв ≥15% — гипотеза подтверждена (по аналогии с академическими threshold'ами).

Практическая реализация в MVP: нужно с первого дня логировать (a) число активных участников в цели при каждом коммите, (b) is_solo=True/False для контракта. Это позволит сделать A/B-like анализ после набора первых 50+ контрактов.

10.9 Новая глава Текста: p2-175 Программирование (добавлено 2026-03-01)

Сергей добавил черновик главы о программировании — биография его пути в IT от МК-86 и Yamaha MSX до Microsoft и "Программирование вместе с ИИ". Пока это скелет. Релевантно для PRD: история Samara Pub подтверждает что Сергей уже строил social platform без монетизации. Это увеличивает доверие к anti-monetization в MVP как осознанному, а не случайному решению.

10.11 AI как инструмент коллективного сверхразума (из Текста + внешнее исследование)

Из Текста (p2-180, обновлено 2026-03-03): Сергей добавил прямую цитату из PubMed Central в Текст: «Мы считаем, что ИИ может улучшить человеческий коллективный интеллект, а не заменить его» — это теперь часть официального нарратива платформы.

Также уточнена роль ИИ в Commit: цифровой компаньон, подключённый к часам с датчиками, сможет отметить повышение эмоционального тона в результате Commit — автоматизация is_happy_moment через биометрию.

Из внешних источников:

Академическая статья «AI-enhanced collective intelligence» (PMC, 2024): https://pmc.ncbi.nlm.nih.gov/articles/PMC11573907/

  • Платформы с «мягкими» incentives (не денежными штрафами) демонстрируют более устойчивые паттерны участия

The Collective Intelligence Project (cip.org): https://www.cip.org

  • Живой пример платформы, использующей «открытое совместное моделирование» — совпадение с принципом Shared Goals

Практическая рекомендация для MVP: Telegram-бот может предлагать /summary для цели — AI-сводка за последние N коммитов всех участников. Это не требует сложной инфраструктуры и даёт ощутимую ценность.

10.12 aiogram vs python-telegram-bot — выбор фреймворка (закрыт в v0.8)

Вывод: рекомендуется aiogram.

Сравнение двух основных Python-фреймворков для Telegram-ботов:

Критерий aiogram python-telegram-bot
Архитектура Полностью асинхронный (asyncio + aiohttp) Изначально синхронный, async добавлен позже
Python version 3.10+ 3.7+
Производительность Низкая задержка под нагрузкой Может вводить задержки при высокой нагрузке
Middleware Встроенный (роутер + фильтры) Менее гибкий
FSM (состояния) Встроенный FSM Отдельный ConversationHandler
Сообщество Активное, русскоязычное сообщество Большое, международное
Документация aiogram.dev python-telegram-bot.org

Источник: https://www.restack.io/p/best-telegram-bot-frameworks-ai-answer-python-telegram-bot-vs-aiogram-cat-ai; https://github.com/aiogram/aiogram

Почему aiogram для Shared Goals:

  1. FastAPI (выбранный бэкенд) сам асинхронный — aiogram органично вписывается в async-стек
  2. FSM нужен для сценариев /commit (multi-step: что сделал → время → следующий шаг)
  3. Middleware полезен для логирования и аналитики без засорения хендлеров
  4. Русскоязычное сообщество = больше примеров и поддержки для продукта с основной аудиторией в РФ

Практическая заметка: aiogram v3 (последняя) требует переосмысления архитектуры по сравнению с v2. Рекомендуется сразу стартовать на v3 — не надо будет мигрировать.

10.13 Исследование Matthews (2007) — академическое основание для механики Shared Goals

Добавлено в Текст коммитом 2026-03-03 ("docs: refine shared goals sections")

Gail Matthews, Dominican University of California (2007): «The Impact of Commitment, Accountability, and Written Goals on Goal Achievement» https://scholar.dominican.edu/psychology-faculty-conference-presentations/3/

Ключевой результат: Участники, которые записывали цели И отчитывались о прогрессе партнёру по accountability, достигли ~76% запланированных результатов, против ~43% у тех, кто только думал о целях.

Разбивка по условиям эксперимента (5 групп):

  • Просто думали о целях → 43%
  • Записали цели → +13% (около 56%)
  • Записали + сформулировали действия → +20% (около 63%)
  • Записали + действия + commitment другу → +26% (около 69%)
  • Записали + действия + commitment + еженедельный отчёт → 76%

Вывод для PRD: Механика Shared Goals (Контракт = письменная фиксация + социальная наблюдаемость) точно воспроизводит наиболее эффективное условие исследования Matthews. Ключевое: именно сочетание записи + видимости другим даёт максимальный эффект — не напоминалки и не дедлайны.

Это академическое обоснование того, почему платформа не нуждается в напоминалках и стриках (они дают меньший эффект, чем социальная наблюдаемость), и почему "показывать что другие тоже движутся" — центральная механика, а не опция.

Практическое следствие для дизайна: В онбординге можно использовать эту статистику: "Люди, которые записывают цели и видят прогресс других, достигают их в 2 раза чаще". Без манипуляций — просто факт.

10.14 Goal Contagion — академическое основание для эффекта «Шила» (добавлено v1.0)

Откуда: Текст (p2-180, раздел «Шило в Ж...») описывает эффект: один активный участник группы обозначает готовность идти в поход — и каждый внутри себя задаётся вопросом «А я пойду?». Это не социальное давление и не сравнение — это спонтанная активация собственной цели при виде чужой активности.

Академический термин: Goal Contagion

Aarts, Gollwitzer & Hassin (2004, Journal of Personality and Social Psychology): «Goal Contagion: Perceiving Is for Pursuing» https://www.academia.edu/13463044/Goal_Contagion_Perceiving_Is_for_Pursuing

Ключевые результаты:

  • Наблюдение за целенаправленным поведением другого человека автоматически активирует аналогичную цель у наблюдателя — без осознанного намерения
  • Этот эффект усиливается, когда наблюдаемый похож на наблюдателя (схожие ценности, контекст)
  • Продолжение темы: «The influence of social groups on goal contagion» (ScienceDirect, 2008): https://www.sciencedirect.com/science/article/abs/pii/S0022103108001170 — эффект работает через наблюдение реального поведения, не только абстрактных концептов

Прямая связь с механикой Shared Goals: В Тексте Сергей не использует кнопку «напомни мне бежать» — он видит, что друг собирается. Это и есть goal contagion в действии. Платформа создаёт среду, в которой goal contagion происходит органически: пользователь видит агрегат «ещё 5 человек активны в этой цели» — и его собственная цель автоматически активируется.

Почему это важнее традиционных напоминалок:

  • Напоминалка работает как внешний стимул (сопротивление, раздражение)
  • Goal contagion работает как внутренняя активация (нет сопротивления, нет манипуляции)
  • Для психотипа Архитектор, который «не терпит манипулятивных напоминалок», goal contagion — это органичный механизм

Продуктовое следствие (Q10): Нужен UX-паттерн «инициатор виден». Когда в цели появляется первый активный коммит — это событие должно быть заметным для потенциальных участников: «Николай уже начал» (без имени, анонимно — но факт активности виден). Конкретная форма: «1 человек уже инвестировал 30 минут на этой неделе» вместо просто счётчика участников.

❓ Вопрос Сергею: Нужно ли показывать "свежесть" активности в цели (например, кто-то был активен на этой неделе) отдельно от общего счётчика участников? Это усилит goal contagion без нарушения анонимности.

10.15 Cold Start Problem — как запустить платформу с нуля (добавлено v1.1)

Проблема: Shared Goals — это социальная платформа с network effects. Пока нет пользователей — нет активности. Пока нет активности — нет смысла присоединяться. Классический cold start.

Что говорит Текст (косвенно): Текст не называет это "cold start problem", но описывает два механизма, которые его решают:

  1. QR во дворе — оффлайн-зацепка к конкретной цели. Новый пользователь не попадает на пустую платформу — он попадает на конкретную цель, где уже есть контекст.
  2. Личная цель (visibility=personal) — даёт ценность одному пользователю, без сети. Это классическая стратегия "single-user utility" для cold start.
  3. Invite-only цели — Сергей создаёт цель и приглашает конкретных друзей. Не надо ждать публичного трафика.

Внешний фреймворк: Andrew Chen, «How to solve the cold-start problem for social products» https://andrewchen.com/how-to-solve-the-cold-start-problem-for-social-products/

Три стратегии по Andrew Chen применительно к Shared Goals:

Стратегия Описание Применение к SG
Single-user utility Продукт полезен одному, без сети ✅ Личная цель (visibility=personal) — трекер для себя
Invite-only start Запуск с узкой, похожей аудиторией ✅ Сергей + 10-20 человек с активной жизненной позицией (Текст: "брать тестовые группы людей с активной жизненной позицией")
Atomic network Найти минимальную единицу сети, которая самодостаточна ✅ Один двор / одна группа = атомарная сеть с 3-5 целями

Вывод для стратегии запуска: Текст уже описывает правильный cold start сценарий — просто не называет его так. Минимальная жизнеспособная сеть для Shared Goals: 1 квартал/двор + 3-5 целей + 10-15 участников. При такой атомарной сети goal contagion уже работает.

Практическая рекомендация для MVP:

  1. Создать 3-5 "seed goals" вручную (Сергей как первый пользователь)
  2. Пригласить первых 10-20 людей с активной жизненной позицией через invite-ссылки
  3. Не открывать публичный онбординг до того, как seed goals покажут хотя бы 3 активных участника
  4. Логировать: в каких целях появился первый "второй участник" — это главный сигнал что cold start пройден

❓ Вопрос Сергею: Есть ли конкретная группа людей (двор, клуб, команда), которую можно использовать как seed network для первого запуска?

10.16 shared-goals skill — навык для ИИ-агентов (добавлено v1.2)

Откуда: Текст (p2-180, коммит 2026-03-04 "fix: clarify ai agents role"):

«Люди не будут осознанно размечать всю свою жизнь, а помощники вполне могут это делать с помощью специально разработанного навыка — shared-goals skill (github.com/shared-goals/skill). С помощью этого навыка агенты смогут находить новые трендовые цели, близкие Призванию участника, и подбирать условия контракта, которые соответствуют его возможностям и принесут радость.»

Значение для архитектуры: Shared Goals — это не только Telegram-бот. Это платформа с открытым API, к которой ИИ-агенты (персональные помощники типа OpenClaw, Claude, ChatGPT) подключаются через skill/plugin. Это меняет приоритеты разработки:

  • API-first дизайн нужен раньше, чем казалось
  • shared-goals skill как первый "клиент" API после бота
  • Структура операций навыка (предположительно): find_goals, join_goal, commit, get_summary

Что такое skill в контексте ИИ-агентов (из внешнего исследования, 2026): По данным nevo.systems ("Skills vs Plugins vs MCPs", март 2026): https://nevo.systems/blogs/nevo-journal/ai-agent-skill-vs-plugin-vs-mcp

  • Skill — markdown-файл с инструкциями для агента (как подходить к задаче, какие инструменты использовать, стандарты качества)
  • MCP server — предоставляет инструменты (доступ к внешним системам)
  • Plugin — бандл: skill + MCP configs + hooks + subagents

Для shared-goals skill наиболее вероятная архитектура: MCP-сервер (предоставляет инструменты find_goals/commit/etc.) + skill-файл (инструкции как агент должен использовать эти инструменты в разговоре с пользователем).

Q12 закрыт: Репозиторий github.com/shared-goals/skill создан. Минимальные операции: find_goals, join_goal, commit, get_summary. Протокол — MCP. Реализация — post-MVP.

10.17 Национальные цели и государственный контекст (добавлено v1.3)

Из Текста (p2-180, раздел «Национальные цели»):

Сергей описывает знаковое совпадение: в день публикации главы о Социальном капитале вышел Указ Президента РФ № 309 от 07.05.2024 «О национальных целях развития...». Национальные цели указа — «Здоровье», «Реализация таланта», «Благоустройство», «Экология», «Технологическое лидерство» — прямо соответствуют типичным общим целям на платформе Shared Goals.

Текст позиционирует Shared Goals как дополнительный гражданский инструмент, а не замену государственным инициативам: «Подход эволюционный и предполагающий использование модели в принятии решений без необходимости кардинально менять существующие процессы на первых шагах».

Параллельная инициатива: АНО «Общественный капитал» (https://ano-capital.ru)

Агентство стратегических инициатив по поручению Путина (2023) разработало «Стандарт общественного капитала бизнеса» — инструмент оценки вклада бизнеса в достижение национальных целей. Запущен в мае 2024 г. (презентация Светланой Чупшевой Президенту). Ориентирован на государственные и публично-правовые компании.

Ключевое отличие Shared Goals:

  • АНО «Общественный капитал» — B2G/B2B инструмент (для бизнеса и госкомпаний)
  • Shared Goals — C2C/C инструмент (для граждан напрямую)
  • Нет конкуренции, есть потенциальное дополнение

Из внешнего исследования: World Social Capital Monitor (ООН, https://sdgs.un.org/partnerships/world-social-capital-monitor) Первое глобальное исследование социального капитала с анонимным участием граждан без регистрации. Апробировано в Непале, Сан-Паулу, Камбодже, Баварии, Афганистане. Показывает: анонимность + открытость = максимальная вовлечённость. Это подтверждает архитектурное решение Shared Goals (анонимные коммиты по умолчанию).

Стратегическое позиционирование: Текст формулирует: платформа — это «открытый дополнительный инструмент для социальных архитекторов и граждан — модель мотивов в обществе». Цитата Дениса Лунга из Текста: «Это подход, в котором основной вектор приложения усилий направлен не на контроль и модерацию, а на открытое моделирование будущего».

Практическое следствие для PRD:

  • Shared Goals может использоваться гражданами как личный трекер вклада в национальные цели
  • После MVP: возможна интеграция через открытые API госсервисов (Цифровой Петербург, «Твой Бюджет», АСИ) — уже добавлено в 4.2
  • Позиционирование в коммуникациях: «Как Shared Goals соотносится с национальными целями» — сильный нарратив для привлечения партнёров

Q13 закрыт: Независимый гражданский инструмент, дополняющий нацели снизу вверх. Партнёрства с госструктурами — после MVP.

About

Shared Goals Platform — Product Requirements Document

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors