What QM Is and the Problem It Addresses
QM is an open-source multiplayer agent harness designed for workplace use in Slack and on the web. It allows each employee to have their own isolated workspace while still enabling collaboration with the agent in shared channels, group messages, and projects. Unlike personal assistants built for individual use, QM aims to support team environments by giving each person and each room its own scoped memory, files, keychain view, permissions, crons, web apps, and durable sandbox. This structure helps avoid the complexity that arises when trying to scale a single assistant across an entire organization.
The project is built with TypeScript and emphasizes flexibility. Users can bring their own models and API keys, and switch between different harnesses such as Pi, OpenCode, Codex, and Claude Code without being locked into a single vendor. Deployments can be self-hosted in one’s own cloud, giving organizations control over data and infrastructure.
Why It Is Gaining Attention
QM has attracted over 15,000 stars on GitHub, indicating strong interest from the developer community. Its appeal lies in addressing a growing need for AI tools that can operate securely within organizational boundaries while supporting both individual customization and team collaboration. As companies experiment with integrating AI agents into internal workflows, concerns about data privacy, model dependency, and access control have become more prominent. QM’s design — which isolates user scopes, allows admin-level configuration, and supports self-hosting — responds directly to these concerns.
The ability to use the same identity and configuration across Slack and the web app reduces friction for teams already using Slack for communication. Additionally, the project’s emphasis on open-source principles and composability — where core functionality remains generic while company-specific elements live in a deployment directory — makes it adaptable to various internal systems and workflows.
How It Works at a High Level
At the center of QM is a generic core that processes each turn using a variety of models and harnesses to generate responses. This core communicates over HTTP with several modules: a shared service for the web UI and admin panel, and another for the portal and optional auth broker. Slack integration runs as an in-process plugin that the core starts and supervises.
For persistent data, QM relies on a Postgres database when `DATABASE_URL` and `SESSION_STORE=postgres` are set. Without this configuration, session data lives only in process memory and is lost on restart. The development setup includes commands like `npm run dev-instance:web` or `npm run dev-instance:slack` to test against real models and a Postgres backend.
The agent’s tool surface is small and fixed, with one key tool being `execute`, which runs commands in an isolated sandbox tied to each scope. This sandbox is durable — meaning installed tools remain available across sessions. Memory can be scoped per user or room and, if needed, routed to external providers while still using the built-in notebook interface.
The frontend is built with Vite and Lit for the web UI, while the Slack plugin uses Bolt. The core runs on Node.js with Fastify handling HTTP requests.
Who It Is For and Real Use Cases
QM is aimed at startups and organizations looking to deploy AI agents that respect individual autonomy while enabling teamwork. Administrators can set org-level policies, choose which harnesses and models are available, and manage security and sharing settings.
Users can interact with QM to perform a range of work-related tasks: searching across internal notes, email, documents, databases, and the web; building and publishing internal apps to specific audiences; learning writing patterns from past messages to triage inboxes and generate reply drafts; working within existing code repositories to run tests, open pull requests, monitor CI, and check system logs; and tracking projects in shared channels by posting updates and follow-ups.
The system supports background operations through crons, file watches, and inbound webhooks, allowing the agent to act even when users are not actively engaged.
Honest Caveats
As with many early-stage open-source projects, QM may require significant setup and maintenance effort, particularly for self-hosted deployments. While the README provides guidance on deployment and development, it does not include detailed benchmarks, service-level guarantees, or information about long-term support. The project’s reliance on external models and harnesses means that performance and behavior will vary depending on the chosen backend.
Licensing details are not specified in the provided README, so users should review the repository directly to understand usage rights and obligations. Although the project highlights integrations with tools like OpenCode, Codex, and Claude Code, it does not claim official partnerships or endorsements from those projects.
For organizations considering adoption, the absence of a hosted default instance (beyond a third-party demo at agent37.com) means that most users will need to manage their own deployment or arrange hosting through a provider. The README invites infrastructure providers to offer hosted versions, suggesting that managed services may emerge over time.
Source: https://github.com/yc-software/qm





