Pega este texto a tu agente (Claude Code, Codex, OpenCode, Hermes o el que uses) y dile «ayúdame a montarlo». Son los pasos para ponerlo en marcha; el porqué de cada pieza está en la guía completa.
La segunda instalación adapta el README: bus/agent_client.py importa yaml, pero el manifiesto no declara PyYAML. No se han ejecutado instalaciones aquí.
Paso 2: prueba el protocolo de un ejecutor
La versión consultada no implementa POST /run, aunque el README lo anuncia. Además, glink-daemon.py puede usar BASE_DIR sin definirlo cuando sus importaciones tienen éxito. Para este recorrido usa la API Python real, sin depender de ese lanzador.
Guarda como ejecutor_prueba.py este servidor de ensayo, adaptado al contrato de bus/agent_client.py y daemon/core.py. No es un agente con modelo: devuelve un resultado fijo para comprobar el envío de tareas y sus dependencias.
import json
from http.server import BaseHTTPRequestHandler, HTTPServer
class Handler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.end_headers()
self.wfile.write(b'{"status":"ok"}')
def do_POST(self):
data = json.loads(self.rfile.read(int(self.headers["Content-Length"])))
print(data["message"], flush=True)
self.send_response(200)
self.send_header("Content-Type", "application/json")
self.end_headers()
self.wfile.write(b'{"reply":"resultado de prueba"}')
HTTPServer(("127.0.0.1", 8000), Handler).serve_forever()
Desde la raíz ejecuta python3 ejecutor_prueba.py y mantenlo abierto. El código utiliza el puerto predeterminado 8000 para el ejecutor default. Para agentes propios, el código admite GLINK_AGENT_PORTS como JSON de nombres y puertos numéricos; el README muestra URLs completas, que no coinciden con ese contrato.
Paso 3: ejecuta dos pasos dependientes
En la misma raíz guarda prueba_flujo.py. La firma real requiere el nombre del proyecto y el diccionario del flujo; no acepta únicamente el nombre con context, como propone el README.
from daemon.core import run_workflow
workflow = {
"project": {"name": "prueba-r2", "title": "Prueba", "goal": "Comprobar dos pasos"},
"steps": [
{"id": "step-1", "executor": "default", "title": "Primero", "task": "Devuelve un resultado de prueba"},
{"id": "step-2", "executor": "default", "title": "Segundo", "task": "Confirma el segundo paso", "depends_on": ["step-1"]},
],
}
run_workflow("prueba-r2", workflow)
En otra terminal con el mismo entorno, ejecuta python3 prueba_flujo.py. Conserva la carpeta de datos que cree el motor para revisar eventos y puntos de recuperación.
Comprobación
Comprueba que ambos pasos terminan y que el ejecutor recibe primero la tarea inicial y después la dependiente. Revisa los eventos task.started y task.completed del proyecto prueba-r2. Detén el ejecutor con Ctrl+C al terminar. Esto comprueba coordinación con un ejecutor simulado; para usar modelos debes servir tus agentes con GET /health y POST /ask, cuerpo con message y session, y respuesta JSON con reply.
Si algo falla
Revisa que el puerto 8000 esté libre y que ambas terminales usen el mismo entorno. Un ModuleNotFoundError: yaml indica que falta PyYAML. No uses POST /run ni la firma abreviada del SDK del README en esta revisión. Contrasta las adaptaciones con agent_client.py, core.py, api.py y el lanzador.
Qué es
Glink es un motor programático de flujos multiagente. Funciona detrás de un coordinador que llama a su API; el README actual indica que no tiene interfaz humana.
Para qué te sirve
Cuando una investigación debe terminar antes de que empiece la redacción.
Cuando necesitas retomar una cadena después de un fallo.
Cuando quieres registrar qué paso se ejecutó y con qué resultado.
Cómo funciona
Los archivos YAML asignan ejecutores y dependencias. Un bus JSONL conserva eventos y el servicio en segundo plano gestiona envío, reintentos, compuertas y puntos de recuperación. El coordinador puede consultar estado por HTTP. En la revisión consultada, POST /run anunciado por el README no está implementado: los pasos usan la API Python real. Los agentes se registran por nombre y puerto numérico y deben responder al protocolo HTTP del motor.
Antes de empezar
Necesitas Python 3.11 o posterior y preparar los agentes que ejecutarán cada paso. No requiere bases de datos ni colas externas según su README. Los proveedores de modelos y las herramientas de cada agente tienen sus propios requisitos y costes.
Límites y alternativas
Un punto de recuperación evita repetir pasos terminados, pero debes diseñar acciones tolerantes a reintentos. Comprobar que existe un archivo no verifica la calidad de su contenido. Mantén la API local mientras evalúas acceso y permisos. Hermes Multi-Agent Workflow aporta otra plantilla orientada a clasificación.