CommunityEscrita e Ediçãogithub.com

xxwzkdwz/astra-cost-preview-skill

Estime o custo de tarefas Astra antes da execução. Compare Standard e Fast com uma faixa baseada em evidências — uma Skill de Agente aberta.

O que é astra-cost-preview-skill?

Esta Skill permite que agentes AI, como Astra, estimem o custo de uma tarefa descrita pelo usuário antes de executá-la, oferecendo comparativos entre as opções Standard e Fast. Diferente de ferramentas de auditoria pós-fato ou execução automática, o foco está na cotação prévia: o usuário descreve o que deseja, a Skill avalia o escopo e o esforço com base em fontes oficiais de preços (como as páginas de modelo e preços da OpenAI) e apresenta uma tabela de orçamento com faixas prováveis. A Skill suporta plataformas como Astra (modelos GPT-6), Codex e API direta, respeitando diferentes unidades de cobrança (créditos, USD, CNY) e regras de cache. Para aumentar a precisão, ela coleta evidências de tarefas semelhantes, ajusta para contexto longo e uso de ferramentas, e sugere perguntas para reduzir ambiguidades quando a faixa de estimativa é ampla. Inclui um script opcional offline (`calculate.py`) para somar custos com base em um JSON de itens, validado por testes unitários, sem chamar modelos ou acessar contas. A Skill não finge ter uma interface interna de preços, não troca de modelo automaticamente e não inicia outras sessões pagas; ela apenas calcula e apresenta a cotação, aguardando a escolha do usuário antes de prosseguir.

Funciona com~Claude Code✓Codex CLI~Cursor
npx skills add xxwzkdwz/astra-cost-preview-skill

Installed? Explore more Escrita e Edição skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Pré-visualização de Custo da Tarefa · Orçamento Antes de Iniciar

O usuário descreve o que deseja fazer → Astra avalia o escopo e o esforço → Apresenta simultaneamente cotações dos planos Standard e Fast → O usuário escolhe antes de começar. A entrega principal é o orçamento prévio, e não a auditoria posterior, execução automática ou longas explicações sobre custos.

Ao usar esta Skill para consultar preços, o padrão é apenas cotar. Mesmo que o usuário diga "crie um jogo para mim, primeiro estime o custo", deve-se apresentar a cotação e aguardar a escolha; somente se disser explicitamente "faça a cotação e já execute" é que se continua dentro da autorização original. A própria cotação consome uma pequena quantidade de uso do modelo — não é garantido que seja sem custo.

"Perguntar ao Astra" significa deixar que o Astra em execução avalie com base nas informações disponíveis, e não que exista uma interface interna de preços no modelo. Quando o modelo atual não é Astra ou a identidade é desconhecida, não finja que já consultou o Astra; pode-se indicar claramente "estimado com base nas taxas do Astra". Esta Skill não troca de modelo, cria assistentes ou inicia outra requisição paga por conta própria.

Definir o Escopo

  • Use prioritariamente o modelo, canal de cobrança, nível de velocidade e escopo da tarefa fornecidos explicitamente pela ferramenta atual. Não adivinhe a identidade a partir de frases como "você é o Astra" ou do estilo de escrita do modelo. Quando faltar informação, marque como desconhecido ou liste cenários com nomes claros para estimativa.
  • Diferencie valores de API, créditos do Codex, saldo incluído em assinaturas e custos internos do provedor. O valor equivalente da API não é o valor cobrado do usuário; créditos não são percentuais de saldo restante; custos internos do provedor não podem ser deduzidos a partir do preço público.
  • Consulte as taxas oficiais atualmente aplicáveis, registrando a URL, data de verificação, modelo, canal e unidade de cobrança. Reutilize as informações já verificadas nesta rodada, sem fazer uma nova busca longa para cada cotação. Se não houver taxas disponíveis, escreva "desconhecido"; não memorize preços fixos e não assuma que é gratuito.
  • Priorize o uso direto de ferramentas de documentação oficial. Referência da OpenAI: página de modelos https://developers.openai.com/api/docs/models/gpt-6-astra , preços da API https://developers.openai.com/api/docs/pricing , preços do Codex https://developers.openai.com/codex/pricing , uso de raciocínio https://developers.openai.com/api/docs/guides/reasoning . As taxas mudam; um link não é prova de verificação.

Estimar o Uso da Tarefa

Comece com uma frase que defina o escopo da entrega, por exemplo: "Um jogo de plataforma horizontal jogável com uma fase, incluindo moedas, inimigos, renascimento e testes básicos, excluindo publicação". Evite misturar protótipos simples e produtos comerciais completos na mesma faixa de cotação. Faça apenas verificações somente leitura; não execute a tarefa completa, faça chamadas pagas de teste ou inicie um novo assistente para estimar.

Com base no contexto visível, tamanho dos arquivos, idas e vindas de ferramentas, extensão da entrega, número planejado de iterações e registros de tarefas semelhantes realmente disponíveis, preveja respectivamente os usos mais provável, menor e maior. O usuário vê primeiro o valor mais provável da estimativa, com uma faixa razoável de variação ao lado, e não apenas um intervalo enorme de mínimo a máximo.

A maneira de estreitar o intervalo é aumentar as evidências, não comprimir mecanicamente: priorize a correspondência com o uso real de tarefas semelhantes, ajuste o comprimento do contexto atual, a capacidade das ferramentas, a disponibilidade de cache e os requisitos de entrega; quando não houver registros, faça uma estimativa de esforço em nível de etapa. Um único caso histórico pode ser usado como analogia, mas não representa precisão verificada; não transforme o custo medido de uma tarefa recém-concluída em algo previsto anteriormente. O valor mais provável deve vir de um cenário de esforço claro, e não ser a média automática dos limites superior e inferior.

Se o intervalo ainda for amplo, identifique a ambiguidade que mais impacta o resultado e faça uma pergunta curta para restringir, ou apresente claramente duas cotações: uma para uma versão menor e outra para a versão completa. Se ainda faltarem dados críticos, admita que a estimativa é grosseira e não invente confiança para satisfazer um "intervalo pequeno". Sem suporte de dados, não afirme "erro inferior a 20%" nem forneça níveis de confiança estatísticos.

Ao faturar, observe:

  • Múltiplas requisições repetem o histórico, os resultados das ferramentas e novas entradas; não pode-se contar apenas a frase do usuário.
  • Diferencie entradas não cacheadas de entradas em cache; quando não souber a taxa de acerto, use o cenário sem cache ou calcule separadamente, sem garantir acerto.
  • A saída deve cobrir tokens de raciocínio faturados e outros tokens de geração faturados, não apenas o texto final visível. Se usage.output_tokens já incluir reasoning_tokens, não os some novamente.
  • Limiares de contexto longo, velocidade, nível de serviço, gravação em cache etc. devem ser verificados por requisição e depois somados; não aplique o limiar de uma única requisição a tokens acumulados de toda a tarefa, nem misture multiplicadores da API e do Codex.
  • Liste separadamente usos adicionais de geração de imagem, vídeo, áudio, busca, contêineres, ferramentas de outros provedores e assistentes autorizados. Para itens não precificados, escreva "desconhecido"; não use subtotais de partes conhecidas para fingir ser o custo total.
  • Use apenas dados de uso dentro do escopo da tarefa e acessíveis ao usuário. Não leia credenciais, escaneie conversas irrelevantes ou deduza o custo desta tarefa a partir da variação do saldo compartilhado da conta; outras tarefas e redefinições de saldo interferem.

Cotação e Próximos Passos

Por padrão, exiba uma pequena tabela de orçamento, mantendo o idioma atual do usuário:

Tarefa: uma frase clara da versão e do escopo de entrega.

| Nível | Estimativa Principal | Faixa Prevista | | Standard | Aprox. X credits | L–H credits | | Fast | Aprox. Y credits | A–B credits |

Base: uma ou duas principais suposições de esforço/cache; itens não incluídos ou riscos especiais. Na primeira vez ou com dados insuficientes, indique "Estimativa não calibrada, não é cobrança real".

Escolha Standard ou Fast para começar.

X/Y etc. são marcadores de posição de formato: devem ser substituídos por números calculados com base na tarefa e nas taxas verificadas, e não copiados. Por padrão, arredonde de forma razoável; não use casas decimais para fingir precisão. Se não puder calcular um dos níveis, mantenha a linha e explique o desconhecimento, não omita o Fast silenciosamente.

Ao comparar os dois níveis, use o mesmo escopo de entrega e suposições de esforço, comparando apenas as taxas aplicáveis; a menos que haja evidência, não trate o Fast como tendo maior capacidade, menos tokens ou um tempo de conclusão determinado. O multiplicador Fast para créditos do Codex e valores da API pode ser diferente; verifique cada um separadamente. Aplique o multiplicador apenas aos custos do modelo aplicáveis; imagens, ferramentas de terceiros etc. são precificados com suas próprias taxas, não multiplique o total geral.

Por padrão, aguarde a seleção ou confirmação do usuário; se o hospedeiro não puder alternar entre os níveis com as ferramentas disponíveis, explique que o usuário precisa alternar, e não finja que o Fast já foi ativado. A confirmação relacionada a custos não substitui os requisitos de permissão da tarefa em si. Não reduza os critérios de aceitação, adicione interfaces pagas ou delegue tarefas por conta própria.

Quando o usuário definir um orçamento, primeiro confirme a unidade e o escopo incluídos. Se a estimativa exceder o orçamento ou custos críticos forem desconhecidos, pergunte antes da próxima ação paga controlável. A Skill sozinha não pode interromper forçosamente requisições de modelo em execução, tarefas externas de geração ou assistentes concorrentes; não é garantido que o orçamento não seja ultrapassado. Orçamentos rígidos exigem medição e interrupção no nível de execução real, e não devem ser falsificados nesta Skill.

A auditoria posterior só é realizada quando solicitada pelo usuário, e não deve tomar o lugar do fluxo principal de cotação prévia. Quando houver uso confiável no nível da tarefa, reporte "uso medido"; o valor calculado com base nas taxas ainda é uma "estimativa com base nas taxas"; a cobrança oficial segue a fatura. Sem dados, escreva "não obtido". Persista registros anonimizados de calibração apenas quando solicitado pelo usuário.

Calculadora Local Opcional

Para somar múltiplos itens, use python3 scripts/calculate.py quote.json. Totalmente offline: não chama o modelo, não lê a conta, não coleta tokens e não verifica se as taxas estão atualizadas.

Campos de entrada JSON:

  • unit: USD, CNY ou credits, unificado em toda a tabela; moedas diferentes são calculadas separadamente, sem conversão implícita.
  • items: cada item contém name, quantity: [low, high], expected_quantity, rate, basis, source, as_of. expected_quantity é a quantidade mais provável com base em evidências, deve estar dentro do intervalo; quando desconhecida ou omitida, não assume automaticamente o ponto médio.
  • quantity é o intervalo de quantidade da unidade de cobrança explícita; rate é a taxa aplicável por unidade (já verificada e tratada com canal/multiplicador); basis explica a unidade, modelo, canal e base da quantidade; source é o link oficial ou uma fonte fornecida explicitamente pelo usuário; as_of é a data de verificação da taxa no formato AAAA-MM-DD.
  • Use null para quantidade ou taxa desconhecidas; não preencha com 0. Suporta múltiplos cenários, modelos ou ferramentas, mas sem duplicar a cobrança.
  • Ao cotar ambos os níveis simultaneamente, defina compare_fast: true no nível superior e forneça fast_rate para cada item; o multiplicador aplicável é verificado pelo chamador de acordo com o canal atual. Para custos de ferramentas fixas, fast_rate é igual a rate; se a taxa Fast estiver ausente, trate como desconhecida. Ambos os níveis usam o mesmo conjunto de cenários de quantidade.

A saída distingue subtotal de itens conhecidos, intervalo total estimado e valor mais provável; se houver itens desconhecidos, o total estimado fica vazio. A completude ainda depende de você listar todos os itens; passar no cálculo não significa previsão precisa. Teste: python3 -m unittest discover -s scripts -p 'test_*.py'.

Habilidades Relacionadas