iii-hq/iii

Public

Effortlessly compose, extend, and observe every service in real-time for the first time ever.

  • Stars18.9k+20 tuần này
  • Forks1.3k
  • Watchers83
  • Issues98
  • Ngày tạo03/01/2025
  • Cập nhật gần nhất01/11/2026
  • Ngôn ngữRust
  • Giấy phép—
README.md21.1 KBRaw

iii

iii: point-to-point integrations vs zero-integration via shared runtime

iii-hq%2Fiii | Trendshift

Docker npm PyPI Crates.io Discord

Worker downloads Weekly worker downloads Docker pulls npm downloads PyPI downloads Crates.io downloads

What is iii? · Install iii · Add Workers · SDKs · Agent Skills · Console · Resources

What is iii?

iii is the easiest way to compose, observe, discover, extend, and react (CODER) to every service in your stack in real time.

Every backend starts as a project before the first line of business logic. Queues, cron, HTTP, state, observability, agents, and sandboxes each usually bring their own integration story that complicates CODER. iii solves all of these concerns with one live system surface.

iii compose --namespace dev --up
iii trigger -n dev compose::add worker=queue
iii trigger -n dev compose::add worker=agent
iii trigger -n dev compose::add worker=<anything>

Each worker joins the live catalog. Every other worker is notified and can call it immediately. Browse available workers at workers.iii.dev.

That is the agent story too: when a task needs a capability the system does not have, an agent can add a worker, discover its functions, call them, and trace what happened. Same interface a developer uses.

Three Primitives

iii is powered by 3 primitives:

Workers are processes that register with the iii engine and then register triggers and functions. A TypeScript API service is a worker. A Python data pipeline is a worker. A Rust microservice is a worker. Any functionality can be transformed into a worker with a few lines of code. Compose can also add workers at runtime, so agents and applications can extend the system while it is running.

Triggers are anything that causes a function to run. A trigger can be a direct call to a function, an HTTP endpoint, a cron schedule, a queue subscription, a state change, a stream event, or anything else. Triggers are declarative: the Worker defines "this function runs when this thing happens," and iii handles routing, serialization, and delivery.

Functions are units of work with a stable identifier (e.g., content::classify, orders::validate). It receives input, does work, and optionally returns output. Functions exist in workers.

Nội dung README thuộc về iii-hq và cộng đồng đóng góp, giấy phép Không có giấy phép. Nguồn: github.com/iii-hq/iii