Drew Cain
dc29ba2a00
docs(core): add v0.22.0 changelog entry
...
Signed-off-by: Drew Cain <groksrc@gmail.com >
2026-06-11 00:53:13 -05:00
Drew Cain
fe9b2e9c95
Add glama.json to claim the Glama MCP directory listing ( #953 )
2026-06-11 00:02:21 -05:00
Paul Hernandez
650f88a2c5
docs(cli): document personal-vs-team cloud sync semantics ( #947 )
...
Folds in the intent of #857 reconciled with the post-#920 push/pull reality. Closes #851 .
Co-authored-by: Drew Cain <groksrc@users.noreply.github.com >
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 14:50:28 -05:00
Paul Hernandez
2f7ef136de
perf(ci): lean CI — testmon-select branches, shard postgres, drop depot, remove bossbot ( #945 )
...
Branch builds testmon-select against cached baselines; 3-shard Postgres on 3.14 only; free runners; 120s hang ceiling; non-code changes skip the matrix; BM Bossbot and infographic machinery removed.
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 14:21:57 -05:00
Drew Cain
0a3a6bbd96
test(mcp): integration coverage for colliding observation permalinks ( #926 )
...
Refs #909 . Integration coverage over the #931 fix.
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 14:05:05 -05:00
Drew Cain
7bb7664fae
fix(core): use Observation.permalink in build_context to match the search index ( #946 )
...
Closes #929
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 14:05:02 -05:00
Paul Hernandez
db578ccfdb
fix(mcp): recover edit_note when file exists on disk but is not indexed ( #934 )
...
Closes #581
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 14:04:59 -05:00
Paul Hernandez
df485aa5a4
fix(mcp): tighten search_notes tags input and normalize for direct callers ( #941 )
...
Refs #910 . Follow-up to #932 .
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 14:04:56 -05:00
K Jagadeeswara Reddy
44ecec2917
test(mcp): assert tags param and tag: shorthand comma equivalence
...
Integration regression test for #910 : the tags= parameter and the
tag:alpha,beta query shorthand must return the same results for the
same comma string.
Cherry-picked from #918 . The validator swap itself (coerce_list ->
parse_tags) landed separately via #932 ; this carries the remaining
test-only piece with original authorship.
Signed-off-by: K Jagadeeswara Reddy <social@jagadeeswar.com >
2026-06-10 12:04:07 -05:00
Paul Hernandez
49041a5168
docs(skills): fix npx skill install docs and ignore docs assets ( #927 )
...
Refs #930 docs cleanup; adds docs/assets to gitignore.
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 01:30:50 -05:00
Paul Hernandez
8cbe1634b6
fix(cli): don't let bm cloud setup overwrite an existing rclone remote ( #923 )
...
Closes #922
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 01:02:43 -05:00
Paul Hernandez
c4b651f5b0
fix(mcp): accept page/page_size in read_note for parity with sibling tools ( #933 )
...
Closes #883
Refs #882
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-10 00:03:22 -05:00
Paul Hernandez
ca9a4d9c12
fix(mcp): split comma-separated tags in search_notes tags param ( #932 )
...
Closes #910
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-09 22:23:26 -05:00
Paul Hernandez
aa9594d82a
perf(ci): disable semantic search in default test fixtures ( #938 )
...
Disable the silently-on semantic embedding stack in default test fixtures and deselect on-demand benchmarks from CI int jobs. int SQLite 337s -> 110s, Postgres unit ~25min -> ~13min.
Signed-off-by: phernandez <paul@basicmemory.com >
2026-06-09 21:55:21 -05:00
Paul Hernandez
93494b8c13
ci(ci): gate bossbot on passing tests ( #937 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-09 20:47:34 -05:00
Paul Hernandez
93ed34001b
fix(core): disambiguate truncated observation permalinks to prevent index collisions ( #931 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-09 20:20:46 -05:00
Paul Hernandez
ec94feb6a4
Merge branch 'main' into codex/fix-bossbot-assets-publish
2026-06-09 19:23:27 -05:00
Paul Hernandez
831b9141a5
ci(ci): use pytestmon and Depot runners ( #928 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-09 19:20:08 -05:00
phernandez
2de19713f6
fix(ci): make BM Bossbot asset cleanup idempotent
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-09 19:14:13 -05:00
phernandez
79fcfbce6a
fix(ci): restrict BM Bossbot to trusted PR authors
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-09 17:16:49 -05:00
phernandez
3d22ba3004
fix(ci): harden BM Bossbot finalization
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-09 16:32:06 -05:00
phernandez
62229d9d0a
fix(ci): address BM Bossbot PR feedback
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-09 15:55:36 -05:00
phernandez
03ba268cb1
feat(ci): add BM Bossbot PR gate
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-09 15:18:40 -05:00
Paul Hernandez
de53e0ecc5
feat(cli): per-workspace rclone remotes for Team push/pull ( #920 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-08 17:39:37 -05:00
Paul Hernandez
4128cac9ab
docs(core): add Basic Machines agent style guidance ( #921 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-08 17:09:50 -05:00
Paul Hernandez
9b53d7863f
feat(cli): add Team-safe cloud push/pull and gate sync to Personal workspaces ( #917 )
...
Adds additive, git-style `bm cloud push`/`pull` that are safe on shared Team workspaces (never delete on the destination; conflicts abort by default with `--on-conflict {fail|keep-local|keep-cloud|keep-both}`), and gates the destructive `bm cloud sync`/`bisync` mirrors to Personal workspaces. Closes #858 . Longer-term Team-safe reconciler tracked in #862 ; workspace-scoped mount info (Codex P1) tracked as a follow-up.
2026-06-08 14:08:49 -05:00
Paul Hernandez
a8d034b940
fix(mcp): point move mismatch guidance at landing path ( #916 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-08 10:42:38 -05:00
Paul Hernandez
7c0937f658
fix(mcp): validate navigation pagination and fix recent_activity project display ( #915 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 23:03:00 -05:00
Paul Hernandez
8570d96bad
fix(cli): align bm tool commands with MCP (error exits, overwrite, category, default) ( #913 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 22:56:43 -05:00
Paul Hernandez
480a2d9468
fix(mcp): resolve memory:// in move_note and stop false cross-project rejections ( #914 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 22:44:08 -05:00
Paul Hernandez
df7452e3ba
fix(core): make note_types search filter case-insensitive ( #912 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 22:44:04 -05:00
Paul Hernandez
85a8e59d0f
fix(core): split comma-separated tags in parse_tags ( #911 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 22:44:01 -05:00
Paul Hernandez
07cb7a606b
docs(core): mark LiteLLM provider experimental ( #899 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 20:13:54 -05:00
Paul Hernandez
0ef03edde6
feat(cli): add --type to the write-note tool command ( #907 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 20:06:44 -05:00
Paul Hernandez
efe43a10ea
feat(cli): add --wait and --timeout to bm status ( #906 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 19:58:02 -05:00
Paul Hernandez
4fe6fe09c8
feat(core): add observation category filter to search ( #908 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 19:57:19 -05:00
Paul Hernandez
8acdb49a41
fix(core): reuse a single embedding provider per process ( #903 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 19:14:07 -05:00
Paul Hernandez
f7304bf553
feat(cli): improve workspace and cloud bisync command discoverability ( #905 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 18:18:17 -05:00
Paul Hernandez
5b034f081d
fix(core): self-heal corrupt FastEmbed model cache ( #900 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 17:37:30 -05:00
Paul Hernandez
271c883ea8
fix(core): load sqlite-vec for embedding-status query ( #901 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 17:37:27 -05:00
Paul Hernandez
816ee85fb9
fix(core): prevent asyncpg engine-dispose crash on Postgres backend ( #902 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 17:37:23 -05:00
Paul Hernandez
3ba3a9504d
fix(mcp): stop move_note reporting false success across boundaries ( #904 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-07 17:37:20 -05:00
Paul Hernandez
1667cdc000
test(ci): normalize setup overwrite assertion ( #898 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-06 23:20:06 -05:00
Sourish Chakraborty
f916662ff3
fix(core): allow cross-project context traversal
2026-06-06 21:43:21 -05:00
DoubleDeeRuffy
0c9800cd3b
fix(sync): use strict deferred relation resolution
2026-06-06 21:43:09 -05:00
Adit Karode
476239d878
feat(cli): add delete-note tool command
2026-06-06 21:41:46 -05:00
DoubleDeeRuffy
20bb19f4cd
fix(mcp): resolve write-note overwrite conflicts
2026-06-06 21:41:36 -05:00
tk
f6565b9d23
fix(core): L2-normalize FastEmbed vectors ( #843 )
...
L2-normalizes FastEmbed output vectors at the provider boundary so SQLite vector scoring keeps its unit-vector contract for custom FastEmbed models such as multilingual MiniLM variants.
Zero vectors are preserved as-is to avoid division errors, and the provider tests cover both non-unit vectors and zero-vector behavior.
Verification:
- uv run pytest tests/repository/test_fastembed_provider.py -q
- uv run ruff check src/basic_memory/repository/fastembed_provider.py tests/repository/test_fastembed_provider.py
- uv run ruff format --check src/basic_memory/repository/fastembed_provider.py tests/repository/test_fastembed_provider.py
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
Signed-off-by: tk-pkm111 <133480534+tk-pkm111@users.noreply.github.com >
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-06 17:15:19 -05:00
Aarish Alam
b6e8c636ce
feat(core): add LiteLLM embedding provider ( #809 )
...
Adds LiteLLM as a semantic embedding provider, including provider configuration, vector normalization, live-provider evaluation tooling, and documentation for OpenAI, Cohere, Azure Foundry, Azure OpenAI, and NVIDIA NIM-style cases.
Maintainer follow-up on this PR added provider hardening, asymmetric document/query embedding support, dimension-forwarding controls, SQLite/Postgres vector invalidation coverage, and the repeatable live LiteLLM harness.
Verification:
- Full base-repo Tests workflow passed for 3d4e092ceb : https://github.com/basicmachines-co/basic-memory/actions/runs/27072071785
- Live LiteLLM harness passed locally for OpenAI, Cohere, and Azure Foundry.
Co-authored-by: Aarish Alam <arishalam121@gmail.com >
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
Signed-off-by: RheagalFire <arishalam121@gmail.com >
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-06 17:13:09 -05:00
Paul Hernandez
442fd1523c
fix(plugins): include codex in shared version bump ( #897 )
...
Signed-off-by: phernandez <paul@basicmachines.co >
2026-06-05 18:34:57 -05:00