Repolode
iii-hq

iii-hq/iii

Un runtime de Rust para componer, descubrir y rastrear servicios, workers, colas, tareas cron y agentes mediante un catálogo de funciones en vivo.

Estrellas
18,848
Forks
1,267
Issues abiertos
100
Último commit
hace 10 horas

¿Qué es?

iii es un motor para crear backends a partir de unidades pequeñas llamadas workers, funciones y triggers. Un worker es cualquier proceso que se registra en el motor iii, como un servicio API en TypeScript, un pipeline en Python o un microservicio en Rust. Las funciones tienen identificadores estables y los triggers declaran cuándo se ejecutan: mediante una llamada directa, un endpoint HTTP, una programación cron, una suscripción a una cola o un cambio de estado. El motor se encarga del enrutamiento, la serialización y la entrega.

El proyecto ofrece una capa Compose en la que los workers se declaran en un archivo worker-compose.yaml o se añaden a un daemon en ejecución mediante un comando de CLI. Cada nuevo worker se incorpora a un catálogo en vivo, del que se notifica a los demás workers para que puedan invocarlo de inmediato. Hay SDK oficiales para Node.js, Python, Rust y Go, y una consola para desarrolladores muestra workers, funciones, triggers, colas, trazas y logs.

El runtime del motor está bajo la licencia Elastic License 2.0, mientras que los SDK, la CLI, la consola y la documentación están bajo Apache 2.0.

Funciones clave

  • 01Registra cualquier proceso como worker que expone funciones al resto del sistema.
  • 02Admite triggers HTTP, cron, de cola, de estado y de stream que invocan funciones de forma declarativa.
  • 03Añade workers en tiempo de ejecución mediante un daemon de Compose, para incorporar nuevas capacidades sin reiniciar.
  • 04Ofrece SDK oficiales para Node.js, Python, Rust y Go.
  • 05Incluye una consola para inspeccionar workers, funciones, triggers, colas, trazas y logs.

Casos de uso

  • Conectar microservicios escritos en distintos lenguajes mediante un conjunto común de funciones invocables.
  • Proporcionar a los agentes de IA un catálogo compartido de capacidades que puedan descubrir, invocar y rastrear.
  • Sustituir integraciones independientes de colas, cron y HTTP por un único modelo de triggers.
  • Rastrear y depurar llamadas entre servicios en una sola vista.

Inicio rápido

  1. 1
  2. 2

    Iniciar un espacio de nombres de Compose con workers

    iii compose --namespace dev --up
  3. 3

    Añadir un worker al sistema en ejecución

    iii trigger -n dev compose::add worker=queue

Antes de usarlo

  • El motor está sujeto a la Elastic License 2.0, que permite acceder al código fuente, pero no es de código abierto según la definición de la OSI.
  • Solo los SDK, la CLI, la consola y la documentación tienen licencia Apache 2.0. Comprueba la licencia del motor antes de usarlo comercialmente.

Temas

Preguntas frecuentes

¿Qué es iii?
Un runtime de Rust para componer, descubrir y rastrear servicios, workers, colas, tareas cron y agentes mediante un catálogo de funciones en vivo. iii es un motor para crear backends a partir de unidades pequeñas llamadas workers, funciones y triggers. Un worker es cualquier proceso que se registra en el motor iii, como un servicio API en TypeScript, un pipeline en Python o un microservicio en Rust. Las funciones tienen identificadores estables y los triggers declaran cuándo se ejecutan: mediante una llamada directa, un endpoint HTTP, una programación cron, una suscripción a una cola o un cambio de estado. El motor se encarga del enrutamiento, la serialización y la entrega.
¿iii es gratuito? ¿Qué licencia tiene?
iii no declara ninguna licencia. Su código es público, pero sin licencia no tienes permiso explícito para reutilizarlo; consulta al autor antes de depender de él.
¿iii sigue mantenido?
Mantenimiento activo. El último commit de iii fue el 19 oct 2026.
¿Para qué puedo usar iii?
Conectar microservicios escritos en distintos lenguajes mediante un conjunto común de funciones invocables. Proporcionar a los agentes de IA un catálogo compartido de capacidades que puedan descubrir, invocar y rastrear. Sustituir integraciones independientes de colas, cron y HTTP por un único modelo de triggers. Rastrear y depurar llamadas entre servicios en una sola vista.
¿Cómo se instala iii?
Instalar la CLI de iii Iniciar un espacio de nombres de Compose con workers: iii compose --namespace dev --up Añadir un worker al sistema en ejecución: iii trigger -n dev compose::add worker=queue
¿Dónde consigo iii?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/iii-hq/iii

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados