fix(cli): preserve user-managed symlinks when installing to pi #2729
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| pr-title: | |
| if: github.event_name == 'pull_request' | |
| runs-on: ubuntu-latest | |
| permissions: | |
| pull-requests: read | |
| steps: | |
| - name: Validate PR title | |
| uses: amannn/action-semantic-pull-request@v6.1.1 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| requireScope: false | |
| types: | | |
| feat | |
| fix | |
| docs | |
| refactor | |
| chore | |
| test | |
| ci | |
| build | |
| perf | |
| revert | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| # Full history so release:validate can read the base-branch (origin/main) | |
| # release-please manifest when checking release-as pins for staleness. | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| - name: Validate release metadata | |
| run: bun run release:validate | |
| # Canonical schema check: runs `claude plugin validate` against the | |
| # marketplace catalog and each plugin directory (blocking, non-strict). | |
| # The CLI must be installed via npm, not bun: `bun x` cannot run this | |
| # package (bun blocks its required postinstall and cannot resolve its | |
| # `claude` bin name), and `bun run` rewrites `npx` in package.json | |
| # scripts to the broken `bun x`, so the script invokes a `claude` | |
| # already on PATH instead. | |
| # | |
| # The validator version is pinned deliberately for reproducible CI: a | |
| # floating @latest would track new upstream validation rules | |
| # automatically but could break CI without any repo change. Bump the | |
| # pin intentionally to adopt new `claude plugin validate` rules (and | |
| # revisit --strict below when doing so). | |
| # | |
| # --strict (warnings-as-errors) should be enabled once this known | |
| # warning is fixed: | |
| # . -- 1 warning: | |
| # "root: CLAUDE.md at the plugin root is not loaded as project context. To ship context with your plugin, use a skill (skills/<name>/SKILL.md) instead." | |
| - name: Validate plugin schema (claude plugin validate) | |
| run: | | |
| npm install -g @anthropic-ai/claude-code@2.1.175 | |
| bun run plugin:validate | |
| - name: Run tests | |
| run: bun test |