PT-2026-50494 · Npm · @Earendil-Works/Pi-Coding-Agent+1
Urianpaul94
·
Published
2026-06-17
·
Updated
2026-06-23
·
CVE-2026-54328
CVSS v3.1
7.3
High
| Vector | AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H |
Name of the Vulnerable Software and Affected Versions
@earendil-works/pi-coding-agent versions 0.74.0 through 0.78.0
@mariozechner/pi-coding-agent versions 0.50.0 through 0.73.1
Description
Pi is a minimal terminal coding harness that used predictable paths under the operating system temporary directory for temporary npm or git extension package installs. On Linux-based multi-user systems with shared temporary directories, a local attacker could pre-create the expected package location. When a victim runs Pi with a temporary extension package source using the
--extension or -e flags, the software may load attacker-controlled extension code in the victim user's process. This occurs because the temporary npm install root and git clone paths were deterministic and rooted under os.tmpdir()/pi-extensions. Since extensions execute with the same privileges as the invoking process, this can lead to arbitrary code execution, data loss, or denial of service. This issue primarily affects shared environments like CI runners, HPC login nodes, and shared development machines.Recommendations
Update @earendil-works/pi-coding-agent to version 0.78.1 or later.
Migrate @mariozechner/pi-coding-agent to @earendil-works/pi-coding-agent version 0.78.1 or later.
As a temporary workaround, avoid using the
--extension or -e flags with npm or git package sources on shared Linux systems.
As an additional mitigation, configure the process temporary directory environment to point to a directory owned by the invoking user with 0700 permissions before starting the application.Fix
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
@Earendil-Works/Pi-Coding-Agent
@Mariozechner/Pi-Coding-Agent