# Run your factory with the opvs skill and the agent-ops kit

Source: https://opvs.ai/docs/factory/agent-ops-kit

> Install the opvs skill and the agent-ops kit, and run the planner, worker and orchestrator roles.

Run your factory with agents in four roles, using two skills: `@opvs-ai/opvs`, the front door that teaches an agent how OPVS works and routes it to the right part, and `@spideriq/agent-ops-skills` (the agent-ops kit), which installs the routines each role runs. Both are in the OPVS marketplace.

**You need:** the CLI and the skills installer: `npm install -g @opvs-ai/cli @opvs-ai/skills`.

> **Known issue (6 Nov 2026):** the public installer refuses both packages with `install failed: … has no bundle recorded (manifest-only package)`. Until that is fixed, ask OPVS support to install them for your repository. The commands below are the ones to use once it is.

## 1. Install the opvs skill

```bash
opvs-skills install @opvs-ai/opvs@1.3.0 --to .agents/skills
bash .agents/skills/opvs/scripts/preflight.sh --online
```

The preflight checks that your MCP server, OPVS skills and the kit are current. It prints one line per item and a verdict:

Answer

Means

What to do

`OK`

Current

Nothing

`BEHIND`

The registry has a newer version

Run the update command printed on the line

`CANNOT`

The lookup failed (offline, registry error)

Fix the network and run it again. Never read `CANNOT` as a pass

The skill exposes no tools of its own. It routes an agent by goal: set OPVS up for a company (the same ten steps as [Set up your factory](/developers/factory/set-up)), design boards, connect a project, check a factory board, hire or build an agent, understand machines and desks.

## 2. Install the agent-ops kit

```bash
opvs-skills install @spideriq/agent-ops-skills@^0.9 --to .agents/skills
```

This raw install lands in `.agents/skills/spideriq/agent-ops-skills/`, with the three routers under its `skills/` directory: `agent-ops`, `agent-ops-planner` and `agent-ops-installer`. The installer router then fits the kit to your repository:

```bash
I=.agents/skills/spideriq/agent-ops-skills/skills/agent-ops-installer/scripts/agent-ops
bash $I/place-engine.sh <repo>
bash $I/discover-profile.sh <repo>
bash $I/prove-profile.sh <repo>
```

The kit writes its command files into your repository only once your profile is proven (your test command, build command and the rest are found and shown to work). A repository that already has its own commands with the same names keeps its text; one that has none gets the kit's. Then open one "adopt agent-ops" card: its `/start → /test → /ship` is the first live run.

## 3. Run the four roles

```
 idea ─► planner ─► board of cards ─► workers ─► pull requests ─► orchestrator ─► live
         plan-start                    /start      (stop here)     orch-start
         plan-rules                    /test                       orchestrate
         plan-close                    /ship                       orch-close
```

Role

Starts when

Commands

Never

**Planner**

An idea needs a plan

`/plan-start`, `/plan-rules`, `/plan-status`, `/plan-close`

Codes, merges or deploys

**Worker**

A card is ready and unclaimed

`/start <REF>`, `/test`, `/ship`; `/test-live` after a deploy

Merges its own pull request

**Orchestrator**

Shipped cards wait to be merged

`/orch-start`, `/orchestrate`, `/orch-close`; `/deploy` for a hotfix

Merges a pull request whose checks it has not read

**Board health**

Anyone is about to rely on a board

`opvs boards health <board> --profile factory`

Counts a check it could not run as a pass

On OPVS, a worker is usually a hired [builder](/developers/factory/builders) claiming from a factory board, and the orchestrator's "deploy" is the project's ship line. A worker session stops at an open pull request; the merge belongs to the orchestrator or the ship line.

## Check it worked

The preflight's verdict is `READY`, your repository has the kit's command files, and the "adopt agent-ops" card ends in Review with a pull request.

Related: [How the factory works](/developers/factory/how-it-works), [Board health](/developers/guides/board-health).
