Skip to content

Commit a993f5a

Browse files
committed
docs: update all documentation to resource-first command syntax
Update all user-facing documentation to use the new resource-first CLI syntax per RFC-0002 and ADR-0018. **Files updated:** - README.md: Quick start examples - docs/guide/getting-started.md: RFC and clause creation - docs/guide/rfcs.md: All RFC operations (list, finalize, advance, bump) - docs/guide/adrs.md: ADR operations (new, accept, deprecate, supersede, list) - docs/guide/work-items.md: Work item operations (new, move, add, remove, tick, list) **Command changes:** - `govctl rfc new` (was `govctl new rfc`) - `govctl work move` (was `govctl mv`) - `govctl clause edit` (was `govctl edit`) - `govctl work add` (was `govctl add`) - `govctl rfc list` (was `govctl list rfc`) - And all other resource-specific operations **Fixed errors:** - Corrected ADR editing docs (use get/set, not edit) - Updated filter syntax to positional arguments
1 parent 4c230f0 commit a993f5a

File tree

6 files changed

+60
-56
lines changed

6 files changed

+60
-56
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
3636

3737
- Remove 'normative = frozen' validation constraint (WI-2026-01-19-006)
3838
- Update .claude/CLAUDE.md to use --dry-run without -n (WI-2026-01-19-009)
39-
- Update assets/*.md files to use resource-first command syntax (WI-2026-01-19-010)
39+
- Update assets/\*.md files to use resource-first command syntax (WI-2026-01-19-010)
4040

4141
### Removed
4242

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,12 @@ Day 30: Two incompatible caching layers, no spec, nobody knows why
4141
### With govctl
4242

4343
```
44-
Day 1: govctl new rfc "Caching Strategy"
44+
Day 1: govctl rfc new "Caching Strategy"
4545
Day 2: RFC-0015 defines: Redis, TTL policy, invalidation rules
46-
Day 3: govctl advance RFC-0015 impl
46+
Day 3: govctl rfc advance RFC-0015 impl
4747
Day 7: Implementation complete, traceable to spec
48-
Day 10: govctl advance RFC-0015 test
49-
Day 14: Tests pass, govctl advance RFC-0015 stable
48+
Day 10: govctl rfc advance RFC-0015 test
49+
Day 14: Tests pass, govctl rfc advance RFC-0015 stable
5050
```
5151

5252
---
@@ -105,7 +105,7 @@ cargo install govctl --features tui
105105
govctl init
106106

107107
# Create your first RFC
108-
govctl new rfc "Feature Title"
108+
govctl rfc new "Feature Title"
109109

110110
# Validate
111111
govctl check

docs/guide/adrs.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ ADRs (Architectural Decision Records) document significant design choices. They
55
## Creating ADRs
66

77
```bash
8-
govctl new adr "Use Redis for caching"
8+
govctl adr new "Use Redis for caching"
99
```
1010

1111
This creates a TOML file in `gov/adr/` with the decision context.
@@ -21,10 +21,14 @@ ADRs contain:
2121

2222
## Editing ADRs
2323

24-
ADRs are TOML files — edit them directly or use govctl:
24+
ADRs are TOML files — edit them directly in your editor or use govctl to get/set fields:
2525

2626
```bash
27-
govctl edit ADR-0003
27+
# Get specific field
28+
govctl adr get ADR-0003 status
29+
30+
# Set field value
31+
govctl adr set ADR-0003 status accepted
2832
```
2933

3034
## Status Lifecycle
@@ -39,32 +43,32 @@ proposed → accepted → deprecated
3943
When consensus is reached:
4044

4145
```bash
42-
govctl accept ADR-0003
46+
govctl adr accept ADR-0003
4347
```
4448

4549
### Deprecate
4650

4751
When a decision is no longer relevant:
4852

4953
```bash
50-
govctl deprecate ADR-0003
54+
govctl adr deprecate ADR-0003
5155
```
5256

5357
### Supersede
5458

5559
When a new decision replaces an old one:
5660

5761
```bash
58-
govctl supersede ADR-0001 --by ADR-0005
62+
govctl adr supersede ADR-0001 --by ADR-0005
5963
```
6064

6165
This marks ADR-0001 as superseded and records ADR-0005 as its replacement.
6266

6367
## Listing ADRs
6468

6569
```bash
66-
govctl list adr
67-
govctl list adr --status accepted
70+
govctl adr list
71+
govctl adr list accepted # Filter by status
6872
```
6973

7074
## Why TOML?

docs/guide/getting-started.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ gov/
7373
## Create Your First RFC
7474

7575
```bash
76-
govctl new rfc "Feature Title"
76+
govctl rfc new "Feature Title"
7777
```
7878

7979
This creates `gov/rfc/RFC-0000/rfc.json` with the RFC metadata.
@@ -83,13 +83,13 @@ This creates `gov/rfc/RFC-0000/rfc.json` with the RFC metadata.
8383
RFCs are composed of clauses — atomic units of specification:
8484

8585
```bash
86-
govctl new clause RFC-0000:C-SCOPE "Scope" -s "Specification" -k normative
86+
govctl clause new RFC-0000:C-SCOPE "Scope" -s "Specification" -k normative
8787
```
8888

8989
## Edit Clause Content
9090

9191
```bash
92-
govctl edit RFC-0000:C-SCOPE --stdin <<'EOF'
92+
govctl clause edit RFC-0000:C-SCOPE --stdin <<'EOF'
9393
The feature MUST do X.
9494
The feature SHOULD do Y.
9595
EOF

docs/guide/rfcs.md

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ RFCs (Requests for Comments) are the normative specifications in govctl. They de
66

77
```bash
88
# Auto-assign next available ID
9-
govctl new rfc "Feature Title"
9+
govctl rfc new "Feature Title"
1010

1111
# Specify ID manually
12-
govctl new rfc "Feature Title" --id RFC-0010
12+
govctl rfc new "Feature Title" --id RFC-0010
1313
```
1414

1515
## RFC Structure
@@ -24,7 +24,7 @@ An RFC consists of:
2424
### Create a Clause
2525

2626
```bash
27-
govctl new clause RFC-0010:C-SCOPE "Scope" -s "Specification" -k normative
27+
govctl clause new RFC-0010:C-SCOPE "Scope" -s "Specification" -k normative
2828
```
2929

3030
Options:
@@ -36,13 +36,13 @@ Options:
3636

3737
```bash
3838
# From stdin
39-
govctl edit RFC-0010:C-SCOPE --stdin <<'EOF'
39+
govctl clause edit RFC-0010:C-SCOPE --stdin <<'EOF'
4040
The system MUST validate all inputs.
4141
The system SHOULD log validation failures.
4242
EOF
4343

4444
# Open in editor
45-
govctl edit RFC-0010:C-SCOPE
45+
govctl clause edit RFC-0010:C-SCOPE
4646
```
4747

4848
### Delete a Clause
@@ -60,13 +60,13 @@ govctl delete --clause RFC-0010:C-MISTAKE -f
6060
- The RFC status is `draft` (normative RFCs are immutable)
6161
- No other artifacts reference the clause
6262

63-
For normative RFCs, use `govctl deprecate RFC-0010:C-OLD` instead.
63+
For normative RFCs, use `govctl clause deprecate RFC-0010:C-OLD` instead.
6464

6565
### List Clauses
6666

6767
```bash
68-
govctl list clause
69-
govctl list clause --rfc RFC-0010
68+
govctl clause list
69+
govctl clause list RFC-0010
7070
```
7171

7272
## Status Lifecycle
@@ -82,7 +82,7 @@ draft → normative → deprecated
8282
When the spec is complete and approved:
8383

8484
```bash
85-
govctl finalize RFC-0010 normative
85+
govctl rfc finalize RFC-0010 normative
8686
```
8787

8888
This makes the RFC binding — implementation must conform to it.
@@ -92,7 +92,7 @@ This makes the RFC binding — implementation must conform to it.
9292
When an RFC is superseded or obsolete:
9393

9494
```bash
95-
govctl finalize RFC-0010 deprecated
95+
govctl rfc finalize RFC-0010 deprecated
9696
```
9797

9898
## Phase Lifecycle
@@ -106,9 +106,9 @@ spec → impl → test → stable
106106
### Advance Phase
107107

108108
```bash
109-
govctl advance RFC-0010 impl # Ready for implementation
110-
govctl advance RFC-0010 test # Implementation complete, ready for testing
111-
govctl advance RFC-0010 stable # Tested, ready for production
109+
govctl rfc advance RFC-0010 impl # Ready for implementation
110+
govctl rfc advance RFC-0010 test # Implementation complete, ready for testing
111+
govctl rfc advance RFC-0010 stable # Tested, ready for production
112112
```
113113

114114
Phase transitions are gated:
@@ -122,15 +122,15 @@ RFCs use semantic versioning:
122122

123123
```bash
124124
# Bump version with changelog entry
125-
govctl bump RFC-0010 --patch -m "Fix typo in clause C-SCOPE"
126-
govctl bump RFC-0010 --minor -m "Add new clause for edge case"
127-
govctl bump RFC-0010 --major -m "Breaking change to API contract"
125+
govctl rfc bump RFC-0010 --patch -m "Fix typo in clause C-SCOPE"
126+
govctl rfc bump RFC-0010 --minor -m "Add new clause for edge case"
127+
govctl rfc bump RFC-0010 --major -m "Breaking change to API contract"
128128
```
129129

130130
## Listing RFCs
131131

132132
```bash
133-
govctl list rfc
134-
govctl list rfc --status normative
135-
govctl list rfc --phase impl
133+
govctl rfc list
134+
govctl rfc list normative # Filter by status
135+
govctl rfc list impl # Filter by phase
136136
```

docs/guide/work-items.md

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ Work Items track units of work from inception to completion. They provide an aud
66

77
```bash
88
# Create in queue (pending)
9-
govctl new work "Implement caching layer"
9+
govctl work new "Implement caching layer"
1010

1111
# Create and activate immediately
12-
govctl new work --active "Urgent bug fix"
12+
govctl work new --active "Urgent bug fix"
1313
```
1414

1515
Work items are automatically assigned IDs like `WI-2026-01-17-001`.
@@ -35,26 +35,26 @@ queue → active → done
3535

3636
```bash
3737
# By ID
38-
govctl mv WI-2026-01-17-001 active
39-
govctl mv WI-2026-01-17-001 done
38+
govctl work move WI-2026-01-17-001 active
39+
govctl work move WI-2026-01-17-001 done
4040

4141
# By filename (without path)
42-
govctl mv implement-caching.toml active
42+
govctl work move implement-caching.toml active
4343
```
4444

4545
## Acceptance Criteria
4646

4747
### Add Criteria
4848

4949
```bash
50-
govctl add WI-2026-01-17-001 acceptance_criteria "Unit tests pass"
51-
govctl add WI-2026-01-17-001 acceptance_criteria "Documentation updated"
50+
govctl work add WI-2026-01-17-001 acceptance_criteria "Unit tests pass"
51+
govctl work add WI-2026-01-17-001 acceptance_criteria "Documentation updated"
5252
```
5353

5454
### Mark Criteria Complete
5555

5656
```bash
57-
govctl tick WI-2026-01-17-001 acceptance_criteria "Unit tests" -s done
57+
govctl work tick WI-2026-01-17-001 acceptance_criteria "Unit tests" -s done
5858
```
5959

6060
The pattern matches case-insensitively by substring.
@@ -64,7 +64,7 @@ The pattern matches case-insensitively by substring.
6464
Add context or progress notes:
6565

6666
```bash
67-
govctl add WI-2026-01-17-001 notes "Discovered edge case in validation"
67+
govctl work add WI-2026-01-17-001 notes "Discovered edge case in validation"
6868
```
6969

7070
## Removing Items
@@ -73,22 +73,22 @@ Remove items from array fields using flexible matching:
7373

7474
```bash
7575
# Substring match (default, case-insensitive)
76-
govctl remove WI-2026-01-17-001 notes "edge case"
76+
govctl work remove WI-2026-01-17-001 notes "edge case"
7777

7878
# Exact match
79-
govctl remove WI-2026-01-17-001 notes "Discovered edge case in validation" --exact
79+
govctl work remove WI-2026-01-17-001 notes "Discovered edge case in validation" --exact
8080

8181
# By index (0-based)
82-
govctl remove WI-2026-01-17-001 notes --at 0
82+
govctl work remove WI-2026-01-17-001 notes --at 0
8383

8484
# Negative index (from end)
85-
govctl remove WI-2026-01-17-001 notes --at -1
85+
govctl work remove WI-2026-01-17-001 notes --at -1
8686

8787
# Regex pattern
88-
govctl remove WI-2026-01-17-001 refs "RFC-.*" --regex
88+
govctl work remove WI-2026-01-17-001 refs "RFC-.*" --regex
8989

9090
# Remove all matches
91-
govctl remove WI-2026-01-17-001 refs "obsolete" --all
91+
govctl work remove WI-2026-01-17-001 refs "obsolete" --all
9292
```
9393

9494
## Deleting Work Items
@@ -109,16 +109,16 @@ govctl delete --work WI-2026-01-17-999 -f
109109
For work items that have been activated, use status transitions instead:
110110

111111
```bash
112-
govctl mv WI-2026-01-17-001 cancelled
112+
govctl work move WI-2026-01-17-001 cancelled
113113
```
114114

115115
## Listing Work Items
116116

117117
```bash
118-
govctl list work
119-
govctl list work queue # Pending items
120-
govctl list work active # In progress
121-
govctl list work done # Completed
118+
govctl work list
119+
govctl work list queue # Pending items
120+
govctl work list active # In progress
121+
govctl work list done # Completed
122122
```
123123

124124
## Why TOML?

0 commit comments

Comments
 (0)