Volver a actualizaciones
Nuevo releaseJul 27, 2026

peerd v0.2.8

El primer arnés de agente de IA nativo del navegador. Una extensión de navegador que ejecuta un bucle de agente completo donde ya trabajas: maneja tus pestañas, inicia computación en entorno aislado (cuadernos JS, máquinas virtuales WASM Linux, aplicaciones del lado del cliente) y comparte lo que construye de igual a igual. BYOK, sin backend, sin telemetría.

Compartir


peerd

CI License: Apache 2.0 Status: 0.x experimental Manifest V3 Security policy

peerd es una extensión de navegador que ejecuta un agente de IA en el navegador. Puede trabajar con pestañas, crear entornos de cómputo aislados y construir aplicaciones de navegador locales. Tú eliges el proveedor de modelos y proporcionas cualquier clave necesaria. peerd no tiene cuenta, ni backend de agente alojado, ni telemetría. Las solicitudes de modelo van directamente desde la extensión al proveedor que elijas.

Estado

peerd es una beta 0.x experimental. Es probable que haya cambios que rompan la compatibilidad. Los formatos de almacenamiento y el comportamiento del producto pueden cambiar. Puede controlar páginas del navegador y utilizar claves de API, por lo que debes revisar el modelo de seguridad antes de usarlo con datos sensibles.

El código es la fuente de verdad para el comportamiento actual. Comienza con CLAUDE.md y luego lee el módulo correspondiente en extension/.

Qué hace

  • Ejecuta un bucle de agente en una extensión de Chrome o Firefox.
  • Lee y controla pestañas del navegador mediante actores por entorno.
  • Ejecuta WebVMs de Linux, Notebooks de JavaScript, Apps de navegador y scripts headless.
  • Admite proveedores de modelos en la nube y locales. La lista actualizada está en extension/peerd-provider/registry.js.
  • Almacena los secretos de los proveedores en una bóveda cifrada local.
  • Incluye una dweb opcional peer-to-peer en las compilaciones de vista previa.

Las Apps y WebVMs actualmente se ejecutan solo en Chrome. Las Apps no tienen acceso a la red circundante. Los recursos remotos, las peticiones fetch, WebRTC, los formularios y la navegación a documentos externos están bloqueados. Los enlaces HTTP y HTTPS externos requieren confirmación del usuario.

Modelo de seguridad

peerd utiliza aislamiento del navegador, exposición limitada de herramientas, puertas de política de service worker y controles de egreso explícitos. El agente principal delega el trabajo de entorno a actores sin claves. En Chrome, los bucles de agente no orquestadores se ejecutan en heaps de worker separados. Firefox usa un respaldo más limitado donde las API del navegador no ofrecen las mismas características de aislamiento.

El comportamiento de red depende de la operación. Las llamadas de modelo, las lecturas web, las cargas de activos en tiempo de ejecución, el tráfico de sandbox y el tráfico dweb de vista previa utilizan diferentes rutas y políticas con ámbitos propios. Consulta SECURITY.md y el modelo de amenazas para conocer los límites actuales y las limitaciones conocidas.

Instalación

Chrome desde el código fuente

  1. Clona el repositorio.
  2. Abre chrome://extensions.
  3. Habilita el modo de desarrollador.
  4. Elige Load unpacked y selecciona el directorio extension/.

Recarga la extensión desde chrome://extensions después de cambiar el código fuente.

Firefox desde el código fuente

Firefox necesita un paquete específico de Firefox. No cargues el manifiesto de desarrollo de Chrome incluido en el repositorio.

bun run package -- --channel=preview --browser=firefox --no-sign

Abre about:debugging#/runtime/this-firefox, elige Load Temporary Add-on y selecciona artifacts/peerd-preview-firefox.xpi. Los complementos temporales deben volver a cargarse después de reiniciar Firefox. Las transformaciones de navegador y canal están definidas por los scripts de empaquetado.

Paquetes de lanzamiento

Consulta GitHub Releases para ver los artefactos actuales. Las compilaciones de tienda y de vista previa difieren. Las compilaciones de tienda omiten la dweb. Las de vista previa la incluyen y pueden habilitar características adicionales de automatización. El código de empaquetado es la autoridad para cada navegador y canal.

Primera ejecución

  1. Abre peerd desde la barra de herramientas del navegador.
  2. Crea y desbloquea la bóveda local. El desbloqueo con frase de contraseña está siempre disponible. El desbloqueo con passkey depende del soporte de WebAuthn PRF en el navegador y el dispositivo.
  3. Abre Configuración y añade una clave de proveedor o elige un proveedor local compatible.
  4. Selecciona un modelo e inicia un chat.

Solo los secretos de la bóveda y los registros de seguridad protegidos están cubiertos por el límite de cifrado de la bóveda. El resto del estado local de la extensión sigue las reglas de almacenamiento de la documentación de seguridad.

Arquitectura

La extensión tiene cinco módulos principales. Cada módulo expone su API pública a través de su index.js.

MóduloRol
peerd-providerAdaptadores de modelo y formato de respuestas
peerd-egressBóveda, política de red, lista de bloqueo y auditoría
peerd-engineEjecución de WebVM, Notebook, App y headless
peerd-runtimeBucle de agente, actores, herramientas, sesiones, memoria y permisos
peerd-distributedRed peer-to-peer y dwapps solo para vista previa

El chasis de la extensión se encuentra en background/, offscreen/, sidepanel/, engine-tabs/, permissions/, shared/ y otros directorios de soporte relacionados.

Desarrollo

La extensión distribuida es JavaScript puro (vanilla) con módulos ES y sin empaquetado ni transpilación. Bun se utiliza para pruebas, generación, empaquetado y verificaciones de lanzamiento.

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

Hay tres superficies de prueba:

  • Pruebas de Bun para lógica pura.
  • Pruebas en el navegador para la integración de la extensión y el navegador.
  • E2E en Chrome en vivo y verificación visual para flujos completos.

Para cambios de interfaz de usuario, ejecuta bun run e2e:verify, inspecciona scripts/cdp/artifacts/result.json y revisa las capturas de pantalla generadas.

Los archivos generados no deben editarse manualmente. En particular, extension/manifest.json y extension/shared/channel-config.js provienen de las fuentes de manifiesto y empaquetado. CI comprueba que no haya desviaciones.

Lee CONTRIBUTING.md antes de modificar el código.

Documentación

Los registros de diseño en docs/design/ son propuestas puntuales en el tiempo. Explican decisiones pasadas y trabajo planificado. No anulan el código actual.

Dependencias y licencia

Las dependencias de tiempo de ejecución están incluidas en extension/vendor/. Sus registros de fuente, versión, licencia e integridad se encuentran en los archivos SOURCE.txt adyacentes y en extension/vendor/vendor.lock.json.

peerd está licenciado bajo la Apache License 2.0. Los componentes incluidos conservan sus propias licencias. CheerpX es un runtime propietario proporcionado por Leaning Technologies y no está cubierto por la licencia Apache de peerd.

Categorías