bigpowers 2.87.0 → 2.87.1
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/.pi/package.json
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
## [2.87.1](https://github.com/danielvm-git/bigpowers/compare/v2.87.0...v2.87.1) (2026-07-30)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* **cli:** make bigpowers update self-update global package ([67f38f6](https://github.com/danielvm-git/bigpowers/commit/67f38f6e8dcf650732de01c87bf58aac0e20c52c))
|
|
7
|
+
|
|
1
8
|
# [2.87.0](https://github.com/danielvm-git/bigpowers/compare/v2.86.8...v2.87.0) (2026-07-29)
|
|
2
9
|
|
|
3
10
|
|
package/README.md
CHANGED
|
@@ -43,15 +43,17 @@ After installing, ask your agent to run the `using-bigpowers` skill — it is th
|
|
|
43
43
|
|
|
44
44
|
```bash
|
|
45
45
|
# Global install (no lifecycle scripts — npm v10+ safe)
|
|
46
|
-
npm install -g bigpowers
|
|
46
|
+
npm install -g bigpowers@latest
|
|
47
47
|
bigpowers setup # runs sync + install, links skills to your tools
|
|
48
48
|
|
|
49
|
-
# Or one-shot with npx
|
|
50
|
-
npx bigpowers setup
|
|
49
|
+
# Or one-shot with npx (always fetches the newest release)
|
|
50
|
+
npx bigpowers@latest setup
|
|
51
51
|
```
|
|
52
52
|
|
|
53
53
|
Both commands sync skill artifacts and link them to Claude Code, Gemini CLI, and Cursor (see [Prerequisites](#-prerequisites)).
|
|
54
54
|
|
|
55
|
+
> **Always pin `@latest`.** With bigpowers already installed globally, a bare `npx bigpowers setup` reuses the stale global binary and `npm update -g bigpowers` doesn't reliably cross to the newest release. `npm install -g bigpowers@latest` and `npx bigpowers@latest setup` force a registry fetch every time.
|
|
56
|
+
|
|
55
57
|
### Interactive Installer
|
|
56
58
|
|
|
57
59
|
The `npx bigpowers setup` command launches an interactive menu where you can:
|
|
@@ -269,10 +271,11 @@ Or add manually to `.claude/settings.json`:
|
|
|
269
271
|
**npm install:**
|
|
270
272
|
|
|
271
273
|
```bash
|
|
272
|
-
|
|
273
|
-
bigpowers update # re-sync and refresh symlinks
|
|
274
|
+
bigpowers update # fetches bigpowers@latest (global installs), then re-syncs + refreshes symlinks
|
|
274
275
|
```
|
|
275
276
|
|
|
277
|
+
`bigpowers update` now runs `npm install -g bigpowers@latest` for you when bigpowers is installed globally, so running it alone is enough to reach the newest release. Prefer to do it by hand? `npm install -g bigpowers@latest && bigpowers update`. (Avoid `npm update -g bigpowers` — it does not reliably cross to `@latest`.)
|
|
278
|
+
|
|
276
279
|
**git clone:**
|
|
277
280
|
|
|
278
281
|
```bash
|
|
@@ -301,9 +304,9 @@ bash scripts/install.sh --uninstall
|
|
|
301
304
|
### Reinstall
|
|
302
305
|
|
|
303
306
|
```bash
|
|
304
|
-
npx bigpowers setup
|
|
307
|
+
npx bigpowers@latest setup
|
|
305
308
|
# or, if installed globally:
|
|
306
|
-
bigpowers
|
|
309
|
+
bigpowers update
|
|
307
310
|
```
|
|
308
311
|
|
|
309
312
|
---
|
package/bin/bigpowers.js
CHANGED
|
@@ -29,6 +29,43 @@ function run(cmd, cwd = ROOT) {
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
+
// True when this copy runs from the global npm install (not a git clone or npx temp dir).
|
|
33
|
+
function isGlobalInstall() {
|
|
34
|
+
try {
|
|
35
|
+
const globalRoot = execSync('npm root -g', { encoding: 'utf8' }).trim();
|
|
36
|
+
return globalRoot && ROOT.startsWith(globalRoot);
|
|
37
|
+
} catch {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// `bigpowers update` used to only re-sync the already-installed files, so it never fetched
|
|
43
|
+
// a newer release. When we're the global install, pull the latest from npm first; the reinstall
|
|
44
|
+
// overwrites ROOT in place, so the setup.js required afterwards is the freshly installed one.
|
|
45
|
+
function selfUpdateGlobalPackage() {
|
|
46
|
+
if (!isGlobalInstall()) {
|
|
47
|
+
console.log('bigpowers: not a global npm install — skipping package self-update.');
|
|
48
|
+
console.log(' git clone → `git pull && npm run sync && bash scripts/install.sh`');
|
|
49
|
+
console.log(' one-shot → `npx bigpowers@latest setup`');
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
console.log('bigpowers: fetching the latest release from npm (npm install -g bigpowers@latest)...');
|
|
53
|
+
try {
|
|
54
|
+
execSync('npm install -g bigpowers@latest', { stdio: 'inherit' });
|
|
55
|
+
} catch {
|
|
56
|
+
console.error('bigpowers: `npm install -g bigpowers@latest` failed — re-syncing the installed version instead.');
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// Best-effort registry check; silent on any failure so offline/slow networks never block a command.
|
|
61
|
+
function latestPublishedVersion() {
|
|
62
|
+
try {
|
|
63
|
+
return execSync('npm view bigpowers version', { encoding: 'utf8', timeout: 4000 }).trim();
|
|
64
|
+
} catch {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
32
69
|
const cmd = process.argv[2];
|
|
33
70
|
|
|
34
71
|
if (cmd === 'setup' || cmd === 'install') {
|
|
@@ -39,7 +76,8 @@ if (cmd === 'setup' || cmd === 'install') {
|
|
|
39
76
|
}
|
|
40
77
|
|
|
41
78
|
if (cmd === 'update') {
|
|
42
|
-
//
|
|
79
|
+
// Pull the newest release first (global installs), then re-sync + refresh symlinks.
|
|
80
|
+
selfUpdateGlobalPackage();
|
|
43
81
|
const setupScript = path.join(ROOT, 'bin', 'setup.js');
|
|
44
82
|
require(setupScript);
|
|
45
83
|
return;
|
|
@@ -51,6 +89,11 @@ if (cmd === 'status') {
|
|
|
51
89
|
.filter(d => fs.lstatSync(path.join(os.homedir(), '.claude', 'skills', d)).isSymbolicLink())
|
|
52
90
|
.length;
|
|
53
91
|
console.log(`bigpowers v${pkg.version} — ${count} skills installed`);
|
|
92
|
+
const latest = latestPublishedVersion();
|
|
93
|
+
if (latest && latest !== pkg.version) {
|
|
94
|
+
console.log(`\n⬆️ A newer release is available: v${latest} (you have v${pkg.version}).`);
|
|
95
|
+
console.log(' Upgrade: npm install -g bigpowers@latest && bigpowers update');
|
|
96
|
+
}
|
|
54
97
|
} else {
|
|
55
98
|
console.log('bigpowers not installed. Run: bigpowers setup');
|
|
56
99
|
}
|
|
@@ -63,8 +106,8 @@ bigpowers — agent skills for spec-driven, test-first development
|
|
|
63
106
|
|
|
64
107
|
Commands:
|
|
65
108
|
bigpowers setup Install skills into ~/.claude/skills/
|
|
66
|
-
bigpowers update
|
|
67
|
-
bigpowers status Show installed version and skill count
|
|
109
|
+
bigpowers update Fetch the latest release (global installs) + re-sync and refresh symlinks
|
|
110
|
+
bigpowers status Show installed version and skill count (warns if a newer release exists)
|
|
68
111
|
bigpowers help This message
|
|
69
112
|
`);
|
|
70
113
|
process.exit(0);
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|