Workflows com estado, sem medo de timeout.
A LangGraph Platform chama seu endpoint quando um nó é retomado. O nó pode disparar mais duas chamadas a LLM antes de terminar. O AnyHook dá a você essa folga.
O problema do tempo
O callback de webhook da LangGraph Platform sinaliza que um workflow pausado está pronto para ser retomado. O nó retomado muitas vezes dispara mais invocações do modelo; esse é justamente o propósito dos workflows com estado.
Se você encadeia o LangGraph a um evento da Stripe ou do GitHub, fica preso: o remetente dá de 10 a 20 segundos, e o LangGraph e as chamadas que ele faz precisam de 60 a 120. O AnyHook desacopla as duas linhas do tempo.
Encaminhe os callbacks do LangGraph pelo AnyHook
Configure o LangGraph para chamar a URL de entrada do AnyHook quando o workflow precisar ser retomado no seu handler. O AnyHook confirma o recebimento e encaminha; você processa no seu ritmo.
import { verifyWebhook } from "anyhook-verify";
import { Client } from "@langchain/langgraph-sdk";
const lg = new Client({ apiUrl: process.env.LANGGRAPH_API_URL });
export async function POST(req: Request) {
if (!(await verifyWebhook(req, process.env.ANYHOOK_SIGNING_SECRET!))) {
return new Response("invalid", { status: 401 });
}
const { thread_id, node_id, payload } = await req.json();
// Resume the LangGraph thread. Two more model calls + a vector
// search are common here. Total ~90s.
const result = await lg.runs.create(thread_id, "agent", {
input: payload,
config: { configurable: { resume_from: node_id } },
});
await persistRun(result);
return new Response("ok", { status: 200 });
}Perguntas que as equipes fazem
- O AnyHook lida com a semântica de estado retomável do LangGraph?
- O AnyHook é infraestrutura na camada HTTP: ele não modela os checkpoints do LangGraph. Seu handler continua dono do estado do workflow. O AnyHook só armazena o sinal de retomada e tenta de novo entregá-lo ao seu handler no cronograma do seu plano, com replay para o que ainda falhar.
- Posso enviar um mesmo callback do LangGraph para vários serviços?
- Sim. Configure vários destinos no app do AnyHook e cada entrega é independente: uma pode dar certo enquanto o AnyHook tenta de novo a outra.
- Quanto tempo pode durar uma única tentativa de entrega?
- 60 segundos no Free, 120 s no Pro, 300 s (5 min) no Scale. A maioria dos callbacks de retomada do LangGraph cabe com folga na janela do Pro.
Troque uma URL. Mantenha seu handler de LangGraph.
O plano Free cobre 10 mil eventos / mês. Sem SDK: aponte os webhooks de LangGraph para sua URL de entrada do AnyHook.