mirror of
https://github.com/basicmachines-co/basic-memory
synced 2026-06-21 13:47:35 +00:00
fix(plugins): route UUID project refs consistently across all skills
Codex flagged /basic-memory:remember passing a UUID primaryProject as `project` (review 4397206729) — the same routing bug already fixed in the hooks and the share skill. Rather than fix only the flagged spot, audited every project-ref site and made them all consistent: - remember: route primaryProject as project_id when it's a UUID (was the flag) - status: same for the primaryProject-scoped search_notes queries - setup: same for the schema-seed write to primaryProject share/SKILL.md and both hooks (session-start, pre-compact) already handle it. That's now every place the plugin routes to a project ref — a project ref may be a workspace-qualified name (-> project) or an external_id UUID (-> project_id), and all six sites detect and route accordingly. Plugin validates. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Signed-off-by: phernandez <paul@basicmachines.co>
This commit is contained in:
committed by
Paul Hernandez
parent
bfee8958ad
commit
1eb4cd154f
@@ -32,7 +32,9 @@ Capture `$ARGUMENTS` into Basic Memory as a quick note, keeping the user's words
|
||||
- `directory` = the resolved `rememberFolder`
|
||||
- `content` = the text
|
||||
- `tags` = `["manual-capture"]`
|
||||
- `project` = `primaryProject` if set; otherwise omit it
|
||||
- Route to `primaryProject` if set: pass it as `project`, or as `project_id` if
|
||||
it's an `external_id` UUID (a bare UUID in `project` won't route). Omit both if
|
||||
`primaryProject` isn't set.
|
||||
Don't overwrite an existing note unless the user explicitly asks.
|
||||
|
||||
4. **Confirm** in one line: what was saved and its permalink —
|
||||
|
||||
@@ -103,7 +103,8 @@ For each one:
|
||||
`title` = the schema's title (Session / Decision / Task), `content` = the file's
|
||||
full contents (including its `---` frontmatter — Basic Memory merges that into the
|
||||
note's frontmatter, so the `type: schema` + `entity` + `schema` definition land
|
||||
intact and become resolvable by `schema_validate`), `project` = `primaryProject`.
|
||||
intact and become resolvable by `schema_validate`), routed to `primaryProject`
|
||||
(pass it as `project`, or as `project_id` if it's an `external_id` UUID).
|
||||
|
||||
### 2. Install the shared skills (if the user opted in)
|
||||
Run, from the project root:
|
||||
|
||||
@@ -32,6 +32,9 @@ This is a quick diagnostic — gather the facts and lay them out; don't over-inv
|
||||
4. **Active tasks.** `search_notes` with
|
||||
`metadata_filters={"type": "task", "status": "active"}` — report just the count.
|
||||
|
||||
When scoping these queries to `primaryProject`, pass it as `project`, or as
|
||||
`project_id` if it's an `external_id` UUID (a bare UUID in `project` won't route).
|
||||
|
||||
## Present
|
||||
|
||||
Lay it out like this (fill in real values; write "—" or a short note for anything
|
||||
|
||||
Reference in New Issue
Block a user