fleet

io.github.lion-zhangv0.5.0更新于 Oct 7, 2026

Every machine you have, for your coding agent: live GPU, VRAM, RAM and disk, and SSH.

概览

AI 生成的概览

让编程助手看到并使用你所有的机器——实时 GPU、显存、内存和磁盘——并通过 SSH 执行命令。

功能
fleet 为助手提供一份统一的机器清单,显示各机器的 GPU、显存、内存和磁盘实时可用情况,并允许通过 SSH 在任意机器上执行命令。它可以按能力匹配机器(例如空闲的 24 GB 显卡),报告付费租用机器的时价和整体开销,并管理哪台机器可以访问哪台。有 shell 的助手获得一份说明 fleet 命令的技能文本;无法执行命令的应用则通过这个 MCP 服务器代为运行同样的命令。
适用场景
当你在多台机器之间工作——本地主机、NAS 或租用的 GPU 实例——并希望助手挑选空闲 GPU、在合适的主机上运行任务,或查看哪些机器空闲、哪些在花钱时,值得添加。
运行要求
作为本地 stdio 进程运行,通过 uvx 从 PyPI 包 agents-fleet 安装;README 也提供了 shell 安装脚本。中心机器需要一个可路由到的地址(公网 IP、局域网或 Tailscale 等覆盖网络)。成员机器只需 sshd;使用 SSH 密钥,必要时由你输入一次密码。未声明任何环境变量或请求头。
安装前请注意
该服务器会通过 SSH 在你的其他机器上执行命令,并可更改机器之间的 SSH 访问权限,因此助手能对远程主机执行操作,而不只是读取。凭据不会被存储,也不会展示给助手,但在执行不可逆命令前仍应确认目标机器。付费租用机器会记录时价并提示空闲;fleet 不会启动新的云主机。

安装

在 SourceWeft 中

  1. 打开 控制台中的 fleet,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

fleet — let your coding agent use every machine you have

Claude Code, Codex and Gemini see one machine: the one they run on.
fleet shows them all of yours — every GPU, how much is free, and how to get there.

[tests] [License: MIT] [Linux | macOS | Windows] [MCP server]

[fleet ls: free GPU, VRAM, CPU, RAM and disk across seven machines — an A100 rental with one busy and one idle card, an idle H100 rental flagged as costing money, a busy RTX 3090 box with a nearly full disk, a laptop, a NAS and a machine that is switched off]

The problem

Ask your agent to train a model and it starts on your laptop — while a 4090 sits idle across the room and a rented A100 bills you by the hour. It cannot use what it cannot see.

  • Your agent is stuck on one machine. It has no idea your other boxes exist.
  • Finding a free GPU is manual. SSH into five hosts, run nvidia-smi, compare in your head.
  • Handing it a server means pasting credentials into the chat, and hoping.

Install once, then just talk to your agent

On the machine you work from:

bash
curl -LsSf https://raw.githubusercontent.com/lion-zhang/fleet/main/install.sh | sh

Windows: powershell -ExecutionPolicy ByPass -c "irm https://raw.githubusercontent.com/lion-zhang/fleet/main/install.ps1 | iex"

That is the whole setup. This machine becomes your fleet's center, and every supported agent installed on it learns fleet. From here on you say what you want in plain words — no commands to remember. When something is missing, the agent asks (illustrative):

You: add my new GPU server

Agent: Sure — how do you usually connect to it? An SSH command like ssh -p 40001 [email protected] is all I need.

You: ssh [email protected]

Agent: Added as gpu-box: 2× RTX 4090, both idle, 46 GB free. It's ready to use.

You: train train.py on whatever has a free 24 GB card

Agent: rtx4090 has 23.1 GB free and an idle GPU; a100-spot is free too but costs $1.89/hr. Starting on rtx4090, logging to train.log.

You sayWhat happens
"what's free right now?"every machine checked, the free ones listed
"find me a box with a 24 GB card"machines matched by what they have, not by name
"run the tests on the Linux box"run there, results brought back
"what's costing me money?"idle paid rentals flagged, with their hourly price
"let the laptop reach the NAS"access granted, applied at once
"add a machine without typing its password"a one-time line to paste there; it joins by itself

No hostnames, keys or passwords go into the conversation, and anything irreversible waits for your yes.

Every machine besides the center is a member. A member needs nothing installed — just sshd. For machines where you also want to run fleet, or that you would rather not type a password for, the agent gives you an invite line: pasted there, it installs fleet and joins by itself.

Already in your agent? Install from there

AgentInstall
Claude Code/plugin marketplace add lion-zhang/fleet then /plugin install fleet@fleet
Codexcodex plugin marketplace add lion-zhang/fleet then codex plugin add fleet@fleet
Gemini CLIgemini extensions install https://github.com/lion-zhang/fleet
GitHub Copilot CLIcopilot plugin marketplace add lion-zhang/fleet then copilot plugin install fleet@fleet
Cursor[Add to Cursor]
VS Code[Install in VS Code]
Claude Desktopopen fleet.mcpb from the latest release

Plus OpenCode, Amp, Windsurf, Cline, Zed, Qwen Code, Goose, Kiro, Hermes — 35+ agents in all: every agent →

On a machine in no fleet yet, these make it a center on first use, like the installer. For a member, paste its invite line first.

Built to be safe

  • Nothing to install on your machines. fleet probes with one script over one SSH connection — Linux, macOS or Windows. A NAS or a fresh rental works as it is.
  • Keys, not passwords. A password, if needed at all, is typed once by you. Nothing that could be stolen is stored, and the agent never sees a credential.
  • Access you control. The center decides which machine may reach which, and a revoke is pushed at once. fleet access gpu-box --allow laptop, --deny to take it back.
  • The agent asks, not guesses. It is told to ask which machine you mean, and to leave irreversible commands to you.

Prefer the command line?

Everything the agent does is a plain fleet command, for when you want to drive it yourself:

bash
fleet ls                            # every machine, with what is free right nowfleet ls --tag cuda --tag vram-24g  # by capability: NVIDIA, a card of 24 GB or morefleet top                           # live view, like htop for the whole fleetfleet show gpu-box                  # one machine in detail: GPU processes, services, disksfleet ssh gpu-box -- nvidia-smi     # run something therefleet add "ssh [email protected]"     # add a machine; fleet invite NAME for a join linefleet access nas --allow laptop     # let one machine reach another
[fleet top: a live view of GPU utilisation, free VRAM, CPU, RAM and disk across all machines]

Rentals from vast.ai, RunPod or Lambda show their price (fleet edit a100 --cost 1.89), the fleet's burn rate, and an alert when a paid machine sits idle. On Tailscale, ZeroTier or WireGuard? fleet just needs an address it can route to.

How fleet compares

fleet is about the machines you already have. It complements tools that launch new ones.

ssh + nvidia-sminvitop / gpustatSkyPilot / dstackfleet
All your machines in one view✗✗ one machine✓ the ones it manages✓
Built for coding agents (skill / MCP)✗✗partly✓
Nothing installed on target machines✓✗✗✓
Manages SSH access between machines✗✗for its own clusters✓
Launches new cloud VMs✗✗✓✗

FAQ

I use Claude Code and Codex (and more) on one machine. Does that work?

Yes — that is the normal case. fleet is installed once per machine: one command, one inventory, one set of keys. Each agent only gets a small skill or MCP entry pointing at it, so Claude Code, Codex, Gemini CLI and a desktop app all see the same machines, and can use them at the same time. Install a new agent later? Run fleet setup (or ask an agent that already has fleet to do it).

What does my agent actually get?

Agents with a shell (Claude Code, Codex, Gemini CLI, Copilot CLI, OpenCode, …) get a skill — text that tells them the fleet commands; it costs nothing until a task needs a machine. Apps that cannot run commands (Claude Desktop, Cursor, VS Code, …) get an MCP server that runs the same commands for them. The installer sets up the supported agents you have; docs/agents.md has the details for each.

Does it work behind NAT, or across sites?

The center needs an address it can route to: a public IP, a LAN, or an overlay such as Tailscale. A machine the center cannot dial can still join with the fleet invite line and report in; granting access to it waits until the center can reach it.

What if the center is off?

Normal — it can be a laptop that is closed half the day. Everything already granted keeps working; only changes wait for it. Move the role with fleet center NAME.

Windows?

Yes, both ways. A Windows machine works as a target with OpenSSH Server and nothing else, and fleet runs on Windows too, center included: interactive fleet ssh, fleet top and the background service all work there. See Windows.

Learn more

  • Getting started — the full walkthrough, every command
  • Every agent — install commands and config for 35+ agents
  • Design — one core per machine, a skill per agent, MCP for the rest; and access — how access is granted, signed and revoked

Status: v0.5. The test suite runs on Linux, macOS and Windows, and every command is run end to end on a real machine of each OS in CI — from a script, as an agent runs it, and at a real terminal, as you do. Multi-machine fleets (key, password, invite, handover) are tested on Linux machines built from scratch.

Issues and pull requests are welcome — uv run pytest -q runs the tests. If fleet saved you a GPU-hour, a ⭐ helps other people find it.

MIT

来源:README.md,提交 22afd65

工具

0
工具元数据尚未被收录。

版本历史

1
  1. v0.5.0最新Oct 7, 2026