by NotASithLord
The first AI agent harness native to the browser. A browser extension that runs a full agent loop where you already work: it drives your tabs, spins up sandboxed compute (JS notebooks, WASM Linux VMs, client-side apps), and shares what it builds peer-to-peer. BYOK, no backend, no telemetry.
# Add to your Claude Code skills
git clone https://github.com/NotASithLord/peerdLast scanned: 6/25/2026
{
"issues": [
{
"type": "npm-audit",
"message": "fx-runner: Vulnerability found",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "shell-quote: shell-quote quote() does not escape newlines in object .op values",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "tmp: tmp: Type-confusion bypass of _assertPath allows path traversal via non-string prefix/postfix/template",
"severity": "high"
},
{
"type": "npm-audit",
"message": "web-ext: Vulnerability found",
"severity": "critical"
}
],
"status": "FAILED",
"scannedAt": "2026-06-25T07:41:29.240Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how peerd compares with popular alternatives.
peerd is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by NotASithLord. The first AI agent harness native to the browser. A browser extension that runs a full agent loop where you already work: it drives your tabs, spins up sandboxed compute (JS notebooks, WASM Linux VMs, client-side apps), and shares what it builds peer-to-peer. BYOK, no backend, no telemetry. It has 410 GitHub stars.
peerd failed SkillsLLM's automated security scan, which flagged one or more high-severity issues. Review the Security Report section carefully before using it.
Clone the repository with "git clone https://github.com/NotASithLord/peerd" and add it to your Claude Code skills directory (see the Installation section above).
peerd is primarily written in JavaScript. It is open-source under NotASithLord 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 peerd against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ 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.
peerd is the first general-purpose agent runtime built directly on browser primitives: Workers, origins, sandboxing, OPFS, WASM/WASI, WebRTC, WebAuthn, and WebExtensions. It runs completely inside Chrome and Firefox, with your tabs, signed-in sessions, web apps, and local compute.
While agent platforms are trying to pull the browser into the harness. peerd pulls the harness into the browser.
For actual inference you can choose a supported hosted model provider, a local model using localhost, or check out preliminary support for local WebGPU models (we're keeping an eye on WebNN as well).
No peerd account, hosted browser, or tool-server connection is required. Current builds send no product telemetry to peerd.
Install · peerd.ai · Architecture · Security
registry.js, including BYOK cloud
adapters and keyless local options.Local agents can access your whole computer. Remote agents live in someone else's. The browser is the alternative: local capability behind security boundaries hardened over three decades.
peerd uses those boundaries. Page work goes to separate actors with only the tools for that tab or environment. Credentials, network rules, confirmations, and audit stay with the extension. Its defense-in-depth design assumes unsafe content will eventually get past a filter.
peerd supports Chromium and Firefox. Firefox runs actors in dedicated workers and uses visible Notebooks for JavaScript compute. Features that need Chrome's offscreen document host are removed from Firefox controls and model tools before use. Firefox preview builds omit dweb until Firefox has a mesh host.
Apps and WebVMs run on Chrome. Apps have no ambient network access. Remote resources, fetches, WebRTC, forms, and external document navigation are blocked. External HTTP and HTTPS links require user confirmation.
Concrete browser capability gaps, their upstream issues, and the tests required
to remove each guard are tracked in
docs/BROWSER-COMPATIBILITY.md.
The code is the source of truth for current behavior. Start with
CLAUDE.md, then read the relevant module under extension/.
peerd uses browser isolation, narrow tool exposure, service-worker policy gates, and explicit egress controls. The main agent delegates environment work to keyless actors. On Chrome and Firefox, non-orchestrator agent loops run in separate dedicated worker heaps. If the browser cannot prove that boundary, the actor request does not run and performs no work on its target.
Network behavior depends on the operation. Model calls, web reads, runtime asset
loads, sandbox traffic, and preview dweb traffic use different scoped paths and
policies. See SECURITY.md and the
threat model for the current boundaries and
known limitations.
chrome://extensions.extension/ directory.Reload the extension from chrome://extensions after source changes.
Firefox needs a Firefox-specific package. Do not load the checked-in Chrome
development manifest. Use a Firefox version at or above the minimum declared in
the channel patch under manifests/. That floor tracks the document-bound
scripting support used by browser tools.
bun run package -- --channel=preview --browser=firefox --no-sign
Open about:debugging#/runtime/this-firefox, choose Load Temporary Add-on,
and select artifacts/peerd-preview-firefox.xpi. Temporary add-ons must be
loaded again after Firefox restarts. Browser and channel transforms are defined
by the packaging scripts.
See GitHub Releases for current artifacts. Store and preview builds differ. Store builds omit the dweb. Preview builds include it and may enable additional automation features. The packaging code is the authority for each browser and channel.
Only vault secrets and protected security records are covered by the vault encryption boundary. Other local extension state follows the storage rules in the security documentation.
The extension has five main modules. Each module exposes its public API through
its index.js.
| Module | Role |
|---|---|
peerd-provider |
Model adapters and response formatting |
peerd-egress |
Vault, network policy, denylist, and audit |
peerd-engine |
WebVM, Notebook, App, and headless execution |
peerd-runtime |
Agent loop, actors, tools, sessions, memory, and permissions |
peerd-distributed |
Preview-only peer-to-peer network and dwapps |
The extension chassis lives in background/, offscreen/, sidepanel/,
engine-tabs/, permissions/, shared/, and related support directories.
Host placement and the cold-worker rule are documented in
docs/EXTENSION-HOSTS.md.
The source extension is vanilla JavaScript with ES modules and runs directly
when loaded unpacked. There is no development bundler, transpiler, watcher, or
generated runtime tree. Release packaging uses Bun only on its disposable
staging copy to remove whitespace/comments from authored modules in the static
service-worker and Chrome offscreen cold graphs. It preserves module boundaries,
binding names, lazy imports, and every vendored byte. Pass --no-minify to
bun run package -- ... when a readable diagnostic artifact is useful.
bun install
bun run gen:dev
bun test ./tests
bun scripts/cdp/run-inbrowser-tests.mjs
bun run typecheck
bun run lint
bun run e2e:verify
bun run preflight
There are three test surfaces: