cicy-desktop 2.1.71 → 2.1.72

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/.cicy-code-ref CHANGED
@@ -1 +1 @@
1
- v2.1.9
1
+ v2.2.5
@@ -53,6 +53,9 @@ jobs:
53
53
  SKIP_TTYD_ASSET=1 SKIP_SKILLS_EMBED=1 bash build.sh all
54
54
  ls -lh dist/
55
55
 
56
+ - name: Sync runtime deps to latest (cicy-code + cicy-mihomo; drop msys2)
57
+ run: node scripts/sync-runtime-deps.cjs
58
+
56
59
  - name: Install project dependencies
57
60
  run: npm install --no-audit
58
61
 
@@ -61,6 +61,9 @@ jobs:
61
61
  bash build.sh all
62
62
  ls -lh dist/
63
63
 
64
+ - name: Sync runtime deps to latest (cicy-code + cicy-mihomo; drop msys2)
65
+ run: node scripts/sync-runtime-deps.cjs
66
+
64
67
  - name: Install project dependencies
65
68
  run: npm install --no-audit
66
69
 
@@ -0,0 +1,32 @@
1
+ name: Publish to npm
2
+
3
+ # Tag push (vX.Y.Z) → sync optionalDependencies to the LATEST per-platform
4
+ # cicy-code + cicy-mihomo, then publish cicy-desktop to npm. This is what
5
+ # `npx cicy-desktop` / `npm i -g cicy-desktop` users get — the app-installer
6
+ # workflows only build dmg/exe/AppImage, they do NOT publish npm.
7
+ on:
8
+ push:
9
+ tags:
10
+ - 'v*'
11
+ workflow_dispatch: {}
12
+
13
+ jobs:
14
+ publish:
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ - name: Checkout
18
+ uses: actions/checkout@v4
19
+
20
+ - name: Setup Node.js
21
+ uses: actions/setup-node@v4
22
+ with:
23
+ node-version: '20'
24
+ registry-url: 'https://registry.npmjs.org'
25
+
26
+ - name: Sync runtime deps to latest (cicy-code + cicy-mihomo; drop msys2)
27
+ run: node scripts/sync-runtime-deps.cjs
28
+
29
+ - name: Publish cicy-desktop to npm
30
+ run: npm publish --access public
31
+ env:
32
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
@@ -23,6 +23,9 @@ jobs:
23
23
  node-version: "20"
24
24
  cache: "npm"
25
25
 
26
+ - name: Sync runtime deps to latest (cicy-code + cicy-mihomo; drop msys2)
27
+ run: node scripts/sync-runtime-deps.cjs
28
+
26
29
  - name: Install project dependencies
27
30
  run: npm install --no-audit
28
31
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cicy-desktop",
3
- "version": "2.1.71",
3
+ "version": "2.1.72",
4
4
  "description": "CiCy - AI-powered operating system browser",
5
5
  "main": "src/main.js",
6
6
  "bin": {
@@ -143,8 +143,7 @@
143
143
  "cicy-mihomo-linux-x64": "1.10.4",
144
144
  "cicy-mihomo-linux-arm64": "1.10.4",
145
145
  "cicy-mihomo-windows-x64": "1.10.4",
146
- "cicy-mihomo-windows-arm64": "1.10.4",
147
- "cicy-msys2-windows-x64": "1.0.0"
146
+ "cicy-mihomo-windows-arm64": "1.10.4"
148
147
  },
149
148
  "devDependencies": {
150
149
  "@babel/core": "^7.29.0",
@@ -0,0 +1,54 @@
1
+ #!/usr/bin/env node
2
+ // Sync optionalDependencies to the LATEST published per-platform cicy-code and
3
+ // cicy-mihomo subpackages, so every cicy-desktop build/publish bundles the
4
+ // newest binaries. Run in CI before install/build (and before `npm publish`).
5
+ //
6
+ // 主人指令 (2026-06-08): Windows no longer ships msys2/tmux — the win sidecar
7
+ // runs the single headless 团队助手 (--helper), so cicy-msys2-* is DROPPED here.
8
+ //
9
+ // Usage: node scripts/sync-runtime-deps.cjs (writes package.json in place)
10
+
11
+ const { execFileSync } = require("child_process");
12
+ const fs = require("fs");
13
+ const path = require("path");
14
+
15
+ const REGISTRY = process.env.NPM_REGISTRY || "https://registry.npmjs.org";
16
+ const PLATFORMS = ["darwin-x64", "darwin-arm64", "linux-x64", "linux-arm64", "windows-x64", "windows-arm64"];
17
+ const COMPONENTS = ["cicy-code", "cicy-mihomo"]; // NOT cicy-msys2 — win drops it
18
+
19
+ function latest(pkg) {
20
+ try {
21
+ return execFileSync("npm", ["view", pkg, "version", `--registry=${REGISTRY}`], { encoding: "utf8", stdio: ["ignore", "pipe", "ignore"] }).trim() || null;
22
+ } catch {
23
+ return null; // not published for this platform (e.g. cicy-code has no windows-arm64)
24
+ }
25
+ }
26
+
27
+ const pkgPath = path.join(__dirname, "..", "package.json");
28
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, "utf8"));
29
+
30
+ const resolved = {};
31
+ for (const comp of COMPONENTS) {
32
+ for (const plat of PLATFORMS) {
33
+ const name = `${comp}-${plat}`;
34
+ const v = latest(name);
35
+ if (v) resolved[name] = v;
36
+ }
37
+ }
38
+ if (Object.keys(resolved).length === 0) {
39
+ console.error("[sync-runtime-deps] resolved nothing — registry unreachable? aborting (package.json untouched)");
40
+ process.exit(1);
41
+ }
42
+
43
+ // Keep any non-runtime optionalDeps; replace cicy-code-*/cicy-mihomo-*; drop cicy-msys2-*.
44
+ const kept = Object.fromEntries(
45
+ Object.entries(pkg.optionalDependencies || {}).filter(
46
+ ([k]) => !k.startsWith("cicy-code-") && !k.startsWith("cicy-mihomo-") && !k.startsWith("cicy-msys2")
47
+ )
48
+ );
49
+ pkg.optionalDependencies = { ...kept, ...resolved };
50
+
51
+ fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + "\n");
52
+ console.log("[sync-runtime-deps] optionalDependencies ->");
53
+ for (const [k, v] of Object.entries(resolved)) console.log(` ${k}@${v}`);
54
+ console.log("[sync-runtime-deps] dropped cicy-msys2-* (Windows no longer bundles msys2/tmux)");
@@ -128,13 +128,8 @@ async function start({ logPath, port = DEFAULT_PORT, force = false, version = nu
128
128
  };
129
129
  const args = [];
130
130
  if (process.platform === "win32") {
131
- // cicy-code.exe shells out to the bundled slim MSYS2point it there.
132
- try {
133
- const runtime = require("./runtime");
134
- const msys = runtime.binPath("msys2") || runtime.ensureFromBundle("msys2");
135
- if (msys) env.CICY_MSYS_ROOT = msys;
136
- } catch {}
137
- // --helper=1: boot as the single headless cicy 团队助手 on w-1001 (开机即团队助手).
131
+ // Windows runs the single headless 团队助手 (--helper=1) on w-1001 no tmux
132
+ // panes, so msys2/tmux are NOT bundled or referenced anymore (主人指令 2026-06-08).
138
133
  args.push("--helper=1");
139
134
  }
140
135
  child = spawn(exe, args, { stdio, detached: false, windowsHide: true, env });