# Modules

> The parts of a project, and what the client report says about each.

Source: https://docs.crossbot.io/pmo/cli/reference/modules
Product: pmo · Kind: reference · Status: live · Last verified: 2026-10-21

{/* Generated by scripts/gen-pmo-cli-reference.mjs from `pmo help`. Do not edit by hand. */}
The parts of a project, and what the client report says about each. On your own computer, `pmo help <command>` prints the same text, for example `pmo help module list`.

## `pmo module list`

The modules an engagement declares.

```sh
pmo module list [<word>] [--eng <slug>] [--client <id>] [--project <id>] [--status <s>] [--health <h>] [--group <id>] [--waiting] [--all] [--json]
```

**Example**

```sh
pmo module list --project vault

`pmo help filters` prints these filters in full, and the bare-word search.
```

## `pmo module create`

Create a module; PMO gives it the handle &lt;client&gt;-&lt;project&gt;-&lt;module&gt;, the project being the record itself.

```sh
pmo module create --eng <slug> --name "<a plain-English name anyone can read>" [--project <id>] [--code <code>]
```

**Example**

```sh
pmo module create --eng accelerator --name "Retrieval v2" --as person:you
# handle <client>-<project>-<module>, the project being the record itself: cross-accelerator-retrievalv2 here;
# --code <code> picks the last part, and --project <id> still files it under a project entry

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module show`

One module, its project, and its activities grouped.

```sh
pmo module show <id> [--eng <slug>] [--group-by feature|track|status|owner] [--json]
```

**Example**

```sh
pmo module show retrieval-v1 --group-by status
```

## `pmo module set`

Write a module's name, code, status, owner, number, group and what a client reads about it.

```sh
pmo module set <id> <field=value> [<field=value>…] [--eng <slug>]
```

**Example**

```sh
pmo module set retrieval-v1 status=in_dev --as agent:rag
pmo module set parser --eng example-client next_step="Review it in the sandbox." next_step_owner=client progress=95 --as agent:rag
pmo module set grid-failover --eng accelerator project=grid --as agent:pmo   # a module in no project yet
pmo module set scoping --eng example-client client_visible=false --as agent:rag   # Internal only: the module, its features and tasks

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module plan`

Say whether a module was in the agreed plan or taken on later.

```sh
pmo module plan <id> planned|later|unreviewed [--all-below] [--eng <slug>] [--note "<why>"]
```

**Example**

```sh
pmo module plan import later --all-below --eng example-client --as agent:rag
pmo module plan sandbox planned --eng example-client --as person:you
pmo module plan sandbox unreviewed --eng example-client --as person:you   # nobody has reviewed it after all

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module archive`

Retire a module — only once it carries no unfinished work.

```sh
pmo module archive <id> [--eng <slug>] --as person:<id>
```

**Example**

```sh
pmo module archive grid-adoption --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module unarchive`

Bring a retired module back exactly as it was.

```sh
pmo module unarchive <id> [--eng <slug>] --as person:<id>
```

**Example**

```sh
pmo module unarchive grid-adoption --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module remove`

Take a module off the record — only once nothing names it.

```sh
pmo module remove <id> --eng <slug>
```

**Example**

```sh
pmo module remove spreadsheet-import-for-review --eng example-client --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module link add`

Add one item to a module's comms_pointers, linked_issues or related_workstreams.

```sh
pmo module link add <module> <comms_pointers|linked_issues|related_workstreams>=<item> --eng <slug>
```

**Example**

```sh
pmo module link add parser --eng example-client linked_issues="#412" --as agent:rag

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module link remove`

Take one item out of a module's comms_pointers, linked_issues or related_workstreams.

```sh
pmo module link remove <module> <comms_pointers|linked_issues|related_workstreams>=<item> --eng <slug>
```

**Example**

```sh
pmo module link remove parser --eng example-client linked_issues="#412" --as agent:rag

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module track add`

Add a track — a parallel line of work — to a module.

```sh
pmo module track add <module> id=<id> name="…" [status=… progress=<0-100> owner=… notes=…] --eng <slug>
```

**Example**

```sh
pmo module track add retrieval-v1 --eng accelerator id=t7 name="T7 · Rollout" status=planned --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module track set`

Change a module's track: its name, status, progress, owner or notes.

```sh
pmo module track set <module> <track> name=… | status=… | progress=<0-100> | owner=… | notes=… --eng <slug>
```

**Example**

```sh
pmo module track set retrieval-v1 t7 --eng accelerator progress=40 --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module track remove`

Take a track off a module.

```sh
pmo module track remove <module> <track> --eng <slug>
```

**Example**

```sh
pmo module track remove retrieval-v1 t7 --eng accelerator --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module blocker add`

Add a blocker or concern to a module.

```sh
pmo module blocker add <module> detail="…" [kind=blocker|concern] --eng <slug>
```

**Example**

```sh
pmo module blocker add grid-credentials --eng accelerator kind=blocker detail="Waiting on the key decision." --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module blocker remove`

Take a module's nth blocker off it, counting from 1.

```sh
pmo module blocker remove <module> <n> --eng <slug>
```

**Example**

```sh
pmo module blocker remove grid-credentials 1 --eng accelerator --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module after add`

Say a module waits on another module, or on a request to the client — a person's act.

```sh
pmo module after add <module> <predecessor-module> [--gate start|finish] [--when <stage>] [--note "…"] --eng <slug>
```

**Example**

```sh
pmo module after add wine-appraisal appraisal-import-module --eng example-client --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module after remove`

Take a module's edge off it — a person's act.

```sh
pmo module after remove <module> <predecessor-module> --eng <slug>
```

**Example**

```sh
pmo module after remove appraisal-import-module --request pend-022 --eng example-client --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module after list`

What each module waits on, whether it is met, and the sentence that says so.

```sh
pmo module after list [--eng <slug>] [--json]
```

**Example**

```sh
pmo module after list --eng example-client

`pmo help filters` prints these filters in full, and the bare-word search.
```

## `pmo module group list`

An engagement's module groups, in order, with their modules counted.

```sh
pmo module group list --eng <slug> [--json]
```

**Example**

```sh
pmo module group list --eng example-client

`pmo help filters` prints these filters in full, and the bare-word search.
```

## `pmo module group add`

Add a group the report lists modules under.

```sh
pmo module group add <id> --eng <slug> --name "<name>" [--description "<what it holds>"] [--order <n>]
```

**Example**

```sh
pmo module group add review --eng example-client --name "Human-in-the-Loop Review" --order 3 --as agent:rag

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module group set`

Rename a module group, describe it, move it in the order, or set its priority, status or progress.

```sh
pmo module group set <id> name=… | description=… | order=<n> | priority_label=… | status=… | progress=<0-100> | note=… --eng <slug>
```

**Example**

```sh
pmo module group set ml --eng example-client name="Machine Learning Use Cases" order=4 --as agent:rag

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module group remove`

Take a module group away — refused while a module or project names it.

```sh
pmo module group remove <id> --eng <slug> [--note "<why>"]
```

**Example**

```sh
pmo module group remove review --eng example-client --as agent:rag

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module page set`

Write a module page's Overview, Client Validation or Documentation — short lines; "- " is a bullet, \[title\](https://…) a link.

```sh
pmo module page set <module> overview=… | validation=… | documents=… --eng <slug>
```

**Example**

```sh
pmo module page set big-scraper --eng example-client overview="Big Scraper collects the documents example needs." --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module grade`

Have AI grade a module page A to F against the nine weekly checks, and record the grade.

```sh
pmo module grade <module> --eng <slug>
```

**Example**

```sh
pmo module grade big-scraper --eng example-client --as person:you

A write: it needs an identity (--as, or PMO_ACTOR) and PMO_WRITES=1.
`pmo whoami --grants` prints what this actor may do above the activity.
```

## `pmo module grades`

Every grade a module page was given, newest first, with its checks and fixes.

```sh
pmo module grades <module> --eng <slug> [--json]
```

**Example**

```sh
pmo module grades big-scraper --eng example-client
```
