Skip to Content
Guia do UsuárioRecursosComandos

Comandos

Este documento detalha todos os comandos suportados pelo Qwen Code, ajudando você a gerenciar sessões, personalizar a interface e controlar seu comportamento de forma eficiente.

Os comandos do Qwen Code são acionados por meio de prefixos específicos e se dividem em três categorias:

Tipo de PrefixoDescrição da FunçãoCaso de Uso Típico
Comandos de Barra (/)Controle em nível meta do próprio Qwen CodeGerenciamento de sessões, modificação de configurações, obtenção de ajuda
Comandos de Arroba (@)Injeção rápida de conteúdo de arquivos locais na conversaPermitir que a IA analise arquivos especificados ou código em diretórios
Comandos de Exclamação (!)Interação direta com o Shell do sistemaExecução de comandos do sistema como git status, ls, etc.

1. Comandos de Barra (/)

Os comandos de barra são usados para gerenciar sessões, interface e comportamento básico do Qwen Code.

1.1 Gerenciamento de Sessões e Projetos

Esses comandos ajudam você a salvar, restaurar e resumir o progresso do trabalho.

ComandoDescriçãoExemplos de Uso
/initAnalisar o diretório atual e criar o arquivo de contexto inicial/init
/summaryGerar resumo do projeto com base no histórico de conversas/summary
/compressSubstituir o histórico do chat pelo resumo para salvar Tokens/compress ou /summarize
/compress-fastCompressão rápida sem IA — remove saídas antigas de ferramentas e partes de raciocínio/compress-fast
/resumeRetomar uma sessão de conversa anterior/resume ou /continue
/recapGerar um resumo de uma linha da sessão agora/recap
/restoreReverter os arquivos do projeto para o checkpoint antes da execução de uma chamada de ferramenta/restore (lista) ou /restore <ID>
/deleteExcluir uma sessão anterior/delete
/branchBifurcar a conversa atual em uma nova sessão/branch
/forkCriar um agente em segundo plano que herda a conversa completa/fork <directive>
/rewindRetroceder a conversa para um turno anterior/rewind ou /rollback
/exportExportar o histórico da sessão para um arquivo/export html, /export md, /export json, /export jsonl
/renameRenomear ou marcar a sessão atual/rename My Feature ou /tag
Note

/summarize é um alias para /compress (ele comprime o histórico do chat — uma operação destrutiva). Para gerar um resumo do projeto não destrutivo, use /summary.

1.2 Controle de Interface e Espaço de Trabalho

Comandos para ajustar a aparência da interface e o ambiente de trabalho.

ComandoDescriçãoExemplos de Uso
/clearLimpar o histórico de conversas e liberar o contexto/clear, /reset, /new
/contextMostrar o detalhamento do uso da janela de contexto/context
detailMostrar o detalhamento do uso do contexto por item/context detail
/historyControlar preferências e visibilidade de exibição do histórico/history collapse-on-resume, /history expand-on-resume, /history expand-now
/diffAbrir um visualizador de diff interativo mostrando alterações não commitadas e diffs por turno. Use ←/→ para alternar entre o git diff atual e os turnos individuais da conversa, ↑/↓ para navegar pelos arquivos/diff
/themeAlterar o tema visual do Qwen Code/theme
/vimAtivar/desativar o modo de edição Vim na área de entrada/vim
/voiceAlternar entrada por ditado de voz/voice, /voice hold, /voice tap, /voice off, /voice status
/directoryGerenciar espaço de trabalho com suporte a múltiplos diretórios/dir add ./src,./tests, /dir show
/cdMover esta sessão para um novo diretório de trabalho/cd ../other-project
/editorAbrir diálogo para selecionar o editor suportado/editor
/statuslineAbrir diálogo interativo de predefinição da linha de status/statusline
/statusline <text>Gerar uma linha de status em modo de comando via agente/statusline show model and git branch
/terminal-setupConfigurar atalhos de teclado do terminal para entrada multilinha/terminal-setup

1.3 Configurações de Idioma

Comandos específicos para controlar o idioma da interface e da saída.

ComandoDescriçãoExemplos de Uso
/languageVisualizar ou alterar as configurações de idioma/language
ui [language]Definir o idioma da interface do usuário/language ui zh-CN
output [language]Definir o idioma de saída do LLM/language output Chinese
  • Idiomas de interface integrados disponíveis: zh-CN (Chinês Simplificado), en-US (Inglês), ru-RU (Russo), de-DE (Alemão), ja-JP (Japonês), pt-BR (Português - Brasil), fr-FR (Francês), ca-ES (Catalão)
  • Exemplos de idioma de saída: Chinese, English, Japanese, etc.

1.4 Gerenciamento de Ferramentas e Modelos

Comandos para gerenciar ferramentas e modelos de IA.

ComandoDescriçãoExemplos de Uso
/mcpListar servidores e ferramentas MCP configurados/mcp, /mcp desc, /mcp nodesc, /mcp schema
/import-configImportar servidores MCP das configurações do Claude/import-config all, /import-config claude-code, /import-config claude-desktop --scope user|project
/toolsExibir a lista de ferramentas disponíveis atualmente/tools, /tools desc
/skillsAbrir o painel de Skills para navegar, pesquisar, alternar e iniciar skills/skills, /<skill-name>
/planAlternar para o modo de plano ou sair do modo de plano/plan, /plan <task>, /plan exit
/approval-modeAlterar o modo de aprovação de ferramentas (apenas na sessão atual)/approval-mode, /approval-mode auto-edit
planApenas análise, sem execução (revisão segura)/approval-mode plan
defaultExigir aprovação para edições (uso diário)/approval-mode default
auto-editAprovar edições automaticamente (ambiente confiável)/approval-mode auto-edit
autoAprovação avaliada por classificador (autônomo)/approval-mode auto
yoloAprovar tudo automaticamente (prototipagem rápida)/approval-mode yolo
/modelAlternar o modelo usado na sessão atual/model, /model <model-id> (alterna imediatamente)
/model --fastDefinir um modelo mais leve para sugestões de prompt/model --fast qwen3-coder-flash
/model --voiceDefinir o modelo usado para transcrição de voz/model --voice <model-id>
/model --visionDefinir o modelo de ponte de visão usado para transcrever imagens para um modelo principal somente de texto/model --vision <model-id>
/effortDefinir o esforço de raciocínio para modelos com capacidade de pensamento/effort (abre o seletor), /effort high (low/medium/high/xhigh/max; mapeado e limitado por provedor)
/extensionsGerenciar extensões/extensions list, /extensions manage
listListar extensões instaladas/extensions list
manageGerenciar extensões instaladas (interativo)/extensions manage
exploreAbrir a página de extensões no navegador/extensions explore <Gemini|ClaudeCode>
installInstalar uma extensão de um repositório git ou caminho/extensions install <repo-or-path>
/memoryAbrir o diálogo do Gerenciador de Memória/memory
/rememberSalvar uma memória durável/remember Prefer terse responses
/forgetRemover entradas correspondentes da auto-memória/forget <query>
/dreamExecutar manualmente a consolidação de auto-memória/dream
/hooksGerenciar hooks do Qwen Code/hooks, /hooks list
/permissionsGerenciar regras de permissão/permissions
/agentsGerenciar subagentes/agents manage, /agents create
/arenaGerenciar sessões da Arena/arena start, /arena stop, /arena status, /arena select (alias choose)
/goalDefinir um objetivo — continuar trabalhando até que a condição seja atendida/goal <condition>, /goal clear
/tasksListar tarefas em segundo plano/tasks
/workflowsInspecionar execuções de workflow/workflows, /workflows <runId>
/lspMostrar o status do servidor LSP/lsp
/trustGerenciar configurações de confiança de pasta/trust
Warning

Instale extensões (/extensions install) apenas de fontes confiáveis. Extensões podem incluir servidores MCP, skills e comandos que são executados com as mesmas permissões do próprio Qwen Code — eles podem acessar seus arquivos, API keys e dados de conversação. O /extensions install não solicita confirmação.

Warning

Os modos de aprovação auto-edit, auto e yolo ignoram os prompts de aprovação para execuções de ferramentas. No modo yolo, todas as ações — incluindo comandos de shell, escrita de arquivos e requisições de rede — são executadas sem confirmação. Use esses modos apenas em ambientes confiáveis, isolados (sandboxed) ou descartáveis.

Note

/workflows, /lsp e /trust são registrados apenas quando seus respectivos recursos estão habilitados — por meio da env var QWEN_CODE_ENABLE_WORKFLOWS=1, da flag CLI --experimental-lsp e da configuração security.folderTrust.enabled, respectivamente. Quando desabilitados, eles não aparecerão e retornarão um erro de comando desconhecido.

1.5 Skills Integradas

Estes comandos invocam skills integradas que fornecem fluxos de trabalho especializados.

CommandDescriptionUsage Examples
/reviewRevisar alterações de código com 9 agentes de revisão paralelos/review, /review 123, /review 123 --comment
/loopExecutar um prompt em um cronograma recorrente/loop 5m check the build
/simplifyRevisar alterações recentes e aplicar edições seguras de limpeza diretamente/simplify, /simplify focus on duplication
/qc-helperResponder perguntas sobre o uso e configuração do Qwen Code/qc-helper how do I configure MCP?

Consulte Code Review para a documentação completa do /review.

1.6 Pergunta Paralela (/btw)

O comando /btw permite que você faça perguntas paralelas rápidas sem interromper ou afetar o fluxo da conversa principal.

CommandDescription
/btw <your question>Fazer uma pergunta paralela rápida
?btw <your question>Sintaxe alternativa para perguntas paralelas

Como Funciona:

  • A pergunta paralela é enviada como uma chamada de API separada com o contexto recente da conversa (até as últimas 20 mensagens)
  • A resposta é exibida acima do Composer — você pode continuar digitando enquanto aguarda
  • A conversa principal não é bloqueada — ela continua independentemente
  • A resposta da pergunta paralela não faz parte do histórico da conversa principal
  • As respostas são renderizadas com suporte completo a Markdown (blocos de código, listas, tabelas, etc.)

Atalhos de Teclado (Modo Interativo):

ShortcutAction
EscapeCancelar (durante o carregamento) ou dispensar (após a conclusão)
Space or EnterDispensar a resposta (quando a entrada está vazia)
Ctrl+C or Ctrl+DCancelar uma pergunta paralela em andamento

Exemplo:

(Enquanto a conversa principal é sobre refatorar código) > /btw What's the difference between let and var in JavaScript? ╭──────────────────────────────────────────╮ │ /btw What's the difference between let │ │ and var in JavaScript? │ │ │ │ + Respondendo... │ │ Pressione Escape, Ctrl+C ou Ctrl+D para │ │ cancelar │ ╰──────────────────────────────────────────╯ > (O Composer permanece ativo — continue digitando) (Depois que a resposta chegar) ╭──────────────────────────────────────────╮ │ /btw What's the difference between let │ │ and var in JavaScript? │ │ │ │ `let` tem escopo de bloco, enquanto │ │ `var` tem escopo de função. `let` foi │ │ introduzido no ES6 e não faz hoist da │ │ mesma forma. │ │ │ │ Pressione Space, Enter ou Escape para │ │ dispensar │ ╰──────────────────────────────────────────╯ > (Composer ainda ativo)

Modos de Execução Suportados:

ModeBehavior
InteractiveMostra acima do Composer com renderização Markdown
Non-interactiveRetorna o resultado em texto: btw> question\nanswer
ACP (Agent Protocol)Retorna o gerador assíncrono stream_messages
Tip

Use /btw quando precisar de uma resposta rápida sem desviar do seu foco principal. É especialmente útil para esclarecer conceitos, verificar fatos ou obter explicações rápidas enquanto mantém o foco no seu fluxo de trabalho principal.

1.7 Resumo da Sessão (/recap)

O comando /recap gera um breve resumo de “onde você parou” da sessão atual, permitindo que você retome uma conversa antiga sem precisar rolar por páginas de histórico.

CommandDescription
/recapGerar e mostrar um resumo da sessão em uma linha

Como funciona:

  • Usa o modelo rápido configurado (configuração fastModel) quando disponível, voltando para o modelo principal da sessão como fallback. Um modelo pequeno e barato é suficiente para um resumo.
  • A conversa recente (até 30 mensagens, apenas texto — chamadas de ferramentas e respostas de ferramentas são filtradas) é enviada ao modelo com um system prompt restrito.
  • O resumo é renderizado em cor esmaecida com o prefixo para se destacar das respostas reais do assistente.
  • Recusa com um erro inline se um turno do modelo estiver em andamento ou outro comando estiver sendo processado. Se não houver conversa utilizável, ou se a geração subjacente falhar, o /recap mostra uma mensagem informativa curta em vez de um resumo — o comando manual sempre responde com algo.

Acionamento automático ao retornar de uma ausência:

Se o terminal ficar desfocado por 5+ minutos e for focado novamente, um resumo é gerado e exibido automaticamente (apenas quando nenhuma resposta do modelo estiver em progresso; caso contrário, ele aguarda o turno atual terminar e então é acionado). Diferente do comando manual, o acionamento automático é totalmente silencioso em caso de falha: se houver erros de geração ou não houver nada para resumir, nenhuma mensagem é adicionada ao histórico. Controlado pela configuração general.showSessionRecap (padrão: false); o comando manual /recap sempre funciona independentemente desta configuração.

Exemplo:

> /recap ❯ Refatorando loopDetectionService.ts para resolver o OOM de sessão longa causado por streamContentHistory e contentStats ilimitados. O próximo passo é implementar a opção B (janela deslizante LRU com FNV-1a) pendente de confirmação.
Tip

Configure um modelo rápido via /model --fast <model> (ex.: qwen3-coder-flash) para tornar o /recap rápido e barato. Defina general.showSessionRecap como true para habilitar o acionamento automático; o comando manual /recap sempre funciona independentemente desta configuração.

1.8 Visualizador de Diff (/diff)

O comando /diff abre um visualizador de diff interativo mostrando alterações não commitadas e diffs por turno. Use ←/→ para alternar entre o git diff atual e os turnos individuais da conversa, ↑/↓ para navegar pelos arquivos e Enter para visualizar os diffs inline.

Como funciona:

No modo interativo, o /diff abre um diálogo com um seletor de origem na parte superior:

  • Current — working tree vs HEAD (git diff HEAD). Mostra todas as alterações não commitadas, incluindo arquivos staged, unstaged e untracked.
  • T1, T2, T3, … — diffs por turno, uma aba por turno do modelo que modificou arquivos. Os turnos mais recentes aparecem primeiro. Cada aba mostra uma prévia do prompt original para contexto.

A lista de arquivos exibe estatísticas por arquivo (linhas adicionadas/removidas) com tags para estados especiais (new, deleted, untracked, binary, truncated, oversized). Pressione Enter em um arquivo para ver seu diff inline com hunks destacados por sintaxe.

Diffs por turno requerem que o file checkpointing esteja habilitado (ativado por padrão no modo interativo). Quando o file checkpointing está desativado, apenas a origem “Current” está disponível.

Atalhos de teclado:

KeyAction
/ Alternar entre origens (Current / T1 / T2…)
/ Navegar pela lista de arquivos
j / kNavegar pela lista de arquivos (estilo vim)
EnterVer diff inline do arquivo selecionado
/ EscVoltar para a lista de arquivos a partir da visualização de diff inline
EscFechar o diálogo

Exemplo:

┌ /diff · Turno 3 "refactor the auth middleware" ──── 3 arquivos +45 -12 ┐ │ │ │ ◀ Current · T3 · T2 · T1 ▶ │ │ │ │ › src/utils/parser.ts +30 -8 │ │ src/utils/parser.test.ts +12 -2 │ │ README.md +3 -2 │ │ │ │ ←/→ origem · ↑/↓ arquivo · Enter ver · Esc fechar │ └────────────────────────────────────────────────────────────────────────┘

Modo não interativo:

Em contextos headless (--prompt) ou não interativos, o /diff imprime um resumo em texto simples do working tree vs HEAD. A navegação por turno não está disponível.

3 files changed, +45 / -12 +30 -8 src/utils/parser.ts +12 -2 src/utils/parser.test.ts +3 -2 README.md

1.9 Informações, Configurações e Ajuda

Comandos para obter informações e realizar configurações do sistema.

CommandDescriptionUsage Examples
/helpExibir informações de ajuda para os comandos disponíveis/help or /?
/statusExibir informações da versão/status or /about
/status pathsExibir caminhos do arquivo e logs da sessão atual/status paths
/statsAbrir o painel interativo de estatísticas de uso (abas Session, Activity e Efficiency)/stats or /usage
/stats modelMostrar detalhamento de tokens por modelo e custo estimado/stats model
/stats toolsMostrar contagens de chamadas por ferramenta/stats tools
/stats skillsMostrar contagens de chamadas por skill para a sessão ativa atual (apenas ao vivo; exclui atividade diária/mensal entre sessões)/stats skills
/stats dailyMostrar estatísticas diárias de uso de tokens/stats daily (alias day), /stats day [YYYY-MM-DD]
/stats monthlyMostrar estatísticas mensais de uso de tokens/stats monthly (alias month), /stats month [YYYY-MM]
/stats exportExportar estatísticas de uso para CSV ou JSON/stats export <daily|monthly> [date|month] [--format csv|json] [--output path]
/settingsAbrir o editor de configurações/settings
/configObter ou definir qualquer configuração por chave dot-path (escreve nas configurações do usuário)/config (list all), /config <key>, /config <key>=<value>
/authAlterar método de autenticação/auth, /connect, /login
/doctorExecutar diagnósticos de instalação e ambiente/doctor, /doctor memory
memoryMostrar diagnósticos de memória do processo atual/doctor memory [--json] [--sample] [--snapshot]
cpu-profileGravar um perfil de CPU para análise no Chrome DevTools/doctor cpu-profile [--duration <seconds>]
rollbackReverter o binário CLI standalone para a versão anterior (apenas instalações standalone; para histórico de conversas use /rewind)/doctor rollback
/docsAbrir a documentação completa do Qwen Code no navegador/docs
/ideGerenciar integração com IDE/ide status, /ide install, /ide enable, /ide disable
/insightGerar insights de programação a partir do histórico de chat/insight
/setup-githubConfigurar GitHub Actions/setup-github
/bugEnviar issue sobre o Qwen Code/bug Button click unresponsive
/copyCopiar para a área de transferência: resposta (N-ésima última), código (por linguagem), LaTeX ou Mermaid/copy, /copy 2, /copy python, /copy latex, /copy mermaid
/quitSair do Qwen Code imediatamente/quit or /exit
Warning

/doctor memory --snapshot grava um snapshot do heap do V8 que pode conter prompts, conteúdos de arquivos, API keys e resultados de ferramentas da sessão atual. Revise o arquivo antes de compartilhá-lo.

Note

/config lê e grava configurações individuais por chave de caminho com ponto (ex.: general.vimMode), complementando o editor interativo /settings. Executar /config sem argumentos (ou --help) lista todas as chaves configuráveis com seu tipo e valor atual. /config <key> imprime o valor atual — exceto para chaves booleanas, onde ele alterna o valor. /config <key>=<value> define o valor. As alterações são gravadas nas configurações do usuário (~/.qwen/settings.json). Apenas configurações boolean, string, number e enum podem ser alteradas dessa forma — configurações array e object devem ser editadas diretamente no settings.json. Valores sensíveis (API keys, tokens, base URLs) são mascarados na saída, e definir tools.approvalMode como yolo é bloqueado.

1.10 Atalhos Comuns

AtalhoFunçãoNota
Ctrl/cmd+LLimpar telaLimpa apenas a tela visível (não reseta a sessão como /clear)
Ctrl/cmd+TAlternar descrição da ferramentaGerenciamento de ferramentas MCP
Ctrl/cmd+C×2Confirmação de saídaMecanismo de saída segura
Ctrl/cmd+ZDesfazer entradaEdição de texto
Ctrl/cmd+Shift+ZRefazer entradaEdição de texto

1.11 Comandos de Autenticação

Use /auth dentro de uma sessão do Qwen Code para configurar a autenticação. Use /doctor para inspecionar o status atual de autenticação e do ambiente.

ComandoDescrição
/authConfigurar autenticação interativamente (aliases: /connect, /login)
/doctorMostrar verificações de autenticação e ambiente
Note

O comando CLI independente qwen auth foi removido. Invocações legadas como qwen auth status exibem um aviso de remoção com orientações de migração. Consulte a página Authentication para detalhes completos.

2. Comandos @ (Introduzindo Arquivos)

Os comandos @ são usados para adicionar rapidamente o conteúdo de arquivos ou diretórios locais à conversa.

Formato do ComandoDescriçãoExemplos
@<file path>Injeta o conteúdo do arquivo especificado@src/main.py Please explain this code
@<directory path>Lê recursivamente todos os arquivos de texto no diretório@docs/ Summarize content of this document
@ isoladoUsado ao discutir o próprio símbolo @@ What is this symbol used for in programming?

Nota: Espaços nos caminhos precisam ser escapados com barra invertida (ex.: @My\ Documents/file.txt)

3. Comandos de Exclamação (!) - Execução de Comandos Shell

Os comandos de exclamação permitem que você execute comandos do sistema diretamente dentro do Qwen Code.

Formato do ComandoDescriçãoExemplos
!<shell command>Executa o comando em um sub-Shell!ls -la, !git status
! isoladoAlterna para o modo Shell, qualquer entrada é executada diretamente como um comando Shell!(enter) → Input command → !(exit)

Variáveis de Ambiente: Comandos executados via ! definirão a variável de ambiente QWEN_CODE=1.

4. Comandos Personalizados

Salve prompts usados com frequência como comandos de atalho para melhorar a eficiência do trabalho e garantir consistência.

Note

Os comandos personalizados agora usam o formato Markdown com frontmatter YAML opcional. O formato TOML foi descontinuado, mas ainda é suportado para compatibilidade com versões anteriores. Quando arquivos TOML são detectados, um prompt de migração automática será exibido.

Visão Geral Rápida

FunçãoDescriçãoVantagensPrioridadeCenários Aplicáveis
NamespaceSubdiretório cria comandos nomeados com dois pontosMelhor organização de comandos
Comandos Globais~/.qwen/commands/Disponível em todos os projetosBaixaComandos pessoais de uso frequente, uso entre projetos
Comandos do Projeto<project root directory>/.qwen/commands/Específicos do projeto, versionáveisAltaCompartilhamento em equipe, comandos específicos do projeto

Regras de Prioridade: Comandos do projeto > Comandos do usuário (o comando do projeto é usado quando os nomes são iguais)

Regras de Nomenclatura de Comandos

Tabela de Mapeamento de Caminho de Arquivo para Nome de Comando

Localização do ArquivoComando GeradoChamada de Exemplo
~/.qwen/commands/test.md/test/test Parameter
<project>/.qwen/commands/git/commit.md/git:commit/git:commit Message

Regras de Nomenclatura: O separador de caminho (/ ou \) é convertido em dois pontos (:)

Especificação de Formato de Arquivo Markdown (Recomendado)

Comandos personalizados usam arquivos Markdown com frontmatter YAML opcional:

--- description: Optional description (displayed in /help) --- Your prompt content here. Use {{args}} for parameter injection.
CampoObrigatórioDescriçãoExemplo
descriptionOpcionalDescrição do comando (exibida em /help)description: Code analysis tool
Corpo do promptObrigatórioConteúdo do prompt enviado ao modeloQualquer conteúdo Markdown após o frontmatter

Formato de Arquivo TOML (Descontinuado)

Warning

Descontinuado: O formato TOML ainda é suportado, mas será removido em uma versão futura. Por favor, migre para o formato Markdown.

CampoObrigatórioDescriçãoExemplo
promptObrigatórioConteúdo do prompt enviado ao modeloprompt = "Please analyze code: {{args}}"
descriptionOpcionalDescrição do comando (exibida em /help)description = "Code analysis tool"

Mecanismo de Processamento de Parâmetros

Método de ProcessamentoSintaxeCenários AplicáveisRecursos de Segurança
Injeção Sensível ao Contexto{{args}}Necessidade de controle preciso de parâmetrosEscape automático de Shell
Processamento Padrão de ParâmetrosSem marcação especialComandos simples, anexação de parâmetrosAnexar como está
Injeção de Comando Shell!{command}Necessidade de conteúdo dinâmicoConfirmação de execução necessária antes

1. Injeção Sensível ao Contexto ({{args}})

CenárioConfiguração TOMLMétodo de ChamadaEfeito Real
Injeção Brutaprompt = "Fix: {{args}}"/fix "Button issue"Fix: "Button issue"
Em Comando Shellprompt = "Search: !{grep {{args}} .}"/search "hello"Executa grep "hello" .

2. Processamento Padrão de Parâmetros

Situação de EntradaMétodo de ProcessamentoExemplo
Possui parâmetrosAnexa ao final do prompt (separado por duas quebras de linha)/cmd parameter → Prompt original + parâmetro
Sem parâmetrosEnvia o prompt como está/cmd → Prompt original

🚀 Injeção de Conteúdo Dinâmico

Tipo de InjeçãoSintaxeOrdem de ProcessamentoPropósito
Conteúdo do Arquivo@{file path}Processado primeiroInjeta arquivos de referência estáticos
Comandos Shell!{command}Processado no meioInjeta resultados de execução dinâmicos
Substituição de Parâmetros{{args}}Processado por últimoInjeta parâmetros do usuário

3. Execução de Comando Shell (!{...})

OperaçãoInteração do Usuário
1. Analisa comando e parâmetros-
2. Escape automático de Shell-
3. Exibe diálogo de confirmação✅ Confirmação do usuário
4. Executa o comando-
5. Injeta a saída no prompt-

Exemplo: Geração de Mensagem de Commit Git

--- description: Gera mensagem de Commit com base nas alterações staged --- Please generate a Commit message based on the following diff: ```diff !{git diff --staged} ```

4. Injeção de Conteúdo de Arquivo (@{...})

Tipo de ArquivoStatus de SuporteMétodo de Processamento
Arquivos de Texto✅ Suporte CompletoInjeta o conteúdo diretamente
Imagens/PDF✅ Suporte MultimodalCodifica e injeta
Arquivos Binários⚠️ Suporte LimitadoPode ser ignorado ou truncado
Diretório✅ Injeção RecursivaSegue as regras do .gitignore

Exemplo: Comando de Code Review

--- description: Code review com base nas melhores práticas --- Revise {{args}}, padrões de referência: @{docs/code-standards.md}

Exemplo Prático de Criação

Tabela de Etapas de Criação do Comando “Refatoração para Função Pura”

OperaçãoComando/Código
1. Criar estrutura de diretóriosmkdir -p ~/.qwen/commands/refactor
2. Criar arquivo de comandotouch ~/.qwen/commands/refactor/pure.md
3. Editar conteúdo do comandoConsulte o código completo abaixo.
4. Testar comando@file.js/refactor:pure
--- description: Refatora código para função pura --- Por favor, analise o código no contexto atual e refatore para uma função pura. Requisitos: 1. Fornecer o código refatorado 2. Explicar as principais alterações e a implementação das características de função pura 3. Manter a função inalterada

Resumo das Melhores Práticas para Comandos Personalizados

Tabela de Recomendações de Design de Comandos

PráticasAbordagem RecomendadaEvitar
Nomenclatura de ComandosUsar namespaces para organizaçãoEvitar nomes excessivamente genéricos
Processamento de ParâmetrosUsar {{args}} de forma claraConfiar na anexação padrão (fácil de confundir)
Tratamento de ErrosUtilizar a saída de erro do ShellIgnorar falha de execução
Organização de ArquivosOrganizar por função em diretóriosTodos os comandos no diretório raiz
Campo de DescriçãoSempre fornecer uma descrição claraConfiar na descrição gerada automaticamente

Tabela de Resumo dos Recursos de Segurança

Mecanismo de SegurançaEfeito de ProteçãoOperação do Usuário
Escape de ShellPrevine injeção de comandosProcessamento automático
Confirmação de ExecuçãoEvita execução acidentalConfirmação via diálogo
Relatório de ErrosAjuda a diagnosticar problemasVisualizar informações de erro

5. Subcomandos da CLI

Estes comandos são executados a partir do shell como qwen <subcomando> antes de iniciar uma sessão interativa.

Gerenciamento de Sessões

ComandoDescriçãoExemplos de Uso
qwen sessions listLista sessões de conversa recentesqwen sessions list, qwen sessions list --json --limit 50

qwen sessions list

Lista suas sessões recentes do Qwen Code com metadados.

Flags:

FlagTipoPadrãoDescrição
--jsonbooleanfalseSaída como JSON Lines (um objeto JSON por linha)
--limitnumber20Número máximo de sessões a exibir

Saída legível por humanos (padrão):

Uma tabela com as colunas: SESSION ID, STARTED (timestamp UTC), TITLE, BRANCH, PROMPT.

Saída em JSON (--json):

Gera JSON Lines no stdout. Cada linha é um objeto JSON com os campos:

sessionId, startTime, mtime, prompt, gitBranch, customTitle, titleSource, filePath, cwd

O aviso de “has more sessions” é emitido via stderr para que o pipe para jq permaneça seguro.

Exemplos:

# Mostra as últimas 20 sessões (padrão) qwen sessions list # Mostra as últimas 50 sessões qwen sessions list --limit 50 # Saída em JSON para scripts qwen sessions list --json | jq .
Last updated on