🚀. Socket Launch Week Day 3:Socket Firewall Now Blocks Malicious VS Code and Open VSX Extensions.Learn more
Sign In

@daomar/agentfleet

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@daomar/agentfleet - npm Package Compare versions

Comparing version
3.1.3
to
3.1.4
+1
-1
dist/cli.js

@@ -72,3 +72,3 @@ #!/usr/bin/env node

.description((0, i18n_1.t)('init.description'))
.requiredOption('--backend <name>', (0, i18n_1.t)('init.option_backend'), 'local-folder')
.option('--backend <name>', (0, i18n_1.t)('init.option_backend'), 'onedrive')
.option('--path <dir>', (0, i18n_1.t)('init.option_path'))

@@ -75,0 +75,0 @@ .option('--force', 'Overwrite existing configuration')

@@ -45,2 +45,3 @@ "use strict";

const protocol_engine_1 = require("../services/protocol-engine");
const init_1 = require("./init");
const fs = __importStar(require("fs"));

@@ -123,8 +124,29 @@ const path = __importStar(require("path"));

catch (err) {
console.error(`\n❌ ${(0, i18n_1.t)('run.error', { message: err.message })}`);
daemonService.removePid();
if (logger)
logger.restore();
exit(1);
return undefined;
const msg = err.message;
// Auto-init if config not found
if (msg.includes('agentfleet init')) {
console.log(`\n🔧 ${(0, i18n_1.t)('run.auto_init')}`);
try {
await (0, init_1.initCommand)({ backend: 'onedrive' });
const loadConfigFn = dependencies.loadConfigFn ?? config_1.loadConfig;
config = await loadConfigFn();
}
catch (initErr) {
console.error(`\n❌ ${(0, i18n_1.t)('run.auto_init_failed', { message: initErr.message })}`);
console.log(` ${(0, i18n_1.t)('run.auto_init_hint')}`);
daemonService.removePid();
if (logger)
logger.restore();
exit(1);
return undefined;
}
}
else {
console.error(`\n❌ ${(0, i18n_1.t)('run.error', { message: msg })}`);
daemonService.removePid();
if (logger)
logger.restore();
exit(1);
return undefined;
}
}

@@ -131,0 +153,0 @@ // Apply CLI overrides

@@ -43,2 +43,3 @@ "use strict";

const index_1 = require("../backends/index");
const init_1 = require("./init");
async function submitCommand(options, _command, dependencies = {}) {

@@ -52,5 +53,22 @@ // Load v3 config

catch (err) {
console.error(`❌ ${(0, i18n_1.t)('submit.error', { message: err.message })}`);
process.exitCode = 1;
return;
const msg = err.message;
// Auto-init if config not found
if (msg.includes('agentfleet init')) {
console.log(`\n🔧 ${(0, i18n_1.t)('submit.auto_init')}`);
try {
await (0, init_1.initCommand)({ backend: 'onedrive' });
config = await loadConfigFn();
}
catch (initErr) {
console.error(`\n❌ ${(0, i18n_1.t)('submit.auto_init_failed', { message: initErr.message })}`);
console.log(` ${(0, i18n_1.t)('submit.auto_init_hint')}`);
process.exitCode = 1;
return;
}
}
else {
console.error(`❌ ${(0, i18n_1.t)('submit.error', { message: msg })}`);
process.exitCode = 1;
return;
}
}

@@ -57,0 +75,0 @@ // Create backend

@@ -202,4 +202,11 @@ {

"run.auto_init": "No configuration found. Initializing AgentFleet with OneDrive...",
"run.auto_init_failed": "Auto-initialization failed: {message}",
"run.auto_init_hint": "Run `agentfleet init --backend onedrive` manually, or use `--backend local-folder --path <dir>` for a local workspace.",
"submit.created": "Task {taskId} created via v3 protocol",
"submit.error": "Failed to submit task: {message}",
"submit.auto_init": "No configuration found. Initializing AgentFleet with OneDrive...",
"submit.auto_init_failed": "Auto-initialization failed: {message}",
"submit.auto_init_hint": "Run `agentfleet init --backend onedrive` manually, or use `--backend local-folder --path <dir>` for a local workspace.",

@@ -206,0 +213,0 @@ "config.unsupported_version": "Config at {path} has an unsupported version. Run `agentfleet init --force` to recreate.",

@@ -202,4 +202,11 @@ {

"run.auto_init": "未找到配置。正在使用 OneDrive 初始化 AgentFleet...",
"run.auto_init_failed": "自动初始化失败: {message}",
"run.auto_init_hint": "请手动运行 `agentfleet init --backend onedrive`,或使用 `--backend local-folder --path <目录>` 创建本地工作区。",
"submit.created": "任务 {taskId} 已通过 v3 协议创建",
"submit.error": "提交任务失败: {message}",
"submit.auto_init": "未找到配置。正在使用 OneDrive 初始化 AgentFleet...",
"submit.auto_init_failed": "自动初始化失败: {message}",
"submit.auto_init_hint": "请手动运行 `agentfleet init --backend onedrive`,或使用 `--backend local-folder --path <目录>` 创建本地工作区。",

@@ -206,0 +213,0 @@ "config.unsupported_version": "{path} 的配置版本不受支持。请运行 `agentfleet init --force` 重新创建。",

{
"name": "@daomar/agentfleet",
"version": "3.1.3",
"version": "3.1.4",
"description": "Distributed agent orchestration, without a control plane.",

@@ -5,0 +5,0 @@ "main": "dist/cli.js",

+78
-25

@@ -8,7 +8,7 @@ <p align="center">

<p align="center">
<strong>Turn your own laptops, desktops, and lab machines into a distributed coding-agent fleet.</strong>
<strong>Orchestrate AI coding agents across every machine you own.</strong>
</p>
<p align="center">
Run one prompt across many devices in parallel — no server, no SSH mesh, no control plane. AgentFleet coordinates through your existing OneDrive sync.
Submit one prompt, let every enrolled device run it with its own local agent, and compare results side by side — no server, no SSH mesh, no control plane.
</p>

@@ -25,3 +25,3 @@

<a href="README.md">English</a> | <a href="README.zh-CN.md">简体中文</a> ·
<a href="https://agentfleet.daomar.dev/">Live dashboard</a> ·
<a href="https://agentfleet.daomar.dev/web/">Dashboard</a> ·
<a href="https://agentfleet.daomar.dev/donate.html">Support the project</a>

@@ -32,20 +32,18 @@ </p>

## Why star AgentFleet?
## Built for agent developers
Experienced developers increasingly have more compute than orchestration: a work laptop, a desktop, a mini PC, a home server, maybe several agent CLIs with different strengths. AgentFleet gives those machines a shared task fabric so they can all attack the same prompt independently and return comparable results.
AgentFleet is designed for developers who work with AI coding agents — Claude Code, GitHub Copilot CLI, Cursor, Aider, or any command-line tool that accepts a prompt and produces code. If you have more than one machine, AgentFleet lets them all work in parallel on the same task and return independent results.
Use it when you want to:
- **Compare agents side by side** — run the same security review with Claude Code, Copilot CLI, Cursor, or any local command template.
- **Compare agents side by side** — run the same prompt with Claude Code on one machine and Copilot CLI on another, then compare output quality.
- **Parallelize exploratory work** — ask multiple machines to inspect different clones, branches, or configurations at the same time.
- **Benchmark prompts** — evaluate the same prompt across different models, tools, hardware, or repository states.
- **Keep data local** — tasks and results sync through your OneDrive; AgentFleet runs no hosted backend.
- **Work behind firewalls** — no inbound ports, tunnels, SSH bastions, queues, or control-plane credentials.
- **Operate like a personal CI lab** — submit tasks from CLI or browser and watch every enrolled node report back.
If this is the kind of distributed-agent workflow you want to see mature, please **star**, **fork**, and share your use cases.
## Quick start
## 60-second start
**One command to start.** Run this on every machine you want in the fleet:
Run this on every machine you want in the fleet:
```bash

@@ -55,4 +53,9 @@ npx -y @daomar/agentfleet run

Then submit a task from any one machine:
That's it. AgentFleet will:
1. Automatically detect your OneDrive and initialize the workspace (first run only).
2. Register the `agentfleet` shortcut command so you can use it directly next time.
3. Start watching for tasks.
Then submit a task from any machine:
```bash

@@ -71,7 +74,33 @@ agentfleet submit \

agentfleet status
agentfleet status task-20260402-abc123
```
Prefer a browser? Open **[agentfleet.daomar.dev](https://agentfleet.daomar.dev/)**, sign in with the Microsoft account that owns the OneDrive, submit tasks, monitor nodes, and inspect results.
Prefer a browser? Open **[agentfleet.daomar.dev/web/](https://agentfleet.daomar.dev/web/)**, sign in with the Microsoft account that owns the OneDrive, submit tasks, monitor nodes, and inspect results.
## Agent compatibility
AgentFleet works with any command-line tool that accepts a prompt. The default agent is **Claude Code**:
| Agent | Command template | Notes |
|---|---|---|
| Claude Code | `claude -p {prompt}` | Default, works out of the box |
| GitHub Copilot CLI | `gh copilot suggest "{prompt}"` | Requires `gh` CLI with Copilot extension |
| Cursor | `cursor --prompt "{prompt}"` | Requires Cursor CLI |
| Aider | `aider --message "{prompt}"` | Requires aider installed |
| Custom | Any command with `{prompt}` | Set via `defaultAgentCommand` in config |
Override per-task with `--agent`:
```bash
agentfleet submit --prompt "Fix the login bug" --agent 'aider --message "{prompt}"'
```
Or change the default globally in `~/.agentfleet/config.json`:
```json
{
"defaultAgent": "claude-code",
"defaultAgentCommand": "claude -p {prompt}"
}
```
## Concrete workflows

@@ -130,6 +159,6 @@

1. AgentFleet detects OneDrive and creates stable local paths under `~/.agentfleet/`.
1. `agentfleet run` detects OneDrive and initializes the shared workspace (auto-init on first run).
2. `tasks/` and `output/` are backed by the synced OneDrive workspace.
3. `agentfleet submit` writes an immutable task file.
4. Each `agentfleet run` process sees new tasks and executes them locally.
4. Each `agentfleet run` process sees new tasks and executes them with the local coding agent.
5. Results are written with hostname prefixes, so multiple machines never overwrite each other.

@@ -151,14 +180,13 @@

<details>
<summary><strong>Install and run</strong></summary>
<summary><strong>Run</strong></summary>
```bash
# Recommended: run without installing globally
# Start watching for tasks (auto-initializes on first run)
npx -y @daomar/agentfleet run
# Or install globally
npm install -g @daomar/agentfleet
# After first run, the shortcut is available:
agentfleet run
```
Useful run options:
Options:

@@ -189,2 +217,13 @@ - `--poll-interval <seconds>` — polling interval, default `10`

<details>
<summary><strong>Status and stop</strong></summary>
```bash
agentfleet status # overview of all tasks
agentfleet status <task-id> # details for a specific task
agentfleet stop # stop the running instance
```
</details>
<details>
<summary><strong>Daemon and auto-start</strong></summary>

@@ -194,4 +233,4 @@

agentfleet run --daemon
npx -y @daomar/agentfleet install # install auto-start
npx -y @daomar/agentfleet uninstall # remove auto-start
agentfleet install # install auto-start on login
agentfleet uninstall # remove auto-start
agentfleet stop

@@ -206,2 +245,16 @@ ```

<details>
<summary><strong>Initialize (advanced)</strong></summary>
Normally `run` and `submit` auto-initialize with OneDrive. For manual control:
```bash
agentfleet init # default: OneDrive
agentfleet init --backend onedrive-business # OneDrive for Business
agentfleet init --backend local-folder --path /shared/fleet # local folder
agentfleet init --force # reinitialize
```
</details>
<details>
<summary><strong>Workspace layout</strong></summary>

@@ -229,3 +282,3 @@

The hosted Pages app at **[agentfleet.daomar.dev](https://agentfleet.daomar.dev/)** is a PWA for:
The hosted Pages app at **[agentfleet.daomar.dev/web/](https://agentfleet.daomar.dev/web/)** is a PWA for:

@@ -284,3 +337,3 @@ - submitting tasks from desktop or mobile;

- [npm](https://www.npmjs.com/package/@daomar/agentfleet) — package install
- [Web dashboard](https://agentfleet.daomar.dev/) — submit and monitor tasks
- [Web dashboard](https://agentfleet.daomar.dev/web/) — submit and monitor tasks
- [About](https://agentfleet.daomar.dev/about.html) — architecture overview

@@ -287,0 +340,0 @@ - [Contributing](CONTRIBUTING.md) — development setup

@@ -8,7 +8,7 @@ <p align="center">

<p align="center">
<strong>把你自己的笔记本、台式机、实验室机器变成一个分布式编码智能体集群。</strong>
<strong>在你的所有设备上编排 AI 编码智能体。</strong>
</p>
<p align="center">
在多台设备上并行运行同一个提示词 — 不需要服务器、不需要 SSH 组网、不需要控制平面。AgentFleet 直接使用你已有的 OneDrive 同步来协调任务。
提交一次提示词,让每台设备使用自己的本地 agent 独立执行,然后横向比较结果 — 不需要服务器、不需要 SSH 组网、不需要控制平面。
</p>

@@ -25,3 +25,3 @@

<a href="README.md">English</a> | <a href="README.zh-CN.md">简体中文</a> ·
<a href="https://agentfleet.daomar.dev/">在线仪表板</a> ·
<a href="https://agentfleet.daomar.dev/web/">在线仪表板</a> ·
<a href="https://agentfleet.daomar.dev/donate.html">支持项目</a>

@@ -32,20 +32,18 @@ </p>

## 为什么值得 Star?
## 为 Agent 开发者而生
很多有经验的开发者现在并不缺算力,而是缺少一种轻量的编排方式:工作笔记本、台式机、迷你主机、家用服务器,也许还装着不同能力的 agent CLI。AgentFleet 的目标就是把这些机器变成一个共享任务网络,让它们同时处理同一个任务,并返回可比较的结果。
AgentFleet 专为使用 AI 编码智能体的开发者设计 — Claude Code、GitHub Copilot CLI、Cursor、Aider,或任何接受提示词并生成代码的命令行工具。如果你有不止一台机器,AgentFleet 可以让它们并行处理同一个任务,并返回独立的结果。
你可以用它来:
- **横向比较不同智能体** — 用 Claude Code、Copilot CLI、Cursor 或任意本地命令模板执行同一个安全审查提示词。
- **横向比较不同智能体** — 在一台机器上用 Claude Code、另一台上用 Copilot CLI 执行同一个提示词,然后比较输出质量。
- **并行探索复杂问题** — 让多台机器同时检查不同 clone、分支、配置或方案。
- **让数据留在本地环境** — 任务和结果只通过你的 OneDrive 同步;AgentFleet 不运行托管后端。
- **基准测试提示词** — 在不同模型、工具、硬件和仓库状态下评估同一个提示词。
- **让数据留在本地** — 任务和结果只通过你的 OneDrive 同步;AgentFleet 不运行托管后端。
- **适合防火墙内环境** — 不需要入站端口、隧道、SSH 堡垒机、队列或控制平面凭据。
- **像个人 CI 实验室一样工作** — 通过 CLI 或浏览器提交任务,观察每个节点回传结果。
如果你也希望分布式智能体工作流变得更成熟,欢迎 **Star**、**Fork**,并分享你的真实使用场景。
## 快速开始
## 60 秒上手
**一条命令启动。** 在每台要加入集群的机器上运行:
在每台要加入集群的机器上运行:
```bash

@@ -55,2 +53,7 @@ npx -y @daomar/agentfleet run

就这样。AgentFleet 会自动:
1. 检测你的 OneDrive 并初始化工作区(仅首次运行)。
2. 注册 `agentfleet` 快捷命令,之后可以直接使用。
3. 开始监听任务。
然后从任意一台机器提交任务:

@@ -71,7 +74,33 @@

agentfleet status
agentfleet status task-20260402-abc123
```
更喜欢浏览器?打开 **[agentfleet.daomar.dev](https://agentfleet.daomar.dev/)**,用拥有该 OneDrive 的 Microsoft 账户登录,即可提交任务、监控节点、查看结果。
更喜欢浏览器?打开 **[agentfleet.daomar.dev/web/](https://agentfleet.daomar.dev/web/)**,用拥有该 OneDrive 的 Microsoft 账户登录,即可提交任务、监控节点、查看结果。
## 智能体兼容性
AgentFleet 可以与任何接受提示词的命令行工具配合使用。默认智能体为 **Claude Code**:
| 智能体 | 命令模板 | 说明 |
|---|---|---|
| Claude Code | `claude -p {prompt}` | 默认,开箱即用 |
| GitHub Copilot CLI | `gh copilot suggest "{prompt}"` | 需要安装 `gh` CLI + Copilot 扩展 |
| Cursor | `cursor --prompt "{prompt}"` | 需要 Cursor CLI |
| Aider | `aider --message "{prompt}"` | 需要安装 aider |
| 自定义 | 任何包含 `{prompt}` 的命令 | 通过配置 `defaultAgentCommand` |
单次任务覆盖 agent:
```bash
agentfleet submit --prompt "修复登录 bug" --agent 'aider --message "{prompt}"'
```
或在 `~/.agentfleet/config.json` 中更改全局默认:
```json
{
"defaultAgent": "claude-code",
"defaultAgentCommand": "claude -p {prompt}"
}
```
## 具体使用案例

@@ -130,6 +159,6 @@

1. AgentFleet 自动检测 OneDrive,并在 `~/.agentfleet/` 下创建稳定本地路径。
1. `agentfleet run` 检测 OneDrive 并初始化共享工作区(首次运行自动完成)。
2. `tasks/` 和 `output/` 由同步的 OneDrive 工作区承载。
3. `agentfleet submit` 写入不可变任务文件。
4. 每个 `agentfleet run` 进程发现新任务并在本机执行。
4. 每个 `agentfleet run` 进程发现新任务并使用本地编码智能体执行。
5. 结果文件带主机名前缀,多台机器不会互相覆盖。

@@ -151,14 +180,13 @@

<details>
<summary><strong>安装与运行</strong></summary>
<summary><strong>运行</strong></summary>
```bash
# 推荐:无需全局安装
# 启动任务监听(首次运行自动初始化)
npx -y @daomar/agentfleet run
# 或全局安装
npm install -g @daomar/agentfleet
# 首次运行后,快捷命令即可使用:
agentfleet run
```
常用运行选项:
选项:

@@ -189,2 +217,13 @@ - `--poll-interval <seconds>` — 轮询间隔,默认 `10`

<details>
<summary><strong>状态与停止</strong></summary>
```bash
agentfleet status # 所有任务概览
agentfleet status <task-id> # 查看指定任务详情
agentfleet stop # 停止运行中的实例
```
</details>
<details>
<summary><strong>守护进程与自启动</strong></summary>

@@ -194,4 +233,4 @@

agentfleet run --daemon
npx -y @daomar/agentfleet install # 安装自启动
npx -y @daomar/agentfleet uninstall # 移除自启动
agentfleet install # 安装登录自启动
agentfleet uninstall # 移除自启动
agentfleet stop

@@ -206,2 +245,16 @@ ```

<details>
<summary><strong>初始化(高级)</strong></summary>
通常 `run` 和 `submit` 会使用 OneDrive 自动初始化。如需手动控制:
```bash
agentfleet init # 默认使用 OneDrive
agentfleet init --backend onedrive-business # OneDrive 企业版
agentfleet init --backend local-folder --path /shared/fleet # 本地文件夹
agentfleet init --force # 重新初始化
```
</details>
<details>
<summary><strong>工作区结构</strong></summary>

@@ -229,3 +282,3 @@

托管在 **[agentfleet.daomar.dev](https://agentfleet.daomar.dev/)** 的 GitHub Pages 应用是一个 PWA,可用于:
托管在 **[agentfleet.daomar.dev/web/](https://agentfleet.daomar.dev/web/)** 的 GitHub Pages 应用是一个 PWA,可用于:

@@ -284,3 +337,3 @@ - 从桌面或移动端提交任务;

- [npm](https://www.npmjs.com/package/@daomar/agentfleet) — npm 安装包
- [Web 仪表板](https://agentfleet.daomar.dev/) — 提交和监控任务
- [Web 仪表板](https://agentfleet.daomar.dev/web/) — 提交和监控任务
- [关于](https://agentfleet.daomar.dev/about.html) — 架构概览

@@ -287,0 +340,0 @@ - [贡献指南](CONTRIBUTING.md) — 开发环境