flowviant 0.79.0 → 0.80.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.mjs +2 -2
- package/bin/lib/config.mjs +22 -1
- package/bin/lib/fleet.mjs +1 -1
- package/bin/lib/vault.mjs +1 -1
- package/package.json +1 -1
package/bin/cli.mjs
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
* running?", which otherwise ends in a pid hunt through `ps`.
|
|
27
27
|
*
|
|
28
28
|
* The daemon: install ONCE with a machine credential, then work entirely from
|
|
29
|
-
* Flowviant. It polls GET /api/
|
|
29
|
+
* Flowviant. It polls GET /api/fleet/agents, and the roster hands it the
|
|
30
30
|
* project's SESSIONS — the Workbench's tabs. Each session gets one persistent
|
|
31
31
|
* git worktree on its own `session/<id>` branch, held across turns (never reset
|
|
32
32
|
* to base: the branch outlives the tab). A turn spawns the session's CLI with a
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
*
|
|
45
45
|
* Env:
|
|
46
46
|
* FLOWVIANT_FLEET the machine credential (or use `flowviant login`).
|
|
47
|
-
* FLOWVIANT_API_URL default https://api.flowviant.com/api
|
|
47
|
+
* FLOWVIANT_API_URL default https://api.flowviant.com/api
|
|
48
48
|
* FLOWVIANT_MCP_URL default <API_URL>/mcp
|
|
49
49
|
* FLOWVIANT_FLEET_URL default <API_URL>/fleet/agents
|
|
50
50
|
* RECONCILE_SECONDS roster poll cadence (default 10)
|
package/bin/lib/config.mjs
CHANGED
|
@@ -41,7 +41,28 @@ function argFlag(name) {
|
|
|
41
41
|
return i >= 0 ? process.argv[i + 1] : undefined;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
|
|
44
|
+
/**
|
|
45
|
+
* THE SERVER'S API ROOT.
|
|
46
|
+
*
|
|
47
|
+
* `/api`, not `/api/v2`. The server collapsed its two prefixes into one
|
|
48
|
+
* namespace on 2026-09-08 — they had held DISJOINT resources and neither was
|
|
49
|
+
* ever a version of the other, so there was nothing to choose between.
|
|
50
|
+
*
|
|
51
|
+
* ── DEPLOY ORDER IS NOW LOAD-BEARING FOR THIS LINE ──
|
|
52
|
+
*
|
|
53
|
+
* A daemon on this version calls `/api/fleet/agents`. An older SERVER does not
|
|
54
|
+
* serve that path, so publishing this release before the server that answers it
|
|
55
|
+
* 404s the roster poll for anyone who updates. The order in the app repo's
|
|
56
|
+
* ARCHITECTURE.md already says it and now it matters: deploy `flowviant-api`
|
|
57
|
+
* FIRST, publish this SECOND. The same applies to a rollback — rolling the
|
|
58
|
+
* server back past that merge strands every daemon at this version or newer.
|
|
59
|
+
*
|
|
60
|
+
* The other direction is safe and needs nothing: the server keeps `/api/v2` as
|
|
61
|
+
* an alias onto the same router precisely because every daemon published before
|
|
62
|
+
* this one has that string baked in and cannot be upgraded by a deploy. That
|
|
63
|
+
* alias retires when the app's `DAEMON_MIN_VERSION` clears this release.
|
|
64
|
+
*/
|
|
65
|
+
const API_BASE = process.env.FLOWVIANT_API_URL || 'https://api.flowviant.com/api';
|
|
45
66
|
export const MCP_URL = process.env.FLOWVIANT_MCP_URL || `${API_BASE}/mcp`;
|
|
46
67
|
export const FLEET_URL = process.env.FLOWVIANT_FLEET_URL || `${API_BASE}/fleet/agents`;
|
|
47
68
|
// Push channel: the daemon holds this WebSocket open and the server nudges it
|
package/bin/lib/fleet.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Fleet daemon. Install ONCE with a fleet credential; manage everything from
|
|
3
|
-
* Flowviant. The daemon polls GET /api/
|
|
3
|
+
* Flowviant. The daemon polls GET /api/fleet/agents, reconciles one persistent
|
|
4
4
|
* git worktree + worker loop per roster agent, rotates each worker's short-lived
|
|
5
5
|
* MCP token, and only spawns Claude when the server says an agent has work.
|
|
6
6
|
*/
|
package/bin/lib/vault.mjs
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* private `git init` so every pass is versioned locally for free — the user's
|
|
7
7
|
* repository is never touched.
|
|
8
8
|
*
|
|
9
|
-
* Sync protocol (POST /api/
|
|
9
|
+
* Sync protocol (POST /api/fleet/wiki-vault, fleet-token auth): only files
|
|
10
10
|
* whose sha256 changed since the last successful sync are uploaded, chunked;
|
|
11
11
|
* the LAST request carries the finalize.manifest of a completed full sweep so
|
|
12
12
|
* the server prunes pages the sweep no longer has. The last-synced hashes live
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "flowviant",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.80.0",
|
|
4
4
|
"description": "Run your own coding CLIs as build agents for Flowviant — Claude Code, Codex or Antigravity, on your own credentials. Holds your sessions, keeps a worktree per tab, and ships branches on your word.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|