CLI para macOS que salva e restaura espaços de trabalho do terminal no cmux e no Ghostty, incluindo layouts, diretórios de trabalho e sessões de programação com IA.
joshmedeski/sesh
Uma CLI em Go que cria e alterna rapidamente entre sessões do tmux, permitindo nomear e abrir projetos via zoxide, repositórios Git e configurações.
- Estrelas
- 2,924
- Forks
- 139
- Issues abertas
- 52
- Último commit
- anteontem
O que é?
Sesh é uma ferramenta de linha de comando para gerenciar sessões do tmux. Ela nomeia automaticamente uma nova sessão com base em um repositório Git, um remote do Git ou um diretório e pode abrir projetos usados com frequência que o zoxide monitora. Ao executar sesh connect, a ferramenta cria a sessão caso ela ainda não exista e, em seguida, conecta a ela.
A configuração das sessões pode ser definida por projeto em um arquivo sesh.toml. Cada entrada pode especificar comandos de inicialização, janelas e comandos de preview, e padrões com curingas podem aplicar as mesmas configurações a todos os diretórios correspondentes. O Sesh também inclui um seletor interativo integrado e pode ser controlado pelo fzf, television ou gum.
Os comandos adicionais permitem clonar um repositório Git e conectar-se a ele, criar um diretório e conectar-se a ele, alternar entre as duas sessões mais recentes e navegar até a raiz de uma worktree ou de um repositório Git. Há completions de shell para Bash, Zsh, Fish e PowerShell.
Recursos principais
- 01Nomeia sessões automaticamente com base em um repositório Git, remote ou diretório.
- 02Abre diretórios usados com frequência por meio da integração com o zoxide.
- 03Define comandos de inicialização e janelas por projeto em sesh.toml, com padrões que usam curingas.
- 04Inclui um seletor integrado ou integração com fzf, television e gum.
- 05Alterna entre as duas sessões mais recentes e navega até as raízes de worktrees do Git.
Casos de uso
- Alternar entre vários repositórios de projetos, cada um em sua própria sessão do tmux.
- Associar um seletor em popup a uma tecla do tmux para selecionar sessões rapidamente.
- Iniciar um projeto com janelas e comandos predefinidos sempre que ele for aberto.
- Clonar um repositório ou criar um diretório e abri-lo no tmux em uma única etapa.
Início rápido
- 1
Instale o sesh com o Homebrew
brew install sesh - 2
Configure o tmux e o zoxide antes de começar
- 3
Conecte-se a uma sessão ou crie uma
sesh connect {session}
Antes de usar
- É necessário instalar e configurar o tmux e o zoxide primeiro.
Em coleções
Tópicos
Perguntas frequentes
- O que é sesh?
- Uma CLI em Go que cria e alterna rapidamente entre sessões do tmux, permitindo nomear e abrir projetos via zoxide, repositórios Git e configurações. Sesh é uma ferramenta de linha de comando para gerenciar sessões do tmux. Ela nomeia automaticamente uma nova sessão com base em um repositório Git, um remote do Git ou um diretório e pode abrir projetos usados com frequência que o zoxide monitora. Ao executar sesh connect, a ferramenta cria a sessão caso ela ainda não exista e, em seguida, conecta a ela.
- sesh é gratuito? Qual é a licença?
- sesh é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- sesh ainda é mantido?
- Manutenção ativa. O último commit de sesh foi em 5 de nov. de 2026.
- Para que posso usar sesh?
- Alternar entre vários repositórios de projetos, cada um em sua própria sessão do tmux. Associar um seletor em popup a uma tecla do tmux para selecionar sessões rapidamente. Iniciar um projeto com janelas e comandos predefinidos sempre que ele for aberto. Clonar um repositório ou criar um diretório e abri-lo no tmux em uma única etapa.
- Como instalar sesh?
- Instale o sesh com o Homebrew: brew install sesh Configure o tmux e o zoxide antes de começar Conecte-se a uma sessão ou crie uma: sesh connect {session}
- Onde consigo sesh?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/joshmedeski/sesh
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma configuração independente e personalizável do tmux, com linha de status no estilo Powerline, modo de mouse, integração com a área de transferência e suporte a plugins do TPM.
Multiplexador de terminal nativo para Windows, escrito em Rust, que leva os comandos do tmux e o suporte a .tmux.conf para PowerShell e cmd.exe.
Um mecanismo de multiplexação de terminal multiplataforma em Rust, com SDKs tipados para Rust, Python e TypeScript que permitem controlar apps CLI e TUI por código.
Uma CLI em Go para tmux que salva sessões, janelas, painéis e comandos e depois os restaura sob demanda por meio de um seletor TUI.
Um multiplexador de terminal no estilo do tmux, com um servidor em segundo plano que pode ser controlado por scripts e agentes de programação via comandos JSON da CLI.