Skip to content

Commit 5097342

Browse files
committed
fix: migrate to npm OIDC trusted publishing
- Remove NODE_AUTH_TOKEN dependency (tokens deprecated) - Add npm update step for OIDC support (requires npm 11.5+) - Update skill docs with trusted publisher setup instructions
1 parent 9f232ed commit 5097342

2 files changed

Lines changed: 31 additions & 10 deletions

File tree

.claude/skills/publish-cli/SKILL.md

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,31 @@ Monitor progress at: Actions > Release CLI
6565

6666
- **File**: `.github/workflows/release.yml`
6767
- **Trigger**: Push tags matching `cli-v*`
68-
- **Secret required**: `NPM_TOKEN` (Granular Access Token with publish permissions)
68+
- **Authentication**: OIDC Trusted Publishing (no tokens required)
69+
70+
### Setting Up Trusted Publishers
71+
72+
Each package must be configured on npmjs.com to trust this workflow:
73+
74+
1. Go to `https://www.npmjs.com/package/<package-name>/access`
75+
2. Scroll to **"Trusted Publisher"** section
76+
3. Click **"GitHub Actions"**
77+
4. Configure:
78+
- **Organization/User**: `lfglabs-dev`
79+
- **Repository**: `louisville`
80+
- **Workflow filename**: `release.yml`
81+
- **Environment**: *(leave blank)*
82+
83+
Packages requiring trusted publisher setup:
84+
- `vibetracking`
85+
- `@starknetid/vibetracking-core`
86+
- `@starknetid/vibetracking-core-darwin-x64`
87+
- `@starknetid/vibetracking-core-darwin-arm64`
88+
- `@starknetid/vibetracking-core-darwin-universal`
89+
- `@starknetid/vibetracking-core-linux-x64-gnu`
90+
- `@starknetid/vibetracking-core-linux-arm64-gnu`
91+
- `@starknetid/vibetracking-core-win32-x64-msvc`
92+
- `@starknetid/vibetracking-core-win32-arm64-msvc`
6993

7094
## Manual Trigger (Dry Run)
7195

.github/workflows/release.yml

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -181,36 +181,33 @@ jobs:
181181
run: ls -la npm/ || echo "No npm directory"
182182
working-directory: packages/core
183183

184+
- name: Update npm (required for OIDC)
185+
run: npm install -g npm@latest
186+
184187
- name: Publish platform packages
185188
if: ${{ github.event.inputs.dry_run != 'true' }}
186189
run: |
187190
for dir in npm/*/; do
188191
if [ -d "$dir" ]; then
189192
echo "Publishing $dir"
190-
(cd "$dir" && npm publish --access public --provenance)
193+
(cd "$dir" && npm publish --access public)
191194
fi
192195
done
193196
working-directory: packages/core
194-
env:
195-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
196197

197198
- name: Publish @starknetid/vibetracking-core
198199
if: ${{ github.event.inputs.dry_run != 'true' }}
199-
run: npm publish --access public --provenance
200+
run: npm publish --access public
200201
working-directory: packages/core
201-
env:
202-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
203202

204203
- name: Build CLI
205204
run: bun run build
206205
working-directory: packages/cli
207206

208207
- name: Publish vibetracking CLI
209208
if: ${{ github.event.inputs.dry_run != 'true' }}
210-
run: npm publish --access public --provenance
209+
run: npm publish --access public
211210
working-directory: packages/cli
212-
env:
213-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
214211

215212
- name: Summary
216213
run: |

0 commit comments

Comments
 (0)