cubesys/cubecli/cube-notes-mcp: note categories + project threads. notes use doc_type 'note:<category>' for categories and associate to a 'project' record (linked_records) for project threads; cube note add|list|search accept --project/--cat/--since/--until; new 'cube project list' + 'cube project show <coord>' (walk a project's thread). MCP server exposes note_write/list/search/show + project_list/project_show. 4 notes tests pass; workspace check green.
This commit is contained in:
+8
-2
@@ -64,6 +64,8 @@ fn is_command_word(w: &str) -> bool {
|
||||
| "audit"
|
||||
| "note"
|
||||
| "notes"
|
||||
| "project"
|
||||
| "projects"
|
||||
)
|
||||
}
|
||||
|
||||
@@ -101,9 +103,13 @@ fn main() {
|
||||
let line = args[1..].join(" ");
|
||||
// Session notes live in their own DURABLE store so a note written
|
||||
// in one session is reviewable in the next (the message save path).
|
||||
if word == "note" || word == "notes" {
|
||||
if word == "note" || word == "notes" || word == "project" || word == "projects" {
|
||||
let store = open_notes_store();
|
||||
let res = cubesys::notes::note_command(&store, &line);
|
||||
let res = if word == "project" || word == "projects" {
|
||||
cubesys::notes::project_command(&store, &line)
|
||||
} else {
|
||||
cubesys::notes::note_command(&store, &line)
|
||||
};
|
||||
// Force a durable flush/checkpoint before exiting so the note is
|
||||
// persisted even though this process (the CLI) is short-lived.
|
||||
store.checkpoint();
|
||||
|
||||
Reference in New Issue
Block a user