@creator-notes/cnotes 0.33.1 → 0.35.1
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/README.md +8 -0
- package/dist/commands/canvas.d.ts.map +1 -1
- package/dist/commands/canvas.js +194 -24
- package/dist/commands/canvas.js.map +1 -1
- package/dist/commands/notes.d.ts.map +1 -1
- package/dist/commands/notes.js +42 -10
- package/dist/commands/notes.js.map +1 -1
- package/dist/commands/skills.d.ts.map +1 -1
- package/dist/commands/skills.js +7 -2
- package/dist/commands/skills.js.map +1 -1
- package/dist/commands/versions.d.ts.map +1 -1
- package/dist/commands/versions.js +27 -5
- package/dist/commands/versions.js.map +1 -1
- package/dist/lib/api-client.d.ts.map +1 -1
- package/dist/lib/api-client.js +6 -1
- package/dist/lib/api-client.js.map +1 -1
- package/dist/lib/build-schema.d.ts +3 -3
- package/dist/lib/build-schema.d.ts.map +1 -1
- package/dist/lib/build-schema.js +4 -3
- package/dist/lib/build-schema.js.map +1 -1
- package/dist/lib/install-skill.d.ts +2 -1
- package/dist/lib/install-skill.d.ts.map +1 -1
- package/dist/lib/install-skill.js +13 -0
- package/dist/lib/install-skill.js.map +1 -1
- package/dist/lib/mention-lint.d.ts +42 -0
- package/dist/lib/mention-lint.d.ts.map +1 -1
- package/dist/lib/mention-lint.js +175 -0
- package/dist/lib/mention-lint.js.map +1 -1
- package/dist/mcp-server.js +27 -4
- package/dist/mcp-server.js.map +1 -1
- package/package.json +1 -1
- package/skills/cnotes/SKILL.md +37 -7
- package/skills/cnotes/references/humanizer.md +7 -1
- package/skills/howto-filmstrips/SKILL.md +214 -0
- package/skills/howto-filmstrips/scripts/inject-highlight.js +198 -0
- package/skills/howto-filmstrips/scripts/soft-spotlight.py +75 -0
package/dist/lib/mention-lint.js
CHANGED
|
@@ -83,6 +83,181 @@ export function lintMentionMarkdown(markdown, allowAtKey) {
|
|
|
83
83
|
}
|
|
84
84
|
return issues;
|
|
85
85
|
}
|
|
86
|
+
/** Parse a wiki-link body (`[[inner]]`): target + optional type, either order
|
|
87
|
+
* (`[[blocks::DEC-3]]` and `[[DEC-3::blocks]]` both bind — mirror of
|
|
88
|
+
* lib/tiptap/markdown-extensions.ts). Returns null for ordinary wiki prose. */
|
|
89
|
+
function parseWikiInner(inner) {
|
|
90
|
+
const noAlias = inner.split("|")[0].trim();
|
|
91
|
+
const parts = noAlias.split("::").map((s) => s.trim());
|
|
92
|
+
const isTarget = (s) => DISPLAY_ID_RE.test(s) || AT_KEY_RE.test(s);
|
|
93
|
+
if (parts.length === 1) {
|
|
94
|
+
return isTarget(parts[0]) ? { target: parts[0], type: null } : null;
|
|
95
|
+
}
|
|
96
|
+
if (parts.length === 2) {
|
|
97
|
+
if (isTarget(parts[1]))
|
|
98
|
+
return { target: parts[1], type: parts[0].toLowerCase() || null };
|
|
99
|
+
if (isTarget(parts[0]))
|
|
100
|
+
return { target: parts[0], type: parts[1].toLowerCase() || null };
|
|
101
|
+
}
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
const WIKI_RE = /\[\[([^\]]+)\]\]/g;
|
|
105
|
+
/** Collect every mention on one line, both `[T](relationship:t)` and `[[T]]`. */
|
|
106
|
+
function findMentions(line) {
|
|
107
|
+
const found = [];
|
|
108
|
+
for (const m of line.matchAll(MENTION_RE)) {
|
|
109
|
+
const linkText = m[1];
|
|
110
|
+
found.push({
|
|
111
|
+
raw: m[0],
|
|
112
|
+
index: m.index ?? 0,
|
|
113
|
+
effectiveType: m[2].trim().toLowerCase(),
|
|
114
|
+
retype: (t) => `[${linkText}](relationship:${t})`,
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
for (const m of line.matchAll(WIKI_RE)) {
|
|
118
|
+
const parsed = parseWikiInner(m[1]);
|
|
119
|
+
if (!parsed)
|
|
120
|
+
continue;
|
|
121
|
+
found.push({
|
|
122
|
+
raw: m[0],
|
|
123
|
+
index: m.index ?? 0,
|
|
124
|
+
effectiveType: parsed.type ?? "references",
|
|
125
|
+
retype: (t) => `[[${t}::${parsed.target}]]`,
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
return found.sort((a, b) => a.index - b.index);
|
|
129
|
+
}
|
|
130
|
+
/** Prose forms for each type: the label and the de-hyphenated slug. The
|
|
131
|
+
* `references` type is excluded — it's what generic mentions already are. */
|
|
132
|
+
function buildTypePhrases(types) {
|
|
133
|
+
const phrases = [];
|
|
134
|
+
const seen = new Set();
|
|
135
|
+
for (const t of types) {
|
|
136
|
+
const value = t.value.trim().toLowerCase();
|
|
137
|
+
if (!value || value === "references")
|
|
138
|
+
continue;
|
|
139
|
+
for (const phrase of new Set([
|
|
140
|
+
t.label.trim().toLowerCase(),
|
|
141
|
+
value.replace(/-/g, " "),
|
|
142
|
+
])) {
|
|
143
|
+
if (!phrase || seen.has(phrase))
|
|
144
|
+
continue;
|
|
145
|
+
seen.add(phrase);
|
|
146
|
+
phrases.push({ phrase, value, label: t.label });
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
// Longest first so "depends on" wins over a hypothetical "depends".
|
|
150
|
+
return phrases.sort((a, b) => b.phrase.length - a.phrase.length);
|
|
151
|
+
}
|
|
152
|
+
/** Strip list/quote/heading markers and opening emphasis from a line start. */
|
|
153
|
+
function stripLineDecoration(line) {
|
|
154
|
+
return line
|
|
155
|
+
.replace(/^[\s>]*/, "")
|
|
156
|
+
.replace(/^(?:[-*+]\s+|\d+[.)]\s+|#{1,6}\s+)/, "")
|
|
157
|
+
.replace(/^[*_]{1,3}/, "");
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Lint one markdown body for relationship verbs narrated in prose next to a
|
|
161
|
+
* GENERIC mention (`relationship:references` or untyped `[[NOTE-12]]`).
|
|
162
|
+
* Fires when a line STARTS with a type's verb, or when the verb sits
|
|
163
|
+
* immediately before the mention. Mentions that already carry a specific type
|
|
164
|
+
* are never flagged, even if the prose disagrees — that's a judgment call, not
|
|
165
|
+
* a lint. Fenced code blocks are skipped.
|
|
166
|
+
*
|
|
167
|
+
* @param types workspace relationship types (fetch via
|
|
168
|
+
* `fetchRelationshipTypeOptions`); pass [] to disable.
|
|
169
|
+
*/
|
|
170
|
+
export function lintNarratedVerbMentions(markdown, types) {
|
|
171
|
+
const typePhrases = buildTypePhrases(types);
|
|
172
|
+
if (typePhrases.length === 0)
|
|
173
|
+
return [];
|
|
174
|
+
const warnings = [];
|
|
175
|
+
let inFence = false;
|
|
176
|
+
markdown.split(/\r?\n/).forEach((line, i) => {
|
|
177
|
+
if (/^\s*(```|~~~)/.test(line)) {
|
|
178
|
+
inFence = !inFence;
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
if (inFence)
|
|
182
|
+
return;
|
|
183
|
+
const generics = findMentions(line).filter((m) => m.effectiveType === "references");
|
|
184
|
+
if (generics.length === 0)
|
|
185
|
+
return;
|
|
186
|
+
// Rule B: verb immediately before a generic mention ("this blocks [[X]]").
|
|
187
|
+
const claimed = new Set();
|
|
188
|
+
for (const mention of generics) {
|
|
189
|
+
const before = line.slice(0, mention.index).trimEnd().toLowerCase();
|
|
190
|
+
for (const p of typePhrases) {
|
|
191
|
+
if (!before.endsWith(p.phrase))
|
|
192
|
+
continue;
|
|
193
|
+
const pre = before.slice(0, before.length - p.phrase.length);
|
|
194
|
+
if (pre !== "" && !/[^a-z0-9]$/.test(pre))
|
|
195
|
+
continue;
|
|
196
|
+
const start = line.toLowerCase().lastIndexOf(p.phrase, mention.index);
|
|
197
|
+
warnings.push(makeWarning(i + 1, line.slice(start, start + p.phrase.length), p, mention));
|
|
198
|
+
claimed.add(mention);
|
|
199
|
+
break;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
// Rule A: line leads with a verb, generic mention anywhere after it
|
|
203
|
+
// ("Blocks clean filmstrip of [[X]]."). First unclaimed mention gets it.
|
|
204
|
+
const stripped = stripLineDecoration(line);
|
|
205
|
+
const strippedLower = stripped.toLowerCase();
|
|
206
|
+
const target = generics.find((m) => !claimed.has(m));
|
|
207
|
+
if (!target)
|
|
208
|
+
return;
|
|
209
|
+
for (const p of typePhrases) {
|
|
210
|
+
if (!strippedLower.startsWith(p.phrase))
|
|
211
|
+
continue;
|
|
212
|
+
if (!/^[\s:,.!*_—-]/.test(strippedLower.slice(p.phrase.length)))
|
|
213
|
+
continue;
|
|
214
|
+
warnings.push(makeWarning(i + 1, stripped.slice(0, p.phrase.length), p, target));
|
|
215
|
+
break;
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
return warnings;
|
|
219
|
+
}
|
|
220
|
+
function makeWarning(line, verb, p, mention) {
|
|
221
|
+
const rewrite = mention.retype(p.value);
|
|
222
|
+
return {
|
|
223
|
+
line,
|
|
224
|
+
verb,
|
|
225
|
+
suggestedType: p.value,
|
|
226
|
+
mention: mention.raw,
|
|
227
|
+
rewrite,
|
|
228
|
+
message: `prose "${verb}" narrates a relationship the graph can't see — ` +
|
|
229
|
+
`${mention.raw} files a plain reference. If the claim is real, retype ` +
|
|
230
|
+
`the mention: ${rewrite} (workspace type "${p.label}") and drop the ` +
|
|
231
|
+
`now-redundant verb. If "${verb}" isn't asserting a relationship here, ` +
|
|
232
|
+
`ignore this warning.`,
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
/** Cheap gate: does this body contain any generic mention at all? Used to
|
|
236
|
+
* skip the relationship-types fetch when no warning could possibly fire. */
|
|
237
|
+
export function hasGenericMention(markdown) {
|
|
238
|
+
for (const m of markdown.matchAll(MENTION_RE)) {
|
|
239
|
+
if (m[2].trim().toLowerCase() === "references")
|
|
240
|
+
return true;
|
|
241
|
+
}
|
|
242
|
+
for (const m of markdown.matchAll(WIKI_RE)) {
|
|
243
|
+
const parsed = parseWikiInner(m[1]);
|
|
244
|
+
if (parsed && parsed.type === null)
|
|
245
|
+
return true;
|
|
246
|
+
}
|
|
247
|
+
return false;
|
|
248
|
+
}
|
|
249
|
+
/** Fetch the workspace's relationship types for the narrated-verb lint.
|
|
250
|
+
* Best-effort: returns null on any failure — the lint is advisory and must
|
|
251
|
+
* never fail (or slow-fail) a write. */
|
|
252
|
+
export async function fetchRelationshipTypeOptions(api, workspaceId) {
|
|
253
|
+
try {
|
|
254
|
+
const data = await api.get("/api/relationship-types", { workspaceId });
|
|
255
|
+
return data.relationshipTypes ?? [];
|
|
256
|
+
}
|
|
257
|
+
catch {
|
|
258
|
+
return null;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
86
261
|
/**
|
|
87
262
|
* Format the server's `unresolvedMentions` into an actionable block. Returns
|
|
88
263
|
* null when there's nothing to report.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mention-lint.js","sourceRoot":"","sources":["../../src/lib/mention-lint.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mention-lint.js","sourceRoot":"","sources":["../../src/lib/mention-lint.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-server.js
CHANGED
|
@@ -30,6 +30,7 @@ import { readCanvasMarkdown } from "./lib/canvas-read.js";
|
|
|
30
30
|
import { buildSchema } from "./lib/build-schema.js";
|
|
31
31
|
import { assertMcpLocalFileReadable, getMcpLocalFileRoots, } from "./lib/mcp-local-file.js";
|
|
32
32
|
import { attachRubricsToResults, loadRubricMap, rubricsForTypes, } from "./lib/rubrics.js";
|
|
33
|
+
import { lintNarratedVerbMentions, hasGenericMention, fetchRelationshipTypeOptions, } from "./lib/mention-lint.js";
|
|
33
34
|
// ---------------------------------------------------------------------------
|
|
34
35
|
// Environment
|
|
35
36
|
// ---------------------------------------------------------------------------
|
|
@@ -234,12 +235,21 @@ const NoteCreateItem = z.object({
|
|
|
234
235
|
markdown: z.string().describe("Note content as markdown (the first # h1 heading becomes the title)"),
|
|
235
236
|
tags: z.array(z.string()).optional().describe("Tags for this note"),
|
|
236
237
|
});
|
|
237
|
-
server.tool("cnotes_notes_create", "Create one or more interlinked notes in a single atomic transaction. FIRST call cnotes_types_show for each target type and author to that rubric — do not skip this. Pass `notes` as one item object or an array; each note's title is its first # h1 heading. Cross-reference in markdown with [@key: Title](relationship:type) (same-batch — @key resolves to the new display ID) or [NOTE-12: Title](relationship:
|
|
238
|
+
server.tool("cnotes_notes_create", "Create one or more interlinked notes in a single atomic transaction. FIRST call cnotes_types_show for each target type and author to that rubric — do not skip this. Pass `notes` as one item object or an array; each note's title is its first # h1 heading. Cross-reference in markdown with [@key: Title](relationship:type) (same-batch — @key resolves to the new display ID) or [NOTE-12: Title](relationship:type) (existing note); ALWAYS include the ': Title' part. Pick the relationship type from the verb your own prose uses ('blocks', 'depends-on', …; free-form — unknown types auto-create); reserve 'references' for pure citations — a verb narrated in prose around a 'references' chip is invisible to backlinks. A `mentionWarnings` array in the result flags narrated verbs it detects; treat each as a retype instruction unless the prose genuinely isn't asserting a relationship. Each result item carries `type` + `rubric` (null when the type has no validationPrompt); a top-level `rubrics` array is also present. On validation failure, `details.items` pinpoints the bad item by index + key.", {
|
|
238
239
|
notes: z
|
|
239
240
|
.union([NoteCreateItem, z.array(NoteCreateItem).min(1)])
|
|
240
241
|
.describe("Either a single item object or a non-empty array of items."),
|
|
241
242
|
}, async ({ notes }) => withErrorHandling(async () => {
|
|
242
243
|
const items = Array.isArray(notes) ? notes : [notes];
|
|
244
|
+
// Narrated-verb lint (warn-only, pre-send): MCP has no stderr channel,
|
|
245
|
+
// so `mentionWarnings` in the result is the only way the model sees it.
|
|
246
|
+
let mentionWarnings = [];
|
|
247
|
+
if (items.some((n) => hasGenericMention(String(n.markdown ?? "")))) {
|
|
248
|
+
const relTypes = await fetchRelationshipTypeOptions(api, workspaceId);
|
|
249
|
+
if (relTypes) {
|
|
250
|
+
mentionWarnings = items.flatMap((n) => lintNarratedVerbMentions(String(n.markdown ?? ""), relTypes).map((w) => ({ item: n.key, ...w })));
|
|
251
|
+
}
|
|
252
|
+
}
|
|
243
253
|
const result = await api.post("/api/notes/bulk", {
|
|
244
254
|
action: "bulkCreate",
|
|
245
255
|
workspaceId,
|
|
@@ -257,6 +267,7 @@ server.tool("cnotes_notes_create", "Create one or more interlinked notes in a si
|
|
|
257
267
|
...result,
|
|
258
268
|
results: enriched,
|
|
259
269
|
...(rubrics.length > 0 ? { rubrics } : {}),
|
|
270
|
+
...(mentionWarnings.length > 0 ? { mentionWarnings } : {}),
|
|
260
271
|
};
|
|
261
272
|
}));
|
|
262
273
|
server.tool("cnotes_notes_retype", "Change a single note's type. Atomic operation: creates a new note with the target type, archives the old one, and cross-links both.", {
|
|
@@ -580,7 +591,7 @@ server.tool("cnotes_canvas_bulk_remove", "Remove multiple nodes from a canvas in
|
|
|
580
591
|
action: "bulkRemoveNodes",
|
|
581
592
|
nodeIds,
|
|
582
593
|
})));
|
|
583
|
-
server.tool("cnotes_canvas_add_edge", "Connect two nodes on a canvas with an edge. Defaults to an arrow at the target end and a solid line.", {
|
|
594
|
+
server.tool("cnotes_canvas_add_edge", "Connect two nodes on a canvas with an edge (any node type, including section frames). Defaults to an arrow at the target end and a solid line.", {
|
|
584
595
|
canvasId: z.string().describe("Canvas ID"),
|
|
585
596
|
sourceNodeId: z.string().describe("Source node ID"),
|
|
586
597
|
targetNodeId: z.string().describe("Target node ID"),
|
|
@@ -842,16 +853,28 @@ server.tool("cnotes_versions_list", "List versions of a note.", {
|
|
|
842
853
|
throw new Error(`Note not found: ${noteId}`);
|
|
843
854
|
return note.versions || [];
|
|
844
855
|
}));
|
|
845
|
-
server.tool("cnotes_versions_create", "Create a new version of a note. Content is markdown. To link to other notes, use [NOTE-123: Title](relationship:
|
|
856
|
+
server.tool("cnotes_versions_create", "Create a new version of a note. Content is markdown. To link to other notes, use [NOTE-123: Title](relationship:type) inside the markdown — always include the title (the part after the colon) or the chip renders as 'Untitled'. Pick the relationship type from the verb your own prose uses ('blocks', 'depends-on', 'caused-by', …; free-form — unknown types auto-create); reserve 'references' for pure citations — a verb narrated in prose around a 'references' chip is invisible to backlinks. A `mentionWarnings` array in the result flags narrated verbs it detects; treat each as a retype instruction unless the prose genuinely isn't asserting a relationship.", {
|
|
846
857
|
noteId: z.string().describe("Note display ID or Convex ID"),
|
|
847
858
|
markdown: z.string().describe("New content as markdown"),
|
|
848
859
|
description: z.string().describe("Change description (required)"),
|
|
849
860
|
}, async ({ noteId, markdown, description }) => withErrorHandling(async () => {
|
|
861
|
+
// Narrated-verb lint (warn-only): same contract as cnotes_notes_create.
|
|
862
|
+
let mentionWarnings = [];
|
|
863
|
+
if (hasGenericMention(markdown)) {
|
|
864
|
+
const relTypes = await fetchRelationshipTypeOptions(api, workspaceId);
|
|
865
|
+
if (relTypes) {
|
|
866
|
+
mentionWarnings = lintNarratedVerbMentions(markdown, relTypes).map((w) => ({ ...w }));
|
|
867
|
+
}
|
|
868
|
+
}
|
|
850
869
|
const resolvedId = await resolveNoteId(api, workspaceId, noteId);
|
|
851
|
-
|
|
870
|
+
const data = await api.post(`/api/notes/${resolvedId}/versions`, {
|
|
852
871
|
content: markdown,
|
|
853
872
|
description,
|
|
854
873
|
});
|
|
874
|
+
return {
|
|
875
|
+
...data,
|
|
876
|
+
...(mentionWarnings.length > 0 ? { mentionWarnings } : {}),
|
|
877
|
+
};
|
|
855
878
|
}));
|
|
856
879
|
// ---------------------------------------------------------------------------
|
|
857
880
|
// Workspace
|
package/dist/mcp-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/skills/cnotes/SKILL.md
CHANGED
|
@@ -164,12 +164,16 @@ cnotes types show Insight
|
|
|
164
164
|
cnotes types show PainPoint
|
|
165
165
|
# Then create. Pass --notes as a single JSON object or an array. Title comes
|
|
166
166
|
# from the # h1 heading in each note's markdown. Use
|
|
167
|
-
# [@key: Title](relationship
|
|
167
|
+
# [@key: Title](relationship:<type>) to cross-reference another item in the
|
|
168
168
|
# same batch — @key is replaced with the new note's display ID after creation.
|
|
169
|
+
# Pick <type> from the verb your own prose uses ("blocks", "depends-on",
|
|
170
|
+
# "invalidates" — `cnotes rel types` lists the vocabulary; free-form, unknown
|
|
171
|
+
# types auto-create). `references` = pure citation ONLY: a verb narrated in
|
|
172
|
+
# prose around a references chip is invisible to backlinks and `rel list`.
|
|
169
173
|
cnotes notes create --notes '{"key":"A","type":"Insight","markdown":"# Solo note","tags":["ux"]}'
|
|
170
174
|
cnotes notes create --notes '[
|
|
171
175
|
{"key":"A","type":"PainPoint","markdownFile":"./problem.md"},
|
|
172
|
-
{"key":"B","type":"Insight","markdown":"# Fix\
|
|
176
|
+
{"key":"B","type":"Insight","markdown":"# Fix\n[@A: Problem](relationship:resolves)"}
|
|
173
177
|
]'
|
|
174
178
|
# Each item: {key, type, markdown | markdownFile, tags?}.
|
|
175
179
|
# On validation failure the response lists every bad item by index + key + field
|
|
@@ -325,6 +329,27 @@ cnotes canvas bulk-move <canvasId> --moves '[{"nodeId":"abc","nodeType":"note","
|
|
|
325
329
|
# decoration (labels, portals) and need no mention.
|
|
326
330
|
cnotes canvas add-edge <canvasId> --source <nodeId> --target <nodeId> [--label "<text>"]
|
|
327
331
|
|
|
332
|
+
# Comments — PRIVATE anchored comments on canvas nodes: the human→agent review
|
|
333
|
+
# queue. Visible only to their author + agents acting as them (never to other
|
|
334
|
+
# workspace members), and excluded from digests, search, embeds and public
|
|
335
|
+
# shares. Process, not knowledge: open→resolved lifecycle; a comment that is
|
|
336
|
+
# still true after it resolves should be promoted to a typed note. When asked
|
|
337
|
+
# to "address the comments" on a canvas: `comments list`, act on each item
|
|
338
|
+
# inside an operations run, then `comments resolve` each — the active run is
|
|
339
|
+
# recorded automatically as what addressed it. `--node` takes a raw node id,
|
|
340
|
+
# a NOTE display id, or a SECTION display id. `isStale: true` on a listed
|
|
341
|
+
# comment = the target note changed after the comment was written (re-read,
|
|
342
|
+
# don't skip). `targetMissing: true` = the anchor node was deleted; the
|
|
343
|
+
# comment still stands — resolve or rm it explicitly. `list` returns at most
|
|
344
|
+
# 100 comments per status; `truncated: true` in --json means more exist
|
|
345
|
+
# (resolve some, then list again). Use `comments add` (author defaults to
|
|
346
|
+
# agent from the CLI) to leave anchored self-notes for future sessions
|
|
347
|
+
# ("don't move SECTION-42 — the filmstrip references it by position").
|
|
348
|
+
cnotes canvas comments list <canvasId> [--status open|resolved|all]
|
|
349
|
+
cnotes canvas comments add <canvasId> --node <nodeRef> --text "<content>" [--author human|agent]
|
|
350
|
+
cnotes canvas comments resolve <canvasId> --id <annotationId>
|
|
351
|
+
cnotes canvas comments rm <canvasId> --id <annotationId>
|
|
352
|
+
|
|
328
353
|
# Templates — create structured canvases from predefined layouts
|
|
329
354
|
cnotes canvas templates # List available templates
|
|
330
355
|
cnotes canvas from-template <templateId> [--title "<title>"] # Create empty skeleton
|
|
@@ -333,7 +358,10 @@ cnotes canvas from-template <templateId> --populate # Auto-populat
|
|
|
333
358
|
|
|
334
359
|
# Agent-run bracketing — group a sequence of canvas changes into one operation
|
|
335
360
|
# with before/after snapshots so the user can see "AI did X" and revert as a unit.
|
|
336
|
-
# REQUIRED when an AI agent modifies a canvas
|
|
361
|
+
# REQUIRED when an AI agent modifies a canvas — but an open `cnotes operations
|
|
362
|
+
# begin` run ALREADY satisfies it (same active-run pointer; canvas writes
|
|
363
|
+
# attach to it). Only bracket here when no operations run is open; a second
|
|
364
|
+
# `begin` on top of one refuses with CONFLICT. Notes directly below the block.
|
|
337
365
|
cnotes canvas agent-run wrap --canvas <id> --prompt "<intent>" -- <command> # one-shot
|
|
338
366
|
cnotes canvas agent-run begin --canvas <id> --prompt "<intent>" [--rationale "<plan>"] # multi-step
|
|
339
367
|
cnotes canvas agent-run end --canvas <id> # no --run-id needed; ends the active run
|
|
@@ -606,7 +634,7 @@ For any canvas you only *added to* (you already hold its id, so you didn't re-`g
|
|
|
606
634
|
```
|
|
607
635
|
- Use inline `markdown` only for short, single-line content.
|
|
608
636
|
- **Always start markdown content with a `# h1` heading.** This becomes the note title. Follow proper markdown structure: `## h2` for major sections, `### h3` for subsections. Well-structured heading hierarchy is expected for all notes.
|
|
609
|
-
- **Relationship mentions in markdown**: Use `[NOTE-123
|
|
637
|
+
- **Relationship mentions in markdown**: Use `[NOTE-123: Title](relationship:<type>)` — plain text "NOTE-123" does NOT create clickable mentions, and the title-less form renders as "Untitled". Match `<type>` to the verb your prose uses (`blocks`, `depends-on`, …); `references` is for pure citations. The typed wiki form `[[blocks::NOTE-123]]` is equivalent — it's how note bodies serialize mentions back to you, and an untyped `[[NOTE-123]]` is a plain reference.
|
|
610
638
|
- **Reuse an existing relationship type before inventing one.** Run `cnotes rel types` (or read the list printed by `cnotes workspace current`) and pick the closest existing label. The type slot is free-form, so an unknown label is auto-created as a custom workspace type rather than dropped — but that means a typo or a needless synonym (`support` vs `supports`, `relates-to` vs `related-to`) silently pollutes the workspace's type vocabulary forever. Only coin a new type when nothing existing fits.
|
|
611
639
|
- Names are normalized to lowercase + hyphens, so `Depends On`, `depends on`, and `depends-on` all resolve to the same type. When `cnotes notes create` does create new types, it reports them (`+ created N new relationship types: …`) — treat that line as a prompt to double-check you didn't mean an existing one.
|
|
612
640
|
- Common built-in types to reach for first:
|
|
@@ -694,7 +722,7 @@ A canvas holds two tiers of material, and the difference is load-bearing:
|
|
|
694
722
|
2. **No relationship-mention syntax inside text elements or list descriptions.** `[NOTE-12](relationship:references)` and `[[NOTE-12]]` corrupt a canvas text element — the card renders blank. Reference notes in canvas prose as plain display IDs ("see RISK-64"). Mentions belong in NOTE bodies, where they create real graph edges.
|
|
695
723
|
3. **A text element is capped at card size**: at most 3 sentences, one heading at most, never a list of distinct knowledge items (questions, risks, findings — those are N notes; a 3-line color legend or lane key is fine). The one exception is the orientation banner (table row 5, up to ~5 sentences). A heading-only text element (`--content '# Q1 Goals'`) is of course fine — that is the smallest legitimate use. The cap is physical as much as doctrinal: a text element renders its full content inline, so long blocks explode the canvas — one canvas hit 43,000px tall from eight text reference blocks and had to be rebuilt as notes.
|
|
696
724
|
4. **Detail's HOME is the note body; text detail cards are projections.** Write the full spec/content INTO each note's body first. A parallel text card under a note is allowed only as a projection — it condenses or quotes a note that already contains everything, and says so ("from STAGE-3"). A detail card whose content exists nowhere else is the anti-pattern: one teaching canvas carried its entire method in text cards over one-line stub notes, and an agent reading it back got seven stubs and no method.
|
|
697
|
-
5. **Edges can connect any node type** (note, text, list, canvas-link — plus legacy heading nodes), as long as both endpoints are on the same canvas; labels are short verb phrases ("fixes", "grounds", "depends on"). `canvas read` returns edges, so they are no longer invisible on read-back — but an edge is still CANVAS-LOCAL: it is not part of the note graph, never appears in `rel list`, is not searchable, and means nothing once you leave this canvas. So any relationship **between notes** that must survive off the canvas has to ALSO exist as a mention inside the note bodies. The mention is the copy that travels; the edge is the copy you can see. Edges to text/list/canvas-link nodes are diagram decoration (pointing a label at a cluster, wiring a portal) and carry no note-to-note relationship to mirror.
|
|
725
|
+
5. **Edges can connect any node type** (note, text, list, canvas-link, section — plus legacy heading nodes), as long as both endpoints are on the same canvas; labels are short verb phrases ("fixes", "grounds", "depends on"). A section endpoint is addressed by the section node's Convex id (`sectionNodes[].id` in `canvas get --json` — `canvas read` shows only display ids), not its SECTION-n display id, and the edge anchors to the frame's border — use one when the relationship's endpoint is genuinely the whole region ("this cluster feeds that stage"), not as a shortcut for a note-to-note link. `canvas read` returns edges, so they are no longer invisible on read-back — but an edge is still CANVAS-LOCAL: it is not part of the note graph, never appears in `rel list`, is not searchable, and means nothing once you leave this canvas. So any relationship **between notes** that must survive off the canvas has to ALSO exist as a mention inside the note bodies. The mention is the copy that travels; the edge is the copy you can see. Edges to text/list/canvas-link nodes are diagram decoration (pointing a label at a cluster, wiring a portal) and carry no note-to-note relationship to mirror.
|
|
698
726
|
6. **Color is semantic or absent.** Default neutral — a text element has NO background unless you pass `--color`, and that is usually the right look (an untinted heading is just type on the canvas). Use a saturated hex only to encode a role applied consistently on this canvas (e.g. risks red, evidence blue), 2–4 roles max. If you cannot name the role, omit the color. Never pastels — they composite to mud on the canvas background.
|
|
699
727
|
|
|
700
728
|
#### Two completion tests
|
|
@@ -1028,7 +1056,7 @@ When creating multiple related notes, interlink at two levels:
|
|
|
1028
1056
|
|
|
1029
1057
|
**1. Relationship mentions inside note content** — connects notes in the knowledge graph:
|
|
1030
1058
|
- Use `cnotes notes create` with an array and `@key` placeholders for cross-references.
|
|
1031
|
-
- Example: `[@B: The Problem](relationship:
|
|
1059
|
+
- Example: `[@B: The Problem](relationship:extends)` in markdown.
|
|
1032
1060
|
- The server resolves placeholders to real display IDs in one atomic transaction.
|
|
1033
1061
|
|
|
1034
1062
|
**2. Canvas edges between nodes** — visual connections on the canvas:
|
|
@@ -1041,11 +1069,13 @@ Both levels are needed — edges are canvas-local, mentions are content-level. `
|
|
|
1041
1069
|
|
|
1042
1070
|
Use `[@key: Title](relationship:type)` where `key` matches a note's `key` field in the `--notes` JSON:
|
|
1043
1071
|
```markdown
|
|
1044
|
-
This builds on [@B: The Problem](relationship:
|
|
1072
|
+
This builds on [@B: The Problem](relationship:extends) and enables [@C: The Workflow](relationship:enables).
|
|
1045
1073
|
```
|
|
1046
1074
|
|
|
1047
1075
|
The relationship type is free-form, but **reuse an existing type before inventing one** — see [Content via Markdown](#content-via-markdown) above for the reuse rule, why needless synonyms are harmful, and the built-in types to reach for first.
|
|
1048
1076
|
|
|
1077
|
+
**Match the type to your own verb.** If your sentence says "blocks", the mention must say `relationship:blocks` — a verb narrated in prose around a `references` chip (or an untyped `[[NOTE-12]]`) is an edge the graph can't see: backlinks and `rel list` will file it as a plain citation. `notes create` and `versions create` detect this and return a `mentionWarnings` array (--json) plus a stderr note with the exact retyped mention; treat each warning as a retype instruction unless the flagged word genuinely isn't asserting a relationship.
|
|
1078
|
+
|
|
1049
1079
|
### Gathering Context with Search
|
|
1050
1080
|
|
|
1051
1081
|
Before creating or updating notes on a topic, **search existing notes first**:
|