Y Combinator · 2026-07-31 · major
QM — Y Combinator open-sources the multi-agent harness it runs internally
QM is an MIT-licensed multiplayer agent harness Y Combinator built for its own staff, released July 31, 2026. Each employee gets a scoped Slack + web workspace and can swap between Pi, OpenCode, Codex, and Claude Code without vendor lock-in.
Y Combinator's in-house multi-agent harness, now open-sourced under MIT — one core, four backends, Slack + web from day one.
Quick facts
| Maker | Y Combinator |
|---|---|
| License | MIT |
| Language | TypeScript (Node + Fastify + Postgres) |
| Supported harnesses | Pi, OpenCode, Codex, Claude Code |
| Interfaces | Slack + web app |
| Security postures | Strict, Auto, Dangerous |
| Install | npm exec --package=@yc-software/qm@latest -- qm init |
What is it?
QM is a self-hostable agent harness that Y Combinator built for its own accounting, legal, events, and engineering teams and released under MIT on July 31, 2026. It gives every employee a personal, scoped agent workspace that also shows up as a collaborator in Slack channels and projects — the same identity across both surfaces.
How does it work?
A generic TypeScript core (Node + Fastify + Postgres) runs the agent loop through pluggable model backends — Pi, OpenCode, Codex, or Claude Code all drive the same loop. Each user and each Slack room has its own scoped memory, files, keychain view, permissions, crons, and durable sandbox. A small fixed tool surface includes an `execute` tool that runs commands in that scope's sandbox, so installed packages persist between turns.
Why does it matter?
Most open agent harnesses ship a single-user experience; QM is one of the first to treat multi-tenant company deployment as the primary case, with admin controls, three security postures (Strict / Auto / Dangerous), and shared skills as first-class features. That fills a gap for startups that want internal agents but don't want to build the orchestration, sandbox, and Slack plumbing themselves.
Who is it for?
Startup engineering and ops teams building internal AI tooling on their own infrastructure.
Frequently asked questions
- What does QM stand for?
- QM is short for quartermaster, the naval role responsible for coordination and keeping order belowdecks. Y Combinator picked the name because QM does the same thing for a company's agents: each person and channel gets its own scoped memory, files, keychain view, permissions, crons, and durable sandbox, coordinated through one central core.
- Which models can QM run?
- QM is harness-agnostic and ships with adapters for Pi, OpenCode, Codex, and Claude Code — all four drive the same core loop, so a deployment can switch models per user or per room without changing the surrounding infrastructure. Y Combinator says this design was deliberate so no deployment gets locked into a single vendor.
- How is QM different from an existing personal agent like Claude Code?
- Personal agents assume one user; QM assumes a whole company. Each employee has an isolated workspace with their own memory, files, credentials, and sandbox, but the same identity works in shared Slack channels and projects. Admins set org-level policy, a security posture, and which harnesses and models are available.
- How do I deploy QM?
- QM is self-hosted in your own cloud account. Run `npm exec --yes --package=@yc-software/qm@latest -- qm init . --org <slug> --target <fly-or-aws>` and the CLI scaffolds an org-owned deployment repository, provisions Postgres for durable state, and optionally wires up the Slack plugin. The core runs TypeScript on Node with Fastify.
- What are QM's three security postures?
- QM ships with Strict (human approval required for every tool call), Auto (the default, with content screening applied), and Dangerous (no screening — the agent acts freely). The agent always acts as the person it's working for, with their credentials and permissions, so posture choice determines how much human review each turn gets.
Try it
npm exec --yes --package=@yc-software/qm@latest -- qm init . --org <slug> --target <fly-or-aws>