Skip to Content
BlogAtualizações de Recursos09-17 Atualização do Produto

Qwen Code Semanal: delegue tarefas ao Claude Code e ao Codex, workflows rodam com uma frase e com teto de tokens, e o Goal limita rodadas e tempo

Qwen Team
2026-09-17

O Qwen Code lançou três versões oficiais esta semana, v0.23.3, v0.23.4 e v0.24.0, com 267 PRs integrados.

O trabalho vai para o Claude Code e para o Codex. Dois subagentes integrados trabalham com a conta e o modelo que você já usa; o Qwen Code distribui as tarefas, cuida das permissões e recolhe os resultados.

Workflows rodam pelo nome. Salvos por você ou trazidos por uma extensão, é só chamar; escreva +500k no fim da mensagem e o teto de tokens daquela rodada está definido.

O Goal limita rodadas e tempo. Definidos os tetos, ele se encerra sozinho ao estourar, e o cartão de status mostra 3/20 turns.

O Web Shell agora pré-visualiza páginas. Veja na hora o serviço local, alternando entre largura de desktop e de celular; cada HTML entregue na conversa fica guardado como uma versão, e abri-la mostra exatamente a versão daquela hora.

✨ Novidades

Delegue uma tarefa ao Claude Code ou ao Codex

Quem tem o Claude Code ou o Codex instalado agora entrega um pedaço do trabalho direto do Qwen Code: diga na conversa “usa o subagente claude-code para revisar este módulo” e a subtarefa vai para o Claude Code, que trabalha com a sua conta e o seu modelo. O que ele produz e os pedidos de permissão ficam todos na mesma sessão do Qwen Code, e você continua vendo uma conversa só.

Os dois subagentes rodam em primeiro plano por padrão. O Codex é somente leitura: ele lê o código e dá opiniões; para mexer em arquivos, ligue auto-edit ou YOLO na sessão, ou dê permissão de escrita explícita na definição do subagente. Com o Claude Code dá para conversar em várias rodadas enquanto a tarefa está andando; o Codex, por enquanto, recebe uma tarefa e devolve uma resposta. No macOS e no Linux funciona direto; no Windows, use WSL.

Para plugar outros agentes, declare um bloco executor no arquivo de definição do subagente em .qwen/agents/, com o comando que inicia ele.

Na prática:

  • Entregue revisão de código e novas versões de uma solução ao Claude Code ou ao Codex, com a sua conta e o seu modelo
  • Deixe o Codex ler o repositório e opinar sem tocar em arquivo nenhum: quem autoriza a escrita é você
  • Plugue outros agentes externos que falem o protocolo ACP na definição do subagente

Veja os PRs #11003 , #11474 

O trabalho delegado roda na ferramenta externa e o resultado volta para a mesma sessão

Workflows: uma frase para rodar, com o gasto de tokens à vista

Semana passada os workflows ganharam página de gestão; esta semana a gente facilitou a hora de rodar.

Workflow salvo, basta uma frase. Diga “roda o workflow audit” na conversa ou digite /audit na caixa de entrada, e ele começa a trabalhar.

O teto de tokens da rodada vai escrito na mensagem. Acrescente +500k no final e o fluxo que está rodando se organiza dentro desse limite: perto do teto, ele para sozinho. O cartão de aprovação agora traz uma prévia da estrutura — em que passo ele abre subagentes, onde as coisas rodam em paralelo, onde tem loop — tudo antes de começar. Se na prática o fluxo passar do esperado, a barra da tarefa acende um aviso de workflow grande.

Workflow pode ir dentro de uma extensão. Instalada a extensão, os workflows dela aparecem direto na página de gestão, com a origem marcada; antes de instalar, você já fica sabendo quais conjuntos a extensão traz.

Dá para definir a profundidade de raciocínio de cada subagente. Ajuste um por um e limite também quais ferramentas cada um pode usar. Tarefas de pesquisa e organização pedem profundidade menor; julgamento e revisão pedem maior.

A aprovação de permissão vale só para a versão aprovada. Mudou uma vírgula no fluxo, a próxima execução pede permissão de novo.

Na prática:

  • Rode o mesmo fluxo nesta e nas próximas semanas sem reescrever nada
  • Veja quanto trabalho ele vai abrir antes de começar e defina um teto de tokens de passagem
  • O workflow de um colega vira seu com uma instalação de extensão

Veja os PRs #11943 , #11917 , #11939 , #11805 , #11691 

O Goal agora limita rodadas e tempo

Semana passada o Goal passou a mostrar quantos tokens ele gastou; esta semana entraram os dois limites que mais fazem falta.

Limite de rodadas e de tempo. Configure model.goalMaxTurns e model.goalMaxActiveMinutes nas configurações e diga “no máximo 20 rodadas” ou “no máximo 30 minutos”; os dois vêm desligados por padrão. Ao estourar, o Goal ganha uma rodada de fechamento para explicar direito o que tem nas mãos e então parar. O /goal resume abre uma nova janela sobre a cota original e renova só o item que foi consumido (#11457 ).

A sobra fica visível. O cartão de status mostra 3/20 turns e 12m 3s/30m direto (#11999 ). O tempo conta apenas o que o Goal de fato trabalhou. Os tokens gastos pelos subagentes em primeiro plano e pelas checagens de verificação que o Goal disparou também entram na conta dele (#11998 ). Quando há coisa demais para verificar, a checagem se divide em lotes menores sozinha, e o lote que trava é refeito com um escopo menor (#11365 , #11690 ).

Aprovou no Web Shell, ele começa. Clique em aprovar numa proposta de Goal e, assim que a resposta daquela rodada terminar bem, o Goal dispara sozinho (#11360 ).

Na prática:

  • Peça ao Goal para investigar um problema, configure os limites antes e renove a cota quando acabar
  • Dê uma olhada no cartão de status e saiba quantas rodadas e quanto tempo ainda restam
  • Aprove a proposta no Web Shell e deixe ele trabalhando

Com o limite de 3 rodadas, o Goal para sozinho ao atingi-lo e informa que a janela pode ser prolongada

Channel: escolha como o bot notifica e descubra por que ele respondeu daquele jeito

Três coisas no bot do Channel esta semana: deu para escolher o formato do aviso das tarefas em segundo plano, o filtro por prefixo de mensagem saiu do ar, e as conversas do Channel ficaram auditáveis do jeito que chegaram ao modelo.

Dá para escolher como o bot notifica. A opção fica nas configurações do Channel, começando pelo DingTalk. O padrão, Per turn, manda primeiro o resultado principal e, depois, cada tarefa em segundo plano que termina envia um aviso próprio. Per response envia cada resposta completa assim que ela fica pronta. Per task espera todo o trabalho relacionado acabar e manda um único resultado final — é a escolha para deixar o grupo tranquilo.

Escolha do modo de notificação nas configurações do Channel: Per task, Per response, Per turn (padrão)

O filtro por prefixo saiu do ar. Antes dava para combinar uma senha de abertura: só mensagem com aquele prefixo acordava o bot. A configuração foi removida: agora toda mensagem que passar pelas regras de remetente, grupo e @ aciona o bot, com qualquer texto.

A conversa do Channel abre do jeito que o modelo viu. Reabra uma sessão do Channel no CLI ou no Web Shell e cada rodada mostra exatamente o que chegou ao modelo — instruções permanentes, histórico do grupo, quem mandou. É o caminho curto para descobrir por que o bot respondeu daquele jeito.

Na prática:

  • Rode a tarefa longa e reporte no fim, sem alagar o grupo de mensagem
  • Não precisa mais começar a frase com uma palavra combinada: marque o bot ou fale no privado
  • Quando a resposta vier errada, veja no CLI ou no Web Shell o que ele recebeu naquela hora

Veja os PRs #11822 , #11571 , #11646 

Web Shell: prévia de páginas, HTML entregue arquivado e conversa que continua

Prévia do endereço de desenvolvimento, HTML arquivado sozinho. O lado direito do Web Shell ganhou um painel de prévia de páginas: informe o endereço local de desenvolvimento e veja o site, alternando entre largura de desktop e de celular. Cada HTML entregue na conversa vira uma versão guardada à parte: abra uma semana depois e é exatamente aquela versão, e dá para comparar as versões entre si (#11276 ).

Prévia de uma página de desenvolvimento local à direita e os dois cartões de versões entregues à esquerda na conversa

Edite e reenvie a sua mensagem; conversa interrompida continua no ponto. A última mensagem que você mandou pode ser editada ali mesmo e reenviada: a resposta da rodada é gerada de novo, e as imagens e arquivos que foram junto continuam lá (#11650 ). Uma conversa que caiu no meio do caminho oferece a opção de continuar quando você reabre, e ela segue do ponto em que parou (#11545 ).

As notificações do navegador apontam para a sessão certa. O aviso que entrou semana passada agora diz qual sessão é, traz um trecho da pergunta e da resposta, e clicar nele abre a conversa direto (#11447 ).

Uso de contexto com número exato e compressão em um clique. O painel de contexto mostra usado, total, restante e a participação de cada tipo, com o botão de comprimir ali dentro; o cartão que aparece ao passar o mouse perto da caixa de entrada também tem, e um clique faz a compressão (#11700 , #11782 ).

Outras melhorias. A página de visão geral das sessões se organiza por estado e aceita busca por branch e número de PR (#11238 ); arquivos enviados, arquivos do projeto e links de página agora ficam numa lista única de Sources (#11262 ); tarefas agendadas podem escolher o modelo e o agrupamento (#11396 ); e dá para informar um endereço e conectar ao Qwen Code de outra máquina (#11548 ).

📊 Mais funcionalidades

A busca na web tem limite por sessão. Por padrão, uma sessão faz no máximo 200 chamadas de web_search; ajuste em tools.webSearch.maxPerSession. Depois de usar tudo, a IA continua escrevendo com o que já coletou e avisa que dá para pedir mais cota. Veja os PRs #11852 , #11692 

Mensagens entre sessões ligadas por padrão. Várias sessões do Qwen Code na mesma máquina se enxergam sozinhas: /peers lista as sessões conectadas e, entre elas, a IA pode mandar recado uma para a outra contando o progresso. Para desligar, defina agents.crossSessionMessaging como false. Veja o PR #11840 

Mais modelos aceitam configurar a intensidade de raciocínio. Moonshot K3 tem os três níveis low/high/max; o K2.6 usa a chave de raciocínio nativa; Qwen 3.8 aceita low/medium/xhigh; DeepSeek V4 Pro e Flash aceitam low/high/max. O fluxo de configuração por Standard API Key também recebeu esses modelos novos, e o Token Plan ganhou Qwen 3.8 Flash e DeepSeek V4 Pro-0813. Veja o PR #11349 

O histórico de sessões do VS Code virou um só. As conversas criadas no terminal, no navegador e no VS Code aparecem na mesma lista de histórico, e você abre qualquer uma direto. Veja o PR #11713 

Dá para folhear os hooks no terminal. O /hooks deixou de ser uma linha de status: agora você navega por eventos, regras de combinação e o detalhe de cada hook. Ele relê a configuração que acabou de mudar e, se tudo estiver desligado, explica o motivo; hook em execução também mostra progresso. Veja os PRs #11903 , #11904 , #11906 

Conecte modelos pelo protocolo OpenAI Responses. Entrou o tipo de provedor openai-responses, que usa a interface /v1/responses da OpenAI, com saída em streaming, chamada de ferramenta e resumo de raciocínio. Veja o PR #8169 

O Linux ganhou outro tipo de sandbox de kernel. Escolha o backend bwrap nas configurações e a escrita da IA fica restrita ao workspace, aos diretórios temporários e aos caches necessários; o resto do sistema de arquivos é somente leitura. Não precisa de ferramenta de container nem de root, e há um subcomando que mostra as fronteiras atuais e faz um autoteste. Veja o PR #11614 

Um serviço em segundo plano comporta mais workspaces. O qwen serve passou de 25 para 256 workspaces por padrão; mude em QWEN_SERVE_MAX_WORKSPACES. Veja o PR #11515 

👏 Melhorias de experiência

Reabrir sessões grandes ficou visivelmente mais rápido. Retomar conversas longas antigas e abrir os painéis do Web Shell ganharam velocidade. Veja os PRs #11595 , #11644 

Os links que você manda ficaram clicáveis. No Web Shell, os endereços nas suas próprias mensagens viram links que abrem com um clique. Veja o PR #11464 

A interface para de se mexer enquanto você lê. O painel de aprovação não muda mais de tamanho no meio da sua leitura, e o resumo da rodada aparece uma única vez, fixo no fim da saída. Veja os PRs #11930 , #11986 

As fontes da resposta abrem em páginas. As notas de rodapé se agrupam por fonte, e passar o mouse abre a prévia paginada; abaixo de cada resposta aparece a lista completa de fontes usadas naquela rodada, incluindo os anexos que não ganharam nota de rodapé. Veja o PR #11480 

As perguntas que você fez continuam na conversa. Depois do resumo da rodada, suas perguntas e as respostas seguem visíveis para revisão. Veja o PR #11461 

A navegação por rodadas acompanha a leitura. A barra do lado direito do Web Shell acende a rodada que você está lendo no momento. Veja o PR #11801 

Modelos novos aparecem primeiro. Na configuração de provedores, os modelos recém-descobertos vão para o topo da lista. Veja o PR #11449 

O Web Shell standalone respeita as suas configurações. Tema e idioma valem também na página independente. Veja o PR #11961 

🔧 Correções importantes

CorreçãoImpacto para vocêPR
A interface quebrava no aviso de tarefa em segundo planoQuando um agente em segundo plano ou uma tarefa monitorada terminava e o aviso caía na conversa, a interface do terminal podia quebrar inteira e a rodada era perdida; a causa foi eliminada#11565 , #11835 
Comandos no Windows não acumulam mais processosCada comando de shell deixava um conhost.exe consumindo recursos até o processo morrer; em comandos curtos de PowerShell, o tempo caiu de cerca de 3,2 para 0,23 segundo no teste real#11497 , #11313 
Atualizar a página não derruba o que espera respostaDepois de recarregar a sessão, os pedidos de permissão e as perguntas ainda sem resposta continuam lá#11468 
Uma oscilação na rede não mata mais a rodadaDesconexões momentâneas, como EOF, agora são refeitas automaticamente com limite; faz diferença sobretudo no Channel e nas sessões hospedadas, onde não dá para repetir na mão#10347 , #11291 
A mensagem que você manda no meio não se perdeMensagens enviadas enquanto o modelo trabalha ficam guardadas e entram na fila#11289 
A resposta cancelada aparece e não someRespostas interrompidas sobrevivem ao recarregar e mostram por quanto tempo rodaram antes da interrupção#11608 
O terminal web voltouO terminal web do pacote de instalação independente funciona de novo, e o painel de terminal deixou de travar#11881 , #11748 
Imagens e arquivos de uma mensagem citada no DingTalk abremAntes não dava para recuperar imagem e arquivo que vieram numa mensagem citada de outra pessoa#11759 
O timeout dos hooks de comando é em segundosCom "timeout": 10, o corte acontecia em 10 milissegundos; agora vale em segundos, como a documentação diz (valores ≥1000 em configurações antigas continuam lidos como milissegundos, sem precisar mudar nada)#11615 
Caminho com espaço não quebra mais os hooksQuando um hook de bash usava a variável do diretório do projeto e o caminho tinha espaços, a montagem quebrava#11864 
Tarefa agendada acerta o horário na virada do horário de verãoCruzando a mudança de horário de verão, o próximo disparo é calculado certo#11723 
Janela de terminal baixa não corta o cartãoO cartão de confirmação aparece inteiro mesmo em janelas de terminal baixas#9040 , #11656 
O painel de diff do VS Code fecha e a edição não se perdeO painel de diff fecha normalmente, e ao cancelar uma permissão o conteúdo da caixa de edição volta para você#10494 , #11171 
O histórico do painel do VS Code voltouA parte do histórico de sessões que sumiu depois de uma mudança antiga está visível de novo#11495 
Tarefa de equipe não vai para duas pessoasUm papel de líder desatualizado não distribui a mesma coisa para vários membros ao mesmo tempo#10237 
O aviso da rodada que deu erro não se perdeQuando uma rodada termina com erro, os avisos de tarefas em segundo plano na fila são entregues até o fim#11559 

👥 Contribuidores

ContribuidorContribuiçãoPRs de referência
@yiliang114 Conexão remota ao daemon no Web Shell, unificação e resgate do histórico de sessões do VS Code, limpeza de processos do terminal no Windows, um lote de correções do terminal web, entrega dos avisos na rodada com erro, tema e idioma no Web Shell standalone#11548 , #11713 , #11497 , #11881 , #11495 , #11961 
@qqqys Limites de rodadas e de tempo no Goal, execução automática depois de aprovar a proposta, chamada de workflow por nome e teto de tokens +500k, mensagens entre sessões ligadas por padrão, formato de aviso do Channel e retirada do filtro por prefixo, modelo e agrupamento nas tarefas agendadas, limite de chamadas de busca na web#11457 , #11360 , #11943 , #11917 , #11840 , #11822 , #11396 , #11852 
@wenshao Delegação de tarefas ao Claude Code / Codex, prévia de páginas e arquivamento de entregas no Web Shell, retomada de sessões interrompidas, visão do contexto e compressão manual, nova página de visão geral das sessões#11003 , #11474 , #11276 , #11545 , #11700 , #11238 
@ytahdn Editar e reenviar mensagens no Web Shell, preservação da resposta cancelada, prévia de arquivos no detalhe da ferramenta, personalização do detalhe de contexto, painel de aprovação estável e resumo sem repetição#11650 , #11608 , #11982 , #11996 , #11930 , #11986 
@qwen-code-dev-bot Correções de estabilidade do CI e dos testes#11537 , #11530 , #11362 
@doudouOUC Notificações do navegador melhoradas, sandbox de kernel bwrap no Linux, admissão de sessões no serviço hospedado, criação de sessão independente pelo SDK#11447 , #11614 , #11911 , #11812 
@callmeYe Níveis de raciocínio de Kimi/Qwen/DeepSeek, lista unificada de materiais da sessão, prévia paginada das fontes nas notas de rodapé, navegação acompanhando a leitura, configuração de raciocínio externa#11349 , #11262 , #11480 , #11801 , #11856 
@LaZzyMan Ações vinculadas a apps e compactação da observação no Computer Use, pipeline multimodal Omni integrado ao código principal, correções do empacotamento desktop#11705 , #12019 , #11841 , #11479 
@DragonnZhang Retomada de sessão mais rápida, recuperação de erro na rota Responses, teto de tokens na saída do shell, modo de execução CodeMode#11595 , #11596 , #11652 , #11727 , #10607 
@bluefateludi Correção de compatibilidade de requisições Fireworks, unificação dos testes da barra lateral do Web Shell#11701 , #9797 
@chiga0 Correção das falhas de renderização do OpenTUI, fila de permissões do ACP isolada por sessão#11630 , #11802 
@netbrah Integração com o protocolo OpenAI Responses, preservação da assinatura de raciocínio#8169 , #8260 
@shenyankm Correção da sincronização de documentos no LSP, correção do corte dos cartões em terminal baixo#11443 , #9040 
@tanzhenxin Preservação da mensagem de erro no streaming do Responses, correções de eficiência no Computer Use#11523 , #11683 
@yu-xin-c Rótulo corrigido no cartão de Goal bloqueado, testes de integração do /compress reforçados#11174 , #11259 
@AaronZ345 Correção da distribuição repetida de tarefas entre vários agentes#10237 
@BenGuanRan Identidade do remetente nas conversas privadas do DingTalk#12017 
🆕 @Bug-killer-prog 🎉 Primeira contribuição: correção das sessões de teste no Windows#11750 
🆕 @CanReader 🎉 Primeira contribuição: correção do fechamento do diff no VS Code#10494 
@harjothkhara Correção de identificação ao alternar habilidades#11831 
🆕 @kabishou11 🎉 Primeira contribuição: correção do carregamento da configuração de MCP no qwen serve#11145 
🆕 @lorenzozanee 🎉 Primeira contribuição: requisições de ferramenta canceladas na fila deixam de executar#11483 
@nerdalytics Nomear as habilidades de uma extensão pelo nome da extensão#10841 
@now-ing Preservação da mensagem de erro quando o subagente se encerra#11190 
@pomelo-nwu Visão geral da interface no README#11491 
@shoemoney Metadados das requisições ao DashScope enviados por família de modelo#11606 
@TianYuan1024 Reaplicar os efeitos colaterais das habilidades ao retomar uma sessão#11280 
🆕 @wangxiongts 🎉 Primeira contribuição: entrada visual, ajuda proativa e memória local no Qwen Live#11369 
🆕 @zaalipro 🎉 Primeira contribuição: correção definitiva da quebra da interface do terminal#11565 
@zhangxy-zju Links de recursos do ACP mantêm o nome original do arquivo#11721 

Como atualizar: execute npm i @qwen-code/qwen-code@latest -g para atualizar para a versão mais recente.

Se tiver dúvidas ou sugestões, fique à vontade para enviar feedback pelos GitHub Issues !

Last updated on