@huynle/hub 0.8.6 → 0.8.7
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/CHANGELOG.md +10 -0
- package/package.json +1 -1
- package/packages/claude-code/package.json +1 -1
- package/packages/cli/dist/hub-cli.js +6 -6
- package/packages/cli/package.json +1 -1
- package/packages/cli/src/bootstrap/adapters/opencode/README.md +4 -2
- package/packages/cli/src/bootstrap/release/harness-pins.json +22 -0
- package/packages/cli/src/bootstrap/release/harness-pins.pending.json +1 -20
- package/packages/codex/package.json +1 -1
- package/packages/node/package.json +1 -1
- package/packages/preset/package.json +1 -1
- package/packages/protocol/package.json +1 -1
- package/packages/runtime-openshell/package.json +1 -1
- package/packages/runtime-sdk/package.json +1 -1
- package/packages/sdk/package.json +1 -1
- package/packages/spoke-sdk/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.8.7
|
|
4
|
+
|
|
5
|
+
The one-liner now installs OpenCode on Windows when a machine does not have it yet (the reviewed OpenCode 2.2.0 pin for
|
|
6
|
+
windows-x64 is in the signed release manifest). No migration is needed.
|
|
7
|
+
|
|
8
|
+
### Machine setup
|
|
9
|
+
- **hubctl installs OpenCode on Windows** too: the reviewed pin for OpenCode 2.2.0 `windows-x64`
|
|
10
|
+
(`opencode-windows-x64-baseline.zip`) is in the signed release manifest, so a Windows machine without OpenCode gets
|
|
11
|
+
it from the one-liner, like macOS and Linux.
|
|
12
|
+
|
|
3
13
|
## 0.8.6
|
|
4
14
|
|
|
5
15
|
A Windows fix release: OpenCode with the hub plugin no longer flashes a console window every few seconds on Windows,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@huynle/hub",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.7",
|
|
4
4
|
"description": "Hub: a harness-agnostic central hub your AI agent harnesses connect to (OpenCode first). Follow, steer and stop sessions from your phone or browser, with notifications, optional hands-free Voice and a self-hostable server.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Huy Le",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@huynle/hub-claude-code",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.7",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "The Claude Code hooks spoke: per-user daemon, hook bridge, plugin dir, `hub claude` wrapper and daemon-backed MCP server (internal; shipped inside @huynle/hub, not published on its own).",
|
|
6
6
|
"license": "MIT",
|
|
@@ -7,7 +7,7 @@ import { createInterface } from "readline";
|
|
|
7
7
|
// packages/cli/package.json
|
|
8
8
|
var package_default = {
|
|
9
9
|
name: "@huynle/hub-cli",
|
|
10
|
-
version: "0.8.
|
|
10
|
+
version: "0.8.7",
|
|
11
11
|
private: true,
|
|
12
12
|
description: "The hub CLI (`hub` / `hubctl`) for agents and scripts (internal; bundled into @huynle/hub, not published on its own).",
|
|
13
13
|
license: "MIT",
|
|
@@ -8945,7 +8945,7 @@ import { arch as osArch, platform as osPlatform } from "node:os";
|
|
|
8945
8945
|
// packages/node/package.json
|
|
8946
8946
|
var package_default2 = {
|
|
8947
8947
|
name: "@huynle/hub-node",
|
|
8948
|
-
version: "0.8.
|
|
8948
|
+
version: "0.8.7",
|
|
8949
8949
|
private: true,
|
|
8950
8950
|
description: "`hub node`: the per-machine daemon that prepares, collects and cleans up launch workspaces (internal; shipped inside @huynle/hub, not published on its own).",
|
|
8951
8951
|
license: "MIT",
|
|
@@ -10037,7 +10037,7 @@ import path14 from "node:path";
|
|
|
10037
10037
|
// packages/runtime-openshell/package.json
|
|
10038
10038
|
var package_default3 = {
|
|
10039
10039
|
name: "@huynle/hub-runtime-openshell",
|
|
10040
|
-
version: "0.8.
|
|
10040
|
+
version: "0.8.7",
|
|
10041
10041
|
private: true,
|
|
10042
10042
|
description: "The `openshell` runtime of `hub node`: launches in NVIDIA OpenShell sandboxes, driven through the openshell CLI (internal; shipped inside @huynle/hub, not published on its own).",
|
|
10043
10043
|
license: "MIT",
|
|
@@ -13721,7 +13721,7 @@ import path23 from "node:path";
|
|
|
13721
13721
|
// packages/claude-code/package.json
|
|
13722
13722
|
var package_default4 = {
|
|
13723
13723
|
name: "@huynle/hub-claude-code",
|
|
13724
|
-
version: "0.8.
|
|
13724
|
+
version: "0.8.7",
|
|
13725
13725
|
private: true,
|
|
13726
13726
|
description: "The Claude Code hooks spoke: per-user daemon, hook bridge, plugin dir, `hub claude` wrapper and daemon-backed MCP server (internal; shipped inside @huynle/hub, not published on its own).",
|
|
13727
13727
|
license: "MIT",
|
|
@@ -14010,7 +14010,7 @@ import path26 from "node:path";
|
|
|
14010
14010
|
// packages/preset/package.json
|
|
14011
14011
|
var package_default5 = {
|
|
14012
14012
|
name: "@huynle/hub-preset",
|
|
14013
|
-
version: "0.8.
|
|
14013
|
+
version: "0.8.7",
|
|
14014
14014
|
private: true,
|
|
14015
14015
|
description: "The preset spoke: drives a harness without a spoke of its own through a terminal pane (tmux), described by a data-only preset; official presets in presets/ (internal; shipped inside @huynle/hub, not published on its own).",
|
|
14016
14016
|
license: "MIT",
|
|
@@ -14535,7 +14535,7 @@ import { openSync as openSync6, closeSync as closeSync6, readFileSync as readFil
|
|
|
14535
14535
|
// packages/codex/package.json
|
|
14536
14536
|
var package_default6 = {
|
|
14537
14537
|
name: "@huynle/hub-codex",
|
|
14538
|
-
version: "0.8.
|
|
14538
|
+
version: "0.8.7",
|
|
14539
14539
|
private: true,
|
|
14540
14540
|
description: "The Codex app-server spoke: attaches to Codex's app-server (its own over stdio, and the shared daemon's socket when present), and the `hub codex` wrapper (internal; shipped inside @huynle/hub, not published on its own).",
|
|
14541
14541
|
license: "MIT",
|
|
@@ -88,8 +88,10 @@ See `../../PHASE2-CONTRACT.md` for the shared rules. For this adapter:
|
|
|
88
88
|
- **Release assets (v2.2.0).** `opencode-windows-x64.zip` (118 610 002 bytes, needs AVX2),
|
|
89
89
|
`opencode-windows-x64-baseline.zip` (118 610 005 bytes) and `opencode-windows-arm64.zip`. All three are listed in
|
|
90
90
|
the release's `SHA256SUMS` and in the API's `assets[].digest`.
|
|
91
|
-
- **Pin.** The windows-x64 pin is
|
|
92
|
-
release
|
|
91
|
+
- **Pin.** The windows-x64 pin (`opencode-windows-x64-baseline.zip`) is reviewed in `../../release/harness-pins.json`
|
|
92
|
+
since 2026-11-06 (checks re-run on a Windows host: release by github-actions[bot], fresh download size and sha256
|
|
93
|
+
equal to `SHA256SUMS` and `assets[].digest`, one member `opencode.exe`; `evidence: []`, the release's only
|
|
94
|
+
attestation is an in-toto release record, not a signature hub checks).
|
|
93
95
|
- **MCP authority.** `user-bin:hubctl.exe`, the real executable (`authorityFor`). The `hub` alias is a cmd shim
|
|
94
96
|
(`user-bin:hub.cmd`) on Windows, and a `.cmd` cannot be the MCP command because OpenCode starts it without a
|
|
95
97
|
shell. So `authority: user-bin:hub` is refused on Windows. `.exe` names are refused on POSIX targets.
|
|
@@ -89,6 +89,28 @@
|
|
|
89
89
|
"evidence-listed"
|
|
90
90
|
]
|
|
91
91
|
}
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"pin": {
|
|
95
|
+
"harness": "opencode",
|
|
96
|
+
"version": "2.2.0",
|
|
97
|
+
"target": "windows-x64",
|
|
98
|
+
"url": "https://github.com/anomalyco/opencode/releases/download/v2.2.0/opencode-windows-x64-baseline.zip",
|
|
99
|
+
"file": "opencode-windows-x64-baseline.zip",
|
|
100
|
+
"size": 118610005,
|
|
101
|
+
"sha256": "sha256:810fe13f6d85c6121e8ab0dd09933ababa2d52dccce9f3bc9ec70de5a9ae126e",
|
|
102
|
+
"evidence": [],
|
|
103
|
+
"minimumVersion": "2.0.0"
|
|
104
|
+
},
|
|
105
|
+
"review": {
|
|
106
|
+
"by": "huynle",
|
|
107
|
+
"on": "2026-11-06",
|
|
108
|
+
"checked": [
|
|
109
|
+
"upstream-release",
|
|
110
|
+
"digest-redownloaded",
|
|
111
|
+
"evidence-listed"
|
|
112
|
+
]
|
|
113
|
+
}
|
|
92
114
|
}
|
|
93
115
|
]
|
|
94
116
|
}
|
|
@@ -1,24 +1,5 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": "hub.harness-pin-pending",
|
|
3
3
|
"version": 1,
|
|
4
|
-
"pins": [
|
|
5
|
-
{
|
|
6
|
-
"pin": {
|
|
7
|
-
"harness": "opencode",
|
|
8
|
-
"version": "2.2.0",
|
|
9
|
-
"target": "windows-x64",
|
|
10
|
-
"url": "https://github.com/anomalyco/opencode/releases/download/v2.2.0/opencode-windows-x64-baseline.zip",
|
|
11
|
-
"file": "opencode-windows-x64-baseline.zip",
|
|
12
|
-
"size": 118610005,
|
|
13
|
-
"sha256": "sha256:810fe13f6d85c6121e8ab0dd09933ababa2d52dccce9f3bc9ec70de5a9ae126e",
|
|
14
|
-
"evidence": [],
|
|
15
|
-
"minimumVersion": "2.0.0"
|
|
16
|
-
},
|
|
17
|
-
"prepared": {
|
|
18
|
-
"by": "agent (Phase 2 release workstream; NOT a review)",
|
|
19
|
-
"on": "2026-11-05",
|
|
20
|
-
"note": "UNREVIEWED. The author downloaded the asset (curl -fsSL), measured 118610005 bytes and sha256 810fe13f…126e, which equal the release's SHA256SUMS line and the GitHub API assets[].digest for tag v2.2.0 (published 2026-10-27 by github-actions[bot] from dev). unzip -Zl lists exactly one member, opencode.exe (253303688 bytes, deflate, FAT host). The owner must redo every check of release/README.md themselves and move this entry into harness-pins.json with their own review record; until then only the dev release includes it."
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
]
|
|
4
|
+
"pins": []
|
|
24
5
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@huynle/hub-codex",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.7",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "The Codex app-server spoke: attaches to Codex's app-server (its own over stdio, and the shared daemon's socket when present), and the `hub codex` wrapper (internal; shipped inside @huynle/hub, not published on its own).",
|
|
6
6
|
"license": "MIT",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@huynle/hub-node",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.7",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "`hub node`: the per-machine daemon that prepares, collects and cleans up launch workspaces (internal; shipped inside @huynle/hub, not published on its own).",
|
|
6
6
|
"license": "MIT",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@huynle/hub-preset",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.7",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "The preset spoke: drives a harness without a spoke of its own through a terminal pane (tmux), described by a data-only preset; official presets in presets/ (internal; shipped inside @huynle/hub, not published on its own).",
|
|
6
6
|
"license": "MIT",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@huynle/hub-runtime-openshell",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.7",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "The `openshell` runtime of `hub node`: launches in NVIDIA OpenShell sandboxes, driven through the openshell CLI (internal; shipped inside @huynle/hub, not published on its own).",
|
|
6
6
|
"license": "MIT",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@huynle/hub-spoke-sdk",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.7",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "Harness-neutral spoke building blocks: hub connection, enrollment, tokens, idempotent deliver, prompt references, HarnessSpoke (internal; shipped inside @huynle/hub, not published on its own).",
|
|
6
6
|
"license": "MIT",
|