Cómo poner a trabajar al modelo frontend de código abierto #1: Guía del Harness para Kimi K3

@polydao
INGLÉS17 sept 2026
197K
97
12
14
142

TL;DR

Esta guía introduce la 'ingeniería de harness', un método para estructurar agentes de IA separando la selección del modelo de la lógica, las herramientas y la verificación. Demuestra el uso de Kimi K3 dentro de un framework configurable que permite cambiar modelos fácilmente y automatizar procesos de forma robusta.

Prompt, context, loop y graph engineering resultaron ser una pieza de la misma máquina. El harness es donde finalmente conviven todos.

Cada etapa de la construcción con IA tuvo su propio título de trabajo. Prompt engineering llegó primero, cuando todo el oficio consistía en encontrar la frase correcta.

Context engineering siguió, una vez que quedó claro que la frase importaba menos que todo lo cargado a su alrededor. Este verano fue el turno de los loops, y unas semanas después, de los graphs.

El nombre que se está extendiendo ahora es harness engineering, y es el primero que explica a todos los demás.

Mr. Buzzoni - inline image

Un harness es todo lo que rodea al modelo: las herramientas que puede llamar, los archivos que lee antes que nada, los directorios a los que puede escribir, la verificación que debe pasar su salida, el cronograma que lo despierta y la regla que termina la ejecución.

Cada disciplina anterior resulta ser un único componente de ese marco, construido por separado y con su propio nombre.

Empecé a prestar atención por una razón práctica. El modelo subyacente sigue cambiando, a veces diecisiete puestos en una sola actualización del leaderboard, y el harness es la única parte del sistema que permanece bajo tu control.

1/ Siete Ingenierías, Una Máquina

Disciplina

La pregunta que responde

Dónde vive en el harness

Prompt engineering

Qué estoy pidiendo exactamente

SKILL.md, la especificación de tarea cargada primero

Context engineering

Qué ve el modelo en cada paso

El ensamblador de contexto: restricciones, esquemas, páginas recuperadas

Tool engineering

Qué puede tocar, y en qué formato

Definiciones de herramientas con entradas y salidas tipadas

Loop engineering

Qué inicia una ejecución y qué la termina

El runner: disparadores, condiciones de parada, presupuestos

Graph engineering

Qué recuerda y cómo se conectan las cosas

La capa de memoria: nodos, aristas tipadas, alias

Eval engineering

Cómo se rechaza un resultado

El verifier, fuera del control del agente

Harness engineering

Qué mantiene unido todo lo anterior

El marco, los permisos y los hooks

Lee la tabla de arriba hacia abajo y es una historia. Léela de abajo hacia arriba y es una arquitectura: harness engineering es el trabajo de decidir dónde vive cada una de las otras seis, para que ninguna termine escondida en un prompt.

Ese último punto tiene la mayor carga de importancia.

Un prompt es el lugar más fácil para poner cualquier cosa, así que todo deriva hacia él: el formato de salida, la regla de parada, las correcciones de la semana pasada, la lista de cosas que el agente nunca debe tocar. Funciona perfectamente con el modelo para el que lo escribiste, y luego el siguiente modelo lee el mismo párrafo de manera diferente.

2/ Anatomía de un Harness

El hábito más útil que he adoptado es escribir todo el harness como un solo archivo de configuración, para que nada importante quede implícito:

text
1# harness.yaml
2model: kimi-k3 # una línea. todo lo de abajo sobrevive a un cambio
3tools: [browser, fs, shell, search]
4permissions:
5 write: [./10-returns, ./20-graph, ./40-runs]
6 ask_first: [send, publish, pay, delete]
7context:
8 always: [SKILL.md, CONSTRAINTS.md, SCHEMA.md]
9 per_agent: return_schema
10runner:
11 trigger: cron "0 2 * * *" # nocturno, mientras duermes
12 stop: 40 verified nodes OR 3 passes with nothing new
13 budget: { agents: 300, minutes: 45, retries: 2 }
14memory:
15 graph: ./20-graph
16 aliases: ./aliases.csv
17verify:
18 - script: checks/schema.py
19 - agent: reviewer, fresh context
20hooks:
21 pre_tool: hooks/pre_tool.sh
22 post_run: append 40-runs/
Mr. Buzzoni - inline image

Tres líneas en ese archivo hacen la mayor parte del trabajo.

model: es una línea a propósito. Todo lo demás está escrito para no importar qué dice esa línea. Esa es toda la historia de portabilidad.

permissions: importa más que tools:, aunque esté más abajo en el archivo. Escribir qué puede cambiar el agente y sobre qué debe preguntar primero es lo que separa un sistema que dejas corriendo durante la noche de uno que te sientas a vigilar.

verify: tiene dos entradas por una razón. El script no cuesta nada y atrapa cualquier cosa mecánica. El reviewer es un segundo agente que nunca vio trabajar al primero, porque un agente que califica su propia salida encuentra todas las razones para aprobarla.

En el disco, el harness es una carpeta, y cada ingeniería de la tabla obtiene su propia dirección dentro de ella.

Mr. Buzzoni - inline image

3/ Por Qué Kimi K3 Es el Motor Que Pondría En Él

Lo que necesita el harness

Lo que aporta Kimi K3

Un runner que pueda expandirse

Agent Swarm: hasta 300 agentes en un problema al mismo tiempo, sin escribir un orquestador

Código lo suficientemente fuerte para escribir sus propias verificaciones

#1 en Frontend Code Arena con 1,679, por delante de Fable 5 (1,631) y GPT-5.6 Sol (1,618), liderando 6 de 7 dominios

Un motor que mejora debajo de ti

De #18 a #1 en una sola actualización de julio

La primera fila importa más de lo que parece. Casi todos los harness caseros desarrollan un orquestador hecho a mano en algún momento, y suele ser el archivo más frágil de la carpeta. Con el swarm, la expansión se convierte en una línea de presupuesto, agents: 300, y el harness solo tiene que manejar lo que regresa.

La segunda fila importa porque un harness es principalmente código que el modelo escribe para ti: scripts de hooks, verificaciones de esquema, el pequeño dashboard que lee 40-runs. Un motor que lidera la arena frontend acierta esas cosas a la primera mucho más a menudo.

La tercera fila es el argumento para harness engineering en un solo dato. Cuando un modelo sube diecisiete puestos de la noche a la mañana, un harness pone ese ascenso a trabajar el mismo día, porque la única línea que tiene que cambiar es model.

4/ Hooks: Los Reflejos

Un hook es un script corto que el harness ejecuta en un momento fijo, independientemente de lo que decida hacer el modelo. Los hooks son donde un harness deja de ser un diseño de carpetas y empieza a comportarse como un sistema de seguridad.

Hook

Cuándo se dispara

Qué hace

pre_tool

Antes de cualquier llamada a herramienta

Bloquea escrituras fuera de la lista de permisos

post_tool

Después de cada retorno

Ejecuta la verificación de esquema y rechaza la salida malformada en el acto

pre_send

Antes de que algo salga de la máquina

Lo retiene en una cola hasta que tú lo apruebes

on_fail

Después de un resultado rechazado

Adjunta la razón del fallo al reintento

post_run

Cuando se alcanza la condición de parada

Añade el registro de ejecución a 40-runs y muestra las diferencias en el graph

El hook pre_tool de la primera fila cabe en cinco líneas:

text
1# hooks/pre_tool.sh
2case "$TARGET" in
3 ./10-returns/*|./20-graph/*|./40-runs/*) exit 0 ;;
4 *) echo "blocked: $TARGET is outside the write list"; exit 1 ;;
5esac

Solo el hook on_fail cambia la economía de un loop. Un reintento que lleva la razón por la que falló el último intento es una corrección. Sin esa razón, el loop paga por el mismo error una segunda vez.

5/ Cómo Se Ve Una Noche

Junta todas las piezas y el harness se comporta como un turno de noche que sigue reglas. A las 02:00 se dispara el trigger y la consulta de lanzamiento selecciona cada nodo que necesita trabajo. El swarm se expande, un agente por nodo.

Los retornos que no cumplen el esquema son rechazados por post_tool antes de llegar al graph, y cada nodo rechazado se reintenta una vez con su razón de fallo adjunta. Cuando un agente intenta escribir fuera de su carpeta, pre_tool lo detiene sin despertar a nadie.

Los nodos fusionados y las aristas tipadas aterrizan en 20-graph. Un correo electrónico redactado llega a pre_send y espera. post_run añade el registro, y el loop se detiene por su propia condición, muy dentro del presupuesto de 45 minutos de la configuración.

A las 07:30 lees un archivo y tomas dos decisiones. Ese es el costo total de la mañana de ejecutar loop engineering y graph engineering de esta manera, y ese es el objetivo principal del harness: todo lo que podía funcionar sin ti funcionó, y las pocas cosas que te necesitaban están esperando en un solo lugar.

Mr. Buzzoni - inline image

6/ La Prueba de Cambio

La auditoría más rápida de cualquier configuración de agente: cambia la línea del modelo y vuelve a ejecutarlo. Lo que se rompa era un harness viviendo en el lugar equivocado.

Qué se rompe después del cambio

Dónde estaba escondido

Dónde pertenece

El formato de salida deriva

"always answer as JSON" en el prompt

Un esquema de retorno más un script que rechaza cualquier otra cosa

Las ejecuciones dejan de terminar por sí solas

"keep going until it's thorough"

Una condición de parada hecha de conteos

Las correcciones de la semana pasada desaparecen

El historial del chat

CONSTRAINTS.md, cargado en cada ejecución

La misma empresa aparece tres veces

El juicio del modelo

aliases.csv, verificado antes de fusionar

Escribe en algún lugar donde no debería

Una frase educada en el prompt

Una lista de permisos y un hook pre_tool

Una configuración que pasa la prueba de cambio es portable, y portable es lo que la hace valiosa.

Mr. Buzzoni - inline image

Lo Que Cuesta y Lo Que Paga

Las empresas invierten trimestres enteros en plataformas internas de agentes. Un harness funcional es una carpeta, un archivo de configuración y cinco scripts cortos, y funciona con una suscripción a Kimi. Esa brecha es la oportunidad.

Canal

Lo que paga

Lo que necesitas primero

Configuración de harness para un equipo pequeño

Una tarifa única de cuatro cifras por la configuración, hooks y verifier alrededor de su flujo de trabajo

Un harness propio, funcionando según un cronograma

Retainer de día de lanzamiento

Una tarifa mensual para ejecutar la prueba de cambio en cada lanzamiento importante de modelo y mover al equipo al que lidere

Un cliente cuyas ejecuciones ya registran en 40-runs

Una plantilla de harness de nicho

La carpeta y el yaml empaquetados para una industria: investigación, reclutamiento, cumplimiento normativo

El mismo harness probado en dos mercados diferentes

El segundo canal es el que yo construiría primero. Cada lanzamiento importante reordena el leaderboard, K3 solo subió diecisiete puestos en una actualización, y cada equipo con un harness necesita alguien cuyo trabajo sea ejecutar la prueba de cambio el día del lanzamiento.

La Versión Corta

Prompt, context, tool, loop, graph y eval engineering resultan ser componentes de una sola máquina, y harness engineering es decidir dónde vive cada uno de ellos.

Pon el modelo detrás de una línea, los permisos por delante de las herramientas y el verifier fuera del agente. Entonces, el próximo salto en el leaderboard es un cambio de configuración en lugar de una reconstrucción.

Mr. Buzzoni - inline image

Y si encontraste esto útil:

  • Guarda este artículo en favoritos. Los enlaces cambian y aparecen nuevos repos semanalmente, necesitarás esto como referencia
  • Para análisis profundos semanales sobre arquitectura de IA, trading cuantitativo y la economía de agentes, sígueme: @polydao
  • Únete al Canal de TG: Buzzoni Notes - aquí comparto mis prompts crudos, skills personalizados y alpha que es demasiado pronto para X
Guardar con un clic

Lee artículos virales en profundidad con IA en YouMind

Guarda la fuente, haz preguntas concretas, resume el argumento y convierte un artículo viral en notas reutilizables en un único espacio de trabajo con IA.

Explora YouMind
Para creadores

Convierte tu Markdown en un artículo de 𝕏 impecable

Cuando publicas tus propios textos largos, dar formato en 𝕏 a imágenes, tablas y bloques de código es un fastidio. YouMind convierte un borrador completo en Markdown en un artículo de 𝕏 impecable y listo para publicar.

Prueba Markdown a 𝕏

Más patrones por descifrar

Artículos virales recientes

Explorar más artículos virales