by abcwyc
Pi — A cross-platform AI coding agent, bringing the Claude Code experience to your desktop. No environment setup, no terminal commands. Download and start coding right away.
# Add to your Claude Code skills
git clone https://github.com/abcwyc/pi-agent-desktopGuides for using ai agents skills like pi-agent-desktop.
Last scanned: 8/12/2026
{
"issues": [
{
"type": "npm-audit",
"message": "@babel/core: @babel/core: Arbitrary File Read via sourceMappingURL Comment",
"severity": "low"
},
{
"type": "npm-audit",
"message": "brace-expansion: brace-expansion: Zero-step sequence causes process hang and memory exhaustion",
"severity": "high"
},
{
"type": "npm-audit",
"message": "dompurify: DOMPurify: Cross-realm IN_PLACE sanitization leaves executable markup intact via realm-bound `instanceof` checks",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "js-yaml: JS-YAML: Quadratic-complexity DoS in merge key handling via repeated aliases",
"severity": "high"
},
{
"type": "npm-audit",
"message": "mermaid: Mermaid: Improper sanitization of `classDef` in state diagrams leads to HTML injection",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "nanoid: nanoid: non-secure generators can loop indefinitely with negative size",
"severity": "high"
},
{
"type": "npm-audit",
"message": "next: Vulnerability found",
"severity": "high"
},
{
"type": "npm-audit",
"message": "postcss: PostCSS has XSS via Unescaped </style> in its CSS Stringify Output",
"severity": "high"
},
{
"type": "npm-audit",
"message": "sharp: sharp inherited vulnerabilities in libvips: CVE-2026-33327, CVE-2026-33328, CVE-2026-35590, CVE-2026-35591",
"severity": "high"
},
{
"type": "npm-audit",
"message": "undici: undici vulnerable to downstream response desynchronization via retry interceptor",
"severity": "high"
},
{
"file": "AGENTS.md",
"line": 47,
"type": "secret-exfiltration",
"message": "Instruction appears to send credentials/secrets to an external endpoint",
"severity": "medium"
},
{
"file": "AGENTS.md",
"line": 52,
"type": "secret-exfiltration",
"message": "Instruction appears to send credentials/secrets to an external endpoint",
"severity": "medium"
},
{
"file": "AGENTS.md",
"line": 191,
"type": "secret-exfiltration",
"message": "Instruction appears to send credentials/secrets to an external endpoint",
"severity": "medium"
}
],
"status": "WARNING",
"scannedAt": "2026-08-12T05:39:06.650Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how pi-agent-desktop compares with popular alternatives.
pi-agent-desktop is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by abcwyc. Pi — A cross-platform AI coding agent, bringing the Claude Code experience to your desktop. No environment setup, no terminal commands. Download and start coding right away. It has 905 GitHub stars.
pi-agent-desktop returned warnings in SkillsLLM's automated security scan. It has no critical vulnerabilities, but review the flagged issues in the Security Report section before adding it to your workflow.
Clone the repository with "git clone https://github.com/abcwyc/pi-agent-desktop" and add it to your Claude Code skills directory (see the Installation section above).
pi-agent-desktop is primarily written in TypeScript. It is open-source under abcwyc on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh pi-agent-desktop against similar tools.
No comments yet. Be the first to share your thoughts!
Based on votes and bookmarks from developers who liked this skill
Requires a passing catalog security scan.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
English | 简体中文
pi-agent-desktop is a local AI agent desktop app for macOS and Windows. It packages the agent capabilities of pi into a standalone, installable application.
.jsonl files.pi-agent-desktop GitHub Release, with an in-app notice only when the installed app is older.

⬇️ Download Pi Agent (macOS / Windows)
Repository: abcwyc/pi-agent-desktop
Builds are available from GitHub Releases:
Apple Silicon Mac: download the aarch64.dmg, open it, and drag the app into Applications. Official releases do not build for Intel Macs.
Apple Silicon Mac with Homebrew: install from this repository's tap. The tap is added from the repo URL, so the first command is needed once:
brew tap abcwyc/pi-agent-desktop https://github.com/abcwyc/pi-agent-desktop
brew install --cask pi-agent
The app upgrades itself from Settings, so brew upgrade leaves it alone unless you pass --greedy. brew uninstall --cask --zap pi-agent removes the app and its window state but never ~/.pi, which the pi CLI shares.
Linux x64: download the .deb package and install it with your distribution's package manager. A community-maintained Flatpak is also available at flatpark.org — not an official release, but Flatpak works across most distributions and handles updates for you.
Windows x64: download the installer whose name ends in x64-setup.exe and run it. The installer pulls in Microsoft WebView2 when it is missing.
Official releases support Apple Silicon Macs running macOS 11 or later, Windows 10/11 x64, and Linux x64 distributions with WebKitGTK 4.1 and GTK 3. The desktop package bundles the Next.js server, the Node.js runtime, and the current Pi SDK, so the local server starts with the app — no separate terminal, Node.js installation, or manually started web server is required.
Installing Pi Agent gives you the agent inside the app, but it does not install a global
picommand. If you also want the Pi CLI in your terminal, install it separately by following the pi project instructions.
macOS blocks the first launch: the macOS build is not yet signed with an Apple Developer ID or notarized, so Gatekeeper may say the developer cannot be verified or that the app "is damaged and can't be opened" (Homebrew installs included). Click "Open Anyway" in System Settings › Privacy & Security, or run:
xattr -dr com.apple.quarantine "/Applications/Pi Agent.app"
Before signed auto-updates can be used for the first time, an older build without the updater has to be replaced by manually installing a signed one. Upgrades then happen from Settings.
Pi Agent reads Pi's local data directory by default:
~/.pi/agent/
Sessions normally live under:
~/.pi/agent/sessions/<encoded-cwd>/<timestamp>_<uuid>.jsonl
If you have used Pi on this machine before, the app picks up your existing sessions, models, and authentication after installation. Set PI_CODING_AGENT_DIR to point at a different Pi agent data directory.
Model keys and session data stay on your machine. The file-browsing API only allows access to the current session, the selected project, and explicitly authorized working directories.
Pi Agent checks the latest stable release of abcwyc/pi-agent-desktop at most once every seven days:
abcwyc/pi-agent-desktopearendil-works/piagegr/pi-webThe versioning and upgrade rules are:
pi-agent-desktop release is the only source used for update reminders.pi → pi-web → pi-agent-desktop.This keeps the components in a desktop install consistent, and avoids the runtime incompatibilities that come from swapping pi or pi-web on their own.
If a new upstream version has been detected but the signed pi-agent-desktop release containing it is not published yet, Settings says that no signed complete build is installable for now. The app never falls back to downloading unsigned files or partially overwriting dependencies.
The full sync, signing, and release configuration is described in Desktop updates and releases.
Server-side model and API requests honor the standard HTTP_PROXY, HTTPS_PROXY, and NO_PROXY environment variables. For example, when starting the dev server from a terminal:
HTTP_PROXY=http://127.0.0.1:7890 \
HTTPS_PROXY=http://127.0.0.1:7890 \
NO_PROXY=localhost,127.0.0.1 \
npm run dev
npm install
npm run dev
The dev server runs at http://localhost:30141 and does not open a browser. npm run web starts the same loopback server and opens http://127.0.0.1:30141 in the desktop browser after it is ready. From WSL that is the Windows browser. See Web profile.
Do not run next build or npm run build during normal development. They write into .next/ and can disrupt a running dev server; production builds are done by the desktop preparation script or by CI.
npm run dev and npm start listen on 127.0.0.1 only. npm run dev:lan, npm run start:lan and pi-web -H 0.0.0.0 listen on every interface. Pi Agent can run shell commands (the terminal tab and the agent's own tools) and read files as you, so anyone who can reach the port gets the same access. Before using a LAN mode, set a password:
PI_WEB_PASSWORD='choose-a-long-passphrase' npm run dev:lan
With PI_WEB_PASSWORD set, the browser asks for it on first visit and failed attempts are throttled. The connection is still plain HTTP, so put it behind HTTPS or a trusted VPN, and use PI_WEB_ALLOWED_HOSTS (comma-separated) to allow a DNS name other than an IP address. Without a password the launcher refuses to listen beyond loopback; on a network you trust, PI_WEB_ALLOW_UNAUTHENTICATED=1 starts it anyway with a warning. The packaged desktop app is unaffected: it binds to loopback and authenticates the WebView with a per-process token.
npm run desktop:dev
This starts the existing Next.js dev server and opens it in a native Tauri window, without producing an installer.
# Node tests (identical to the CI sync gate, including components/ tests)
npm test
# TypeScript
node_modules/.bin/tsc --noEmit
# ESLint and the branding protection test
npm run lint
# Divergence from pi-web upstream, split into "styling" and "structural" changes
npm run drift
# Rust/Tauri
cargo fmt --check --manifest-path src-tauri/Cargo.toml
cargo clippy --manifest-path src-tauri/Cargo.toml -- -D warnings
# Verify the bundled components match the latest stable releases
npm run release:verify
release:verify reaches GitHub and requires the bundled pi and pi-web to match their latest stable releases exactly, while also checking the component manifest against the actual dependencies.
npm run desktop:build
The desktop build:
.app, .dmg, and updater artifacts on Apple Silicon Macs; an NSIS -setup.exe plus updater artifacts on Windows x64; and a .deb package on Linux x64.On Linux, the package requires a WebKitGTK 4.1 runtime and GTK 3. It includes the Node.js runtime, so users do not need to install Node.js separately