IPC entre Purutos
このコンテンツはまだ日本語訳がありません。
Qué resuelve esta receta
Crear un Puruto con IPC (--ipc true) y dejarlo listo para pruebas locales de delegación controlada.
Prerrequisitos
- Framework
puruto/ - Python 3.10+
- Conocer la base de IPC agéntico
Resultado esperado
Al final tendrás un repo con:
.puruto-ipc.jsonipc.pyinvoker.py.claude/skills/call/SKILL.md
y una configuración inicial de allowlists lista para editar.
Paso 1. Genera un Puruto con IPC
python3 .claude/skills/puruto-generator/scripts/generate.py \ --name puruto-demo-ipc \ --description "Demo con delegación IPC" \ --ipc truePaso 2. Verifica artefactos generados
cd ~/purutos/puruto-demo-ipcls -la .puruto-ipc.json ipc.py invoker.pyls -la .claude/skills/call/SKILL.mdPaso 3. Revisa la configuración base
El scaffold genera .puruto-ipc.json con una configuración deny-by-default:
enabled: trueowner: <nombre-del-repo>max_hops: 2allowed_targets: []allowed_actions: {}
Paso 4. Añade una allowlist mínima (ejemplo)
Edita .puruto-ipc.json y añade un target permitido:
{ "enabled": true, "owner": "puruto-demo-ipc", "max_hops": 2, "default_timeout_sec": 120, "allowed_targets": ["puruto-data"], "allowed_actions": { "puruto-data": ["read"] }}Paso 5. Valida la estructura y los tipos
python3 /Users/pepetox/Documents/01-code/puruto/.claude/skills/validate/scripts/validate.py \ ~/purutos/puruto-demo-ipc --jsonEsperado:
ok: true- sin errores
missing-ipc-* - sin errores
ipc-config-invalid-type
Paso 6. Prueba local del scaffold IPC (opcional)
Si el scaffold ipc.py está preparado en tu caso:
python3 ipc.py --target puruto-data --action read --prompt "Lee el registro"Paso 7. Prueba con la skill /call (modo agente)
Abre el repo en tu agente y prueba algo como:
/call puruto-data read "Lee el registro"La skill scaffold debe:
- leer
.puruto-ipc.json - validar allowlists
- respetar
max_hops - devolver error explícito si el target/acción no está permitido
Errores comunes
missing-ipc-skill
Causa:
- existe
.puruto-ipc.json, pero falta.claude/skills/call/SKILL.md
missing-ipc-runtime
Causa:
- existe
.puruto-ipc.json, pero faltaipc.pyoinvoker.py
ipc-config-invalid-type
Causa:
allowed_targetsno es listaallowed_actionsno es objeto JSON
Buenas prácticas
- Empieza con allowlists mínimas
- Mantén
max_hopsbajo - No pongas secretos en prompts IPC
- Revalida tras tocar
.puruto-ipc.json
Siguientes pasos
- → IPC agéntico
- → Contratos runtime (MVP)
- → Artefactos runtime locales (MVP)
- → Seguridad y secretos
- → Errores y códigos de validación
Última verificación
Contenido contrastado con generate.py, template .puruto-ipc.json.tpl, validate.py y snapshots IPC del generador el 25 de febrero de 2026.