Pular para o conteúdo

Parei de queimar tokens no Claude Code com o Jev (3 recursos para você copiar)

Ver no idioma original →

Autoria: Matheus Battisti - Hora de Codar · Assistir no YouTube

Vídeo de autoria do canal indicado, não da IANIA; todos os direitos pertencem ao criador. Transcrição, resumo e tradução gerados automaticamente; o conteúdo no idioma original é preservado na versão em idioma original.

Idioma original: português

Vídeo original: Parei de queimar tokens no Claude Code com o Jev (3 recursos para você copiar) · Canal: Matheus Battisti - Hora de Codar · 25:22 · Assistir no YouTube

Tópicos: Agentes de IA, Claude Code, Inferência e otimização de modelos

O vídeo apresenta três maneiras de economizar tokens em agentes de código usando o Jev: melhorar a compactação do contexto, escolher automaticamente o modelo adequado a cada pedido e carregar apenas as skills necessárias. O apresentador demonstra as configurações em um projeto de exemplo no Claude Code, usando hooks para consultar o Jev antes de encaminhar tarefas. Ele também mostra como registrar as decisões e explica que é importante permitir a ativação manual de uma skill quando necessário. Embora os exemplos usem Claude Code, a proposta é aplicável a outros agentes de código.

  • O Fast Jev Compaction usa decisões do Jev para selecionar, remover ou reescrever informações durante a compactação do contexto.
  • Um roteador pode classificar cada pedido e encaminhá-lo a um subagent configurado com o modelo mais adequado.
  • O exemplo de roteamento usa Haiku para tarefas simples, Sonnet para tarefas rotineiras e Opus para tarefas difíceis.
  • Critérios de risco e confiança podem fazer o roteador escolher um modelo mais capaz quando houver incerteza.
  • Um seletor de skills pode consultar o Jev antes de disponibilizar uma skill ao agente de código.
  • Guardar as skills em uma pasta de biblioteca impede que o Claude Code carregue todas automaticamente.
  • O seletor pode optar por não ativar nenhuma skill, evitando o uso desnecessário.
  • Registrar modelo, skill, mensagem e decisão em arquivos ajuda a entender e revisar o funcionamento dos mecanismos.
  • É importante prever uma forma de solicitar explicitamente uma skill e contornar o roteamento quando desejado.
  • Os exemplos são apresentados no Claude Code, mas o autor afirma que os conceitos também se aplicam a outros agentes de código.
Início Capítulo Resumo
00:00 Apresentação das três estratégias O apresentador introduz o Jev como apoio para economizar tokens por meio da compactação, da escolha de modelos e da seleção de skills.
02:37 Instalação e demonstração do Fast Jev Compaction O vídeo mostra a configuração do plugin e sua aplicação para compactar o contexto de um projeto de exemplo.
09:23 Roteador automático de modelos O apresentador explica como criar um hook que classifica pedidos e os encaminha a subagents com modelos diferentes.
17:37 Seletor de skills O exemplo guarda as skills em uma biblioteca e consulta o Jev para decidir se alguma deve ser enviada ao Claude Code.
22:46 Resultados, ressalvas e encerramento O apresentador resume as estratégias, recomenda uma forma de ativar skills manualmente e encerra com divulgações e chamada para ação.

Compactação, modelo certo por mensagem e skill certa por pedido. — 01:01

A ideia é criar um roteador automático com Jev. — 11:56

Qual dessas skills serve para este pedido? Com opção nenhuma. — 19:09

É importante ter uma forma de destravar e ativar uma skill conscientemente. — 23:48

Ela vem para somar e não para substituir nada. — 24:51

  • Jev (ferramenta): Ferramenta usada no vídeo para tomar decisões sobre compactação, seleção de modelos e ativação de skills.
  • Claude Code (ferramenta): Agente de código usado como ambiente de demonstração para configurar os três mecanismos.
  • Fast Jev Compaction (repo): Repositório apresentado como um recurso para orientar a compactação do contexto com decisões do Jev.
  • compactação do contexto (conceito): Processo de selecionar e reorganizar informações da conversa para manter contexto útil e reduzir seu tamanho.
  • roteador de modelos (conceito): Mecanismo que classifica um pedido e o encaminha ao modelo considerado adequado à tarefa.
  • Haiku (modelo): Modelo usado no exemplo para tarefas simples e rápidas.
  • Sonnet (modelo): Modelo usado no exemplo para tarefas rotineiras e extensões de um sistema existente.
  • Opus (modelo): Modelo usado no exemplo para tarefas difíceis ou que exigem mais raciocínio.
  • hook (conceito): Gancho executado antes de o agente ler uma mensagem, usado para consultar o Jev e encaminhar o pedido.
  • skill (conceito): Conjunto de instruções que o seletor avalia para decidir se deve ser disponibilizado ao agente em resposta a um pedido.
  • subagent (conceito): Agente auxiliar configurado no exemplo com permissões e conhecimento do projeto, mas com um modelo específico.
  • Appmax (empresa): Empresa mencionada em um segmento patrocinado sobre integração de pagamentos.

00:00 Cara, eu tô usando o Jev bastante nos meus sistemas desde que foi lançado, e agora comecei a implementá-lo nos meus agentes de código. Consegui economizar tokens nesse processo. Então, neste vídeo, vou te mostrar três estratégias que estou utilizando na prática e que não dependem de agentes de código específicos. Tu pode usar no Code X, no Graft, no Open Code, no Cloud Code, não importa. Chega aí, vamos ver como se faz. Bora lá. Bom, galera, vou por partes aqui, tá? Coloquei Cloud Code no slide,

00:30 mas, como eu falei, não importa qual IA, tá? Vou usar o Cloud Code, então quem estiver usando vai ter um pouquinho mais de facilidade para implementar, mas é só isso. O conceito é o mesmo, e quem está por trás dessa economia, quem está melhorando a IA, é o Jev, beleza? Então, vamos lá: o Jev toma decisões pequenas que hoje saem caro, né, se a gente delegar isso para a IA. Como manter a conversa, qual modelo usar e qual skill carregar no momento certo. E uma das dúvidas que eu mais respondo aqui é

01:01 qual modelo usar para cada coisa. E agora o Jev vai escolher isso para vocês, e quem melhor do que ele, né? Então, vamos trabalhar com esses três tipos aqui: compactação, o modelo certo para cada mensagem, né, para cada prompt que a gente manda, e a skill certa para cada pedido — ativar a skill certa quando realmente precisa, tá? Então, a primeira coisa que a gente vai ver é a parte de compactação da conversa. Hoje temos um comando que não funciona tão bem, né? Muita gente relata que ele consome tokens, que joga fora o que é necessário na conversa.

01:32 É o compact, tá? Então, o que a gente vai fazer aqui? Vamos colocar o Jev também nessa etapa de compact, tá? Toda IA tem compactação, né? Então, apesar de eu usar o Cloud Code, vamos conseguir usar isso em qualquer coding agent, digamos assim, tá? A ideia aqui é o Jev selecionar o que vai ser mantido no contexto, o que vai ser excluído, o que precisa ser reescrito e por aí vai, tá? Vamos usar uma skill para isso, um pacote, digamos assim. E ele vai coordenar todas essas coisas. Ele já tem mais de 7.000 estrelas. Eu testei,

02:04 gostei e vou trazer ele aqui, né, como nosso primeiro recurso. Bora lá ver e aplicar. Antes de conhecer o pacote, galera, não se esqueçam: estamos na reta final do nosso curso de Jev, tá? Já estou gravando as últimas aulas para vocês, tá? Ele estará disponível já na semana que vem. O link para se inscrever e entrar na turma fundadora, que ganha um desconto especial, está no comentário fixado e na descrição deste vídeo. Então, já se inscreve e garante a tua vaga, beleza? Lá tu vai aprender tudo sobre o Jev, como funciona, como integrar do jeito

02:37 certo, né? Quais padrões de design tu pode aplicar nos teus projetos. Vamos criar um projeto real e aprender a colocá-lo em produção. É supercompleto. Está tudo bem explicadinho nesta página aqui. Como eu falei, o link está na descrição, tá bom? Olha só, recentemente descobri este repositório aqui, o Fast Jev Compaction, tá? Ele vai fazer exatamente o que falei antes. Vai selecionar o que precisa ser compactado, remover o que não interessa; enfim, melhora essa questão do contexto, tá? Tem a parte de instalação aqui, como vocês podem ver. Não depende de IA, tá?

03:07 Mas tem uma seção exclusiva para Cloud Code como plugin, né? Então, é uma facilidade a mais, mas nas outras IAs tu consegue configurar pelo readme que eles colocaram aqui. É só seguir o passo a passo que tu vai conseguir instalar isso com sucesso. Como eu falei, ele tem mais de 7.000 estrelas, então teve uma grande adesão. E, apesar de a pessoa não ter feito mais atualizações, né, está há duas semanas sem atualizar, ele cumpre o seu papel. Fechou? Então, vou instalar aqui agora para mostrar para vocês. Bom, galera, só para dar um pouco

03:37 mais de contexto, né, estou com o Cloud Code aberto aqui. Criei um projeto para a gente trabalhar nele, né: um site de barbearia que chamei de Navalha, tá? Um site super simples, só para a gente aplicar todos os conceitos aqui e não perder tempo criando um projeto, né? Outra coisa fundamental: a gente precisa ter o Jev, né? O Jev é uma IA de tipagem segura, né? Não temos mais waitlist, né? A gente estava reclamando disso, que precisava esperar para usar, mas agora eles acabaram com isso. E, se não me engano, até semana passada, pelo menos, tu se registrava e ganhava 5

04:08 dólares para usar, o que é quase infinito, tá? Então, tu vai ter que criar a tua conta aqui, fazer login e criar a tua chave de API, tá? Vai entrar em API Keys. Se quiser aprender mais, cara, tenho aqui uma playlist sobre Jev; já ensinei de várias maneiras. Então, dá uma olhada nessa playlist depois deste vídeo, que tu vai conhecer mais sobre o Jev. E, claro, tem o nosso curso, que comentei com vocês. Então, cria a chave, copia ela temporariamente para um lugar seguro, num bloco de notas, porque a gente já vai usar, tá? Também criei a minha aqui. E aí, estou com o projeto aberto aqui e agora vou instalar o Fast Jev Compaction, tá?

04:40 Então, a gente pode instalar, por exemplo, como plugin, né? É a maneira mais tradicional de instalar no Cloud Code, que é o meu caso. O Fast Jev Compaction exige que a chave do Jev esteja no settings.json, tá? Então, vou colocar aqui um arquivo chamado settings.local.json na pasta .cloud, né? É a pasta oculta onde ficam os arquivos de configuração do Cloud e as skills. Também tenho algumas skills neste projeto. E aqui tu vai colocar um arquivo semelhante a este, né? Até explico aqui como criar esse arquivo, ó.

05:13 É desta maneira aqui. E ele coloca globalmente, né? Coloca na pasta do Cloud. Eu prefiro que fique no projeto para a gente testar e depois, sim, passar para uma configuração global. Bom, a chave que copiamos, vamos colocar ali, né? Então, neste espaço aqui, ó, tu vai colocar a tua chave. Vou colocar a minha e salvar o arquivo. Depois de salvar, tu pode fechar e perguntar para ele se consegue ver esse arquivo: “Tu consegue ver o arquivo settings.local.json e as chaves que tem nele? Não precisa falar os valores.” Só para ter certeza

05:45 de que está tudo configurado, tá? Bom, se ele der esse OK aqui, a gente pode reiniciar a sessão e instalar o plugin com os comandos de marketplace e depois de instalação do plugin, tá? Isso também está na documentação. Ó, ele falou que os arquivos estão aqui, beleza. E aí vou sair, né? Aliás, aqui está rodando o projeto. Vou mover para o background o terminal que está rodando o projeto, tá? Então, vou sair daqui rapidinho. Tá, pronto, está aqui. Pronto, está aqui. Então, agora vou instalar os co… eh,

06:16 os plugins com os comandos que estão na documentação. Então, primeiro a gente adiciona o marketplace. Pronto, o marketplace está aqui. Agora instalo o plugin com o escopo local, que é a última flag. Isso faz com que ele seja instalado só para este projeto, e é assim que gosto de testar as coisas. Ó, deu tudo certo aqui, tá? Bom, daí vamos iniciar o Cloud de novo, tá? Com o Cloud iniciado, vamos usar um {barra} plugin para ver se o plugin está aqui, tá? Daí, aqui, a gente pode selecionar {install}. Ó, ele está aqui, beleza? Então,

06:47 Fast Jev Compaction, OK. E aí também posso usar o compact — na verdade, é só para conferir. Também posso usar o compact agora, só para ver se ele já mostra os indícios do Fast Jev, ó. Está vendo ali? Então, ele já mostrou aqui esta… essa interação, mas ainda não aconteceu nada, né? Então, vou ter que executar algumas coisas para a gente ver isso na prática, tá? Vou adicionar aqui algumas funcionalidades, alguns recursos, só para ir juntando ao contexto. Então, vou colocar aqui: vamos

07:18 Criar o programa de fidelidade da Lavagem, né, que é o projeto. Essas regras valem para tudo daqui para frente. Então eu boto aqui como funciona o programa de fidelidade e também peço para, antes de escrever o código, ler como funcionam os agendamentos, né, porque já tem uma regra de negócio aqui: os clientes, a mudança de status no painel e o relatório, tá? Então isso vai fazer com que ele encha o contexto naturalmente, como se fosse a sessão, né? A gente vai fazer isso no dia a dia também. E aí depois a gente vai ver na prática o Fast Dev Compaction funcionar. Ó, galera, aí ele termina,

07:50 beleza? Fechou aqui a tarefa, demorou 18 minutos, beleza? Se eu dou um context aqui, a gente vai ver que ele ocupou ali uma parte do contexto, né? Beleza, isso é normal. Aí, quando ele enche, tem a autocompactação; isso também acontece. Porque agora a gente tem o quê? A ferramenta do Dev ali, que vai fazer compactação inteligente. Então, quando a gente dá o compact, tá? A gente vai ter aqui a ação dela, né? Lembrando, claro, que quanto mais eu usasse

08:21 isso aqui, melhor seria, né? Então vocês façam o teste aí também. Ó, então aqui a gente vê que foi muito rápido, né? Vejam aqui as decisões, né? Perdeu aqui. Agora saiu da tela. Mas deixa eu ver… Ah, acho que consigo resgatar, né? Bom, infelizmente ali ele não deixou as mensagens aparecendo, né? Mas o compact foi executado muito mais rápido do que normalmente, tá? Ele tomou todas as decisões do Dev ali. E esse foi o contexto que restou, né? Então ele aproveitou ali uma parte,

08:53 óbvio, ele não retirou tudo. E foi tudo baseado nas decisões da IA do Dev para que o contexto fosse aproveitado da melhor forma possível. Dessa maneira, vocês vão ter mais sucesso com o compact, né? Essa ferramenta vai melhorar e ajudar a manter um contexto útil para a gente, tanto na compactação como também na autocompactação, tá? Então é dessa maneira que vocês vão usar aqui. Infelizmente, o resultado não ficou salvo, mas vocês viram ali que ele poupou, né? Todas as decisões do Dev,

09:23 até mostrou ali o que aconteceu no pop-up, mas não manteve o lastro. Só temos o resultado final, tá? Então essa é a primeira ferramenta. Então, galera, agora quero mostrar para vocês uma segunda alternativa para economizar tokens, ou vocês podem até usar em conjunto, beleza? Só antes, quero deixar aqui para vocês também a Appmax, tá? Se vocês precisam integrar pagamento no sistema de vocês, esse serviço aqui é o ideal, galera. Por quê? Ele começa com taxa zero no Pix, se tu integrar aqui via API. Então, dentro da

09:53 plataforma, tu vai ter acesso a uma documentação que vai te ajudar a integrar; pode ser até pela própria IA, né? Tu consegue explorar a documentação, ver a referência e o quickstart para poder começar rapidamente. Tem ambiente sandbox para tu separar o que está em produção, né, do que vem de fato do teu ambiente de desenvolvimento. E não é só pagamento: tu vai ter acesso a recorrência, para poder fazer split para contas diferentes, né; tem antifraude para tu não tomar golpe, tokenização e webhooks, para o sistema receber a mensagem de volta.

10:24 Quer vender para fora do Brasil? Também dá. Tem link de pagamento para tu enviar para o teu cliente e outros recursos, tá? Tudo bem explicadinho aqui. Através desse link que está no comentário fixado, tu vai ter acesso a essa condição do Pix, né, com taxa zero. E, claro, se ficar qualquer dúvida, se vocês tiverem alguma dúvida sobre se dá para usar no sistema de vocês e tudo mais, cara, fala com o pessoal da Appmax aqui pelo WhatsApp. Eles respondem rápido, vão sanar todas as dúvidas de vocês e fazer o máximo possível para conseguir integrar o pagamento no sistema de vocês, beleza?

10:55 Então, é uma alternativa para quem está começando, porque a taxa zero ajuda bastante, né? A maioria — ou todas — as empresas cobram uma taxa, às vezes fixa, às vezes uma porcentagem do pagamento. E a Appmax tem 0% no Pix, então o Pix sai de graça para tu começar, tá? Então, bora para a segunda. A segunda, galera, é uma das principais dúvidas aqui do canal, né? Quando a gente trata de IA que tem múltiplos modelos, né? Por exemplo, o Claude tem o Haiku, tem o Sonnet — inclusive saiu o 5.5 agora mesmo, né? Tem o Opus 5.5, tem o Fable. Quando a gente vai usar cada um deles, né?

11:26 Porque há diferenças no tempo de resposta, na base de conhecimento, no preço — se é mais barato ou mais caro — e a empresa, por manter três ou quatro, né, quer que tu use modelos variados, porque sabe que cada um é bom para uma coisa. Então, a grosso modo, a gente sabe que o Haiku é bom para tarefas mais simples e rápidas, que não precisem de tanto raciocínio. O Sonnet vai ser bom para desenvolver coisas que estendam o sistema que tu já está desenvolvendo, né? Que já têm um padrão a ser seguido. Ele vai conseguir

11:56 dar andamento a isso, né? E o Opus seria mais para tu criar, desenvolver novos módulos, desbravar o sistema com que tu está trabalhando, né? Expandir ele. Então, a grosso modo, seria isso. Mas aí tem que ficar mudando na mão; é meio chato. E é aí que vem a ideia de criar um roteador automático com Jev, tá? Então, vou ensinar para vocês como criar isso. Eu já uso, né? Não só no Claude, como em outras IAs também. Funciona da maneira que está mostrando aqui na imagem para vocês. O Jev, quando recebe o prompt, toma rapidamente a decisão de para onde mandar. Em milissegundos; a gente nem sente ali,

12:27 né? E logo vai para a IA correta e recebe a melhor resposta, com a máxima economia. Bora lá. Vou colocar o prompt aqui, galera, que vai dar vida ao roteador, tá? Então, vocês podem copiar também. Boto aqui, ó: “Quero um roteador de modelo para o Claude rodar neste projeto, usando o Jev. Use a skill do Jev que já está instalada, né?” Então, isso aqui também é fundamental. Na própria página da Type Safe, aqui na página inicial, quando tu está logado, vai poder instalar essa skill aqui, ó. Para rodar o Jev da melhor maneira, tu vai ter que tê-la instalada no teu Claude, tá?

12:57 Então, é só copiar aqui o edit prompt, ou tu pode vir aqui na documentação deles e instalar para qualquer tipo de agent, tá? Eles ensinam aqui — ou melhor, instruem teu agent a instalá-la, tá? Então, é bem tranquilo, bem simples, e precisa tê-la, tá? Então, com base nela, o que eu vou fazer aqui? Botei, né? A ideia é que a sessão principal rode no Haiku e funcione como recepção. Toda vez que eu mando uma mensagem, antes de o Claude ler, um gancho, né, um hook, pergunta para o Jev o nível do pedido. E o trabalho vai para o subagent do tamanho certo. A gente vai trabalhar assim. Criei três subagents neste projeto com as mesmas permissões e

13:28 o mesmo conhecimento do projeto, mudando só o modelo: Haiku, Sonnet e Opus. O gancho manda para o Jev a minha mensagem e uma descrição curta do projeto. Então aqui tu pode fazer isso em nível de projeto global, né? Depende de como tu quer. Com essas perguntas numa chamada só, ele vai receber aqui o nível do pedido, tá? Também pergunta se o pedido tem risco de quebrar algo que já funciona, com uma resposta de sim ou não. O Jev, lidando com isso, vai trazer a decisão, né, sobre o que usar. E ainda coloco a decisão no código. Simples para o rápido, rotineiro para o padrão, difícil para o profundo, que seria o Opus. Se o risco passar de 70%

14:00 — esse é um critério que eu vou ter —, aí vai subir um nível, tá? Se o Jev estiver pouco confiante no nível, com confiança abaixo de 60%, também sobe um nível, né? Então, na dúvida, sempre o modelo mais forte. Eu boto que o gancho informe ao Claude o nível de subagent indicado, escreva no Claude o ID do projeto, e que a sessão principal sempre entregue o trabalho ao subagent indicado pelo roteador. Isso aí me responde com o resumo do que ele fez. Mensagem que começa com ponto de exclamação passa pelo roteamento. Então, se eu quiser algo em um modelo específico, posso mudar

14:32 E mandar com exclamação para que eu também não tenha essa limitação dessa ferramenta quando não for necessário. Registra a decisão no arquivo: horário, mensagem, nível, confiança e risco. Isso aqui é mais para a gente ver, né? E isso vai fazer com que a gente entenda como ele decidiu por cada um dos modelos, tá? Então vou deixar ele criar aqui o roteador. Já mostro para vocês como funciona, né? Então, aqui eu fiz um mais generalista, né? Vocês podem fazer um mais voltado ao projeto de vocês, mais voltado à rotina de vocês. Aí entra a personalização que vocês pretendem

15:04 fazer, tá? Estou mostrando a ideia, e vocês evoluem conforme a necessidade. Então, olha só, galera, ele me entregou aqui os subagents, tá? Ele me entregou também o roteador, né? Como funciona a decisão. Ele aproveitou ali a chave do settings.local.json. Vou abrir aqui uma nova sessão para a gente ver se funcionou. Então, vou abrir a sessão e já vou iniciar no modo Haiku. Vou fazer alguns prompts e vamos ver como ele se comporta. Ó, abriu aqui

15:34 no Haiku, né? Então vou mandar aqui um prompt bem simples, tá? Olha só, ele está mostrando ali o roteador, aguardando o primeiro pedido. Então, pedi para ele trocar o texto do botão “Agendar” para “Reservar horário”, né? É só mudar um texto no botão. E ele já mandou para o subagent, como a gente pode ver aqui, né? Foi para segundo plano, né? Então, a gente vai ter que esperar a resposta. As decisões vão ficar salvas nesse arquivo aqui. Então, a gente pode ver que minha mensagem foi: “Troque o texto do botão ‘Agendar’ para ‘Reservar horário’”. Ele considerou simples,

16:05 confiança 1, risco 0,1, subagent Haiku. Está vendo aqui? Já veio a resposta do Jev, né? Influenciando o nosso prompt. Vou mandar outro aqui. Então, vou adicionar um filtro por barbeiro na agenda do painel. Só para mostrar para vocês também. Ó, o projeto já está com o botão “Reservar horário”, então ele já concluiu aquela tarefa, né? Antes, aqui estava “Agendar”. E agora ele mandou outra mensagem. Ele classificou como nível de rotina, então

16:35 ele utilizou Sonnet, tá? Aí teve uma confiança de 70%, né? Então, quase no limite para deixar no modelo de nível mais alto, né? E aqui estão os tempos do Jev também, em ms. Se eu pedir algo um pouco mais difícil… Então, vamos fazer aqui a solicitação para impedir que dois clientes fiquem com o mesmo horário quando confirmarem ao mesmo tempo, né? É um problema que pode acontecer. Aí, aqui ele detectou como nível difícil, com confiança de quase 100%, né? Então ele

17:06 sabia que era difícil e utilizou o modelo Opus para isso, tá? Então, tivemos aqui os três modelos sendo utilizados, cada um para seu nível de tarefa, e com isso a gente consegue economizar tokens no processo, cara. Então, é uma estratégia muito interessante e simples de fazer, né? Um roteador simples que pode ficar global ou no nível do projeto, para que tu possas usar os modelos certos para as tarefas certas, beleza? Bom, agora vamos para o caso número três, que também é bem interessante. Vou mostrar aqui rapidamente para vocês. Então, uma questão que me incomoda muito

17:37 nas IAs é que às vezes elas escolhem skills para coisas que não precisam, tá? Então, usam skills desnecessárias. Às vezes, por causa de um erro no prompt, ela entende que tem que usar a skill X, mas nem era necessário, ou usa uma skill e deixa a ação excessivamente elaborada, né? Não precisava usar aquela skill; dava para fazer de maneira mais simples e economizar tokens. Então, esses casos acontecem bastante comigo, né? É o que está aqui: skill errada e skill sem necessidade.

18:07 E o Jev vai melhorar isso. Ele vai intervir em cada seleção de skill para ver se realmente é necessário usar, tá? Então, vou criar esse mecanismo com vocês também. Bora lá. Então, vamos lá, galera, vou dar um clear aqui naquela sessão em que a gente criou o roteador. Vou mostrar para vocês como criar esse seletor de skills. O mecanismo é quase o mesmo; vocês vão entender como funciona bem facilmente se pegaram a ideia do roteador, tá? Então, olha só: hoje, toda sessão carrega a lista de todas as skills desse projeto, mesmo que eu não use nenhuma. Então, se

18:39 tem skill global, se tem skill do projeto, tudo é carregado na sessão, e aí ainda existe a chance de usar errado. Quero que o Jev escolha a skill certa para cada pedido e que o Claude só receba essa, ou seja, a skill certa ou as skills certas, dependendo do pedido, né? Use a skill do Jev que já está instalada. Então, aquela skill do Jev que eu comentei tem que estar no teu PC. Tire as skills da pasta que o Claude Code carrega sozinho e guarde-as numa pasta de biblioteca de skills dentro do projeto, sem mudar nada no conteúdo delas, porque senão vai ter o mesmo problema, já que esse é o mecanismo que o Claude Code tem para carregar tudo, tá? Então, só para

19:09 mostrar para vocês que isso também existe, né? Crie um gancho, um hook, que seja executado toda vez que eu mandar uma mensagem, antes de o Claude ler. Isso é bem importante. Ele envia para o Jev a minha mensagem e o nome e a descrição de cada skill da biblioteca, com a pergunta: “Qual dessas skills serve para este pedido?”, né? Esse é o prompt que a gente vai enviar. Com a opção “nenhuma”. Essa opção também é extremamente necessária para ele não usar uma skill à toa. Coloco também a mesma coisa de antes, né? Então, a decisão sobre a skill fica no código. Se a skill escolhida passar de 50% e o Jev estiver confiante — com confiança acima de

19:40 60 —, o gancho entrega ao Claude as instruções completas dessa skill, junto com a mensagem, dizendo qual é. Caso contrário, não entrega nada, e o Claude segue normalmente. Então, o Claude não vai ver as skills. Quem vai enviar é o Jev, tá? Então, essa parte é essencial. Se já existir o roteador do modelo nesse projeto, os dois ganchos convivem. Então, vamos fazer isso aqui para não dar conflito com o outro que a gente acabou de criar e gerar um programa maior, né? Então, a gente também precisa ter essa interação entre os dois, tá? Registre cada sessão num arquivo: horário, mensagem, skill escolhida.

20:11 Então, só estou explicando para a gente poder ver o log, né? Isso aqui não é necessário, se não quiser. Pode até fazer um painel bem bonitinho, se tu quiser também. Então, aqui, ó, uma coisa interessante, né? O roteador já entrou na minha sessão quando dei o clear. Então, ele classificou aqui como profundo, né? Algo difícil. Mandou para o Opus, tá? E aí está trabalhando aqui em segundo plano. Então, não iniciou uma sessão nova, né? Dei um clear e o mecanismo de roteamento que a gente fez já está funcionando, tá? Vamos esperar aqui e já vamos ver o nosso

20:42 seletor de skills em ação. Bom, galera, então o subagent, com o nosso esquema de escolher o melhor modelo, já entregou aqui, tá? Também entregou o roteador de skills, e tem uma pasta chamada “roteador”, tá? Se vocês perceberem, as skills saíram daqui, né? Elas não estão mais na pasta do Claude, que é exatamente o que a gente comentou que deveria fazer. Então, se eu abrir aqui uma nova sessão, por exemplo, já estou iniciando com Haiku, né? Que está usando toda a parte de roteamento. Vou pedir alguma

21:12 coisa aqui para ele. Então: “Atualize o changelog com o que mudou hoje”, né? O projeto tem um changelog que mapeia as mudanças. Aí ele vai fazer o roteamento e vai fazer a seleção de skills, tá? Então, aqui em decisões, a gente já tem uma decisão: o Claude utilizou uma skill chamada changelog, que tinha no projeto, tá? E a tarefa foi concluída em 1.391 milissegundos. Tem algumas mensagens que o próprio Claude manda, estão vendo? Não tem nada a

21:43 ver com o prompt. E isso não deve ativar nenhuma skill. Olha, o Dev não indicou nenhuma skill. Então, é uma mensagem do sistema, né? Então, a gente vai ter isso aqui também. Por isso, o trabalho de não ativação é tão importante, né? Assim como quando a própria IA indicaria uma skill errada, né, sem o nosso mecanismo aqui. Então, olhando o projeto aqui, né, ele tem tons de dourado. Vou pedir para trocar isso por uma cor predominantemente verde. Então, vou colocar aqui: “O projeto

22:15 tem tons de dourado. Quero trocar essa cor dourada por um tom de verde. Prossiga com a alteração.” Então, mandei um novo prompt aqui. Ele vai disparar um novo subagent, né, com base na tarefa, e também vai ter uma avaliação de skill. Nesse caso, ele disparou a skill de componente de UI. Então, temos aqui uma decisão em 400 ms, escolhendo a skill correta para o objetivo determinado por mim no prompt. Beleza? E

22:46 com isso, o roteador já está rodando também, né? A gente tem aqui o log. Aí, ele escolheu o Raiko tanto para a tarefa anterior quanto para esta, e por aí vai, tá, galera? Então, essas são três maneiras de economizar muitos tokens e deixar o projeto de vocês até mais rápido no Claude Code, beleza? E em qualquer outra IA, como eu falei para vocês. Aqui, o Claude foi o exemplo, mas funciona para outras IAs também, porque o mecanismo de todos os code agents é igual, né? A gente tem skills, a gente tem plugins,

23:17 a gente tem vários modelos, a gente tem contexto, tudo é compartilhado, né? Então, galera, estamos olhando aqui. E lembrando, galera, que talvez, nesse caso de skill, só para dar esse toque para vocês, fosse necessário também colocar algum comando especial para ativar uma skill quando a gente quisesse, porque talvez, pelas decisões, ele pudesse deixar de fora skills que a gente queria utilizar. Então, a gente teria que chamá-la nominalmente ou usar algum comando que faça

23:48 com que a gente burle ou não passe por esse fluxo para ativar uma skill que a gente quer, tá? Só para deixar esse detalhe também, que eu fiz no outro caso, né? Nesse aqui, eu não chego a colocar isso, mas é importante que a gente tenha essa forma de destravar, porque, senão, a gente fica muito refém do Jev. As coisas vão funcionar muito bem, mas a gente pode acabar não tendo a opção de adicionar algo conscientemente também, tá? Isso é importante quando a gente quer testar algo diferente. Ô, galera, então não se esqueçam de se pré-inscrever no nosso curso de Jev, tá? Vou deixar na descrição o link para essa página. Aqui

24:20 tem todos os detalhes também. E vejam a playlist de Jev aqui no canal. Tem muito conteúdo interessante sobre essa IA, tá? Mais uma vez, galera: AppMax. Se vocês querem integrar pagamentos ao sistema de vocês, este é o melhor lugar. Vai ter taxa zero na integração via Pix. Então, isso já ajuda quem está começando, e aqui tem uma documentação muito rica para que vocês possam fazer qualquer ação com base no documento que eles criaram. Então, é muito mais fácil, porque está tudo descrito como deve ser feito. Então, para pagamento via Pix, é só

24:51 vir aqui, ver o exemplo e pronto, né? Dá para colar na IA e ter a funcionalidade pronta. Fechou? Bom, então não se esqueçam de deixar aquele like, galera, e de se inscrever no canal também para receber os próximos vídeos. Comentem se vocês usam o Jarvis em outros casos para economizar tokens, né, ou no dia a dia de vocês. Quero muito saber, porque é uma tecnologia que estou usando todos os dias, integrando aos sistemas e da qual estou vendo muito valor, né? Acho que ela vem para somar, não para substituir nada. É assim que estou vendo e usando também. Fico por aqui. Espero

25:22 vocês no próximo vídeo. Valeu!

Transcrição original

[00:00] Cara, eu tô usando o Jeff muito nos meus sistemas desde que lançou e agora eu comecei a implementar ele nos meus agentes de código. Consegui economizar tokens nesse processo. Então nesse vídeo aqui eu vou te mostrar três estratégias que eu tô utilizando na prática e que não dependem de agentes de código. Tu pode utilizar no Code X, no Graft, no Open Code, no Cloud Code, não importa. Chega aí, vamos lá ver como é que faz. Bora lá. Bom, galera, vou por partes aqui, tá? Eu botei Cloud Code no slide,

[00:30] mas como eu falei, não importa a IA, tá? Eu vou utilizar o Cloud Code, então quem tiver utilizando vai ter um pouquinho mais facilidade ali para implementar, mas é só isso. O conceito é o mesmo e quem tá mandando nessa economia, quem tá melhorando a IA é o Jeff, beleza? Então bota aqui, o Jeff toma decisões pequenas que hoje saem caro, né, se a gente delegar isso para a IA. Que manter a conversa, qual o modelo utilizar e qual skill carregar no momento certo. E uma das dúvidas que eu mais respondo aqui é

[01:01] qual modelo utilizar para cada coisa. E agora o Jeff vai escolher isso para vocês e quem melhor que ele, né? Então vamos lá, vamos trabalhar nesses três tipos aqui. Compactação, modelo certo por mensagem, né, por prompt que a gente manda e skill certa por pedido, ativação de skill certa quando precisa mesmo, tá? Então o primeiro aqui que a gente vai ver é a parte de compactação de conversa. A gente tem hoje um comando que não funciona tão bem, né, muita gente relata que ele come tokens, que ele joga fora o que precisa na conversa.

[01:32] É o compact, tá? Então o que que a gente vai fazer aqui? A gente vai colocar o Jeff nessa etapa de compact também, tá? Toda IA tem compactação, né? Então apesar do Cloud Code a gente vai conseguir utilizar isso em qualquer coding agent, vamos dizer assim, tá? Então a ideia aqui é que o Jeff ele selecione o que vai ser guardado no contexto, o que vai ser excluído, o que precisa ser reescrito e por aí vai, tá? A gente vai utilizar um skill para isso, então pacote, vamos dizer assim. E ele vai coordenar todas essas coisas. Ele já tá com mais 7.000 stars, eu testei,

[02:04] gostei e vou trazer ele aqui, né, como o nosso primeiro recurso. Bora lá ver então e aplicar. Antes de conhecer o pacote, galera, não se esqueçam, a gente tá aqui na reta final para o nosso curso de Jeff, tá? Já tô nas últimas aulas gravando aqui para vocês, tá? Ele estará disponível semana que vem já. O link para se inscrever e entrar na turma fundadora, que ganha um desconto especial, está aqui no comentário fixado e na descrição desse vídeo. Então, já se inscreve e garante a tua vaga, beleza? Lá tu vai aprender tudo sobre o Jeff, como funciona, como integrar do jeito

[02:37] certo, né? Quais os padrões de design que tu pode aplicar nos teus projetos. A gente vai criar projeto real, vai aprender a colocar em produção, super completo. Tá tudo bem explicadinho nessa página aqui, que como eu falei, o link tá na descrição, tá bom? Olha só, recentemente eu descobri esse repositório aqui, que é o Fast Jeff Compaction, tá? E ele vai fazer exatamente o que eu falei antes. Ele vai selecionar o que tem que ser compactado, vai remover o que não interessa, enfim, ele melhora essa questão de contexto, tá? Tem a parte de instalação aqui, como vocês podem ver, não depende de IA, tá?

[03:07] Mas ele tem aqui uma seção exclusiva para Cloud Code como plugin, né? Então, é uma facilidade a mais, mas nas outras IAs tu consegue configurar pelo readme que eles colocaram aqui. E é só seguir o passo a passo que tu vai conseguir ter êxito na instalação desse cara. Eh, como eu falei, né, ele tá com mais de 7.000 stars, então ele teve uma grande adesão e apesar do da pessoa não ter atualizado mais, né, tá duas semanas sem atualização, ele cumpre o seu papel. Fechou? Então, eu vou instalar ele aqui agora para mostrar para vocês. Bom, galera, aí só para dar um pouco

[03:37] mais de contexto, né, eu tô com Cloud Code aberto aqui. Eu criei um projeto para a gente poder trabalhar nele, né, um site de barbeiro aqui que eu chamei de Navalha, tá? Um site super simples, só para a gente poder aplicar todos os conceitos aqui e não perder tempo criando um projeto, né? Outra coisa que é fundamental, a gente tem que ter o Jev, né? O Jev é uma IADA TypeSafe, né? A gente não tem mais waitlist, né? Mas a gente tava reclamando sobre isso, né? Que tinha que esperar para usar, agora eles acabaram com isso. E, se eu não me engano, né? Até semana passada, pelo menos, tu se registrava e ganhava 5

[04:08] dólares para utilizar, que é quase infinito, tá? Então, tu vai ter que criar a tua conta aqui, fazer o teu login e criar a tua chave de API, tá? Tu vai vir aqui em API Keys. Se tu quiser aprender mais, cara, eu tenho aqui uma playlist de Jev, eu já ensinei de várias maneiras. Então, dá uma olhada nessa playlist depois desse vídeo, tu vai conhecer mais sobre o Jev. E, claro, tem o nosso curso lá depois que eu comentei com vocês. Então, cria a chave, copia ela temporariamente aí, num lugar seguro, num bloco de notas, que a gente já vai usar, tá? Eu criei a minha aqui também. E aí, tô com o projeto aqui aberto e agora eu vou instalar o Fast Jev Compaction, tá?

[04:40] Então, a gente pode instalar, por exemplo, via plugin, né? Que é a maneira mais tradicional aqui para instalação do Cloud Code, que é o meu cenário. Então, o Fast Jev Compaction, ele exige ali que tenha a chave do Jev no settings.json, tá? Então, eu vou colocar aqui um arquivo chamado settings.local.json na pasta .cloud, né? Que é a pasta oculta, onde fica os arquivos de configuração do Cloud, as skills, que eu também tenho algumas skills nesse projeto. E aqui tu vai colocar um arquivo semelhante a esse, né? Eu até instruo aqui como fazer esse arquivo, ó.

[05:13] Tá dessa maneira aqui. E ele bota global, né? Ele coloca na pasta do Cloud. Eu prefiro que fique no projeto para a gente testar e depois sim evoluir para um global. Bom, a chave que a gente copiou, a gente vai colocar ali, né? Então, nesse espaço aqui, ó, tu vai colocar a tua chave, eu vou colocar a minha, vou salvar o arquivo. Depois de salvar, tu pode fechar e perguntar para ele se ele consegue ver esse arquivo. Tá aqui, tu consegue ver o arquivo settings.local.json e as chaves que tem nele, não precisa falar os valores. Só para ter certeza

[05:45] que está tudo configurado, tá? Bom, ele dando esse OK aqui, a gente pode reiniciar a sessão, instalar o plugin com os comandos de marketplace e depois instalação de plugin, tá? Então lá também na documentação. Ó, então ele falou que tem aqui os arquivos, beleza. E aí eu vou sair, né? Aliás, aqui tá rodando o projeto, eu vou mover para background que é o terminal que tá rodando o projeto, tá? Então eu vou sair aqui rapidinho. Tá, pronto, tá aqui. Pronto, tá aqui. Então agora eu vou instalar os com, eh,

[06:16] o plugins com os comandos ali que tem na documentação. Então primeiro a gente coloca marketplace. Pronto, tá aqui o marketplace. Agora eu instalo o plugin com o escopo de local ali que é a última flag. Isso faz com que ele só instale para esse projeto e é a maneira que eu gosto de testar as coisas. Ó, deu tudo certo aqui, tá? Bom, daí a gente vai iniciar o cloud de novo, tá? Aí com o cloud iniciado, a gente vai dar um {barra} plugin para ver se o plugin tá aqui, tá? Daí a gente pode aqui em {install}, ó, ele tá aqui, beleza? Então

[06:47] fast dev compaction, OK. E aí eu também posso utilizar o compact, que é só para ver, na verdade, compact, eu também posso usar o compact agora só para ver se ele já mostra ali os indícios do fast dev, ó, tá vendo ali? Então ele já mostrou aqui esse, essa interação, mas não teve nada ainda, né? Então vou ter que rodar algumas coisas para a gente poder ver ele na prática, tá? Então vou colocar aqui algumas funcionalidades, né, alguns recursos só para ir juntando ao contexto. Então vou colocar aqui: vamos

[07:18] criar o programa de fidelidade da Lavagem, né, que é o projeto. Essas regras valem para tudo daqui para frente. Então eu boto aqui como é que funciona o programa, programa de fidelidade e eu boto também para, antes de escrever o código, ler como funciona os agendamentos, né, porque tem uma regra de negócio aqui já, os clientes, a mudança de status no painel e o relatório, tá? Então isso vai fazer com que ele encha o contexto naturalmente, como se fosse a sessão, né? A gente vai fazer isso no dia a dia também. E aí depois a gente vai ver na prática o Fast Dev Compaction funcionar. Ó, galera, aí ele termina,

[07:50] beleza? Fechou aqui a tarefa, demorou 18 minutos, beleza? Se eu dou um context aqui, a gente vai ver que ele ocupou ali uma parte do contexto, né? Beleza, isso é normal. Aí quando ele enche, tem a autocompactação, isso também acontece. Porque agora a gente tem o quê? A ferramenta do Dev ali que vai fazer compactação inteligente. Então, quando a gente dá o compact, tá? A gente vai ter aqui a ação dela, né? Lembrando, claro, quanto mais eu usasse

[08:21] isso aqui seria melhor, né? Então vocês façam o teste aí também. Ó, então aqui a gente vê que foi muito rápido isso, né? Vejam aqui a as decisões, né? Perdeu aqui. Agora saiu da tela. Mas, deixa eu ver, ah, acho que consigo resgatar, né? Bom, infelizmente ali ele não não deixou as mensagens aparecendo, né? Mas o compact foi executado muito mais rápido do que é normalmente, tá? Ele teve todas as decisões do Dev tomadas ali. E esse foi o contexto que restou, né? Então ele aproveitou ali uma parte,

[08:53] óbvio, ele não retirou tudo. E foi tudo baseado em decisões da IA do Dev para que o contexto fosse aproveitado da melhor forma possível. Dessa maneira aqui vocês vão obter mais sucesso com o compact, né? Vai melhorar essa ferramenta que vai ajudar a manter contexto útil aqui para a gente, tanto na compactação como também na autocompactação, tá? Então é dessa maneira que vocês vão utilizar aqui. Felizmente não ficou o resultado, mas vocês viram ali que ele poupou, né? Todas as decisões do Dev,

[09:23] até mostrou ali o que aconteceu no pop-up, mas ele não manteve o lastro. Só temos o resultado final, tá? Então essa é a primeira ferramenta. Então, galera, agora quero mostrar para vocês uma segunda alternativa aqui para economia de tokens ou vocês podem até tá usando em conjunto, beleza? Só antes, quero deixar aqui para vocês também a Appmax, tá? Se vocês precisam integrar pagamento no sistema de vocês, esse serviço aqui é o ideal, galera. Por quê? Ele começa com taxa zero no Pix, se tu integrar aqui via API. Então, dentro da

[09:53] plataforma, tu vai ter acesso a uma documentação que vai te ajudar a integrar, pode ser até pela própria IA, né? Tu consegue aqui explorar a documentação, ver aqui a referência, o quickstart, para poder começar rapidamente. Tem ambiente sandbox para tu separar o que tá em produção, né? O que vem de fato do teu ambiente de desenvolvimento. E não é só pagamento, tu vai ter acesso a recorrência, para poder fazer split, né, para contas diferentes, tem antifraude para tu não tomar golpe, tokenização, webhooks, para o sistema receber a mensagem de volta.

[10:24] Quer vender para fora do Brasil? Também dá. Tem link de pagamento para tu enviar para o teu cliente e outros recursos, tá? Tudo bem explicadinho aqui, através desse link que tá no comentário fixado, tu vai ter acesso a esse a essa condição do Pix, né, com taxa zero. E, claro, qualquer dúvida que ficar, se vocês têm aí alguma dúvida se dá no sistema de vocês e tudo mais, cara, fala com ele aqui no WhatsApp, pessoal da Appmax, que eles respondem rápido e vão aí sanar todas as dúvidas de vocês e fazer o máximo possível para conseguir integrar no sistema de vocês o pagamento, beleza?

[10:55] Então, é uma alternativa para quem tá começando, porque a taxa zero ajuda bastante, né? A maioria ou todas as empresas cobram uma taxa, às vezes fixa, às vezes porcentagem no pagamento. E a Appmax tem 0% no Pix, então, Pix sai de graça para tu começar, tá? Então, bora para a segunda. A segunda, galera, é uma das principais dúvidas aqui do canal, né? Quando a gente trata de IA que tem múltiplos modelos, né? Por exemplo, o Claude tem o Haiku, tem o Sonnet, inclusive saiu o 5.5 agora mesmo, né? Tem o Opus 5.5, tem o Fable. Quando que a gente vai usar cada um deles, né?

[11:26] Porque tem diferença em tempo de resposta, tem diferença em base de conhecimento, tem diferença em ser mais barato ou mais caro e a empresa, por manter os três ou quatro, né? Ela quer que tu use variados modelos, porque ela sabe que cada um é bom para uma coisa. Então, a grosso modo, a gente sabe que o Raiko é bom para tarefas mais simples e rápidas, que não precisem de tanto raciocínio. O Sonit, ele vai ser bom para desenvolver coisas que, é, estendam o sistema que tu já tá desenvolvendo, né? Que já tem um padrão a ser seguido, ele vai conseguir

[11:56] dar, né, andamento a isso. E o Opus seria mais para tu criar, para desenvolver novos módulos, desbravar o sistema que tu tá, é, tratando, né? Expandir ele. Então, a grosso modo, seria isso. Mas aí tem que ficar mudando na mão, é meio chato. E aí que vem a ideia de criar um roteador automático com Jeff, tá? Então, vou ensinar para vocês como cria isso. Eu já uso, né? Não só no Cloud, em outras IAs também. Funciona da maneira que tá mostrando aqui na imagem para vocês. O Jeff, quando recebe o prompt, ele toma rapidamente a decisão de onde mandar, milissegundos, a gente nem sente ali,

[12:27] né? E logo vai para a IA correta e recebe a resposta melhor com a máxima economia. Bora lá. Eu vou colocar o prompt aqui, galera, que vai dar vida ao roteador, tá? Então, vocês podem copiar aí também. Botar aqui, ó: “Quero um roteador de modelo para o Cloud correr nesse projeto, usando o Jeff. Use a skill do Jeff que já tá instalada, né?” Então, isso aqui também é fundamental. Na própria página da Type Safe, aqui na home, quando tu tá logado, tu vai poder instalar essa skill aqui, ó, para rodar o Jeff da melhor maneira, tu vai ter que ter ela instalada no teu Cloud, tá?

[12:57] Então, é só copiar aqui o edit prompt ou tu pode vir aqui na documentação deles, instalar para qualquer tipo de agente, tá? Eles ensinam aqui, ou melhor, instruem teu agente a instalar ela, tá? Então, é bem tranquilo, bem simples e precisa ter ela, tá? Então, baseado nela, o que que eu vou fazer aqui? Botei, né? A ideia é que a sessão principal roda no Raiko e funciona como recepção. Toda vez que eu mando uma mensagem, antes o Cloud ler, um gancho, né, um hook, pergunta para o Jeff o nível do pedido. E o trabalho vai para o sub-agent, tamanho certo. A gente vai trabalhar assim. Criei três sub-agents nesse projeto com as mesmas permissões e

[13:28] o mesmo conhecimento do projeto, mudando só o modelo. High, Custom e Ops. O gancho manda pro Jeff a minha mensagem, uma descrição curta do projeto. Então aqui tu podes fazer a nível de projeto global, né? Depende como tu quer. Com essas perguntas numa chamada só. Aí ele vai receber aqui o nível do pedido, tá? Também o pedido tem risco de quebrar algo que já funciona, que é uma pergunta de sim ou não. O Jeff trazendo isso, o Jeff lidando com isso, vai trazer a decisão, né? Do que que usar. E ainda eu coloco a decisão ficando no código. Simples para o rápido, rotina para o padrão, difícil para o profundo que seria o Ops. Se o risco passar de 70%

[14:00] que é um critério que eu vou ter, aí vai subir um nível, tá? Se o Jeff tiver pouco confiante no nível, confiança abaixo de 60%, também sobe um nível, né? Então na dúvida, sempre o modelo mais forte. Eu boto que o gancho informe ao Cloud o nível sub agent indicado, escreva no Cloud o ID do projeto, que a sessão principal sempre entrega o trabalho ao sub agent indicado pelo roteador. Isso aí me responde com o resumo do que ele fez. Mensagem que começa com ponto de exclamação, passa em roteamento. Então se eu quiser, né? Algo em um modelo específico, eu posso mudar

[14:32] e mandar com exclamação para poder também eu não ter essa limitação dessa ferramenta quando não necessário. Registra a decisão no arquivo, horário, mensagem, nível, confiança, risco. Isso aqui é mais para a gente ver, né? E isso vai fazer com que a gente entenda como é que ele decidiu cada um dos modelos, tá? Então eu vou deixar ele criar aqui o roteador. Já mostro para vocês como funciona, né? Então aqui eu fiz um mais generalista, né? Vocês podem estar fazendo mais voltado ao projeto de vocês, mais voltado à rotina de vocês. Aí que vai a personalização que vocês pretendem

[15:04] fazer, tá? Mostrando a ideia e vocês evoluem conforme a necessidade. Então olha só, galera, ele me entregou aqui, né? Os sub agents, tá? Ele me entregou também o roteador, né? Como é que funciona a decisão. Ele aproveitou ali a chave do settings local JSON. Eu vou aqui abrir uma nova sessão para a gente poder ver se funcionou. Então aqui eu vou abrir a sessão, eu vou colocar já para iniciar com o modo Haiku. E vou fazer alguns prompts e vamos ver aqui como ele se comporta. Ó, abriu aqui

[15:34] no Haiku, né? Então vou aqui mandar um prompt bem simples, tá? Então, olha só, ele está mostrando ali o roteador, aguardando o primeiro pedido. Então botei ele para trocar o texto do botão agendar para o reservar horário, né? Então só mudar um texto no botão. E ele já mandou para o Subagent, como a gente pode ver aqui, né? Foi para um background, né? Então a gente vai ter que esperar a resposta, né? As decisões elas vão ficar salvas nesse arquivo aqui. Então a gente pode ver que a minha mensagem foi troca o texto do botão agendar para reservar horário. Ele veio simples,

[16:05] confiança um, risco 0.1, Subagent Haiku. Está vendo aqui que já foi a resposta do Jev, né? Influenciando o nosso prompt. Vou mandar outro aqui. Então vou adicionar um filtro por barbeiro na agenda do painel. Então só para mostrar para vocês aqui também. Ó, o projeto já está com o botão reservar horário, então ele já concluiu aquela tarefa, né? Que é aqui que ficava agendar. E que agora ele mandou uma outra mensagem. Ele colocou como nível de rotina, então

[16:35] ele utilizou Sonnet, tá? Aí teve uma confiança de 70% né? Então quase no limite, né? Para deixar no modelo nível mais alto, né? E aqui os os tempos do Jev também, em ms, né? Se eu pedir isso algo um pouco mais difícil. Então vamos fazer aqui a solicitação de impedir que dois clientes fiquem com o mesmo horário quando confirmam ao mesmo tempo, né? Então um problema que pode acontecer. Aí aqui ele detectou como nível de difícil, confiança 100%, quase, né? Então ele

[17:06] sabia que era difícil e utilizou o modelo Opus para isso, tá? Então a gente teve aqui os três modelos sendo utilizados, cada um por seu nível de tarefa e com isso a gente consegue economizar tokens no processo, cara. Então, uma estratégia muito interessante e simples de ser feita, né? Um roteador simples que pode ficar global ou a nível de projeto para que tu possa estar usando os modelos certos para as tarefas certas, beleza? Bom, agora agora vamos para o caso número três, que também é bem interessante. Vou mostrar aqui para vocês rapidamente. Então, uma questão que me incomoda muito

[17:37] nas IAs é que elas às vezes escolhem skills para coisas que não precisam, tá? Então, elas usam skills desnecessárias. Então, só para só por causa de erro mesmo o prompt e ela entendeu que tem que utilizar skill X e nem era necessário ou ela usa uma skill e deixa a ação muito over, né? Não precisava usar aquela skill, podia ser feito de maneira mais simples e economizar tokens. Então, esses casos acontecem bastante para mim, né? Que é o que está aqui, skill errada e skill sem precisar.

[18:07] E o Jev vai melhorar isso. Ele vai estar intervindo em cada seleção de skill para ver se realmente precisa utilizar, tá? Então, eu vou criar esse mecanismo com vocês também, bora lá. Então, vamos lá, galera, vou criar aqui, vou dar um clear, né? Aquela sessão que a gente criou ali o roteador. Vou mostrar para vocês como criar esse seletor de skills. O mecanismo é quase o mesmo, ali, vocês vão entender como funciona de maneira bem fácil, ali, se vocês pegaram a ideia do roteador, tá? Então, olha só, hoje toda sessão carrega a lista de todas as skills desse projeto, mesmo que eu não use nenhuma. Então, se

[18:39] tem skill global, se tem skill do projeto, tudo é carregado na sessão e aí ainda tem a chance de usar errado. Quero que o Jev escolha a skill certa para cada pedido e que o Cloud só receba essa, ou seja, a skill certa ou as skills certas, dependendo do pedido, né? Use a skill do Jev que já está instalada, então, aquela skill que eu comentei do Jev tem que estar no teu PC. Tire as skills da pasta que o Cloud Code carrega sozinho e guarde numa pasta de biblioteca de skills dentro do projeto, sem mudar nada o conteúdo delas, porque senão vai ter o mesmo problema, já que é o mecanismo que o Cloud Code tem de carregar tudo, tá? Então, só para

[19:09] mostrar para vocês que isso também existe, né? Crie um gancho, um hook, que roda toda vez que eu mando uma mensagem, antes do Cloud ler. Isso é bem importante. Ele manda para o Jeff a minha mensagem e o nome e a descrição de cada skill da biblioteca, com uma pergunta: “Qual dessas skills serve para este pedido?” Né? O prompt que a gente vai mandar. Com opção nenhuma. Então, também há essa opção e isso é extremamente necessário para ele não usar a skill à toa. Eu boto também a mesma coisa de antes, né? Então, a skill, a decisão fica no código. Se a skill escolhida passar de 50% e o Jeff estiver confiante, confiança de mais de

[19:40] 60, o gancho entrega ao Cloud as instruções completas dessa skill, junto com a mensagem, dizendo qual é. Senão, não entrega nada e o Cloud segue normal. Então, o Cloud não vai estar vendo as skills. Quem vai mandar é o Jeff, tá? Então, essa parte é essencial. Se já existir o roteador do modelo nesse projeto, os dois ganchos convivem. Então, fazendo isso aqui para não dar conflito com o outro ali, que a gente acabou de criar, gerar um programa maior, né? Então, eh a gente precisa ter essa interação entre os dois também, tá? Registre cada sessão num arquivo,

[20:11] horário, mensagem, skill escolhida. Então, só explicando aqui para a gente poder ver o log, né? Isso aqui não precisa, se não quiser. Pode até fazer um painel bem bonitinho, se tu quiser, também. Então, aqui, ó, coisa interessante, né? Que o roteador, ele já entrou na minha sessão quando eu dei o clear. Então, ele classificou aqui como profundo, né? Algo difícil. Mandou para o Opus, tá? E aí ele tá fazendo aqui em background. Então, o não iniciou uma sessão nova, né? Eu dei um clear e já tá funcionando aquele mecanismo de roteamento que a gente fez, tá? Vamos esperar aqui e já a gente vê o nosso

[20:42] seletor de skills em ação. Bom, galera, então, o sub agent ali já com o nosso esquema ali de escolher o melhor modelo, entregou aqui, tá? Já o roteador de skills e tem a pasta aqui roteador, tá? Se vocês perceberem, as skills saíram daqui, né? Elas não estão mais na pasta do Cloud, que é exatamente o que a gente comentou que deveria fazer. Então, se eu vier aqui para uma nova sessão, aqui, por exemplo, eu já estou iniciando com Raiko, né, que tá usando toda a parte de roteador, tal. Vou pedir alguma

[21:12] coisa aqui para ele. Então, atualiza o changelog com o que mudou hoje, né? O projeto no changelog que mapeia as mudanças. Aí, ele vai fazer o roteador e vai fazer o seletor de skills, tá? Então, aqui em decisões, a gente já tem uma decisão, onde, né, o o Claude, né, utilizou uma skill chamada changelog, que tinha no projeto, tá? E foi resolvido em 1.391 milissegundos. Tem algumas mensagens que o próprio Claude manda, tá vendo? Não tem nada a

[21:43] ver com o prompt. E isso não deve ativar nenhuma skill. Ó, o Dev não indicou skill. Então, mensagem do sistema, né? Então, a gente vai ter isso aqui também, por isso que é tão importante o o trabalho da não ativação, né? Como também quando ele indicaria uma skill errada pela própria IA, né, sem o nosso mecanismo aqui, tá? Então, vendo o projeto aqui, né, ele tem tons de dourado, né? Vou pedir para ele trocar isso para uma cor predominante de verde. Então, vou colocar aqui: O projeto

[22:15] tem tons de dourado. Quero trocar essa cor dourada para um tom de verde. Prossiga com a alteração. Então, mandei um novo prompt aqui, ele vai disparar um novo subagent, né, baseado na tarefa e também vai ter uma avaliação de skill. Nesse caso, ele disparou a componente UI, tá? Então, temos aqui uma decisão em 400 ms, escolhendo a skill correta para o fim determinado por mim no prompt. Beleza? E

[22:46] com isso também o roteador já tá rodando, né? A gente tem aqui, ó, o log, né? Aí, ele escolheu o Raiko tanto para anterior quanto para essa e por aí vai, tá, galera? Então, essas são três maneiras que vocês podem utilizar para estar economizando muitos tokens e deixando o projeto de vocês até mais rápido no Cloud Cook, beleza? E qualquer outra IA, como eu falei para vocês, né? Aqui no Cloud foi o exemplo, mas funciona para outras IAs também, porque o mecanismo de todos os eh code agents é igual, né? A gente tem skills, a gente tem plugins,

[23:17] a gente tem vários modelos, a gente tem contexto, tudo é compartilhado, né? Então, galera, a gente tá olhando aqui, ó. E lembrando, né, galera, que talvez nesse aqui de skill, né, só para dar esse toque para vocês, fosse necessário também colocar algum comando especial para a gente ativar uma skill quando quisesse, porque talvez pelas decisões ele pudesse deixar skills que a gente queria utilizar de fora. Então, a gente tem que nominalmente chamar ela ou algum comando ali que faça

[23:48] burlar ou não passar por esse fluxo para ativar uma skill que a gente quer, tá? Só para deixar esse detalhe também, que o outro eu fiz, né? Esse aqui eu não chego a colocar, mas é importante que a gente tenha essa forma de destravar, porque senão a gente fica muito refém do Jev e as coisas vão funcionar muito bem, mas a gente pode acabar não tendo a opção de colocar algo conscientemente também, tá? Que é importante quando a gente quer testar algo diferente. Ô, galera, então não se esqueça de se pré-inscrever para o nosso curso de Jev, tá? Vou deixar aqui na descrição o link para essa página. Aqui

[24:20] tem todos os detalhes também. E vejam a playlist de Jev aqui do canal. Tem muito conteúdo interessante sobre essa IA, tá? Mais uma vez, né, AppMax, galera, se vocês querem integrar pagamento no sistema de vocês, aqui é o melhor lugar. Vai ter taxa zero na integração via Pix. Então, já ajuda quem tá começando e tem aqui uma documentação muito rica para que vocês possam, né, fazer qualquer ação baseada no documento que eles criaram. Então, é muito mais fácil, porque tá tudo descrito como tem que fazer, então, ah, pagamento de Pix, só

[24:51] vem aqui, vai ter o exemplo e pronto, né? Dá para colar na IA e ter a funcionalidade feita. Fechou? Bom, então não esqueça de deixar aquele like aí, galera, se inscreva no canal também para poder receber os próximos vídeos. Comentem se tem outros casos que vocês usam o Jarvis nessa questão de economia de tokens, né, ou no dia a dia de vocês. Quero muito saber, que é uma tecnologia que eu tô usando todos os dias, tô integrando nos sistemas e tô vendo muito valor, né? Eu acho que ela vem para somar e não para substituir nada. É assim que eu tô vendo ela e usando também. Fico por aqui, espero

[25:22] vocês no próximo vídeo. Valeu!