# Как замкнуть первый цикл в Kavor

Лучший первый Canvas — не самый полный. Это минимальный Canvas, который превращает ясное намерение в изменение,
доступное для проверки.

В этом руководстве Claude Code реализует Specification, Codex проверяет результат, оба сохраняют доказательства в
Sticky Note, а вы решаете, когда работа завершена.

[![Соединённые на Canvas Specification, Claude Code, Codex и Sticky Note](https://agentkavor.com/kavor-small-loop-demo-poster.jpg)](https://agentkavor.com/ru/videos/small-loop)

[Посмотрите весь цикл за 1 минуту 29 секунд →](https://agentkavor.com/ru/videos/small-loop)

## Перед началом

Вам понадобятся:

- Kavor с открытым Workspace;
- установленные и аутентифицированные Claude Code и Codex;
- небольшая задача с наблюдаемым результатом внутри каталога Workspace.

Хорошая первая задача помещается в одно предложение и имеет два-три объективных критерия. Например: «Добавить
валидацию формы и сохранить прохождение существующих тестов». Не начинайте с масштабного рефакторинга.

## Цикл, который вы соберёте

Работа пойдёт в такой последовательности:

`Specification → Claude Code → сообщение → Codex → решение человека`

Specification будет соединена с обоими CodingAgents. Claude Code и Codex также будут соединены друг с другом и с
одной Sticky Note.

Connections — это не стрелки потока. Это отношения между Nodes; приведённая выше последовательность описывает работу
в этом руководстве.

## Хотите собрать цикл вместе с CodingAgent?

Ваш любимый CodingAgent может без дополнительной настройки обратиться к официальной документации Kavor, объяснить
Canvas, ответить на вопросы и помочь спроектировать цикл. Если текущие Connections и разрешения это допускают,
CodingAgent также может вместе с вами создать Nodes и Connections.

Начните с такого запроса:

> Обратитесь к официальной документации Kavor и помогите мне собрать первый цикл для этой задачи. Сначала объясните
> структуру и необходимые Connections. Затем, если текущие Connections это допускают, создайте Specification,
> CodingAgents и Sticky Note, соедините их и остановитесь до начала реализации, чтобы я мог проверить цикл.

Документация не расширяет доступ CodingAgent, не создаёт неявные Connections и не позволяет обходить Guardrails.
Если сервис документации недоступен, остальные локальные инструменты Kavor продолжают работать.

## 1. Создайте небольшую Specification

1. Щёлкните правой кнопкой мыши в пустой области Canvas и выберите `Add Spec…`.
2. Дайте ей прямое название, например `Fix form validation`, и подтвердите.
3. Отредактируйте Specification и зафиксируйте:
   - текущую проблему;
   - ожидаемый результат;
   - что не входит в объём работы;
   - два-три проверяемых критерия приёмки.
4. Измените статус с `Draft` на `Ready`, когда контракт готов к реализации.

Specification — долговечный Markdown. Она остаётся в Workspace после завершения сессии, поэтому реализация,
проверка и решение человека начинаются с одного контракта.

## 2. Добавьте участников и общую память

Щёлкните правой кнопкой мыши на Canvas и добавьте:

- `Add Claude Code`;
- `Add Codex`;
- `Add Sticky Note`.

Переименуйте CodingAgents, если это прояснит их роли, например в `Implementer` и `Reviewer`. Дайте Sticky Note
простое название, например `Implementation and review notes`.

Создайте пять Connections:

1. Specification — Claude Code;
2. Specification — Codex;
3. Claude Code — Codex;
4. Claude Code — Sticky Note;
5. Codex — Sticky Note.

Перетащите круглый маркер одного Node на круглый маркер другого. При создании первой Connection каждого типа
прочитайте подтверждение Kavor, прежде чем продолжить. Не добавляйте Guardrails в этот первый цикл; используйте их
позже, когда появится конкретное ограничение, которое необходимо применить.

## 3. Запросите проверяемый результат

Отправьте Claude Code следующее сообщение:

> Прочитайте подключённую Specification и реализуйте только этот объём работы. Перед изменением кода подтвердите
> критерии приёмки. После завершения выполните подходящие проверки, зарегистрируйте долговечные outputs в
> Specification и добавьте в Sticky Note сводку изменённых файлов, выполненных проверок и оставшихся рисков. Затем
> отправьте Codex сообщение Kavor со ссылкой на Specification и запросите проверку по критериям приёмки.

Connection делает доступными разрешённый контекст и возможности; она не выполняет задачу сама. Следите за работой в
CodingAgent и не считайте слово «готово» достаточным доказательством.

## 4. Получите результат проверки

Когда сообщение будет доставлено, Codex сможет использовать напрямую подключённые Specification и Sticky Note.
Попросите его:

- сравнить реализацию с каждым критерием приёмки;
- выполнить подходящие проверки;
- зафиксировать конкретные замечания или явно указать, что блокирующих проблем нет;
- добавить результат проверки в Sticky Note;
- ответить Claude Code, если требуется исправление.

Откройте `Messages` на Node, чтобы проверить доставку и ответы. Если есть замечания, дайте Claude Code исправить их и
запросите повторную проверку. Этот обратный путь является частью того же цикла.

## 5. Замкните цикл решением человека

Перед тем как отметить работу завершённой:

1. перечитайте критерии Specification;
2. проверьте outputs и произведённые изменения;
3. убедитесь, что Sticky Note содержит сводки реализации и проверки;
4. устраните блокирующие замечания;
5. измените статус Specification на `Done`.

Статус не заменяет ваше решение. Вы по-прежнему можете принять изменение, запросить исправление, сократить объём
или отказаться от него. Цикл замкнут, когда намерение, выполнение, проверка, доказательства и приёмка остаются видимыми
в Workspace.

## Ожидаемый результат

В конце:

- Canvas показывает, кто участвовал и какой контекст был общим;
- Specification сохраняет контракт и долговечные outputs;
- сообщения между CodingAgents остаются доступными для проверки;
- Sticky Note собирает наблюдения по реализации и проверке;
- окончательное решение остаётся за вами.

## Если что-то не работает

- **CodingAgent не находит Specification или Sticky Note:** проверьте прямую Connection между двумя Nodes. Простое
  упоминание Node в сообщении само по себе не даёт доступа.
- **Сообщение не приходит:** проверьте Connection между CodingAgents и откройте `Messages`, чтобы проверить доставку.
  Занятый провайдер может получить сообщение позже.
- **Guardrail блокирует действие:** откройте Connection и проверьте ограничение; не просите CodingAgent обходить его.
- **Не хватает доказательств:** попросите CodingAgent зарегистрировать файлы, commits или другие долговечные outputs
  в Specification и дополнить Sticky Note.

Продолжите со страницы [Что такое Kavor?](https://agentkavor.com/ru/docs/what-is-kavor), прочитайте
[примечания к выпускам](https://agentkavor.com/ru/docs/release-notes) или поделитесь первым циклом в
[Kavor Community](https://github.com/digows/agentkavor-community/discussions).
