@creator-notes/cnotes 0.65.0 → 0.66.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/cn.js +2 -97
- package/dist/cn.js.map +1 -1
- package/dist/commands/relationships.d.ts.map +1 -1
- package/dist/commands/relationships.js +13 -4
- package/dist/commands/relationships.js.map +1 -1
- package/dist/commands/timeline.d.ts.map +1 -1
- package/dist/commands/timeline.js +4 -2
- package/dist/commands/timeline.js.map +1 -1
- package/dist/program.d.ts +13 -0
- package/dist/program.d.ts.map +1 -0
- package/dist/program.js +146 -0
- package/dist/program.js.map +1 -0
- package/package.json +1 -1
- package/skills/cnotes/SKILL.md +1 -1
package/dist/cn.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
|
-
import { Command } from "commander";
|
|
4
3
|
import updateNotifier from "update-notifier";
|
|
5
4
|
import { embeddedVersion, isCompiledBinary } from "./lib/runtime.js";
|
|
6
5
|
// Compiled binary: version is baked in (no package.json on disk). npm install:
|
|
@@ -8,103 +7,9 @@ import { embeddedVersion, isCompiledBinary } from "./lib/runtime.js";
|
|
|
8
7
|
const CLI_VERSION = embeddedVersion() ??
|
|
9
8
|
createRequire(import.meta.url)("../package.json").version;
|
|
10
9
|
import { refreshInstalledSkills } from "./lib/install-skill.js";
|
|
11
|
-
import {
|
|
12
|
-
import { registerConfigCommands } from "./commands/config.js";
|
|
13
|
-
import { registerWorkspaceCommands } from "./commands/workspace.js";
|
|
14
|
-
import { registerUpgradeCommand } from "./commands/upgrade.js";
|
|
15
|
-
import { registerNotesCommands } from "./commands/notes.js";
|
|
16
|
-
import { registerVersionsCommands } from "./commands/versions.js";
|
|
17
|
-
import { registerCanvasCommands } from "./commands/canvas.js";
|
|
18
|
-
import { registerRelationshipsCommands } from "./commands/relationships.js";
|
|
19
|
-
import { registerDepsCommands } from "./commands/deps.js";
|
|
20
|
-
import { registerSearchCommands } from "./commands/search.js";
|
|
21
|
-
import { registerTimelineCommands } from "./commands/timeline.js";
|
|
22
|
-
import { registerReviewCommands } from "./commands/review.js";
|
|
23
|
-
import { registerSharedCommands } from "./commands/shared.js";
|
|
24
|
-
import { registerDraftCommands } from "./commands/draft.js";
|
|
25
|
-
import { registerFocusCommands } from "./commands/focus.js";
|
|
26
|
-
import { registerTypesCommands } from "./commands/types.js";
|
|
27
|
-
import { registerFilesCommands } from "./commands/files.js";
|
|
28
|
-
import { registerMcpCommands } from "./commands/mcp.js";
|
|
29
|
-
import { registerInitCommand } from "./commands/init.js";
|
|
30
|
-
import { registerSchemaCommand } from "./commands/schema.js";
|
|
31
|
-
import { registerThemeCommands } from "./commands/theme.js";
|
|
32
|
-
import { registerOperationsCommands } from "./commands/operations.js";
|
|
33
|
-
import { registerFeedbackCommands } from "./commands/feedback.js";
|
|
34
|
-
import { registerSkillsCommands } from "./commands/skills.js";
|
|
35
|
-
import { registerClaudeHookCommand } from "./commands/claude-hook.js";
|
|
36
|
-
import { loadConfig, getServerConfig } from "./lib/auth-store.js";
|
|
37
|
-
import { parseFields } from "./lib/config.js";
|
|
38
|
-
import { setOutputMode } from "./lib/output.js";
|
|
10
|
+
import { buildProgram } from "./program.js";
|
|
39
11
|
import { handleError } from "./lib/errors.js";
|
|
40
|
-
const program =
|
|
41
|
-
program
|
|
42
|
-
.name("cnotes")
|
|
43
|
-
.description("CreatorNotes CLI — manage notes, canvases, and knowledge from the terminal")
|
|
44
|
-
.version(CLI_VERSION)
|
|
45
|
-
.option("--json", "Output raw JSON")
|
|
46
|
-
.option("-q, --quiet", "Minimal output: one handle per line (displayId, name, or id); with --fields, those fields tab-separated")
|
|
47
|
-
.option("--fields <list>", "Keep only these comma-separated fields in JSON output, on any command (e.g. displayId,title)")
|
|
48
|
-
.option("-w, --workspace <id>", "Override active workspace ID")
|
|
49
|
-
.option("--server <url>", "Override server URL");
|
|
50
|
-
// -q and --fields are root flags, so apply them once here for every command.
|
|
51
|
-
program.hook("preAction", () => {
|
|
52
|
-
const opts = program.opts();
|
|
53
|
-
setOutputMode({ quiet: Boolean(opts.quiet), fields: parseFields(opts.fields) });
|
|
54
|
-
});
|
|
55
|
-
program.addHelpText("after", `
|
|
56
|
-
Examples:
|
|
57
|
-
$ cnotes notes list --type Insight --json
|
|
58
|
-
$ cnotes notes get MEETING-12 PRD-3 IDEA-7
|
|
59
|
-
$ cnotes search semantic "user retention" --limit 5
|
|
60
|
-
$ cnotes canvas place <canvasId> --spec ./layout.json
|
|
61
|
-
$ cnotes skills install fat-marker # add the storyboard skill to your agent
|
|
62
|
-
$ cnotes notes list --fields displayId,title,type # trim output to chosen keys
|
|
63
|
-
$ cnotes notes list -q --fields displayId,title # tab-separated, no JSON parser needed
|
|
64
|
-
$ cnotes schema --json # describe types, relationships, exit codes
|
|
65
|
-
|
|
66
|
-
Exit codes:
|
|
67
|
-
0 ok 1 generic 2 auth 3 validation
|
|
68
|
-
4 not-found 5 conflict 6 rate-limit 7 permission
|
|
69
|
-
|
|
70
|
-
Env vars:
|
|
71
|
-
CNOTES_SERVER, CNOTES_TOKEN, CNOTES_WORKSPACE, CNOTES_JSON=1
|
|
72
|
-
`);
|
|
73
|
-
// Register all command groups
|
|
74
|
-
registerInitCommand(program);
|
|
75
|
-
registerAuthCommands(program);
|
|
76
|
-
registerConfigCommands(program);
|
|
77
|
-
registerWorkspaceCommands(program);
|
|
78
|
-
registerUpgradeCommand(program);
|
|
79
|
-
registerNotesCommands(program);
|
|
80
|
-
registerVersionsCommands(program);
|
|
81
|
-
registerCanvasCommands(program);
|
|
82
|
-
registerRelationshipsCommands(program);
|
|
83
|
-
registerDepsCommands(program);
|
|
84
|
-
registerSearchCommands(program);
|
|
85
|
-
registerTimelineCommands(program);
|
|
86
|
-
registerReviewCommands(program);
|
|
87
|
-
registerSharedCommands(program);
|
|
88
|
-
registerDraftCommands(program);
|
|
89
|
-
registerFocusCommands(program);
|
|
90
|
-
registerTypesCommands(program);
|
|
91
|
-
registerFilesCommands(program);
|
|
92
|
-
registerMcpCommands(program);
|
|
93
|
-
registerSchemaCommand(program);
|
|
94
|
-
registerThemeCommands(program);
|
|
95
|
-
registerOperationsCommands(program);
|
|
96
|
-
registerFeedbackCommands(program);
|
|
97
|
-
registerSkillsCommands(program);
|
|
98
|
-
registerClaudeHookCommand(program);
|
|
99
|
-
// Default action: show help + first-run hint when invoked with no arguments
|
|
100
|
-
program.action(() => {
|
|
101
|
-
const config = loadConfig();
|
|
102
|
-
const sc = getServerConfig(config, config.currentServer);
|
|
103
|
-
if (!sc?.token) {
|
|
104
|
-
console.log('Tip: Run "cnotes init" to get started.\n');
|
|
105
|
-
}
|
|
106
|
-
program.help();
|
|
107
|
-
});
|
|
12
|
+
const program = buildProgram(CLI_VERSION);
|
|
108
13
|
// ── Background maintenance (best-effort; never blocks or breaks a command) ──
|
|
109
14
|
// Skipped for the MCP server subcommand, which speaks JSON-RPC and must stay
|
|
110
15
|
// silent. Writes only to stderr so stdout stays clean for --json / piping.
|
package/dist/cn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cn.js","sourceRoot":"","sources":["../src/cn.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"cn.js","sourceRoot":"","sources":["../src/cn.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relationships.d.ts","sourceRoot":"","sources":["../../src/commands/relationships.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8CpC,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"relationships.d.ts","sourceRoot":"","sources":["../../src/commands/relationships.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8CpC,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgPpE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ApiClient } from "../lib/api-client.js";
|
|
2
2
|
import { resolveConfig } from "../lib/config.js";
|
|
3
|
-
import { handleError } from "../lib/errors.js";
|
|
3
|
+
import { handleError, ValidationError } from "../lib/errors.js";
|
|
4
4
|
import { outputJson, outputTable, truncate } from "../lib/output.js";
|
|
5
5
|
const noteRef = (n) => {
|
|
6
6
|
const note = n;
|
|
@@ -37,6 +37,7 @@ export function registerRelationshipsCommands(program) {
|
|
|
37
37
|
.description("Manage note relationships");
|
|
38
38
|
rel
|
|
39
39
|
.command("list")
|
|
40
|
+
.argument("[displayId]", "Same as --note: list the links of this one note")
|
|
40
41
|
.description("List relationships. Defaults to links that hold RIGHT NOW: body chips asserted by each note's current version, plus declared links (structural or explicitly created). Superseded chips are history and need --history.")
|
|
41
42
|
.option("--note <displayId>", "Filter by note display ID")
|
|
42
43
|
.option("--type <name>", "Filter by relationship type (e.g. implements)")
|
|
@@ -59,19 +60,27 @@ Columns:
|
|
|
59
60
|
superseded the chip is gone from the current version (--history only).
|
|
60
61
|
|
|
61
62
|
Examples:
|
|
63
|
+
$ cnotes rel list INSIGHT-217
|
|
62
64
|
$ cnotes rel list --note INSIGHT-217
|
|
63
65
|
$ cnotes rel list --note INSIGHT-217 --history
|
|
64
66
|
$ cnotes rel list --type implements --json
|
|
65
67
|
`)
|
|
66
|
-
.action(async (opts) => {
|
|
68
|
+
.action(async (displayId, opts) => {
|
|
67
69
|
const cfg = resolveConfig(program.opts());
|
|
68
70
|
const api = new ApiClient(cfg.serverUrl, cfg.token);
|
|
69
71
|
try {
|
|
72
|
+
// `rel list DECISION-117` used to drop the id and list the whole
|
|
73
|
+
// workspace. A bare id now means --note; two different ids are an error
|
|
74
|
+
// rather than a silent pick.
|
|
75
|
+
if (displayId && opts.note && displayId !== opts.note) {
|
|
76
|
+
throw new ValidationError(`Got two notes: ${displayId} and --note ${opts.note}.`, "Pass one note, either as the argument or with --note.");
|
|
77
|
+
}
|
|
78
|
+
const note = opts.note ?? displayId;
|
|
70
79
|
const params = {
|
|
71
80
|
workspaceId: cfg.workspaceId,
|
|
72
81
|
};
|
|
73
|
-
if (
|
|
74
|
-
params.displayId =
|
|
82
|
+
if (note)
|
|
83
|
+
params.displayId = note;
|
|
75
84
|
if (opts.type)
|
|
76
85
|
params.relationshipType = opts.type;
|
|
77
86
|
if (opts.limit)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relationships.js","sourceRoot":"","sources":["../../src/commands/relationships.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"relationships.js","sourceRoot":"","sources":["../../src/commands/relationships.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline.d.ts","sourceRoot":"","sources":["../../src/commands/timeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuFpC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"timeline.d.ts","sourceRoot":"","sources":["../../src/commands/timeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuFpC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoG/D"}
|
|
@@ -37,7 +37,9 @@ export function registerTimelineCommands(program) {
|
|
|
37
37
|
.command("timeline")
|
|
38
38
|
.alias("tl")
|
|
39
39
|
.description("Show recent changes across notes, or search the change log by meaning")
|
|
40
|
-
|
|
40
|
+
// No -q short flag: the global -q (--quiet) is parsed first and wins, so
|
|
41
|
+
// `timeline -q "x"` silently ran a quiet, unfiltered timeline.
|
|
42
|
+
.option("--query <text>", "Search the change log by meaning instead of listing (all-time unless --since)")
|
|
41
43
|
.option("--since <when>", "Start of range (e.g. 7d, 2w, 2026-03-21). Default: 7d listing, all-time search")
|
|
42
44
|
.option("--until <when>", "End of range (default: now)")
|
|
43
45
|
.option("--type <noteType>", "Filter by note type (comma-separated, e.g. Meeting,Decision)")
|
|
@@ -48,7 +50,7 @@ Examples:
|
|
|
48
50
|
$ cnotes timeline --since 7d
|
|
49
51
|
$ cnotes timeline --since 2026-03-01 --type Decision,Meeting --json
|
|
50
52
|
$ cnotes timeline --query "pricing framing" # why/when did this change?
|
|
51
|
-
$ cnotes timeline
|
|
53
|
+
$ cnotes timeline --query "auth decision" --since 30d # search within a window
|
|
52
54
|
`)
|
|
53
55
|
.action(async (opts) => {
|
|
54
56
|
const cfg = resolveConfig(program.opts());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline.js","sourceRoot":"","sources":["../../src/commands/timeline.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9E,MAAM,cAAc,GAA2B;IAC7C,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,WAAW;CACf,CAAC;AAEF,SAAS,cAAc,CAAC,KAAa;IACnC,sCAAsC;IACtC,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC3C,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,oBAAoB;IACpB,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,iEAAiE;IACjE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,eAAe,CACvB,kBAAkB,KAAK,8DAA8D,CACtF,CAAC;IACJ,CAAC;IAED,sBAAsB;IACtB,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IACrC,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,eAAe,CACvB,kBAAkB,KAAK,8DAA8D,CACtF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AA4CD,MAAM,UAAU,wBAAwB,CAAC,OAAgB;IACvD,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,KAAK,CAAC,IAAI,CAAC;SACX,WAAW,CAAC,uEAAuE,CAAC;
|
|
1
|
+
{"version":3,"file":"timeline.js","sourceRoot":"","sources":["../../src/commands/timeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds the `cnotes` command tree without parsing argv or running any of the
|
|
3
|
+
* entry point's background maintenance, so a test can parse the commands the
|
|
4
|
+
* skill documents and check the parser accepts every one of them.
|
|
5
|
+
*/
|
|
6
|
+
import { Command } from "commander";
|
|
7
|
+
/**
|
|
8
|
+
* Appended to Commander's own error text. Agents read stderr, and both errors
|
|
9
|
+
* below used to cost them a wrong conclusion rather than a retry.
|
|
10
|
+
*/
|
|
11
|
+
export declare function parseErrorHint(message: string, version: string): string | null;
|
|
12
|
+
export declare function buildProgram(version: string): Command;
|
|
13
|
+
//# sourceMappingURL=program.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8BpC;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY9E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAsGrD"}
|
package/dist/program.js
ADDED
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds the `cnotes` command tree without parsing argv or running any of the
|
|
3
|
+
* entry point's background maintenance, so a test can parse the commands the
|
|
4
|
+
* skill documents and check the parser accepts every one of them.
|
|
5
|
+
*/
|
|
6
|
+
import { Command } from "commander";
|
|
7
|
+
import { registerAuthCommands } from "./commands/auth.js";
|
|
8
|
+
import { registerConfigCommands } from "./commands/config.js";
|
|
9
|
+
import { registerWorkspaceCommands } from "./commands/workspace.js";
|
|
10
|
+
import { registerUpgradeCommand } from "./commands/upgrade.js";
|
|
11
|
+
import { registerNotesCommands } from "./commands/notes.js";
|
|
12
|
+
import { registerVersionsCommands } from "./commands/versions.js";
|
|
13
|
+
import { registerCanvasCommands } from "./commands/canvas.js";
|
|
14
|
+
import { registerRelationshipsCommands } from "./commands/relationships.js";
|
|
15
|
+
import { registerDepsCommands } from "./commands/deps.js";
|
|
16
|
+
import { registerSearchCommands } from "./commands/search.js";
|
|
17
|
+
import { registerTimelineCommands } from "./commands/timeline.js";
|
|
18
|
+
import { registerReviewCommands } from "./commands/review.js";
|
|
19
|
+
import { registerSharedCommands } from "./commands/shared.js";
|
|
20
|
+
import { registerDraftCommands } from "./commands/draft.js";
|
|
21
|
+
import { registerFocusCommands } from "./commands/focus.js";
|
|
22
|
+
import { registerTypesCommands } from "./commands/types.js";
|
|
23
|
+
import { registerFilesCommands } from "./commands/files.js";
|
|
24
|
+
import { registerMcpCommands } from "./commands/mcp.js";
|
|
25
|
+
import { registerInitCommand } from "./commands/init.js";
|
|
26
|
+
import { registerSchemaCommand } from "./commands/schema.js";
|
|
27
|
+
import { registerThemeCommands } from "./commands/theme.js";
|
|
28
|
+
import { registerOperationsCommands } from "./commands/operations.js";
|
|
29
|
+
import { registerFeedbackCommands } from "./commands/feedback.js";
|
|
30
|
+
import { registerSkillsCommands } from "./commands/skills.js";
|
|
31
|
+
import { registerClaudeHookCommand } from "./commands/claude-hook.js";
|
|
32
|
+
import { loadConfig, getServerConfig } from "./lib/auth-store.js";
|
|
33
|
+
import { parseFields } from "./lib/config.js";
|
|
34
|
+
import { setOutputMode } from "./lib/output.js";
|
|
35
|
+
/**
|
|
36
|
+
* Appended to Commander's own error text. Agents read stderr, and both errors
|
|
37
|
+
* below used to cost them a wrong conclusion rather than a retry.
|
|
38
|
+
*/
|
|
39
|
+
export function parseErrorHint(message, version) {
|
|
40
|
+
if (/unknown command/.test(message)) {
|
|
41
|
+
return (`cnotes ${version} has no such command. If a guide or skill mentions it, this install ` +
|
|
42
|
+
`may be older than the guide: update with "npm i -g @creator-notes/cnotes@latest" ` +
|
|
43
|
+
`(or re-run the installer), then check "cnotes --version".\n`);
|
|
44
|
+
}
|
|
45
|
+
if (/too many arguments/.test(message)) {
|
|
46
|
+
return `Values go through the command's flags. Add --help to the same command to see them.\n`;
|
|
47
|
+
}
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
export function buildProgram(version) {
|
|
51
|
+
const program = new Command();
|
|
52
|
+
// Both settings are copied to every subcommand created after them, so they
|
|
53
|
+
// must come before the register* calls below.
|
|
54
|
+
//
|
|
55
|
+
// A stray positional argument used to be dropped silently: `rel list
|
|
56
|
+
// DECISION-117` returned 50 workspace-wide rows and exit 0, and an agent
|
|
57
|
+
// reasoned from the wrong graph. Now it is an error.
|
|
58
|
+
program.allowExcessArguments(false);
|
|
59
|
+
program.configureOutput({
|
|
60
|
+
outputError: (message, write) => {
|
|
61
|
+
write(message);
|
|
62
|
+
const hint = parseErrorHint(message, version);
|
|
63
|
+
if (hint)
|
|
64
|
+
write(hint);
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
program
|
|
68
|
+
.name("cnotes")
|
|
69
|
+
.description("CreatorNotes CLI — manage notes, canvases, and knowledge from the terminal")
|
|
70
|
+
.version(version)
|
|
71
|
+
.option("--json", "Output raw JSON")
|
|
72
|
+
.option("-q, --quiet", "Minimal output: one handle per line (displayId, name, or id); with --fields, those fields tab-separated")
|
|
73
|
+
.option("--fields <list>", "Keep only these comma-separated fields in JSON output, on any command (e.g. displayId,title)")
|
|
74
|
+
.option("-w, --workspace <id>", "Override active workspace ID")
|
|
75
|
+
.option("--server <url>", "Override server URL");
|
|
76
|
+
// -q and --fields are root flags, so apply them once here for every command.
|
|
77
|
+
program.hook("preAction", () => {
|
|
78
|
+
const opts = program.opts();
|
|
79
|
+
setOutputMode({ quiet: Boolean(opts.quiet), fields: parseFields(opts.fields) });
|
|
80
|
+
});
|
|
81
|
+
program.addHelpText("after", `
|
|
82
|
+
Examples:
|
|
83
|
+
$ cnotes notes list --type Insight --json
|
|
84
|
+
$ cnotes notes get MEETING-12 PRD-3 IDEA-7
|
|
85
|
+
$ cnotes search semantic "user retention" --limit 5
|
|
86
|
+
$ cnotes canvas place <canvasId> --spec ./layout.json
|
|
87
|
+
$ cnotes skills install fat-marker # add the storyboard skill to your agent
|
|
88
|
+
$ cnotes notes list --fields displayId,title,type # trim output to chosen keys
|
|
89
|
+
$ cnotes notes list -q --fields displayId,title # tab-separated, no JSON parser needed
|
|
90
|
+
$ cnotes schema --json # describe types, relationships, exit codes
|
|
91
|
+
|
|
92
|
+
Exit codes:
|
|
93
|
+
0 ok 1 generic 2 auth 3 validation
|
|
94
|
+
4 not-found 5 conflict 6 rate-limit 7 permission
|
|
95
|
+
|
|
96
|
+
Env vars:
|
|
97
|
+
CNOTES_SERVER, CNOTES_TOKEN, CNOTES_WORKSPACE, CNOTES_JSON=1
|
|
98
|
+
`);
|
|
99
|
+
// Register all command groups
|
|
100
|
+
registerInitCommand(program);
|
|
101
|
+
registerAuthCommands(program);
|
|
102
|
+
registerConfigCommands(program);
|
|
103
|
+
registerWorkspaceCommands(program);
|
|
104
|
+
registerUpgradeCommand(program);
|
|
105
|
+
registerNotesCommands(program);
|
|
106
|
+
registerVersionsCommands(program);
|
|
107
|
+
registerCanvasCommands(program);
|
|
108
|
+
registerRelationshipsCommands(program);
|
|
109
|
+
registerDepsCommands(program);
|
|
110
|
+
registerSearchCommands(program);
|
|
111
|
+
registerTimelineCommands(program);
|
|
112
|
+
registerReviewCommands(program);
|
|
113
|
+
registerSharedCommands(program);
|
|
114
|
+
registerDraftCommands(program);
|
|
115
|
+
registerFocusCommands(program);
|
|
116
|
+
registerTypesCommands(program);
|
|
117
|
+
registerFilesCommands(program);
|
|
118
|
+
registerMcpCommands(program);
|
|
119
|
+
registerSchemaCommand(program);
|
|
120
|
+
registerThemeCommands(program);
|
|
121
|
+
registerOperationsCommands(program);
|
|
122
|
+
registerFeedbackCommands(program);
|
|
123
|
+
registerSkillsCommands(program);
|
|
124
|
+
registerClaudeHookCommand(program);
|
|
125
|
+
// The root alone keeps excess arguments: an unknown top-level word arrives
|
|
126
|
+
// here as an operand, and the action below reports it as an unknown command
|
|
127
|
+
// (with the version hint) instead of Commander's "too many arguments".
|
|
128
|
+
program.allowExcessArguments(true);
|
|
129
|
+
// Default action: show help + first-run hint when invoked with no arguments
|
|
130
|
+
program.action(() => {
|
|
131
|
+
if (program.args.length > 0) {
|
|
132
|
+
program.error(`error: unknown command '${program.args[0]}'`, {
|
|
133
|
+
code: "commander.unknownCommand",
|
|
134
|
+
exitCode: 1,
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
const config = loadConfig();
|
|
138
|
+
const sc = getServerConfig(config, config.currentServer);
|
|
139
|
+
if (!sc?.token) {
|
|
140
|
+
console.log('Tip: Run "cnotes init" to get started.\n');
|
|
141
|
+
}
|
|
142
|
+
program.help();
|
|
143
|
+
});
|
|
144
|
+
return program;
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=program.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/skills/cnotes/SKILL.md
CHANGED
|
@@ -535,7 +535,7 @@ cnotes timeline --since 7d --note standup # filter by note name
|
|
|
535
535
|
# change X, and why" — a hybrid keyword + semantic search over the change
|
|
536
536
|
# descriptions. All-time by default; add --since to bound the window.
|
|
537
537
|
cnotes timeline --query "pricing framing" # find the change, get NOTE + version
|
|
538
|
-
cnotes timeline
|
|
538
|
+
cnotes timeline --query "auth decision" --since 30d # search within a window
|
|
539
539
|
# --json returns { mode: "search", query, results: [{ displayId, versionNumber,
|
|
540
540
|
# changeDescription, snippet, createdAt, score, ... }] }
|
|
541
541
|
```
|