- TypeScript 83.3%
- Python 8.9%
- JavaScript 3.9%
- Shell 3.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| bin | ||
| extensions | ||
| git-hooks | ||
| intercom | ||
| prompts | ||
| scripts | ||
| skills | ||
| tests | ||
| .gitignore | ||
| APPEND_SYSTEM.md | ||
| check.sh | ||
| debate.json | ||
| forks.json | ||
| hooks.sh | ||
| install.sh | ||
| keybindings.json | ||
| LICENSE | ||
| mcp.json | ||
| mcp.json.example | ||
| models.json | ||
| NOTICE.md | ||
| presets.json | ||
| README.md | ||
| settings.json | ||
| smoke.sh | ||
pi-config-public
Configuración pública y reproducible para @earendil-works/pi-coding-agent 1.4.0.
Esta versión es una exportación saneada de una configuración personal: no incluye
credenciales, estado de sesión, direcciones de red privadas, nombres de máquinas ni
historial git.
Qué incluye
| Ruta | Qué es |
|---|---|
presets.json |
Modos de trabajo (code, plan, review, worker, local/cloud genéricos) |
models.json |
Endpoints de ejemplo para proveedores propios (localhost por defecto) |
settings.json |
Defaults, compactación, paquetes npm |
APPEND_SYSTEM.md |
Reglas globales que carga Pi en cada turno |
extensions/ |
20 extensiones; las que dependen de infraestructura privada son opt-in |
skills/ |
8 skills de documentación y procedimientos |
prompts/ |
Plantillas de prompt |
bin/ |
Wrappers y utilidades (pi, pi-revisa-cambios, pi-coste stub) |
git-hooks/ |
Hook commit-msg opt-in (no se instala global por defecto) |
mcp.json.example |
Ejemplo de servidores MCP; el mcp.json activo arranca vacío |
intercom/config.json |
Configuración de intercom (opcional) |
Qué NO incluye
auth.jsonni ninguna credencial.sessions/,npm/,telemetria.csv, cachés ni estado del agente.- Endpoints de red privada ni nombres de hosts personales.
Requisitos
Node.js >=22.19.0, npm, Python 3, Git y shell POSIX (Bash para bin/pi).
Añade ~/.local/bin a PATH. El wrapper usa PI_CLI_JS si está definido;
en otro caso resuelve el CLI con npm root -g. No depende de mise.
Los cuatro paquetes npm están fijados en settings.json a las mismas versiones
que aparecen abajo; instalarlos requiere acceso a npm.
Instalación rápida
# 1. Clona en donde prefieras
git clone https://git.okvicio.club/vicio/pi-config-public.git ~/Projects/pi-config-public
# 2. Instala enlaces simbólicos; rechaza cualquier destino en conflicto
cd ~/Projects/pi-config-public
./install.sh
# 3. Instala el paquete base y las extensiones npm con las versiones exactas
npm install -g @earendil-works/pi-coding-agent@1.4.0
pi install npm:cc-safety-net@2.7.0
pi install npm:pi-claude-subscription@0.2.4
pi install npm:pi-web-access@0.45.0
pi install npm:pi-intercom@0.18.1
# 4. Configura credenciales
pi # dentro de la interfaz, usa /login para conectar tu provider
# 5. Si tienes endpoints locales, edita models.json
# Ejemplo: baseUrl "http://localhost:8080/v1" con apiKey "local".
La instalación enlaza archivos y directorios al checkout: consérvalo en su ruta.
Editar un archivo enlazado desde el agent-dir modifica este checkout. Para otro
destino: PI_BIN_DIR=/ruta/bin ./install.sh /ruta/agent.
pi auth --help describe consultas de credenciales/readiness; el login se hace
con /login dentro de Pi, según la documentación instalada de 1.4.0.
Los presets qwen-max y ctf-qwen-max usan local-proxy/qwen3.8-flash-max mediante un proxy
de ejemplo en http://localhost:8317/v1; configura tu propio proxy antes de usarlos.
Seguridad y permisos
- No se instala ningún hook global automáticamente. Si quieres el revisor de
commits, ejecuta
./install.sh --with-hooks(o enlaza manualmentegit-hooks/commit-msg). - No se sobreescribe
~/.pi/agentsin avisar.install.shrechaza conflictos antes de escribir. Para reemplazarlos usa./install.sh --force: guarda cada destino con un sufijo.bak.<id único>. RespetaPI_CODING_AGENT_DIR,PI_BIN_DIRyPI_HOOKS_DIR; los enlaces existentes que ya apuntan al checkout no cambian. Rechaza padres que sean enlaces o no sean directorios incluso con--force. - Cloud = dinero real. Cada preset de nube consume tu cupo/tarjeta. Revisa
models.jsonypresets.jsonantes de usarlos. - Extensiones opt-in:
strata-engine.ts: requierePI_STRATA_DIRoPI_STRATA_URL.cuota.ts: requierePI_CUOTA_ENABLED=1y lee credenciales de providers.forks-herdr.ts: requiereherdry un panel (HERDR_PANE_ID).
- MCP:
mcp.jsonarranca vacío. Copiamcp.json.exampley pon tus propios comandos/argumentos. El ejemplo del vault apunta a/path/to/your/vault_mcp.py; no a ningún sistema privado.
Consultas automáticas cloud
Desactivadas por defecto. PI_AUTO_CLOUD=1 habilita únicamente los callbacks
automáticos de compacta, revisa y bloqueo: compacta envía la conversación
a resumir, el prefijo de turno y el resumen anterior; revisa al cerrar envía el
objetivo, rama, diff HEAD y nombres de archivos nuevos (hasta 14 000 caracteres);
bloqueo envía el motivo y los últimos seis mensajes de usuario/asistente (hasta
6 000 caracteres). Pueden contener código o información sensible y consumir
cupo o generar cargos del proveedor configurado.
Este consentimiento es independiente de PI_CUOTA_ENABLED=1 y de configurar
credenciales: ninguno de ellos activa las consultas automáticas. Los comandos
explícitos como /revisa, /bloqueo (estado/reset), /debate y /paralelo
siguen disponibles; los que consultan modelos envían su contexto y pueden costar.
El hook de revisión de commits es otro opt-in: ./install.sh --with-hooks.
Una vez instalado, puede enviar el diff staged y primera línea del mensaje de commit al revisor
y consumir cupo en cada commit; no depende de PI_AUTO_CLOUD.
Las credenciales de cada proveedor se configuran manualmente con /login o
el mecanismo del proveedor; el instalador no las crea ni las copia.
Tests
node tests/audit.cjs # regresiones locales de seguridad y gates; usa jiti instalado con Pi
python3 tests/wrapper.py # resolución real del CLI y forwarding
./tests/install.sh # instala en un HOME/agent-dir aislado y verifica
./tests/scan.sh # busca referencias privadas, secretos o paths absolutos
./tests/smoke.sh # RPC get_commands y registro de worker; sin prompts ni auth
./tests/smoke-negative.sh # rechaza CLI inexistente, falso, con errores o salida no cero
Ver tests/ para detalles.
Contribuir
Si haces commit en este repo público, usa una dirección noreply para no exponer
tu email personal.
Aviso legal
Las contribuciones originales están bajo MIT, Copyright 2026 vicio: ver LICENSE.
Ver NOTICE.md para atribuciones y licencia del código de terceros.