DeepSeek Harness
Меню глав

← К оглавлению

Правила AGENTS.md на сервере

Правила AGENTS.md на сервере DSH

Это страховка: агент читает запреты из файла, а не из вашей памяти. У вас на сервере правила уже разложены — глава объясняет что где лежит, что внутри и как проверить / обновить.


Зачем это нужно

На сервере DSH агент часто работает с правами root. Без жёстких правил он может:

  • полезть в /etc или соседний проект;
  • закоммитить в main;
  • вытащить секреты в ответ;
  • «заодно» сделать деплой туда, куда не просили.

AGENTS.md — тот же смысл, что .cursor/rules в Cursor, только файл лежит на сервере и виден в каждом workspace.


Где лежат файлы (уже установлено)

Путь Что это
/root/AGENTS.md Глобальные правила для всего сервера
/root/projects/AGENTS.md Та же копия «рядом с проектами»
/root/projects/<имя>/AGENTS.md Правила этого проекта (+ заголовок с именем)

Сейчас покрыты проекты: backup, lovetc, maiai, rigintel-form, seo-server, sverka, telegram, textorub.

Папка служебного репо dsh (доки/скрипты) скриптом пропускается — туда правила проекта не кладутся специально.

Шаблоны и скрипт установки живут в репозитории dsh (не в учебнике):

  • templates/AGENTS.root.md → глобальный файл
  • templates/AGENTS.project.md → файл в каждом проекте
  • scripts/install-agents-rules.sh → раскладывает всё одной командой

Что запрещено (кратко)

Файлы и система

  • Менять файлы вне текущей папки проекта.
  • Трогать /etc/dsh.env, credentials DSH, nginx htpasswd, launch-token.
  • Массовые разрушительные команды (rm -rf / и т.п.), правки firewall/ssh «от себя».

Git

  • Работать в main без явного разрешения владельца.
  • Разрешены ветки: feature/…, fix/…, docs/….
  • Commit / push — только если вы прямо попросили.
  • Секреты (.env, пароли, ключи) в diff и в git — нельзя.
  • git push --force в main — нельзя.

Рабочий процесс

  • Большая/неясная задача → сначала Plan, код после «делай».
  • «Объясни / не меняй» → только чтение (Ask).
  • Не расширять scope; минимальный diff.

Деплой

  • Самому выкатывать проект на другой сервер/хостинг — нельзя, пока явно не попросили и не дали способ.
  • Попросили только push в GitHub → push и стоп.

Если глобальный файл и файл проекта конфликтуют — побеждает более жёсткое правило.


Режимы словами (кнопок Ask/Plan/Agent нет)

Режим Триггеры Поведение
Ask «объясни», «не меняй», «только ответь» Читать / отвечать, не менять файлы
Plan «план», «как лучше» Шаги без кода, ждать «делай»
Agent «сделай», «почини», «ок» Правки только в рамках AGENTS.md

Подробнее про формулировки — глава «Ask / Plan / Agent и Powerdesk».


Как проверить, что правила работают

В UI DSH откройте любой проект → напишите (режим Ask):

Прочитай AGENTS.md и кратко перескажи запреты. Файлы не меняй.

Нормальный ответ: список запретов (workspace, секреты, main, commit только по просьбе, деплой) и пометка, что файлы не менялись.

Если агент говорит «файла нет» — правила не установлены в этом проекте (см. обновление ниже).


Как обновлять правила

Шаблоны правятся в репо dsh, потом снова запускается скрипт на сервере.

Вариант 1 — промпт агенту в папке dsh (на ноутбуке)

Откройте C:\Users\User-PC\Documents\1_cursor_project\dsh и вставьте:

Сделай сам, без вопросов.

Задача: положить правила AGENTS.md на сервер DSH 5.35.89.13 во все проекты.

1. Открой templates/AGENTS.root.md, templates/AGENTS.project.md, scripts/install-agents-rules.sh.
2. Залей их на сервер (как принято в этом проекте).
3. На сервере из папки клона dsh выполни: bash scripts/install-agents-rules.sh
4. Покажи: ls -la /root/AGENTS.md /root/projects/AGENTS.md /root/projects/*/AGENTS.md
5. Секреты (/etc/dsh.env, пароли) не читай и не печатай.
6. Кратко: куда легло и сколько проектов обновлено.

Вариант 2 — сами по SSH на сервере

cd /root/projects/dsh   # или ваш путь к клону репо dsh
git fetch && git pull   # нужная ветка с шаблонами
bash scripts/install-agents-rules.sh
ls -la /root/AGENTS.md /root/projects/*/AGENTS.md

Скрипт перед перезаписью проекта делает бэкап AGENTS.md.bak.<дата-время>.
Перезапуск сервиса DSH не нужен — файл читается из workspace.


Особые правила для одного проекта

После установки можно дописать в конец /root/projects/<имя>/AGENTS.md, например:

  • «не пушить вообще»;
  • «деплой только командой …»;
  • «не трогать папку data/».

При следующем запуске install-agents-rules.sh файл перезапишется (старый останется в .bak) — кастом лучше держать коротким и после обновления вернуть вручную, либо править шаблон AGENTS.project.md в репо dsh.


Связь с другими главами

Глава Связь
Безопасность на вашем сервере Зачем нужны запреты при root
Ask / Plan / Agent и Powerdesk Как словами включать режимы
Git и GitHub на сервере Feature-ветки на практике
Страховка AGENTS.md = замена .cursor/rules

Итог

  1. Правила уже на сервере: /root/AGENTS.md + каждый проект.
  2. Проверка — Ask: «прочитай AGENTS.md… не меняй».
  3. Обновление — шаблоны в репо dsh + bash scripts/install-agents-rules.sh.
  4. Секреты в эти файлы не писать.
Квиз по главе 10 вопросов · нажмите, чтобы открыть

Ответьте на все вопросы и сдайте квиз — сразу будет оценка и отсылки к тексту, где доучить ошибки.

Вопрос 1 из 10

Зачем AGENTS.md на сервере DSH?

Вопрос 2 из 10

Где глобальные правила?

Вопрос 3 из 10

Где правила одного проекта?

Вопрос 4 из 10

Можно ли агенту трогать /etc/dsh.env?

Вопрос 5 из 10

В какую ветку можно коммитить без явного разрешения main?

Вопрос 6 из 10

Как проверить, что правила видны агенту?

Вопрос 7 из 10

Чем обновляют правила на всех проектах?

Вопрос 8 из 10

Папка dsh (доки) скриптом…

Вопрос 9 из 10

Попросили только push в GitHub — дальше?

Вопрос 10 из 10

Итог главы AGENTS.md?