workflow-automation — скилл Claude Code: что делает и установка
Скилл про долговечное выполнение шагов: если сеть отвалилась посередине, workflow продолжит с места обрыва, а не с начала.
npx skills add sickn33/agentic-awesome-skills --skill workflow-automation -a claude-codeЧто делает workflow-automation
Скилл разбирает durable execution в агентских сценариях: шаг упал из-за сети, workflow подхватывает его с того места, где оборвался. Внутри сравнение n8n, Temporal и Inngest плюс три схемы работы: последовательная, параллельная, оркестратор с воркерами. Автор советует брать n8n за доступность, Temporal за корректность, Inngest за удобство в разработке.
Материал — SKILL.md и подробный гайд references/detailed-guide.md, который скилл велит прочитать до запуска. Примеры на TypeScript: step.run в Inngest, proxyActivities с блоком retry в Temporal. Это фрагменты, сигнатуры SDK зависят от версии, поэтому их сверяют с установленными типами и гоняют на тестовых аккаунтах.
Главное ограничение: долговечность сама по себе не даёт exactly-once для внешних эффектов. Платёжным и складским вызовам нужен стабильный ключ операции и разбор неоднозначного ответа, письмам — outbox с дедупликацией. Payload и креды не должны попадать в историю workflow и в логи. Перед продом это повод проверить свои шаги, потому что повтор шага с деньгами стоит дороже, чем чтение гайда.
Какие задачи решает
- разложить платёжный флоу на durable-шаги с ключами идемпотентности
- выбрать между n8n, Temporal и Inngest под свою задачу
- запустить три анализа документа параллельно и собрать общий отчёт
- пережить падение сети без потери уже выполненных шагов
- убрать payload и креды из истории workflow
Примеры запросов агенту
- Разложи обработку заказа на durable-шаги в Inngest и добавь idempotency key для платежа
- Сравни Temporal и n8n для фоновой обработки документов и скажи, что взять под наш случай
- Собери оркестратор-воркер на Temporal: план задачи и дочерние workflow на create, modify и delete
Как установить workflow-automation
1Через Skills CLI (Vercel)
npx skills add sickn33/agentic-awesome-skills --skill workflow-automation -a claude-code2Вручную: положить файлы
~/.claude/skills/workflow-automation/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/workflow-automation/
1Через Skills CLI (Vercel)
npx skills add sickn33/agentic-awesome-skills --skill workflow-automation -a codex2Вручную: положить файлы
.agents/skills/workflow-automation/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add sickn33/agentic-awesome-skills --skill workflow-automation -a cursor2Вручную: положить файлы
.cursor/skills/workflow-automation/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install sickn33/agentic-awesome-skills workflow-automation2Вручную: положить файлы
.github/skills/workflow-automation/SKILL.md1Через Skills CLI (Vercel)
npx skills add sickn33/agentic-awesome-skills --skill workflow-automation -a gemini-cli2Командой платформы
gemini skills install https://github.com/sickn33/agentic-awesome-skills --path skills/workflow-automationВручную: положить файлы
.devin/skills/workflow-automation/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add sickn33/agentic-awesome-skills --skill workflow-automation -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
Из того же набора80
Весь набор →Похожие
Вопросы о workflow-automation
Как установить workflow-automation в Claude Code?
Выполните npx skills add sickn33/agentic-awesome-skills --skill workflow-automation -a claude-code. Скилл появится в ~/.claude/skills/workflow-automation/SKILL.md.
Что делает workflow-automation?
Учит агента строить многошаговые workflow с долговечным выполнением: шаги переживают падение сети и продолжаются с места обрыва. Плюс помогает выбрать между n8n, Temporal и Inngest.
Что нужно, чтобы примеры из скилла заработали?
Сверить сигнатуры SDK с установленными типами: примеры — неполные фрагменты и зависят от версии библиотеки. Тестовые аккаунты обязательны, а ключ операции и разбор неоднозначного ответа придётся добавить самому.
Исходный текст
SKILL.md · MIT
---
name: workflow-automation
description: Workflow automation is the infrastructure that makes AI agents
reliable. Without durable execution, a network hiccup during a 10-step payment
flow means lost money and angry customers. With it, workflows resume exactly
where they left off.
risk: critical
source: vibeship-spawner-skills (Apache 2.0)
date_added: 2026-02-27
---
# Workflow Automation
Workflow automation is the infrastructure that makes AI agents reliable.
Without durable execution, a network hiccup during a 10-step payment
flow means lost money and angry customers. With it, workflows resume
exactly where they left off.
This skill covers the platforms (n8n, Temporal, Inngest) and patterns
(sequential, parallel, orchestrator-worker) that turn brittle scripts
into production-grade automation.
Key insight: The platforms make different tradeoffs. n8n optimizes for
accessibility, Temporal for correctness, Inngest for developer experience.
Pick based on your actual needs, not hype.
## Reliability and example limits
Durability does not guarantee exactly-once external effects. Payment/shipment helpers must forward a stable operation key to the provider and reconcile ambiguous success; email needs an outbox/deduplication strategy. Examples are incomplete fragments with version-specific SDK signatures. Validate them against installed types, use test accounts, and keep payloads/credentials out of workflow history and logs.
## Detailed Guide
Read [the detailed guide](references/detailed-guide.md) before executing this skill. It retains the complete procedure and reference material. Treat its safety, prerequisites, and validation requirements as mandatory. For focused work, load the relevant sections; for end-to-end work, read the guide completely.
## Inngest Example (TypeScript)
```
import { inngest } from "./client";
export const processOrder = inngest.createFunction(
{ id: "process-order" },
{ event: "order/created" },
async ({ event, step }) => {
// Step 1: Validate order
const validated = await step.run("validate-order", async () => {
return validateOrder(event.data.order);
});
// Step 2: Process payment (durable - survives crashes)
const payment = await step.run("process-payment", async () => {
return chargeCard(validated.paymentMethod, validated.total, { idempotencyKey: `order-${event.data.orderId}-payment` });
});
// Step 3: Create shipment
const shipment = await step.run("create-shipment", async () => {
return createShipment(validated.items, validated.address);
});
// Step 4: Send confirmation
await step.run("send-confirmation", async () => {
return sendEmail(validated.email, { payment, shipment });
});
return { success: true, orderId: event.data.orderId };
}
);
```
## Temporal Example (TypeScript)
```
import { proxyActivities } from '@temporalio/workflow';
import type * as activities from './activities';
const { validateOrder, chargeCard, createShipment, sendEmail } =
proxyActivities<typeof activities>({
startToCloseTimeout: '30 seconds',
retry: {
maximumAttempts: 3,
backoffCoefficient: 2,
}
});
export async function processOrderWorkflow(order: Order): Promise<void> {
const validated = await validateOrder(order);
const payment = await chargeCard(validated.paymentMethod, validated.total, { idempotencyKey: `order-${order.id}-payment` });
const shipment = await createShipment(validated.items, validated.address);
await sendEmail(validated.email, { payment, shipment });
}
```
## Inngest Example
```
export const analyzeDocument = inngest.createFunction(
{ id: "analyze-document" },
{ event: "document/uploaded" },
async ({ event, step }) => {
// Run analyses in parallel
const [security, performance, compliance] = await Promise.all([
step.run("security-analysis", () =>
analyzeForSecurityIssues(event.data.document)
),
step.run("performance-analysis", () =>
analyzeForPerformance(event.data.document)
),
step.run("compliance-analysis", () =>
analyzeForCompliance(event.data.document)
),
]);
// Aggregate results
const report = await step.run("generate-report", () =>
generateReport({ security, performance, compliance })
);
return report;
}
);
```
## Temporal Example
```
export async function orchestratorWorkflow(task: ComplexTask) {
// Orchestrator decides what work needs to be done
const plan = await analyzeTask(task);
// Dispatch to specialized worker workflows
const results = await Promise.all(
plan.subtasks.map(subtask => {
switch (subtask.type) {
case 'create':
return executeChild(createWorkerWorkflow, { args: [subtask] });
case 'modify':
return executeChild(modifyWorkerWorkflow, { args: [subtask] });
case 'delete':
return executeChild(deleteWorkerWorkflow, { args: [subtask] });
}
})
);
// Aggregate results
return aggregateResults(results);
}
```
## When to Use
- User mentions or implies: workflow
- User mentions or implies: automation
- User mentions or implies: n8n
- User mentions or implies: temporal
- User mentions or implies: inngest
- User mentions or implies: step function
- User mentions or implies: background job
- User mentions or implies: durable execution
- User mentions or implies: event-driven
- User mentions or implies: scheduled task
- User mentions or implies: job queue
- User mentions or implies: cron
- User mentions or implies: trigger
## Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
© sickn33 · MIT · sickn33/agentic-awesome-skills