From f2b1c1563018e8457c9e31d6066e80396bf6ea17 Mon Sep 17 00:00:00 2001 From: Kishore Kumar Date: Sun, 20 Sep 2026 21:31:09 +0530 Subject: [PATCH 1/9] docs(cli): the client runs on Bun, and two flags move onto login MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The command-line client's parser changed, and two of its promises to a reader changed with it. `install.mdx` and `quickstart.mdx` name Bun 1.4 as the runtime. npm still installs the package and Bun runs it, so the install command is unchanged; the troubleshooting section says what a missing `bun` looks like, because that is the failure a reader will actually meet. `--no-open` and `--no-input` are read by `agentsfleet login` alone, so they leave the global options table for a Login options section on the command reference. `--force` and `--token-name` join them there; both were undocumented. `flags.mdx` points at the new section rather than leaving a hole where the rows were. The changelog entry leads with the runtime, because that is the line a reader acts on before anything else works, and separates the two breaking changes from the fixes. make lint: documentation check passed, 22 tests OK. The openapi drift failure on `GET /v1/users/me` is present on main with this branch stashed and is not from these pages. ๐Ÿ“ CHANGELOG: 8 bullets ยท no marketing words ยท load-bearing facts kept ยท history append-only Co-Authored-By: Claude Opus 5 (1M context) --- changelog.mdx | 24 ++++++++++++++++++++++++ cli/agentsfleet.mdx | 13 +++++++++++-- cli/flags.mdx | 6 ++++-- cli/install.mdx | 4 ++-- quickstart.mdx | 2 +- 5 files changed, 42 insertions(+), 7 deletions(-) diff --git a/changelog.mdx b/changelog.mdx index c547d3a..4d560a0 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -7,6 +7,30 @@ description: "Stay up to date with the latest agentsfleet product updates, new f agentsfleet is in **stealth-mode testing** and pre-production. APIs and agent behavior may change between releases without long deprecation windows. Email [agentsfleet@agentmail.to](mailto:agentsfleet@agentmail.to) if you want a hand calibrating an agent or to join as a design partner. + + ## The command-line client runs on Bun + + `agentsfleet` now runs on the Bun runtime. Install Bun 1.4 or later before you install the client. `npm install --global @agentsfleet/cli` still installs the package; Bun runs it. If `bun` is not on your `PATH`, the command reports that it was not found. + + ## Breaking changes + + - **`--no-open` and `--no-input` belong to `login`** โ€” write them after the command name, as `agentsfleet login --no-open`. Written before it, as `agentsfleet --no-open login`, they are now rejected as unknown flags. `--api` and `--json` are unchanged and still work in either position. + - **Bun 1.4 or later is required** โ€” the client no longer runs on Node.js alone. + + ## What's new + + - **`agentsfleet help ` reads the same as `agentsfleet --help`** โ€” both print the same body, for a command or a group. + - **An unrecognised command names a next step** โ€” a near match is suggested, and a command matching nothing points at the command list for the group you were in, not the root. + - **Help fits an eighty-column terminal** โ€” every line wraps at eighty characters, and options advertise the value they take, such as `--limit ` and `--api `. + + ## Bug fixes + + - **A mistyped flag reports the flag, not your sign-in** โ€” `agentsfleet list --limit 0` while signed out now says `must be โ‰ฅ 1` and exits `4`. It used to ask you to sign in first, and the flag was still wrong when you came back. + - **`agentsfleet doctor` exits non-zero when a check fails** โ€” it reported success while naming an unreachable server. + - **A refused value names the bound it crossed** โ€” `must be โ‰ฅ 1`, `must be โ‰ค 200`, or `must be an integer`, instead of one sentence covering all three. + + + ## A reviewer fleet reviews without asking you first diff --git a/cli/agentsfleet.mdx b/cli/agentsfleet.mdx index eeae9b5..eb0506e 100644 --- a/cli/agentsfleet.mdx +++ b/cli/agentsfleet.mdx @@ -54,10 +54,19 @@ Commands: | `-v`, `--version` | Prints the client version and exits. | `false` | Boolean | | `--api ` | Sends requests to this API URL. | `https://api.agentsfleet.net` | URL beginning with `http://` or `https://` | | `--json` | Prints JSON when the command supports it. | `false` | Boolean | -| `--no-input` | Returns an error instead of asking a question. | `false` | Boolean | -| `--no-open` | Prints the login URL instead of opening a browser. | `false` | Boolean | | `-h`, `--help` | Prints help and exits. | `false` | Boolean | +### Login options + +Write these after `login`. Only `agentsfleet login` reads them. + +| Option | Effect | Default | Unit or range | +|---|---|---|---| +| `--no-open` | Prints the login URL instead of opening a browser. | `false` | Boolean | +| `--no-input` | Returns an error instead of asking a question. | `false` | Boolean | +| `--force` | Signs in again even when this computer already holds a credential. | `false` | Boolean | +| `--token-name From 0e0f5906fa4db993fc5b72c43d629aaeb6a0a08f Mon Sep 17 00:00:00 2001 From: Kishore Kumar Date: Mon, 21 Sep 2026 08:04:45 +0530 Subject: [PATCH 3/9] docs(cli): --workspace-id becomes --workspace MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The workspace override had two spellings. `list` and `workspace show` took `--workspace-id`; `connector list`, `memory list` and `schedule list` took `--workspace`. One survives, and it is the one matching `--fleet` โ€” the only spelling the fleet id flag has ever had. Filed under Breaking changes rather than Bug fixes because `list --workspace-id ` worked and now returns an unknown-flag refusal. The flag was never documented on these pages, so nothing else here changes; the bullet exists so a reader who used it learns why it stopped. Co-Authored-By: Claude Opus 5 (1M context) --- changelog.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/changelog.mdx b/changelog.mdx index 67aa78b..342a1a2 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -16,6 +16,7 @@ description: "Stay up to date with the latest agentsfleet product updates, new f - **`--no-open` and `--no-input` belong to `login`** โ€” write them after the command name, as `agentsfleet login --no-open`. Written before it, as `agentsfleet --no-open login`, they are now rejected as unknown flags. `--api` and `--json` are unchanged and still work in either position. - **Bun 1.4 or later is required** โ€” the client no longer runs on Node.js alone. + - **`--workspace-id` is now `--workspace`** โ€” `agentsfleet list` and `agentsfleet workspace show` took `--workspace-id`; every other command that scopes to a workspace took `--workspace`. One spelling now, matching `--fleet`. `agentsfleet list --workspace-id ` is rejected as an unknown flag; write `agentsfleet list --workspace `. ## What's new From 3f1e3bb103c9157422d544797d6ea286fda103a8 Mon Sep 17 00:00:00 2001 From: Kishore Kumar Date: Mon, 21 Sep 2026 09:42:52 +0530 Subject: [PATCH 4/9] docs(changelog): secret create and login are sent again after a dropped socket The command-line client's replay gate now lets a write through after a transport failure when its caller declared the write replay-safe. Two commands claim it; the entry names them, says why a repeat cannot take effect twice, and names the two that still stop at one attempt. Co-Authored-By: Claude Fable 5.1 --- changelog.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/changelog.mdx b/changelog.mdx index 342a1a2..3e52fd7 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -30,6 +30,7 @@ description: "Stay up to date with the latest agentsfleet product updates, new f - **`agentsfleet doctor` exits non-zero when a check fails** โ€” it reported success while naming an unreachable server. - **A refused value names the bound it crossed, the flag it came from, and the value you passed** โ€” `agentsfleet list --limit 0` reports `invalid --limit: must be โ‰ฅ 1 (got "0")`. Flags and arguments read the same way, so a wrong value buried in a long command is visible without re-reading the line you typed. - **`--json` prints the error envelope and nothing else** โ€” a rejected invocation used to print the help page above it, so reading the output as JSON failed on the first character. `agentsfleet --help --json` still prints help. + - **`agentsfleet secret create` and `agentsfleet login` survive a dropped connection** โ€” a socket lost mid-request used to fail either command with `cannot reach agentsfleet API`, because a write the server may already hold is never sent twice. These two are the exception and are sent again: a repeat `secret create` is answered `already_exists`, and a repeat session request opens a session nobody approves, so neither can take effect twice. `api-key create` and `steer` still stop at one attempt. From 0958d673bb866580750037a1df255196778a3bb0 Mon Sep 17 00:00:00 2001 From: Kishore Kumar Date: Mon, 21 Sep 2026 10:14:10 +0530 Subject: [PATCH 5/9] docs(changelog): name the accepted edge on a retried secret create A connection lost while the reply is read is retried and answered already_exists; the entry says so, and that the value sent is the one stored, so an operator does not follow the printed update hint. Co-Authored-By: Claude Fable 5.1 --- changelog.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelog.mdx b/changelog.mdx index 3e52fd7..ccdd060 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -30,7 +30,7 @@ description: "Stay up to date with the latest agentsfleet product updates, new f - **`agentsfleet doctor` exits non-zero when a check fails** โ€” it reported success while naming an unreachable server. - **A refused value names the bound it crossed, the flag it came from, and the value you passed** โ€” `agentsfleet list --limit 0` reports `invalid --limit: must be โ‰ฅ 1 (got "0")`. Flags and arguments read the same way, so a wrong value buried in a long command is visible without re-reading the line you typed. - **`--json` prints the error envelope and nothing else** โ€” a rejected invocation used to print the help page above it, so reading the output as JSON failed on the first character. `agentsfleet --help --json` still prints help. - - **`agentsfleet secret create` and `agentsfleet login` survive a dropped connection** โ€” a socket lost mid-request used to fail either command with `cannot reach agentsfleet API`, because a write the server may already hold is never sent twice. These two are the exception and are sent again: a repeat `secret create` is answered `already_exists`, and a repeat session request opens a session nobody approves, so neither can take effect twice. `api-key create` and `steer` still stop at one attempt. + - **`agentsfleet secret create` and `agentsfleet login` survive a dropped connection** โ€” a socket lost mid-request used to fail either command with `cannot reach agentsfleet API`, because a write the server may already hold is never sent twice. These two are the exception and are sent again: a repeat `secret create` is answered `already_exists`, and a repeat session request opens a session nobody approves, so neither can take effect twice. `api-key create` and `steer` still stop at one attempt. One edge is known and accepted for now: if the connection drops while the reply to `secret create` is being read, the retry is answered `already_exists` and the command reports it that way โ€” the vault holds the value you sent, and no `secret update` is needed. From 13737ca726cda9e3b6a9a0c8aab301466f54bc56 Mon Sep 17 00:00:00 2001 From: Kishore Kumar Date: Mon, 21 Sep 2026 10:30:22 +0530 Subject: [PATCH 6/9] docs(changelog): the retry is global, and its price is named A dropped socket is now retried for every command, not two. The entry says what that buys, what a server answer still refuses, and what a retry can cost: a second write when the drop lands after the server accepted the first, with the one check an operator can run. Co-Authored-By: Claude Opus 5 (1M context) --- changelog.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/changelog.mdx b/changelog.mdx index ccdd060..582904e 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -30,7 +30,8 @@ description: "Stay up to date with the latest agentsfleet product updates, new f - **`agentsfleet doctor` exits non-zero when a check fails** โ€” it reported success while naming an unreachable server. - **A refused value names the bound it crossed, the flag it came from, and the value you passed** โ€” `agentsfleet list --limit 0` reports `invalid --limit: must be โ‰ฅ 1 (got "0")`. Flags and arguments read the same way, so a wrong value buried in a long command is visible without re-reading the line you typed. - **`--json` prints the error envelope and nothing else** โ€” a rejected invocation used to print the help page above it, so reading the output as JSON failed on the first character. `agentsfleet --help --json` still prints help. - - **`agentsfleet secret create` and `agentsfleet login` survive a dropped connection** โ€” a socket lost mid-request used to fail either command with `cannot reach agentsfleet API`, because a write the server may already hold is never sent twice. These two are the exception and are sent again: a repeat `secret create` is answered `already_exists`, and a repeat session request opens a session nobody approves, so neither can take effect twice. `api-key create` and `steer` still stop at one attempt. One edge is known and accepted for now: if the connection drops while the reply to `secret create` is being read, the retry is answered `already_exists` and the command reports it that way โ€” the vault holds the value you sent, and no `secret update` is needed. + - **A dropped connection is retried, on every command** โ€” a socket lost mid-request used to fail the command outright with `cannot reach agentsfleet API`. It is now sent again, up to three attempts with a growing pause, because a reply you never saw is usually a request that never ran. A server that answers โ€” a `503`, a rate limit, a timeout the client declared โ€” is unchanged: those still stop at one attempt for anything that writes. + - **What a retry can cost you, stated plainly** โ€” if the connection drops *after* the server accepted the write, the second attempt is a second write. `agentsfleet secret create` reports `already exists` for the value it just stored (the vault holds what you sent; no `secret update` is needed), and `agentsfleet api-key create` can leave a key you never see the secret for โ€” check `agentsfleet api-key list` if a create is interrupted. A rejected certificate or an unusable URL is never retried, and now says so in its own words instead of suggesting you check your network. From 0d29601b2c94c9daf32bcd4319391e84a50a9686 Mon Sep 17 00:00:00 2001 From: Kishore Kumar Date: Tue, 22 Sep 2026 14:42:42 +0530 Subject: [PATCH 7/9] docs(cli): npm installs the package, Bun runs it The install prerequisites named Bun alone while the only install command invokes npm. Name both, on the install page and in the quickstart. Narrow the --workspace-id migration note to the commands that actually offered a workspace override: list, workspace show, and the schedule subcommands. Co-Authored-By: Claude Opus 5 (1M context) --- changelog.mdx | 2 +- cli/install.mdx | 2 ++ quickstart.mdx | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/changelog.mdx b/changelog.mdx index 582904e..04984e6 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -16,7 +16,7 @@ description: "Stay up to date with the latest agentsfleet product updates, new f - **`--no-open` and `--no-input` belong to `login`** โ€” write them after the command name, as `agentsfleet login --no-open`. Written before it, as `agentsfleet --no-open login`, they are now rejected as unknown flags. `--api` and `--json` are unchanged and still work in either position. - **Bun 1.4 or later is required** โ€” the client no longer runs on Node.js alone. - - **`--workspace-id` is now `--workspace`** โ€” `agentsfleet list` and `agentsfleet workspace show` took `--workspace-id`; every other command that scopes to a workspace took `--workspace`. One spelling now, matching `--fleet`. `agentsfleet list --workspace-id ` is rejected as an unknown flag; write `agentsfleet list --workspace `. + - **`--workspace-id` is now `--workspace`** โ€” `agentsfleet list` and `agentsfleet workspace show` took `--workspace-id`, while the `agentsfleet schedule` subcommands took `--workspace`. One spelling now, matching `--fleet`. `agentsfleet list --workspace-id ` is rejected as an unknown flag; write `agentsfleet list --workspace `. ## What's new diff --git a/cli/install.mdx b/cli/install.mdx index 07c39c8..acea4d5 100644 --- a/cli/install.mdx +++ b/cli/install.mdx @@ -17,6 +17,8 @@ This installs the `agentsfleet` command-line client. You can then manage fleets Install Bun 1.4 or later. The `agentsfleet` command runs on Bun. +You also need `npm`, which ships with Node.js, because the package installs from npm. + ## Steps 1. Install the package from npm. diff --git a/quickstart.mdx b/quickstart.mdx index 43343f6..c066057 100644 --- a/quickstart.mdx +++ b/quickstart.mdx @@ -19,7 +19,7 @@ If you need access, [join the waitlist](https://accounts.agentsfleet.net/waitlis Open the [dashboard](https://app.agentsfleet.net) to manage your workspace. For your profile and sign-in security, choose **Manage account** in the account menu. You can also open [account settings](https://app.agentsfleet.net/settings/account) directly. -You need Bun 1.4 or later. You also need an `agentsfleet` account and a GitHub repository that you can manage. +You need Bun 1.4 or later to run the client, and `npm`, which ships with Node.js, to install it. You also need an `agentsfleet` account and a GitHub repository that you can manage. Create a GitHub token that can read the repository and post comments. Keep the token ready for step 4. From 2b43e52c9c08b96f03d4c38b2c75ba45e96f27ad Mon Sep 17 00:00:00 2001 From: Kishore Kumar Date: Tue, 22 Sep 2026 14:43:55 +0530 Subject: [PATCH 8/9] docs(cli): bun installs the client Bun is the only prerequisite, so the install and uninstall commands are Bun's. The npm prerequisite added in the previous commit is removed, and the PATH note points at ~/.bun/bin. Co-Authored-By: Claude Opus 5 (1M context) --- changelog.mdx | 2 +- cli/install.mdx | 17 ++++++++--------- quickstart.mdx | 7 ++++--- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/changelog.mdx b/changelog.mdx index 04984e6..6345985 100644 --- a/changelog.mdx +++ b/changelog.mdx @@ -10,7 +10,7 @@ description: "Stay up to date with the latest agentsfleet product updates, new f ## The command-line client runs on Bun - `agentsfleet` now runs on the Bun runtime. Install Bun 1.4 or later before you install the client. `npm install --global @agentsfleet/cli` still installs the package; Bun runs it. If `bun` is not on your `PATH`, the command reports that it was not found. + `agentsfleet` now runs on the Bun runtime. Install Bun 1.4 or later before you install the client. Install the client with `bun install --global @agentsfleet/cli`. If `bun` is not on your `PATH`, the command reports that it was not found. ## Breaking changes diff --git a/cli/install.mdx b/cli/install.mdx index acea4d5..f4dfe96 100644 --- a/cli/install.mdx +++ b/cli/install.mdx @@ -17,18 +17,17 @@ This installs the `agentsfleet` command-line client. You can then manage fleets Install Bun 1.4 or later. The `agentsfleet` command runs on Bun. -You also need `npm`, which ships with Node.js, because the package installs from npm. - ## Steps -1. Install the package from npm. +1. Install the package. ```bash - npm install --global @agentsfleet/cli + bun install --global @agentsfleet/cli ``` ```text - added packages in + installed @agentsfleet/cli with binaries: + - agentsfleet ``` 2. Show the client version. @@ -57,20 +56,20 @@ The command checks the API, your selected workspace, and the workspace binding. ## Common problems -If `agentsfleet` is not found, reopen the terminal. Also check that the npm global binary directory is in your `PATH`. +If `agentsfleet` is not found, reopen the terminal. Also check that Bun's global binary directory, `~/.bun/bin`, is in your `PATH`. -If the command reports that `bun` was not found, install Bun 1.4 or later and reopen the terminal. `npm` installs the package, and Bun runs it. +If the command reports that `bun` was not found, install Bun 1.4 or later and reopen the terminal. ## Remove or undo Removing the client does not delete remote fleets or workspace data. ```bash -npm uninstall --global @agentsfleet/cli +bun remove --global @agentsfleet/cli ``` ```text -removed packages in +removed @agentsfleet/cli ``` ## Related pages diff --git a/quickstart.mdx b/quickstart.mdx index c066057..58c756d 100644 --- a/quickstart.mdx +++ b/quickstart.mdx @@ -19,7 +19,7 @@ If you need access, [join the waitlist](https://accounts.agentsfleet.net/waitlis Open the [dashboard](https://app.agentsfleet.net) to manage your workspace. For your profile and sign-in security, choose **Manage account** in the account menu. You can also open [account settings](https://app.agentsfleet.net/settings/account) directly. -You need Bun 1.4 or later to run the client, and `npm`, which ships with Node.js, to install it. You also need an `agentsfleet` account and a GitHub repository that you can manage. +You need Bun 1.4 or later. You also need an `agentsfleet` account and a GitHub repository that you can manage. Create a GitHub token that can read the repository and post comments. Keep the token ready for step 4. @@ -28,11 +28,12 @@ Create a GitHub token that can read the repository and post comments. Keep the t 1. Install the `agentsfleet` command-line interface. ```bash - npm install --global @agentsfleet/cli + bun install --global @agentsfleet/cli ``` ```text - added packages in + installed @agentsfleet/cli with binaries: + - agentsfleet ``` 2. Check the installed version. From f9b14ef049a2d1ad37e316aafc8223c1f47db626 Mon Sep 17 00:00:00 2001 From: Kishore Kumar Date: Tue, 22 Sep 2026 14:51:00 +0530 Subject: [PATCH 9/9] docs(api): nav covers whoami and the workspace library entries The OpenAPI drift check failed on three operations the navigation never listed: GET /v1/users/me, and the list and remove calls for the library entries a workspace onboarded. Co-Authored-By: Claude Opus 5 (1M context) --- docs.json | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs.json b/docs.json index 91f4b4d..c9ac9d8 100644 --- a/docs.json +++ b/docs.json @@ -146,6 +146,12 @@ "DELETE /v1/api-keys/{id}" ] }, + { + "group": "Users", + "pages": [ + "GET /v1/users/me" + ] + }, { "group": "Tenants", "pages": [ @@ -272,8 +278,10 @@ "GET /v1/workspaces/{workspace_id}/fleet-libraries", "POST /v1/admin/fleet-libraries", "POST /v1/workspaces/{workspace_id}/fleet-libraries", + "GET /v1/workspaces/{workspace_id}/library-entries", "PATCH /v1/admin/fleet-libraries/{id}", - "DELETE /v1/admin/fleet-libraries/{id}" + "DELETE /v1/admin/fleet-libraries/{id}", + "DELETE /v1/workspaces/{workspace_id}/library-entries/{entry_id}" ] }, {