basic-memory 0.9.0__tar.gz → 0.10.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.
Potentially problematic release.
This version of basic-memory might be problematic. Click here for more details.
- basic_memory-0.10.1/.github/dependabot.yml +12 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.gitignore +5 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/CHANGELOG.md +191 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/CLAUDE.md +44 -2
- {basic_memory-0.9.0 → basic_memory-0.10.1}/CONTRIBUTING.md +38 -34
- basic_memory-0.10.1/Dockerfile +16 -0
- basic_memory-0.10.1/PKG-INFO +398 -0
- basic_memory-0.10.1/README.md +364 -0
- basic_memory-0.10.1/SECURITY.md +13 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/AI Assistant Guide.md +2 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/CLI Reference.md +36 -9
- basic_memory-0.10.1/docs/Getting Started with Basic Memory.md +304 -0
- basic_memory-0.10.1/docs/Technical Information.md +243 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/User Guide.md +64 -26
- basic_memory-0.10.1/docs/Welcome to Basic memory.md +68 -0
- basic_memory-0.10.1/docs/attachments/Claude-Obsidian-Demo.mp4 +0 -0
- basic_memory-0.10.1/docs/attachments/disk-ai-logo-400x400.png +0 -0
- basic_memory-0.10.1/docs/attachments/disk-ai-logo.png +0 -0
- basic_memory-0.10.1/docs/publish.js +5 -0
- basic_memory-0.10.1/llms-install.md +128 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/pyproject.toml +1 -1
- basic_memory-0.10.1/smithery.yaml +15 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/__init__.py +1 -1
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/api/routers/project_info_router.py +3 -4
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/__init__.py +1 -2
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/import_chatgpt.py +5 -6
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/import_claude_conversations.py +5 -6
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/import_claude_projects.py +5 -6
- basic_memory-0.9.0/src/basic_memory/cli/commands/project_info.py → basic_memory-0.10.1/src/basic_memory/cli/commands/project.py +126 -8
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/tool.py +5 -1
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/config.py +3 -4
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/file_utils.py +3 -3
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/markdown/entity_parser.py +13 -10
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/markdown/markdown_processor.py +1 -1
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/markdown/schemas.py +1 -1
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/prompts/ai_assistant_guide.py +3 -4
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/search.py +2 -2
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/write_note.py +17 -7
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/services/entity_service.py +11 -1
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/services/file_service.py +3 -5
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/sync/watch_service.py +22 -12
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/utils.py +27 -1
- basic_memory-0.10.1/static/ai_assistant_guide.md +413 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_project_commands.py +52 -2
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_project_info.py +2 -2
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_tool_notes.py +92 -1
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/services/test_entity_service.py +1 -1
- basic_memory-0.10.1/tests/sync/test_tmp_files.py +184 -0
- basic_memory-0.10.1/tests/utils/test_utf8_handling.py +195 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/uv.lock +213 -183
- basic_memory-0.9.0/PKG-INFO +0 -736
- basic_memory-0.9.0/README.md +0 -702
- basic_memory-0.9.0/docs/.obsidian/app.json +0 -1
- basic_memory-0.9.0/docs/.obsidian/appearance.json +0 -1
- basic_memory-0.9.0/docs/.obsidian/core-plugins.json +0 -31
- basic_memory-0.9.0/docs/.obsidian/publish.json +0 -6
- basic_memory-0.9.0/docs/.obsidian/workspace.json +0 -167
- basic_memory-0.9.0/docs/Getting Started with Basic Memory.md +0 -176
- basic_memory-0.9.0/docs/Technical Information.md +0 -99
- basic_memory-0.9.0/docs/Welcome to Basic memory.md +0 -181
- basic_memory-0.9.0/docs/attachments/Obsidian-CoffeeKnowledgeBase-examples-overlays.gif +0 -0
- basic_memory-0.9.0/docs/attachments/Obsidian-CoffeeKnowledgeBase-examples.gif +0 -0
- basic_memory-0.9.0/examples/.basic-memory/memory.db +0 -0
- basic_memory-0.9.0/examples/.obsidian/app.json +0 -3
- basic_memory-0.9.0/examples/.obsidian/appearance.json +0 -1
- basic_memory-0.9.0/examples/.obsidian/community-plugins.json +0 -3
- basic_memory-0.9.0/examples/.obsidian/core-plugins.json +0 -31
- basic_memory-0.9.0/examples/.obsidian/graph.json +0 -22
- basic_memory-0.9.0/examples/.obsidian/plugins/optimize-canvas-connections/main.js +0 -158
- basic_memory-0.9.0/examples/.obsidian/plugins/optimize-canvas-connections/manifest.json +0 -10
- basic_memory-0.9.0/examples/.obsidian/publish.json +0 -6
- basic_memory-0.9.0/examples/.obsidian/workspace.json +0 -186
- basic_memory-0.9.0/examples/Untitled.md +0 -0
- basic_memory-0.9.0/src/basic_memory/cli/commands/project.py +0 -119
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.github/ISSUE_TEMPLATE/documentation.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.github/workflows/pr-title.yml +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.github/workflows/release.yml +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.github/workflows/test.yml +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/.python-version +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/CITATION.cff +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/CLA.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/CODE_OF_CONDUCT.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/LICENSE +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/Makefile +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/basic-memory.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/Canvas.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/Knowledge Format.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/Obsidian Integration.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/attachments/Canvas.png +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/attachments/Prompt.png +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/attachments/prompt 1.png +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/attachments/prompt2.png +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/attachments/prompt3.png +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/docs/attachments/prompt4.png +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/examples/Coffee Notes/Brewing Equipment.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/examples/Coffee Notes/Coffee Bean Origins.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/examples/Coffee Notes/Coffee Brewing Methods.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/examples/Coffee Notes/Coffee Flavor Map.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/examples/Coffee Notes/Coffee Knowledge Base.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/examples/Coffee Notes/Flavor Extraction.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/examples/Coffee Notes/Perfect Pour Over Coffee Method.canvas +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/examples/Coffee Notes/Tasting Notes.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/installer/Basic.icns +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/installer/README.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/installer/icon.svg +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/installer/installer.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/installer/make_icons.sh +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/installer/setup.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/memory.json +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/scripts/install.sh +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/alembic/alembic.ini +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/alembic/env.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/alembic/migrations.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/alembic/script.py.mako +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/alembic/versions/3dae7c7b1564_initial_schema.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/alembic/versions/502b60eaa905_remove_required_from_entity_permalink.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/alembic/versions/b3c3938bacdb_relation_to_name_unique_index.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/alembic/versions/cc7172b46608_update_search_index_schema.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/api/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/api/app.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/api/routers/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/api/routers/knowledge_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/api/routers/memory_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/api/routers/resource_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/api/routers/search_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/app.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/db.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/import_memory_json.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/mcp.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/status.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/commands/sync.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/cli/main.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/db.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/deps.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/markdown/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/markdown/plugins.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/markdown/utils.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/async_client.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/main.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/prompts/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/prompts/continue_conversation.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/prompts/recent_activity.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/prompts/search.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/prompts/utils.py +0 -0
- {basic_memory-0.9.0/static → basic_memory-0.10.1/src/basic_memory/mcp/resources}/ai_assistant_guide.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/server.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/build_context.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/canvas.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/delete_note.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/project_info.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/read_content.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/read_note.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/recent_activity.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/mcp/tools/utils.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/models/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/models/base.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/models/knowledge.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/models/search.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/repository/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/repository/entity_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/repository/observation_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/repository/project_info_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/repository/relation_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/repository/repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/repository/search_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/schemas/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/schemas/base.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/schemas/delete.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/schemas/memory.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/schemas/project_info.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/schemas/request.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/schemas/response.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/schemas/search.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/services/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/services/context_service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/services/exceptions.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/services/link_resolver.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/services/search_service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/services/service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/sync/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/src/basic_memory/sync/sync_service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/static/json_canvas_spec_1_0.md +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/Non-MarkdownFileSupport.pdf +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/Screenshot.png +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/api/conftest.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/api/test_knowledge_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/api/test_memory_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/api/test_project_info_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/api/test_resource_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/api/test_search_router.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/conftest.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_cli_tools.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_import_chatgpt.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_import_claude_conversations.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_import_claude_projects.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_import_memory_json.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_status.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_sync.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/cli/test_version.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/conftest.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/edit_file_test.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/markdown/__init__.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/markdown/test_entity_parser.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/markdown/test_markdown_plugins.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/markdown/test_markdown_processor.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/markdown/test_observation_edge_cases.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/markdown/test_parser_edge_cases.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/markdown/test_relation_edge_cases.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/markdown/test_task_detection.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/conftest.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_prompts.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_resources.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_tool_canvas.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_tool_memory.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_tool_project_info.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_tool_read_note.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_tool_resource.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_tool_search.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/mcp/test_tool_utils.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/repository/test_entity_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/repository/test_observation_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/repository/test_relation_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/repository/test_repository.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/schemas/test_memory_url.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/schemas/test_schemas.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/schemas/test_search.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/services/test_context_service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/services/test_file_service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/services/test_link_resolver.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/services/test_search_service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/sync/test_sync_service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/sync/test_watch_service.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/sync/test_watch_service_edge_cases.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/test_basic_memory.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/test_config.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/utils/test_file_utils.py +0 -0
- {basic_memory-0.9.0 → basic_memory-0.10.1}/tests/utils/test_permalink_formatting.py +0 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# To get started with Dependabot version updates, you'll need to specify which
|
|
2
|
+
# package ecosystems to update and where the package manifests are located.
|
|
3
|
+
# Please see the documentation for all configuration options:
|
|
4
|
+
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
|
|
5
|
+
|
|
6
|
+
version: 2
|
|
7
|
+
updates:
|
|
8
|
+
- package-ecosystem: "" # See documentation for possible values
|
|
9
|
+
directory: "/" # Location of package manifests
|
|
10
|
+
schedule:
|
|
11
|
+
interval: "weekly"
|
|
12
|
+
|
|
@@ -1,6 +1,197 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
## v0.10.1 (2025-03-25)
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
- Make set_default_project also activate project for current session to fix #37
|
|
9
|
+
([`cbe72be`](https://github.com/basicmachines-co/basic-memory/commit/cbe72be10a646c0b03931bb39aff9285feae47f9))
|
|
10
|
+
|
|
11
|
+
This change makes the 'basic-memory project default <name>' command both: 1. Set the default project
|
|
12
|
+
for future invocations (persistent change) 2. Activate the project for the current session
|
|
13
|
+
(immediate change)
|
|
14
|
+
|
|
15
|
+
Added tests to verify this behavior, which resolves issue #37 where the project name and path
|
|
16
|
+
weren't changing properly when the default project was changed.
|
|
17
|
+
|
|
18
|
+
🤖 Generated with [Claude Code](https://claude.ai/code)
|
|
19
|
+
|
|
20
|
+
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
21
|
+
|
|
22
|
+
- Make set_default_project also activate project for current session to fix #37
|
|
23
|
+
([`46c4fd2`](https://github.com/basicmachines-co/basic-memory/commit/46c4fd21645b109af59eb2a0201c7bd849b34a49))
|
|
24
|
+
|
|
25
|
+
This change makes the 'basic-memory project default <name>' command both: 1. Set the default project
|
|
26
|
+
for future invocations (persistent change) 2. Activate the project for the current session
|
|
27
|
+
(immediate change)
|
|
28
|
+
|
|
29
|
+
Added tests to verify this behavior, which resolves issue #37 where the project name and path
|
|
30
|
+
weren't changing properly when the default project was changed.
|
|
31
|
+
|
|
32
|
+
🤖 Generated with [Claude Code](https://claude.ai/code)
|
|
33
|
+
|
|
34
|
+
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
35
|
+
|
|
36
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
37
|
+
|
|
38
|
+
- Move ai_assistant_guide.md into package resources to fix #39
|
|
39
|
+
([`390ff9d`](https://github.com/basicmachines-co/basic-memory/commit/390ff9d31ccee85bef732e8140b5eeecd7ee176f))
|
|
40
|
+
|
|
41
|
+
This change relocates the AI assistant guide from the static directory into the package resources
|
|
42
|
+
directory, ensuring it gets properly included in the distribution package and is accessible when
|
|
43
|
+
installed via pip/uv.
|
|
44
|
+
|
|
45
|
+
🤖 Generated with [Claude Code](https://claude.ai/code)
|
|
46
|
+
|
|
47
|
+
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
48
|
+
|
|
49
|
+
- Move ai_assistant_guide.md into package resources to fix #39
|
|
50
|
+
([`cc2cae7`](https://github.com/basicmachines-co/basic-memory/commit/cc2cae72c14b380f78ffeb67c2261e4dbee45faf))
|
|
51
|
+
|
|
52
|
+
This change relocates the AI assistant guide from the static directory into the package resources
|
|
53
|
+
directory, ensuring it gets properly included in the distribution package and is accessible when
|
|
54
|
+
installed via pip/uv.
|
|
55
|
+
|
|
56
|
+
🤖 Generated with [Claude Code](https://claude.ai/code)
|
|
57
|
+
|
|
58
|
+
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
59
|
+
|
|
60
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
61
|
+
|
|
62
|
+
- Preserve custom frontmatter fields when updating notes
|
|
63
|
+
([`78f234b`](https://github.com/basicmachines-co/basic-memory/commit/78f234b1806b578a0a833e8ee4184015b7369a97))
|
|
64
|
+
|
|
65
|
+
Fixes #36 by modifying entity_service.update_entity() to read existing frontmatter from files before
|
|
66
|
+
updating them. Custom metadata fields such as Status, Priority, and Version are now preserved when
|
|
67
|
+
notes are updated through the write_note MCP tool.
|
|
68
|
+
|
|
69
|
+
Added test case that verifies this behavior by creating a note with custom frontmatter and then
|
|
70
|
+
updating it.
|
|
71
|
+
|
|
72
|
+
🤖 Generated with [Claude Code](https://claude.ai/code)
|
|
73
|
+
|
|
74
|
+
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
75
|
+
|
|
76
|
+
- Preserve custom frontmatter fields when updating notes
|
|
77
|
+
([`e716946`](https://github.com/basicmachines-co/basic-memory/commit/e716946b4408d017eca4be720956d5a210b4e6b1))
|
|
78
|
+
|
|
79
|
+
Fixes #36 by modifying entity_service.update_entity() to read existing frontmatter from files before
|
|
80
|
+
updating them. Custom metadata fields such as Status, Priority, and Version are now preserved when
|
|
81
|
+
notes are updated through the write_note MCP tool.
|
|
82
|
+
|
|
83
|
+
Added test case that verifies this behavior by creating a note with custom frontmatter and then
|
|
84
|
+
updating it.
|
|
85
|
+
|
|
86
|
+
🤖 Generated with [Claude Code](https://claude.ai/code)
|
|
87
|
+
|
|
88
|
+
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
89
|
+
|
|
90
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
91
|
+
|
|
92
|
+
### Chores
|
|
93
|
+
|
|
94
|
+
- Remove duplicate code in entity_service.py from bad merge
|
|
95
|
+
([`681af5d`](https://github.com/basicmachines-co/basic-memory/commit/681af5d4505dadc40b4086630f739d76bac9201d))
|
|
96
|
+
|
|
97
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
98
|
+
|
|
99
|
+
### Documentation
|
|
100
|
+
|
|
101
|
+
- Add help docs to mcp cli tools
|
|
102
|
+
([`731b502`](https://github.com/basicmachines-co/basic-memory/commit/731b502d36cec253d114403d73b48fab3c47786e))
|
|
103
|
+
|
|
104
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
105
|
+
|
|
106
|
+
- Add mcp badge, update cli reference, llms-install.md
|
|
107
|
+
([`b26afa9`](https://github.com/basicmachines-co/basic-memory/commit/b26afa927f98021246cd8b64858e57333595ea90))
|
|
108
|
+
|
|
109
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
110
|
+
|
|
111
|
+
- Update CLAUDE.md ([#33](https://github.com/basicmachines-co/basic-memory/pull/33),
|
|
112
|
+
[`dfaf0fe`](https://github.com/basicmachines-co/basic-memory/commit/dfaf0fea9cf5b97d169d51a6276ec70162c21a7e))
|
|
113
|
+
|
|
114
|
+
fix spelling in CLAUDE.md: enviroment -> environment Signed-off-by: Ikko Eltociear Ashimine
|
|
115
|
+
<eltociear@gmail.com>
|
|
116
|
+
|
|
117
|
+
### Refactoring
|
|
118
|
+
|
|
119
|
+
- Move project stats into projct subcommand
|
|
120
|
+
([`2a881b1`](https://github.com/basicmachines-co/basic-memory/commit/2a881b1425c73947f037fbe7ac5539c015b62526))
|
|
121
|
+
|
|
122
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
## v0.10.0 (2025-03-15)
|
|
126
|
+
|
|
127
|
+
### Bug Fixes
|
|
128
|
+
|
|
129
|
+
- Ai_resource_guide.md path
|
|
130
|
+
([`da97353`](https://github.com/basicmachines-co/basic-memory/commit/da97353cfc3acc1ceb0eca22ac6af326f77dc199))
|
|
131
|
+
|
|
132
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
133
|
+
|
|
134
|
+
- Ai_resource_guide.md path
|
|
135
|
+
([`c4732a4`](https://github.com/basicmachines-co/basic-memory/commit/c4732a47b37dd2e404139fb283b65556c81ce7c9))
|
|
136
|
+
|
|
137
|
+
- Ai_resource_guide.md path
|
|
138
|
+
([`2e9d673`](https://github.com/basicmachines-co/basic-memory/commit/2e9d673e54ad6a63a971db64f01fc2f4e59c2e69))
|
|
139
|
+
|
|
140
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
141
|
+
|
|
142
|
+
- Don't sync *.tmp files on watch ([#31](https://github.com/basicmachines-co/basic-memory/pull/31),
|
|
143
|
+
[`6b110b2`](https://github.com/basicmachines-co/basic-memory/commit/6b110b28dd8ba705ebfc0bcb41faf2cb993da2c3))
|
|
144
|
+
|
|
145
|
+
Fixes #30
|
|
146
|
+
|
|
147
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
148
|
+
|
|
149
|
+
- Drop search_index table on db reindex
|
|
150
|
+
([`31cca6f`](https://github.com/basicmachines-co/basic-memory/commit/31cca6f913849a0ab8fc944803533e3072e9ef88))
|
|
151
|
+
|
|
152
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
153
|
+
|
|
154
|
+
- Improve utf-8 support for file reading/writing
|
|
155
|
+
([#32](https://github.com/basicmachines-co/basic-memory/pull/32),
|
|
156
|
+
[`eb5e4ec`](https://github.com/basicmachines-co/basic-memory/commit/eb5e4ec6bd4d2fe757087be030d867f4ca1d38ba))
|
|
157
|
+
|
|
158
|
+
fixes #29
|
|
159
|
+
|
|
160
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
161
|
+
|
|
162
|
+
### Chores
|
|
163
|
+
|
|
164
|
+
- Remove logfire
|
|
165
|
+
([`9bb8a02`](https://github.com/basicmachines-co/basic-memory/commit/9bb8a020c3425a02cb3a88f6f02adcd281bccee2))
|
|
166
|
+
|
|
167
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
168
|
+
|
|
169
|
+
### Documentation
|
|
170
|
+
|
|
171
|
+
- Add glama badge. Fix typos in README.md
|
|
172
|
+
([#28](https://github.com/basicmachines-co/basic-memory/pull/28),
|
|
173
|
+
[`9af913d`](https://github.com/basicmachines-co/basic-memory/commit/9af913da4fba7bb4908caa3f15f2db2aa03777ec))
|
|
174
|
+
|
|
175
|
+
Signed-off-by: phernandez <paul@basicmachines.co>
|
|
176
|
+
|
|
177
|
+
- Update CLAUDE.md with GitHub integration capabilities
|
|
178
|
+
([#25](https://github.com/basicmachines-co/basic-memory/pull/25),
|
|
179
|
+
[`fea2f40`](https://github.com/basicmachines-co/basic-memory/commit/fea2f40d1b54d0c533e6d7ee7ce1aa7b83ad9a47))
|
|
180
|
+
|
|
181
|
+
This PR updates the CLAUDE.md file to document the GitHub integration capabilities that enable
|
|
182
|
+
Claude to participate directly in the development workflow.
|
|
183
|
+
|
|
184
|
+
### Features
|
|
185
|
+
|
|
186
|
+
- Add Smithery integration for easier installation
|
|
187
|
+
([#24](https://github.com/basicmachines-co/basic-memory/pull/24),
|
|
188
|
+
[`eb1e7b6`](https://github.com/basicmachines-co/basic-memory/commit/eb1e7b6088b0b3dead9c104ee44174b2baebf417))
|
|
189
|
+
|
|
190
|
+
This PR adds support for deploying Basic Memory on the Smithery platform.
|
|
191
|
+
|
|
192
|
+
Signed-off-by: bm-claudeai <claude@basicmachines.co>
|
|
193
|
+
|
|
194
|
+
|
|
4
195
|
## v0.9.0 (2025-03-07)
|
|
5
196
|
|
|
6
197
|
### Chores
|
|
@@ -37,6 +37,7 @@ See the [README.md](README.md) file for a project overview.
|
|
|
37
37
|
- API uses FastAPI for endpoints
|
|
38
38
|
- Follow the repository pattern for data access
|
|
39
39
|
- Tools communicate to api routers via the httpx ASGI client (in process)
|
|
40
|
+
- avoid using "private" functions in modules or classes (prepended with _)
|
|
40
41
|
|
|
41
42
|
### Codebase Architecture
|
|
42
43
|
|
|
@@ -63,7 +64,7 @@ See the [README.md](README.md) file for a project overview.
|
|
|
63
64
|
- Testing uses pytest with asyncio support (strict mode)
|
|
64
65
|
- Test database uses in-memory SQLite
|
|
65
66
|
- Avoid creating mocks in tests in most circumstances.
|
|
66
|
-
- Each test runs in a standalone
|
|
67
|
+
- Each test runs in a standalone environment with in memory SQLite and tmp_file directory
|
|
67
68
|
|
|
68
69
|
## BASIC MEMORY PRODUCT USAGE
|
|
69
70
|
|
|
@@ -130,4 +131,45 @@ of using AI just for code generation, we've developed a true collaborative workf
|
|
|
130
131
|
5. Results improve through iterative collaboration and shared understanding
|
|
131
132
|
|
|
132
133
|
This approach has allowed us to tackle more complex challenges and build a more robust system than either humans or AI
|
|
133
|
-
could achieve independently.
|
|
134
|
+
could achieve independently.
|
|
135
|
+
|
|
136
|
+
## GitHub Integration
|
|
137
|
+
|
|
138
|
+
Basic Memory uses Claude directly into the development workflow through GitHub:
|
|
139
|
+
|
|
140
|
+
### GitHub MCP Tools
|
|
141
|
+
|
|
142
|
+
Using the GitHub Model Context Protocol server, Claude can:
|
|
143
|
+
|
|
144
|
+
- **Repository Management**:
|
|
145
|
+
- View repository files and structure
|
|
146
|
+
- Read file contents
|
|
147
|
+
- Create new branches
|
|
148
|
+
- Create and update files
|
|
149
|
+
|
|
150
|
+
- **Issue Management**:
|
|
151
|
+
- Create new issues
|
|
152
|
+
- Comment on existing issues
|
|
153
|
+
- Close and update issues
|
|
154
|
+
- Search across issues
|
|
155
|
+
|
|
156
|
+
- **Pull Request Workflow**:
|
|
157
|
+
- Create pull requests
|
|
158
|
+
- Review code changes
|
|
159
|
+
- Add comments to PRs
|
|
160
|
+
|
|
161
|
+
This integration enables Claude to participate as a full team member in the development process, not just as a code
|
|
162
|
+
generation tool. Claude's GitHub account ([bm-claudeai](https://github.com/bm-claudeai)) is a member of the Basic
|
|
163
|
+
Machines organization with direct contributor access to the codebase.
|
|
164
|
+
|
|
165
|
+
### Collaborative Development Process
|
|
166
|
+
|
|
167
|
+
With GitHub integration, the development workflow includes:
|
|
168
|
+
|
|
169
|
+
1. **Direct code review** - Claude can analyze PRs and provide detailed feedback
|
|
170
|
+
2. **Contribution tracking** - All of Claude's contributions are properly attributed in the Git history
|
|
171
|
+
3. **Branch management** - Claude can create feature branches for implementations
|
|
172
|
+
4. **Documentation maintenance** - Claude can keep documentation updated as the code evolves
|
|
173
|
+
|
|
174
|
+
With this integration, the AI assistant is a full-fledged team member rather than just a tool for generating code
|
|
175
|
+
snippets.
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# Contributing to Basic Memory
|
|
2
2
|
|
|
3
|
-
Thank you for considering contributing to Basic Memory! This document outlines the process for contributing to the
|
|
3
|
+
Thank you for considering contributing to Basic Memory! This document outlines the process for contributing to the
|
|
4
|
+
project and how to get started as a developer.
|
|
4
5
|
|
|
5
6
|
## Getting Started
|
|
6
7
|
|
|
@@ -65,61 +66,64 @@ Thank you for considering contributing to Basic Memory! This document outlines t
|
|
|
65
66
|
|
|
66
67
|
This project is designed for collaborative development between humans and LLMs (Large Language Models):
|
|
67
68
|
|
|
68
|
-
1. **CLAUDE.md**: The repository includes a `CLAUDE.md` file that serves as a project guide for both humans and LLMs.
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
69
|
+
1. **CLAUDE.md**: The repository includes a `CLAUDE.md` file that serves as a project guide for both humans and LLMs.
|
|
70
|
+
This file contains:
|
|
71
|
+
- Key project information and architectural overview
|
|
72
|
+
- Development commands and workflows
|
|
73
|
+
- Code style guidelines
|
|
74
|
+
- Documentation standards
|
|
73
75
|
|
|
74
76
|
2. **AI-Human Collaborative Workflow**:
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
77
|
+
- We encourage using LLMs like Claude for code generation, reviews, and documentation
|
|
78
|
+
- When possible, save context in markdown files that can be referenced later
|
|
79
|
+
- This enables seamless knowledge transfer between different development sessions
|
|
80
|
+
- Claude can help with implementation details while you focus on architecture and design
|
|
79
81
|
|
|
80
82
|
3. **Adding to CLAUDE.md**:
|
|
81
|
-
|
|
82
|
-
|
|
83
|
+
- If you discover useful project information or common commands, consider adding them to CLAUDE.md
|
|
84
|
+
- This helps all contributors (human and AI) maintain consistent knowledge of the project
|
|
83
85
|
|
|
84
86
|
## Pull Request Process
|
|
85
87
|
|
|
86
88
|
1. **Create a Pull Request**: Open a PR against the `main` branch with a clear title and description.
|
|
87
|
-
2. **Sign the Developer Certificate of Origin (DCO)**: All contributions require signing our DCO, which certifies that
|
|
89
|
+
2. **Sign the Developer Certificate of Origin (DCO)**: All contributions require signing our DCO, which certifies that
|
|
90
|
+
you have the right to submit your contributions. This will be automatically checked by our CLA assistant when you
|
|
91
|
+
create a PR.
|
|
88
92
|
3. **PR Description**: Include:
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
+
- What the PR changes
|
|
94
|
+
- Why the change is needed
|
|
95
|
+
- How you tested the changes
|
|
96
|
+
- Any related issues (use "Fixes #123" to automatically close issues)
|
|
93
97
|
4. **Code Review**: Wait for code review and address any feedback.
|
|
94
98
|
5. **CI Checks**: Ensure all CI checks pass.
|
|
95
99
|
6. **Merge**: Once approved, a maintainer will merge your PR.
|
|
96
100
|
|
|
97
101
|
## Developer Certificate of Origin
|
|
98
102
|
|
|
99
|
-
By contributing to this project, you agree to the [Developer Certificate of Origin (DCO)](CLA.md). This means you
|
|
103
|
+
By contributing to this project, you agree to the [Developer Certificate of Origin (DCO)](CLA.md). This means you
|
|
104
|
+
certify that:
|
|
105
|
+
|
|
100
106
|
- You have the right to submit your contributions
|
|
101
107
|
- You're not knowingly submitting code with patent or copyright issues
|
|
102
108
|
- Your contributions are provided under the project's license (AGPL-3.0)
|
|
103
109
|
|
|
104
|
-
This is a lightweight alternative to a Contributor License Agreement and helps ensure that all contributions can be
|
|
110
|
+
This is a lightweight alternative to a Contributor License Agreement and helps ensure that all contributions can be
|
|
111
|
+
properly incorporated into the project and potentially used in commercial applications.
|
|
105
112
|
|
|
106
113
|
### Signing Your Commits
|
|
107
114
|
|
|
108
|
-
|
|
115
|
+
Sign your commit:
|
|
109
116
|
|
|
110
|
-
|
|
111
|
-
```bash
|
|
112
|
-
git commit -s -m "Your commit message"
|
|
113
|
-
```
|
|
114
|
-
This adds a `Signed-off-by` line to your commit message, certifying that you adhere to the DCO.
|
|
117
|
+
**Using the `-s` or `--signoff` flag**:
|
|
115
118
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
119
|
+
```bash
|
|
120
|
+
git commit -s -m "Your commit message"
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
This adds a `Signed-off-by` line to your commit message, certifying that you adhere to the DCO.
|
|
121
124
|
|
|
122
|
-
The sign-off certifies that you have the right to submit your contribution under the project's license and verifies your
|
|
125
|
+
The sign-off certifies that you have the right to submit your contribution under the project's license and verifies your
|
|
126
|
+
agreement to the DCO.
|
|
123
127
|
|
|
124
128
|
## Code Style Guidelines
|
|
125
129
|
|
|
@@ -135,10 +139,10 @@ The sign-off certifies that you have the right to submit your contribution under
|
|
|
135
139
|
|
|
136
140
|
- **Coverage Target**: We aim for 100% test coverage for all code
|
|
137
141
|
- **Test Framework**: Use pytest for unit and integration tests
|
|
138
|
-
- **Mocking**: Use pytest-mock for mocking dependencies
|
|
142
|
+
- **Mocking**: Use pytest-mock for mocking dependencies only when necessary
|
|
139
143
|
- **Edge Cases**: Test both normal operation and edge cases
|
|
140
144
|
- **Database Testing**: Use in-memory SQLite for testing database operations
|
|
141
|
-
- **Fixtures**: Use pytest fixtures for setup and teardown
|
|
145
|
+
- **Fixtures**: Use async pytest fixtures for setup and teardown
|
|
142
146
|
|
|
143
147
|
## Creating Issues
|
|
144
148
|
|
|
@@ -156,4 +160,4 @@ All contributors must follow the [Code of Conduct](CODE_OF_CONDUCT.md).
|
|
|
156
160
|
|
|
157
161
|
## Thank You!
|
|
158
162
|
|
|
159
|
-
Your contributions help make Basic Memory better
|
|
163
|
+
Your contributions help make Basic Memory better. We appreciate your time and effort!
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile
|
|
2
|
+
FROM python:3.12-slim
|
|
3
|
+
|
|
4
|
+
WORKDIR /app
|
|
5
|
+
|
|
6
|
+
# Copy the project files
|
|
7
|
+
COPY . .
|
|
8
|
+
|
|
9
|
+
# Install pip and build dependencies
|
|
10
|
+
RUN pip install --upgrade pip \
|
|
11
|
+
&& pip install . --no-cache-dir --ignore-installed
|
|
12
|
+
|
|
13
|
+
# Expose port if necessary (e.g., uv might use a port, but MCP over stdio so not needed here)
|
|
14
|
+
|
|
15
|
+
# Use the basic-memory entrypoint to run the MCP server
|
|
16
|
+
CMD ["basic-memory", "mcp"]
|