6.9 KiB
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 marketplacedevops-skills) — descartado a propósito, no por falta de calidad. Terraform ya se maneja aparte víahashicorp/agent-skillsen la sesióncloud-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:
- 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). - Playwright vía Docker en la NAS (el workaround ya validado este
mismo lab, ver
.browser-scratch/README.md) contrashop.cruzcloud.net/staging.cruzcloud.netreales.
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.