@open-agent-toolkit/cli 0.0.36 → 0.0.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -27,6 +27,11 @@ Install the workflow skills with `oat tools install docs` (preferred) or
|
|
|
27
27
|
contributor guidance, and docs-app contract issues
|
|
28
28
|
- `oat-docs-apply` consumes the analysis artifact and applies only approved,
|
|
29
29
|
evidence-backed recommendations
|
|
30
|
+
- `oat-project-document` performs post-implementation docs sync for a tracked project,
|
|
31
|
+
including finding missing coverage for newly shipped capability areas and
|
|
32
|
+
recommending new docs pages or directories when existing docs do not provide
|
|
33
|
+
a natural home. See the [project lifecycle post-implementation flow](../workflows/projects/lifecycle.md#post-implementation-flow)
|
|
34
|
+
for where this runs in the tracked project flow.
|
|
30
35
|
|
|
31
36
|
## Contract model
|
|
32
37
|
|
|
@@ -18,7 +18,7 @@ OAT lifecycle order:
|
|
|
18
18
|
7. Summary (`oat-project-summary`) — generates `summary.md` as institutional memory; `oat-project-pr-final` and `oat-project-complete` auto-refresh it when missing or stale
|
|
19
19
|
8. PR (`oat-project-pr-progress` / `oat-project-pr-final`) — sets `pr_open` status
|
|
20
20
|
9. Revision loop (`oat-project-revise`) — optional; accepts post-PR feedback
|
|
21
|
-
10. Documentation sync (`oat-project-document`) — optional; reads project artifacts to identify docs needing updates, checks `tools.project-management`, and auto-runs `oat-pjm-update-repo-reference` before scanning docs when the project-management pack is installed
|
|
21
|
+
10. Documentation sync (`oat-project-document`) — optional; reads project artifacts and code evidence to identify docs needing updates, checks for missing coverage of newly shipped capability areas, checks `tools.project-management`, and auto-runs `oat-pjm-update-repo-reference` before scanning docs when the project-management pack is installed
|
|
22
22
|
11. Complete (`oat-project-complete`)
|
|
23
23
|
|
|
24
24
|
**Shortcut:** `oat-project-next` reads project state and invokes the correct next skill automatically — use it instead of remembering which skill comes next. Complements `oat-project-progress` (which is read-only diagnostic).
|
|
@@ -49,7 +49,7 @@ flowchart LR
|
|
|
49
49
|
After implementation and final review pass:
|
|
50
50
|
|
|
51
51
|
1. **Summary** (`oat-project-summary`) — generates `summary.md` as institutional memory from project artifacts; PR-final and completion will auto-refresh it if you have not already run it or if it is stale
|
|
52
|
-
2. **Documentation** (`oat-project-document`) — optional sync of project docs; now uses the shared `tools.project-management` config signal to decide whether repo-reference refresh should run before docs analysis
|
|
52
|
+
2. **Documentation** (`oat-project-document`) — optional sync of project docs; now uses the shared `tools.project-management` config signal to decide whether repo-reference refresh should run before docs analysis, and should recommend new docs pages/directories when the shipped work introduces a capability area that the docs app does not already cover
|
|
53
53
|
3. **PR** (`oat-project-pr-final`) — creates PR description (auto-refreshes `summary.md` first when needed, then uses it as source), sets `oat_phase_status: pr_open`, and tracks actual PR existence with `oat_pr_status` / `oat_pr_url`
|
|
54
54
|
4. **Revision loop** (`oat-project-revise`) — accepts post-PR feedback:
|
|
55
55
|
- Inline feedback creates `p-revN` revision phases with `prevN-tNN` task IDs
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: oat-project-document
|
|
3
|
-
version: 1.
|
|
3
|
+
version: 1.3.0
|
|
4
4
|
description: Run when implementation is complete and documentation needs updating. Analyzes project artifacts to produce documentation update recommendations, then applies approved changes before project completion.
|
|
5
5
|
argument-hint: '[project-path] [--auto]'
|
|
6
6
|
disable-model-invocation: true
|
|
@@ -195,9 +195,9 @@ These will be verified against actual code in Step 3.
|
|
|
195
195
|
- Quick-mode projects may lack spec.md and design.md — extract what's available
|
|
196
196
|
- If only plan.md exists (no implementation.md), the project may not have started implementation yet — still proceed, but note that documentation recommendations will be based on planned work rather than verified implementation
|
|
197
197
|
|
|
198
|
-
### Step 3: Verify Against Code
|
|
198
|
+
### Step 3: Verify Against Code and Build a Capability Inventory
|
|
199
199
|
|
|
200
|
-
Read source files referenced in artifacts to confirm what actually shipped.
|
|
200
|
+
Read source files referenced in artifacts to confirm what actually shipped, then do a targeted capability-discovery pass so the skill can catch newly introduced documentation surfaces rather than only updating already-documented ones.
|
|
201
201
|
|
|
202
202
|
**For each referenced source file:**
|
|
203
203
|
|
|
@@ -211,11 +211,31 @@ Read source files referenced in artifacts to confirm what actually shipped.
|
|
|
211
211
|
|
|
212
212
|
- Add code-verified details that artifacts didn't capture
|
|
213
213
|
- Note any discrepancies between artifacts and code (informational — include in delta plan as context, not as blocking issues)
|
|
214
|
+
- Organize the verified implementation into **capability areas** (for example: new app surface, CI/CD pipeline, release automation flow, deployment target, integration surface, CLI/config workflow)
|
|
215
|
+
|
|
216
|
+
**Targeted capability discovery pass:**
|
|
217
|
+
|
|
218
|
+
After verifying artifact-referenced files, inspect the strongest adjacent signals for newly shipped capability surfaces even when the exact docs target does not already exist.
|
|
219
|
+
|
|
220
|
+
Prioritize evidence from:
|
|
221
|
+
|
|
222
|
+
- new apps/packages/directories called out by the artifacts
|
|
223
|
+
- workflow/config files tied to shipped behavior (`.github/workflows`, release configs, deploy configs, mobile build/release files, etc.)
|
|
224
|
+
- entrypoints, route registration files, service modules, and schemas that define user- or operator-facing behavior
|
|
225
|
+
- package manifests and scripts that expose new setup, release, or operational workflows
|
|
226
|
+
|
|
227
|
+
For each significant capability area, capture:
|
|
228
|
+
|
|
229
|
+
- capability name
|
|
230
|
+
- concrete repo evidence proving it shipped
|
|
231
|
+
- likely audience (`developer`, `operator`, `integrator`, `end user`)
|
|
232
|
+
- whether the capability represents a new docs surface versus an addition to an existing surface
|
|
214
233
|
|
|
215
234
|
**Scope control:**
|
|
216
235
|
|
|
217
|
-
-
|
|
218
|
-
-
|
|
236
|
+
- Start with files directly referenced in artifacts, then inspect only the highest-signal adjacent files needed to understand the shipped capability areas
|
|
237
|
+
- Do not scan the entire codebase blindly; stay anchored to the implementation areas surfaced by the project artifacts
|
|
238
|
+
- If artifacts reference many files (>20), prioritize: new files first, then modified files with the most changes, then only the adjacent files needed to confirm docs impact
|
|
219
239
|
- Read file contents, not just check existence — the skill needs to understand what the code does to make good documentation recommendations
|
|
220
240
|
|
|
221
241
|
### Step 4: Discover Documentation Surfaces
|
|
@@ -228,6 +248,8 @@ Scan the repository for all documentation and instruction surfaces.
|
|
|
228
248
|
- Read the docs tooling config (e.g., `$DOCS_CONFIG`) to understand nav structure
|
|
229
249
|
- List all files in `$DOCS_ROOT` recursively
|
|
230
250
|
- Read existing docs files that could be affected by the project
|
|
251
|
+
- Identify the parent section or directory where each uncovered capability area would naturally live
|
|
252
|
+
- Note when no existing page or directory is a good fit — this is a strong signal for a `CREATE` recommendation, not a reason to force the content into an unrelated existing page
|
|
231
253
|
|
|
232
254
|
2. **Root README.md:**
|
|
233
255
|
- Always check — read current content
|
|
@@ -270,7 +292,38 @@ Scan the repository for all documentation and instruction surfaces.
|
|
|
270
292
|
|
|
271
293
|
Compare "what was built" (from Steps 2-3) against "what's documented" (from Step 4) to produce recommendations.
|
|
272
294
|
|
|
273
|
-
**5a.
|
|
295
|
+
**5a. Capability coverage assessment (required):**
|
|
296
|
+
|
|
297
|
+
Before recommending file-level edits, evaluate coverage for each significant capability area in the "what was built" model.
|
|
298
|
+
|
|
299
|
+
For each capability area, classify the documentation state as:
|
|
300
|
+
|
|
301
|
+
- **adequately covered** — existing docs already explain the shipped behavior accurately
|
|
302
|
+
- **thin coverage** — the area is mentioned, but important setup, workflow, or usage details are missing
|
|
303
|
+
- **no coverage** — no existing docs surface meaningfully covers the capability
|
|
304
|
+
|
|
305
|
+
For each capability with **thin coverage** or **no coverage**, determine the best docs home:
|
|
306
|
+
|
|
307
|
+
- **Expand an existing page** when a clear, discoverable page already owns the topic
|
|
308
|
+
- **Create a new page** when the topic is distinct enough to deserve its own entrypoint
|
|
309
|
+
- **Create a new docs directory** (with `index.md` entrypoint, where that is the local convention) when the shipped work introduces a new top-level capability area with multiple likely subtopics
|
|
310
|
+
|
|
311
|
+
Bias rules:
|
|
312
|
+
|
|
313
|
+
- If a docs app exists and the shipped work represents a new major capability area, do **not** default to stuffing the information into `README.md`, `roadmap.md`, or `current-state.md`
|
|
314
|
+
- Examples that often warrant `CREATE` recommendations: new mobile apps, CI/CD and release automation, new deployment targets, new integration surfaces, or new operator workflows
|
|
315
|
+
- If no existing docs section is a natural fit, prefer recommending a new page or directory rather than forcing an `UPDATE` on a loosely related page
|
|
316
|
+
|
|
317
|
+
Each coverage-gap finding should capture:
|
|
318
|
+
|
|
319
|
+
- capability area
|
|
320
|
+
- current docs state (`thin coverage` or `no coverage`)
|
|
321
|
+
- evidence proving the capability shipped
|
|
322
|
+
- likely audience
|
|
323
|
+
- suggested docs location (`existing page`, `new page`, or `new directory`)
|
|
324
|
+
- why that location is the right home
|
|
325
|
+
|
|
326
|
+
**5b. Documentation surface assessment:**
|
|
274
327
|
|
|
275
328
|
For each documentation surface relevant to the project, determine one of:
|
|
276
329
|
|
|
@@ -283,6 +336,7 @@ For each documentation surface relevant to the project, determine one of:
|
|
|
283
336
|
- Proposed file path
|
|
284
337
|
- Proposed content outline (section headings, key points)
|
|
285
338
|
- Why this warrants a new file (evidence)
|
|
339
|
+
- If inside a docs app, note any parent index/nav follow-on work that will be needed
|
|
286
340
|
|
|
287
341
|
- **SPLIT:** Existing doc would become too large with additions. Specify:
|
|
288
342
|
- Current file path and approximate size
|
|
@@ -291,7 +345,13 @@ For each documentation surface relevant to the project, determine one of:
|
|
|
291
345
|
|
|
292
346
|
- **No change:** Surface is already accurate — skip from delta plan.
|
|
293
347
|
|
|
294
|
-
|
|
348
|
+
When deciding between `UPDATE` and `CREATE`, prefer `CREATE` if:
|
|
349
|
+
|
|
350
|
+
- the capability currently has **no coverage**
|
|
351
|
+
- the docs app has no discoverable home for that topic
|
|
352
|
+
- the proposed addition would otherwise bury a new major workflow inside an unrelated page
|
|
353
|
+
|
|
354
|
+
**5c. Instruction surface assessment (strong signals only):**
|
|
295
355
|
|
|
296
356
|
Only recommend instruction changes when there is a clear trigger:
|
|
297
357
|
|
|
@@ -305,14 +365,17 @@ Only recommend instruction changes when there is a clear trigger:
|
|
|
305
365
|
|
|
306
366
|
If no strong signal is present for an instruction surface, skip it.
|
|
307
367
|
|
|
308
|
-
**
|
|
368
|
+
**5d. Per recommendation, capture:**
|
|
309
369
|
|
|
310
370
|
```
|
|
311
371
|
- Target: {file path — existing or proposed}
|
|
312
372
|
- Action: {UPDATE | CREATE | SPLIT}
|
|
313
373
|
- Summary: {1-2 sentences on what changes and why}
|
|
314
|
-
- Evidence: {artifact reference — e.g., "spec.md §3", "plan.md p02-t03", "implementation.md p01-t01 outcome"}
|
|
374
|
+
- Evidence: {artifact/code reference — e.g., "spec.md §3", "plan.md p02-t03", "implementation.md p01-t01 outcome", "workflow file X proves release automation shipped"}
|
|
375
|
+
- Audience: {developer | operator | integrator | end user}
|
|
315
376
|
- Content guidance: {specific content to add or outline for new files}
|
|
377
|
+
- Coverage state: {adequately covered | thin coverage | no coverage}
|
|
378
|
+
- Parent docs impact: {parent index/nav updates needed, or "none"}
|
|
316
379
|
```
|
|
317
380
|
|
|
318
381
|
### Step 6: Present Delta Plan
|
|
@@ -378,7 +441,8 @@ Execute the approved documentation updates.
|
|
|
378
441
|
2. **CREATE:**
|
|
379
442
|
- Create parent directories if needed (`mkdir -p`)
|
|
380
443
|
- Write the new file with the content outlined in the recommendation
|
|
381
|
-
- For docs directory files: follow the existing docs conventions (
|
|
444
|
+
- For docs directory files: follow the existing docs conventions for entrypoints and local navigation (for example, `index.md` entrypoints and `## Contents` sections where that is the local pattern)
|
|
445
|
+
- If the recommendation created a new docs directory, add the required entrypoint file for that directory as part of the same change
|
|
382
446
|
|
|
383
447
|
3. **SPLIT:**
|
|
384
448
|
- Create the new file with the content being moved
|
|
@@ -475,7 +539,9 @@ Next steps:
|
|
|
475
539
|
## Success Criteria
|
|
476
540
|
|
|
477
541
|
- All documentation surfaces relevant to the project are scanned
|
|
542
|
+
- Significant capability areas from the "what was built" model are classified as `adequately covered`, `thin coverage`, or `no coverage` before file-level recommendations are chosen
|
|
478
543
|
- Recommendations are evidence-based (every recommendation cites artifact/code sources)
|
|
544
|
+
- `CREATE` actions are recommended when no existing docs surface is a natural fit, including new docs pages or directories when the shipped work introduces a new capability area
|
|
479
545
|
- Interactive approval flow works correctly (all/individual/skip)
|
|
480
546
|
- `--auto` mode applies all changes without user interaction
|
|
481
547
|
- New files and splits are handled correctly
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@open-agent-toolkit/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.37",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Open Agent Toolkit CLI",
|
|
6
6
|
"homepage": "https://github.com/voxmedia/open-agent-toolkit/tree/main/packages/cli",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"ora": "^9.0.0",
|
|
34
34
|
"yaml": "2.8.2",
|
|
35
35
|
"zod": "^3.25.76",
|
|
36
|
-
"@open-agent-toolkit/control-plane": "0.0.
|
|
36
|
+
"@open-agent-toolkit/control-plane": "0.0.37"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@types/node": "^22.10.0",
|