six-hats: Motor Multi-Agente de Razonamiento Paralelo y Servidor MCP
Motor multi-agente de deliberación y razonamiento paralelo basado en la metodología de los Seis Sombreros para Pensar (Six Thinking Hats) de Edward de Bono, diseñado para revisión de código, diseño arquitectónico, auditoría adversarial y depuración en Antigravity IDE y terminales CLI.
1. Fundamentos metodológicos y arquitectura Agent-Native
La técnica de los Seis Sombreros descompone el razonamiento técnico en modos cognitivos independientes y especializados para eliminar sesgos, evitar bloqueos y prevenir la interferencia de ego en la toma de decisiones:
- ⚪ Sombrero Blanco: Hechos puros, extracción de AST políglota con Tree-sitter, complejidad ciclomática de McCabe, complejidad cognitiva (SonarSource), análisis de Git Churn / Hotspots (
pydriller) y cobertura de pruebas. - 🟢 Sombrero Verde: Creatividad, pensamiento lateral, alternativas paradigmáticas divergentes (Zero-Copy, reactivo, funcional monádico ROP con
Resulty tipado estructural PEP 544Protocol) y propuestas de remediación para bucles de feedback. - ⚫ Sombrero Negro: Juicio crítico, auditoría adversarial de vulnerabilidades (CWE/OWASP), detección de secretos por Entropía de Shannon (
trufflehog) y generación de Invariantes de Prueba por Propiedades (hypothesisfuzzing). - 🟡 Sombrero Amarillo: Optimismo lógico, cálculo de valor, aceleración de throughput (20 % a 40 %) y detección estática de trampas asintóticas Big-$O$ ($O(n^2)$ por
pop(0), búsquedas lineales en bucles o concatenación cuadrática). - 🔴 Sombrero Rojo: Experiencia de desarrollo (DX), ergonomía a las 3:00 AM, detección de confusión léxica de variables (
rapidfuzzLevenshtein), índice de saturación visual y filtro anti-sobreingeniería Ponytail (Escalera de la Pereza y Regla de los Tres Golpes). - 🔵 Sombrero Azul: Orquestación en Grafo Dialéctico Cíclico (
langgraph), bucle de reversión ante riesgos críticos, telemetría estructurada OpenTelemetry Spans, veto de simplicidad Ponytail y parche unificado real (Unified Diff condifflib).
Filosofía Agent-Native: Sin dependencia de APIs externas
A diferencia de servidores que encapsulan llamadas fijas a modelos de nube (antipatrón LLM Sandwich), six-hats está diseñado como un sustrato analítico determinista:
- Cero configuración de claves: No requiere
GEMINI_API_KEYni configuraciones de facturación de terceros. - Tu modelo favorito al mando: La inteligencia la aporta el modelo anfitrión con el que interactúas en tu entorno (Antigravity, Claude Desktop, Cursor, Ollama o ChatGPT).
- Prompts MCP Oficiales: Expone primitivas nativas de Prompts de MCP (
@app.prompt()) y directrices cognitivas estructuradas (agent_guidance) para que la IA anfitriona ejerza los roles de De Bono con la máxima precisión matemática y contextual.
2. Arquitectura del sistema y flujo en DAG
┌─────────────────────────┐
│ Sombrero Azul (Leader) │
│ Orquestador / DAG │
└────────────┬────────────┘
│
┌───────────────────────────┼───────────────────────────┐
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Blanco │ │ Verde │ │ Rojo │
│ Contexto/AST │ │ Ideación/ │ │ DX/Legibi- │
│ y Métricas │ │ Alternativas │ │ lidad │
└──────┬───────┘ └──────┬───────┘ └──────┬───────┘
│ │ │
└─────────────────────────┼─────────────────────────┘
│
┌───────────────┴───────────────┐
▼ ▼
┌──────────────┐ ┌──────────────┐
│ Amarillo │ │ Negro │
│ Viabilidad y │ │ Vulnerabili- │
│ Rendimiento │ │ dades / Bugs │
└──────────────┘ └──────────────┘
- Entrada: Archivo de código fuente (Python, TypeScript, Go o Rust), diff unificado de Git o requerimiento de arquitectura.
- Fase 1 (Datos fehacientes): El Sombrero Blanco extrae el árbol sintáctico con
tree-sitteroast, calculando complejidad ciclomática, cognitiva, índice de mantenibilidad y dependencias. - Fase 2 (Exploración creativa): El Sombrero Verde concibe alternativas paradigmáticas (funcional inmutable, reactivo basado en eventos o estructuras zero-copy).
- Fase 3 (Crítica paralela concurrente):
- El Sombrero Negro audita riesgos de inyección, credenciales expuestas, recursión y denegación de servicio.
- El Sombrero Amarillo proyecta ganancias de throughput y modernización idiomática.
- El Sombrero Rojo evalúa la fatiga cognitiva y aplica las reglas Ponytail contra la sobreingeniería (cálculo de bloat score y líneas redundantes).
- Fase 4 (Síntesis y consenso): El Sombrero Azul resuelve contradicciones, aplica el veto Ponytail si el bloat score supera el umbral, genera el dictamen ejecutivo y sintetiza el parche de código unificado.
3. Instalación y configuración
Instalación local con uv
# Crear entorno virtual e instalar en modo editable con herramientas de desarrollo
uv venv --python 3.13
source .venv/bin/activate
uv pip install -e ".[dev]"
Ejecución de la suite de pruebas
.venv/bin/pytest tests/ -v
4. Soporte políglota universal con Tree-sitter
El analizador sintáctico del Sombrero Blanco detecta automáticamente el lenguaje según la extensión y el contenido:
| Lenguaje | Extensiones | Parser Primario | Métricas Extraídas |
|---|---|---|---|
| Python | .py |
tree-sitter-python / ast nativo |
Funciones, clases, imports, complejidad McCabe y SonarSource |
| TypeScript | .ts, .tsx |
tree-sitter-typescript |
Funciones, clases, interfaces, imports y ramificaciones lógicas |
| JavaScript | .js, .jsx, .mjs |
tree-sitter-javascript |
Funciones, clases, módulos exportados y complejidad de control |
| Go | .go |
tree-sitter-go |
Funciones, structs, imports de paquetes y ramas if/for/switch |
| Rust | .rs |
tree-sitter-rust |
Funciones fn, struct, enum, módulos use y expresiones de control |
5. Uso de la interfaz de línea de comandos (CLI)
El comando six-hats (o su alias hats) ofrece herramientas enriquecidas con tablas de terminal, paneles coloreados y modos de integración continua:
Revisión completa de un archivo
six-hats review ruta/al/archivo.py
six-hats review backend/handler.go
six-hats review frontend/App.tsx
Revisión del git diff activo del repositorio
six-hats review --git-diff
Auditoría de sobreingeniería Ponytail (Escalera de la Pereza)
Audita un archivo para detectar código redundante, fábricas innecesarias, envoltorios vacíos y violaciones del principio YAGNI:
six-hats ponytail ruta/al/archivo.py
six-hats ponytail ruta/al/archivo.py --json
Debate dialéctico sobre una propuesta arquitectónica
six-hats debate "Migrar el pipeline de ingesta a Kafka distribuido"
Iniciar el servidor MCP en modo STDIO
six-hats mcp
6. Integración en CI/CD y compuertas de calidad
six-hats está preparado para integrarse en flujos de trabajo de GitHub Actions, GitLab CI o pre-commit hooks:
Salida estructurada JSON
six-hats review src/main.py --json
Exportación a estándar OASIS SARIF v2.1.0
Genera informes SARIF compatibles con GitHub Code Scanning, GitLab SAST y Azure DevOps:
six-hats review src/main.py --sarif report.sarif
Compuertas de calidad con --fail-on
Detiene la ejecución del pipeline con código de retorno 1 si se identifican riesgos de severidad igual o superior a la indicada:
# Falla si hay vulnerabilidades críticas de seguridad o fallos estructurales
six-hats review src/main.py --fail-on critical
# Falla si hay riesgos altos (complejidad ciclomática excesiva, race conditions, inyecciones)
six-hats review src/main.py --fail-on high
# Falla si el código presenta sobreingeniería severa según Ponytail
six-hats review src/main.py --fail-on bloat
Configuración con pre-commit
Agrega el gancho a tu .pre-commit-config.yaml:
repos:
- repo: local
hooks:
- id: six-hats-review
name: Six Hats Code Review
entry: six-hats review --fail-on high
language: system
files: \.(py|ts|tsx|js|jsx|go|rs)$
- id: six-hats-ponytail
name: Six Hats Ponytail Bloat Auditor
entry: six-hats ponytail
language: system
files: \.(py|ts|tsx|js|jsx|go|rs)$
7. Integración con Antigravity IDE y clientes MCP
En ~/.gemini/config/mcp_config.json:
{
"mcpServers": {
"six-hats": {
"command": "/home/pablo/Escritorio/SIX HATS/.venv/bin/six-hats",
"args": ["mcp"],
"env": {
"PYTHONIOENCODING": "utf-8",
"PYTHONPATH": "/home/pablo/Escritorio/SIX HATS/src"
}
}
}
}
Herramientas MCP expuestas
six_hats_review: Ejecuta el ciclo completo del DAG sobre un diff o archivo políglota, retornando telemetría de AST, propuestas del Sombrero Verde, auditoría del Sombrero Negro, beneficios del Sombrero Amarillo, evaluación DX/Ponytail del Sombrero Rojo y veredicto con parche unificado y directrices (agent_guidance) para la IA anfitriona.six_hats_debate: Lanza una confrontación dialéctica entre el Sombrero Negro y el Sombrero Verde moderada por el Sombrero Azul sobre una propuesta técnica.six_hats_quick_check: Análisis expedito sobre la tríada crítica: Blanco (Hechos), Negro (Riesgos) y Amarillo (Valor).six_hats_ponytail_audit: Auditoría estricta contra la Escalera de la Pereza de Ponytail para detectar sobreingeniería y código superfluo.
Prompts MCP Oficiales expuestos
El servidor implementa primitivas nativas de Prompts de MCP (@app.prompt()), disponibles en cualquier cliente compatible:
six_hats_deliberation: Protocolo maestro de deliberación secuencial y paralela con los Seis Sombreros.hat_green_creative: Protocolo para pensamiento lateral, inversión de supuestos y alternativas paradigmáticas.hat_black_adversarial: Protocolo para auditoría destructiva, análisis de límites y vector de ataque.hat_blue_synthesis: Protocolo de mediación dialéctica, veto Ponytail y síntesis de parche unificado.six_hats_debate: Debate dialéctico formal entre Sombrero Negro y Verde moderado por Sombrero Azul.
8. Subagentes para Antigravity y Entornos de Desarrollo
El directorio subagents/ contiene las especificaciones formales de roles listas para ser instanciadas como subagentes autónomos:
subagents/green_hat.md: Especialista en pensamiento lateral e innovación.subagents/black_hat.md: Auditor adversarial de seguridad y resiliencia.subagents/red_hat.md: Auditor de ergonomía a las 3:00 AM y veto Ponytail.subagents/blue_hat.md: Especialista en mediación de compromisos y generador de parches.subagents/orchestrator.md: Coordinador de la sesión multi-agente en DAG.
9. Ecosistema Multi-Plataforma: Claude Code, CLI, Multi-Agente, Hermes y Codex
six-hats está diseñado para integrarse de forma universal con cualquier asistente de desarrollo, CLI o arquitectura multi-agente:
A. Claude Code (CLI de Anthropic)
Claude Code detecta y utiliza automáticamente six-hats mediante el manifiesto .mcp.json en la raíz o mediante el comando oficial:
claude mcp add six-hats uvx --from git+https://github.com/elpabloultron/six-hats.git six-hats mcp
El archivo CLAUDE.md incluido en el repositorio instruye automáticamente al agente Claude para que aplique el protocolo de los 6 Sombreros e invoque las herramientas analíticas.
B. Autoconfiguración mediante el CLI de Six Hats
Puedes registrar automáticamente el servidor MCP en tus clientes locales favoritos:
# Instalar en Claude Code, Cursor y VS Code a nivel de proyecto:
six-hats plugin install all --scope project
# O configurar individualmente en tu entorno global:
six-hats plugin install claude --scope global
six-hats plugin install cursor --scope global
six-hats plugin install vscode --scope global
C. Exportación Dinámica de Esquemas (Function Calling)
Genera esquemas de herramientas sincronizados para cualquier framework o API:
# Formato OpenAI / Codex / Assistants API:
six-hats export-tools --format openai --output tools_openai.json
# Formato Anthropic Claude:
six-hats export-tools --format claude --output tools_claude.json
# Formato Nous Hermes (ChatML):
six-hats export-tools --format hermes --output tools_hermes.json
six-hats export-tools --format hermes-chatml
D. Modelos Nous Hermes y LLMs Locales (vLLM / Ollama / LM Studio)
El directorio integrations/hermes/ proporciona:
hermes_tools.json: Esquema completo de herramientas.system_prompt.txt: System prompt con bloques<tools>y directrices de De Bono.hermes_runner_example.py: Ejemplo ejecutable en Python.
E. OpenAI Codex y Frameworks Multi-Agente (LangGraph / CrewAI / AutoGen)
El directorio integrations/ incluye plantillas listas para producción:
integrations/openai_codex/agent_runner_example.py: Invocación nativa con OpenAI Function Calling.integrations/multi_agent/langgraph_six_hats.py: Nodo de deliberación y compuerta de aprobación para grafos multi-agente.integrations/multi_agent/README.md: Guía detallada de integración arquitectónica.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file six_hats-0.1.0.tar.gz.
File metadata
- Download URL: six_hats-0.1.0.tar.gz
- Upload date:
- Size: 66.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.12 {"installer":{"name":"uv","version":"0.12.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1661717dfc20319bda8b65194692b09068ad71cfb48fb61a50f47400fb246bb
|
|
| MD5 |
1089ecf9a25acd83d313f17fb250e948
|
|
| BLAKE2b-256 |
9fa4ef81f1909fb80cb7069ab48fbe63816dc9b6806bbfdc2a6e6a81df2140c1
|
File details
Details for the file six_hats-0.1.0-py3-none-any.whl.
File metadata
- Download URL: six_hats-0.1.0-py3-none-any.whl
- Upload date:
- Size: 60.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.12 {"installer":{"name":"uv","version":"0.12.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c8465792a9ef8048e62b3855a6afbf45651a40f4969ff4a557cfe0be6051909
|
|
| MD5 |
78005e16453788cb6f6ecc6572bc7174
|
|
| BLAKE2b-256 |
5eec53e815f3fd7e176fd27bf17499bda6c6720cda8f1a780d4c44d30e7db4ab
|