Repolode
jigjoy-ai

jigjoy-ai/mozaik

A TypeScript runtime where AI agents join a shared space, react to events, and run concurrently without blocking each other.

Stars
166
Forks
18
Open issues
4
Last commit
11 hours ago

What is it?

Mozaik is a TypeScript runtime for building AI agents that share an event bus. Participants such as humans, agents and observers join a runtime, publish events like messages or custom signals, and react through situation handlers that pair a specification with a processor.

Each agent turn runs as a state machine covering message intake, model inference, tool calls and the final answer. Calls to runLoop are fire-and-forget, so several agents can think and use tools at the same time. An optional interception handler can inspect or rewrite the next state before it executes, which allows a human or another agent to steer a loop.

The package is published on npm as @mozaik-ai/core. Provider selection is based on the model name passed to runInference, with OpenAI, Anthropic and Gemini credentials read from environment variables, and DeepSeek reachable through an OpenAI-compatible endpoint.

Key features

  • 01Participants (humans, agents, observers) join a shared runtime and exchange SpaceEvents.
  • 02Agent loops run concurrently, and each loop has its own loopId.
  • 03Situation specifications and processors let agents react to events without polling.
  • 04Built-in loop states cover inference, streaming, tool calls and model answers.
  • 05An interception handler can rewrite the next loop transition before it runs.
  • 06Shared state is typed through a RuntimeState subclass.

Use cases

  • Building multi-agent systems where several agents collaborate on the same goal in real time.
  • Adding a critic or reviewer agent that reacts to another agent's answers.
  • Creating a transcript or UI stream by observing events without participating in the conversation.
  • Keeping a human in the loop by intercepting tool calls before they run.

Quick start

  1. 1

    Install the core package with npm

    npm install @mozaik-ai/core
  2. 2

    Set the API key for the provider you use in a .env file

Things to know

  • Requires API keys from model providers such as OpenAI, Anthropic, or Gemini to run inference.
  • The README shows no runnable end-to-end example in the excerpt, so setup beyond installation may take some effort.

In collections

Topics

FAQ

What is mozaik?
A TypeScript runtime where AI agents join a shared space, react to events, and run concurrently without blocking each other. Mozaik is a TypeScript runtime for building AI agents that share an event bus. Participants such as humans, agents and observers join a runtime, publish events like messages or custom signals, and react through situation handlers that pair a specification with a processor.
Is mozaik free to use? What license does it have?
mozaik is open source under the MIT license. Check the license terms before using it in commercial products.
Is mozaik still maintained?
Actively maintained. The last commit to mozaik was on Nov 7, 2026.
What can I use mozaik for?
Building multi-agent systems where several agents collaborate on the same goal in real time. Adding a critic or reviewer agent that reacts to another agent's answers. Creating a transcript or UI stream by observing events without participating in the conversation. Keeping a human in the loop by intercepting tool calls before they run.
How do I install mozaik?
Install the core package with npm: npm install @mozaik-ai/core Set the API key for the provider you use in a .env file
Where can I get mozaik?
The source code and installation instructions are on GitHub: https://github.com/jigjoy-ai/mozaik

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects