@creator-notes/cnotes 0.70.0 → 0.72.0

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.
@@ -23,6 +23,63 @@ Read `cnotes types show Attention` and the cnotes skill's humanizer reference
23
23
  before writing. Mention every note as `[ID: Title](relationship:verb)`; reuse
24
24
  the workspace's relationship vocabulary (`cnotes rel types`).
25
25
 
26
+ ## Seed note (timeline line)
27
+
28
+ Every write that creates an Attention card, places or moves its focus block,
29
+ or records that the card was answered or closed, has one change description.
30
+ That description is the seed note: the line a person reads on
31
+ `cnotes timeline`. It is one line, and it is navigation, not a summary of
32
+ the card. The shape follows [Timeline labels are navigation, not summaries](https://creatornotes.app/blog/timeline-as-navigation)
33
+ and the GUIDE-41 verb discipline: a movement verb, then the specific object,
34
+ then the twist. Leave the description empty and the platform writes a title
35
+ and a summary ("Decide on Team price range and feature scope" over "The
36
+ author is seeking a decision..."), which is the line this template replaces.
37
+
38
+ ```
39
+ {Verb} {ID}: {plain-language ask}. Canvas {canvas ID}. Focus block {date} {start} to {end}.
40
+ ```
41
+
42
+ `{Verb}` comes first. It is a movement verb: `Opened` for a new card,
43
+ `Rescheduled` when the block moves, `Answered` or `Closed` for lifecycle
44
+ changes. Never `Created`. Never "The author...". `{ID}` is the card's display
45
+ id. `{plain-language ask}` is what the human is asked, in plain words.
46
+ `{canvas ID}` is the orientation canvas, or `none`. `{date} {start} to {end}`
47
+ is the focus block in the Rules timezone (Australia/Sydney by default),
48
+ formatted `Ddd D Mon YYYY HH:MM to HH:MM`: weekday and month in three English
49
+ letters, the day with no leading zero, times in 24-hour `HH:MM`. One line,
50
+ no title/summary pair.
51
+
52
+ If the canvas or the block does not exist at the first write, the verb is
53
+ still `Opened`, and the line uses `Canvas pending` and `Focus block pending`.
54
+ Version the card once both exist. That version stays `Opened`: the block was
55
+ placed, not moved. A card with no orientation canvas uses `none` from the
56
+ first write, not `Canvas pending`. A later move uses `Rescheduled` and the
57
+ new times. Recording the answer uses `Answered`. Closing the card uses
58
+ `Closed`. Never a free-form description.
59
+
60
+ On the first write, pass the line as `changeDescription` on the `notes create`
61
+ item. Write `{displayId}` in the `{ID}` slot. The create replaces that token
62
+ with the new display id before it stores version 1. When both the canvas and
63
+ the block exist, and on any later reschedule, answer, or close, pass the full
64
+ line as `--description` on `cnotes versions create`, with the real display id
65
+ already filled in. Nothing else goes in that flag.
66
+
67
+ ```
68
+ Opened ATTENTION-6K2: approve the $20 to $30 Team price as standing. Canvas CANVAS-371. Focus block Sat 10 Oct 2026 12:55 to 13:40.
69
+ ```
70
+
71
+ ```
72
+ Opened ATTENTION-6K2: approve the $20 to $30 Team price as standing. Canvas pending. Focus block pending.
73
+ ```
74
+
75
+ ```
76
+ Rescheduled ATTENTION-6K2: approve the $20 to $30 Team price as standing. Canvas CANVAS-371. Focus block Mon 12 Oct 2026 09:00 to 09:45.
77
+ ```
78
+
79
+ This seed note is the timeline change description. It is not the outline a
80
+ make sitting starts from, not the `--description` on `cnotes types create`,
81
+ and not the text on an orientation banner.
82
+
26
83
  ## Deep card · decide
27
84
 
28
85
  ```markdown
@@ -143,7 +200,7 @@ source.>
143
200
 
144
201
  ## What the agent already did
145
202
 
146
- - <the outline, comparison, or research that seeds the sitting>
203
+ - <the outline, comparison, or research the sitting starts from>
147
204
  - <what is assigned to another owner, by name>
148
205
 
149
206
  ## After the block
@@ -165,7 +222,9 @@ wedge and the two alternatives it rejects", never "time was spent".>
165
222
 
166
223
  The `Outcome` line takes what now exists, or `continue` with what is still
167
224
  missing. A make card whose outcome is `continue` stays `open` and the next run
168
- plans another sitting on the same card; it never mints a sibling.
225
+ plans another sitting on the same card; it never mints a sibling. That later
226
+ sitting is a reschedule: version the card with the seed note, verb
227
+ `Rescheduled`, and the new block. Never a free-form description.
169
228
 
170
229
  ## Shallow card
171
230
 
@@ -236,7 +295,9 @@ mentions it from every future card, and runs intake.
236
295
  Appended as a new version the moment an answer is found, before anything is
237
296
  executed, and updated as each line lands. The tags change to
238
297
  `answered,<lane>` in the same write. A rerun reads this first: `done` is never
239
- repeated, `failed` is retried, `waiting` is checked for its yes.
298
+ repeated, `failed` is retried, `waiting` is checked for its yes. The change
299
+ description is the seed note with the verb `Answered`. It is not a title
300
+ with a summary under it, and it does not narrate the ledger in free form.
240
301
 
241
302
  ```markdown
242
303
  ## Follow-through
@@ -256,7 +317,8 @@ N) gets a second `Follow-through` block under it, never an edit of the first.
256
317
 
257
318
  Appended as a new version only when no line above is `failed` and every
258
319
  `waiting` line names a yes that now sits on the queue. The tags change to
259
- `closed,<lane>` in the same write.
320
+ `closed,<lane>` in the same write. The change description is the seed note
321
+ with the verb `Closed`. It is not a title with a summary under it.
260
322
 
261
323
  ```markdown
262
324
  ## Closed
@@ -16,6 +16,10 @@ what the customer is told if it turned out to be wrong.
16
16
 
17
17
  ## Rules
18
18
 
19
+ - The seed note is the card's timeline line ([card-shapes.md](card-shapes.md)),
20
+ not a ledger row. It leads with a movement verb (`Opened`, `Rescheduled`,
21
+ `Answered`, `Closed`), never `Created` and never "The author is seeking...".
22
+ Do not turn a claim or a class into that line.
19
23
  - Columns on a deep card: `Classification`, `Claim`, `Source`, `Confidence or gap`.
20
24
  - Put the mention beside the claim. Note sources carry facts; a canvas mention
21
25
  is for orientation only, never the source of a fact.
@@ -102,6 +102,12 @@ sections, portals, the banner) inside one operations run, then `place` the new
102
102
  spec. Section ids change; nothing should reference them by id. The focus block
103
103
  targets the card, not a section, so it survives the rebuild. Verify with
104
104
  `cnotes focus list` that the block still lands on the canvas and the card.
105
+ A rebuild does not rewrite the card's change description. Placing or moving
106
+ the block does: after that check, version the card with the seed note in
107
+ [card-shapes.md](card-shapes.md). Verb `Opened` when the block is first
108
+ placed, `Rescheduled` when it moves. One line, never a free-form description,
109
+ never `Created`, never a title/summary pair. The banner's day and time is for
110
+ the person reading this canvas. It is not that timeline line.
105
111
 
106
112
  ## Read-back test
107
113
 
@@ -146,6 +146,7 @@ The CLI never charges a card: `create` returns a Stripe Checkout URL a HUMAN mus
146
146
  ```bash
147
147
  # List notes (default 20, excludes drafts)
148
148
  cnotes notes list [--search <query>] [--type <type>] [--tags <csv>] [--pinned] [--limit <n>]
149
+ cnotes notes list --no-canvas [--type <type>] [--tags <csv>] [--limit <n>] # notes on no canvas at all
149
150
 
150
151
  # Get one or more notes by display ID (always returns an array, in input order,
151
152
  # in a single round-trip). Pass one ID or many — never call this in a loop.
@@ -213,7 +214,10 @@ cnotes notes create --notes '[
213
214
  {"key":"A","type":"PainPoint","markdownFile":"./problem.md"},
214
215
  {"key":"B","type":"Insight","markdown":"# Fix\n[@A: Problem](relationship:resolves)"}
215
216
  ]'
216
- # Each item: {key, type, markdown | markdownFile, tags?}.
217
+ # Each item: {key, type, markdown | markdownFile, tags?, changeDescription?}.
218
+ # changeDescription is version 1's timeline line. `{displayId}` in it is
219
+ # replaced with the new note's display id. Omit it and the platform later
220
+ # writes a title plus a summary.
217
221
  # On validation failure the response lists every bad item by index + key + field
218
222
  # (and `details.items` in --json mode), so you can fix the whole batch in one shot.
219
223
  # Each .results[] item carries .type + .rubric — keep them when filtering JSON.
@@ -1091,9 +1095,11 @@ When an AI agent (including you, Claude) is doing a **batch of work** — creati
1091
1095
  # 1. Open the run with the user's intent as the prompt.
1092
1096
  # --json includes typeRubrics: every workspace type that has a validationPrompt.
1093
1097
  # Read the rubrics for the types you will author BEFORE drafting.
1094
- # With --prompt it also returns brief.notes: the workspace notes most
1095
- # relevant to the task. Read them BEFORE suggesting anything; a Decision,
1096
- # Guide or Metric there may already settle what you were about to propose.
1098
+ # With --prompt it also returns a brief (brief.notes, brief.canvases,
1099
+ # brief.changes): the notes, canvases and recent changes most relevant to the
1100
+ # task. Read it BEFORE suggesting anything; a Decision, Guide or Metric there
1101
+ # may already settle what you were about to propose. Not opening a run?
1102
+ # `cnotes brief "<task>"` returns the same brief, read-only.
1097
1103
  cnotes operations begin --prompt "Reorganize roadmap into quarters" --json
1098
1104
  cnotes types show Insight # or pull from .typeRubrics in the begin response
1099
1105