Antes de que la IA escriba código, yo me convierto en Sócrates — Diseño del harness Ouroboros
(github.com/Q00)Sócrates siempre preguntaba primero: "¿Qué es X?". Preguntaba por la esencia, no por el fenómeno.
Yo incorporé esa forma de preguntar en un harness de codificación con IA. El resultado: primer lugar en Ralphton.
Por qué Sócrates
La mayor razón por la que el vibe coding fracasa es la ambigüedad. En un entorno Human Outside the Loop, si la intención no está clara, a medida que avanzan las iteraciones la diferencia entre la intención y el resultado crece exponencialmente. Ouroboros elimina esta ambigüedad de forma matemática.
Ambiguity = 1 - Σ(clarity_i × weight_i)
La entrevista socrática continúa hasta que este puntaje sea de 0.2 o menos. Antes de eso, no se escribe ni una sola línea de código.
Condición de finalización definida por convergencia
El loop no termina por la cantidad de veces, sino cuando la evolución se detiene.
En el loop de Ralph, una iteration se define como una generación.
Similarity = 0.5 * name_overlap + 0.3 * type_match + 0.2 * exact_match
Si Similarity supera 0.95, se considera convergencia. También se detectan por separado patrones patológicos como Stagnation, Oscillation y Wonder Loop.
La era en la que las humanidades se vuelven harness
Para usar los tokens de manera eficiente y manejar bien a la IA, paradójicamente se han vuelto más importantes las reflexiones humanísticas y filosóficas que existían entre las personas que la tecnología misma.
No deberíamos quedarnos en decirle a la IA "escríbeme código". Debemos definir cuál es la Ontology del problema que queremos resolver y cuál es el criterio para considerar que está completo. Creo que eso es el núcleo de Ouroboros que confirmé en este Ralphton, y también la capacidad de diseñar harnesses que los desarrolladores deberán tener en el futuro.
GitHub: https://github.com/Q00/ouroboros
3 comentarios
Es más divertido porque es el texto de alguien que conozco.
Ay.
Está genial. Parece ser algo que no solo los agentes, sino también nosotros, podríamos aprovechar al desarrollar.
Es una técnica para definir mejor las especificaciones y hacerse preguntas a uno mismo sobre cómo salir de un estado ambiguo.