runaway-guard
Controla os custos de uso de APIs de IA, definindo limites claros. Garante que o agente não gaste mais do que o planejado em suas tarefas.
O que ela faz
Este guia ajuda a evitar gastos inesperados ao usar serviços de inteligência artificial pagos. Ele garante que você defina limites de gastos antes de executar qualquer código que chame essas APIs.
Quando usar
- ✓Ao usar APIs de IA que cobram por uso.
- ✓Ao criar ou revisar código que faz muitas chamadas a essas APIs.
- ✓Para evitar surpresas na conta no final do mês.
Exemplo do que pedir para a IA
“Como posso garantir que não vou gastar muito dinheiro usando a API da OpenAI?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ele funciona definindo limites claros de quanto você pode gastar por chamada, por dia e por execução. Esses limites são definidos tanto no código quanto na plataforma do provedor do serviço de IA.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill runaway-guardOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/runaway-guard/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
runaway-guard — Custo é a Terceira Dimensão da Complexidade
Todo loop tem complexidade de tempo e complexidade de espaço. Um loop que chama uma API paga tem uma terceira: dólares por execução. O modelo rastreia as duas primeiras automaticamente. Ele não rastreia a terceira, então entrega código onde um único bug — uma nova tentativa sem limite, uma tempestade de reconexão de stream, um agente que se reenfileira, um webhook que dispara o mesmo job duas vezes — gasta silenciosamente dinheiro real.
O incidente canônico: um desenvolvedor escreve um loop de geração de imagem Fal.ai. O loop "termina obviamente" porque itera sobre uma lista fixa. A lista vem de um callback que dispara em cada nova tentativa do Inngest. Cada nova tentativa dobra a lista. Pela manhã, a conta é de $200. Testes passam. Revisão de código passou. O bug não está no corpo do loop. O bug é que ninguém declarou o invariante da carteira.
runaway-guard corrige isso. Declare as chamadas máximas. Declare os dólares máximos por execução. Declare os dólares máximos por dia. Defina os mesmos limites no painel do provedor para que um bug de código não possa contorná-los. Então escreva o código.
Violar a letra destas regras é violar o espírito da habilidade. "Estou apenas testando localmente" é a exata racionalização que entrega a conta de $200 — o código local atinge a mesma API paga que a produção.
Quando Usar Esta Habilidade
Use runaway-guard quando:
- Escrever ou revisar código que chama uma API paga de IA / inferência em um loop, fila, caminho de nova tentativa, etapa de agente, manipulador de webhook ou job em segundo plano.
- Importar ou encapsular qualquer SDK de inferência paga:
@fal-ai/*,fal-client,@anthropic-ai/sdk,anthropic,openai,replicate,elevenlabs,together-ai,groq-sdk,cohere-ai,@mistralai/*. - Projetar um loop de agente, pipeline fan-out, wrapper de nova tentativa, job de polling, reconexão de stream ou job de auto-reagendamento que possa chamar um endpoint cobrado.
- Auditar uma base de código / PR para fan-out ilimitado, novas tentativas ilimitadas, chaves de idempotência ausentes ou limites de gastos do provedor ausentes.
- Diagnosticar uma conta inesperada, incidente de loop descontrolado ou excedente surpresa.
A Lei de Ferro
NO CALL TO A PAID API WITHOUT A WRITTEN $-CAP AT BOTH THE CODE AND PROVIDER LEVEL
Um limite apenas no código pode ser contornado por um bug nesse código. Um limite apenas no provedor pode ser atingido durante o uso normal e degradar o produto. Você precisa de ambos. Se você não consegue declarar ambos em uma frase cada, você não projetou o local da chamada — você escreveu um desejo.
Regras Inegociáveis
Cada local de chamada recebe um contrato de custo de uma linha. Antes de escrever qualquer chamada de API paga, declare em uma frase:
- Máx. chamadas por execução: o limite superior estrito de invocações em uma única execução deste caminho de código.
- Máx. $ por execução:
max_calls × unit_cost— calcule, não estime. - Máx. $ por dia: o limite rígido do lado do provedor que garante o limite do lado do código.
Exemplos:
- "Fal flux-pro a $0.05/imagem; máx. 20 imagens por job; máx. $1 por job; Limite de Gastos do provedor $50/dia."
- "Anthropic Sonnet a ~$0.015 por solicitação (em cache); máx. 50 solicitações por execução de agente; máx. $0.75 por execução; Orçamento de Espaço de Trabalho limite rígido $30/dia."
Se você não consegue preencher todos os três números, você não projetou o local da chamada.
Todo loop que chama uma API paga recebe um limite de iteração explícito, não apenas um argumento de terminação.
invariant-guardrequer uma medida de terminação. runaway-guard requer que o limite seja um inteiro concreto em código, não apenas "termina eventualmente":// ❌ Terminates in theory. Bills $200 in practice. while (job.status !== 'done') { await fal.run(...); } // ✅ Concrete bound — wallet invariant explicit. const MAX_CALLS = 20; for (let i = 0; i < MAX_CALLS && job.status !== 'done'; i++) { await fal.run(...); } if (job.status !== 'done') throw new Error('exceeded MAX_CALLS budget');Todo caminho de nova tentativa é limitado por tentativas E custo total decorrido, não apenas por tempo. Backoff exponencial sem limite de tentativas é um ataque à carteira contra você mesmo.
- Máx. tentativas: um inteiro pequeno (3–5 para erros transitórios, 1 para 4xx).
- Limite as contagens em todo o pipeline, não apenas em uma biblioteca — novas tentativas do Inngest × novas tentativas do SDK × seu próprio wrapper de nova tentativa se multiplicam.
- Erros 4xx não tentam novamente. Ponto final. Eles não se tornarão 2xx; eles apenas cobrarão novamente.
Todo caminho fan-out declara um limite de concorrência. Chamadas paralelas multiplicam o custo por segundo de relógio de parede. Declare o limite em código, na fila (Inngest
concurrency) e no provedor onde suportado:
…
Perguntas frequentes
Por que preciso definir limites?
APIs de IA pagas podem gerar custos rapidamente se houver um erro no código, como um loop que não para. Definir limites evita que um pequeno erro se torne uma conta alta.
O que é um 'custo por execução'?
É o gasto máximo permitido em uma única vez que seu código é executado. Por exemplo, se você tem um limite de 10 chamadas e cada uma custa $0.01, o custo por execução é $0.10.
Por que preciso definir o limite no código E na plataforma do provedor?
Definir no código é uma primeira linha de defesa. Definir na plataforma do provedor garante que, mesmo que o código falhe, o gasto será interrompido externamente, como uma rede de segurança.
Detalhes
Descrição original do autor
Cost-safety discipline for paid AI / inference APIs: treat $-cost as a third complexity dimension alongside time and space. Forces a written per-run $-cap, per-day $-cap, max-iterations bound, concurrency limit, and a matching provider-dashboard hard cap BEFORE any call site is written.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #4037
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
benchmark
Ajuda seu agente a medir a velocidade e a performance do código. É útil para garantir que as coisas estão rápidas e para encontrar problemas de lentidão.
affaan-m/ECC
content-hash-cache-pattern
Faz seu agente usar hashes de conteúdo para cachear resultados de processamento de arquivos. Isso evita processamento repetido e invalida o cache automaticamente quando o conteúdo muda. Útil para acelerar tarefas lentas.
affaan-m/ECC
parallel-execution-optimizer
Faz seu agente acelerar tarefas complexas dividindo-as em partes menores e executando-as em paralelo. Garante que tudo seja verificado ao final.
affaan-m/ECC