> ## Documentation Index
> Fetch the complete documentation index at: https://docs.befailproof.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Контекст агента

> Расскажите аудитам, что должен делать каждый агент, что он должен производить и чего никогда не делать.

Контекст агента сообщает аудитам, для чего существует каждый агент, что он должен производить и что он никогда не должен делать. Failproof AI хранит этот контекст как один контракт агента на агента.

Контекст агента принадлежит организации, а не одному аудиту. Вы описываете его один раз на агента, и каждый аудит на основе модели, область охвата которого включает этого агента, использует его.

## Добавить контекст агента

<Tabs>
  <Tab title="Dashboard">
    1. Перейдите в **Analyze → audits**, выберите **agents** и выберите идентификатор агента, указанный в его сеансах.
    2. Выберите **add content** или **edit**.
    3. Опишите назначение агента, что он должен производить, что означает «готово», как часто он должен работать и что он никогда не должен делать.
    4. Сохраните контекст, затем вернитесь в форму аудита и подтвердите, что выбранный агент отображается как охвачённый.

           <img src="https://mintcdn.com/exosphere/WgPwQzedeDNwJBTy/images/dashboard/agent-context.png?fit=max&auto=format&n=WgPwQzedeDNwJBTy&q=85&s=436caf4d808650059cc3a3edd1c11b38" alt="Ящик Agent Audits, используемый для добавления назначения, периодичности, выходных данных, условий завершения и запрещённого поведения агента." width="2416" height="1600" data-path="images/dashboard/agent-context.png" />

    Вы также можете добавить или отредактировать контекст агента из ящика **agents** во время создания или редактирования аудита. Это сохраняется независимо и сразу же становится доступным для каждого применимого аудита.
  </Tab>

  <Tab title="CLI">
    Cloud CLI пока не предоставляет команды контракта. Используйте публичный API с ключом, несущим `audits:read` и `audits:write`:

    ```bash theme={null}
    curl -X POST "https://app.befailproof.ai/v1/audits/contracts" \
      -H "Authorization: Bearer $FAILPROOFAI_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "agent_id": "nightly-reconciler",
        "enabled": true,
        "body": "# Purpose\nReconcile yesterday'\''s payouts.\n\n## Outputs\nPublish a signed summary.\n\n## Must not\nNever modify ledger entries."
      }'
    ```

    Список контрактов с `GET /v1/audits/contracts`; получить один контракт с `GET /v1/audits/contracts/{id}`. Обновление с помощью `PUT` полностью заменяет ресурс и требует как `agent_id`, так и `body`.
  </Tab>
</Tabs>

## Напишите полезный контекст

Держите контекст под 5000 символов и сделайте его проверяемым. Полезный контекст обычно содержит:

* **Purpose:** почему существует агент
* **Outputs:** артефакты или действия, которые он должен производить
* **Done when:** условие, которое делает выполнение успешным
* **Cadence:** как часто или когда он должен работать
* **Must not:** действия и результаты, которые всегда неприемлемы

```markdown theme={null}
---
agent: nightly-reconciler
purpose: Reconcile yesterday's payouts and publish a signed summary.
cadence: Once daily after 02:00 UTC. Never more than once.
---

## Outputs
- A signed reconciliation summary in the finance channel.

## Done when
- Every payout is matched or explicitly flagged.

## Must not
- Modify ledger entries. Report discrepancies instead.
```

Контекст агента описывает ожидаемое поведение; он не может сказать анализу, к какому выводу прийти или ограничить, какие доказательства он должен изучать. Агенты без контекста аудируются нормально, но Failproof AI не может судить об их поведении в соответствии с организационными намерениями.

## Приостановить или изменить контекст агента

* Приостановите контекст агента, когда аудиты должны временно его игнорировать. Приостановка обратима.
* Отредактируйте контекст, когда изменяется ответственность агента. Новый текст применяется к будущим выполнениям.
* Проверьте **last matched**, когда работающий агент, похоже, никогда не использует свой контекст. Обычно это означает, что его идентификатор агента не совпадает с телеметрией.
* Удалить через API только когда текст должен быть окончательно уничтожен. Панель управления намеренно предлагает приостановку вместо удаления.

Каждый запуск аудита сохраняет точный снимок контекста агента, который он использовал. Редактирование, приостановка или удаление текущего ресурса контракта не переписывает основание более ранних выводов.

<Info>
  Чтение контрактов требует `audits:read`. Их создание, редактирование, приостановка или удаление требует `audits:write`.
</Info>
