
fleet
io.github.sinolion由 GitHub 帳號 sinolion 發布v0.6.2更新於 Nov 6, 2026
Every machine you have, for your agent: free GPUs, jobs, served models, software, over SSH.
概覽
讓編碼助理看到並使用你能透過 SSH 連上的所有機器:GPU、正在執行的工作、已提供的模型、已安裝軟體與資料目錄。
- 可以做什麼
- 列出所有可連線機器及目前可用資源,並可依 NVIDIA、AMD、24 GB 顯示記憶體等能力篩選
- 檢視單一機器細節:GPU 工作及其使用者、記憶體用量與指令,已提供的模型與連線方式,CUDA/ROCm 與套件版本,資料目錄與剩餘空間
- 透過 SSH 指令、ssh 設定主機或 tailnet 探索新增機器,並編輯其標籤、費用與目錄路徑
- 在指定機器上透過 SSH 執行指令並取回結果
- 標示閒置的付費租用機器及其每小時價格與整體花費速度
- 適用情境
- 適合你從一台筆電工作、但擁有或租用多台 GPU 機器、伺服器或 NAS,希望助理自動挑選合適機器來訓練、跑測試或下載資料,而不是預設使用本機。它補足而非取代啟動新雲端主機的工具。
- 執行需求
- 以本機程序執行(PyPI 套件 agents-fleet,可用 uvx 或安裝腳本),安裝在執行助理的機器上。每台目標機器只需能從該機器透過 SSH 連上;不需帳號、雲端服務或發放金鑰。未宣告環境變數或標頭。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 fleet,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
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 and what is running on it, the models being
served, the software installed, and where your models and data live.
No account, no cloud service, nothing installed on the machines you add, no keys handed out: fleet logs in exactly as you do, with the SSH you already use.
[tests] [License: MIT] [Linux | macOS | Windows] [MCP server]
https://github.com/user-attachments/assets/d35e0200-c2a2-44aa-8f60-a3b6e4addfb7
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. - It cannot see what is running, or what is already there — whose job is on that card, which box already serves Llama 3, where the datasets live — so it downloads and installs things twice.
Get started: ask your agent
Paste this into Claude Code, Codex, Gemini CLI, or any agent that can run commands, on the machine you work from:
Agents: the steps are in INSTALL.md.
That is the whole setup. fleet is installed once on this machine, and every supported agent you have here learns it — not only the one you asked. From here on you say what you want in plain words, with no commands to remember.
Then add your machines
Tell the agent how you reach a machine — the SSH command you already use is enough — or
let it look in your ~/.ssh/config and on your tailnet for machines you can already reach:
You: add my GPU server,
ssh [email protected]Agent: Added as
gpu-box: 2× RTX 4090, both idle, 46 GB free. It's ready to use.
Each one takes a sentence, whatever the machine is:
Nothing is installed on the machines you add: they only need SSH, on Linux, macOS or Windows. fleet probes each one for its GPUs, memory and disks, and keeps that current.
Then let the agent pick
You describe the work; the agent finds where it fits. It checks what each machine has and what is free on it right now, so it will not send a job to a busy card:
You: train
train.pyon whatever has a free 24 GB cardAgent:
rtx4090has 23.1 GB free and an idle GPU;a100-spotis free too but costs $1.89/hr. Starting onrtx4090, logging totrain.log.
Keys and passwords never go into the conversation, and anything irreversible waits for your yes.
Only install fleet where you use it. The machines you add need nothing but SSH. Install
fleet on another machine only if you also run agents there; it works the same everywhere,
with nothing to join or sync. There, fleet ls --discover lists the machines in your ssh
config and on your tailnet; the ones you added by hand are in one file you can share with
your dotfiles.
An app that cannot run commands?
Desktop apps and editors get fleet in one click; it runs as an MCP server:
Plus plugins for Claude Code, Codex, Copilot CLI and Gemini CLI, and OpenCode, Amp, Windsurf, Cline, Zed, Qwen Code, Goose, Kiro, Hermes — 35+ agents in all: every agent →
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. The few files it does leave there are listed in What fleet changes.
- No keys handed out, no access managed. fleet connects exactly as you do — your ssh
config, your keys and agent, Tailscale SSH, your rental provider's key — and writes no
keys anywhere. Who may reach what stays where you already decide it. When a machine
refuses,
fleet doctortells you the fix; fleet never makes it. - No passwords. fleet never asks for one or stores one, and the agent never sees a credential. Secrets in a GPU job's command line are blanked before anyone sees them.
- The agent asks, not guesses. It is told to ask which machine you mean, to leave irreversible commands to you, and not to start work on a GPU someone else is using.
- Nothing phones home. Apart from installing and updating itself, fleet talks to your machines and nothing else: no account, no telemetry, no update check. Found a flaw? SECURITY.md says how to report it privately.
Prefer the command line?
Everything the agent does is a plain fleet command. To install fleet yourself, run this
on the machine you work from (this is also what your agent runs when you ask it):
Windows: powershell -ExecutionPolicy ByPass -c "irm https://raw.githubusercontent.com/sinolion/fleet/main/install.ps1 | iex"
Then drive it yourself:
[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] [fleet top: a live view of GPU utilisation, free VRAM, CPU, RAM, disk and who is running what on each GPU, across all machines] [fleet ps: every job on every GPU — a training run on an A100 rental, a fine-tune and a vLLM server on a lab box with two RTX 3090s — and the three idle GPUs] [fleet models: Llama 3.1 served by vLLM on the lab box at its URL, and two ollama models on the RTX 4090 that listen only locally, with the ssh tunnel that reaches them]Where a machine keeps its models, datasets and media is written on the machine itself,
in machine.yaml (fleet edit NAME --path models=/data/models). Whoever looks at that
machine reads the same answer, and the folder sizes and free space come with every probe.
Rentals from vast.ai, RunPod or AutoDL show their price (fleet edit a100 --cost 1.89),
the fleet's burn rate, and an alert when a rental 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.
When to use something else. To rent GPUs on demand at the lowest price, use SkyPilot or dstack: they launch and stop machines, and fleet does not. For weeks of metrics and paging on a large cluster, use DCGM with Prometheus and Grafana. For a live dashboard of many accelerator kinds (Gaudi, NPUs), use all-smi. fleet is for the machines you already have, and for letting your agent use them.
Why not just Tailscale, Ansible, or an ~/.ssh/config? Use them with fleet, not
instead of it. Tailscale connects your machines, and fleet runs over it happily, but it
does not tell your agent which machine has a free GPU. Ansible changes machines to match
a playbook you write, and has no idea what is busy right now. An ~/.ssh/config names
your hosts, and fleet reads it. fleet is the part in between: what you have, what is
free on it, what is running and installed there, in a form your agent can use without
you.
FAQ
Setting up
Do I need to install fleet on every machine?
No. Install it where you use it: the machine you work from, and any other machine where you also run agents. The machines you only use — GPU servers, rentals, a NAS — need SSH and nothing else.
Do I need Tailscale?
No. fleet uses whatever SSH reaches your machines: a LAN, a VPN, a jump host, a rental's
public port. If you have Tailscale, fleet ls --discover finds your tailnet machines
for you, and Tailscale SSH decides who may log in where — fleet just connects. See
Reaching your machines.
I run fleet on two machines. Do they share anything?
They do not need to: each one looks at the machines its own SSH reaches, and what a
machine says about itself — its cost, tags, where its models live — is kept on that
machine, so both read the same. The machines you added by hand are in one file,
machines.yaml (fleet paths shows where); copy it, or keep it in your dotfiles.
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
list of machines. 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? Ask an agent that has fleet to run
fleet setup.
What does my agent actually get?
Agents that can run commands (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 (Claude Desktop, Cursor, VS Code, …) get an MCP server
that runs the same commands for them. See Agents. After
installing, start a new session so the agent loads it.
Safety
Does fleet store my passwords? Does my agent see my keys?
No and no. fleet has no key of its own and never handles a password: it runs ssh as
you would. For a machine that only takes a password, it offers ssh-copy-id in your
terminal, where you type the password into ssh itself, once. The agent runs fleet ssh NAME and never sees a key or a password; it may see a machine's address, as fleet show prints it.
What does fleet leave on the machines I add?
Almost nothing: the notes file fleet edit writes there (machine.yaml: tags, cost,
a note, folders, declared servers), a
small cache of software versions and folder sizes in ~/.cache/fleet, and nothing at
all in authorized_keys. No program, no service.
What fleet changes has the full list.
Can the agent do something I cannot undo?
It is told not to. Removing a machine is left to you, and is not available to apps over MCP at all. When a request is ambiguous — which machine, which user — the agent asks instead of guessing.
Machines
The disk space fleet reports is wrong.
Some systems — containers, GPU rentals — show / as a small overlay while the space is on
another volume. Tell fleet which paths to watch: "on gpu-box, watch /workspace", or
fleet edit gpu-box --disk-path /workspace. See
Disks.
My rental came back on a new IP or port.
Re-point it, keeping its name, tags, cost and history: "gpu-box is now at
ssh -p 40123 [email protected]", or fleet edit gpu-box --ssh "ssh -p 40123 [email protected]".
My machines are behind different NATs, or at different sites.
fleet does not solve connectivity; it uses the routes you have. The machine you run fleet on must reach each machine over SSH; the machines never need to reach each other. For machines behind different NATs, put them on a mesh network such as Tailscale or ZeroTier and add them by their mesh address. See Reaching your machines.
Windows?
Yes, both ways. A Windows machine works as a target with OpenSSH Server and nothing else, and fleet runs on Windows too. See Windows.
Does anything keep running in the background?
No service. fleet runs only when you or an agent use it. The ssh connection it opened to
each machine stays open for two minutes after the command (on Linux and macOS), so the
next one does not dial again, and then closes by itself. On a machine it looks at, a
du of the folders you named may run in the background now and then, so their sizes
are known without making a probe wait.
I used fleet 0.5. What changed?
fleet stopped managing access: no center, no invites, no keys of its own. Upgrade, and add your machines again. Upgrading from 0.5 lists what 0.5 left on your machines and how to remove it.
How do I remove fleet?
fleet uninstall (--purge to delete its files too): it removes fleet from your agents
and prints the last step, uv tool uninstall agents-fleet. See
Removing fleet.
Learn more
- Getting started — your first fleet, in ten minutes
- Guides — adding machines, reaching them, what is on each one, Windows
- Every agent — install commands and config for 35+ agents
- Command reference — every command and option
- How fleet works — what happens, step by step, under the hood
- Design — one core per machine, a skill per agent, MCP for the rest
- All documentation, also as a website: agents-fleet.dev
Status: v0.6. 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.
Issues and pull requests are welcome — see CONTRIBUTING.md. If fleet saved you a GPU-hour, a ⭐ helps other people find it.
來源:README.md,提交 cd81011
工具
0版本歷史
1- v0.6.2最新Oct 29, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分