shell-use

io.github.kyuheon-kr由 GitHub 帳號 kyuheon-kr 發布v1.0.0更新於 Oct 27, 2026

Let agents use the shell like a human.

概覽

AI 產生的概覽

讓 AI 助理像人一樣操作 tmux 終端機工作階段:讀取畫面文字、送出按鍵與文字、捲動歷史。

可以做什麼
  • 列出允許存取的 tmux 工作階段名稱
  • 擷取目前終端機畫面文字,可選擇往回捲動
  • 送出按鍵輸入,例如 Enter、Ctrl+C、方向鍵
  • 送出原樣文字,可選擇接著按 Enter
  • 捲動終端機歷史並離開複製模式
  • 可與工作階段中執行的任何命令列程式互動,例如 vim、htop、gdb
適用情境
適合需要助理操作互動式終端機程式(一般命令執行器難以處理)的情境,或需要它觀察並操控本機長時間執行的 tmux 工作階段時。
執行需求
以本機 Docker 容器(映像 ghcr.io/kyuheon-kr/shell-use)透過 stdio 執行,需要 Docker。須先建立 tmux 工作階段,並將其 socket 路徑掛載進容器。SHELL_USE_SESSIONS 為必填,SHELL_USE_SOCKET 為選填,Docker 中預設為 /tmux/tmux.sock。僅支援桌面用戶端。
安裝前請注意
助理可對你的即時終端機工作階段輸入內容,送出的指令會以你的使用者身分執行,包括破壞性指令或互動式提示。只有 SHELL_USE_SESSIONS 列出的工作階段會暴露,請讓該清單盡量精簡。掛載 tmux socket 等於讓容器控制這些工作階段。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 shell-use,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

shell-use

Let agents use the shell like a human.


Features

  • Interact with any CLI application (vim, htop, gdb, etc.)
  • Send special keys (Ctrl+C, Enter, arrow keys, etc.)
  • Dockerized for easy deployment

Available Tools

ToolDescription
list_sessions()Returns allowed session names
capture(session, scroll_back?)Captures terminal screen text
send_keys(session, keys)Sends key input (e.g., Enter, C-c)
send_text(session, text, enter?)Sends literal text (enter=True to press Enter)
scroll(session, direction, amount?)Scrolls through history
exit_scroll_mode(session)Exits copy-mode

Setup

1. Build the Docker image
bash
docker build -t shell-use:latest .
2. Create a tmux session
bash
tmux new-session -s dev
2.1. Get the tmux socket path
bash
SOCK="$(tmux display-message -p -F '#{socket_path}')"[ -S "$SOCK" ] || { echo "tmux socket not found: $SOCK"; exit 1; }
3. Configure your MCP client

Claude Code:

bash
claude mcp add shell-use \  -- docker run -i --rm \  -v "$SOCK":/tmux/tmux.sock \  -e SHELL_USE_SOCKET=/tmux/tmux.sock \  -e SHELL_USE_SESSIONS=dev \  shell-use:latest

Claude Desktop (claude_desktop_config.json):

json
{  "mcpServers": {    "shell-use": {      "command": "docker",      "args": [        "run", "-i", "--rm",        "-v", "/tmp/tmux-1000/default:/tmux/tmux.sock",        "-e", "SHELL_USE_SOCKET=/tmux/tmux.sock",        "-e", "SHELL_USE_SESSIONS=dev",        "shell-use:latest"      ]    }  }}

Replace /tmp/tmux-1000/default with the path from tmux display-message -p -F '#{socket_path}'.


Environment Variables

VariableDescriptionRequired
SHELL_USE_SESSIONSComma-separated list of allowed session namesYes
SHELL_USE_SOCKETPath to tmux socket (default: /tmux/tmux.sock in Docker)No

Acknowledgments

Inspired by browser-use.

來源:README.md,提交 5fe5fa8

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分