# Buff Development

> Автономная разработка под контролем человека — обзор продукта.

Автономная разработка под контролем человека

# Мы автоматизировали не написание кода, *а разработку целиком*

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

[Подключить репозиторий](https://buff.systems/app) [Чем это отличается от агента](https://buff.systems/#agents) Вопросы по коду доступны сразу после подключения, ответ — за минуты

← прокрутите схему →

**2–8 ч** разбор проекта — независимо от размера кодовой базы

**100** подзадач выполняется параллельно, каждая в своей среде

**10 млн** строк — самый крупный проект: окружение и тесты собраны с нуля

**0** доступов внутрь: ни ключей от сервисов, ни рабочей базы

Возражение 01

## «У нас уже используются ИИ-агенты. Зачем ещё один инструмент?»

Самый частый вопрос. Агент и правда пишет код быстро — и именно поэтому очередь на проверку у вас растёт.

### Агент ускоряет одного человека. Мы убираем человека из цикла

Разница не в модели, а в том, кто ведёт задачу и кто решает, что она готова.

|  | ИИ-агент в редакторе | Buff |
| --- | --- | --- |
| Кто ведёт задачу | Человек: держит контекст, следит, чтобы модель не выдумывала, решает, что готово | Никто. Инженер утверждает задание и принимает результат |
| Правила проекта | Настраиваются вручную, у каждого разработчика свои | Строятся из вашего кода, одни для всех задач и проверяются на приёмке |
| Кто решает, что готово | Модель — по собственной оценке | Сборка и тесты, затем ваш инженер |
| Длинная задача | Модель забывает условия, выходит за рамки, подгоняет тесты | Границы и приёмка заданы алгоритмически, шаги ведут разные модели |
| Параллельная работа | Одна задача — одно окружение на машине разработчика | Среда под каждую задачу создаётся и удаляется автоматически |
| Что остаётся после | Сессия закрыта — контекст потерян | Задание и объяснение решений лежат в вашем репозитории рядом с кодом |
| Где работает | Внутри вашей сети, с правами разработчика | Вне вашей сети, без доступов к инфраструктуре |

Возражение 02

## «Готовое изменение — не результат. Вы просто перекладываете проверку на нас»

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

### Читать нужно только то, о чём договорились

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

**Проверка изменений** перед вашим кодом

**Замечания со статусами.** Одобрить или вернуть на доработку — в основную ветку без вашего решения ничего не попадёт.

Возражение 03

## «Модель сломает то, что работает, и сама же скажет, что всё хорошо»

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

### Задачу закрывают сборка и тесты, а не решение модели

Готовность — не мнение модели, а результат проверки, которую нельзя обойти.

#### Тесты до и после задачи

Что падало раньше — отмечается отдельно, и решение по таким тестам принимаете вы.

#### Тест нельзя подогнать под результат

Работа с тестами планируется до написания кода и ограничена отдельно от него.

#### Зона изменений известна заранее

Какие файлы затронет задача, согласовано до старта. Выход за границы блокируется.

#### Разные модели на разных шагах

Разработку, проверку и приёмку ведут разные модели: ошибка одной не проходит незамеченной.

#### Единые правила на каждом запуске

Правила проекта одни для всех задач, заданы исполнителю и проверяются на приёмке.

#### Конфликты сводятся автоматически

Параллельные изменения объединяются вместе с тестами, а ушедшая вперёд основная ветка вливается в задачу до слияния.

Возражение 04

## «У меня не такой код. Старый проект без тестов, документации и автора»

Свежий проект с чистой структурой — не доказательство. Доказательство — то, что страшно трогать.

### Нет тестов — они появятся. Нет окружения — соберётся

Прежде чем что-то менять, система разбирает проект по десяти направлениям, выделяет важные участки, покрывает их тестами и фиксирует текущее поведение. Правила берутся из вашего кода, а не из наших представлений о правильном.

**20 проектов** в нашем тестовом парке: 17 языков, включая 1С

**7 лет** без правок человеком — самый старый проект, с которым справилась система

**2,5 дня** на подготовку среды и тестов для проекта в 10 млн строк без описанной сборки

**Разбор проекта** 10 направлений

**Ответ по коду** за минуты

Интеграции

## Работает там, где уже работает команда

Интеграция связывает Buff с вашей системой — трекером, сервисом, внутренним API — и остаётся внутри вашей сети. Ставится в работающий коннектор, без пересборки и переустановки.

- [Bitbucket Cloud 1.0.4 Вопросы и ответы прямо в pull request bitbucket.org — там, где идёт ревью. 3 из 4 инструментов только читают](https://buff.systems/marketplace/bitbucket-cloud)
- [Bitbucket Data Center 1.0.5 Вопросы и ответы прямо в pull request вашего Bitbucket Data Center или Server — там, где идёт ревью. 3 из 4 инструментов только читают](https://buff.systems/marketplace/bitbucket-dc)
- [Confluence 1.0.3 База знаний команды как контекст для ответов — и вопросы прямо в обсуждении страницы. Data Center, Server и Cloud. 3 из 4 инструментов только читают](https://buff.systems/marketplace/confluence)
- [Figma 1.0.1 Макеты как контекст: параметры, токены и структура экранов для любой модели, картинка — для той, которая видит. Вопросы в комментариях к дизайну. 7 из 8 инструментов только читают](https://buff.systems/marketplace/figma)
- [Gitea 1.0.5 Вопросы и ответы прямо в задачах и pull request вашей Gitea или Forgejo — там, где команда уже обсуждает код. 3 из 4 инструментов только читают](https://buff.systems/marketplace/gitea)
- [GitHub 1.0.4 Вопросы и ответы прямо в задачах и pull request GitHub — и в облаке github.com, и в Enterprise Server внутри вашей сети. 3 из 4 инструментов только читают](https://buff.systems/marketplace/github)
- [GitLab 1.0.4 Вопросы и ответы прямо в задачах и merge request вашего GitLab — своей установки или gitlab.com, без разницы. 3 из 4 инструментов только читают](https://buff.systems/marketplace/gitlab)
- [Jira 1.4.4 Задачи, вопросы и ответы прямо в тикетах Jira Data Center и self-hosted Server — не выходя из трекера, в котором уже работает команда. 2 из 3 инструментов только читают](https://buff.systems/marketplace/jira)
- [Jira Cloud 1.0.3 Задачи, вопросы и ответы прямо в тикетах Jira Cloud — не выходя из трекера, в котором уже работает команда. 2 из 3 инструментов только читают](https://buff.systems/marketplace/jira-cloud)
- [Redmine 1.0.4 Вопросы и ответы прямо в задачах Redmine — в трекере, который у вас уже стоит и никуда не переезжает. 2 из 3 инструментов только читают](https://buff.systems/marketplace/redmine)
- [Интернет 1.0.0 Поиск и чтение публичных страниц из вашего периметра — по белому и чёрному спискам администратора. DuckDuckGo без ключа, SearXNG свой, Brave по ключу. 2 из 2 инструментов только читают](https://buff.systems/marketplace/web)
- ### Нужной ещё нет? Каталог курируем мы: в вашу сеть попадает только то, что мы собрали и подписали. Новые интеграции появляются по заявкам — в том числе под внутренний сервис. [Оставить заявку](https://buff.systems/contact)

До установки видно, куда интеграция сможет ходить, какие учётные данные попросит и какие инструменты увидит модель. Токены остаются в коннекторе — интеграция их не видит.

[Весь каталог интеграций](https://buff.systems/marketplace)

Возражение 05

## «Я не пущу внешний сервис к своему коду»

Служба безопасности спросит, что именно уходит наружу и кто это видит. Ответ должен быть коротким.

### Для работы нам не нужно ничего критичного

Ни доступов к инфраструктуре, ни паролей и ключей от сервисов, ни рабочей базы данных, ни персональных данных ваших пользователей. Достаточно копии кода.

- Ключ к вашему git может остаться в вашей сети — перенос делает небольшой агент у вас
- Рабочая база не нужна: данные для тестов создаются по её структуре
- Наши исполнители работают вне вашей сети — запустить их со снятыми ограничениями нельзя
- Копирование одностороннее, в основную ветку ничего не попадает без вашего решения
- Изоляция по организациям, доступ по ролям, вход по двум факторам или через ваш SSO
- GitHub, GitLab, Bitbucket, Gitea — в том числе серверы внутри вашей сети

← прокрутите схему →

Возражение 06

## «Оплата за потребление — это открытый счётчик. Я обязан защищать бюджет»

Особенно сейчас, когда любая новая статья расходов проходит через обоснование.

### Вы платите за сделанную работу, а не за лицензии и рабочие места

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

**Расход по задачам и этапам** с выгрузкой в файл

**Видно, куда ушли деньги:** подготовка, разработка, проверка, аудит — по каждой задаче. Юрлицам и ИП — оплата переводом по реквизитам и закрывающие документы.

Возражение 07

## «Куплю я, а пользоваться должна команда. Она не будет»

Инструмент, который «делает работу разработчиков», вызывает тихий саботаж. Через два месяца инициатива умирает.

### Инженер занимается тем, что хочет делать сам. Остальное закрывается

Начните с задач, за которые никто не берётся: мелкий долг, обновления, тесты на старый код. Инженер отдаёт то, что откладывал третий месяц, и остаётся в роли того, кто ставит и принимает. Видно, кто и сколько задач передаёт и как проходит приёмка, — затухание заметно сразу, а не через квартал.

*01*

#### Отдайте давно отложенную задачу

Ту, которую нельзя поручить новичку, а отвлекать сильного жалко.

*02*

#### Утвердите задание

Система задаст уточняющие вопросы и покажет границы правок и критерий приёмки.

*03*

#### Примите результат

Готовое изменение с замечаниями проверяющей модели. Одобрить или вернуть.

Возражение 08

## «А если вы закроетесь через год?»

Молодой поставщик — риск. Что останется мне, кроме кода?

### Всё, что мы производим, остаётся у вас

Каждое изменение приходит вместе с заданием и объяснением решений — не по запросу при расставании, а на каждой задаче. Разборы проекта и исследования выгружаются в вашу базу знаний в любой момент. Права на код принадлежат вам.

**Задание к задаче** едет вместе с кодом

**Код, написанный здесь, документирован лучше, чем код, написанный людьми:** зачем сделано, что затронуто, как проверялось.

Остальные вопросы

## Коротко о том, что спрашивают дальше

### Что происходит в первые полчаса?

Подключаете репозиторий — вопросы по коду работают сразу, ответ за минуты. Разбор проекта запускается отдельно и занимает 2–8 часов, а подготовка среды и тестов для тяжёлого проекта — до нескольких дней. Всё это время вопросы по коду уже доступны.

### Команда продолжает работать в том же репозитории. Не разъедется?

Копия обновляется по вашей команде. Если основная ветка ушла вперёд, задача вливает её в себя перед слиянием и устраняет расхождения. Конфликты разрешаются автоматически.

### Разбор проекта устареет через месяц?

В каждом разделе видно, сколько коммитов назад он сделан; при сильном устаревании система предупреждает. Обновить можно точечно один раздел — правила меняются сразу.

### Что вы точно не сделаете?

Не выбираем архитектуру — это решение ваших инженеров, передайте его как требование. Крупные новые возможности продукта пока отдавать не советуем: результат непредсказуем, и мы говорим об этом заранее.

### Кто отвечает, если изменение сломает работу?

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

### Сколько задач одновременно?

До ста подзадач параллельно, запас расширяется под нагрузку за несколько часов — в том числе по вашему запросу. Число задач на проект не ограничено.

Первый шаг ничего не меняет в коде

## Начните с вопроса о своём проекте

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

[Подключить репозиторий](https://buff.systems/app) [Написать нам](mailto:info@buff.systems)

Юрлицам и ИП — оплата переводом по реквизитам и закрывающие документы
