npm 10+ rejects --allow-scripts in project-scoped (non-global) installs.
Install better-sqlite3@12.11.1 globally with --allow-scripts, then remove
the incompatible v11.10.0 from n2-soul's node_modules so Node.js resolves
the global v12.11.1 instead.
n2-soul's npm install fails on Node 26 because its dependency
better-sqlite3@11.10.0 cannot compile (V8 API removed GetPrototype).
The subsequent upgrade to v12 never runs due to set -eux.
Fix: install n2-soul without scripts, then replace better-sqlite3
with v12.11.1 which has prebuilt binaries for Node 26.
open-code-ai is installed separately with scripts allowed.
n2-soul@9.0.9 depends on better-sqlite3@^11.10.0 which does not
support Node.js 26. The V8 API changed (GetPrototype removed in
favor of GetPrototypeV2), causing native compilation to fail.
Upgrade to better-sqlite3@12.11.1 which supports Node 26 and has
prebuilt binaries.
The node:24-trixie base image has npm configured with a restricted
allowScripts list, preventing opencode-ai's postinstall from running.
Pass --allow-scripts=opencode-ai,better-sqlite3 to npm install -g to
explicitly allow these packages to run their install scripts.
This is the npm-recommended fix as shown in the npm warning message.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.