@opscotch/oms
v0.2.0
Published
Opscotch Management System — install CLI for Cursor and project scaffold
Readme
@opscotch/oms (CLI)
OMS installer — install the OMS application into a folder (§3.1 + §13 layout), copy oms-assistant into Cursor, merge .cursor/mcp.json. OMS projects are created later with @oms-assistant.
Epic E0 I0 — dogfood via npm link; npm publish is I1 (not in this package version).
Install from source (pre-publish)
From the repository root (optional: run ./scripts/sync-public.sh to refresh a local oms clone):
# 1. Sync public repo (skills + packages + templates)
./scripts/sync-public.sh
# 2. Link CLI from monorepo
cd packages/cli
npm install
npm run prepare # bundle skills + templates into packages/cli/bundle
npm link
# 3. Install (creates an installation folder named after the installation, e.g. ../oms-dev)
mkdir -p /tmp && cd /tmp
oms install
# Default path: /tmp/{installation-slug} — not necessarily your current folder
# or non-interactive (SC-15):
oms install --yes \
--directory /tmp/oms-install-ci \
--ide cursor \
--display-name "Glen" \
--installation-name "oms-dev" \
--chat-language English \
--document-language EnglishInteractive install asks a capability profile (six areas + guidance style) so agents match explanation depth to your background.
Open the target folder in Cursor or Codex → @oms-assistant to finish setup (setup.yaml stays completed: false until then). Then use create project, edit project, or list projects.
Cursor: install writes .cursor/mcp.json (Public + Local Dev MCP), .cursor/permissions.json (Opscotch MCP allowlist — requires Cursor Run Mode), and oms-assistant skill.
Codex: install writes .codex/config.toml, .agents/skills/oms-assistant/, and root AGENTS.md.
Commands
| Command | Description |
|---------|-------------|
| oms install | Interactive install (guided prompts) |
| oms install --yes … | Non-interactive; same tree as express interactive when flags match |
Flags
| Flag | Purpose |
|------|---------|
| --directory | Target folder; if omitted, interactive install defaults to current folder |
| --ide | cursor or codex (v1 parity) |
| --display-name | Prefill for Assistant |
| --installation-name | .oms/installation.yaml name (installation display name) |
| --project-name | [deprecated] Alias for --installation-name (one release) |
| --chat-language | Seeds .oms/config.yaml |
| --document-language | Seeds .oms/config.yaml |
| --yes | Skip prompts (CI / automation) |
Monorepo layout
oms/ (public, publish target)
├── packages/cli/ ← this package (@opscotch/oms)
├── skills/ ← oms-assistant (v1 bundle)
└── templates/ ← customer scaffold sourceSee the repository root README.md for the full setup flow.
Upgrade re-runs
Re-running oms install in an existing OMS installation refreshes .cursor/skills/oms-assistant and merges MCP without clobbering team-info member files. Non-empty non-OMS directories prompt for confirmation (interactive) or fail (--yes).
Customer path (I1)
npx @opscotch/oms installNot published until Epic E0 I1.
Release checklist (I1)
Before npm publish, follow _bmad-output/planning-artifacts/addendum-cli-versioning-production.md §4:
- Bump
packages/cli/package.jsonversion(clean semver, e.g.0.1.0). - Run
npm run prepare— syncstemplates/.oms-versionto the same semver and refreshesbundle/. npm testinpackages/cli.- Smoke:
oms --version, interactiveoms install(logo shows version),oms install --yes(no logo). - Confirm
.oms/.oms-versionin a fresh install equals the published CLI version (FR-162).
