# Deploy Qm

> Deploy the QM package from an organization-owned deployment repository to Fly.io or AWS, onboard an administrator, configure connectors, and optionally activate Slack.

- Skill: `yc-software/deploy-qm-2` (Agent Skill, multi-file: 8 files)
- Install (CLI): `npx skillmds@latest add yc-software/deploy-qm-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/yc-software/deploy-qm-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: yc-software (https://skillmd.com/u/yc-software)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/yc-software/deploy-qm-2

---


# Deploy QM

Read `../../../deployment.md` completely and follow it as the authoritative
workflow. Read only the selected provider reference. Read `references/email.md`
before collecting email secrets. Administrators can defer email setup and use
`qm admin-login`; ordinary email sign-in needs a transport. Read
`references/slack.md` only when Slack is requested.

A deployment needs a base model key and a way for people to sign in. Collect
both in the same pass. The base model provider is a deployment choice recorded
as `modelProvider`, not a setting to leave for the Admin page. Sign-in is either
the built-in `auth` broker, with optional email setup for an initial admin-only
deployment, or an external OIDC provider such as Slack. Read `references/email.md`
once the operator has chosen the broker.

Use the repository's installed `@yc-software/qm` dependency through
`npm exec qm -- <command>`. Do not require or clone the QM source repository.
Do not stop at infrastructure health: complete the acceptance checks and return
the handoff required by `deployment.md`. A web response without a generated
sidebar title is not a completed deployment.

