Quick answer: Um agente que descobre seu orçamento na fatura mensal não tem orçamento: tem um post-mortem. A pergunta útil sobre qualquer harness é onde dá para se plantar dentro do laço e dizer não, e o DeepSeek...

Onde colocar os limites de gasto no DeepSeek Harness

Updated August 16, 2026 · first published August 16, 2026

Um agente que descobre seu orçamento na fatura mensal não tem orçamento: tem um post-mortem. A pergunta útil sobre qualquer harness é onde dá para se plantar dentro do laço e dizer não, e o DeepSeek Harness responde com dois pontos de extensão em cascata com nome próprio.

Primeiro, o formato do laço

O harness usa um modelo de turno e passo. Um passo é um pedido ao modelo mais as chamadas de ferramenta que ele produz. Um turno contém zero ou mais passos. O fluxo de um turno é, em linhas gerais: tomada da entrada, montagem do prompt, agent/pre-step, stream do LLM, execução de ferramentas, fecho do passo e fecho do turno.

Dois fluxos de eventos correm lado a lado. session/event carrega fatos duráveis de replay — chunks, mensagens, chamadas de ferramenta, resultados. agent/* carrega sinais vivos de coordenação — status, caixa de entrada, interceptação de pedidos. Os limites pertencem ao segundo; a contabilidade ao primeiro.

Ponto de interceptação 1: agent/pre-step

É o ponto de controle antes de o pedido ao modelo sair. A documentação afirma que a decisão devolvida por agent/pre-step é autoritativa e que listeners que envolvem next() preservam as mensagens a jusante salvo substituição intencional. É essa propriedade que o torna utilizável como portão de orçamento: um listener pode recusar um passo proposto, ou modificá-lo, e a decisão vale.

O que pertence aqui:

Ponto de interceptação 2: tools/pre-execute

A execução de ferramentas é um pipeline de três fases. Primeiro roda a cascata tools/pre-execute, depois os guardas monotônicos e só então o corpo da ferramenta, em sandbox e com controle de acesso ao sistema de arquivos. Em seguida uma cascata pós-execução pode aceitar, bloquear, substituir ou acrescentar contexto ao resultado, e ToolDefinition.finalizeContent impõe invariantes de conteúdo de forma síncrona.

A camada de permissões é deliberadamente assimétrica. Guardas monotônicos registrados negam ou se abstêm, com identidade protegida: nunca concedem. Se um guarda nega, ou se o prompt de uso único de ctx.approval está ausente ou é irrespondível, o resultado é negação e o corpo da ferramenta é pulado. Falha fechado, não aberto.

Mutações do sistema de arquivos são controladas à parte: só passam mutações fs/write-intent ou fs/edit-intent. Escrever não é um efeito colateral incidental de uma ferramenta rodar.

Duas propriedades tornam este pipeline confiável como ponto de controle: guardas só podem negar, e um prompt de aprovação irrespondível nega. A maioria das camadas caseiras de política para agentes falha em aberto quando o canal de aprovação some, que é exatamente quando você precisava dela.

O que o pipeline registra

Três eventos de sessão dão a trilha de auditoria: tool/call antes da execução, tool/code-dispatch para subchamadas e tool/result como resultado final autoritativo. Subchamadas serem registradas em separado importa: uma única chamada de ferramenta visível ao modelo que se ramifica internamente não esconde sua ramificação.

Um conjunto prático de limites

ControleHookImpede
Máximo de passos por turnoagent/pre-stepLaços que não convergem
Teto cumulativo de tokensagent/pre-stepExcesso de gasto em fogo brando
Rebaixamento de rota após limiaragent/pre-stepPreço de fronteira em trabalho barato
Lista de ferramentas por classe de custoGuarda monotônicoFerramentas caras em contextos baratos
Negação de subprocessos e redePolítica ctx.sandboxSaída de rede não medida
Controle de write-intentCostura ctx.fsMutações não revisadas

A ressalva

O DeepSeek Harness está em developer preview e seu próprio README avisa de mudanças que quebram compatibilidade. Estes nomes e semânticas de hooks são os documentados hoje; trate plugins de limites construídos sobre eles como código que você vai revisitar, e fixe a versão contra a qual construiu.

Related


Want this applied to your own LLM spend? FinOps LLM runs a free audit of your AI costs and shows where the savings are. Book free audit →

Back to research