Saltar a contenido

Plugins y subagentes de Claude Code (sesión "lab")

Inventario de qué plugins/skills se instalaron en la sesión principal lab (no cloud-practice, que sigue su propia línea de práctica multi-cloud — ver ADR 0012) y qué subagentes propios se configuraron, con la fuente real de cada uno y por qué se aceptó o se descartó.

Por qué esto queda documentado como el resto del lab

Dos frentes reales motivaron esto: (a) trabajo visual del storefront ARI Shopping — ADR 0008 ya costó tres ciclos completos de implementar-y-descartar una identidad en producción por no verla renderizada antes de aprobarla; (b) crecimiento de habilidades de Platform Engineering/DevOps. Un plugin instala instrucciones que Claude sigue automáticamente, algunos con hooks que se ejecutan sin pedir confirmación en cada uso — se aplicó la misma disciplina de verificación que el resto del lab: quién publica (Anthropic vs comunitario), qué permisos/hooks declara, y popularidad como señal de confianza, antes de instalar cualquiera que no fuera 100% de Anthropic.

Plugins instalados

Plugin Marketplace Publica de verdad Hooks Notas
frontend-design claude-plugins-official Anthropic (verificado en plugin.json) Ninguno Solo skills, sin red externa
context7 claude-plugins-official Upstash (tag community-managed — está hospedado en el catálogo oficial, no publicado por Anthropic) Sin hooks, pero es un MCP que manda cada consulta al servidor remoto de Upstash (mcp.context7.com) Aceptado con esa salvedad explícita de datos saliendo a un tercero
superpowers claude-plugins-official Jesse Vincent (obra/superpowers, MIT, 288k+ ⭐ en GitHub) — NO es de Anthropic pese a estar listado en el catálogo oficial Sí: SessionStart corre un script que inyecta contexto en cada sesión nueva (revisado: solo lee su propio skill local, sin red ni nada destructivo) Aceptado con esa salvedad — cambia comportamiento de arranque sin pedir confirmación cada vez
gitops-workflows devops-skills (ahmedasmar/devops-claude-skills) Ahmad Asmar (comunitario) Ninguno (skill pura, sin ejecución automática)
k8s-troubleshooter devops-skills Ahmad Asmar Ninguno
ci-cd devops-skills Ahmad Asmar Ninguno
monitoring-observability devops-skills Ahmad Asmar Ninguno

Descartados, no instalados:

  • iac-terraform (del mismo marketplace devops-skills) — descartado a propósito, no por falta de calidad. Terraform ya se maneja aparte vía hashicorp/agent-skills en la sesión cloud-practice (ver ADR 0012 Fase 2); instalarlo acá también duplicaría/confundiría la fuente de verdad.
  • aws-cost-optimization (mismo marketplace) — no se pidió, se dejó afuera para no sumar alcance no solicitado.
  • theme-factory — investigado y descartado: el mismo nombre aparece en al menos 4 fuentes comunitarias distintas y no relacionadas entre sí (kivilaid, shipshitdev, composiohq, etc.), ninguna en el catálogo oficial de Anthropic. Sin una fuente única verificable, no se instaló nada con ese nombre.
  • ui-theme-designer (alternativa considerada del catálogo oficial) — es de SAP SE, específico para el SAP Fiori Design System / UI5 Web Components. No tiene nada que ver con el stack real de ARI Shopping (Next.js + Tailwind) — se descartó por no aplicar, no por falta de confianza.

Subagentes propios (~/.claude/agents/)

Tres subagentes con propósito acotado y tools restringidas, definidos como archivos markdown con frontmatter YAML (formato estándar de Claude Code — ver documentación oficial).

devsecops-auditor

Solo lectura y explicación del pipeline DevSecOps real (Gitleaks, Trivy, Semgrep, Syft, Cosign) en apps-registry/platform-infra/ scripts. tools: Read, Grep, Glob, Bash + disallowedTools: Write, Edit — nunca modifica código de producción, su único output es diagnóstico contra el YAML/config real, citando archivo:línea, nunca teoría genérica de CI/CD.

frontend-critic

Revisa visualmente un cambio del storefront antes de aprobarlo — formaliza la disciplina "simular antes de implementar" que costó tres ciclos de descarte en ADR 0008. Regla dura: si no puede ver el resultado renderizado en esa corrida puntual, el veredicto es "no puedo aprobar esto sin verlo", nunca un aprobado condicional.

Vía de verificación, en orden de preferencia: 1. Chrome DevTools / Claude in Chrome — hoy no disponible en esta sesión (corre headless dentro de tmux-host, sin navegador real conectado — mismo gotcha ya documentado para Claude in Chrome en general). 2. Playwright vía Docker en la NAS (el workaround ya validado este mismo lab, ver .browser-scratch/README.md) contra shop.cruzcloud.net/staging.cruzcloud.net reales.

Usa la skill frontend-design (oficial, ver tabla de arriba) como marco de criterio de calidad visual.

cloud-cost-auditor

Definido de antemano, a propósito, sin nada que auditar todavía. Necesita los MCP de GCP/Azure que se configuran en la sesión cloud-practice (ADR 0012) para funcionar — no va a tener recursos reales que revisar hasta que esa línea de trabajo pase de la Fase 1. Su propio system prompt tiene la regla dura de decir explícitamente "no tengo nada que auditar todavía" en vez de inventar un análisis si lo invocan antes de tiempo. No es un bloqueante para nada de lo demás, solo queda listo para cuando aplique.

Alcance y persistencia de la instalación

Los 7 plugins quedaron en scope: user (confirmado con claude plugin list), no a nivel de proyecto de un repo específico. Los 3 subagentes viven en ~/.claude/agents/ (también scope de usuario, ubicación estándar según la doc oficial).

Verificado en vivo que sobrevive a un reinicio del contenedor, mismo criterio que el resto de la configuración persistente de tmux-host (ver Sesión tmux persistente): stat -c '%d' /root/.claude y stat -c '%d' /DATA/AppData/k3d-lab-v3/claude-code-home devuelven el mismo device ID — es el mismo bind mount ya validado para login/confianza de carpeta, no un directorio efímero del contenedor.

Gotcha encontrado en vivo: tanto los plugins como los subagentes nuevos no quedaron activos en la misma sesión donde se instalaron/ crearon — la doc oficial de subagentes dice que se cargan sin reinicio, excepto la primera vez que se crea el directorio ~/.claude/agents/ (que no existía antes en este lab). Confirmado en vivo: invocar devsecops-auditor en la misma sesión dio Agent type 'devsecops-auditor' not found. Ambos (plugins y subagentes) quedan pendientes de confirmar activos recién en el próximo arranque real de la sesión — no es una falla de instalación, es el comportamiento documentado.