basic-memory 0.22.0__tar.gz → 0.22.1__tar.gz

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.
Files changed (918) hide show
  1. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude/commands/release/release.md +35 -23
  2. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude-plugin/marketplace.json +2 -2
  3. {basic_memory-0.22.0 → basic_memory-0.22.1}/AGENTS.md +5 -3
  4. {basic_memory-0.22.0 → basic_memory-0.22.1}/CHANGELOG.md +44 -0
  5. {basic_memory-0.22.0 → basic_memory-0.22.1}/PKG-INFO +2 -2
  6. {basic_memory-0.22.0 → basic_memory-0.22.1}/README.md +1 -1
  7. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/Docker.md +3 -3
  8. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/character-handling.md +2 -2
  9. basic_memory-0.22.1/docs/manual-pages.md +183 -0
  10. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/__init__.py +1 -1
  11. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/plugin.yaml +1 -1
  12. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/package.json +1 -1
  13. {basic_memory-0.22.0 → basic_memory-0.22.1}/justfile +114 -24
  14. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/.claude-plugin/marketplace.json +2 -2
  15. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/.claude-plugin/plugin.json +1 -1
  16. basic_memory-0.22.1/plugins/claude-code/schemas/manpage.md +55 -0
  17. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/.codex-plugin/plugin.json +1 -1
  18. {basic_memory-0.22.0 → basic_memory-0.22.1}/server.json +2 -2
  19. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/__init__.py +1 -1
  20. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/project_router.py +34 -13
  21. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/utils.py +1 -0
  22. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/app.py +3 -0
  23. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/auto_update.py +15 -0
  24. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/__init__.py +2 -0
  25. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/ci.py +12 -2
  26. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/command_utils.py +8 -2
  27. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/db.py +28 -7
  28. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/doctor.py +9 -4
  29. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/import_chatgpt.py +16 -4
  30. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/import_claude_conversations.py +16 -4
  31. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/import_claude_projects.py +16 -4
  32. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/import_memory_json.py +16 -4
  33. basic_memory-0.22.1/src/basic_memory/cli/commands/man.py +76 -0
  34. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/orphans.py +3 -1
  35. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/schema.py +13 -3
  36. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/status.py +11 -2
  37. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/tool.py +40 -12
  38. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/main.py +1 -0
  39. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/config.py +36 -2
  40. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/db.py +25 -13
  41. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/file_utils.py +68 -22
  42. basic_memory-0.22.1/src/basic_memory/man/basic-memory.1 +1 -0
  43. basic_memory-0.22.1/src/basic_memory/man/bm.1 +134 -0
  44. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/async_client.py +38 -13
  45. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/directory.py +5 -1
  46. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/knowledge.py +26 -1
  47. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/memory.py +8 -1
  48. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/project.py +21 -7
  49. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/resource.py +5 -1
  50. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/schema.py +9 -1
  51. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/search.py +6 -1
  52. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/project_context.py +164 -23
  53. basic_memory-0.22.1/src/basic_memory/mcp/resources/discovery.py +17 -0
  54. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/build_context.py +6 -1
  55. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/canvas.py +2 -0
  56. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/chatgpt_tools.py +4 -0
  57. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/cloud_info.py +4 -4
  58. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/delete_note.py +2 -0
  59. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/edit_note.py +2 -0
  60. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/list_directory.py +2 -0
  61. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/move_note.py +2 -0
  62. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/project_management.py +18 -6
  63. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/read_content.py +2 -0
  64. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/read_note.py +2 -0
  65. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/recent_activity.py +2 -0
  66. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/release_notes.py +4 -4
  67. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/schema.py +6 -0
  68. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/search.py +29 -5
  69. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/ui_sdk.py +4 -0
  70. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/view_note.py +2 -0
  71. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/workspaces.py +2 -0
  72. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/write_note.py +39 -0
  73. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/search_index_row.py +2 -0
  74. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/search_repository_base.py +53 -42
  75. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/base.py +4 -1
  76. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/memory.py +3 -0
  77. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/context_service.py +38 -2
  78. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/initialization.py +9 -13
  79. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/project_service.py +35 -0
  80. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/sync/watch_service.py +13 -13
  81. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/utils.py +56 -0
  82. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_routing_integration.py +31 -4
  83. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_project_management_integration.py +21 -22
  84. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_project_router.py +107 -0
  85. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_auto_update.py +15 -0
  86. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_ci_commands.py +10 -10
  87. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cli_exit.py +40 -0
  88. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cli_schema.py +11 -11
  89. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cli_tool_json_output.py +33 -33
  90. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_db_reindex.py +20 -11
  91. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_json_output.py +5 -5
  92. basic_memory-0.22.1/tests/cli/test_man_command.py +95 -0
  93. basic_memory-0.22.1/tests/cli/test_status_wait_timeout.py +55 -0
  94. basic_memory-0.22.1/tests/db/test_memory_db_session_isolation.py +93 -0
  95. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/clients/test_clients.py +13 -26
  96. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_async_client_modes.py +39 -0
  97. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_client_schema.py +7 -7
  98. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_project_context.py +314 -11
  99. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_build_context.py +50 -0
  100. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_cloud_discovery.py +7 -2
  101. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_contracts.py +17 -0
  102. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_search.py +158 -0
  103. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_write_note.py +127 -0
  104. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_entity_repository.py +5 -3
  105. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_hybrid_fusion.py +28 -0
  106. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_sqlite_vector_search_repository.py +91 -0
  107. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_vector_pagination.py +1 -1
  108. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_vector_threshold.py +8 -8
  109. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_context_service.py +99 -0
  110. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_initialization.py +51 -0
  111. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_project_service.py +92 -0
  112. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_watch_service.py +11 -8
  113. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_watch_service_reload.py +84 -0
  114. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_coerce.py +81 -2
  115. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_config.py +83 -0
  116. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_file_utils.py +44 -0
  117. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/plugins/marketplace.json +0 -0
  118. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/adversarial-review/SKILL.md +0 -0
  119. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/adversarial-review/prompts/refute.md +0 -0
  120. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/adversarial-review/prompts/review.md +0 -0
  121. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/adversarial-review/schemas/findings.schema.json +0 -0
  122. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/adversarial-review/schemas/verdicts.schema.json +0 -0
  123. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/code-review/SKILL.md +0 -0
  124. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/fix-pr-issues/SKILL.md +0 -0
  125. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/fix-pr-issues/agents/openai.yaml +0 -0
  126. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/fix-pr-issues/assets/icon.svg +0 -0
  127. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/infographics/SKILL.md +0 -0
  128. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/infographics/agents/openai.yaml +0 -0
  129. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/infographics/assets/icon.svg +0 -0
  130. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/infographics/references/prompt-blueprint.md +0 -0
  131. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/infographics/references/style-balance.md +0 -0
  132. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/instrumentation/SKILL.md +0 -0
  133. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/javascript/frameworks.md +0 -0
  134. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/javascript/patterns.md +0 -0
  135. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/python/integrations.md +0 -0
  136. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/python/logging-patterns.md +0 -0
  137. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/rust/patterns.md +0 -0
  138. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/pr-create/SKILL.md +0 -0
  139. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/pr-create/agents/openai.yaml +0 -0
  140. {basic_memory-0.22.0 → basic_memory-0.22.1}/.agents/skills/pr-create/assets/icon.svg +0 -0
  141. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude/commands/release/beta.md +0 -0
  142. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude/commands/release/changelog.md +0 -0
  143. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude/commands/release/release-check.md +0 -0
  144. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude/commands/spec.md +0 -0
  145. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude/commands/test-live.md +0 -0
  146. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude/settings.json +0 -0
  147. {basic_memory-0.22.0 → basic_memory-0.22.1}/.claude/skills/basic-machines-review +0 -0
  148. {basic_memory-0.22.0 → basic_memory-0.22.1}/.dockerignore +0 -0
  149. {basic_memory-0.22.0 → basic_memory-0.22.1}/.env.example +0 -0
  150. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  151. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  152. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/ISSUE_TEMPLATE/documentation.md +0 -0
  153. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  154. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/basic-memory/SOUL.md +0 -0
  155. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/basic-memory/config.yml +0 -0
  156. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/basic-memory/memory-ci-capture.md +0 -0
  157. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/dependabot.yml +0 -0
  158. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/basic-memory.yml +0 -0
  159. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/claude-code-review.yml +0 -0
  160. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/claude-issue-triage.yml +0 -0
  161. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/claude.yml +0 -0
  162. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/consolidated-packages.yml +0 -0
  163. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/dev-release.yml +0 -0
  164. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/docker.yml +0 -0
  165. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/pr-title.yml +0 -0
  166. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/release.yml +0 -0
  167. {basic_memory-0.22.0 → basic_memory-0.22.1}/.github/workflows/test.yml +0 -0
  168. {basic_memory-0.22.0 → basic_memory-0.22.1}/.gitignore +0 -0
  169. {basic_memory-0.22.0 → basic_memory-0.22.1}/.python-version +0 -0
  170. {basic_memory-0.22.0 → basic_memory-0.22.1}/CITATION.cff +0 -0
  171. {basic_memory-0.22.0 → basic_memory-0.22.1}/CLA.md +0 -0
  172. {basic_memory-0.22.0 → basic_memory-0.22.1}/CLAUDE.md +0 -0
  173. {basic_memory-0.22.0 → basic_memory-0.22.1}/CODE_OF_CONDUCT.md +0 -0
  174. {basic_memory-0.22.0 → basic_memory-0.22.1}/CONTRIBUTING.md +0 -0
  175. {basic_memory-0.22.0 → basic_memory-0.22.1}/Dockerfile +0 -0
  176. {basic_memory-0.22.0 → basic_memory-0.22.1}/LICENSE +0 -0
  177. {basic_memory-0.22.0 → basic_memory-0.22.1}/NOTE-FORMAT.md +0 -0
  178. {basic_memory-0.22.0 → basic_memory-0.22.1}/SECURITY.md +0 -0
  179. {basic_memory-0.22.0 → basic_memory-0.22.1}/docker-compose-postgres.yml +0 -0
  180. {basic_memory-0.22.0 → basic_memory-0.22.1}/docker-compose.yml +0 -0
  181. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/ARCHITECTURE.md +0 -0
  182. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/ENGINEERING_STYLE.md +0 -0
  183. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/NOTE-FORMAT.md +0 -0
  184. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/SPEC-PER-PROJECT-ROUTING.md +0 -0
  185. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/ai-assistant-guide-extended.md +0 -0
  186. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/cloud-cli.md +0 -0
  187. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/cloud-semantic-search-value.md +0 -0
  188. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/litellm-provider.md +0 -0
  189. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/logfire-instrumentation-strategy.md +0 -0
  190. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/mcp-ui-bakeoff-instructions.md +0 -0
  191. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/metadata-search.md +0 -0
  192. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/post-v0.18.0-test-plan.md +0 -0
  193. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/releases/v0.19.0.md +0 -0
  194. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/semantic-search-test-log.md +0 -0
  195. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/semantic-search.md +0 -0
  196. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/specs/SPEC-LOCAL-PLUS-PUBLISH.md +0 -0
  197. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/specs/SPEC-SCHEMA-IMPL.md +0 -0
  198. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/specs/SPEC-SCHEMA.md +0 -0
  199. {basic_memory-0.22.0 → basic_memory-0.22.1}/docs/testing-coverage.md +0 -0
  200. {basic_memory-0.22.0 → basic_memory-0.22.1}/glama.json +0 -0
  201. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/.coveragerc +0 -0
  202. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/.github/workflows/integration.yml +0 -0
  203. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/.github/workflows/pr-title.yml +0 -0
  204. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/.github/workflows/release.yml +0 -0
  205. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/.github/workflows/test.yml +0 -0
  206. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/.gitignore +0 -0
  207. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/CHANGELOG.md +0 -0
  208. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/LICENSE +0 -0
  209. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/MONKEYPATCH.md +0 -0
  210. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/README.md +0 -0
  211. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/justfile +0 -0
  212. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/pytest.ini +0 -0
  213. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/requirements-dev.txt +0 -0
  214. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/skill/SKILL.md +0 -0
  215. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/__init__.py +0 -0
  216. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/conftest.py +0 -0
  217. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/stubs/agent/__init__.py +0 -0
  218. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/stubs/agent/memory_provider.py +0 -0
  219. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/stubs/tools/__init__.py +0 -0
  220. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/stubs/tools/registry.py +0 -0
  221. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/test_actor.py +0 -0
  222. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/test_capture.py +0 -0
  223. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/test_commands.py +0 -0
  224. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/test_helpers.py +0 -0
  225. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/test_integration.py +0 -0
  226. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/test_prefetch.py +0 -0
  227. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/hermes/tests/test_provider.py +0 -0
  228. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/.githooks/pre-commit +0 -0
  229. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/.github/workflows/ci.yml +0 -0
  230. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/.github/workflows/release.yml +0 -0
  231. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/.gitignore +0 -0
  232. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/AGENTS.md +0 -0
  233. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/BASIC_MEMORY.md +0 -0
  234. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/CLAUDE.md +0 -0
  235. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/CONTEXT_ENGINE_PLAN.md +0 -0
  236. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/DEVELOPMENT.md +0 -0
  237. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/LICENSE +0 -0
  238. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/MEMORY_TASK_FLOW.md +0 -0
  239. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/README.md +0 -0
  240. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/SECURITY.md +0 -0
  241. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/biome.json +0 -0
  242. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/bm-client.test.ts +0 -0
  243. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/bm-client.ts +0 -0
  244. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/bun.lock +0 -0
  245. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/commands/cli.ts +0 -0
  246. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/commands/skills.test.ts +0 -0
  247. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/commands/skills.ts +0 -0
  248. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/commands/slash.ts +0 -0
  249. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/config.test.ts +0 -0
  250. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/config.ts +0 -0
  251. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/context-engine/basic-memory-context-engine.test.ts +0 -0
  252. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/context-engine/basic-memory-context-engine.ts +0 -0
  253. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/hooks/capture.test.ts +0 -0
  254. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/hooks/capture.ts +0 -0
  255. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/hooks/recall.test.ts +0 -0
  256. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/hooks/recall.ts +0 -0
  257. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/index.test.ts +0 -0
  258. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/index.ts +0 -0
  259. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/integration/bm-client.integration.test.ts +0 -0
  260. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/justfile +0 -0
  261. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/logger.test.ts +0 -0
  262. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/logger.ts +0 -0
  263. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/openclaw.plugin.json +0 -0
  264. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/schema/conversation-schema.ts +0 -0
  265. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/schema/task-schema.ts +0 -0
  266. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/scripts/bm-local.sh +0 -0
  267. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/scripts/fetch-skills.ts +0 -0
  268. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/scripts/setup-bm.sh +0 -0
  269. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/build-context.test.ts +0 -0
  270. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/build-context.ts +0 -0
  271. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/delete-note.test.ts +0 -0
  272. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/delete-note.ts +0 -0
  273. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/edit-note.test.ts +0 -0
  274. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/edit-note.ts +0 -0
  275. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/list-memory-projects.test.ts +0 -0
  276. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/list-memory-projects.ts +0 -0
  277. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/list-workspaces.test.ts +0 -0
  278. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/list-workspaces.ts +0 -0
  279. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/memory-provider.test.ts +0 -0
  280. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/memory-provider.ts +0 -0
  281. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/move-note.test.ts +0 -0
  282. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/move-note.ts +0 -0
  283. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/read-note.test.ts +0 -0
  284. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/read-note.ts +0 -0
  285. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-diff.test.ts +0 -0
  286. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-diff.ts +0 -0
  287. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-infer.test.ts +0 -0
  288. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-infer.ts +0 -0
  289. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-validate.test.ts +0 -0
  290. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-validate.ts +0 -0
  291. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/search-notes.test.ts +0 -0
  292. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/search-notes.ts +0 -0
  293. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/write-note.test.ts +0 -0
  294. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tools/write-note.ts +0 -0
  295. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tsconfig.build.json +0 -0
  296. {basic_memory-0.22.0 → basic_memory-0.22.1}/integrations/openclaw/tsconfig.json +0 -0
  297. {basic_memory-0.22.0 → basic_memory-0.22.1}/llms-install.md +0 -0
  298. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/CHANGELOG.md +0 -0
  299. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/DESIGN.md +0 -0
  300. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/README.md +0 -0
  301. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/docs/architecture.md +0 -0
  302. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/docs/getting-started.md +0 -0
  303. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/docs/why-combine-memory.md +0 -0
  304. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/hooks/hooks.json +0 -0
  305. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/hooks/pre-compact.sh +0 -0
  306. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/hooks/session-start.sh +0 -0
  307. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/justfile +0 -0
  308. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/output-styles/basic-memory.md +0 -0
  309. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/schemas/decision.md +0 -0
  310. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/schemas/session.md +0 -0
  311. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/schemas/task.md +0 -0
  312. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/settings.example.json +0 -0
  313. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/skills/bm-remember/SKILL.md +0 -0
  314. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/skills/bm-setup/SKILL.md +0 -0
  315. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/skills/bm-share/SKILL.md +0 -0
  316. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/claude-code/skills/bm-status/SKILL.md +0 -0
  317. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/.mcp.json +0 -0
  318. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/DEVELOPMENT.md +0 -0
  319. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/README.md +0 -0
  320. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/assets/app-icon.png +0 -0
  321. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/assets/logo.png +0 -0
  322. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/hooks/hooks.json +0 -0
  323. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/hooks/pre-compact.py +0 -0
  324. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/hooks/pre-compact.sh +0 -0
  325. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/hooks/session-start.py +0 -0
  326. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/hooks/session-start.sh +0 -0
  327. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/justfile +0 -0
  328. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/schemas/codex-session.md +0 -0
  329. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/schemas/decision.md +0 -0
  330. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/schemas/task.md +0 -0
  331. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-checkpoint/SKILL.md +0 -0
  332. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-checkpoint/agents/openai.yaml +0 -0
  333. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-checkpoint/assets/icon.svg +0 -0
  334. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-decide/SKILL.md +0 -0
  335. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-decide/agents/openai.yaml +0 -0
  336. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-decide/assets/icon.svg +0 -0
  337. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-orient/SKILL.md +0 -0
  338. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-orient/agents/openai.yaml +0 -0
  339. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-orient/assets/icon.svg +0 -0
  340. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-remember/SKILL.md +0 -0
  341. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-remember/agents/openai.yaml +0 -0
  342. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-remember/assets/icon.svg +0 -0
  343. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-setup/SKILL.md +0 -0
  344. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-setup/agents/openai.yaml +0 -0
  345. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-setup/assets/icon.svg +0 -0
  346. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-share/SKILL.md +0 -0
  347. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-share/agents/openai.yaml +0 -0
  348. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-share/assets/icon.svg +0 -0
  349. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-status/SKILL.md +0 -0
  350. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-status/agents/openai.yaml +0 -0
  351. {basic_memory-0.22.0 → basic_memory-0.22.1}/plugins/codex/skills/bm-status/assets/icon.svg +0 -0
  352. {basic_memory-0.22.0 → basic_memory-0.22.1}/pyproject.toml +0 -0
  353. {basic_memory-0.22.0 → basic_memory-0.22.1}/scripts/testmon_cache.py +0 -0
  354. {basic_memory-0.22.0 → basic_memory-0.22.1}/scripts/update_versions.py +0 -0
  355. {basic_memory-0.22.0 → basic_memory-0.22.1}/scripts/validate_claude_plugin.py +0 -0
  356. {basic_memory-0.22.0 → basic_memory-0.22.1}/scripts/validate_codex_plugin.py +0 -0
  357. {basic_memory-0.22.0 → basic_memory-0.22.1}/scripts/validate_hermes_plugin.py +0 -0
  358. {basic_memory-0.22.0 → basic_memory-0.22.1}/scripts/validate_skills.py +0 -0
  359. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/AGENTS.md +0 -0
  360. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/CLAUDE.md +0 -0
  361. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/DEVELOPMENT.md +0 -0
  362. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/README.md +0 -0
  363. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/justfile +0 -0
  364. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-capture/SKILL.md +0 -0
  365. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-ci-capture/SKILL.md +0 -0
  366. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-continue/SKILL.md +0 -0
  367. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-curate/SKILL.md +0 -0
  368. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-defrag/SKILL.md +0 -0
  369. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-ingest/SKILL.md +0 -0
  370. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-lifecycle/SKILL.md +0 -0
  371. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-literary-analysis/SKILL.md +0 -0
  372. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-metadata-search/SKILL.md +0 -0
  373. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-notes/SKILL.md +0 -0
  374. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-reflect/SKILL.md +0 -0
  375. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-research/SKILL.md +0 -0
  376. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-schema/SKILL.md +0 -0
  377. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/memory-tasks/SKILL.md +0 -0
  378. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills/skills-lock.json +0 -0
  379. {basic_memory-0.22.0 → basic_memory-0.22.1}/skills-lock.json +0 -0
  380. {basic_memory-0.22.0 → basic_memory-0.22.1}/smithery.yaml +0 -0
  381. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/alembic.ini +0 -0
  382. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/env.py +0 -0
  383. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/migrations.py +0 -0
  384. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/script.py.mako +0 -0
  385. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/314f1ea54dc4_add_postgres_full_text_search_support_.py +0 -0
  386. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/3dae7c7b1564_initial_schema.py +0 -0
  387. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/502b60eaa905_remove_required_from_entity_permalink.py +0 -0
  388. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/5fe1ab1ccebe_add_projects_table.py +0 -0
  389. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/647e7a75e2cd_project_constraint_fix.py +0 -0
  390. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/6830751f5fb6_merge_multiple_heads.py +0 -0
  391. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/9d9c1cb7d8f5_add_mtime_and_size_columns_to_entity_.py +0 -0
  392. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/a1b2c3d4e5f6_fix_project_foreign_keys.py +0 -0
  393. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/a2b3c4d5e6f7_add_search_index_entity_cascade.py +0 -0
  394. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/b3c3938bacdb_relation_to_name_unique_index.py +0 -0
  395. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/cc7172b46608_update_search_index_schema.py +0 -0
  396. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/d7e8f9a0b1c2_add_structured_metadata_indexes.py +0 -0
  397. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/e7e1f4367280_add_scan_watermark_tracking_to_project.py +0 -0
  398. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/f8a9b2c3d4e5_add_pg_trgm_for_fuzzy_link_resolution.py +0 -0
  399. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/g9a0b3c4d5e6_add_external_id_to_project_and_entity.py +0 -0
  400. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/h1b2c3d4e5f6_add_postgres_vector_search_tables.py +0 -0
  401. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/i2c3d4e5f6g7_auto_backfill_semantic_embeddings.py +0 -0
  402. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/j3d4e5f6g7h8_rename_entity_type_to_note_type.py +0 -0
  403. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/k4e5f6g7h8i9_add_created_by_and_last_updated_by_to_entity.py +0 -0
  404. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/l5g6h7i8j9k0_add_note_content_table.py +0 -0
  405. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/m6h7i8j9k0l1_add_vector_sync_fingerprints.py +0 -0
  406. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/n7i8j9k0l1m2_cleanup_sqlite_search_orphans.py +0 -0
  407. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/__init__.py +0 -0
  408. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/app.py +0 -0
  409. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/container.py +0 -0
  410. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/template_loader.py +0 -0
  411. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/__init__.py +0 -0
  412. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/__init__.py +0 -0
  413. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/directory_router.py +0 -0
  414. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/importer_router.py +0 -0
  415. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/knowledge_router.py +0 -0
  416. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/memory_router.py +0 -0
  417. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/prompt_router.py +0 -0
  418. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/resource_router.py +0 -0
  419. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/schema_router.py +0 -0
  420. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/search_router.py +0 -0
  421. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/ci/README.md +0 -0
  422. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/ci/__init__.py +0 -0
  423. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/ci/project_updates.py +0 -0
  424. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/__init__.py +0 -0
  425. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/analytics.py +0 -0
  426. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/auth.py +0 -0
  427. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/__init__.py +0 -0
  428. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/api_client.py +0 -0
  429. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/bisync_commands.py +0 -0
  430. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/cloud_utils.py +0 -0
  431. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/core_commands.py +0 -0
  432. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/project_sync.py +0 -0
  433. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/rclone_commands.py +0 -0
  434. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/rclone_config.py +0 -0
  435. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/rclone_installer.py +0 -0
  436. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/restore.py +0 -0
  437. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/schemas.py +0 -0
  438. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/snapshot.py +0 -0
  439. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/upload.py +0 -0
  440. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/upload_command.py +0 -0
  441. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/workspace.py +0 -0
  442. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/format.py +0 -0
  443. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/mcp.py +0 -0
  444. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/project.py +0 -0
  445. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/routing.py +0 -0
  446. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/update.py +0 -0
  447. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/commands/workspace.py +0 -0
  448. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/container.py +0 -0
  449. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/cli/promo.py +0 -0
  450. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/deps/__init__.py +0 -0
  451. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/deps/config.py +0 -0
  452. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/deps/db.py +0 -0
  453. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/deps/importers.py +0 -0
  454. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/deps/projects.py +0 -0
  455. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/deps/repositories.py +0 -0
  456. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/deps/services.py +0 -0
  457. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/deps.py +0 -0
  458. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/ignore_utils.py +0 -0
  459. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/importers/__init__.py +0 -0
  460. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/importers/base.py +0 -0
  461. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/importers/chatgpt_importer.py +0 -0
  462. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/importers/claude_conversations_importer.py +0 -0
  463. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/importers/claude_projects_importer.py +0 -0
  464. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/importers/memory_json_importer.py +0 -0
  465. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/importers/utils.py +0 -0
  466. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/indexing/__init__.py +0 -0
  467. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/indexing/batch_indexer.py +0 -0
  468. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/indexing/batching.py +0 -0
  469. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/indexing/models.py +0 -0
  470. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/markdown/__init__.py +0 -0
  471. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/markdown/entity_parser.py +0 -0
  472. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/markdown/markdown_processor.py +0 -0
  473. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/markdown/plugins.py +0 -0
  474. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/markdown/schemas.py +0 -0
  475. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/markdown/utils.py +0 -0
  476. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/__init__.py +0 -0
  477. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/__init__.py +0 -0
  478. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/container.py +0 -0
  479. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/formatting.py +0 -0
  480. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/__init__.py +0 -0
  481. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/ai_assistant_guide.py +0 -0
  482. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/continue_conversation.py +0 -0
  483. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/recent_activity.py +0 -0
  484. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/search.py +0 -0
  485. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/utils.py +0 -0
  486. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/__init__.py +0 -0
  487. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/ai_assistant_guide.md +0 -0
  488. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/cloud_info.md +0 -0
  489. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/project_info.py +0 -0
  490. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/release_notes.md +0 -0
  491. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/ui.py +0 -0
  492. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/server.py +0 -0
  493. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/__init__.py +0 -0
  494. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/utils.py +0 -0
  495. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/__init__.py +0 -0
  496. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/note-preview-mcp-ui.html +0 -0
  497. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/note-preview-tool-ui.html +0 -0
  498. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/note-preview-vanilla.html +0 -0
  499. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/search-results-mcp-ui.html +0 -0
  500. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/search-results-tool-ui.html +0 -0
  501. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/search-results-vanilla.html +0 -0
  502. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/sdk.py +0 -0
  503. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/templates.py +0 -0
  504. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/models/__init__.py +0 -0
  505. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/models/base.py +0 -0
  506. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/models/knowledge.py +0 -0
  507. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/models/project.py +0 -0
  508. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/models/search.py +0 -0
  509. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/project_resolver.py +0 -0
  510. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/__init__.py +0 -0
  511. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/embedding_provider.py +0 -0
  512. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/embedding_provider_factory.py +0 -0
  513. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/entity_repository.py +0 -0
  514. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/fastembed_provider.py +0 -0
  515. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/litellm_provider.py +0 -0
  516. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/metadata_filters.py +0 -0
  517. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/note_content_repository.py +0 -0
  518. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/observation_repository.py +0 -0
  519. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/openai_provider.py +0 -0
  520. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/postgres_search_repository.py +0 -0
  521. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/project_info_repository.py +0 -0
  522. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/project_repository.py +0 -0
  523. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/relation_repository.py +0 -0
  524. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/repository.py +0 -0
  525. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/search_repository.py +0 -0
  526. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/semantic_errors.py +0 -0
  527. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/repository/sqlite_search_repository.py +0 -0
  528. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/runtime.py +0 -0
  529. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schema/__init__.py +0 -0
  530. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schema/diff.py +0 -0
  531. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schema/inference.py +0 -0
  532. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schema/parser.py +0 -0
  533. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schema/resolver.py +0 -0
  534. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schema/validator.py +0 -0
  535. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/__init__.py +0 -0
  536. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/cloud.py +0 -0
  537. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/delete.py +0 -0
  538. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/directory.py +0 -0
  539. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/importer.py +0 -0
  540. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/project_info.py +0 -0
  541. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/prompt.py +0 -0
  542. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/request.py +0 -0
  543. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/response.py +0 -0
  544. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/schema.py +0 -0
  545. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/search.py +0 -0
  546. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/sync_report.py +0 -0
  547. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/v2/__init__.py +0 -0
  548. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/v2/entity.py +0 -0
  549. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/v2/graph.py +0 -0
  550. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/schemas/v2/resource.py +0 -0
  551. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/__init__.py +0 -0
  552. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/directory_service.py +0 -0
  553. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/entity_service.py +0 -0
  554. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/exceptions.py +0 -0
  555. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/file_service.py +0 -0
  556. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/link_resolver.py +0 -0
  557. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/search_service.py +0 -0
  558. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/services/service.py +0 -0
  559. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/sync/__init__.py +0 -0
  560. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/sync/background_sync.py +0 -0
  561. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/sync/coordinator.py +0 -0
  562. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/sync/sync_service.py +0 -0
  563. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/telemetry.py +0 -0
  564. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/templates/prompts/continue_conversation.hbs +0 -0
  565. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/templates/prompts/search.hbs +0 -0
  566. {basic_memory-0.22.0 → basic_memory-0.22.1}/src/basic_memory/workspace_context.py +0 -0
  567. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/BENCHMARKS.md +0 -0
  568. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/bughunt_fixes/__init__.py +0 -0
  569. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/bughunt_fixes/test_cli_tool_read_note_security_error.py +0 -0
  570. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/bughunt_fixes/test_cli_tool_recent_activity_page_size.py +0 -0
  571. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/bughunt_fixes/test_cli_tool_search_notes_category.py +0 -0
  572. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/bughunt_fixes/test_cli_tool_write_note_parity.py +0 -0
  573. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/bughunt_fixes/test_move_note_edge_cases.py +0 -0
  574. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/bughunt_fixes/test_navigation_pagination_integration.py +0 -0
  575. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/bughunt_fixes/test_parse_tags_comma_split_integration.py +0 -0
  576. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_cli_tool_delete_note_integration.py +0 -0
  577. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_cli_tool_edit_note_integration.py +0 -0
  578. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_cli_tool_json_failure_integration.py +0 -0
  579. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_cli_tool_json_integration.py +0 -0
  580. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_cli_tool_write_note_type_integration.py +0 -0
  581. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_project_commands_integration.py +0 -0
  582. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_search_notes_meta_integration.py +0 -0
  583. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_status_wait_integration.py +0 -0
  584. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/cli/test_version_integration.py +0 -0
  585. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/compare_search_benchmarks.py +0 -0
  586. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/conftest.py +0 -0
  587. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-01.md +0 -0
  588. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-02.md +0 -0
  589. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-03.md +0 -0
  590. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-04.md +0 -0
  591. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-05.md +0 -0
  592. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-06.md +0 -0
  593. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-07.md +0 -0
  594. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-08.md +0 -0
  595. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-09.md +0 -0
  596. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-10.md +0 -0
  597. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-11.md +0 -0
  598. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-12.md +0 -0
  599. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-13.md +0 -0
  600. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-14.md +0 -0
  601. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-15.md +0 -0
  602. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-16.md +0 -0
  603. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-17.md +0 -0
  604. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-18.md +0 -0
  605. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-19.md +0 -0
  606. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-20.md +0 -0
  607. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/schema/Person.md +0 -0
  608. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/array-single.md +0 -0
  609. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/empty-note.md +0 -0
  610. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/explicit-overrides-type.md +0 -0
  611. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/inline-and-type.md +0 -0
  612. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/no-frontmatter.md +0 -0
  613. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/relation-only.md +0 -0
  614. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/type-no-schema.md +0 -0
  615. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/unicode-fields.md +0 -0
  616. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/ada-lovelace.md +0 -0
  617. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/alan-turing.md +0 -0
  618. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/anders-hejlsberg.md +0 -0
  619. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/andrej-karpathy.md +0 -0
  620. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/barbara-liskov.md +0 -0
  621. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/bjarne-stroustrup.md +0 -0
  622. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/brendan-eich.md +0 -0
  623. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/claude-shannon.md +0 -0
  624. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/dennis-ritchie.md +0 -0
  625. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/dijkstra.md +0 -0
  626. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/donald-knuth.md +0 -0
  627. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/fei-fei-li.md +0 -0
  628. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/geoffrey-hinton.md +0 -0
  629. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/grace-hopper.md +0 -0
  630. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/guido-van-rossum.md +0 -0
  631. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/james-gosling.md +0 -0
  632. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/john-carmack.md +0 -0
  633. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/ken-thompson.md +0 -0
  634. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/larry-page.md +0 -0
  635. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/leslie-lamport.md +0 -0
  636. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/linus-torvalds.md +0 -0
  637. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/margaret-hamilton.md +0 -0
  638. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/rasmus-lerdorf.md +0 -0
  639. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/richard-stallman.md +0 -0
  640. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/rob-pike.md +0 -0
  641. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/satoshi-nakamoto.md +0 -0
  642. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/tim-berners-lee.md +0 -0
  643. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/vint-cerf.md +0 -0
  644. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/yann-lecun.md +0 -0
  645. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/yukihiro-matsumoto.md +0 -0
  646. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/Book.md +0 -0
  647. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/Meeting.md +0 -0
  648. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/Person.md +0 -0
  649. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/SoftwareProject.md +0 -0
  650. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/StrictSchema.md +0 -0
  651. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/basic-memory.md +0 -0
  652. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/explicit-ref-note.md +0 -0
  653. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/no-schema-note.md +0 -0
  654. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/paul-graham.md +0 -0
  655. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/rich-hickey.md +0 -0
  656. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/standup-2024-01-15.md +0 -0
  657. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/warnings/extra-observations.md +0 -0
  658. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/warnings/missing-multiple.md +0 -0
  659. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/warnings/missing-required.md +0 -0
  660. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/fixtures/schema/warnings/wrong-enum-value.md +0 -0
  661. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_build_context_underscore.py +0 -0
  662. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_build_context_validation.py +0 -0
  663. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_chatgpt_tools_integration.py +0 -0
  664. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_default_project_mode_integration.py +0 -0
  665. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_delete_directory_integration.py +0 -0
  666. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_delete_note_integration.py +0 -0
  667. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_edit_note_integration.py +0 -0
  668. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_lifespan_shutdown_sync_task_cancellation_integration.py +0 -0
  669. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_list_directory_integration.py +0 -0
  670. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_long_relation_type_integration.py +0 -0
  671. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_move_directory_integration.py +0 -0
  672. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_move_note_integration.py +0 -0
  673. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_observation_permalink_collision_integration.py +0 -0
  674. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_output_format_json_integration.py +0 -0
  675. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_pagination_integration.py +0 -0
  676. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_param_aliases_integration.py +0 -0
  677. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_permalink_collision_integration.py +0 -0
  678. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_project_state_sync_integration.py +0 -0
  679. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_read_content_integration.py +0 -0
  680. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_read_note_integration.py +0 -0
  681. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_search_integration.py +0 -0
  682. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_search_note_types_case_insensitive.py +0 -0
  683. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_single_project_mcp_integration.py +0 -0
  684. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_smoke_integration.py +0 -0
  685. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_string_params_integration.py +0 -0
  686. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_ui_sdk_integration.py +0 -0
  687. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_workspace_permalink_integration.py +0 -0
  688. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_write_note_integration.py +0 -0
  689. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/mcp/test_write_note_type_integration.py +0 -0
  690. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/__init__.py +0 -0
  691. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/conftest.py +0 -0
  692. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/corpus.py +0 -0
  693. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/litellm_live_harness.py +0 -0
  694. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/metrics.py +0 -0
  695. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/report.py +0 -0
  696. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/test_embedding_provider_reuse.py +0 -0
  697. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/test_litellm_live_harness.py +0 -0
  698. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/test_litellm_live_models.py +0 -0
  699. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/test_multiterm_semantic_queries.py +0 -0
  700. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/test_search_diagnostics.py +0 -0
  701. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/test_semantic_coverage.py +0 -0
  702. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/semantic/test_semantic_quality.py +0 -0
  703. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_db_wal_mode.py +0 -0
  704. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_disable_permalinks_integration.py +0 -0
  705. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_embedding_status_vec0.py +0 -0
  706. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_postgres_dispose_cycle.py +0 -0
  707. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_schema/__init__.py +0 -0
  708. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_schema/conftest.py +0 -0
  709. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_schema/helpers.py +0 -0
  710. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_schema/test_diff_integration.py +0 -0
  711. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_schema/test_inference_integration.py +0 -0
  712. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_schema/test_parser_integration.py +0 -0
  713. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_schema/test_validator_integration.py +0 -0
  714. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_search_performance_benchmark.py +0 -0
  715. {basic_memory-0.22.0 → basic_memory-0.22.1}/test-int/test_sync_batching_integration.py +0 -0
  716. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/Non-MarkdownFileSupport.pdf +0 -0
  717. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/README.md +0 -0
  718. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/Screenshot.png +0 -0
  719. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/__init__.py +0 -0
  720. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/__init__.py +0 -0
  721. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/conftest.py +0 -0
  722. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_directory_router.py +0 -0
  723. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_importer_router.py +0 -0
  724. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_knowledge_router.py +0 -0
  725. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_knowledge_router_telemetry.py +0 -0
  726. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_memory_hydration.py +0 -0
  727. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_memory_router.py +0 -0
  728. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_orphan_router.py +0 -0
  729. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_prompt_router.py +0 -0
  730. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_resource_router.py +0 -0
  731. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_schema_router.py +0 -0
  732. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_search_hydration.py +0 -0
  733. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_search_router.py +0 -0
  734. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_search_router_telemetry.py +0 -0
  735. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_utils_telemetry.py +0 -0
  736. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/api/v2/test_workspace_permalink_headers.py +0 -0
  737. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/cloud/test_cloud_api_client_and_utils.py +0 -0
  738. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/cloud/test_project_sync_command.py +0 -0
  739. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/cloud/test_rclone_config_and_bmignore_filters.py +0 -0
  740. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/cloud/test_rclone_installer.py +0 -0
  741. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/cloud/test_upload_command_routing.py +0 -0
  742. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/cloud/test_upload_path.py +0 -0
  743. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/conftest.py +0 -0
  744. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_analytics.py +0 -0
  745. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_auth_cli_auth.py +0 -0
  746. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cli_container.py +0 -0
  747. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cli_telemetry.py +0 -0
  748. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cli_tool_exit.py +0 -0
  749. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cli_tools.py +0 -0
  750. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cloud_authentication.py +0 -0
  751. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cloud_promo.py +0 -0
  752. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_cloud_status.py +0 -0
  753. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_db_reset_exit.py +0 -0
  754. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_db_reset_zombie_check.py +0 -0
  755. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_ignore_utils.py +0 -0
  756. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_import_chatgpt.py +0 -0
  757. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_import_claude_conversations.py +0 -0
  758. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_import_claude_projects.py +0 -0
  759. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_import_memory_json.py +0 -0
  760. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_orphans_command.py +0 -0
  761. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_project_add_with_local_path.py +0 -0
  762. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_project_info_cloud_status.py +0 -0
  763. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_project_info_errors.py +0 -0
  764. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_project_list_and_ls.py +0 -0
  765. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_project_set_cloud_local.py +0 -0
  766. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_restore_commands.py +0 -0
  767. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_routing.py +0 -0
  768. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_snapshot_commands.py +0 -0
  769. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_update_command.py +0 -0
  770. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_upload.py +0 -0
  771. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_workspace_commands.py +0 -0
  772. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/cli/test_workspace_stub.py +0 -0
  773. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/conftest.py +0 -0
  774. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/db/test_issue_254_foreign_key_constraints.py +0 -0
  775. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/db/test_uvloop_policy.py +0 -0
  776. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/deps/test_task_failure_callback.py +0 -0
  777. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/importers/test_conversation_indexing.py +0 -0
  778. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/importers/test_importer_base.py +0 -0
  779. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/importers/test_importer_utils.py +0 -0
  780. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/indexing/test_batch_indexer.py +0 -0
  781. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/indexing/test_batching.py +0 -0
  782. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/__init__.py +0 -0
  783. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_date_frontmatter_parsing.py +0 -0
  784. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_entity_parser.py +0 -0
  785. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_entity_parser_error_handling.py +0 -0
  786. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_markdown_plugins.py +0 -0
  787. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_markdown_processor.py +0 -0
  788. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_markdown_utils.py +0 -0
  789. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_observation_edge_cases.py +0 -0
  790. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_parser_edge_cases.py +0 -0
  791. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_relation_edge_cases.py +0 -0
  792. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/markdown/test_task_detection.py +0 -0
  793. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/clients/__init__.py +0 -0
  794. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/conftest.py +0 -0
  795. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_async_client_force_local.py +0 -0
  796. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_async_client_telemetry.py +0 -0
  797. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_client_telemetry.py +0 -0
  798. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_mcp_container.py +0 -0
  799. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_obsidian_yaml_formatting.py +0 -0
  800. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_permalink_collision_file_overwrite.py +0 -0
  801. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_project_context_telemetry.py +0 -0
  802. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_prompt_tool_delegation.py +0 -0
  803. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_prompts.py +0 -0
  804. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_recent_activity_prompt_modes.py +0 -0
  805. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_resources.py +0 -0
  806. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_server_lifespan_branches.py +0 -0
  807. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_server_telemetry.py +0 -0
  808. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_canvas.py +0 -0
  809. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_delete_note.py +0 -0
  810. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_edit_note.py +0 -0
  811. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_json_output_modes.py +0 -0
  812. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_list_directory.py +0 -0
  813. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_move_note.py +0 -0
  814. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_project_management.py +0 -0
  815. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_read_content.py +0 -0
  816. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_read_note.py +0 -0
  817. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_recent_activity.py +0 -0
  818. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_resource.py +0 -0
  819. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_schema.py +0 -0
  820. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_telemetry.py +0 -0
  821. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_utils.py +0 -0
  822. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_utils_cloud_auth.py +0 -0
  823. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_view_note.py +0 -0
  824. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_workspace_management.py +0 -0
  825. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_write_note_kebab_filenames.py +0 -0
  826. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_tool_write_note_metadata.py +0 -0
  827. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_ui_resources.py +0 -0
  828. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_ui_sdk.py +0 -0
  829. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_ui_templates.py +0 -0
  830. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/test_workspace_permalink_resolution.py +0 -0
  831. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/tools/test_chatgpt_tools.py +0 -0
  832. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/mcp/tools/test_search_notes_multi_project.py +0 -0
  833. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_distance_to_similarity.py +0 -0
  834. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_entity_repository_upsert.py +0 -0
  835. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_entity_upsert_issue_187.py +0 -0
  836. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_fastembed_provider.py +0 -0
  837. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_litellm_provider.py +0 -0
  838. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_metadata_filters.py +0 -0
  839. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_metadata_filters_edge_cases.py +0 -0
  840. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_note_content_repository.py +0 -0
  841. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_observation_repository.py +0 -0
  842. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_openai_provider.py +0 -0
  843. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_postgres_search_repository.py +0 -0
  844. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_postgres_search_repository_unit.py +0 -0
  845. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_project_info_repository.py +0 -0
  846. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_project_repository.py +0 -0
  847. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_relation_repository.py +0 -0
  848. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_repository.py +0 -0
  849. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_search_index_row.py +0 -0
  850. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_search_repository.py +0 -0
  851. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_search_repository_edit_bug_fix.py +0 -0
  852. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_search_text_with_metadata_filters.py +0 -0
  853. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/repository/test_semantic_search_base.py +0 -0
  854. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schema/__init__.py +0 -0
  855. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schema/test_diff.py +0 -0
  856. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schema/test_inference.py +0 -0
  857. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schema/test_parser.py +0 -0
  858. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schema/test_resolver.py +0 -0
  859. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schema/test_validator.py +0 -0
  860. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schemas/test_base_timeframe_minimum.py +0 -0
  861. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schemas/test_memory_serialization.py +0 -0
  862. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schemas/test_memory_url.py +0 -0
  863. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schemas/test_memory_url_validation.py +0 -0
  864. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schemas/test_relation_response_reference_resolution.py +0 -0
  865. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schemas/test_schemas.py +0 -0
  866. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/schemas/test_search.py +0 -0
  867. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_directory_service.py +0 -0
  868. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_entity_service.py +0 -0
  869. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_entity_service_disable_permalinks.py +0 -0
  870. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_entity_service_prepare.py +0 -0
  871. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_entity_service_telemetry.py +0 -0
  872. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_entity_service_write_result.py +0 -0
  873. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_file_service.py +0 -0
  874. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_initialization_cloud_mode_branches.py +0 -0
  875. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_link_resolver.py +0 -0
  876. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_project_removal_bug.py +0 -0
  877. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_project_service_cloud_info.py +0 -0
  878. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_project_service_embedding_status.py +0 -0
  879. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_project_service_operations.py +0 -0
  880. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_search_service.py +0 -0
  881. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_search_service_telemetry.py +0 -0
  882. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_semantic_search.py +0 -0
  883. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_task_scheduler_semantic.py +0 -0
  884. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/services/test_upsert_entity_optimization.py +0 -0
  885. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_character_conflicts.py +0 -0
  886. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_coordinator.py +0 -0
  887. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_sync_one_markdown_file.py +0 -0
  888. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_sync_service.py +0 -0
  889. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_sync_service_batching.py +0 -0
  890. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_sync_service_incremental.py +0 -0
  891. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_sync_service_subprocess.py +0 -0
  892. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_sync_service_telemetry.py +0 -0
  893. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_sync_wikilink_issue.py +0 -0
  894. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_tmp_files.py +0 -0
  895. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_watch_service_atomic_adds.py +0 -0
  896. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_watch_service_edge_cases.py +0 -0
  897. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/sync/test_watch_service_stress.py +0 -0
  898. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_alembic_env.py +0 -0
  899. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_codex_plugin_package.py +0 -0
  900. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_deps.py +0 -0
  901. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_note_content_migration.py +0 -0
  902. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_permalink_utils.py +0 -0
  903. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_pr_title_workflow.py +0 -0
  904. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_production_cascade_delete.py +0 -0
  905. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_project_resolver.py +0 -0
  906. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_rclone_commands.py +0 -0
  907. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_runtime.py +0 -0
  908. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_telemetry.py +0 -0
  909. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/test_update_versions.py +0 -0
  910. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_frontmatter_obsidian_compatible.py +0 -0
  911. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_parse_tags.py +0 -0
  912. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_permalink_formatting.py +0 -0
  913. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_setup_logging.py +0 -0
  914. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_timezone_utils.py +0 -0
  915. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_utf8_handling.py +0 -0
  916. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_validate_project_path.py +0 -0
  917. {basic_memory-0.22.0 → basic_memory-0.22.1}/tests/utils/test_workspace_context.py +0 -0
  918. {basic_memory-0.22.0 → basic_memory-0.22.1}/uv.lock +0 -0
@@ -28,7 +28,10 @@ You are an expert release manager for the Basic Memory project. When the user ru
28
28
 
29
29
  #### Documentation Validation
30
30
  1. **Changelog Check**
31
- - CHANGELOG.md contains entry for target version
31
+ - CHANGELOG.md contains entry for target version **already landed on `main`**
32
+ (main only accepts changes via PR, so the changelog entry must go through
33
+ its own PR before running the release; the recipe pre-flight-checks for a
34
+ `## vX.Y.Z` heading)
32
35
  - Entry includes all major features and fixes
33
36
  - Breaking changes are documented
34
37
 
@@ -41,11 +44,15 @@ just release <version>
41
44
  The justfile target handles:
42
45
  - ✅ Version format validation
43
46
  - ✅ Git status and branch checks
44
- - ✅ Quality checks (`just check` - lint, format, type-check, tests)
47
+ - ✅ Changelog entry check (must already be on `main`)
48
+ - ✅ Quality checks (`just lint` + `just typecheck`)
45
49
  - ✅ Version update across all consolidated manifests via `just set-version` (Python
46
50
  package + Claude Code plugin/marketplaces + Codex plugin + Hermes + OpenClaw)
47
- - ✅ Automatic commit with proper message
48
- - Tag creation and pushing to GitHub
51
+ - ✅ Release PR: commits the bump on a `release/vX.Y.Z` branch, opens a PR
52
+ (`chore(core): release vX.Y.Z`), and rebase-merges it — the `main` ruleset
53
+ rejects direct pushes and the repo disallows merge commits
54
+ - ✅ Tags the rebased bump commit on `main` (found by commit subject, since
55
+ the rebase rewrites the SHA) and pushes the tag
49
56
  - ✅ Release workflow trigger (automatic on tag push)
50
57
 
51
58
  The GitHub Actions workflow (`.github/workflows/release.yml`) then:
@@ -89,7 +96,7 @@ After PyPI release is published, update the MCP registry:
89
96
 
90
97
  2. **Publish to MCP Registry**
91
98
  ```bash
92
- cd /Users/drew/code/basic-memory
99
+ # from the basic-memory repo root
93
100
  mcp-publisher publish
94
101
  ```
95
102
 
@@ -109,7 +116,7 @@ After PyPI release is published, update the MCP registry:
109
116
 
110
117
  #### Website Updates
111
118
 
112
- **1. basicmachines.co** (`/Users/drew/code/basicmachines.co`)
119
+ **1. basicmachines.co** (sibling `basicmachines.co` repo)
113
120
  - **Goal**: Update version number displayed on the homepage
114
121
  - **Location**: Search for "Basic Memory v0." in the codebase to find version displays
115
122
  - **What to update**:
@@ -126,26 +133,31 @@ After PyPI release is published, update the MCP registry:
126
133
  7. Push branch: `git push origin release/v{VERSION}`
127
134
  - **Deploy**: Follow deployment process for basicmachines.co
128
135
 
129
- **2. docs.basicmemory.com** (`/Users/drew/code/docs.basicmemory.com`)
130
- - **Goal**: Add new release notes section to the latest-releases page
131
- - **File**: `src/pages/latest-releases.mdx`
136
+ **2. docs.basicmemory.com** (sibling `docs.basicmemory.com` repo)
137
+ - **Goal**: Add a What's New page for the release and bump the homepage badge
138
+ - **Site shape**: Nuxt/Docus content site. The changelog page
139
+ (`content/2.whats-new/*.changelog.md`) auto-fetches GitHub releases — no
140
+ manual changelog update needed. See that repo's CLAUDE.md "Version Bump
141
+ Checklist".
132
142
  - **What to do**:
133
143
  1. Pull latest from GitHub: `git pull origin main`
134
144
  2. Create release branch: `git checkout -b release/v{VERSION}`
135
- 3. Read the existing file to understand the format and structure
136
- 4. Read `/Users/drew/code/basic-memory/CHANGELOG.md` to get release content
137
- 5. Add new release section **at the top** (after MDX imports, before other releases)
138
- 6. Follow the existing pattern:
139
- - Heading: `## [v{VERSION}](github-link) — YYYY-MM-DD`
140
- - Focus statement if applicable
141
- - `<Info>` block with highlights (3-5 key items)
142
- - Sections for Features, Bug Fixes, Breaking Changes, etc.
143
- - Link to full changelog at the end
144
- - Separator `---` between releases
145
- 7. Commit changes: `git commit -m "docs: add v{VERSION} release notes"`
146
- 8. Push branch: `git push origin release/v{VERSION}`
147
- - **Source content**: Extract and format sections from CHANGELOG.md for this version
148
- - **Deploy**: Follow deployment process for docs.basicmemory.com
145
+ 3. Read `CHANGELOG.md` in the `basic-memory` repo to get release content
146
+ 4. **New minor/major release**: add `content/2.whats-new/1.v{VERSION}.md`
147
+ modeled on the previous version page (frontmatter title/description,
148
+ headline feature first, then sections, then an Upgrading note) and
149
+ renumber the existing what's-new pages down one slot (URLs don't
150
+ change Nuxt strips the numeric prefixes)
151
+ 5. **Patch release**: append a short note to the current version's page
152
+ instead of creating a new one
153
+ 6. Update the homepage version badge in `content/index.md` (the
154
+ `v0.XX →` button text and its `to: /whats-new/v{VERSION}` link)
155
+ 7. If the release adds user-facing features, update the relevant guide
156
+ and reference pages (`content/3.cloud/`, `content/9.reference/`)
157
+ 8. Commit: `git commit -s -m "docs: add v{VERSION} release notes"`
158
+ 9. Push branch and open a PR; merge after the release is tagged
159
+ - **Deploy**: push to main auto-deploys to development; production requires
160
+ manual workflow dispatch via GitHub Actions
149
161
 
150
162
  **4. Announce Release**
151
163
  - Post to Discord community if significant changes
@@ -6,14 +6,14 @@
6
6
  },
7
7
  "metadata": {
8
8
  "description": "Official Basic Memory plugins from the canonical basic-memory repository",
9
- "version": "0.22.0"
9
+ "version": "0.22.1"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "basic-memory",
14
14
  "source": "./plugins/claude-code",
15
15
  "description": "The bridge between Claude's working memory and Basic Memory's durable knowledge graph \u2014 session briefings, pre-compaction checkpoints, and capture reflexes",
16
- "version": "0.22.0",
16
+ "version": "0.22.1",
17
17
  "author": {
18
18
  "name": "Basic Machines"
19
19
  },
@@ -300,7 +300,9 @@ See SPEC-16 for full context manager refactor details.
300
300
 
301
301
  ### Release Process
302
302
 
303
- Releases are driven by `just release` / `just beta` — never by a bare `git tag`. The recipes bump version metadata, run pre-flight checks, commit, tag, and push. GitHub Actions then publishes to PyPI and updates the Homebrew formula.
303
+ Releases are driven by `just release` / `just beta` — never by a bare `git tag`. The recipes bump version metadata, run pre-flight checks, land the bump on `main` through a release PR, tag, and push the tag. GitHub Actions then publishes to PyPI and updates the Homebrew formula.
304
+
305
+ **Main requires PRs.** The `main` ruleset rejects direct pushes ("Changes must be made through a pull request") and the repo disallows merge commits, so the recipes push a `release/vX.Y.Z` branch, open a PR titled `chore(core): release vX.Y.Z`, rebase-merge it with `gh pr merge --rebase`, then tag the rebased bump commit on `main` (located by its commit subject, since rebasing rewrites the SHA) and push the tag. The CHANGELOG entry for the version must already be on `main` — land it via a normal PR before running the recipe (it pre-flight-checks for a `## vX.Y.Z` heading).
304
306
 
305
307
  **Stable release:**
306
308
 
@@ -308,7 +310,7 @@ Releases are driven by `just release` / `just beta` — never by a bare `git tag
308
310
  just release v0.21.3
309
311
  ```
310
312
 
311
- The recipe runs `just lint` + `just typecheck`, then updates every release manifest through `scripts/update_versions.py`: `src/basic_memory/__init__.py`, `server.json`, the root Claude marketplace, the Claude Code plugin manifest and local marketplace, the Hermes `plugin.yaml`, and the OpenClaw `package.json`. It commits as `chore: update version to X.Y.Z for vX.Y.Z release`, creates the `vX.Y.Z` tag, and pushes both the commit and the tag to `origin/main`. After the tag lands, the `Release` workflow builds the Python package, publishes to PyPI, creates the GitHub release with auto-generated notes, publishes the OpenClaw npm package, and updates the Homebrew formula. The recipe finishes by printing the post-release tasks the workflow doesn't cover.
313
+ The recipe runs `just lint` + `just typecheck`, then updates every release manifest through `scripts/update_versions.py`: `src/basic_memory/__init__.py`, `server.json`, the root Claude marketplace, the Claude Code plugin manifest and local marketplace, the Hermes `plugin.yaml`, and the OpenClaw `package.json`. It commits as `chore: update version to X.Y.Z for vX.Y.Z release` on a `release/vX.Y.Z` branch, lands it on `main` via a rebase-merged PR, then tags the rebased commit and pushes the tag. After the tag lands, the `Release` workflow builds the Python package, publishes to PyPI, creates the GitHub release with auto-generated notes, publishes the OpenClaw npm package, and updates the Homebrew formula. The recipe finishes by printing the post-release tasks the workflow doesn't cover.
312
314
 
313
315
  **Beta release:** `just beta v0.21.3b1` — same flow with a beta-suffixed tag. PyPI consumers install with `pip install basic-memory --pre`.
314
316
 
@@ -319,7 +321,7 @@ The recipe runs `just lint` + `just typecheck`, then updates every release manif
319
321
  **Do not tag releases by hand.** A bare `git tag vX.Y.Z` skips the in-code version bump. Package metadata is still correct (uv-dynamic-versioning derives it from the git tag) but `basic-memory --version` reports the previous release, which is what happened with v0.21.2 → v0.21.3.
320
322
 
321
323
  **Post-release tasks** the recipe surfaces but doesn't run:
322
- - `docs.basicmemory.com` — add notes to `src/pages/latest-releases.mdx`
324
+ - `docs.basicmemory.com` — add a What's New page under `content/2.whats-new/` and bump the version badge in `content/index.md` (the changelog page auto-fetches GitHub releases; see that repo's CLAUDE.md version-bump checklist)
323
325
  - `basicmachines.co` — bump version in `src/components/sections/hero.tsx`
324
326
  - MCP Registry — `mcp-publisher publish` from the repo root
325
327
 
@@ -1,5 +1,49 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## v0.22.1 (2026-06-12)
4
+
5
+ Follow-up patch to v0.22.0. Fixes project and default-project resolution on
6
+ fresh installs, MCP workspace routing, sync project selection, and CLI startup
7
+ latency, plus a few MCP parity additions.
8
+
9
+ ### Features
10
+
11
+ - Added a `workspace` parameter to `write_note` for parity with `edit_note`.
12
+ - **#826**: Added `title` and `tags` annotations to all MCP tool decorators
13
+ (phase 1).
14
+ - **#930**: `search_notes` now comma-splits `note_types`, `entity_types`, and
15
+ `categories`.
16
+ - **#971**: Added the manual-pages flow — manpage seed schema, flow docs, and
17
+ verification fixes.
18
+
19
+ ### Bug Fixes
20
+
21
+ - Fresh installs no longer fail when the projects table is empty: resolve now
22
+ points them at project setup, the first project is promoted to default when
23
+ the config default is missing from the database, the promoted default state
24
+ is returned from the project-create API, and a default can be set when none
25
+ is currently set. An existing database default is preserved when repairing a
26
+ missing config default.
27
+ - **#949**: Sync skips projects without an absolute local path and excludes
28
+ orphan DB projects that are absent from config.
29
+ - **#952 / #981**: Resolved workspace display names and tenant ids in qualified
30
+ project routes, closing out the manual verification findings.
31
+ - `note_types`/`entity_types`/`categories` are normalized on the direct-call
32
+ path, with non-string list elements rejected.
33
+ - Vector-search hydration keys on `(type, id)` to prevent id collisions.
34
+ - `file_utils` requires line-anchored frontmatter fences.
35
+ - CLI startup is faster: FastAPI and app imports are deferred out of CLI
36
+ startup, and rich/typer modules are preloaded before an in-place upgrade.
37
+ - `config.json` is written atomically.
38
+ - In-memory SQLite sessions are serialized so concurrent rollbacks cannot
39
+ destroy writes.
40
+
41
+ ### Maintenance
42
+
43
+ - Release recipes route through PRs and wait for the release PR merge to land
44
+ before tagging; the release runbook is refreshed and stripped of
45
+ user-specific absolute paths.
46
+
3
47
  ## v0.22.0 (2026-06-11)
4
48
 
5
49
  Team-safe cloud sync. New additive `bm cloud push` and `bm cloud pull`
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: basic-memory
3
- Version: 0.22.0
3
+ Version: 0.22.1
4
4
  Summary: Local-first knowledge management combining Zettelkasten with knowledge graphs
5
5
  Project-URL: Homepage, https://github.com/basicmachines-co/basic-memory
6
6
  Project-URL: Repository, https://github.com/basicmachines-co/basic-memory
@@ -645,7 +645,7 @@ retention).
645
645
  | `BASIC_MEMORY_IMPORT_UPLOAD_MAX_BYTES` | `104857600` | Max uploaded import size |
646
646
 
647
647
  ```bash
648
- BASIC_MEMORY_LOG_LEVEL=DEBUG basic-memory sync
648
+ BASIC_MEMORY_LOG_LEVEL=DEBUG basic-memory reindex
649
649
  tail -f ~/.basic-memory/basic-memory.log
650
650
  ```
651
651
 
@@ -590,7 +590,7 @@ retention).
590
590
  | `BASIC_MEMORY_IMPORT_UPLOAD_MAX_BYTES` | `104857600` | Max uploaded import size |
591
591
 
592
592
  ```bash
593
- BASIC_MEMORY_LOG_LEVEL=DEBUG basic-memory sync
593
+ BASIC_MEMORY_LOG_LEVEL=DEBUG basic-memory reindex
594
594
  tail -f ~/.basic-memory/basic-memory.log
595
595
  ```
596
596
 
@@ -111,7 +111,7 @@ You can run Basic Memory CLI commands inside the container using `docker exec`:
111
111
  docker exec basic-memory-server basic-memory status
112
112
 
113
113
  # Sync files
114
- docker exec basic-memory-server basic-memory sync
114
+ docker exec basic-memory-server basic-memory reindex
115
115
 
116
116
  # Show help
117
117
  docker exec basic-memory-server basic-memory --help
@@ -137,7 +137,7 @@ When using Docker volumes, you'll need to configure projects to point to your mo
137
137
 
138
138
  3. **Sync the new project:**
139
139
  ```bash
140
- docker exec basic-memory-server basic-memory sync
140
+ docker exec basic-memory-server basic-memory reindex
141
141
  ```
142
142
 
143
143
  ### Example: Setting up an Obsidian Vault
@@ -157,7 +157,7 @@ docker exec basic-memory-server basic-memory project create obsidian /app/data
157
157
  docker exec basic-memory-server basic-memory project set-default obsidian
158
158
 
159
159
  # Sync to index all files
160
- docker exec basic-memory-server basic-memory sync
160
+ docker exec basic-memory-server basic-memory reindex
161
161
  ```
162
162
 
163
163
  ### Environment Variables
@@ -184,8 +184,8 @@ finance/ (lowercase f)
184
184
  Use Basic Memory's built-in conflict detection:
185
185
 
186
186
  ```bash
187
- # Sync will report conflicts
188
- basic-memory sync
187
+ # Index local file changes (conflicts are handled during the scan)
188
+ basic-memory reindex
189
189
 
190
190
  # Check sync status for warnings
191
191
  basic-memory status
@@ -0,0 +1,183 @@
1
+ # Manual Pages
2
+
3
+ Basic Memory's manual is written in the style of Unix man pages — and
4
+ implemented as Basic Memory notes ([#952](https://github.com/basicmachines-co/basic-memory/issues/952)).
5
+ Every page is a markdown note conforming to the `Manpage` schema, `SEE ALSO`
6
+ entries are real knowledge-graph relations, and every example on every page
7
+ was executed against a live project before the page shipped. The manual
8
+ documents the tools; the tools verify the manual.
9
+
10
+ ## Where it lives
11
+
12
+ The canonical manual is the **`manual` project in the Basic Memory team
13
+ workspace** (cloud, shared). Anyone can build their own: the schema ships as
14
+ an opt-in seed at `plugins/claude-code/schemas/manpage.md` — copy it into any
15
+ project's folder and start writing pages against it.
16
+
17
+ Layout:
18
+
19
+ ```
20
+ manual/
21
+ ├── schemas/Manpage.md # the manpage schema (type: schema)
22
+ ├── man1/ # CLI commands bm(1), bm-status(1), ...
23
+ ├── man3/ # MCP tools write-note(3), search-notes(3), ...
24
+ ├── man5/ # file formats bm-note(5), bm-observation(5), ...
25
+ ├── man7/ # concepts basic-memory(7), semantic-memory(7), ...
26
+ ├── playground/ # scratch notes for destructive examples
27
+ └── diagrams/ # canvas visualizations of the manual graph
28
+ ```
29
+
30
+ ### Why "man1", "man3", "man5"?
31
+
32
+ The folder names are Unix's, unchanged since 1971. The manual is divided
33
+ into numbered **sections**, pages physically live in directories named
34
+ after them (`/usr/share/man/man1`, `man5`, ...), and the number tells you
35
+ what *kind* of thing is documented — not importance, not reading order:
36
+
37
+ - **1** — user commands (`ls`, `grep`)
38
+ - **2** — system calls
39
+ - **3** — library functions / APIs (`printf(3)`)
40
+ - **4** — devices
41
+ - **5** — file formats and config files (`crontab(5)`, `passwd(5)`)
42
+ - **6** — games (really)
43
+ - **7** — miscellanea: concepts, conventions, overviews (`regex(7)`, `signal(7)`)
44
+ - **8** — system administration
45
+
46
+ That's also why man page names carry the parenthesized number —
47
+ `crontab(1)` is the command, `crontab(5)` is the file format, same name in
48
+ two sections. `man 5 crontab` picks the section explicitly.
49
+
50
+ This manual copies that layout with the sections that have a Basic Memory
51
+ analog:
52
+
53
+ - **man1/** — `bm` CLI commands → `bm-status(1)`
54
+ - **man3/** — MCP tools, our equivalent of the "library API" section → `write-note(3)`
55
+ - **man5/** — file formats: note syntax, observations, relations, schemas → `bm-note(5)`
56
+ - **man7/** — concepts → `basic-memory(7)`, `semantic-memory(7)`
57
+ - **8** is reserved for admin/cloud operations but has no pages yet; 2, 4,
58
+ and 6 have no analog (no system calls, no devices, and no games — yet)
59
+
60
+ When a page says `see_also [[bm-note(5)]]`, the `(5)` reads "the
61
+ file-format page," exactly the way a Unix manual cross-references — except
62
+ here it's a traversable relation in the graph instead of a typographic
63
+ convention. The manual explains its own conventions in `man-pages(7)` —
64
+ fittingly, the same page name Linux uses for this, and that almost nobody
65
+ ever reads.
66
+
67
+ ## Page anatomy
68
+
69
+ Pages use the classic headers where applicable: `NAME`, `SYNOPSIS`,
70
+ `DESCRIPTION`, `PARAMETERS`, `MCP USAGE`, `CLI EQUIVALENT`, `EXAMPLES`,
71
+ `GOTCHAS`, `SEE ALSO`. Frontmatter (validated by the schema):
72
+
73
+ ```yaml
74
+ type: manpage
75
+ section: 3 # 1 | 3 | 5 | 7 | 8
76
+ name: write-note # page name without section suffix
77
+ summary: create or overwrite a markdown note in the knowledge base
78
+ generated: hand # hand | registry | typer (regeneration ownership)
79
+ tool: write_note # section-3 pages: the MCP tool documented
80
+ command: basic-memory status # section-1 pages: the CLI command documented
81
+ verified: 0.21.6 mcp+cli # version + path(s) that proved the page
82
+ ```
83
+
84
+ Field knowledge accumulates as observations — `[gotcha]`, `[bug]` (with issue
85
+ links), `[pattern]` — and `SEE ALSO` entries are `see_also` relations, so the
86
+ manual is a navigable graph, not a folder of files.
87
+
88
+ ## How to use it
89
+
90
+ Man-style reads (any MCP client or the CLI):
91
+
92
+ ```bash
93
+ # read a page
94
+ bm tool read-note "man3/write-note-3" --project manual
95
+
96
+ # apropos — find pages by section, tool, or text
97
+ bm tool search-notes --project manual # then filter, or via MCP:
98
+ # search_notes(project="manual", metadata_filters={"type": "manpage", "section": 3})
99
+ # search_notes(project="manual", metadata_filters={"type": "manpage", "tool": "write_note"})
100
+
101
+ # traverse SEE ALSO from any page
102
+ # build_context(url="man3/write-note-3", project="manual")
103
+ ```
104
+
105
+ A future `bm man <topic>` command is thin sugar over exactly these calls.
106
+
107
+ And for the real thing — `man bm` in an actual terminal:
108
+
109
+ ```bash
110
+ bm man install # copies bundled groff pages to ~/.local/share/man
111
+ man bm # the overview page, rendered by man(1)
112
+ man basic-memory # same page via its alias
113
+ ```
114
+
115
+ `bm man install` warns with a one-line `MANPATH` fix if the install root
116
+ isn't searched by your `man`. Agents with shell access can use `man bm` as
117
+ an offline quick reference; the full per-tool detail stays in the manual
118
+ project's section-3 pages.
119
+
120
+ ## The verification discipline
121
+
122
+ Two rules make the manual trustworthy:
123
+
124
+ 1. **Examples must have run.** An `EXAMPLES` (or `MCP USAGE` / `CLI
125
+ EQUIVALENT`) block contains only commands that actually executed against
126
+ the manual project. Destructive operations (`delete_note`, `move_note`,
127
+ destructive `edit_note`) run only against `playground/` notes — never
128
+ against pages. The `verified:` field records the version and which path
129
+ proved the page: `mcp` (live service), `cli` (dev checkout), or both.
130
+
131
+ 2. **The schema is the linter.** Validate the whole manual any time:
132
+
133
+ ```bash
134
+ bm tool schema-validate manpage --project manual
135
+ # → {"total_notes": 38, "valid_count": 38, "warning_count": 0, ...}
136
+ ```
137
+
138
+ `bm orphans --project manual` confirms every page is connected to the
139
+ graph, and `schema_diff`/`schema_infer` report drift between the schema
140
+ and how pages are actually written.
141
+
142
+ Because verification exercises real tool calls against the live service,
143
+ building the manual doubles as an end-to-end smoke test. The initial build
144
+ found six bugs in one pass (#954–#959) — including the verification rule
145
+ catching a test that asserted a bug as expected output (#958).
146
+
147
+ ## Adding or updating a page
148
+
149
+ 1. Run the commands you intend to document; keep the actual output.
150
+ 2. Write the page with `write_note`, passing frontmatter through the
151
+ `metadata` parameter (nested YAML in content frontmatter is unreliable on
152
+ some clients):
153
+
154
+ ```
155
+ write_note(title="my-tool(3)", directory="man3", project="manual",
156
+ note_type="manpage",
157
+ metadata={"section": 3, "name": "my-tool",
158
+ "summary": "...", "generated": "hand",
159
+ "tool": "my_tool", "verified": "<version> mcp"})
160
+ ```
161
+
162
+ 3. Link related pages in `SEE ALSO` with `see_also [[other-page(3)]]`.
163
+ Forward references to pages that don't exist yet are fine — they resolve
164
+ automatically when the target is written.
165
+ 4. Validate: `bm tool schema-validate manpage --project manual`.
166
+
167
+ For mechanical updates to generated sections, prefer `edit_note` with
168
+ `replace_section` / `insert_after_section` so curated content (EXAMPLES,
169
+ GOTCHAS, SEE ALSO, observations) survives — that ownership split is what the
170
+ `generated:` field declares.
171
+
172
+ ## Roadmap
173
+
174
+ - **Registry generator** — section-3 SYNOPSIS/PARAMETERS generated from the
175
+ MCP tool registry (docstrings + pydantic schemas), section-1 from Typer
176
+ help; the hand-written corpus is the template spec. Regenerate-and-diff in
177
+ CI becomes the drift gate.
178
+ - **`bm man <topic>`** — CLI sugar over `read_note` + metadata search.
179
+ (`bm man install` + a hand-written `bm.1` already ship — the first slice
180
+ of [#610](https://github.com/basicmachines-co/basic-memory/issues/610);
181
+ the generator will produce per-command pages from the same extraction.)
182
+ - **Docs site** — the notes remain canonical for sections 5 and 7, code is
183
+ canonical for 1 and 3; both render to the hosted docs site.
@@ -38,7 +38,7 @@ from typing import Any, Callable
38
38
  from agent.memory_provider import MemoryProvider
39
39
  from tools.registry import tool_error
40
40
 
41
- __version__ = "0.22.0"
41
+ __version__ = "0.22.1"
42
42
 
43
43
  logger = logging.getLogger("hermes.memory.basic-memory")
44
44
 
@@ -1,5 +1,5 @@
1
1
  name: basic-memory
2
- version: 0.22.0
2
+ version: 0.22.1
3
3
  description: "Basic Memory — persistent knowledge graph backed by the basic-memory MCP server"
4
4
  pip_dependencies:
5
5
  - mcp
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@basicmemory/openclaw-basic-memory",
3
- "version": "0.22.0",
3
+ "version": "0.22.1",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",