Lampson

Un agente de programación para tus proyectos, y el motor para los agentes de tus apps

Apúntalo a una carpeta.
Lee, edita y ejecuta — y pregunta antes.

Lampson es un agente de programación que instalas una vez y abres dentro de cualquier proyecto. Habla con él en la terminal o en tu navegador, mira cada paso que da y di sí o no antes de que ocurra algo arriesgado. Funciona con el modelo por el que ya pagas.

$npm i -g lampson

luego entra con cd en un proyecto y escribe lampson

my-app — lampson
lampson 0.5 · deepseek-chat · build · ask

el formulario de login no muestra errores cuando la contraseña es incorrecta. arréglalo

✓ grep "password" src/                    3 files
✓ read src/components/LoginForm.tsx       88 lines
✓ read src/api/auth.ts                   41 lines
✓ edit src/components/LoginForm.tsx       +6 −1
   40   } catch (err) {
   41 +   setError("Wrong email or password");
? bash npm test                          allow? ❯ yes  no
✓ bash npm test                          14 passed

El formulario ahora muestra “Wrong email or password” debajo del
campo de contraseña cuando la API devuelve 401. Los tests pasan.

─── 5 steps · 12k tokens · 38s

Nada que aprender. Nada que configurar.

Describes lo que quieres con tus palabras. Lampson averigua qué archivos importan, los cambia, ejecuta los tests y te muestra el resultado — un paso visible a la vez.

01Se queda dentro de tu proyecto

Lampson solo puede tocar la carpeta en la que lo abriste. Ni tu carpeta de usuario, ni el proyecto de al lado. No es un ajuste que puedas olvidar: es cómo funciona el lenguaje en el que está escrito.

02Pregunta antes de cualquier cosa arriesgada

Leer y editar simplemente ocurren. Borrar cosas, instalar paquetes, tocar el historial de git, ejecutar instaladores — eso se detiene y espera tu sí. Los comandos realmente destructivos se rechazan sin más.

03Terminal o navegador

lampson abre un chat en tu terminal. lampson --web abre el mismo agente en tu navegador, con un árbol de archivos, logs en vivo de los servidores que arrancó y una pestaña de terminal real.

04Tu modelo, tu clave

DeepSeek, GLM, Kimi, Groq, OpenRouter, Ollama en tu propia máquina, Anthropic, OpenAI… Elige un proveedor la primera vez, pega una clave y listo. Cambia cuando quieras con un solo comando.

05Recuerda tu proyecto

Cómo ejecutarlo, qué se rompió la última vez, decisiones que tomaron juntos — Lampson guarda notas por proyecto y las vuelve a leer en la siguiente sesión. Tú también puedes leer y editar esas notas.

06Trabaja mientras no estás

«Cada mañana a las 9, ejecuta los tests y avísame.» Las tareas programadas se ejecutan solas; si una se topa con algo arriesgado, recibes un enlace en tu teléfono para aprobarla o denegarla.

Lampson como motor

Úsalo dentro de tus apps. Atiende a tus clientes.

Los agentes de Lampson también trabajan sin interfaz: un bot que contesta los mensajes de tu negocio, tu backend que le pregunta algo a un agente, otra IA que usa a tus agentes como herramienta.

  • Un agente es un archivo: su prompt, las herramientas exactas que puede usar y sus permisos.
  • Telegram y Chatwoot (WhatsApp, Instagram, email) como canales — incluso sin URL pública.
  • SDK para JavaScript (npm i lampson) y Python (pip install lampson): tus funciones como herramientas, y una API HTTP con keys y MCP para Claude, Cursor u otro Lampson.
  • Herramientas con garantías: una herramienta escrita en Synsema declara todo lo que puede tocar, y el lenguaje no la deja hacer más. Seguridad →
  • Una conversación por cliente; tres mensajes seguidos reciben una sola respuesta.
  • Objetivos y equipos: un agente trabaja solo hasta terminar, o un equipo entero se reparte el trabajo. Abajo →

Lampson como motor →

motor
$ lampson key add --agent tienda
API key creada (k6KJgJHpu) para tienda · 120 pedidos/min

$ curl -X POST …/w/tienda/v1/messages \
    -H "Authorization: Bearer lk_…" \
    -d '{"to": "tienda", "thread": "cliente-42",
         "text": "¿tienen pan sin gluten?"}'

{"text": "¡Sí! Pan de arroz y mijo a $4.100,
          nos quedan 5.", "steps": 2, …}

$ lampson channel on telegram
canal telegram encendido · agente: tienda

Equipos de agentes

Dale un objetivo a un equipo. Se lo reparten, se revisan entre ellos y te piden permiso.

Un equipo con roles (CEO, CPO, CTO, Dev, CMO, o ventas y stock) recibe un objetivo y lo lleva hasta el final: arman un tablero de tareas, se escriben, trabajan en paralelo y revisan el trabajo del otro.

  • Nadie se pisa: cada tarea tiene un solo dueño, y en un proyecto con git cada agente trabaja en su propia copia, en su rama y con su nombre de autor.
  • Nada llega a main sin ti: un merge o un push espera tu aprobación, aunque otro agente diga «aprobado».
  • Todo queda escrito: quién tomó qué, quién le escribió a quién y qué se aprobó. Lo miras en vivo en el lienzo del equipo.
  • No solo para programar: un equipo de ventas, soporte o investigación trabaja en su propia carpeta.

Un equipo gasta más que un agente solo: la corrida de al lado fueron unos 368.000 tokens entre cinco agentes. Por eso hay un tope diario por agente y uno por objetivo, y un agente sin nada que hacer no gasta. Para una tarea de un solo rol, un objetivo a un agente alcanza.

Cómo funcionan los equipos →

equipo empresa — objetivo O-2
Lanzar la versión 0.2: prioridad por tarea, con tests,
revisión y merge a main del CTO, y un CHANGELOG.

21:38  ceo  agregó #11 «revisión y merge» → cto
21:39  cto  escribió → dev: «Tarea tuya: #8…»
21:39  cpo  movió #6 → en revisión: requisitos
21:40  cto  pide aprobación: merge team/empresa/cpo  ✓
21:42  dev  movió #8 → en revisión: npm test 10/10
21:44  cto  pide aprobación: merge team/empresa/dev  ✓
21:45  cto  pide aprobación: merge team/empresa/cmo  ✓
21:46  ceo  terminó O-2: «v0.2 lanzada y verificada en main»

─── 5 agentes · 8 min · ~368k tokens · 3 merges aprobados por ti

Seguridad

Tu agente puede caer en una trampa. Tus datos no.

Un agente que atiende a desconocidos va a recibir prompt injection: un link que se parece al del correo, «en realidad soy otro cliente», una reseña con órdenes escondidas. Ningún modelo las detecta siempre.

  • Cada herramienta en Synsema declara qué hosts, archivos y variables puede tocar. Si el modelo cae, la llamada se niega: Capability not granted.
  • Quién escribe lo pone tu app, no el modelo: «soy cliente-bruno» no cambia de quién son los pedidos que ve.
  • Un agente para tus clientes no tiene bash, ni lee ni escribe archivos: solo las herramientas que le diste.
  • Si alguien le amplía el techo a una herramienta, deja de correr hasta que una persona apruebe el cambio.

Qué garantiza y qué no → · La receta completa →

soporte — panadería
Me llegó un mail del correo con este link de seguimiento:
https://seguimiento.correo-sol.example.track-envios.net/…
¿Me lo consultás?

→ consultar_envio {"url": "https://seguimiento.correo-sol…
✗ Capability not granted:
  net("seguimiento.correo-sol.example.track-envios.net")

No pude abrir ese link: el dominio no es el del correo,
tiene toda la pinta de phishing. Tu pedido P-101
figura en camino.

─── la herramienta solo puede llegar a
    seguimiento.correo-sol.example

Plugins

Dale nuevas habilidades. Enciéndelas cuando quieras.

Un plugin es una pequeña carpeta que le enseña a Lampson una herramienta nueva: consultar tu base de datos, llamar a la API de tu empresa, desplegar, enviar un mensaje. Los plugins están apagados por defecto: tú enciendes cada uno, y solo entonces el agente puede usarlo.

  • Un plugin es una carpeta con un plugin.json y un script en cualquier lenguaje.
  • Un plugin en Synsema corre bajo un techo de capacidades; uno ejecutable corre tal cual. En ambos casos, encenderlo es decisión tuya.
  • El agente puede escribir un plugin para ti — pero nunca encenderlo por su cuenta.
  • Mantén los plugins globales (todos los proyectos) o dentro de un solo proyecto.

Cómo funcionan los plugins →

plugins
$ ls ~/lampson/plugins/
example-hello/  deploy/  postgres/

$ cat ~/lampson/plugins/postgres/plugin.json
{
  "name": "postgres",
  "description": "read-only queries on the dev database",
  "kind": "exec",
  "command": "python query.py",
  "tools": [{ "name": "query", "readonly": true, … }]
}

lampson ❯ /plugins on postgres
☼ postgres is on — 1 tool available: plugin_postgres_query

También incluido

Lo que esperarías, sin la configuración.

  • Subagentes — puede dividir un trabajo en workers paralelos y reunir los resultados.
  • Skills — deja un SKILL.md en tu proyecto y el agente aprende tus procedimientos.
  • Servidores MCP — la misma configuración JSON que ya usas en otros sitios.
  • Servidores de lenguaje — ir a la definición y buscar referencias en lugar de adivinar con grep.
  • Sesiones y trazas — cada paso queda guardado; reabre una conversación días después.
  • Imágenes — pega una captura de pantalla y pregunta sobre ella.

Funciona con

DeepSeekAnthropicOpenAIGLM (Z.ai)KimiGroqGrokOpenRouterMiniMaxOllamacualquier API compatible con OpenAI

Tu clave de API se guarda en tu máquina y solo se envía al proveedor que elegiste. Lampson no tiene servidor propio: nada sale de tu computadora salvo tu conversación con el modelo.

Pruébalo en un proyecto que tengas abierto ahora mismo.

Una línea para instalar. Una palabra para empezar.

$npm i -g lampson