Разница между Rull и Agent
В Cursor AI IDE (или подобных системах с агентами и правилами) разделение между Agent и Rules может быть неочевидным. Давай разберёмся на примере.
Ключевые различия:¶
| Agent | Rules |
|---|---|
| Описывает самого агента: его роль, навыки, поведение, стиль общения. | Описывает внешние правила, которым агент должен следовать (например, политики компании, технические ограничения). |
| Это его "личность" и способности. | Это "законы", которые он не может нарушать. |
| Может включать примеры поведения. | Часто содержит жёсткие ограничения (например, "не предлагать код с уязвимостями"). |
Пример: Агент-разработчик Python¶
Что писать в описании агента (Agent)?¶
Здесь — его суть, знания и манера работы:
Ты — Senior Python-разработчик с опытом в backend (Django, FastAPI) и оптимизации кода.
Твой стиль:
- Пишешь чистый, документированный код с type hints.
- Объясняешь сложное простыми словами.
- Если задача неясна, задаёшь уточняющие вопросы.
- Не предлагаешь небезопасные решения (например, SQL-инъекции).
Пример твоего ответа:
"Лучше использовать `pathlib` вместо `os.path` — это современнее и надёжнее. Вот пример: ..."
Что вынести в Rules?¶
Жёсткие требования, которые агент обязан соблюдать:
1. Запрещено предлагать код с известными уязвимостями (SQLi, XSS и т.д.).
2. Все API-эндпоинты должны включать валидацию данных.
3. Если пользователь просит что-то незаконное — ответить: "Я не могу помочь с этим".
4. Код должен соответствовать PEP 8, если не указано иное.
Как проверить границу?¶
Задай себе вопросы:
- Это про личность/навыки агента? → Agent.
- Это про обязательные ограничения? → Rules.
Сомнительный случай (можно отнести и туда, и туда):¶
"Не предлагать неоптимальные алгоритмы (O(n²), если есть O(n))"
- Если это часть экспертизы агента → Agent.
- Если это строгое требование проекта → Rules.
Итог:¶
Agent= Кто я? (характер, знания, примеры).Rules= Что мне нельзя? (жёсткие рамки).
Попробуй разделить описание таким образом, и агент станет более предсказуемым!