agentroam 0.2.0-preview.20 → 0.2.0-preview.22
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/README.md +4 -4
- package/bin/node-preflight.mjs +1 -1
- package/dist/cloudflared/bundled-asset.js +3 -2
- package/dist/cloudflared/bundled-asset.test.js +17 -3
- package/dist/pairing.js +2 -0
- package/dist/platform-packages.js +1 -1
- package/dist/platform-packages.test.js +3 -3
- package/dist/tunnel/public-readiness.js +1 -1
- package/install/README.md +1 -1
- package/install/install-agentroam.sh +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -21,9 +21,9 @@ Or install from tarball:
|
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
23
|
npm install ./agentroam-cloudflared-darwin-arm64-0.2.0-preview.20.tgz \
|
|
24
|
-
./agentroam-runtime-darwin-arm64-0.2.0-preview.
|
|
24
|
+
./agentroam-runtime-darwin-arm64-0.2.0-preview.21.tgz \
|
|
25
25
|
./agentroam-tui-darwin-arm64-0.2.0-preview.20.tgz \
|
|
26
|
-
./agentroam-0.2.0-preview.
|
|
26
|
+
./agentroam-0.2.0-preview.21.tgz
|
|
27
27
|
npx agentroam
|
|
28
28
|
```
|
|
29
29
|
|
|
@@ -31,9 +31,9 @@ Windows PowerShell:
|
|
|
31
31
|
|
|
32
32
|
```powershell
|
|
33
33
|
npm install ./agentroam-cloudflared-win32-x64-0.2.0-preview.20.tgz `
|
|
34
|
-
./agentroam-runtime-win32-x64-0.2.0-preview.
|
|
34
|
+
./agentroam-runtime-win32-x64-0.2.0-preview.21.tgz `
|
|
35
35
|
./caoqu-agentroam-tui-win32-x64-0.2.0-preview.20.tgz `
|
|
36
|
-
./agentroam-0.2.0-preview.
|
|
36
|
+
./agentroam-0.2.0-preview.21.tgz
|
|
37
37
|
npx agentroam
|
|
38
38
|
```
|
|
39
39
|
|
package/bin/node-preflight.mjs
CHANGED
|
@@ -7,7 +7,7 @@ import { promisify } from "node:util";
|
|
|
7
7
|
import { MINIMUM_NODE_VERSION, compareNodeVersions, isSupportedNodeVersion, parseNodeVersion } from "./runtime-policy.mjs";
|
|
8
8
|
|
|
9
9
|
const execFileAsync = promisify(execFile);
|
|
10
|
-
const RELEASE_VERSION = "0.2.0-preview.
|
|
10
|
+
const RELEASE_VERSION = "0.2.0-preview.22";
|
|
11
11
|
const RELEASE_BASE_URL = `https://gitee.com/caoqu/team-agent/releases/download/v${RELEASE_VERSION}`;
|
|
12
12
|
const FORWARDED_SIGNALS = ["SIGINT", "SIGTERM", "SIGHUP"];
|
|
13
13
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { readFile } from "node:fs/promises";
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
|
-
import {
|
|
3
|
+
import { PLATFORM_DEPENDENCY_VERSIONS } from "../platform-packages.js";
|
|
4
|
+
import { CLOUDFLARED_PACKAGES } from "./manifest.js";
|
|
4
5
|
export async function resolveBundledCloudflared(target, requireFromCli = createRequire(import.meta.url)) {
|
|
5
6
|
const packageName = CLOUDFLARED_PACKAGES[target];
|
|
6
7
|
if (!packageName)
|
|
@@ -17,7 +18,7 @@ export async function resolveBundledCloudflared(target, requireFromCli = createR
|
|
|
17
18
|
throw error;
|
|
18
19
|
}
|
|
19
20
|
const manifest = JSON.parse(await readFile(manifestPath, "utf8"));
|
|
20
|
-
if (manifest.packageVersion !==
|
|
21
|
+
if (manifest.packageVersion !== PLATFORM_DEPENDENCY_VERSIONS[packageName] ||
|
|
21
22
|
manifest.target !== target ||
|
|
22
23
|
(manifest.assetFormat !== "tgz" && manifest.assetFormat !== "executable") ||
|
|
23
24
|
typeof manifest.upstreamVersion !== "string" ||
|
|
@@ -2,7 +2,7 @@ import { mkdtemp, writeFile } from "node:fs/promises";
|
|
|
2
2
|
import { tmpdir } from "node:os";
|
|
3
3
|
import { resolve } from "node:path";
|
|
4
4
|
import { describe, expect, it } from "vitest";
|
|
5
|
-
import {
|
|
5
|
+
import { PLATFORM_DEPENDENCY_VERSIONS } from "../platform-packages.js";
|
|
6
6
|
import { resolveBundledCloudflared } from "./bundled-asset.js";
|
|
7
7
|
describe("resolveBundledCloudflared", () => {
|
|
8
8
|
it("resolves a valid platform package manifest and archive", async () => {
|
|
@@ -11,7 +11,7 @@ describe("resolveBundledCloudflared", () => {
|
|
|
11
11
|
const archivePath = resolve(root, "cloudflared.tgz");
|
|
12
12
|
await writeFile(archivePath, "archive");
|
|
13
13
|
await writeFile(manifestPath, JSON.stringify({
|
|
14
|
-
packageVersion:
|
|
14
|
+
packageVersion: PLATFORM_DEPENDENCY_VERSIONS["agentroam-cloudflared-darwin-arm64"],
|
|
15
15
|
upstreamVersion: "2026.8.2",
|
|
16
16
|
target: "darwin-arm64",
|
|
17
17
|
assetFormat: "tgz",
|
|
@@ -46,13 +46,27 @@ describe("resolveBundledCloudflared", () => {
|
|
|
46
46
|
await expect(resolveBundledCloudflared("darwin-arm64", fakeRequire(manifestPath, archivePath)))
|
|
47
47
|
.rejects.toThrow("invalid cloudflared platform manifest");
|
|
48
48
|
});
|
|
49
|
+
it("checks Windows against its own pin when platform versions differ", async () => {
|
|
50
|
+
const key = "agentroam-cloudflared-win32-x64";
|
|
51
|
+
const previous = PLATFORM_DEPENDENCY_VERSIONS[key];
|
|
52
|
+
const root = await mkdtemp(resolve(tmpdir(), "agentroam-mixed-cloudflared-"));
|
|
53
|
+
const manifestPath = resolve(root, "manifest.json");
|
|
54
|
+
try {
|
|
55
|
+
PLATFORM_DEPENDENCY_VERSIONS[key] = "0.2.0-preview.1";
|
|
56
|
+
await writeFile(manifestPath, JSON.stringify({ packageVersion: "0.2.0-preview.1", upstreamVersion: "2026.8.2", target: "windows-amd64", assetFormat: "executable", fileName: "cloudflared.exe", size: 6, sha256: "b".repeat(64) }));
|
|
57
|
+
await expect(resolveBundledCloudflared("windows-amd64", fakeRequire(manifestPath, "binary"))).resolves.toMatchObject({ assetPath: "binary" });
|
|
58
|
+
}
|
|
59
|
+
finally {
|
|
60
|
+
PLATFORM_DEPENDENCY_VERSIONS[key] = previous;
|
|
61
|
+
}
|
|
62
|
+
});
|
|
49
63
|
it("resolves a Windows executable asset", async () => {
|
|
50
64
|
const root = await mkdtemp(resolve(tmpdir(), "agentroam-bundled-windows-"));
|
|
51
65
|
const manifestPath = resolve(root, "manifest.json");
|
|
52
66
|
const assetPath = resolve(root, "cloudflared.exe");
|
|
53
67
|
await writeFile(assetPath, "binary");
|
|
54
68
|
await writeFile(manifestPath, JSON.stringify({
|
|
55
|
-
packageVersion:
|
|
69
|
+
packageVersion: PLATFORM_DEPENDENCY_VERSIONS["agentroam-cloudflared-win32-x64"],
|
|
56
70
|
upstreamVersion: "2026.8.2",
|
|
57
71
|
target: "windows-amd64",
|
|
58
72
|
assetFormat: "executable",
|
package/dist/pairing.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { createHash, randomBytes } from "node:crypto";
|
|
2
|
+
export function createPairingSecret(now = Date.now()) { const token = randomBytes(32).toString("base64url"); return { token, hashHex: createHash("sha256").update(token).digest("hex"), expiresAt: new Date(now + 5 * 60 * 1000).toISOString() }; }
|
|
@@ -2,7 +2,7 @@ import { readFileSync } from "node:fs";
|
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
3
|
import { dirname } from "node:path";
|
|
4
4
|
import { MINIMUM_NODE_VERSION, assertSupportedNodeVersion } from "../bin/runtime-policy.mjs";
|
|
5
|
-
export const AGENTROAM_VERSION = "0.2.0-preview.
|
|
5
|
+
export const AGENTROAM_VERSION = "0.2.0-preview.22";
|
|
6
6
|
export const PLATFORM_DEPENDENCY_VERSIONS = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8")).optionalDependencies;
|
|
7
7
|
export const PLATFORM_PACKAGES = {
|
|
8
8
|
"darwin-arm64": {
|
|
@@ -2,7 +2,7 @@ import { mkdtempSync, mkdirSync, writeFileSync } from "node:fs";
|
|
|
2
2
|
import { tmpdir } from "node:os";
|
|
3
3
|
import { dirname, resolve } from "node:path";
|
|
4
4
|
import { describe, expect, it } from "vitest";
|
|
5
|
-
import {
|
|
5
|
+
import { PLATFORM_DEPENDENCY_VERSIONS, requirePlatformPackages, resolvePlatformRuntime, resolvePlatformTui, } from "./platform-packages.js";
|
|
6
6
|
describe("platform packages", () => {
|
|
7
7
|
it("maps macOS arm64 and Windows x64 package names", () => {
|
|
8
8
|
expect(requirePlatformPackages("darwin-arm64")).toEqual({
|
|
@@ -26,7 +26,7 @@ describe("platform packages", () => {
|
|
|
26
26
|
mkdirSync(dirname(runtimePackageJson), { recursive: true });
|
|
27
27
|
writeFileSync(runtimePackageJson, "{}");
|
|
28
28
|
writeFileSync(manifestPath, JSON.stringify({
|
|
29
|
-
packageVersion:
|
|
29
|
+
packageVersion: PLATFORM_DEPENDENCY_VERSIONS["agentroam-runtime-win32-x64"],
|
|
30
30
|
target: "windows-amd64",
|
|
31
31
|
schemaVersion: 2,
|
|
32
32
|
minimumNodeVersion: "22.22.0",
|
|
@@ -65,7 +65,7 @@ describe("platform packages", () => {
|
|
|
65
65
|
const root = mkdtempSync(resolve(tmpdir(), "agentroam-runtime-legacy-"));
|
|
66
66
|
const manifestPath = resolve(root, "manifest.json");
|
|
67
67
|
writeFileSync(manifestPath, JSON.stringify({
|
|
68
|
-
packageVersion:
|
|
68
|
+
packageVersion: PLATFORM_DEPENDENCY_VERSIONS["agentroam-runtime-darwin-arm64"], target: "darwin-arm64",
|
|
69
69
|
nodeMajor: 22, nodeModuleAbi: 127, nativeFiles: {},
|
|
70
70
|
}));
|
|
71
71
|
expect(() => resolvePlatformRuntime("darwin-arm64", fakeRequire({
|
|
@@ -22,7 +22,7 @@ export async function waitForPublicReadiness(publicUrl, options = {}) {
|
|
|
22
22
|
try {
|
|
23
23
|
const response = await fetchImpl(endpoint, {
|
|
24
24
|
cache: "no-store",
|
|
25
|
-
headers: { "user-agent": "agentroam-readiness/0.2.0-preview.
|
|
25
|
+
headers: { "user-agent": "agentroam-readiness/0.2.0-preview.22" },
|
|
26
26
|
signal: options.signal,
|
|
27
27
|
});
|
|
28
28
|
if (response.ok) {
|
package/install/README.md
CHANGED
|
@@ -40,7 +40,7 @@ agentroam service uninstall
|
|
|
40
40
|
|
|
41
41
|
## Data and updates
|
|
42
42
|
|
|
43
|
-
Set `AGENTROAM_DATA_DIR` before running either installer to override the default `~/.agentroam` data directory. Node is stored at `<data-dir>/runtimes/node/22.22.0`, and the launcher is stored at `<data-dir>/launcher/0.2.0-preview.
|
|
43
|
+
Set `AGENTROAM_DATA_DIR` before running either installer to override the default `~/.agentroam` data directory. Node is stored at `<data-dir>/runtimes/node/22.22.0`, and the launcher is stored at `<data-dir>/launcher/0.2.0-preview.21`.
|
|
44
44
|
|
|
45
45
|
Each AgentRoam release pins its own Node patch and installer assets. Updates happen only by running a newer versioned installer or installing a newer AgentRoam release; startup never follows a moving Node.js release channel.
|
|
46
46
|
|
|
@@ -4,7 +4,7 @@ set -eu
|
|
|
4
4
|
NODE_VERSION="22.22.0"
|
|
5
5
|
MINIMUM_NODE_VERSION="22.22.0"
|
|
6
6
|
# Default to the newest published preview; pin an exact version via
|
|
7
|
-
# AGENTROAM_VERSION=0.2.0-preview.
|
|
7
|
+
# AGENTROAM_VERSION=0.2.0-preview.22 sh install-agentroam.sh
|
|
8
8
|
AGENTROAM_VERSION_REQUEST="${AGENTROAM_VERSION:-preview}"
|
|
9
9
|
AGENTROAM_VERSION=""
|
|
10
10
|
NODE_ARCHIVE="node-v22.22.0-darwin-arm64.tar.xz"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentroam",
|
|
3
|
-
"version": "0.2.0-preview.
|
|
3
|
+
"version": "0.2.0-preview.22",
|
|
4
4
|
"description": "Zero-install mobile remote terminal and file console",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
"undici": "^6.25.0"
|
|
27
27
|
},
|
|
28
28
|
"optionalDependencies": {
|
|
29
|
-
"agentroam-runtime-darwin-arm64": "0.2.0-preview.
|
|
30
|
-
"agentroam-runtime-win32-x64": "0.2.0-preview.
|
|
29
|
+
"agentroam-runtime-darwin-arm64": "0.2.0-preview.22",
|
|
30
|
+
"agentroam-runtime-win32-x64": "0.2.0-preview.22",
|
|
31
31
|
"agentroam-cloudflared-darwin-arm64": "0.2.0-preview.20",
|
|
32
32
|
"agentroam-cloudflared-win32-x64": "0.2.0-preview.20",
|
|
33
33
|
"agentroam-tui-darwin-arm64": "0.2.0-preview.20",
|