Por qué existen las aplicaciones
Los flujos de trabajo cubren la automatización sin código. Pero algunas cosas necesitan código: un motor de precios personalizado, una canalización de enriquecimiento propietaria, una verificación de cumplimiento que se ejecute en cada actualización de registro, un panel de IU personalizado que obtenga datos de una herramienta interna. Las aplicaciones te permiten crear estos como extensiones de primera clase: no son scripts frágiles que se comunican con una API desde fuera, sino código que se ejecuta en la plataforma con acceso completo al sistema de tipos, el modelo de permisos y la IU.Lo que una aplicación puede definir
Una aplicación es un paquete de TypeScript que declara entidades usandotwenty-sdk:
| Entidad | Qué hace |
|---|---|
| Objetos y campos | Nuevas tablas de datos y campos en objetos existentes, con el mismo tratamiento que los integrados. |
| Funciones de lógica | Funciones de TypeScript del lado del servidor activadas por rutas HTTP, programaciones de cron o eventos de base de datos |
| Componentes de frontend | Componentes de React aislados (sandboxed) que se renderizan dentro de la interfaz de Twenty (panel lateral, widgets, menú de comandos) |
| Habilidades y agentes | Capacidades de IA — instrucciones reutilizables y asistentes autónomos |
| Vistas y navegación | Vistas de lista preconfiguradas y elementos del menú lateral |
export default defineObject(...) en cualquier archivo .ts y el SDK lo detecta.
Cómo se ejecutan
- Las funciones de lógica se ejecutan en procesos de Node.js aislados, en entornos sandbox separados del host. Acceden a los datos a través de un cliente de API tipado, limitado al ámbito de los permisos de rol de la app.
- Los componentes de frontend se ejecutan en Web Workers usando Remote DOM — aislados de la página principal pero renderizando elementos DOM nativos (no iframes).
- Los permisos se aplican a nivel de API. Una app solo ve lo que su rol permite.
La experiencia del desarrollador
Escribes tu app como un proyecto de TypeScript en tu máquina. La CLI observa tus archivos fuente y los sincroniza en tiempo real con un servidor de Twenty en ejecución: edita un archivo y ve el cambio en la interfaz en cuestión de un segundo. El cliente de API tipado se regenera automáticamente cuando cambia el esquema. Cuando estés listo,yarn twenty app:publish --private envía la app a un servidor de producción, o yarn twenty app:publish publica tu app en npm y en el marketplace de Twenty.
Crea tu primera app
Recorrido guiado en tres fases: generar el andamiaje, ejecutar un servidor local y sincronizar tus cambios.