惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recorded Future
Recorded Future
C
Cyber Attacks, Cyber Crime and Cyber Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Scott Helme
Scott Helme
Cyberwarzone
Cyberwarzone
C
CERT Recently Published Vulnerability Notes
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Palo Alto Networks Blog
Google Online Security Blog
Google Online Security Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
WordPress大学
WordPress大学
博客园 - 聂微东
L
LINUX DO - 最新话题
月光博客
月光博客
小众软件
小众软件
T
Troy Hunt's Blog
A
Arctic Wolf
量子位
I
Intezer
大猫的无限游戏
大猫的无限游戏
T
Tailwind CSS Blog
S
Schneier on Security
Schneier on Security
Schneier on Security
NISL@THU
NISL@THU
T
Threat Research - Cisco Blogs
TaoSecurity Blog
TaoSecurity Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园_首页
有赞技术团队
有赞技术团队
N
News and Events Feed by Topic
美团技术团队
The Cloudflare Blog
P
Privacy International News Feed
S
Security Affairs
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
G
GRAHAM CLULEY
N
News | PayPal Newsroom
Apple Machine Learning Research
Apple Machine Learning Research
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 热门话题
V
Vulnerabilities – Threatpost
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
C
CXSECURITY Database RSS Feed - CXSecurity.com
宝玉的分享
宝玉的分享
Application and Cybersecurity Blog
Application and Cybersecurity Blog
IT之家
IT之家
Hacker News: Ask HN
Hacker News: Ask HN
雷峰网
雷峰网

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
Я засунул таск-трекер, голосования с кворумом и AI, следящего за экранами сотрудников, в один мессенджер
Виктор · 2026-05-29 · via Все публикации подряд на Хабре

Средний

6 мин

11K

Звучит как мем про стартап, который пытается быть всем сразу. Я сам так думал примерно до середины разработки. Но в итоге мы это собрали, выкатили в App Store и Google Play, и теперь команды реально ведут в этом проекты. Расскажу, как оно устроено внутри, что было тупо, что неожиданно сработало, и где я до сих пор не уверен, что мы поступили правильно.

Сразу оговорюсь: это не «убийца Jira» и не «убийца Slack». Это попытка убрать одну конкретную боль, на которую я смотрел несколько лет.

Боль, из-за которой всё началось

Возьмите любую небольшую команду. Задачи живут в Jira или Trello. Обсуждение задач идёт в Telegram. Решения принимаются на созвоне в Zoom. Цифры лежат в Google Sheets. Деньги в 1С. А половина важного вообще теряется в переписке, потому что кто-то скинул голосовое, на него ответили реакцией, и через неделю никто не помнит, договорились мы или нет.

Я насчитал у себя пять открытых вкладок только чтобы понять статус одной задачи. Открыл таск, пошёл в чат искать контекст, нашёл ссылку на гуглдок, в гуглдоке ссылка на сообщение, сообщение удалено. Знакомо?

Самое обидное тут не количество инструментов. Обидно, что контекст рвётся на стыках. Задача в одном месте, разговор о ней в другом, а решение по ней в третьем. И на каждом переходе что-то теряется.

Мысль была простая до неприличия: а что если разговор, задача и решение будут жить в одном месте? Не «интеграция Jira со Slack через вебхук», а буквально одно окно. Чат, в котором у проекта есть свои задачи, свои цели и свой бюджет.

Главная идея: чат и есть рабочее место

В обычном режиме ONEMIX это мессенджер со сквозным шифрованием. Чаты, звонки, контакты. Ничего необычного.

Когда включаешь режим «Бизнес» (тумблер в профиле, привязан к аккаунту на сервере), поверх мессенджера разворачивается слой управления. И главная единица в нём это Орбита.

Орбита это групповой чат, который открывается не как переписка, а как рабочее пространство проекта. У него внутри команда, цели, задачи, деньги, риски и встроенный чат для обсуждения. То есть переписка по проекту никуда не уезжает, она просто становится одной из вкладок, а не отдельным приложением.

Вкладок семь, и за каждой стоит реальная сущность, а не картинка для красоты:

  • Обсуждение это тот самый чат проекта.

  • Цели хранят KPI с прогрессом. У цели бывает свой бюджет и фактическое значение, которое подтягивается из 1С.

  • Задачи это канбан из трёх колонок: ожидает, в работе, выполнено.

  • Связи ведут на другие проекты и на привязанные Советы (про них ниже).

  • В Бюджете лежат план, факт и транзакции, которые можно привязать к конкретной задаче.

  • Вызовы собирают риски, проблемы и блокеры с оценкой влияния.

  • Участники показывают команду, у каждого свой OTIF.

Понимаю, выглядит как фичелист. Но дело не в списке: когда сотрудник обсуждает задачу, ставит её и закрывает, он не уходит с одного экрана. Контекст не рвётся.

Кто кому может ставить задачи

Этой штукой я горжусь, и из-за неё же спорил сам с собой неделю.

В обычном таск-трекере иерархия чисто номинальная. Есть поле «исполнитель», и кто угодно может назначить задачу кому угодно. На бумаге у вас структура, на практике джун может повесить задачу техдиру, и система это спокойно проглотит.

Мы сделали режим иерархического чата, где у каждого участника есть ранг: целое число, где 1 это вершина. Ранги расставляются перетаскиванием, прямо пальцем в списке участников. Позиция в списке и есть ранг, цифры на бейджах пересчитываются на лету. Когда кто-то уходит из группы, нумерация автоматически сжимается, чтобы не было дыр.

А дальше правило, которое держит сервер, а не интерфейс. Поставить задачу можно только человеку рангом ниже. Не равному, не выше, только вниз. Если у вас права на это вообще есть. Менять статус чужой задачи тоже нельзя просто так: нужно и право, и ранг выше исполнителя. Сам исполнитель и автор задачи статус меняют всегда, тут без сюрпризов.

Почему на сервере, а не на клиенте? Потому что любая проверка на клиенте это вежливая просьба, а не правило. Перехватил запрос, поправил ранг в теле, и всё. Поэтому решение принимает бэкенд: смотрит ранг создателя, ранг исполнителя, права ранга, и либо пускает, либо отвечает «задачи ставятся только нижестоящим».

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

Я долго сомневался, не слишком ли это жёстко для мессенджера. Люди привыкли, что в чате все равны. Но как только появляется слово «подчинение», мягкие правила перестают работать, их просто обходят. Либо вертикаль есть и она настоящая, либо её нет.

Совет: когда решает не один человек

Был вопрос, который я недооценил на старте. Часть решений в команде не должен принимать один человек. Двигать ли дату релиза, брать ли этого подрядчика, тратить ли вот эти деньги. Обычно это решается на созвоне, а потом половина участников помнит итог по-разному.

Поэтому есть второй тип пространства, Совет. Это группа, где вопрос выносится на голосование с кворумом, а результат архивируется и не теряется.

Механика простая. Создаёшь голосование: вопрос, варианты от двух до шести, процент кворума, срок. Каждый участник голосует один раз, переголосовать можно. Кворум считается как доля проголосовавших. Когда явка добирает до порога, голосование закрывается само, побеждает вариант с большинством.

И вот связка, ради которой всё затевалось. Совет можно привязать к Орбите. И если решение одобрено, оно автоматически превращается в задачу внутри той самой Орбиты, с уже заполненными полями. В чат проекта падает сообщение «из Совета пришла задача». Совет решает, Орбита исполняет. Решение не повисает в воздухе абстрактным «ну мы вроде договорились», оно сразу становится конкретной работой с исполнителем и сроком.

Тут я наступил на грабли. Первая версия предлагала голосовать вообще по любому поводу. И команды быстро устали, потому что 90% задач это рутина, по которой голосовать незачем. Поэтому перед созданием важной задачи мы добавили AI-проверку: модель смотрит на задачу и говорит, это рутина, это стоит обсудить, или это уровень «трогает деньги, стратегию или людей, выноси на голосование». Только в последних случаях предлагается Совет. Иначе задача создаётся как есть.

OTIF, а не «эффективность от балды»

Метрики продуктивности это болото. Очень легко нарисовать сотруднику «эффективность 73%» из воздуха и обидеть человека цифрой, за которой ничего не стоит.

Мы взяли OTIF, On Time In Full. По-человечески: задача закрыта в срок и полностью. Закрыл до дедлайна, OTIF засчитан. Закрыл после, не засчитан, с пометкой «просрочено». Без полутонов и без магии. Эта цифра копится по каждому человеку и по проекту целиком, и она хотя бы означает ровно то, что написано, а не «алгоритм так решил».

Можно спорить, что OTIF слишком грубый. Согласен. Но грубая честная метрика лучше точной выдуманной.

Лира: AI-директор, и тут мне до сих пор не по себе

Это самая спорная часть, и гладкой я её не назову.

Лира это AI-надстройка, которая работает в паре с десктоп-приложением и подключается к ONEMIX через QR-код. Утром она пишет сотруднику план на день, вечером спрашивает, как прошло. Если задача висит больше трёх дней, напоминает. Если продуктивность падает три дня подряд, эскалирует руководителю.

А теперь часть, из-за которой заголовок не врёт. Лира умеет смотреть на то, что происходит на экране сотрудника, и по итогу задачи ставить вердикт: выполнено грамотно, частично, с отвлечениями, не выполнено. За этим стоит Claude.

Я несколько раз останавливался и думал, а не перебор ли это. Есть что-то неуютное в том, что AI весь день смотрит на чужой экран и в конце выносит приговор. С одной стороны, это даёт руководителю объективную картину вместо «мне кажется, он филонит». С другой стороны, это ровно тот инструмент, который легко превратить в цифровой надзор.

Поэтому включается это осознанно, а не по умолчанию, и так правильно. Но называть это однозначно хорошей штукой я не стану. Инструмент мощный и с очевидной тёмной стороной, а куда он повернётся, решает тот, кто его включил.

Кабинет руководителя

Когда проектов становится больше одного, нужен вид сверху. Для этого есть Мостик: все Орбиты сразу, общий OTIF крупной цифрой, блок «требуют внимания» с просрочками и активными голосованиями, сетка карточек проектов.

И отдельный экран «Дерево связей», где видно всю наследственность: проект, его цели, задачи под целями, риски, Советы, бюджет, дочерние проекты. С графиками, для тех, кто любит смотреть на burndown.

Что было сложно и что я понял

Сквозное шифрование и серверная логика задач конфликтуют по духу. Сообщения мы шифруем на клиенте, сервер их не читает. Но задачи, ранги и голоса серверу видеть надо, иначе правила невозможно держать. Пришлось чётко развести, что end-to-end, а что нет, и не делать вид, что всё подряд зашифровано. Врать пользователю про шифрование это худшее, что можно сделать.

Соблазн переписать Jira был огромный. Каждую неделю хотелось добавить ещё поле, ещё статус, ещё тип связи. Я держался за одно правило: если фича не убирает переключение между окнами, её здесь быть не должно. Иначе получился бы очередной комбайн, ради бегства от которого всё и начиналось.

Названия мы переделывали мучительно. Внутри это были ЦУП, ЕЦУП, ЦПР, аббревиатуры из методичек по управлению. Живой человек на это смотрит и ничего не понимает. В итоге пришли к Орбита, Мостик, Совет, Кворум. В коде, кстати, до сих пор лежат старые имена файлов, потому что переименовывать сущности на проде это отдельный вид боли.

AI-гейт на задачах сначала ошибался в обе стороны: то предлагал голосовать по ерунде, то пропускал важное. Это не магия, это модель с промптом, и её надо настраивать на реальных задачах, а не на представлении о том, как люди формулируют задачи. Люди формулируют их коряво.

Стоило ли оно того? Для команд, которые реально живут в чате, да. Контекст перестал рваться, и это чувствуется на третий день, а не в графиках. Для команд, у которых уже выстроен процесс на больших инструментах, скорее нет, и я не буду их переубеждать.

Если дочитали, скину два вопроса, на которые правда хочу услышать ответ. Жёсткая вертикаль прямо в чате это разумно или противоестественно? И AI, который смотрит на экран и ставит оценку, где для вас граница между контролем и слежкой? Накидайте в комментарии, отвечу каждому.

Где попробовать

Попробовать можно сразу, без демо и без переговоров. Скачайте приложение на свой телефон и заведите тестовый чат с коллегой: