@probabl/pi-skore
Single-install Pi distribution: bundles @probabl/pi-skill-lifecycle, @probabl/pi-ask-user-question, @99percentpeople/pi-thinking-fold, and pi-web-access as one pinned package.
Package details
Install @probabl/pi-skore from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@probabl/pi-skore- Package
@probabl/pi-skore- Version
0.1.5- Published
- Oct 12, 2026
- Downloads
- 585/mo · 512/wk
- Author
- glemaitre
- License
- MIT
- Types
- extension
- Size
- 53.1 MB
- Dependencies
- 4 dependencies · 0 peers
Pi manifest JSON
{
"extensions": [
"./node_modules/@probabl/pi-skill-lifecycle/extensions/index.ts",
"./node_modules/@probabl/pi-ask-user-question/index.ts",
"./node_modules/@99percentpeople/pi-thinking-fold/index.min.js",
"./node_modules/pi-web-access/dist"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-skore
One-command Pi distribution. pi-skore bundles four Pi packages — three
extensions and one skill lifecycle — into a single npm package.
pi install npm:@probabl/pi-skore
That is the whole setup. Pi installs the package, and the bundled extensions
are discovered from the package's pi manifest. Nothing else to configure.
What you get
| Extension | Source | What it adds |
|---|---|---|
| skill lifecycle | @probabl/pi-skill-lifecycle |
OpenCode-style skill loading: a skill tool, a binding skill protocol, and archiving of stale skill bodies. No configuration. |
| ask user question | @probabl/pi-ask-user-question |
The ask_user_question tool, scaled past 4 questions × 4 options, with a windowed tab bar and scrolling option lists. PgUp / PgDn and the mouse wheel scroll the conversation behind the dialog while you answer. |
| thinking fold | @99percentpeople/pi-thinking-fold |
Folds reasoning/thinking output in the TUI. |
| web access | pi-web-access |
Web search and fetch tools (search providers, fetch_content, video/PDF/GitHub fetching). |
Each package is declared with an unrestricted range (*) and pinned by the
committed package-lock.json, so a given pi-skore release is a reproducible
set of extension versions rather than a floating set. Because the packages are
bundled, the resolved tree is embedded in the published tarball: consumers
extract it verbatim and never re-resolve the ranges themselves.
How it is built
The package has no source of its own. It declares the four packages in
dependencies, lists them in bundleDependencies, and points its pi
manifest at their real entry points inside node_modules:
{
"pi": {
"extensions": [
"./node_modules/@probabl/pi-skill-lifecycle/extensions/index.ts",
"./node_modules/@probabl/pi-ask-user-question/index.ts",
"./node_modules/@99percentpeople/pi-thinking-fold/index.min.js",
"./node_modules/pi-web-access/dist"
]
},
"dependencies": { "…": "*" },
"bundleDependencies": ["…"]
}
Bundling is required, not cosmetic. Pi installs npm packages into one shared
root (~/.pi/agent/npm), so a dependency's files are hoisted to
node_modules/<name> next to @probabl/pi-skore — not into a package-local
node_modules. A relative ./node_modules/… path would therefore not resolve
for a registry install. bundleDependencies makes npm pack place each
dependency (and its transitive tree) physically inside the published tarball,
which is what Pi documents for Pi packages used as dependencies.
Check the bundle before publishing:
npm install # populates node_modules with the four pinned packages
npm run verify # every dependency present, every pi.extensions path resolves
npm pack # -> probabl-pi-skore-<version>.tgz (self-contained)
The tarball is large (~15 MB) because pi-web-access pulls in Express, the MCP
SDK, unpdf, undici, and friends. Those licenses ship inside the tarball.
Updating
pi update npm:@probabl/pi-skore # move to the newest pi-skore release
pi update --extensions # update every installed package
Because the inner versions are pinned by the lockfile, an update arrives as a
new pi-skore release. To move the bundle to newer inner versions, refresh the
lockfile (npm update --legacy-peer-deps), run
npm run verify && npm pack --dry-run, then bump pi-skore's own version and
publish. The * ranges in package.json only describe what the lockfile is
allowed to resolve; the committed lockfile and CI's npm ci decide the exact
versions that get bundled.
Uninstalling
pi remove npm:@probabl/pi-skore
Do not install the pieces twice
pi-skore already ships all four packages. Installing
@probabl/pi-skill-lifecycle, @probabl/pi-ask-user-question,
@99percentpeople/pi-thinking-fold, or pi-web-access separately alongside
pi-skore loads two copies with separate module roots. Add the individual
package only if you want it instead of the bundle.
Third-party notices
@probabl/pi-skill-lifecycle— MIT, Probabl.@probabl/pi-ask-user-question— MIT, Probabl; a fork of@juicesharp/rpiv-ask-user-questionby juicesharp.@99percentpeople/pi-thinking-fold— MIT, 99percentpeople.pi-web-access— MIT, Nicolas Bailon.
Each package's own LICENSE file is included in the tarball.
License
MIT — see LICENSE.