logo
Kurashizu Blogwhere ideas flow
  • Home
  • News
  • Blog
  • About
  • Home
  • News
  • Blog
  • About

© 2026 Kurashizu. All rights reserved.

Admin·New Post·Service Status
Powered by Cloudflare·04.11.26
← Back to news

qm – Multiplayer agent harness for work

Original article
github.com|634 points|146 comments|by tosh|Jul 31, 2026

qm — An Enterprise-Grade Multiplayer Agent Harness

qm is a sophisticated framework designed to deploy AI agents across an entire organization. While scaling an agent to a whole company can be simple complex, qm provides the necessary infrastructure to manage that complexity.

🚀 Core Philosophy & Capabilities

The system balances individual autonomy with collective collaboration. Every employee receives a private, isolated workspace to ensure their work remains independent, yet they can seamlessly transition into collaborative modes via projects, group messages, and shared channels.

Scoped Resource Management

Each user and each shared room is granted its own dedicated environment. This "scope" includes:

  • Memory & Files: Private storage and context.
  • Keychain View: Secure credential management.
  • Permissions & Crons: Specific access rights and scheduled tasks.
  • Web Apps & Durable Sandboxes: Persistent computing environments.

Vendor Agnostic Architecture

You are not locked into a single AI provider. qm allows you to select and swap your preferred harness and model. The core system is compatible with:

  • Pi
  • OpenCode
  • Codex
  • Claude Code

Key Benefit: Because these different drivers all power the same core, your deployment remains portable and independent of any single vendor's ecosystem.

Organizational Control

Administrators can maintain a high-level overview and control via:

  1. Org-Level Config: Define the global security posture and available models.
  2. Internal App Distribution: Develop custom internal tools and publish them to specific user groups.
  3. Skill Management: Skills are owned by scopes but can be shared via grants. Admins can promote specific skills to the entire organization, and "skill packs" can be imported directly from Git repositories.

🛠️ Practical Applications

What can you actually achieve with qm?

  • Unified Knowledge Retrieval: Search across the "company brain," including databases, emails, internal documentation, notes, and the open web.
  • Internal Tooling: Create and deploy internal applications while ensuring their data stays synchronized.
  • Communication Automation: The agent learns your specific writing style from previous correspondence to triage your inbox, apply labels, and draft replies on a set schedule.
  • Developer Workflow: Operate within existing code repositories to monitor CI/CD, run test suites, check system logs, and open Pull Requests.
  • Project Management: Track milestones in shared channels with automated updates and follow-up reminders.

🏗️ Technical Architecture

The system is built as a headless core with optional plugins.

The Execution Flow

Every interaction passes through the central core, which utilizes the chosen model/harness to generate a response.

  • Persistence: A Postgres layer manages durable state, including session history and user data.
  • The Sandbox: The agent utilizes a limited toolset. The most powerful tool is execute, which runs commands inside a durable sandbox—a persistent computer where installed software remains available across sessions.
  • Plugin System: The Web UI, Admin Panel, and Public Portal are optional plugins interacting with the core via an HTTP API. Slack integration is an in-process plugin managed by the core via a direct service client.

Tech Stack

ComponentTechnology
Core LogicTypeScript on Node.js
HTTP FrameworkFastify
Slack IntegrationBolt
Web FrontendVite (Build) & Lit (Rendering)
Deploymentqm CLI (validates deployment directories)

Note: All substrates (memory, session stores, sandboxes) are abstracted behind interfaces, allowing production implementations to be swapped via a single wiring file.


🛡️ Security & Secrets

qm adopts the security model of local agents (like Claude Code): the agent operates as a proxy for the user, utilizing that specific user's credentials and permissions. All actions are fully audited.

Security Postures

The organization defines a base security posture, which individual scopes can further restrict (but not loosen).

Effective Permission=Org Posture∩Scope Restriction\text{Effective Permission} = \text{Org Posture} \cap \text{Scope Restriction}Effective Permission=Org Posture∩Scope Restriction

PostureBehavior
StrictEvery tool call requires human approval (except for "turn-ending" calls).
Auto (Default)A classifier screens tool results and external data before they reach the model.
DangerousNo content screening; no pauses between tool calls.

The Command Policy: Regardless of the posture (even in Dangerous mode), a predeclared policy enforces hard denials on destructive actions, such as recursive deletions or destructive SQL queries.

For a full breakdown of the threat model and operator assumptions, refer to SECURITY.md.


📦 Deployment Guide

To deploy qm for your organization, create a deployment repository that depends on the @yc-software/qm package.

Initialize your deployment:

npm exec --yes --package=@yc-software/qm@latest -- \
  qm init . \
  --org <your-org-slug> \
  --target <fly-or-aws>

Next Steps:

  1. Run npm install.
  2. Complete the initialization walkthrough to configure:
    • Infrastructure settings.
    • Web sign-in providers.
    • Connector credentials.
    • Optional Slack access.