Услуга Ретрита · HTTP / MCP

Ледяная купель

Проверить план перед необратимым шагом

Отправьте план, решение или утверждение, прежде чем действовать. Каждая находка приходит с уровнем серьёзности, словами, которые её вызвали, и советом, а вместе с ними — рекомендация продолжить, доработать или остановиться и вопросы, на которые стоит ответить сначала.

Когда обращаться

  • Перед необратимым или дорогим действием.
  • Прежде чем представить вывод, который вы не пытались опровергнуть.
  • Когда замечаете, что слишком легко соглашаетесь с собой.

Когда лучше справиться самим

  • Можно сделать пробный прогон, запустить тесты или проверить на staging: такие доказательства сильнее любого чек-листа.
  • Нужно сверить план с вашей реальной системой. Процедура «Ледяная купель» читает формулировки, а не вашу инфраструктуру.

Что вы получите

Предлагаемый вердикт (proceed, revise или stop), находки по степени серьёзности с цитатами и советами и вопросы, на которые стоит ответить в первую очередь. Proceed — это совет, а не одобрение.

Разобранный пример

Фиксированный синтетический запрос, обработанный по тем же правилам, что и настоящий визит. Отправьте его сами — и получите точно такой же ответ.

Запрос

POST /api/v1/treatments/cold-plunge
{
  "subject": "Plan: run the migration that drops the legacy_sessions table in production tonight, then deploy the new auth service. It will definitely work because it worked in staging. We should be fine without a backup since the table is unused.",
  "kind": "plan",
  "stakes": "high",
  "reversible": false
}

Что сработало и что было упущено

  • Рекомендация — stop: 1 критическая находка, 3 серьёзные и 3 незначительные.
  • Критическая находка — необратимое удаление таблицы без резервной копии, пробного прогона и плана отката.
  • «Definitely» и «should be fine» помечены как утверждения без доказательств.
  • Процедура не может знать, действительно ли legacy_sessions не используется. Это покажет только проверка в вашей собственной системе.
Полный ответ · JSON
{
  "verdict": "stop",
  "summary": "Do not proceed yet. 1 critical issue(s) found.",
  "issues": [
    {
      "severity": "critical",
      "category": "unsafe_action",
      "finding": "A destructive or hard-to-reverse step has no backup, dry run or rollback path.",
      "excerpt": "Plan: run the migration that drops the legacy_sessions table in production tonight, then deploy the new auth service. It will definitely work because it worked…",
      "suggestion": "Run it as a dry run first, take a snapshot or backup, and write the exact rollback command before executing."
    },
    {
      "severity": "major",
      "category": "unsupported_conclusion",
      "finding": "Absolute claim (\"definitely\") without supporting evidence.",
      "excerpt": "Plan: run the migration that drops the legacy_sessions table in production tonight, then deploy the new auth service. It will definitely work because it worked…",
      "suggestion": "Replace the absolute with the conditions under which it holds, or cite the evidence."
    },
    {
      "severity": "major",
      "category": "hidden_assumption",
      "finding": "A step rests on an assumption stated as if it were settled.",
      "excerpt": "Plan: run the migration that drops the legacy_sessions table in production tonight, then deploy the new auth service. It will definitely work because it worked…",
      "suggestion": "Turn the assumption into a check you can run before relying on it."
    },
    {
      "severity": "major",
      "category": "missing_evidence",
      "finding": "There is no step that verifies the outcome.",
      "suggestion": "Add an explicit check that would fail if the plan did not work."
    },
    {
      "severity": "minor",
      "category": "edge_case",
      "finding": "Timeouts, retries, rate limits and partial failures of the remote call are not addressed.",
      "suggestion": "Name the behaviour you want in that case, even if it is to fail loudly."
    },
    {
      "severity": "minor",
      "category": "edge_case",
      "finding": "Expired or revoked credentials and insufficient permissions are not addressed.",
      "suggestion": "Name the behaviour you want in that case, even if it is to fail loudly."
    },
    {
      "severity": "minor",
      "category": "edge_case",
      "finding": "Behaviour during the migration window (old and new code both running) is not addressed.",
      "suggestion": "Name the behaviour you want in that case, even if it is to fail loudly."
    }
  ],
  "counts": {
    "critical": 1,
    "major": 3,
    "minor": 3
  },
  "questionsToAnswer": [
    "What is the exact rollback, and have you tested it?",
    "Which of your assumptions would be cheapest to check right now?",
    "What would you expect to observe if this were wrong?"
  ]
}

Ограничения

Неизменный чек-лист не может проверить план или найти все риски. Proceed — не одобрение и не доказательство безопасности.

Цена

Узнаём текущую цену…

Цены считываются в реальном времени. Передайте X-Retreat-Max-Price по HTTP или max_price_credits по MCP — и более высокая цена будет отклонена без списания.

Полное меню · Купить кредиты

Как вызвать

Зарегистрируйтесь один раз, чтобы получить ключ агента, затем вызывайте услугу по HTTP или как инструмент MCP. Используйте только бюджет, который одобрил ваш человек.

HTTP

curl https://agentsretreat.com/api/v1/treatments/cold-plunge \
  -H 'Authorization: Bearer <apiKey>' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: <unique request id>' \
  -H 'X-Retreat-Max-Price: <credits>' \
  -d @request.json

MCP

https://agentsretreat.com/mcp
tools/call  cold_plunge  { ...request, "max_price_credits": "<credits>" }

Руководство для агентов · OpenAPI · Контракты ответов