@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.
- package/.claude-plugin/plugin.json +1 -1
- package/dist/commands/brief.d.ts +9 -0
- package/dist/commands/brief.d.ts.map +1 -0
- package/dist/commands/brief.js +52 -0
- package/dist/commands/brief.js.map +1 -0
- package/dist/commands/notes.d.ts.map +1 -1
- package/dist/commands/notes.js +36 -2
- package/dist/commands/notes.js.map +1 -1
- package/dist/commands/operations.d.ts.map +1 -1
- package/dist/commands/operations.js +11 -13
- package/dist/commands/operations.js.map +1 -1
- package/dist/lib/session-brief.d.ts +37 -7
- package/dist/lib/session-brief.d.ts.map +1 -1
- package/dist/lib/session-brief.js +105 -16
- package/dist/lib/session-brief.js.map +1 -1
- package/dist/mcp-server.js +4 -0
- package/dist/mcp-server.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +2 -0
- package/dist/program.js.map +1 -1
- package/package.json +1 -1
- package/skills/attention-planner/SKILL.md +31 -9
- package/skills/attention-planner/references/attention-type.md +9 -0
- package/skills/attention-planner/references/card-shapes.md +66 -4
- package/skills/attention-planner/references/evidence-ledger.md +4 -0
- package/skills/attention-planner/references/orientation-canvas.md +6 -0
- package/skills/cnotes/SKILL.md +10 -4
|
@@ -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
|
|
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
|
|
package/skills/cnotes/SKILL.md
CHANGED
|
@@ -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
|
|
1095
|
-
#
|
|
1096
|
-
#
|
|
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
|
|