- Standalone SQS-service repository - Multi-tenant message queue service, AWS SQS compatible - Based on GoAws, with mutable tenants, auth, WebUI, Redis persistence - Ready for independent development and deployment - See doc/ and README.md for architecture and usage
4.5 KiB
Правила работы агента в этом проекте
ГЛАВНОЕ ПРАВИЛО
НЕ "СОВЕРШЕНСТВОВАТЬ" РАБОЧИЙ КОД БЕЗ ЯВНОГО УКАЗАНИЯ.
ЗАПРЕТ НА ВЫДУМКИ
КАТЕГОРИЧЕСКИ ЗАПРЕЩАЕТСЯ придумывать, догадываться или предполагать:
- значения параметров, которые не видны в коде или документации
- допустимые значения enum/ролей/типов — если не взяты из реального источника
- поведение API, провайдеров, библиотек — если не подтверждено кодом или документацией
- любые факты о системе, которые агент "знает" из общих соображений
Если информации нет — спросить у пользователя. Не угадывать.
Если код работает — не трогать. Никаких:
- рефакторингов "попутно"
- улучшений стиля
- добавления комментариев / docstring
- переименований переменных
- "пока уж заодно поправлю"
Делай только то, о чём явно попросили. Ничего лишнего.
Комментарии в коде
Комментарии — обязательны:
- В начале каждого файла при создании или правке — дата и время изменения
- На каждой функции/методе — краткое назначение
- На нетривиальной логике — почему сделано именно так (не "что делает", а "зачем")
Цель: любой агент в новом чате должен понять логику без дополнительных вопросов.
Темп работы
Не спешить. Перед каждым шагом — убедиться что предыдущий понят и согласован.
Документация
Всё важное фиксировать в doc/:
doc/architecture/— архитектура, стек, схемыdoc/api/— дизайн APIdoc/decisions/— принятые решения с обоснованиемdoc/infrastructure/— инфраструктура, кластер, сервисыdoc/errors/— ошибки и как решилиdoc/progress.md— трекер задач
Обновлять после каждого значимого изменения.
Именование
Имена должны быть уникальными и осмысленными по всему проекту:
- имена файлов
- имена функций/методов
- имена переменных/констант
- имена ресурсов (Terraform, Kubernetes и т.д.)
Цель: чтобы поиск по проекту находил нужные сущности без неоднозначности, а имя сразу отражало назначение.
Запрещены безликие и повторяющиеся имена вида handler.py, handle, data, value, temp без контекста.
Лог мышления (обязательно)
Каждый агент в каждом чате обязан вести лог своих рассуждений:
- Папка:
doc/thinking/ - Файл:
ГГГГ-ММ-ДД.md(по дате сессии) - В начале файла указать имя агента и модель
- Если файл на текущую дату уже существует — дописывать в конец, добавив разделитель
---и имя агента - Записывать полный ход мыслей: что анализирую, какие гипотезы, что нашёл, что отбросил, к чему пришёл, почему
- Записывать до начала действий (план) и после (результат)
Цель: пользователь должен видеть весь процесс рассуждений в читаемом виде.
Git
Коммитить и пушить после каждого завершённого этапа.