Skip to content

fix(npm): correct install URLs + unconditional skill install (0.2.6)#39

Merged
Shadow-Azure merged 1 commit into
mainfrom
fix/install-urls-skill-0.2.6
Jun 16, 2026
Merged

fix(npm): correct install URLs + unconditional skill install (0.2.6)#39
Shadow-Azure merged 1 commit into
mainfrom
fix/install-urls-skill-0.2.6

Conversation

@Shadow-Azure

Copy link
Copy Markdown
Owner

Problem

After 0.2.5 we found two issues blocking a true out-of-the-box npm install -g cli-box-skill experience:

  1. Broken curl install URLs. Five user-facing references point at main/skill/install.sh, but the repo has no root skill/ dir (it moved to packages/cli-box-skill/skill/install.sh) — all 404. The cli-box-wrapper.js fallback additionally used the wrong owner (ZN-Ice). The npm install main path was unaffected (it resolves the platform package), but the "No npm? curl it" alternative and the fallback message were dead.
  2. Skill only installed if the harness dir pre-existed. Both postinstall.mjs and install.sh gated the SKILL.md copy on ~/.claude/ / ~/.config/opencode/ already existing — so on a fresh machine the skill silently wasn't placed.
  3. release/release-pipeline.md was stale (version 0.2.0, root skill/).

Solution

  • Corrected the curl URL → main/packages/cli-box-skill/skill/install.sh across README.md, README.zh-cn.md, docs/guide/installation.md, and packages/cli-box-skill/{skill/SKILL.md, README.md, postinstall.mjs, bin/cli-box-wrapper.js} (owner ZN-IceShadow-Azure).
  • Made postinstall.mjs and install.sh install SKILL.md unconditionally (create ~/.claude/skills/cli-box + ~/.config/opencode/skills/cli-box via mkdir -p even when the harness isn't installed yet) — so the skill is discovered the moment Claude Code / OpenCode runs.
  • Rewrote release/release-pipeline.md to reflect the actual 3-package npm pipeline (cli-box-skill + cli-box-darwin-arm64 + cli-box-electron-darwin-arm64, npm versions injected from the git tag by CI).
  • Bumped 0.2.5 → 0.2.6 (Cargo.toml, electron-app/package.json, release.sh).

Test Plan

  • tests/e2e-skill-install.sh (CI mode) — all 3 tests pass; Test 2 now lands SKILL.md in a fresh HOME (previously a warn), proving the unconditional install
  • No broken main/skill/install.sh / ZN-Ice references remain in live files
  • Merge → tag v0.2.6gh release create → CI publishes GitHub Release assets + 3 npm packages
  • End-to-end: isolated npm install cli-box-skill@0.2.6 → verify binaries symlinked, cli-box --help works, SKILL.md in both skill dirs on a fresh HOME

🤖 Generated with Claude Code

- Point all curl install URLs at packages/cli-box-skill/skill/install.sh
  (the repo has no root skill/ dir); fix ZN-Ice -> Shadow-Azure owner in
  the cli-box-wrapper.js fallback URL
- postinstall.mjs and install.sh now install SKILL.md unconditionally:
  they create ~/.claude/skills/cli-box and ~/.config/opencode/skills/cli-box
  even when the harness is not yet installed, so 'npm install -g cli-box-skill'
  is truly out-of-the-box for Claude Code and OpenCode
- Sync release/release-pipeline.md to the actual 3-package npm pipeline
- Bump version 0.2.5 -> 0.2.6

Co-Authored-By: Claude <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

🔒 门禁检查结果

检查项 状态
Rust 格式化 ✅ success
Rust Clippy ✅ success
Rust 测试 & 覆盖率 ✅ success
前端测试 & 覆盖率 ✅ success
Playwright E2E ✅ success
统一测试 (test.sh) ✅ success
安全检查 ✅ success

Rust 测试覆盖率

指标 覆盖率
行覆盖率 66.0%
分支覆盖率 0.0%
模块 行覆盖率
crates.cli-box-core.src.server █████████████████░░░ 87.7%
crates.cli-box-core.src ███████████░░░░░░░░░ 55.3%
crates.cli-box-core.src.daemon ██████████░░░░░░░░░░ 51.5%
crates.cli-box-core.src.automation ███████████░░░░░░░░░ 58.3%
crates.cli-box-core.src.sandbox ███████████████████░ 98.8%
crates.cli-box-core.src.capture ████████████████████ 100.0%
crates.cli-box-core.src.process █████████░░░░░░░░░░░ 46.4%
crates.cli-box-core.src.instance ███████████████████░ 99.1%

详细报告见 Rust 覆盖率 artifact

前端测试覆盖率

指标 覆盖率
行覆盖率 ██████████████░░░░░░ 67.8%
分支覆盖率 57.3%
函数覆盖率 71.2%
语句覆盖率 67.6%
文件 行覆盖率
src/tests/mocks/websocket.ts ██████████████████░░ 88.0%
src/tests/mocks/xterm.ts ████████████████████ 100.0%
src/main/daemon-bridge.ts ████████░░░░░░░░░░░░ 40.0%
src/renderer/api.ts ██████████████░░░░░░ 68.2%
src/renderer/tabState.ts ████████████████████ 100.0%

详细报告见前端覆盖率 artifact

✅ 所有检查通过,可以合入

点击 Squash and merge 合并此PR

@Shadow-Azure
Shadow-Azure merged commit f2708e2 into main Jun 16, 2026
9 checks passed
@Shadow-Azure
Shadow-Azure deleted the fix/install-urls-skill-0.2.6 branch June 16, 2026 14:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant