workflow-automation
Создание надёжных систем автоматизации рабочих процессов
Также доступно от: supercent-io
Хватит терять работу из-за сбоев сети и таймаутов. Научитесь создавать надёжные, отказоустойчивые рабочие процессы, которые переживают перезапуски и элегантно обрабатывают ошибки, используя платформы долговечного выполнения.
Скачать ZIP навыка
Загрузить в Claude
Перейдите в Settings → Capabilities → Skills → Upload skill
Включите и начните использовать
Протестировать
Использование «workflow-automation». Сравните Temporal и Inngest для системы обработки платежей на TypeScript
Ожидаемый результат:
Для платёжной системы на TypeScript я рекомендую Inngest для более быстрой разработки. Temporal предлагает больший контроль, но требует управления инфраструктурой. Inngest предоставляет управляемую надёжность с разработкой на основе SDK. Ключевые компромиссы: Temporal лучше справляется со сложными рабочими процессами конечных автоматов, в то время как Inngest превосходит в событийно-ориентированной простоте. Оба обеспечивают долговечное выполнение, но Inngest имеет более быстрое внедрение разработчиков.
Использование «workflow-automation». Как предотвратить двойное списание с клиента при повторной попытке рабочего процесса?
Ожидаемый результат:
Всегда генерируйте уникальный ключ идемпотентности перед первой попыткой платежа. Отправляйте этот ключ с каждым запросом платежа вашему платёжному процессору. Если рабочий процесс повторяет попытку с тем же ключом, процессор распознает дубликат и вернёт оригинальный результат вместо повторного списания. Храните ключ с записью транзакции в течение периода идемпотентности (обычно 24-48 часов).
Использование «workflow-automation». Мой рабочий процесс n8n постоянно завершается по таймауту при вызове медленных API
Ожидаемый результат:
Никогда не вызывайте медленные API напрямую из вашего рабочего процесса. Вместо этого используйте паттерн оркестратор-воркер: ваш рабочий процесс отправляет задачу в сервис воркера, который делает вызов API асинхронно. Воркер отправляет результат обратно через webhook или событие. Установите таймауты на всех HTTP-нодах (обычно 30-60 секунд). Для очень медленных операций реализуйте опрос с интервалами экспоненциальной задержки.
Аудит безопасности
БезопасноAll static analysis findings are false positives. The 'backtick execution' detection refers to Markdown code formatting in documentation text, not actual Ruby/shell commands. The 'weak cryptography' detection refers to the word 'execution' in documentation context, not cryptographic implementation. This skill contains only documentation about workflow automation patterns with no executable code, security risks, or prompt injection attempts.
Оценка качества
Что вы можете построить
Система обработки платежей
Проектирование отказоустойчивых платёжных рабочих процессов, которые обрабатывают сбои сети, элегантно завершаются по таймауту и никогда не взимают плату с клиента дважды благодаря ключам идемпотентности.
Оркестрация конвейеров данных
Координация многоэтапных ETL-рабочих процессов с параллельной обработкой, восстановлением после ошибок и возобновлением на основе контрольных точек для долго_running задач обработки данных.
Интеграция микросервисов
Реализация событийно-ориентированных рабочих процессов, которые координируют несколько сервисов с использованием паттернов сага для распределённых транзакций и автоматического отката.
Попробуйте эти промпты
Мне нужно создать [workflow type] для [use case]. Моя команда имеет [skill level] опыт, и приоритетами являются [priorities]. Сравните Temporal, Inngest, n8n и AWS Step Functions для этого сценария. Порекомендуйте наилучший вариант и объясните компромиссы.
Я создаю [workflow type], который вызывает [external service/API]. Как мне реализовать идемпотентность? Покажите мне паттерн генерации и проверки ключей идемпотентности и объясните, где их хранить.
Спроектируйте стратегию повторных попыток для [operation type], которая может завершиться ошибкой с [error types]. Настройте экспоненциальную задержку, максимальное количество повторных попыток и поведение при сбое. Покажите, как это структурировать в [platform name].
У меня есть один рабочий процесс, который делает [complex process]. Его трудно отлаживать, и он часто перезапускается с начала. Помогите разбить это на меньшие шаги с контрольными точками и долговечным состоянием между ними.
Лучшие практики
- Всегда используйте ключи идемпотентности для вызовов внешних API, чтобы предотвратить дублирование операций при повторной попытке
- Устанавливайте явные таймауты для всех активностей и вызовов внешних сервисов, чтобы предотвратить зависание рабочих процессов
- Разбивайте длинные рабочие процессы на небольшие шаги с контрольными точками состояния для более быстрого восстановления после сбоев
- Реализуйте экспоненциальную задержку с джиттером для повторных попыток, чтобы не перегружать нижестоящие сервисы
Избегать
- Не выполняйте прямые операции ввода-вывода или побочные эффекты в коде рабочего процесса — всегда делегируйте активностям или воркерам
- Никогда не создавайте монолитные рабочие процессы, которые пытаются сделать всё в одном месте; они становятся невозможными для отладки и эффективной повторной попытки
- Избегайте передачи больших объёмов данных в качестве аргументов рабочего процесса — храните данные внешне и передавайте ссылки вместо этого
Часто задаваемые вопросы
Что такое долговечное выполнение и зачем оно мне нужно?
Что мне использовать: Temporal, Inngest, n8n или AWS Step Functions?
Как предотвратить дублирование операций при повторной попытке рабочих процессов?
Что такое экспоненциальная задержка с джиттером?
Могут ли рабочие процессы вызывать внешние API напрямую?
Как отлаживать неудачные рабочие процессы?
Сведения для разработчиков
Автор
sickn33Лицензия
Apache-2.0
Репозиторий
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/workflow-automationСсылка
main
Структура файлов
📄 SKILL.md