docs(agents): добавлена настройка инженерных навыков
- Зачем: - инженерным навыкам нужны единые правила хранения задач и документов предметной области. - Что: - настроено локальное хранилище задач с веточным жизненным циклом. - добавлены стандартные состояния triage и схема single-context. - добавлены ссылки на настройки в AGENTS.md. - Проверка: - git diff --cached --check.
This commit is contained in:
1 parent
fdf744e578
commit
1a422a4ead
4 files changed
+110
No files matched your search
@@ -66,3 +66,17 @@ This repository contains personal dotfiles and configurations for a highly produ
|
||||
Документы, комментарии и объяснения держи короткими и понятными читателю, который их не писал: простые слова, короткие фразы, сложную мысль поясняй при первом упоминании (помни про менти-неспециалиста). Если понятность и буквальная точность спорят — выбирай понятность. Правило касается и текста, и заголовков разделов.
|
||||
|
||||
Внутренние рассуждения и промежуточные пометки по ходу работы веди на английском — он экономнее по токенам (кириллица занимает примерно в 1,5–2 раза больше). На русском остаётся всё, что видит и хранит проект: итоговые ответы пользователю, документы, комментарии в коде и сообщения коммитов.
|
||||
|
||||
## Agent skills
|
||||
|
||||
### Issue tracker
|
||||
|
||||
Задачи хранятся в отслеживаемых Git Markdown-файлах текущей ветки под `.scratch/`. Перед `merge --no-ff` они удаляются. См. `docs/agents/issue-tracker.md`.
|
||||
|
||||
### Triage labels
|
||||
|
||||
Используются стандартные названия состояний triage. См. `docs/agents/triage-labels.md`.
|
||||
|
||||
### Domain docs
|
||||
|
||||
Используется схема single-context: корневой `CONTEXT.md` и общие ADR в `docs/adr/`. См. `docs/agents/domain.md`.
|
||||
@@ -0,0 +1,34 @@
|
||||
# Документы предметной области
|
||||
|
||||
Репозиторий использует схему single-context.
|
||||
|
||||
## Что читать перед изучением репозитория
|
||||
|
||||
- Корневой `CONTEXT.md`, если он существует.
|
||||
- Относящиеся к задаче ADR из `docs/adr/`, если они существуют.
|
||||
|
||||
Отсутствие этих файлов не считается ошибкой. Не нужно предлагать создать их
|
||||
заранее: навык `/domain-modeling` создаёт их по мере появления устойчивых
|
||||
терминов и архитектурных решений.
|
||||
|
||||
## Структура
|
||||
|
||||
```
|
||||
/
|
||||
├── CONTEXT.md
|
||||
└── docs/
|
||||
└── adr/
|
||||
```
|
||||
|
||||
## Термины
|
||||
|
||||
В названиях задач, предложениях по изменению, гипотезах и тестах нужно
|
||||
использовать термины из `CONTEXT.md`.
|
||||
|
||||
Если нужного понятия нет, сначала следует проверить, не вводится ли лишний
|
||||
синоним. Настоящий пробел в словаре нужно передать навыку `/domain-modeling`.
|
||||
|
||||
## Противоречия с ADR
|
||||
|
||||
Если предлагаемое изменение противоречит существующему ADR, это нужно явно
|
||||
указать, а не молча отменять принятое решение.
|
||||
@@ -0,0 +1,47 @@
|
||||
# Хранилище задач: локальные Markdown-файлы
|
||||
|
||||
Задачи и спецификации этого репозитория хранятся в `.scratch/`.
|
||||
|
||||
## Структура
|
||||
|
||||
- Одна возможность на каталог: `.scratch/<feature-slug>/`.
|
||||
- Спецификация: `.scratch/<feature-slug>/spec.md`.
|
||||
- Каждая задача хранится в отдельном файле:
|
||||
`.scratch/<feature-slug>/issues/<NN>-<slug>.md`.
|
||||
- Нумерация задач начинается с `01`.
|
||||
- Состояние triage записывается строкой `Status:` в начале файла.
|
||||
- Обсуждение дописывается в конец файла под заголовком `## Comments`.
|
||||
|
||||
## Жизненный цикл
|
||||
|
||||
- Файлы в `.scratch/` отслеживаются Git.
|
||||
- Они принадлежат рабочей ветке и считаются эфемерными.
|
||||
- Перед `merge --no-ff` относящийся к ветке каталог `.scratch/<feature-slug>/`
|
||||
удаляется и удаление фиксируется в этой же ветке.
|
||||
- После слияния содержимое задач остаётся доступно в истории Git.
|
||||
|
||||
## Публикация задачи
|
||||
|
||||
Когда навык просит опубликовать задачу, нужно создать файл внутри
|
||||
`.scratch/<feature-slug>/`, при необходимости создав каталог.
|
||||
|
||||
## Получение задачи
|
||||
|
||||
Нужно прочитать файл по переданному пути. Обычно пользователь указывает путь
|
||||
или номер задачи.
|
||||
|
||||
## Работа `/wayfinder`
|
||||
|
||||
Карта работы хранится отдельно от дочерних задач:
|
||||
|
||||
- Карта: `.scratch/<effort>/map.md`.
|
||||
- Дочерняя задача: `.scratch/<effort>/issues/NN-<slug>.md`.
|
||||
- Строка `Type:` содержит тип: `research`, `prototype`, `grilling` или `task`.
|
||||
- Строка `Status:` содержит состояние `claimed` или `resolved`.
|
||||
- Зависимости перечисляются строкой `Blocked by: NN, NN`.
|
||||
- Задача свободна, если она открыта, не заблокирована и не занята.
|
||||
- Из нескольких свободных задач первой выбирается задача с меньшим номером.
|
||||
- При взятии задачи нужно установить `Status: claimed` и сохранить файл.
|
||||
- При завершении нужно добавить ответ под заголовком `## Answer`, установить
|
||||
`Status: resolved` и добавить краткий итог со ссылкой в раздел решений
|
||||
файла `map.md`.
|
||||
@@ -0,0 +1,15 @@
|
||||
# Состояния triage
|
||||
|
||||
Навыки используют пять стандартных ролей. Для локального хранилища выбранное
|
||||
значение записывается в строке `Status:` файла задачи.
|
||||
|
||||
| Роль навыка | Значение `Status:` | Смысл |
|
||||
| --- | --- | --- |
|
||||
| `needs-triage` | `needs-triage` | Задачу должен оценить сопровождающий |
|
||||
| `needs-info` | `needs-info` | Нужна дополнительная информация от автора |
|
||||
| `ready-for-agent` | `ready-for-agent` | Задача полностью описана и готова для агента |
|
||||
| `ready-for-human` | `ready-for-human` | Задачу должен выполнить человек |
|
||||
| `wontfix` | `wontfix` | Задача не будет выполняться |
|
||||
|
||||
Когда навык упоминает роль triage, нужно использовать соответствующее значение
|
||||
из этой таблицы.
|
||||
Reference in new issue
Block a user