claude[bot]
29b9d755e2
fix(mcp): restore overwrite param schema for external MCP clients ( #818 )
...
AliasChoices on `overwrite: bool | None` in write_note caused FastMCP to
generate a broken JSON schema where external clients (e.g. Claude Code)
saw the parameter as type null-only. The boolean value was silently
dropped, so `overwrite=True` arrived as None at the function body.
Revert overwrite to a plain `bool | None = None` parameter. FastMCP now
generates the correct `anyOf: [boolean, null]` schema, and external
clients can send `overwrite=true` as intended.
The `directory` alias (folder/dir/path) is unaffected — AliasChoices on
a required `str` parameter does not exhibit this schema generation issue.
Add regression test: test_write_note_overwrite_canonical_via_mcp verifies
that overwrite=True reaches the function body through the MCP protocol.
Co-authored-by: Paul Hernandez <phernandez@users.noreply.github.com >
Signed-off-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
2026-05-14 01:14:37 +00:00
Paul Hernandez
c6fa185bf3
fix(mcp): route edit_note workspace-qualified permalinks ( #813 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-11 12:56:26 -05:00
Paul Hernandez
415c2b3d6e
feat(cli): add orphan entity command ( #816 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-11 12:13:14 -05:00
Paul Hernandez
4aa0cbdd62
fix(sync): ignore hidden paths relative to watched project ( #815 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-11 11:14:03 -05:00
Paul Hernandez
55f314237d
fix(sync): avoid shell for scan subprocesses ( #814 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-11 09:20:11 -05:00
Drew Cain
9862ef5411
fix(core): use updated_at for recent_activity filter and ordering ( #812 )
...
Signed-off-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Signed-off-by: Drew Cain <groksrc@gmail.com >
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
Co-authored-by: phernandez <paul@basicmachines.co >
2026-05-11 09:14:06 -05:00
Paul Hernandez
df5e8d805f
fix(mcp): centralize workspace permalink routing ( #808 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-08 16:44:57 -05:00
Paul Hernandez
831dc1ecdc
fix(mcp): make multi-project search opt-in ( #807 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-08 12:54:20 -05:00
Paul Hernandez
26381aeed1
fix(mcp): use lightweight graph hydration lookup ( #806 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-08 10:07:29 -05:00
Paul Hernandez
7918e5c6bf
fix(mcp): preserve workspace paths in build_context ( #801 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-08 09:53:54 -05:00
Paul Hernandez
f312341020
fix(mcp): add workspace routing to delete_project ( #803 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-08 09:48:51 -05:00
phernandez
e871298e95
Merge branch 'main' of github.com:basicmachines-co/basic-memory
2026-05-07 18:50:10 -05:00
phernandez
177ae21ba7
pass context to recent_activity
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-07 18:50:02 -05:00
Drew Cain
3415fd1014
fix(core): parse picoschema modifier descriptions ( #796 )
...
Signed-off-by: Drew Cain <groksrc@gmail.com >
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: phernandez <paul@basicmachines.co >
2026-05-06 12:21:35 -05:00
Paul Hernandez
b08659e228
fix(api): accept qualified project resolver hints ( #795 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-06 10:33:11 -05:00
Paul Hernandez
09a4b09436
feat(api): include search result totals ( #791 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-04 14:57:04 -05:00
Paul Hernandez
a661e924df
feat(mcp): create projects by workspace slug ( #789 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-03 19:31:55 -05:00
Paul Hernandez
05adda1502
fix(mcp): route workspace-qualified memory urls ( #790 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-03 18:18:10 -05:00
Drew Cain
0a72d81bb3
fix(mcp): cap recent_activity rows with explicit truncation footer ( #785 )
...
Signed-off-by: Drew Cain <groksrc@gmail.com >
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-03 17:43:42 -05:00
Drew Cain
5ccf433cad
fix(cli): point bm cloud setup hint at bm cloud sync-setup ( #780 )
...
Signed-off-by: Drew Cain <groksrc@gmail.com >
2026-05-02 17:35:24 -05:00
Paul Hernandez
b4bf14ebf7
fix(mcp): list factory projects across workspaces ( #778 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-05-02 09:17:25 -05:00
Paul Hernandez
0b335476d6
fix(mcp): resolve projects by external_id, remove workspace from MCP tools ( #777 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-01 05:15:44 -05:00
Paul Hernandez
2fccc74a20
feat(cli): refuse db reset while basic-memory mcp processes run ( #776 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-29 15:48:19 -05:00
Paul Hernandez
c4956cac16
fix(cli): cleanup local DB state on set-cloud/set-local ( #775 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-29 11:50:14 -05:00
Paul Hernandez
128c2da40c
fix(cli): clear default_workspace on cloud logout ( #773 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-29 09:53:09 -05:00
Paul Hernandez
2bfb9c76df
fix(core): degrade gracefully when sqlite-vec cannot load on init ( #774 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-29 08:57:31 -05:00
Paul Hernandez
a4282d9f2f
fix(core): skip Obsidian callouts in observation parser ( #769 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-28 23:15:13 -05:00
Paul Hernandez
799dd6c629
fix(mcp): remove no-op pagination params from read_note and view_note ( #768 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-28 23:05:14 -05:00
Paul Hernandez
ee1558ea68
feat(mcp): accept training-data-friendly parameter aliases ( #766 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-28 20:10:36 -05:00
Viktor Szépe
4d62b623db
chore(core): fix typos ( #761 )
...
Signed-off-by: Viktor Szépe <viktor@szepe.net >
2026-04-23 10:12:46 -05:00
Paul Hernandez
2fe4488eda
fix(sync): constrain watch service to --project scope ( #759 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-20 13:46:13 -05:00
Paul Hernandez
f3e46d7984
feat(mcp): discover projects across workspaces ( #757 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-18 14:04:57 -05:00
jope-bm
56d6f1b4a5
fix(mcp): report cloud projects as source=cloud in factory mode ( #752 )
...
Signed-off-by: Joe P <joe@basicmemory.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-18 11:10:20 -06:00
Paul Hernandez
1b39062ecd
refactor(core): rip telemetry wrappers, use logfire directly ( #754 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-17 13:58:19 -05:00
Paul Hernandez
c4cf0aff1e
perf(sync): speed up single markdown file indexing ( #751 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-17 07:08:21 -05:00
phernandez
1c343bed66
perf(sync): skip unchanged markdown indexing
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-16 18:27:52 -05:00
phernandez
c50d97e548
fix(sync): instrument single markdown indexing
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-16 18:04:17 -05:00
Drew Cain
e2e65575d6
fix(core): honor BASIC_MEMORY_CONFIG_DIR across remaining call sites ( #744 )
...
Signed-off-by: Drew Cain <groksrc@gmail.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 22:55:25 -05:00
Drew Cain
bf9a6b4a75
fix(core): resolve FastEmbed cache under data dir instead of /tmp ( #743 )
...
Signed-off-by: Drew Cain <groksrc@gmail.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 22:55:00 -05:00
Paul Hernandez
b3d5448355
fix(sync): preserve canonical markdown in single-file sync ( #746 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-15 20:04:28 -05:00
Paul Hernandez
4e53bb83fd
refactor(core): simplify note write flow ( #739 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-15 17:56:27 -05:00
phernandez
8f2b25f0e0
test(core): stabilize postgres fixtures
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-13 14:25:26 -05:00
Paul Hernandez
052545b661
chore(core): make ty the default typechecker ( #736 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-13 10:34:01 -05:00
Paul Hernandez
a872947e03
fix(cli): show cloud index freshness in project info ( #734 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-10 09:22:35 -05:00
Paul Hernandez
093c94fea5
fix(core): clean up delete vectors and cloud sync ( #733 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-09 21:23:45 -05:00
Paul Hernandez
7945c1e2f7
perf(core): speed up vector sync and tune fastembed defaults ( #731 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-09 00:20:12 -05:00
Paul Hernandez
540da418b3
perf(sync): batch file indexing in core ( #726 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-08 01:21:49 -05:00
Paul Hernandez
3e40cb9657
fix(core): remove runtime ALTER TABLE from vector init ( #728 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-08 00:39:37 -05:00
Paul Hernandez
8c81d3ce17
perf(core): reduce postgres vector sync work ( #723 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-04-07 19:00:19 -05:00
Drew Cain
b35d594ef0
fix(core): preserve external_id during entity upsert on re-index ( #724 )
...
Signed-off-by: Drew Cain <groksrc@gmail.com >
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-07 10:26:10 -05:00