☽ Deploy Tarot ☾
EN | RU
⚙ ✦ ⚙

API

Оракул говорит на JSON. Куки не требуются.

Эндпоинт

GET /api/reading

Возвращает расклад Quick Read из трёх карт в формате JSON. Всегда берёт карты из Старших Арканов — полный расклад из 78 карт пока доступен только в браузере. Аутентификация не требуется.

Лимит: 60 запросов в минуту на IP. При превышении возвращается 429 с заголовком Retry-After: 60.

Параметр Обязательный Описание
roleДаТвоя роль. Допустимые значения — ниже.
intentДаЧто деплоишь. Допустимые значения — ниже.

Пример запроса

curl "https://deploytarot.com/api/reading?role=devops&intent=full-release"

Пример ответа

{
  "verdict": "tread-carefully",
  "verdict_label": "Tread Carefully ⚠️",
  "verdict_text": "The cards have spoken. Proceed, but with ceremony.",
  "role": "DevOps Engineer",
  "intent": "Full Release",
  "cards": [
    {
      "position": "foundation",
      "position_label": "The Foundation",
      "name": "The Tower",
      "reversed": false,
      "narrative": "The Foundation reveals The Tower upright — sudden disruption..."
    },
    {
      "position": "crossing",
      "position_label": "The Crossing",
      "name": "The Star",
      "reversed": true,
      "narrative": "..."
    },
    {
      "position": "outcome",
      "position_label": "The Outcome",
      "name": "The World",
      "reversed": false,
      "narrative": "..."
    }
  ],
  "share_url": "https://deploytarot.com/r/..."
}

При неверной роли или намерении: 422 со списками valid_roles и valid_intents. При превышении лимита: 429 с Retry-After: 60.

GitHub Actions

Официальный экшн — rembish/deploytarot-action. Автоматически определяет намерение по событию воркфлоу, роль по умолчанию — devops. Оба параметра можно переопределить.

Без настройки

- uses: rembish/deploytarot-action@v1.2

Полный контроль

- uses: rembish/deploytarot-action@v1.2
  with:
    role: senior-dev
    intent: db-migration
    fail_on_abort: "true"

Используй вердикт дальше по конвейеру

- uses: rembish/deploytarot-action@v1.2
  id: tarot

- name: Proceed only if the cards allow it
  if: steps.tarot.outputs.verdict != 'abort-mission'
  run: ./deploy.sh

Когда fail_on_abort равен true, шаг завершается с ненулевым кодом при вердикте abort-mission и блокирует дальнейшие шаги. По умолчанию false.

Экшн автоматически публикует таблицу карт в сводке задания GitHub Actions.

Автоопределение роли

Если роль не указана, экшн проверяет github.actor:

Паттерн актораОпределённая роль
любой актор, оканчивающийся на [bot] (dependabot, renovate, copilot, …)ai-agent
github-actionsai-agent
любой человек-акторdevops

Укажи role явно, чтобы переопределить.

Автоопределение намерения

Если намерение не указано в экшне, оно определяется по событию воркфлоу:

Событие / условиеОпределённое намерение
release publishedfull-release
push to main / master / tagfull-release
pull_request · branch fix/* or hotfix/*hotfix-prod
pull_request · branch feat/* or feature/*new-feature
pull_request · branch refactor/* or chore/*refactor
pull_request · branch db/* or migration/*db-migration
pull_request · branch infra/* or ops/*infra-change
pull_request · branch docs/*public-doc-release
pull_request · branch security/*security-patch
Dependabot PRdependency-update
scheduledependency-update
workflow_dispatchjust-vibes
anything elsequick-fix

Допустимые роли

business-analyst   ceo   ciso   cto   cleaning-lady   client   consultant   contractor   dba   data-scientist   designer   devops   doc-writer   eng-manager   hr   intern   junior-dev   offshore-dev   product-manager   project-manager   qa   receptionist   sales   scrum-master   security   senior-dev   shadow-it   sre   stakeholder   system-analyst   tech-lead   vp-eng   ai-agent   rubber-duck   tarot-reader

Допустимые намерения

ab-test   ai-integration   api-release   auth-rewrite   config-change   db-migration   dependency-update   deprecation   feature-flag   full-release   gdpr-compliance   hotfix-prod   infra-change   ipo   just-vibes   mobile-release   new-feature   open-source   performance   public-doc-release   quick-fix   rebranding   redesign   refactor   rollback   security-patch   seo-optimization   sunset

Каждый вызов генерирует новый сид. Одна и та же комбинация роли и намерения даст разные карты при каждом запросе. Оракул не повторяется. Обычно.

✦ ❧ ⚜ ❧ ✦

Использовать только в развлекательных целях.

Не вини карты в неработоспособности своей инфраструктуры.

Новый расклад · Карты · Сбросить настройки · Отказ от ответственности · Приватность · API · Реальная колода · Участие
© 2026 Alex Rembish · ☕ Buy me a coffee