PI Desktop AI Agent by vastsa
Local-first AI coding agent desktop: Electron + Rust host core + pi Agent Harness + user-installable plugins
PI Desktop is an open-source ai agent by vastsa, written mainly in TypeScript, with 7,566 GitHub stars and the LGPL-3.0 license. Its code was last updated Nov 1, 2026.
Scan summary: scanned Nov 5, 2026 at commit b4430db. Seen able to read environment and secrets, connect to the internet. Scan policy
ScannedScanned. The automated checks below ran on the commit shown. Read each line for what was and was not covered.
Full scan at
b4430db · Nov 5, 2026 ScannedStatic, secrets and dependency checks completed with no critical findings.
Warning. This check found something worth reading in the findings below. It is not proof of a problem.Static code scanwarnWarning. This check found something worth reading in the findings below. It is not proof of a problem.
Passed. This check ran and found nothing it flags.Secrets scanpassPassed. This check ran and found nothing it flags.
Warning. This check found something worth reading in the findings below. It is not proof of a problem.Dependency audit56 known vulnerabilitieswarnWarning. This check found something worth reading in the findings below. It is not proof of a problem.
Warning. This check found something worth reading in the findings below. It is not proof of a problem.ManifestnonewarnWarning. This check found something worth reading in the findings below. It is not proof of a problem.
Flagged. This check found an issue. See the findings below.BuildfailFlagged. This check found an issue. See the findings below.
Not applicable. This check does not apply to this kind of project, or it was not run in this scan.Boot & handshaken/aNot applicable. This check does not apply to this kind of project, or it was not run in this scan.
Warning. This check found something worth reading in the findings below. It is not proof of a problem.Network egresswarnWarning. This check found something worth reading in the findings below. It is not proof of a problem.
Not applicable. This check does not apply to this kind of project, or it was not run in this scan.Reproducible (×3)n/aNot applicable. This check does not apply to this kind of project, or it was not run in this scan.
Findings (63)
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- highHigh. Something risky that needs a close look before you install.credential-access issueDetails are available to the maintainer after claiming this listing.
- mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-mcp-market.mjs:137 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-mcp-market.mjs:138 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-mcp-market.mjs:139 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-mcp-market.mjs:146 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-mcp-market.mjs:147 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-mcp-market.mjs:148 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-mcp-market.mjs:164 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-mcp-market.mjs:174 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-skill-market.mjs:134 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-skill-market.mjs:135 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-skill-market.mjs:152 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Contacts a hard-coded IP address instead of a domain name.
scripts/e2e-skill-market.mjs:163 - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.electron@43.6.0: 7 known vulnerabilitiesGHSA-2p8c-gr87-2676, GHSA-3qxv-5xgr-q7w9, GHSA-997q-gvvc-jwmx, GHSA-fw47-9c62-h3vw, GHSA-h3v5-h239-pg29 +2 more
pnpm-lock.yaml - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.undici@6.29.0: 5 known vulnerabilitiesGHSA-2m5v-pch6-74hx, GHSA-4qv8-2p9j-2685, GHSA-9fm3-97px-rjf6, GHSA-qrxm-fqhp-jwvm, GHSA-xjj6-f33q-929c
pnpm-lock.yaml - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.undici@7.30.0: 8 known vulnerabilitiesGHSA-2m5v-pch6-74hx, GHSA-4qv8-2p9j-2685, GHSA-4w7w-5xrc-9h26, GHSA-55wc-3pg8-jfw6, GHSA-9fm3-97px-rjf6 +3 more
pnpm-lock.yaml - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.undici@8.10.2: 8 known vulnerabilitiesGHSA-2m5v-pch6-74hx, GHSA-4qv8-2p9j-2685, GHSA-4w7w-5xrc-9h26, GHSA-55wc-3pg8-jfw6, GHSA-9fm3-97px-rjf6 +3 more
pnpm-lock.yaml - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.vite@6.4.3: 5 known vulnerabilitiesGHSA-587h-7wmj-h5pm, GHSA-698v-4r3x-3vcv, GHSA-9jrq-w75r-8gcw, GHSA-r825-w8mm-5pxw, GHSA-rq7h-c2jc-7f22
pnpm-lock.yaml - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.vite@7.3.6: 5 known vulnerabilitiesGHSA-587h-7wmj-h5pm, GHSA-698v-4r3x-3vcv, GHSA-9jrq-w75r-8gcw, GHSA-r825-w8mm-5pxw, GHSA-rq7h-c2jc-7f22
pnpm-lock.yaml - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.zod@4.4.3: 1 known vulnerabilityGHSA-mrhx-c7xc-m3w5
pnpm-lock.yaml - mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Install or build failed in a clean environmentns.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks apps/desktop build: - Adjust chunk size limit for this warning via build.chunkSizeWarningLimit. apps/desktop build: Done sh: 1: cargo: not found [ELIFECYCLE] Command failed with exit code 127.
- mediumMedium. Worth checking, often a vulnerable dependency or a setup problem.Install contacted hosts other than package registries34.1.16.104.in-addr.arpa
- lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/agent-runtime/src/image-generation/image-generation.test.ts:205 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Touches a sensitive credential location (SSH keys, cloud credentials, browser data or wallets). Expected for some tools, such as browser automation; check why.
packages/plugin-sdk/src/fs-policy.test.ts:94 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Touches a sensitive credential location (SSH keys, cloud credentials, browser data or wallets). Expected for some tools, such as browser automation; check why.
packages/plugin-sdk/src/fs-policy.test.ts:99 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/plugin-sdk/src/net-policy.test.ts:162 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/plugin-sdk/src/net-policy.test.ts:175 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/mcp-registry.test.ts:445 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/mcp-registry.test.ts:446 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/mcp-registry.test.ts:447 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/mcp-registry.test.ts:459 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/mcp-registry.test.ts:460 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/mcp-registry.test.ts:461 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/mcp-registry.test.ts:477 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/mcp-registry.test.ts:527 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/public-network.test.ts:360 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/public-network.test.ts:362 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/skill-catalog.test.ts:172 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/skill-catalog.test.ts:173 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/skill-catalog.test.ts:188 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Contacts a hard-coded IP address instead of a domain name.
packages/shared/src/skill-catalog.test.ts:199 - lowLow. Minor, or common in normal tools. Shown for information.In tests/examples/docs: Turns off TLS certificate checking, allowing traffic interception.
scripts/e2e/provider-client-certificate.ts:32 - lowLow. Minor, or common in normal tools. Shown for information.Possible example credential in docs/tests: generic-api-key
docs/spec/03-runtime/19-remote-agent-control-protocol.md:831 - lowLow. Minor, or common in normal tools. Shown for information.Possible example credential in docs/tests: private-key
scripts/e2e/fixtures/certificates/localhost-key.pem:1 - lowLow. Minor, or common in normal tools. Shown for information.ctutils@0.4.2: 1 known vulnerabilityRUSTSEC-2026-0385
Cargo.lock - lowLow. Minor, or common in normal tools. Shown for information.rustls@0.23.45: 4 known vulnerabilitiesRUSTSEC-2026-0346, RUSTSEC-2026-0347, RUSTSEC-2026-0348, RUSTSEC-2026-0349
Cargo.lock - lowLow. Minor, or common in normal tools. Shown for information.rustls-webpki@0.103.15: 1 known vulnerabilityRUSTSEC-2026-0382
Cargo.lock - lowLow. Minor, or common in normal tools. Shown for information.tokio@1.53.1: 1 known vulnerabilityRUSTSEC-2026-0386
Cargo.lock - lowLow. Minor, or common in normal tools. Shown for information.webpki-roots@1.0.9: 1 known vulnerabilityRUSTSEC-2026-0381
Cargo.lock - lowLow. Minor, or common in normal tools. Shown for information.@vitest/mocker@4.1.11: 2 known vulnerabilitiesGHSA-qxg6-89mg-rqv8, GHSA-xp26-3454-mjgp
pnpm-lock.yaml - lowLow. Minor, or common in normal tools. Shown for information.fast-uri@3.1.8: 4 known vulnerabilitiesGHSA-333x-w4r6-6crp, GHSA-w74x-v6f9-j3xg, GHSA-wjr9-j795-jxcr, GHSA-xhq7-xmqj-769h
pnpm-lock.yaml - lowLow. Minor, or common in normal tools. Shown for information.katex@0.16.47: 1 known vulnerabilityGHSA-238p-pmpm-9mq7
pnpm-lock.yaml - lowLow. Minor, or common in normal tools. Shown for information.minimatch@10.2.6: 1 known vulnerabilityGHSA-g3hv-75wg-m249
pnpm-lock.yaml - lowLow. Minor, or common in normal tools. Shown for information.minimatch@9.0.9: 1 known vulnerabilityGHSA-g3hv-75wg-m249
pnpm-lock.yaml - lowLow. Minor, or common in normal tools. Shown for information.No manifest declaring network access and environment variables (agent.json)
Network activity
During install
34.1.16.104.in-addr.arpanodejs.orgregistry.npmjs.org
While running
Not run — the code wasn't started in this scan
Automated result for the commit shown. See our scan policy. View the scan log
Maintainers can claim the listing to rescan, or dispute a result.
PI Desktop alternatives
View more →Similar ai agents in Coding Agents, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.
| Name | Stars | Licence | Last updated | Scan |
|---|---|---|---|---|
| PI Desktop (this page) vastsa | 7.6k | LGPL-3.0 | Nov 1, 2026 | Scanned, no flagged issues |
| AutoGPT Significant-Gravitas | 188k | None found | Nov 1, 2026 | Not scanned yet |
| Langchain langchain-ai | 149k | MIT | Nov 1, 2026 | Scanned, no flagged issues |
| Gemini CLI google-gemini | 109k | Apache-2.0 | Nov 1, 2026 | Scanned, no flagged issues |
| MetaGPT FoundationAgents | 71k | MIT | Jan 21, 2026 | Scanned, no flagged issues |
| Oh My Openagent code-yeongyu | 71k | None found | Nov 1, 2026 | Not scanned yet |