Presentamos el Agent SDK
Los equipos de software usan agentes definidos como código para encargarse del trabajo recurrente a lo largo del ciclo de vida del desarrollo. Estos agentes se conectan a las herramientas donde trabaja el equipo y actúan cuando ocurren eventos relevantes, ya sea para revisar un PR, ejecutar un flujo de trabajo de cumplimiento o investigar un incidente.
Los agentes más útiles son los que se adaptan a la forma de trabajar de cada equipo. Hasta ahora, crear uno solía implicar adoptar un producto diseñado en torno al flujo de trabajo de otros o empezar desde cero.
Hoy lanzamos el Agent SDK, el framework que usamos para crear nuestros propios agentes gestionados, como Bugbot, Revisor de seguridad y Rollouts. El Agent SDK te permite definir agentes en código y gestionarlos como cualquier otro proyecto de software. Empieza con una plantilla o pídele a tu agente de programación que consulte nuestra documentación. Cuando el agente esté listo, despliégalo en la infraestructura de Cursor con un solo comando: agent-sdk deploy.
Crea en torno a tu flujo de trabajo
El Agent SDK te permite crear y desplegar rápidamente agentes que trabajan como lo hace tu equipo. Responden a los eventos que tu equipo ya gestiona y siguen políticas que tu equipo puede inspeccionar y cambiar.
La revisión de código es un buen ejemplo. Cada equipo tiene sus propios estándares sobre qué requiere atención y quién debe revisarlo. Con el Agent SDK, puedes crear un agente que responda a eventos de PR de GitHub, GitLab o Bitbucket. El agente puede evaluar el riesgo de un cambio, derivarlo al equipo adecuado y aprobar los cambios que cumplan con tu política.
Por ejemplo, un equipo de Cursor había creado una base de conocimiento amplia y en rápido crecimiento con lecciones aprendidas, y quería contrastar cada PR con ella. Así, las decisiones pasadas del equipo seguirían vigentes aunque la base de código cambiara. Con el Agent SDK, crearon kb-reviewer en aproximadamente un día. Ahora se ejecuta en cada PR de su base de código principal, señala los cambios que contradicen una lección registrada, cita la nota en la que se basa cada hallazgo y anima a los ingenieros a resolver las discrepancias que detecta.
Para trabajos más complejos, los agentes pueden delegar una tarea en otro agente especializado con sus propias herramientas y sesiones. También pueden repartir un trabajo entre subagentes que trabajan en paralelo.
El Agent SDK también es compatible de forma nativa con evaluaciones y reproducción de eventos, lo que permite desarrollar con rapidez y con la garantía de que los flujos de trabajo críticos se ejecutan como esperas. El PGA Tour usa el Agent SDK para impulsar su fábrica de desarrollo de software. Las evaluaciones les permiten avanzar con rapidez.
El Agent SDK ha permitido a la PGA crear cada componente de nuestra fábrica de software sobre la infraestructura de Cursor. Nos ofrece la flexibilidad que necesitamos para crear agentes que impulsan nuestro proceso de desarrollo. Y la compatibilidad integrada con evaluaciones nos permite iterar rápidamente sobre nuevas ideas y optimizar de forma fiable las capacidades existentes.
Define todo como código
Un agente de Agent SDK se organiza como un pequeño proyecto de software. Las instrucciones que lo guían conviven con el código de sus herramientas, las conexiones con servicios externos y las evaluaciones que se usan para probarlo.
Cada archivo representa algo que el agente sabe o puede hacer. Los prompts se escriben en Markdown y las herramientas se definen como funciones de TypeScript. Como todo es código, los cambios pueden pasar por el mismo proceso de control de versiones y revisión que el resto de tu software.
Despliega agentes donde los necesites
Cuando tengas un agente listo para usar, puedes desplegarlo en Cursor ejecutando agent-sdk deploy desde el directorio del proyecto. El comando compila el agente, le asigna una URL y lo inicia en nuestra infraestructura. Puedes gestionar secretos e integraciones desde el dashboard y seguir usando los mismos logs, evaluaciones y entorno de pruebas que tienes en local.
También puedes ejecutar el agente en tu propia infraestructura. Cada agente se ejecuta como un único proceso de Node que se puede empaquetar en un contenedor.
Comenzar
Comenzar con el Agent SDK es muy similar a iniciar cualquier otro proyecto de software. Crea un directorio para el proyecto y, después, lanza el entorno de pruebas local:
import { homedir } from "node:os";
import { join } from "node:path";
import { defineAgent } from "@cursor/agent-sdk";
export default defineAgent({
name: "Robo",
model: {
id: "composer-2.5",
params: [
{ id: "effort", value: "high" },
{ id: "fast", value: "true" },
],
},
local: {
cwd: join(homedir(), ".cache", "factory", "robo"),
},
})A partir de ahí, puedes iterar en local y ejecutar evaluaciones antes de hacer el despliegue con agent-sdk deploy.
El Agent SDK también incluye skills que guían a los agentes de programación a lo largo del proceso de desarrollo. Puedes indicarle a un agente que consulte la documentación y pedirle que cree el bot contigo.
El Agent SDK ya está disponible de forma general. Lee la documentación y empieza ya.