#Grupos de Workspaces

Os grupos de workspaces permitem aninhar workspaces em seções nomeadas e recolhíveis na barra lateral. Cada grupo tem um workspace âncora implícito, um botão + personalizável para criar novos workspaces dentro dele e ações de clique com o botão direito para renomear, fixar, desagrupar e editar sua configuração.

#Conceitos

#Workspace âncora

Todo grupo pertence a exatamente um workspace chamado âncora. O cabeçalho do grupo na barra lateral é a representação da âncora — não há uma linha separada para ela. Clicar na área do nome do cabeçalho foca os painéis da âncora; clicar no chevron alterna o recolhimento.

As âncoras são sempre totalmente novas quando um grupo é criado. Elas nunca são promovidas a partir de um workspace existente. O diretório de trabalho da âncora é herdado do primeiro workspace selecionado ao agrupar uma seleção, ou do workspace ativo ao criar via CLI sem --cwd.

Fechar o workspace âncora dissolve o grupo: todos os outros membros tornam-se workspaces desagrupados e permanecem na lista de abas. Nada é fechado além da própria âncora. O aplicativo exibe uma caixa de diálogo de confirmação com uma opção "Não perguntar novamente" antes que isso aconteça.

#Identidade do grupo

Um grupo tem um nome, um ícone (um SF Symbol, por padrão folder.fill) e uma cor personalizada opcional. Esses elementos são independentes das próprias personalizações do workspace âncora. A cor e o ícone da âncora são inicializados a partir do grupo na criação, mas podem divergir depois.

#Fixação

Os grupos podem ser fixados de forma independente das fixações de workspaces individuais. As linhas de nível superior fixadas, sejam workspaces individuais ou grupos, permanecem acima das linhas não fixadas. Dentro de cada nível, grupos e workspaces mantêm a ordem na qual você os arrasta.

A barra lateral organiza as linhas de nível superior de cima para baixo:

  1. Linhas de nível superior fixadas (workspaces e grupos).
  2. Linhas de nível superior não fixadas (workspaces e grupos).

#Criando um grupo

Um grupo é criado por um atalho de teclado ou por um menu de contexto da barra lateral. Grupos vazios inserem uma nova área de trabalho âncora como cabeçalho do grupo. Grupos baseados em seleção inserem essa âncora acima da seleção e movem as áreas de trabalho selecionadas para o grupo. Depois que o grupo existe, você o gerencia e adiciona áreas de trabalho a ele pelo cabeçalho do grupo (consulte Gerenciar um grupo abaixo).

#Por atalhos de teclado

Pressione ⌃⌘G para criar um novo grupo de áreas de trabalho vazio. Selecione duas ou mais áreas de trabalho na barra lateral e pressione ⌘⇧G para agrupar a seleção. Ambos os caminhos criam uma nova área de trabalho âncora e nomeiam automaticamente o grupo como Group 1, Group 2 e assim por diante. Renomeie a qualquer momento pelo menu de contexto do cabeçalho.

⌘⇧G colide com o padrão do React Grab. O manipulador de grupo só consome o atalho quando há uma multisseleção explícita de pelo menos dois workspaces na barra lateral, então o React Grab ainda é acionado em seleção única e em contextos de navegador ou terminal. Reatribua-o em Configurações → Teclado se preferir que os dois não compartilhem uma tecla.

Grupos de aba única não são criados pelo atalho. Use a entrada Novo grupo a partir desta área no menu de contexto da área de trabalho para isso.

#Pelo menu de contexto de um workspace

Clique com o botão direito em qualquer área de trabalho na barra lateral e escolha Novo grupo de áreas de trabalho vazio, Novo grupo a partir da área de trabalho ou Novo grupo a partir da seleção quando várias áreas de trabalho estiverem selecionadas. A área em branco abaixo da lista da barra lateral também oferece Novo grupo de áreas de trabalho vazio. Esses caminhos usam o mesmo comportamento de nomeação automática dos atalhos.

#Gerenciar um grupo

Depois que um grupo existe, o menu de contexto do seu cabeçalho e o botão + no cabeçalho permitem gerenciar o grupo e adicionar workspaces a ele. Nenhum dos dois cria um novo grupo.

#Pelo menu de contexto do cabeçalho do grupo

Clique com o botão direito no cabeçalho de um grupo existente para Renomear grupo…, Fixar grupo / Desafixar grupo, Editar configuração do grupo… (que abre ~/.config/cmux/cmux.json), Abrir documentação de grupos, Desagrupar áreas de trabalho e Excluir grupo. Desagrupar áreas de trabalho mantém as áreas de trabalho e remove apenas o contêiner do grupo. Excluir grupo fecha a área de trabalho do cabeçalho e todas as áreas de trabalho dentro do grupo; se o grupo contiver áreas de trabalho filhas, pede confirmação primeiro.

#Pelo botão + no cabeçalho de um grupo

Passe o cursor sobre o cabeçalho de um grupo para revelar um botão + ao final. Clique nele para criar uma nova área de trabalho no grupo no diretório de trabalho da âncora. Clique com o botão direito nele para Nova área de trabalho no grupo, Editar configuração do grupo… e Abrir documentação de grupos.

Pressionar ⌘N enquanto o workspace ativo é uma âncora ou membro de um grupo também cria o novo workspace dentro desse grupo. O posicionamento padrão é After current: a partir de um membro comum do grupo, o novo workspace é inserido logo após o membro ativo, e a partir da âncora ou do cabeçalho ele é inserido no topo do grupo.

#CLI

Todas as operações de grupo podem ser automatizadas via script com os subcomandos cmux workspace-group. A forma com hífen é lançada primeiro; assim que o espaço de nomes de comandos mais amplo cmux workspace estiver disponível, cmux workspace group passará a ser a forma canônica, enquanto a forma com hífen é mantida como alias para sempre.

#Subcomandos

cmux workspace-group list [--json]
cmux workspace-group create --name "manaflow" [--cwd ~/projects/manaflow] [--from <id>,<id>]
cmux workspace-group ungroup <group-id>
cmux workspace-group delete  <group-id>
cmux workspace-group rename <group-id> --name "new name"
cmux workspace-group collapse <group-id>
cmux workspace-group expand <group-id>
cmux workspace-group pin <group-id>
cmux workspace-group unpin <group-id>
cmux workspace-group add --group <group-id> --workspace <workspace-id>
cmux workspace-group remove --workspace <workspace-id>
cmux workspace-group set-anchor --group <group-id> --workspace <workspace-id>
cmux workspace-group new-workspace <group-id> [--placement afterCurrent|top|end]
cmux workspace-group set-color <group-id> --hex "#7A4FD8"
cmux workspace-group set-icon  <group-id> --symbol ladybug.fill
cmux workspace-group move <group-id> (--to-index <n> | --before <group-id> | --after <group-id>)
cmux workspace-group focus <group-id>

create retorna um identificador de grupo (workspace_group:N por padrão). Passe --json para o payload estruturado completo.

Passe um valor vazio para set-color ou set-icon para limpar a cor ou o ícone do grupo. delete é irreversível: ele fecha todas as áreas de trabalho membros.

#Exemplos

Agrupe os workspaces atualmente selecionados sob um nome:

cmux workspace-group create --name manaflow

Crie um novo workspace dentro de um grupo existente, por exemplo conectado a um script de worktree:

cmux workspace-group new-workspace workspace_group:1

Liste os grupos na janela em foco:

cmux workspace-group list

#Configuração

A configuração por grupo fica sob a chave workspaceGroups em ~/.config/cmux/cmux.json, indexada pelo diretório de trabalho do workspace âncora. Consulte a referência de configuração para conhecer as chaves suportadas, incluindo o posicionamento global de novos workspaces e a cor, o ícone, o posicionamento e as ações do menu de contexto por diretório.

referência de configuração de workspaceGroups

#Persistência

Nome do grupo, âncora, estado de fixação, estado de recolhimento, cor e ícone são salvos junto com seus workspaces e restaurados entre as inicializações. A associação ao grupo é armazenada em cada workspace.