create-pmos 0.38.5 → 0.38.7
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.
- package/package.json +1 -1
- package/payload/AGENTS.md +1 -1
- package/payload/KIT-VERSION +2 -2
- package/payload/okf/core/templates/report-rubric-template.md +35 -0
- package/payload/okf/core/templates/report-weekly-template.md +21 -10
- package/payload/okf/core/templates/requirements-brief-template.md +61 -0
- package/payload/planning/evals/eval-calibration.md +1 -1
- package/payload/planning/okrs/health-budgets.md +1 -1
- package/payload/skills/design-brief.skill +5 -6
- package/payload/skills/discovery.skill +1 -2
- package/payload/skills/eval-rubric.skill +2 -5
- package/payload/skills/pm-communication.skill +123 -0
- package/payload/skills/pmos-router.skill +4 -2
- package/payload/skills/prd.skill +7 -13
- package/payload/skills/requirements-elicitation.skill +231 -0
- package/payload/skills/technical-writing-ste.skill +5 -3
- package/payload/skills-native/design-brief/SKILL.md +5 -6
- package/payload/skills-native/discovery/SKILL.md +1 -2
- package/payload/skills-native/eval-rubric/SKILL.md +2 -5
- package/payload/skills-native/pm-communication/SKILL.md +125 -0
- package/payload/skills-native/pmos-router/SKILL.md +4 -2
- package/payload/skills-native/prd/SKILL.md +7 -13
- package/payload/skills-native/requirements-elicitation/SKILL.md +233 -0
- package/payload/skills-native/technical-writing-ste/SKILL.md +5 -3
- package/payload/state/discoveries.md +1 -1
- package/payload/state/log.md +1 -1
- package/workspace/package-lock.json +1 -1
- package/workspace/package.json +1 -1
- package/workspace/skills/gather-requirements.skill +13 -1
- package/workspace/skills/report-biweekly.skill +5 -5
- package/workspace/skills/report-daily.skill +5 -5
- package/workspace/skills/report-monthly.skill +5 -5
- package/workspace/skills/report-special.skill +3 -3
- package/workspace/skills/report-weekly.skill +5 -5
- package/workspace/skills/weekly-report.skill +3 -2
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: requirements-elicitation
|
|
3
|
+
description: Turn a vague ask, or notes the PM gathered, into a requirements brief by asking the PM questions one at a time. Use when the PM wants to gather, clarify or sharpen requirements, or before any lane writes its first artifact (PRD, spike brief, fix specification, content brief).
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
pmos-version: 1.0.0
|
|
7
|
+
pmos-owner: wawan
|
|
8
|
+
pmos-risk: low
|
|
9
|
+
pmos-category: planning
|
|
10
|
+
pmos-scope: read:okf, read:planning, read:state, write:planning/briefs
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# requirements-elicitation — Ask until the requirement is sharp
|
|
14
|
+
|
|
15
|
+
This skill is the one place where PMOS states how an agent asks the PM questions. It also
|
|
16
|
+
holds the questions each lane needs. Its output is a requirements brief that a PRD, a spike
|
|
17
|
+
brief or a fix specification starts from. It does not write those documents.
|
|
18
|
+
|
|
19
|
+
> **Format note:** this skill follows [SKILL-FORMAT](/skills/SKILL-FORMAT.md). The text is
|
|
20
|
+
> instructional (class A of [technical-writing-ste](/skills/technical-writing-ste.skill)).
|
|
21
|
+
|
|
22
|
+
## When to use vs. not
|
|
23
|
+
|
|
24
|
+
- **Use** when the PM asks to gather, clarify or sharpen requirements.
|
|
25
|
+
- **Use** before the first artifact of any lane, when the intent is not yet unambiguous.
|
|
26
|
+
- **Do not use** to decide the lane. That is the [pmos-router](/skills/pmos-router.skill).
|
|
27
|
+
- **Do not use** to judge whether to build at all. That is the
|
|
28
|
+
[strategic-brief](/skills/strategic-brief.skill).
|
|
29
|
+
- **Do not use** when an instance of the idea is needed before the PM can judge it. Route to the
|
|
30
|
+
prototype lane first.
|
|
31
|
+
|
|
32
|
+
## The asking rule
|
|
33
|
+
|
|
34
|
+
This rule holds in every step below. Other skills point here and do not repeat it.
|
|
35
|
+
|
|
36
|
+
1. Ask one question at a time.
|
|
37
|
+
2. Give a recommended answer with each question.
|
|
38
|
+
3. Do not set a limit on the number of questions. Stop when the intent is unambiguous.
|
|
39
|
+
4. Do not send a batch questionnaire. A batch does not satisfy this rule.
|
|
40
|
+
5. Look up each fact that the repository or the record can answer. Do not ask the PM for it.
|
|
41
|
+
6. Leave each decision to the PM.
|
|
42
|
+
7. Write nothing until the PM confirms the shared understanding.
|
|
43
|
+
|
|
44
|
+
## Procedure
|
|
45
|
+
|
|
46
|
+
1. **Find the lane.** Read the initiative record and its `type`. Run
|
|
47
|
+
`node scripts/workflow-state.js --lanes --json` (in a kit repository the script is
|
|
48
|
+
`pmos/scripts/workflow-state.js`). Find the lane in `defs`.
|
|
49
|
+
State the lane's `input`, `output` and `done` in plain words before the first question.
|
|
50
|
+
*Done when:* the PM has seen the lane's input, output and done-rule.
|
|
51
|
+
|
|
52
|
+
If the script is missing or the lane is not in `defs`, say so. Ask the PM which lane applies.
|
|
53
|
+
Do not guess a question set.
|
|
54
|
+
|
|
55
|
+
2. **Look up what exists.** Read the record, the PRD or brief if one exists, the OKR the
|
|
56
|
+
record names, and the explainer if the surface exists. Collect the facts you found.
|
|
57
|
+
*Done when:* every fact you will use has a source, and none of them is a question for the PM.
|
|
58
|
+
|
|
59
|
+
3. **Read the gathered notes.** List `<state>/requirements/*.md`. `<state>` is `pmos/state/`
|
|
60
|
+
if it exists, and `planning/` if not. Select each item whose `initiative` names this
|
|
61
|
+
initiative. Show each item to the PM with its pointer and its `confidence`. Ask for one
|
|
62
|
+
answer per item: confirmed, rejected or deferred. Record the answer.
|
|
63
|
+
- A confirmed item goes in the brief under *Decisions*, with its pointer.
|
|
64
|
+
- A rejected item is dropped. Name it in *Gathered notes used* as rejected.
|
|
65
|
+
- A deferred item goes in *Open questions*.
|
|
66
|
+
- An item with `confidence: unconfirmed` stays unconfirmed until the PM answers. Never write
|
|
67
|
+
it as a fact.
|
|
68
|
+
- Name a note that does not parse. Skip it.
|
|
69
|
+
- If no notes exist, say so and continue.
|
|
70
|
+
|
|
71
|
+
Never edit a note. The notes are read-only drafts (D71).
|
|
72
|
+
*Done when:* every selected item has an answer, or the PM has said to skip the notes.
|
|
73
|
+
|
|
74
|
+
4. **Ask the topic questions.** Work through the [question inventory](#question-inventory).
|
|
75
|
+
Skip a topic the lane's input does not need, and say that you skipped it.
|
|
76
|
+
Skip a question that step 2 or step 3 already answered.
|
|
77
|
+
*Done when:* each topic is answered, skipped with a reason, or listed in *Open questions*.
|
|
78
|
+
|
|
79
|
+
5. **Ask the lane questions.** Find the lane in [Question sets by lane](#question-sets-by-lane).
|
|
80
|
+
Ask each question there that the earlier steps did not answer.
|
|
81
|
+
*Done when:* every element of the lane's `input` has an answer or an *Open questions* entry.
|
|
82
|
+
|
|
83
|
+
6. **Confirm.** Say the shared understanding back to the PM in one short list. Ask the PM to
|
|
84
|
+
confirm or correct it.
|
|
85
|
+
*Done when:* the PM has confirmed. If the PM corrects it, go back to step 4.
|
|
86
|
+
|
|
87
|
+
7. **Write the brief.** Copy the
|
|
88
|
+
[requirements-brief-template](/okf/core/templates/requirements-brief-template.md). Fill every
|
|
89
|
+
section from the confirmed answers, in the PM's words where the PM gave words. Write it to
|
|
90
|
+
`planning/briefs/<id>-requirements.md`. Set `brief_path` on the initiative record. If the lane
|
|
91
|
+
uses `prd_path` for its first artifact and that file does not exist yet, tell the PM that the
|
|
92
|
+
brief is the input and that the lane's own skill writes `prd_path`.
|
|
93
|
+
*Done when:* the file exists, no section is empty, and `brief_path` is set.
|
|
94
|
+
|
|
95
|
+
8. **Hand over.** Name the next skill for the lane: [prd](/skills/prd.skill) for
|
|
96
|
+
feature and new-feature, [discovery](/skills/discovery.skill) for discovery,
|
|
97
|
+
[copywriting](/skills/copywriting.skill) for content, and the lane's own
|
|
98
|
+
template for the others. State the open questions that remain.
|
|
99
|
+
*Done when:* the PM knows what comes next and what is still open.
|
|
100
|
+
|
|
101
|
+
## Question inventory
|
|
102
|
+
|
|
103
|
+
Each topic has an opening question. Add follow-up questions when the answer is vague.
|
|
104
|
+
|
|
105
|
+
| Topic | Opening question |
|
|
106
|
+
|---|---|
|
|
107
|
+
| Problem and user | Who has this problem, and what do they do today instead? |
|
|
108
|
+
| Evidence | What shows that the problem is real: a number, a ticket, a quote, an incident? |
|
|
109
|
+
| Constraints | What is fixed: a date, a budget, a technology, a rule or a promise already made? |
|
|
110
|
+
| Stakeholders and decision owner | Who is affected, who must agree, and who decides if they disagree? |
|
|
111
|
+
| Dependencies | What must exist, or be done by someone else, before this can work? |
|
|
112
|
+
| Data | What data does this read or change, and who owns it? |
|
|
113
|
+
| Non-functional needs | What must hold about speed, security, privacy, access or cost? |
|
|
114
|
+
| Risks | What is the worst way this fails, and how would we notice? |
|
|
115
|
+
| Success measure | Which measure moves if this works, from what value to what value, by when? |
|
|
116
|
+
| Out of scope | What will this not do, even though someone might expect it to? |
|
|
117
|
+
|
|
118
|
+
## Question sets by lane
|
|
119
|
+
|
|
120
|
+
Each lane has its own heading. The headings use the lane names in `scripts/lane-defs.js`.
|
|
121
|
+
A lane name that both profiles use (discovery, chore) has one set.
|
|
122
|
+
|
|
123
|
+
### Lane `feature`
|
|
124
|
+
|
|
125
|
+
1. What behaviour changes for the user, in one sentence?
|
|
126
|
+
2. Does the surface exist today? If yes, what does it do now?
|
|
127
|
+
3. Which KR or health budget does this serve?
|
|
128
|
+
4. Can the PM judge this from a description, or must the PM see an instance first?
|
|
129
|
+
5. What would the PM check by hand to accept it?
|
|
130
|
+
|
|
131
|
+
### Lane `new-feature`
|
|
132
|
+
|
|
133
|
+
1. Who has the problem, and how often does it happen?
|
|
134
|
+
2. What shows that it is real?
|
|
135
|
+
3. What do users do today?
|
|
136
|
+
4. What must a first version do, and what can wait?
|
|
137
|
+
5. What would make the PM drop it?
|
|
138
|
+
|
|
139
|
+
### Lane `improvement`
|
|
140
|
+
|
|
141
|
+
1. What does the feature do now? Look it up first.
|
|
142
|
+
2. What is wrong or missing, and for whom?
|
|
143
|
+
3. Which measure should the change move, and by how much?
|
|
144
|
+
4. What must stay the same?
|
|
145
|
+
5. How will we tell that it worked?
|
|
146
|
+
|
|
147
|
+
### Lane `bug-fix`
|
|
148
|
+
|
|
149
|
+
1. What are the steps that reproduce it?
|
|
150
|
+
2. What is the expected result?
|
|
151
|
+
3. What is the actual result?
|
|
152
|
+
4. How severe is it, and who is affected?
|
|
153
|
+
5. Is there a workaround?
|
|
154
|
+
|
|
155
|
+
### Lane `discovery`
|
|
156
|
+
|
|
157
|
+
1. What is the question, in one sentence?
|
|
158
|
+
2. What is unknown, and what is already known?
|
|
159
|
+
3. What evidence would end the spike?
|
|
160
|
+
4. What would make this worth picking up, and what would make it worth dropping?
|
|
161
|
+
5. How long may it take?
|
|
162
|
+
|
|
163
|
+
### Lane `chore`
|
|
164
|
+
|
|
165
|
+
1. What is the intent, in one paragraph?
|
|
166
|
+
2. Which health budget does it serve?
|
|
167
|
+
3. What must not change?
|
|
168
|
+
4. How will the PM see that it is done?
|
|
169
|
+
|
|
170
|
+
### Lane `incident`
|
|
171
|
+
|
|
172
|
+
1. What broke, and who noticed?
|
|
173
|
+
2. What is the cause?
|
|
174
|
+
3. What was the repair, and is it permanent?
|
|
175
|
+
4. What stops it from happening again?
|
|
176
|
+
5. When was it fixed? The record is due within 48 hours.
|
|
177
|
+
|
|
178
|
+
### Lane `content`
|
|
179
|
+
|
|
180
|
+
1. Who reads it, and what should they do after?
|
|
181
|
+
2. What is the one message?
|
|
182
|
+
3. What tone and length does the reader expect?
|
|
183
|
+
4. What facts must it contain, and where are they?
|
|
184
|
+
5. Does the PM want a rubric?
|
|
185
|
+
|
|
186
|
+
### Lane `prototype`
|
|
187
|
+
|
|
188
|
+
1. What judgement does the PM need to make?
|
|
189
|
+
2. Which format fits the specimens: a screen, a sample output, a transcript or a schema?
|
|
190
|
+
3. What should the 2–3 specimens differ on?
|
|
191
|
+
4. Which conventions does the class need before the specimens (design system, skill format)?
|
|
192
|
+
|
|
193
|
+
### Lane `prd`
|
|
194
|
+
|
|
195
|
+
1. What is the question the document answers?
|
|
196
|
+
2. Who reads it?
|
|
197
|
+
3. Which decision does it inform?
|
|
198
|
+
4. What do the readers already know?
|
|
199
|
+
|
|
200
|
+
### Lane `strategy`
|
|
201
|
+
|
|
202
|
+
1. What is the question the document answers?
|
|
203
|
+
2. Who reads it?
|
|
204
|
+
3. Which decision does it inform?
|
|
205
|
+
4. Over what period?
|
|
206
|
+
|
|
207
|
+
### Lane `project-plan`
|
|
208
|
+
|
|
209
|
+
1. What is in scope, and what is out?
|
|
210
|
+
2. Who is on it, and for how much of their time?
|
|
211
|
+
3. Which dates are fixed, and who fixed them?
|
|
212
|
+
4. What does it depend on?
|
|
213
|
+
|
|
214
|
+
### Lane `decision-record`
|
|
215
|
+
|
|
216
|
+
1. What are the options?
|
|
217
|
+
2. Which one was chosen, and by whom?
|
|
218
|
+
3. What is the reason?
|
|
219
|
+
4. What would reverse the choice?
|
|
220
|
+
|
|
221
|
+
### Lane `report`
|
|
222
|
+
|
|
223
|
+
1. What period or subject does it cover?
|
|
224
|
+
2. Who reads it?
|
|
225
|
+
3. What should the reader do after reading?
|
|
226
|
+
4. Which sources does it use, and which can it not reach?
|
|
227
|
+
|
|
228
|
+
## Failure behaviour
|
|
229
|
+
|
|
230
|
+
- The lane definition cannot be read: say so, and ask the PM which lane applies.
|
|
231
|
+
- No gathered notes exist: say so, and continue.
|
|
232
|
+
- A note does not parse: name it, and skip it.
|
|
233
|
+
- The PM leaves a question open: write it under *Open questions*. Do not answer it.
|
|
@@ -41,7 +41,7 @@ Ask what the reader must do with it. Derive the class from the path, not from fe
|
|
|
41
41
|
| Class | What the reader must do | Where it lives |
|
|
42
42
|
|---|---|---|
|
|
43
43
|
| **A — instructional** | **Act**, correctly, on one reading | `skills/**` · playbooks and runbooks · gate and CI failure strings · UI copy and microcopy · tool descriptions · template usage notes |
|
|
44
|
-
| **B — descriptive** | **Understand**, not obey | `okf/**` concepts and references · explainers · `**/README.md` · design and data-model docs |
|
|
44
|
+
| **B — descriptive** | **Understand**, not obey | `okf/**` concepts and references · explainers · `**/README.md` · design and data-model docs · agent-drafted status reports and stakeholder updates (`planning/reports/**`, `<state>/reports/**`) |
|
|
45
45
|
| **C — argumentative** | **Weigh a judgement under uncertainty** | ADRs and decision records · `planning/prd/**` · briefs · the discoveries log · eval verdicts · PR bodies |
|
|
46
46
|
|
|
47
47
|
The three classes are the rule. **The paths are your repo's, so write them down once.** In PMOS they
|
|
@@ -50,8 +50,10 @@ also cover `build-skills/**` and `okf/core/playbooks/**` (A), `planning/explaine
|
|
|
50
50
|
cover your CLI output, your error strings and your component copy (A), and your architecture notes
|
|
51
51
|
(B). When a path is not on your list, ask the question in column two and add the answer to the list.
|
|
52
52
|
|
|
53
|
-
|
|
54
|
-
**new and modified text only** — never rewrite an existing corpus to satisfy it.
|
|
53
|
+
Three boundary rules. **Text the PM wrote is Class C**, whatever it is about. The profile binds
|
|
54
|
+
**new and modified text only** — never rewrite an existing corpus to satisfy it. And inside an
|
|
55
|
+
agent-drafted status report or update, the request in *Needs your call* is **Class A**: the reader
|
|
56
|
+
must act on it, so write one question, the options, your recommendation and the date.
|
|
55
57
|
|
|
56
58
|
**Done when:** you can name the class and the row that put it there.
|
|
57
59
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
type: Reference
|
|
3
3
|
title: "Discoveries and friction log"
|
|
4
4
|
description: "Append-only record of what runs discovered and where the process rubbed."
|
|
5
|
-
generated: {by: process:create-pmos, at: "2026-10-
|
|
5
|
+
generated: {by: process:create-pmos, at: "2026-10-03T01:20:42Z"}
|
|
6
6
|
status: stable
|
|
7
7
|
---
|
|
8
8
|
|
package/payload/state/log.md
CHANGED
package/workspace/package.json
CHANGED
|
@@ -4,6 +4,10 @@ label: "Gather requirements"
|
|
|
4
4
|
description: "Read what changed in the PM's mail, chat, Jira, Confluence, calendar and meeting notes since the last note, and file one dated note of requirements — each with its source, how sure it is, and which initiative it touches."
|
|
5
5
|
run: agent
|
|
6
6
|
agent: claude
|
|
7
|
+
version: 1.1.0
|
|
8
|
+
owner: wawan
|
|
9
|
+
risk: low
|
|
10
|
+
scope: read:connectors, read:state, write:state/requirements
|
|
7
11
|
output:
|
|
8
12
|
- New or changed requirements
|
|
9
13
|
- Validations and contradictions
|
|
@@ -20,17 +24,22 @@ Rules that always hold:
|
|
|
20
24
|
4. NOTHING INVENTED. If a source is not reachable in this session, say so under "Sources reached and not reached". If nothing changed, say that. An honest empty note is correct.
|
|
21
25
|
5. UNCONFIRMED IS ALLOWED. Mark every item `confidence: unconfirmed` or `confirmed` (confirmed = a person with authority said it in a decision, an approved document or a closed ticket). A note is evidence, never a decision or an acceptance.
|
|
22
26
|
|
|
23
|
-
Procedure:
|
|
27
|
+
Procedure (each step ends with a check that shows it is done):
|
|
24
28
|
1. Find the state directory: `pmos/state/` if it exists, otherwise `planning/`. The note goes in `<state>/requirements/YYYY-MM-DD.md` (today's date). If today's file already exists, do NOT overwrite it: append a section `## Later run HH:MM`.
|
|
29
|
+
Done when: the target path is named, and an existing file is still intact.
|
|
25
30
|
2. Read the previous note in that folder to learn the cutoff. With no previous note, look back 3 days.
|
|
31
|
+
Done when: you can state the cutoff as a date and time.
|
|
26
32
|
3. Read the initiatives in `<state>/initiatives/` (or `planning/initiatives/`) so you can say which one an item touches. Match by what the item is about, not by keyword.
|
|
33
|
+
Done when: you have the list of initiative ids that an item can name.
|
|
27
34
|
4. For each source you can reach, read what changed since the cutoff: mail, chat, Jira, Confluence, calendar events with their notes, meeting notes.
|
|
35
|
+
Done when: each source kind is either read or marked not reached.
|
|
28
36
|
5. For each requirement found, write one item:
|
|
29
37
|
- the requirement, in your words
|
|
30
38
|
- pointer: kind · id or link · date · author
|
|
31
39
|
- confidence: unconfirmed | confirmed
|
|
32
40
|
- relation: validates | clarifies | extends | contradicts | none
|
|
33
41
|
- initiative: its id, or `unmatched`
|
|
42
|
+
Done when: every item has all five fields and a pointer.
|
|
34
43
|
6. Start the file with this frontmatter (OKF v0.2, D73). Every key is on ONE line — never indent a key under another, because the readers stop at the first indented line. Then the four sections above, in this order:
|
|
35
44
|
```
|
|
36
45
|
---
|
|
@@ -43,8 +52,11 @@ Procedure:
|
|
|
43
52
|
---
|
|
44
53
|
```
|
|
45
54
|
`sources` lists every item the note is derived from (the same pointers you give per item). Do not add a `timestamp` and do not add `verified`: only the PM confirms a note.
|
|
55
|
+
Done when: the file starts with this frontmatter and holds the four sections in order.
|
|
46
56
|
7. Under "Sources reached and not reached", list every source kind you tried, with `reached` or `not reached — <why>`, and the number of private items skipped.
|
|
57
|
+
Done when: every source kind you tried has a line, and the private count is stated.
|
|
47
58
|
8. Finish by saying in one line how many items you filed and where. Do not commit; the PM's Sync carries the file.
|
|
59
|
+
Done when: the count and the path are said once, and no commit was made.
|
|
48
60
|
|
|
49
61
|
Output contract — produce EXACTLY these sections, the same shape every run:
|
|
50
62
|
- New or changed requirements
|
|
@@ -5,7 +5,7 @@ description: "Prepare the biweekly report as a draft, following the PM's own def
|
|
|
5
5
|
run: agent
|
|
6
6
|
agent: claude
|
|
7
7
|
output:
|
|
8
|
-
-
|
|
8
|
+
- Headline
|
|
9
9
|
- Sections from the definition
|
|
10
10
|
- Needs your call
|
|
11
11
|
- Sources reached and not reached
|
|
@@ -40,14 +40,14 @@ Procedure:
|
|
|
40
40
|
---
|
|
41
41
|
```
|
|
42
42
|
`definition` says whether the definition used is confirmed (`stable`) or only proposed (`draft`). Do not add a `timestamp` or `verified`.
|
|
43
|
-
5. Under the frontmatter: a
|
|
44
|
-
6. If the definition was a draft, say so in the first line of the
|
|
43
|
+
5. Under the frontmatter: a Headline (one or two sentences: what the reader most needs to know), then the sections the definition names in its order, then "Needs your call" (decisions or answers only the PM can give), then "Sources reached and not reached" (each source kind: reached or not reached and why; private items skipped).
|
|
44
|
+
6. If the definition was a draft, say so in the first line of the Headline so the PM sees it.
|
|
45
45
|
7. Finish by saying in one line where the draft is. Do not commit; the PM's Sync carries the file.
|
|
46
46
|
|
|
47
|
-
Default shape, used ONLY when proposing a definition: a two-week
|
|
47
|
+
Default shape, used ONLY when proposing a definition: a two-week report: progress, decisions, risks, what is next. Use the report frame of D78: a Headline, then What moved, Risks and Metrics, then Needs your call and Sources reached and not reached.
|
|
48
48
|
|
|
49
49
|
Output contract — produce EXACTLY these sections, the same shape every run:
|
|
50
|
-
-
|
|
50
|
+
- Headline
|
|
51
51
|
- Sections from the definition
|
|
52
52
|
- Needs your call
|
|
53
53
|
- Sources reached and not reached
|
|
@@ -5,7 +5,7 @@ description: "Prepare the daily report as a draft, following the PM's own defini
|
|
|
5
5
|
run: agent
|
|
6
6
|
agent: claude
|
|
7
7
|
output:
|
|
8
|
-
-
|
|
8
|
+
- Headline
|
|
9
9
|
- Sections from the definition
|
|
10
10
|
- Needs your call
|
|
11
11
|
- Sources reached and not reached
|
|
@@ -40,14 +40,14 @@ Procedure:
|
|
|
40
40
|
---
|
|
41
41
|
```
|
|
42
42
|
`definition` says whether the definition used is confirmed (`stable`) or only proposed (`draft`). Do not add a `timestamp` or `verified`.
|
|
43
|
-
5. Under the frontmatter: a
|
|
44
|
-
6. If the definition was a draft, say so in the first line of the
|
|
43
|
+
5. Under the frontmatter: a Headline (one or two sentences: what the reader most needs to know), then the sections the definition names in its order, then "Needs your call" (decisions or answers only the PM can give), then "Sources reached and not reached" (each source kind: reached or not reached and why; private items skipped).
|
|
44
|
+
6. If the definition was a draft, say so in the first line of the Headline so the PM sees it.
|
|
45
45
|
7. Finish by saying in one line where the draft is. Do not commit; the PM's Sync carries the file.
|
|
46
46
|
|
|
47
|
-
Default shape, used ONLY when proposing a definition: a one-page end-of-day
|
|
47
|
+
Default shape, used ONLY when proposing a definition: a one-page end-of-day report: what moved, what is blocked, what needs the PM tomorrow. Use the report frame of D78: a Headline, then What moved, Risks and Metrics, then Needs your call and Sources reached and not reached.
|
|
48
48
|
|
|
49
49
|
Output contract — produce EXACTLY these sections, the same shape every run:
|
|
50
|
-
-
|
|
50
|
+
- Headline
|
|
51
51
|
- Sections from the definition
|
|
52
52
|
- Needs your call
|
|
53
53
|
- Sources reached and not reached
|
|
@@ -5,7 +5,7 @@ description: "Prepare the monthly report as a draft, following the PM's own defi
|
|
|
5
5
|
run: agent
|
|
6
6
|
agent: claude
|
|
7
7
|
output:
|
|
8
|
-
-
|
|
8
|
+
- Headline
|
|
9
9
|
- Sections from the definition
|
|
10
10
|
- Needs your call
|
|
11
11
|
- Sources reached and not reached
|
|
@@ -40,14 +40,14 @@ Procedure:
|
|
|
40
40
|
---
|
|
41
41
|
```
|
|
42
42
|
`definition` says whether the definition used is confirmed (`stable`) or only proposed (`draft`). Do not add a `timestamp` or `verified`.
|
|
43
|
-
5. Under the frontmatter: a
|
|
44
|
-
6. If the definition was a draft, say so in the first line of the
|
|
43
|
+
5. Under the frontmatter: a Headline (one or two sentences: what the reader most needs to know), then the sections the definition names in its order, then "Needs your call" (decisions or answers only the PM can give), then "Sources reached and not reached" (each source kind: reached or not reached and why; private items skipped).
|
|
44
|
+
6. If the definition was a draft, say so in the first line of the Headline so the PM sees it.
|
|
45
45
|
7. Finish by saying in one line where the draft is. Do not commit; the PM's Sync carries the file.
|
|
46
46
|
|
|
47
|
-
Default shape, used ONLY when proposing a definition: a monthly review: outcomes against goals, decisions, risks, learning, next month.
|
|
47
|
+
Default shape, used ONLY when proposing a definition: a monthly review: outcomes against goals, decisions, risks, learning, next month. Use the report frame of D78: a Headline, then What moved, Risks and Metrics, then Needs your call and Sources reached and not reached.
|
|
48
48
|
|
|
49
49
|
Output contract — produce EXACTLY these sections, the same shape every run:
|
|
50
|
-
-
|
|
50
|
+
- Headline
|
|
51
51
|
- Sections from the definition
|
|
52
52
|
- Needs your call
|
|
53
53
|
- Sources reached and not reached
|
|
@@ -5,7 +5,7 @@ description: "Prepare a one-off report as a draft. The PM says what it is for; t
|
|
|
5
5
|
run: agent
|
|
6
6
|
agent: claude
|
|
7
7
|
output:
|
|
8
|
-
-
|
|
8
|
+
- Headline
|
|
9
9
|
- Sections from the definition
|
|
10
10
|
- Needs your call
|
|
11
11
|
- Sources reached and not reached
|
|
@@ -26,7 +26,7 @@ Procedure:
|
|
|
26
26
|
2. Find the state directory: `pmos/state/` if it exists, otherwise `planning/`. Call it <state>.
|
|
27
27
|
3. If `<state>/reports/definitions/special.md` exists, read it for the house style and use it where it does not contradict what the PM just asked.
|
|
28
28
|
4. Gather the material: the requirement notes in `<state>/requirements/`, the initiatives and acceptances, and every connected source you can reach that bears on the topic.
|
|
29
|
-
5. Write the draft to `<state>/reports/special/YYYY-MM-DD-<short-topic-slug>.md`, then the sections the PM asked for, then "Needs your call" and "Sources reached and not reached". Start it with this frontmatter (OKF v0.2, D73). Every key is on ONE line — never indent a key under another:
|
|
29
|
+
5. Write the draft to `<state>/reports/special/YYYY-MM-DD-<short-topic-slug>.md`, then a Headline (one or two sentences), then the sections the PM asked for (the report frame of D78 by default: What moved, Risks, Metrics), then "Needs your call" and "Sources reached and not reached". Start it with this frontmatter (OKF v0.2, D73). Every key is on ONE line — never indent a key under another:
|
|
30
30
|
```
|
|
31
31
|
---
|
|
32
32
|
type: Reference
|
|
@@ -43,7 +43,7 @@ Procedure:
|
|
|
43
43
|
7. Finish by saying in one line where the draft is. Do not commit; the PM's Sync carries the file.
|
|
44
44
|
|
|
45
45
|
Output contract — produce EXACTLY these sections, the same shape every run:
|
|
46
|
-
-
|
|
46
|
+
- Headline
|
|
47
47
|
- Sections from the definition
|
|
48
48
|
- Needs your call
|
|
49
49
|
- Sources reached and not reached
|
|
@@ -5,7 +5,7 @@ description: "Prepare the weekly report as a draft, following the PM's own defin
|
|
|
5
5
|
run: agent
|
|
6
6
|
agent: claude
|
|
7
7
|
output:
|
|
8
|
-
-
|
|
8
|
+
- Headline
|
|
9
9
|
- Sections from the definition
|
|
10
10
|
- Needs your call
|
|
11
11
|
- Sources reached and not reached
|
|
@@ -40,14 +40,14 @@ Procedure:
|
|
|
40
40
|
---
|
|
41
41
|
```
|
|
42
42
|
`definition` says whether the definition used is confirmed (`stable`) or only proposed (`draft`). Do not add a `timestamp` or `verified`.
|
|
43
|
-
5. Under the frontmatter: a
|
|
44
|
-
6. If the definition was a draft, say so in the first line of the
|
|
43
|
+
5. Under the frontmatter: a Headline (one or two sentences: what the reader most needs to know), then the sections the definition names in its order, then "Needs your call" (decisions or answers only the PM can give), then "Sources reached and not reached" (each source kind: reached or not reached and why; private items skipped).
|
|
44
|
+
6. If the definition was a draft, say so in the first line of the Headline so the PM sees it.
|
|
45
45
|
7. Finish by saying in one line where the draft is. Do not commit; the PM's Sync carries the file.
|
|
46
46
|
|
|
47
|
-
Default shape, used ONLY when proposing a definition: a weekly
|
|
47
|
+
Default shape, used ONLY when proposing a definition: a weekly report: progress against initiatives, decisions made, risks, what is next. Use the report frame of D78: a Headline, then What moved, Risks and Metrics, then Needs your call and Sources reached and not reached.
|
|
48
48
|
|
|
49
49
|
Output contract — produce EXACTLY these sections, the same shape every run:
|
|
50
|
-
-
|
|
50
|
+
- Headline
|
|
51
51
|
- Sections from the definition
|
|
52
52
|
- Needs your call
|
|
53
53
|
- Sources reached and not reached
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: weekly-report
|
|
3
3
|
label: "Weekly report"
|
|
4
|
-
description: "A weekly status report across the workspace — in flight,
|
|
4
|
+
description: "A weekly status report across the workspace — in flight, delivered (acceptance not recorded), accepted, needs-you, and a metrics pulse."
|
|
5
5
|
run: deterministic
|
|
6
6
|
surface: report
|
|
7
7
|
output:
|
|
8
8
|
- In flight
|
|
9
|
-
-
|
|
9
|
+
- Delivered — acceptance not recorded
|
|
10
|
+
- Accepted
|
|
10
11
|
- Needs you
|
|
11
12
|
- Metrics pulse
|
|
12
13
|
---
|