Objetivos y equipos
Objetivos
Un objetivo es algo que le pedís a un agente para que lo trabaje solo, hasta terminarlo: «agregá tal feature con tests», «investigá X y dejame un resumen», «buscá el precio más barato de…». No es una conversación: lo dejás andando y volvés cuando te avisa.
El agente:
- planifica: parte el objetivo en tareas en su tablero y las va moviendo (por hacer → en curso → hecho);
- avanza en rondas: termina un turno y Lampson le da el siguiente, hasta que lo da por hecho;
- te informa en los hitos, y te pregunta lo que solo vos sabés;
- te pide aprobación antes de cualquier cosa que sale del proyecto o no se puede deshacer (mergear a main, publicar, comprar, mandar un mail) y espera tu respuesta;
- termina con el resultado: qué hizo, dónde y cómo verificarlo.
Mientras espera tu respuesta no gasta nada.
Darle un objetivo§
En la pantalla de equipos del proyecto (botón equipos en la interfaz web, /w/<proyecto>/equipos, o desde todos los proyectos en http://127.0.0.1:8080/equipos) → + nuevo: elegís el agente, escribís qué tiene que lograr, cada cuánto hace una ronda y cuánto puede gastar.
O desde la terminal, en la carpeta del proyecto:
lampson objective add "Agregá filtrar tareas por estado, con tests. Trabajá en tu rama y pedime aprobación antes de mergear." --agent cto
lampson objective list
lampson objective show 1
lampson objective reply 1 --approve # o --deny, con una nota opcional
lampson objective reply 1 "en pesos" # responder una pregunta
lampson objective cancel 1
O por la API: POST /v1/objectives con {"agent": "cto", "text": "…"}.
| opción | ||
|---|---|---|
--agent ID | quién lo trabaja | |
--team ID | o un equipo (lo lidera su jefe) | |
--budget N | tokens que puede gastar en total | 500.000 |
--round S | segundos entre un turno y el siguiente | 20 (60 en un equipo) |
Sin presupuesto, se pausa; Seguir le da otro tramo igual.
La pantalla§
A la izquierda, tus objetivos con su estado (trabajando, te espera, hecho, falló, sin presupuesto). En el centro, el elegido: qué tiene que lograr, cuánto gastó, su último informe, el resultado y su tablero. A la derecha, el registro: cada cosa que hizo, en vivo.
Lo que te espera está en la bandeja: el botón ⚑ de la cabecera, en todas las pantallas, junta las preguntas y aprobaciones pendientes de todos tus proyectos para responder, aprobar o denegar ahí mismo (un merge muestra qué ramas, commits y archivos entran). En la página de un objetivo, su pregunta aparece también en el lugar, con la respuesta ahí.
Un objetivo real§
Un agente cto (modelo glm-5.3-flash) en una API de tareas en Node, con este objetivo:
Agregá a la API filtrar tareas por estado:GET /tasks?done=truedevuelve solo las hechas y?done=falselas pendientes (sin el parámetro, todas; un valor inválido es 400). Con tests. Trabajá en una rama nuevacto/filtro-estadoy commiteá ahí. Cuando esté listo ynpm testpase, pedí aprobación para mergear a main; con la aprobación, mergeá y terminá.
Primer turno (12 pasos): armó cuatro tareas en su tablero —explorar el código, crear la rama e implementar, tests, commitear y pedir aprobación— y las fue cerrando. Creó la rama, implementó el filtro con dos tests nuevos, commiteó a su nombre y pidió:
Listo para mergear a main. Implementé GET /tasks?done=true|false en la rama cto/filtro-estado (commit 8bdeaf9): store.list() filtra por estado, el server valida el query param (inválido → 400), y agregué 2 tests. npm test: 5/5 pasan. ¿Apruebas el merge a main?
Se quedó esperando, sin gastar. Revisamos la rama, corrimos los tests y aprobamos.
Segundo turno (3 pasos): mergeó a main y terminó:
O-1 terminado. GET /tasks?done=true|false implementado y mergeado a main (merge --no-ff de cto/filtro-estado). Cambios: src/store.js, src/server.js, test/api.test.js (+2 tests). npm test en main: 5/5 pasan. Sin el parámetro, GET /tasks sigue devolviendo todas.
Unos 25.600 tokens en total.
Para que salga bien§
- Decí cómo se ve «terminado»: «con tests», «npm test tiene que pasar», «dejame un resumen con fuentes».
- Decí qué necesita tu aprobación — aunque el agente ya lo sabe, y en un equipo Lampson la exige igual para mergear o publicar.
- El agente trabaja con sus herramientas y permisos de siempre: un objetivo no le da más poder.
- Para algo grande, con varios roles, dáselo a un equipo.