agentsclimarketplace

Check architecture

Skill Proportione/proportione-plugins/plugins/check-architecture/skills/check-architecture

Claude Code plugin marketplace + playbook. 9 QA skills (review, security, architecture, performance, WordPress, Terraform) and 8 production guides from an AI-first consultancy.

Install
npx -y skills add Proportione/proportione-plugins --skill check-architecture

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

5.8 KB, ~1.7k tokens by cl100k_base, as published. Nobody here has run it

Skill: Check Architecture

Validacion de que el codigo respeta las convenciones y patrones arquitectonicos definidos para cada proyecto de Proportione.

Target: $ARGUMENTS (proyecto, directorio, o PR/commit para verificar solo los cambios)

Configuration

This skill references external paths. Set these environment variables or replace inline:

  • $QA_PROPORTIONE_DIR — Root of the QA_Proportione repo (e.g. /path/to/QA_Proportione)

Flujo

PASO 1 — Cargar convenciones del proyecto

  1. Lee el CLAUDE.md del proyecto para extraer:
    • Estructura de carpetas esperada
    • Convenciones de naming
    • Patrones de separacion de capas
    • Reglas de imports/dependencias
  2. Lee $QA_PROPORTIONE_DIR/CLAUDE.md para contexto transversal.
  3. Si $ARGUMENTS es un PR/commit, obten el diff para acotar el analisis.

PASO 2 — Analisis por proyecto

Aplica las reglas especificas segun el proyecto detectado:

automation-brain (Python + Terraform)

Convenciones del CLAUDE.md:

  • clientes/{nombre}/ por cada cliente
  • comun/resources/ para base de conocimiento compartida
  • comun/tooling/ para herramientas comunes
  • Nombres en kebab-case y minusculas
  • Servicios: clientes/*/proyectos/servicios/
  • Docs: clientes/*/docs/
  • Tools: clientes/*/tools/
  • Cada servicio con su package.json, Dockerfile, deploy.sh
  • .env nunca commiteado (usar .env.example)

Verificar:

  • Los ficheros nuevos estan en la carpeta correcta del cliente?
  • El codigo compartido esta en comun/ y no duplicado en clientes?
  • Los nombres siguen kebab-case?
  • Los servicios tienen los 3 ficheros obligatorios?
  • Hay imports cruzados entre clientes? (no debe haberlos)
  • Las herramientas reutilizables estan en comun/tooling/?

Aviaria / waze-del-aire (Python + React + Streamlit)

Estructura monorepo:

apps/
  platform-api/       # FastAPI backend
  military-dashboard/ # Streamlit dashboard
  frontend-pwa/       # React PWA
packages/
  core-logic/         # Logica de negocio (framework-agnostic)

Verificar:

  • core-logic es independiente de framework? (sin imports de FastAPI, Streamlit o React)
  • La logica de negocio esta en core-logic, no en las apps?
  • Los endpoints de platform-api son thin wrappers que delegan a core-logic?
  • military-dashboard no hace queries directas a la DB? (debe usar la API o core-logic)
  • frontend-pwa consume solo la API REST, no accede a internals?
  • Los modelos PostGIS estan en core-logic?

WordPress (PHP + Elementor)

Verificar por sitio:

  • Se usa child theme, no se modifica el theme padre?
  • Custom code esta en mu-plugins o child theme functions.php?
  • No hay logica de negocio en templates de Elementor?
  • Los snippets de WPCodeBox/Code Snippets estan documentados?
  • Las custom post types se registran en un plugin propio, no en el theme?

IaC Aveiro (Terraform + Ansible)

Estructura esperada:

terraform/
  main.tf, providers.tf, variables.tf
  modules/             # Modulos reutilizables
ansible/
  site.yml
  inventory/hosts.yml
  roles/               # Un rol por servicio

Verificar:

  • Los recursos de Terraform estan modularizados? (no todo en main.tf)
  • Las variables sensibles usan sensitive = true?
  • Cada rol de Ansible tiene tasks/main.yml, defaults/main.yml?
  • El inventario no tiene passwords en claro?
  • Los VLANs coinciden con el diseno? (10=servers, 20=dev, 50=backup, 99=WireGuard)

porqueviven-app (Nuxt + Firebase)

Verificar:

  • Los composables estan en composables/?
  • Los stores estan en stores/?
  • Las pages no contienen logica de negocio compleja?
  • Los componentes son reutilizables o estan acoplados a una page?
  • Firebase config no esta hardcodeada?

PASO 3 — Dependencias y acoplamiento

Para cualquier proyecto, verificar:

# Python: buscar imports circulares
grep -rn "^from\|^import" [directorio] | sort | uniq -c | sort -rn | head -20

# JavaScript: buscar imports entre capas que no deberian cruzarse
grep -rn "from '.*\.\./\.\." [directorio] --include="*.js" --include="*.ts" --include="*.tsx"
  • Hay dependencias circulares entre modulos?
  • Hay imports que cruzan capas? (UI importando DB, API importando UI)
  • El grafo de dependencias fluye en una direccion? (UI -> API -> Core -> DB)
  • Hay modulos "god object" que importan de todas partes?

PASO 4 — Naming y organizacion

  • Los ficheros siguen la convencion del proyecto? (kebab-case, camelCase, PascalCase segun stack)
  • Los directorios tienen un proposito claro? (no carpetas genericas como utils/, misc/, stuff/)
  • Hay ficheros en la raiz que deberian estar en subdirectorios?
  • Los ficheros de configuracion estan donde se espera? (.env.example, Dockerfile, etc.)

PASO 5 — Generar informe

## Architecture Review — [proyecto] — [fecha]

### Resumen
[Nivel de adherencia: ALTA/MEDIA/BAJA]
[1-2 frases sobre el estado arquitectonico]

### Convenciones verificadas
| Regla | Estado | Detalle |
|-------|--------|---------|
| Estructura de carpetas | OK/DRIFT | [que viola] |
| Separacion de capas | OK/DRIFT | [imports cruzados] |
| Naming conventions | OK/DRIFT | [ficheros que no cumplen] |
| Dependencias | OK/CIRCULAR | [ciclos encontrados] |

### Drift detectado
1. **[fichero]** — [descripcion del drift]
   - Deberia estar en: [ubicacion correcta]
   - O deberia seguir: [patron correcto]

### Recomendaciones
1. [Refactor mas urgente]
2. [Siguiente paso]

Notas

  • El drift arquitectonico es normal y gradual. No alarmar por detalles menores.
  • Priorizar violaciones que afectan mantenibilidad (imports cruzados, logica en capa incorrecta) sobre naming.
  • Si el proyecto no tiene CLAUDE.md, sugerir crearlo con las convenciones observadas.
  • Para proyectos pequenos (OpenClaw, Hispanidad), ser pragmatico: no exigir arquitectura enterprise.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.