Repolode
joshmedeski

joshmedeski/sesh

基于 zoxide 和 Git 仓库快速创建、切换 tmux 会话的 Go 命令行工具。

Star
2,924
Fork
139
未关闭 Issue
52
最近提交
前天

这是什么?

Sesh 是一个用于管理 tmux 会话的命令行工具。它会根据 Git 仓库、Git 远程地址或目录自动为新会话命名,并能通过 zoxide 快速跳转到常用项目。执行 sesh connect 时,如果会话不存在就会先创建,然后直接连接。

每个项目的会话配置可以写在 sesh.toml 中,包括启动命令、窗口和预览命令;通配符配置则可以把同一套设置应用到匹配的所有目录。项目内置交互式选择器,也可以与 fzf、television 或 gum 配合使用。

此外,它还支持克隆 Git 仓库后直接连接、创建新目录后直接连接、在最近两个会话之间快速切换,以及跳转到 Git worktree 或仓库的根会话。Shell 补全支持 Bash、Zsh、Fish 和 PowerShell。

核心功能

  • 01根据 Git 仓库、远程地址或目录自动为会话命名。
  • 02通过 zoxide 集成快速跳转到常用目录。
  • 03在 sesh.toml 中按项目或通配符定义启动命令和窗口。
  • 04内置选择器,也可与 fzf、television、gum 配合使用。
  • 05支持在最近两个会话间切换,并可跳转到 Git worktree 根目录。

适用场景

  • 在多个项目仓库之间切换,每个项目对应一个 tmux 会话。
  • 将弹出式选择器绑定到 tmux 快捷键,快速选择会话。
  • 每次打开项目时自动启动预设的窗口和命令。
  • 一步完成克隆仓库或新建目录并在 tmux 中打开。

快速上手

  1. 1

    使用 Homebrew 安装 sesh

    brew install sesh
  2. 2

    确保已先设置好 tmux 和 zoxide

  3. 3

    连接到或创建一个会话

    sesh connect {session}

使用前须知

  • 需要先安装并设置 tmux 和 zoxide。

收录于专题

标签

常见问题

sesh 是什么?
基于 zoxide 和 Git 仓库快速创建、切换 tmux 会话的 Go 命令行工具。 Sesh 是一个用于管理 tmux 会话的命令行工具。它会根据 Git 仓库、Git 远程地址或目录自动为新会话命名,并能通过 zoxide 快速跳转到常用项目。执行 sesh connect 时,如果会话不存在就会先创建,然后直接连接。
sesh 可以免费使用吗?用的什么许可证?
sesh 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
sesh 还在维护吗?
活跃维护中。sesh 最近一次提交是在 2026年11月5日。
sesh 适合用来做什么?
在多个项目仓库之间切换,每个项目对应一个 tmux 会话。 将弹出式选择器绑定到 tmux 快捷键,快速选择会话。 每次打开项目时自动启动预设的窗口和命令。 一步完成克隆仓库或新建目录并在 tmux 中打开。
sesh 怎么安装和运行?
使用 Homebrew 安装 sesh: brew install sesh 确保已先设置好 tmux 和 zoxide 连接到或创建一个会话: sesh connect {session}
在哪里获取 sesh?
源代码和安装说明在 GitHub 上:https://github.com/joshmedeski/sesh

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目