basic-memory 0.21.6__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.
- basic_memory-0.22.1/.agents/skills/code-review/SKILL.md +68 -0
- basic_memory-0.22.1/.agents/skills/fix-pr-issues/SKILL.md +48 -0
- basic_memory-0.22.1/.agents/skills/fix-pr-issues/agents/openai.yaml +7 -0
- basic_memory-0.22.1/.agents/skills/fix-pr-issues/assets/icon.svg +5 -0
- basic_memory-0.22.1/.agents/skills/infographics/SKILL.md +247 -0
- basic_memory-0.22.1/.agents/skills/infographics/agents/openai.yaml +7 -0
- basic_memory-0.22.1/.agents/skills/infographics/assets/icon.svg +5 -0
- basic_memory-0.22.1/.agents/skills/infographics/references/prompt-blueprint.md +72 -0
- basic_memory-0.22.1/.agents/skills/infographics/references/style-balance.md +42 -0
- basic_memory-0.22.1/.agents/skills/pr-create/SKILL.md +114 -0
- basic_memory-0.22.1/.agents/skills/pr-create/agents/openai.yaml +7 -0
- basic_memory-0.22.1/.agents/skills/pr-create/assets/icon.svg +5 -0
- basic_memory-0.22.1/.claude/commands/release/beta.md +96 -0
- basic_memory-0.22.1/.claude/commands/release/release.md +219 -0
- basic_memory-0.22.1/.claude/skills/basic-machines-review +1 -0
- basic_memory-0.22.1/.claude-plugin/marketplace.json +29 -0
- basic_memory-0.22.1/.github/workflows/claude-code-review.yml +85 -0
- basic_memory-0.22.1/.github/workflows/docker.yml +59 -0
- basic_memory-0.22.1/.github/workflows/test.yml +407 -0
- basic_memory-0.22.1/.gitignore +67 -0
- basic_memory-0.22.1/AGENTS.md +542 -0
- basic_memory-0.22.1/CHANGELOG.md +3004 -0
- basic_memory-0.22.1/PKG-INFO +692 -0
- basic_memory-0.22.1/README.md +637 -0
- basic_memory-0.22.1/docs/Docker.md +365 -0
- basic_memory-0.22.1/docs/ENGINEERING_STYLE.md +64 -0
- basic_memory-0.22.1/docs/character-handling.md +241 -0
- basic_memory-0.22.1/docs/cloud-cli.md +1046 -0
- basic_memory-0.22.1/docs/litellm-provider.md +300 -0
- basic_memory-0.22.1/docs/manual-pages.md +183 -0
- basic_memory-0.22.1/docs/semantic-search.md +382 -0
- basic_memory-0.22.1/glama.json +7 -0
- basic_memory-0.22.1/integrations/hermes/__init__.py +1874 -0
- basic_memory-0.22.1/integrations/hermes/plugin.yaml +11 -0
- basic_memory-0.22.1/integrations/openclaw/MEMORY_TASK_FLOW.md +156 -0
- basic_memory-0.22.1/integrations/openclaw/package.json +96 -0
- basic_memory-0.22.1/justfile +593 -0
- basic_memory-0.22.1/plugins/claude-code/.claude-plugin/marketplace.json +29 -0
- basic_memory-0.22.1/plugins/claude-code/.claude-plugin/plugin.json +9 -0
- basic_memory-0.22.1/plugins/claude-code/CHANGELOG.md +273 -0
- basic_memory-0.22.1/plugins/claude-code/schemas/manpage.md +55 -0
- basic_memory-0.22.1/plugins/claude-code/skills/bm-setup/SKILL.md +226 -0
- basic_memory-0.22.1/plugins/codex/.codex-plugin/plugin.json +46 -0
- basic_memory-0.22.1/pyproject.toml +177 -0
- basic_memory-0.22.1/scripts/testmon_cache.py +225 -0
- basic_memory-0.22.1/scripts/update_versions.py +190 -0
- basic_memory-0.22.1/scripts/validate_skills.py +98 -0
- basic_memory-0.22.1/server.json +31 -0
- basic_memory-0.22.1/skills/DEVELOPMENT.md +83 -0
- basic_memory-0.22.1/skills/README.md +134 -0
- basic_memory-0.22.1/src/basic_memory/__init__.py +7 -0
- basic_memory-0.22.1/src/basic_memory/alembic/env.py +234 -0
- basic_memory-0.22.1/src/basic_memory/api/v2/routers/knowledge_router.py +908 -0
- basic_memory-0.22.1/src/basic_memory/api/v2/routers/project_router.py +620 -0
- basic_memory-0.22.1/src/basic_memory/api/v2/routers/search_router.py +157 -0
- basic_memory-0.22.1/src/basic_memory/api/v2/utils.py +281 -0
- basic_memory-0.22.1/src/basic_memory/cli/app.py +124 -0
- basic_memory-0.22.1/src/basic_memory/cli/auto_update.py +404 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/__init__.py +34 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/ci.py +447 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/cloud/bisync_commands.py +150 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/cloud/core_commands.py +395 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/cloud/project_sync.py +740 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/cloud/rclone_commands.py +756 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/cloud/rclone_config.py +150 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/command_utils.py +115 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/db.py +471 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/doctor.py +161 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/import_chatgpt.py +101 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/import_claude_conversations.py +104 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/import_claude_projects.py +103 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/import_memory_json.py +104 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/man.py +76 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/mcp.py +128 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/orphans.py +95 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/schema.py +401 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/status.py +286 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/tool.py +947 -0
- basic_memory-0.22.1/src/basic_memory/cli/commands/workspace.py +23 -0
- basic_memory-0.22.1/src/basic_memory/cli/main.py +42 -0
- basic_memory-0.22.1/src/basic_memory/config.py +1193 -0
- basic_memory-0.22.1/src/basic_memory/db.py +508 -0
- basic_memory-0.22.1/src/basic_memory/file_utils.py +542 -0
- basic_memory-0.22.1/src/basic_memory/ignore_utils.py +311 -0
- basic_memory-0.22.1/src/basic_memory/indexing/batch_indexer.py +716 -0
- basic_memory-0.22.1/src/basic_memory/man/basic-memory.1 +1 -0
- basic_memory-0.22.1/src/basic_memory/man/bm.1 +134 -0
- basic_memory-0.22.1/src/basic_memory/mcp/async_client.py +481 -0
- basic_memory-0.22.1/src/basic_memory/mcp/clients/directory.py +74 -0
- basic_memory-0.22.1/src/basic_memory/mcp/clients/knowledge.py +380 -0
- basic_memory-0.22.1/src/basic_memory/mcp/clients/memory.py +148 -0
- basic_memory-0.22.1/src/basic_memory/mcp/clients/project.py +243 -0
- basic_memory-0.22.1/src/basic_memory/mcp/clients/resource.py +67 -0
- basic_memory-0.22.1/src/basic_memory/mcp/clients/schema.py +121 -0
- basic_memory-0.22.1/src/basic_memory/mcp/clients/search.py +81 -0
- basic_memory-0.22.1/src/basic_memory/mcp/project_context.py +1763 -0
- basic_memory-0.22.1/src/basic_memory/mcp/resources/discovery.py +17 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/build_context.py +307 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/canvas.py +164 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/chatgpt_tools.py +220 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/cloud_info.py +15 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/delete_note.py +482 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/edit_note.py +737 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/list_directory.py +176 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/move_note.py +994 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/project_management.py +739 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/read_content.py +332 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/read_note.py +560 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/recent_activity.py +616 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/release_notes.py +15 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/schema.py +537 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/search.py +1163 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/ui_sdk.py +136 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/view_note.py +83 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/workspaces.py +79 -0
- basic_memory-0.22.1/src/basic_memory/mcp/tools/write_note.py +421 -0
- basic_memory-0.22.1/src/basic_memory/models/knowledge.py +322 -0
- basic_memory-0.22.1/src/basic_memory/repository/embedding_provider_factory.py +225 -0
- basic_memory-0.22.1/src/basic_memory/repository/entity_repository.py +586 -0
- basic_memory-0.22.1/src/basic_memory/repository/fastembed_provider.py +325 -0
- basic_memory-0.22.1/src/basic_memory/repository/litellm_provider.py +230 -0
- basic_memory-0.22.1/src/basic_memory/repository/postgres_search_repository.py +1086 -0
- basic_memory-0.22.1/src/basic_memory/repository/project_repository.py +299 -0
- basic_memory-0.22.1/src/basic_memory/repository/search_index_row.py +105 -0
- basic_memory-0.22.1/src/basic_memory/repository/search_repository.py +163 -0
- basic_memory-0.22.1/src/basic_memory/repository/search_repository_base.py +2283 -0
- basic_memory-0.22.1/src/basic_memory/repository/sqlite_search_repository.py +1117 -0
- basic_memory-0.22.1/src/basic_memory/schemas/base.py +309 -0
- basic_memory-0.22.1/src/basic_memory/schemas/memory.py +295 -0
- basic_memory-0.22.1/src/basic_memory/schemas/search.py +150 -0
- basic_memory-0.22.1/src/basic_memory/schemas/v2/__init__.py +43 -0
- basic_memory-0.22.1/src/basic_memory/schemas/v2/entity.py +201 -0
- basic_memory-0.22.1/src/basic_memory/services/context_service.py +728 -0
- basic_memory-0.22.1/src/basic_memory/services/initialization.py +248 -0
- basic_memory-0.22.1/src/basic_memory/services/project_service.py +1201 -0
- basic_memory-0.22.1/src/basic_memory/services/search_service.py +989 -0
- basic_memory-0.22.1/src/basic_memory/sync/sync_service.py +1778 -0
- basic_memory-0.22.1/src/basic_memory/sync/watch_service.py +606 -0
- basic_memory-0.22.1/src/basic_memory/utils.py +853 -0
- basic_memory-0.22.1/test-int/bughunt_fixes/test_cli_tool_read_note_security_error.py +50 -0
- basic_memory-0.22.1/test-int/bughunt_fixes/test_cli_tool_recent_activity_page_size.py +76 -0
- basic_memory-0.22.1/test-int/bughunt_fixes/test_cli_tool_search_notes_category.py +73 -0
- basic_memory-0.22.1/test-int/bughunt_fixes/test_cli_tool_write_note_parity.py +193 -0
- basic_memory-0.22.1/test-int/bughunt_fixes/test_move_note_edge_cases.py +219 -0
- basic_memory-0.22.1/test-int/bughunt_fixes/test_navigation_pagination_integration.py +241 -0
- basic_memory-0.22.1/test-int/bughunt_fixes/test_parse_tags_comma_split_integration.py +81 -0
- basic_memory-0.22.1/test-int/cli/test_cli_tool_delete_note_integration.py +277 -0
- basic_memory-0.22.1/test-int/cli/test_cli_tool_write_note_type_integration.py +94 -0
- basic_memory-0.22.1/test-int/cli/test_routing_integration.py +306 -0
- basic_memory-0.22.1/test-int/cli/test_status_wait_integration.py +43 -0
- basic_memory-0.22.1/test-int/conftest.py +503 -0
- basic_memory-0.22.1/test-int/mcp/test_edit_note_integration.py +828 -0
- basic_memory-0.22.1/test-int/mcp/test_move_note_integration.py +994 -0
- basic_memory-0.22.1/test-int/mcp/test_observation_permalink_collision_integration.py +141 -0
- basic_memory-0.22.1/test-int/mcp/test_param_aliases_integration.py +605 -0
- basic_memory-0.22.1/test-int/mcp/test_project_management_integration.py +708 -0
- basic_memory-0.22.1/test-int/mcp/test_search_integration.py +551 -0
- basic_memory-0.22.1/test-int/mcp/test_search_note_types_case_insensitive.py +98 -0
- basic_memory-0.22.1/test-int/mcp/test_write_note_integration.py +612 -0
- basic_memory-0.22.1/test-int/mcp/test_write_note_type_integration.py +154 -0
- basic_memory-0.22.1/test-int/semantic/litellm_live_harness.py +401 -0
- basic_memory-0.22.1/test-int/semantic/test_embedding_provider_reuse.py +123 -0
- basic_memory-0.22.1/test-int/semantic/test_litellm_live_harness.py +125 -0
- basic_memory-0.22.1/test-int/semantic/test_litellm_live_models.py +55 -0
- basic_memory-0.22.1/test-int/test_embedding_status_vec0.py +181 -0
- basic_memory-0.22.1/test-int/test_postgres_dispose_cycle.py +69 -0
- basic_memory-0.22.1/tests/api/v2/test_knowledge_router.py +1472 -0
- basic_memory-0.22.1/tests/api/v2/test_memory_hydration.py +285 -0
- basic_memory-0.22.1/tests/api/v2/test_project_router.py +557 -0
- basic_memory-0.22.1/tests/cli/cloud/test_project_sync_command.py +748 -0
- basic_memory-0.22.1/tests/cli/cloud/test_rclone_config_and_bmignore_filters.py +151 -0
- basic_memory-0.22.1/tests/cli/test_auto_update.py +419 -0
- basic_memory-0.22.1/tests/cli/test_ci_commands.py +524 -0
- basic_memory-0.22.1/tests/cli/test_cli_exit.py +149 -0
- basic_memory-0.22.1/tests/cli/test_cli_schema.py +302 -0
- basic_memory-0.22.1/tests/cli/test_cli_telemetry.py +62 -0
- basic_memory-0.22.1/tests/cli/test_cli_tool_json_output.py +936 -0
- basic_memory-0.22.1/tests/cli/test_db_reindex.py +334 -0
- basic_memory-0.22.1/tests/cli/test_json_output.py +551 -0
- basic_memory-0.22.1/tests/cli/test_man_command.py +95 -0
- basic_memory-0.22.1/tests/cli/test_status_wait_timeout.py +55 -0
- basic_memory-0.22.1/tests/cli/test_workspace_stub.py +31 -0
- basic_memory-0.22.1/tests/conftest.py +792 -0
- basic_memory-0.22.1/tests/db/test_memory_db_session_isolation.py +93 -0
- basic_memory-0.22.1/tests/db/test_uvloop_policy.py +83 -0
- basic_memory-0.22.1/tests/indexing/test_batch_indexer.py +869 -0
- basic_memory-0.22.1/tests/mcp/clients/__init__.py +0 -0
- basic_memory-0.22.1/tests/mcp/clients/test_clients.py +422 -0
- basic_memory-0.22.1/tests/mcp/test_async_client_modes.py +659 -0
- basic_memory-0.22.1/tests/mcp/test_client_schema.py +244 -0
- basic_memory-0.22.1/tests/mcp/test_project_context.py +3294 -0
- basic_memory-0.22.1/tests/mcp/test_tool_build_context.py +306 -0
- basic_memory-0.22.1/tests/mcp/test_tool_cloud_discovery.py +25 -0
- basic_memory-0.22.1/tests/mcp/test_tool_contracts.py +176 -0
- basic_memory-0.22.1/tests/mcp/test_tool_edit_note.py +1530 -0
- basic_memory-0.22.1/tests/mcp/test_tool_json_output_modes.py +419 -0
- basic_memory-0.22.1/tests/mcp/test_tool_move_note.py +1302 -0
- basic_memory-0.22.1/tests/mcp/test_tool_read_note.py +1303 -0
- basic_memory-0.22.1/tests/mcp/test_tool_search.py +2275 -0
- basic_memory-0.22.1/tests/mcp/test_tool_telemetry.py +287 -0
- basic_memory-0.22.1/tests/mcp/test_tool_write_note.py +1513 -0
- basic_memory-0.22.1/tests/repository/test_entity_repository.py +1319 -0
- basic_memory-0.22.1/tests/repository/test_fastembed_provider.py +673 -0
- basic_memory-0.22.1/tests/repository/test_hybrid_fusion.py +334 -0
- basic_memory-0.22.1/tests/repository/test_litellm_provider.py +483 -0
- basic_memory-0.22.1/tests/repository/test_observation_repository.py +529 -0
- basic_memory-0.22.1/tests/repository/test_openai_provider.py +641 -0
- basic_memory-0.22.1/tests/repository/test_postgres_search_repository.py +1003 -0
- basic_memory-0.22.1/tests/repository/test_search_repository.py +1126 -0
- basic_memory-0.22.1/tests/repository/test_semantic_search_base.py +811 -0
- basic_memory-0.22.1/tests/repository/test_sqlite_vector_search_repository.py +678 -0
- basic_memory-0.22.1/tests/repository/test_vector_pagination.py +179 -0
- basic_memory-0.22.1/tests/repository/test_vector_threshold.py +468 -0
- basic_memory-0.22.1/tests/services/test_context_service.py +746 -0
- basic_memory-0.22.1/tests/services/test_initialization.py +304 -0
- basic_memory-0.22.1/tests/services/test_project_service.py +1667 -0
- basic_memory-0.22.1/tests/services/test_project_service_embedding_status.py +366 -0
- basic_memory-0.22.1/tests/services/test_search_service.py +1523 -0
- basic_memory-0.22.1/tests/sync/test_sync_service.py +1894 -0
- basic_memory-0.22.1/tests/sync/test_watch_service.py +655 -0
- basic_memory-0.22.1/tests/sync/test_watch_service_reload.py +443 -0
- basic_memory-0.22.1/tests/test_codex_plugin_package.py +130 -0
- basic_memory-0.22.1/tests/test_coerce.py +194 -0
- basic_memory-0.22.1/tests/test_config.py +1685 -0
- basic_memory-0.22.1/tests/test_rclone_commands.py +936 -0
- basic_memory-0.22.1/tests/test_update_versions.py +158 -0
- basic_memory-0.22.1/tests/utils/test_file_utils.py +608 -0
- basic_memory-0.22.1/tests/utils/test_parse_tags.py +73 -0
- basic_memory-0.22.1/uv.lock +4351 -0
- basic_memory-0.21.6/.claude/commands/release/beta.md +0 -95
- basic_memory-0.21.6/.claude/commands/release/release.md +0 -205
- basic_memory-0.21.6/.claude-plugin/marketplace.json +0 -29
- basic_memory-0.21.6/.github/workflows/claude-code-review.yml +0 -86
- basic_memory-0.21.6/.github/workflows/docker.yml +0 -61
- basic_memory-0.21.6/.github/workflows/test.yml +0 -294
- basic_memory-0.21.6/.gitignore +0 -67
- basic_memory-0.21.6/AGENTS.md +0 -512
- basic_memory-0.21.6/CHANGELOG.md +0 -2895
- basic_memory-0.21.6/PKG-INFO +0 -690
- basic_memory-0.21.6/README.md +0 -637
- basic_memory-0.21.6/docs/Docker.md +0 -365
- basic_memory-0.21.6/docs/character-handling.md +0 -241
- basic_memory-0.21.6/docs/cloud-cli.md +0 -926
- basic_memory-0.21.6/docs/semantic-search.md +0 -271
- basic_memory-0.21.6/integrations/hermes/__init__.py +0 -1874
- basic_memory-0.21.6/integrations/hermes/plugin.yaml +0 -11
- basic_memory-0.21.6/integrations/openclaw/MEMORY_TASK_FLOW.md +0 -156
- basic_memory-0.21.6/integrations/openclaw/package.json +0 -96
- basic_memory-0.21.6/justfile +0 -470
- basic_memory-0.21.6/plugins/claude-code/.claude-plugin/marketplace.json +0 -29
- basic_memory-0.21.6/plugins/claude-code/.claude-plugin/plugin.json +0 -9
- basic_memory-0.21.6/plugins/claude-code/CHANGELOG.md +0 -273
- basic_memory-0.21.6/plugins/claude-code/skills/bm-setup/SKILL.md +0 -226
- basic_memory-0.21.6/plugins/codex/.codex-plugin/plugin.json +0 -46
- basic_memory-0.21.6/pyproject.toml +0 -165
- basic_memory-0.21.6/scripts/update_versions.py +0 -185
- basic_memory-0.21.6/scripts/validate_skills.py +0 -72
- basic_memory-0.21.6/server.json +0 -31
- basic_memory-0.21.6/skills/DEVELOPMENT.md +0 -83
- basic_memory-0.21.6/skills/README.md +0 -134
- basic_memory-0.21.6/src/basic_memory/__init__.py +0 -7
- basic_memory-0.21.6/src/basic_memory/alembic/env.py +0 -217
- basic_memory-0.21.6/src/basic_memory/api/v2/routers/knowledge_router.py +0 -716
- basic_memory-0.21.6/src/basic_memory/api/v2/routers/project_router.py +0 -599
- basic_memory-0.21.6/src/basic_memory/api/v2/routers/search_router.py +0 -155
- basic_memory-0.21.6/src/basic_memory/api/v2/utils.py +0 -278
- basic_memory-0.21.6/src/basic_memory/cli/app.py +0 -112
- basic_memory-0.21.6/src/basic_memory/cli/auto_update.py +0 -389
- basic_memory-0.21.6/src/basic_memory/cli/commands/__init__.py +0 -30
- basic_memory-0.21.6/src/basic_memory/cli/commands/ci.py +0 -437
- basic_memory-0.21.6/src/basic_memory/cli/commands/cloud/bisync_commands.py +0 -120
- basic_memory-0.21.6/src/basic_memory/cli/commands/cloud/core_commands.py +0 -316
- basic_memory-0.21.6/src/basic_memory/cli/commands/cloud/project_sync.py +0 -403
- basic_memory-0.21.6/src/basic_memory/cli/commands/cloud/rclone_commands.py +0 -421
- basic_memory-0.21.6/src/basic_memory/cli/commands/cloud/rclone_config.py +0 -110
- basic_memory-0.21.6/src/basic_memory/cli/commands/command_utils.py +0 -109
- basic_memory-0.21.6/src/basic_memory/cli/commands/db.py +0 -450
- basic_memory-0.21.6/src/basic_memory/cli/commands/doctor.py +0 -156
- basic_memory-0.21.6/src/basic_memory/cli/commands/import_chatgpt.py +0 -89
- basic_memory-0.21.6/src/basic_memory/cli/commands/import_claude_conversations.py +0 -92
- basic_memory-0.21.6/src/basic_memory/cli/commands/import_claude_projects.py +0 -91
- basic_memory-0.21.6/src/basic_memory/cli/commands/import_memory_json.py +0 -92
- basic_memory-0.21.6/src/basic_memory/cli/commands/mcp.py +0 -116
- basic_memory-0.21.6/src/basic_memory/cli/commands/orphans.py +0 -93
- basic_memory-0.21.6/src/basic_memory/cli/commands/schema.py +0 -391
- basic_memory-0.21.6/src/basic_memory/cli/commands/status.py +0 -212
- basic_memory-0.21.6/src/basic_memory/cli/commands/tool.py +0 -780
- basic_memory-0.21.6/src/basic_memory/cli/main.py +0 -40
- basic_memory-0.21.6/src/basic_memory/config.py +0 -1133
- basic_memory-0.21.6/src/basic_memory/db.py +0 -439
- basic_memory-0.21.6/src/basic_memory/file_utils.py +0 -496
- basic_memory-0.21.6/src/basic_memory/ignore_utils.py +0 -302
- basic_memory-0.21.6/src/basic_memory/indexing/batch_indexer.py +0 -710
- basic_memory-0.21.6/src/basic_memory/mcp/async_client.py +0 -456
- basic_memory-0.21.6/src/basic_memory/mcp/clients/directory.py +0 -70
- basic_memory-0.21.6/src/basic_memory/mcp/clients/knowledge.py +0 -326
- basic_memory-0.21.6/src/basic_memory/mcp/clients/memory.py +0 -141
- basic_memory-0.21.6/src/basic_memory/mcp/clients/project.py +0 -229
- basic_memory-0.21.6/src/basic_memory/mcp/clients/resource.py +0 -63
- basic_memory-0.21.6/src/basic_memory/mcp/clients/schema.py +0 -113
- basic_memory-0.21.6/src/basic_memory/mcp/clients/search.py +0 -76
- basic_memory-0.21.6/src/basic_memory/mcp/project_context.py +0 -1622
- basic_memory-0.21.6/src/basic_memory/mcp/tools/build_context.py +0 -290
- basic_memory-0.21.6/src/basic_memory/mcp/tools/canvas.py +0 -162
- basic_memory-0.21.6/src/basic_memory/mcp/tools/chatgpt_tools.py +0 -216
- basic_memory-0.21.6/src/basic_memory/mcp/tools/cloud_info.py +0 -15
- basic_memory-0.21.6/src/basic_memory/mcp/tools/delete_note.py +0 -472
- basic_memory-0.21.6/src/basic_memory/mcp/tools/edit_note.py +0 -639
- basic_memory-0.21.6/src/basic_memory/mcp/tools/list_directory.py +0 -174
- basic_memory-0.21.6/src/basic_memory/mcp/tools/move_note.py +0 -884
- basic_memory-0.21.6/src/basic_memory/mcp/tools/project_management.py +0 -727
- basic_memory-0.21.6/src/basic_memory/mcp/tools/read_content.py +0 -330
- basic_memory-0.21.6/src/basic_memory/mcp/tools/read_note.py +0 -477
- basic_memory-0.21.6/src/basic_memory/mcp/tools/recent_activity.py +0 -608
- basic_memory-0.21.6/src/basic_memory/mcp/tools/release_notes.py +0 -15
- basic_memory-0.21.6/src/basic_memory/mcp/tools/schema.py +0 -531
- basic_memory-0.21.6/src/basic_memory/mcp/tools/search.py +0 -1021
- basic_memory-0.21.6/src/basic_memory/mcp/tools/ui_sdk.py +0 -132
- basic_memory-0.21.6/src/basic_memory/mcp/tools/view_note.py +0 -81
- basic_memory-0.21.6/src/basic_memory/mcp/tools/workspaces.py +0 -77
- basic_memory-0.21.6/src/basic_memory/mcp/tools/write_note.py +0 -365
- basic_memory-0.21.6/src/basic_memory/models/knowledge.py +0 -311
- basic_memory-0.21.6/src/basic_memory/repository/embedding_provider_factory.py +0 -161
- basic_memory-0.21.6/src/basic_memory/repository/entity_repository.py +0 -576
- basic_memory-0.21.6/src/basic_memory/repository/fastembed_provider.py +0 -138
- basic_memory-0.21.6/src/basic_memory/repository/postgres_search_repository.py +0 -1057
- basic_memory-0.21.6/src/basic_memory/repository/project_repository.py +0 -277
- basic_memory-0.21.6/src/basic_memory/repository/search_index_row.py +0 -103
- basic_memory-0.21.6/src/basic_memory/repository/search_repository.py +0 -142
- basic_memory-0.21.6/src/basic_memory/repository/search_repository_base.py +0 -2252
- basic_memory-0.21.6/src/basic_memory/repository/sqlite_search_repository.py +0 -1089
- basic_memory-0.21.6/src/basic_memory/schemas/base.py +0 -306
- basic_memory-0.21.6/src/basic_memory/schemas/memory.py +0 -292
- basic_memory-0.21.6/src/basic_memory/schemas/search.py +0 -146
- basic_memory-0.21.6/src/basic_memory/schemas/v2/__init__.py +0 -41
- basic_memory-0.21.6/src/basic_memory/schemas/v2/entity.py +0 -186
- basic_memory-0.21.6/src/basic_memory/services/context_service.py +0 -653
- basic_memory-0.21.6/src/basic_memory/services/initialization.py +0 -252
- basic_memory-0.21.6/src/basic_memory/services/project_service.py +0 -1153
- basic_memory-0.21.6/src/basic_memory/services/search_service.py +0 -983
- basic_memory-0.21.6/src/basic_memory/sync/sync_service.py +0 -1767
- basic_memory-0.21.6/src/basic_memory/sync/watch_service.py +0 -606
- basic_memory-0.21.6/src/basic_memory/utils.py +0 -753
- basic_memory-0.21.6/test-int/cli/test_routing_integration.py +0 -279
- basic_memory-0.21.6/test-int/conftest.py +0 -496
- basic_memory-0.21.6/test-int/mcp/test_edit_note_integration.py +0 -790
- basic_memory-0.21.6/test-int/mcp/test_move_note_integration.py +0 -771
- basic_memory-0.21.6/test-int/mcp/test_param_aliases_integration.py +0 -565
- basic_memory-0.21.6/test-int/mcp/test_project_management_integration.py +0 -709
- basic_memory-0.21.6/test-int/mcp/test_search_integration.py +0 -499
- basic_memory-0.21.6/test-int/mcp/test_write_note_integration.py +0 -524
- basic_memory-0.21.6/tests/api/v2/test_knowledge_router.py +0 -957
- basic_memory-0.21.6/tests/api/v2/test_memory_hydration.py +0 -279
- basic_memory-0.21.6/tests/api/v2/test_project_router.py +0 -450
- basic_memory-0.21.6/tests/ci/test_project_updates.py +0 -718
- basic_memory-0.21.6/tests/cli/cloud/test_project_sync_command.py +0 -366
- basic_memory-0.21.6/tests/cli/cloud/test_rclone_config_and_bmignore_filters.py +0 -113
- basic_memory-0.21.6/tests/cli/test_auto_update.py +0 -404
- basic_memory-0.21.6/tests/cli/test_ci_commands.py +0 -524
- basic_memory-0.21.6/tests/cli/test_cli_exit.py +0 -105
- basic_memory-0.21.6/tests/cli/test_cli_schema.py +0 -302
- basic_memory-0.21.6/tests/cli/test_cli_telemetry.py +0 -53
- basic_memory-0.21.6/tests/cli/test_cli_tool_json_output.py +0 -737
- basic_memory-0.21.6/tests/cli/test_db_reindex.py +0 -322
- basic_memory-0.21.6/tests/cli/test_json_output.py +0 -420
- basic_memory-0.21.6/tests/conftest.py +0 -785
- basic_memory-0.21.6/tests/indexing/test_batch_indexer.py +0 -797
- basic_memory-0.21.6/tests/mcp/clients/test_clients.py +0 -405
- basic_memory-0.21.6/tests/mcp/test_async_client_modes.py +0 -620
- basic_memory-0.21.6/tests/mcp/test_client_schema.py +0 -244
- basic_memory-0.21.6/tests/mcp/test_project_context.py +0 -2991
- basic_memory-0.21.6/tests/mcp/test_tool_build_context.py +0 -256
- basic_memory-0.21.6/tests/mcp/test_tool_cloud_discovery.py +0 -20
- basic_memory-0.21.6/tests/mcp/test_tool_contracts.py +0 -156
- basic_memory-0.21.6/tests/mcp/test_tool_edit_note.py +0 -1265
- basic_memory-0.21.6/tests/mcp/test_tool_json_output_modes.py +0 -384
- basic_memory-0.21.6/tests/mcp/test_tool_move_note.py +0 -1154
- basic_memory-0.21.6/tests/mcp/test_tool_read_note.py +0 -1003
- basic_memory-0.21.6/tests/mcp/test_tool_search.py +0 -1753
- basic_memory-0.21.6/tests/mcp/test_tool_telemetry.py +0 -284
- basic_memory-0.21.6/tests/mcp/test_tool_write_note.py +0 -1313
- basic_memory-0.21.6/tests/repository/test_entity_repository.py +0 -1282
- basic_memory-0.21.6/tests/repository/test_fastembed_provider.py +0 -150
- basic_memory-0.21.6/tests/repository/test_hybrid_fusion.py +0 -304
- basic_memory-0.21.6/tests/repository/test_observation_repository.py +0 -468
- basic_memory-0.21.6/tests/repository/test_openai_provider.py +0 -580
- basic_memory-0.21.6/tests/repository/test_postgres_search_repository.py +0 -818
- basic_memory-0.21.6/tests/repository/test_search_repository.py +0 -1046
- basic_memory-0.21.6/tests/repository/test_semantic_search_base.py +0 -810
- basic_memory-0.21.6/tests/repository/test_sqlite_vector_search_repository.py +0 -562
- basic_memory-0.21.6/tests/repository/test_vector_pagination.py +0 -177
- basic_memory-0.21.6/tests/repository/test_vector_threshold.py +0 -466
- basic_memory-0.21.6/tests/services/test_context_service.py +0 -385
- basic_memory-0.21.6/tests/services/test_initialization.py +0 -253
- basic_memory-0.21.6/tests/services/test_project_service.py +0 -1575
- basic_memory-0.21.6/tests/services/test_project_service_embedding_status.py +0 -335
- basic_memory-0.21.6/tests/services/test_search_service.py +0 -1387
- basic_memory-0.21.6/tests/sync/test_sync_service.py +0 -1814
- basic_memory-0.21.6/tests/sync/test_watch_service.py +0 -652
- basic_memory-0.21.6/tests/sync/test_watch_service_reload.py +0 -359
- basic_memory-0.21.6/tests/test_codex_plugin_package.py +0 -57
- basic_memory-0.21.6/tests/test_coerce.py +0 -57
- basic_memory-0.21.6/tests/test_config.py +0 -1592
- basic_memory-0.21.6/tests/test_rclone_commands.py +0 -564
- basic_memory-0.21.6/tests/test_update_versions.py +0 -147
- basic_memory-0.21.6/tests/utils/test_file_utils.py +0 -564
- basic_memory-0.21.6/tests/utils/test_parse_tags.py +0 -68
- basic_memory-0.21.6/uv.lock +0 -3715
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/plugins/marketplace.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/adversarial-review/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/adversarial-review/prompts/refute.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/adversarial-review/prompts/review.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/adversarial-review/schemas/findings.schema.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/adversarial-review/schemas/verdicts.schema.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/instrumentation/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/javascript/frameworks.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/javascript/patterns.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/python/integrations.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/python/logging-patterns.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.agents/skills/instrumentation/references/rust/patterns.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.claude/commands/release/changelog.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.claude/commands/release/release-check.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.claude/commands/spec.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.claude/commands/test-live.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.claude/settings.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.dockerignore +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.env.example +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/ISSUE_TEMPLATE/documentation.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/basic-memory/SOUL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/basic-memory/config.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/basic-memory/memory-ci-capture.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/dependabot.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/workflows/basic-memory.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/workflows/claude-issue-triage.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/workflows/claude.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/workflows/consolidated-packages.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/workflows/dev-release.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/workflows/pr-title.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.github/workflows/release.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/.python-version +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/CITATION.cff +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/CLA.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/CLAUDE.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/CODE_OF_CONDUCT.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/CONTRIBUTING.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/Dockerfile +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/LICENSE +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/NOTE-FORMAT.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/SECURITY.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docker-compose-postgres.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docker-compose.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/ARCHITECTURE.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/NOTE-FORMAT.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/SPEC-PER-PROJECT-ROUTING.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/ai-assistant-guide-extended.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/cloud-semantic-search-value.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/logfire-instrumentation-strategy.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/mcp-ui-bakeoff-instructions.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/metadata-search.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/post-v0.18.0-test-plan.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/releases/v0.19.0.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/semantic-search-test-log.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/specs/SPEC-LOCAL-PLUS-PUBLISH.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/specs/SPEC-SCHEMA-IMPL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/specs/SPEC-SCHEMA.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/docs/testing-coverage.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/.coveragerc +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/.github/workflows/integration.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/.github/workflows/pr-title.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/.github/workflows/release.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/.github/workflows/test.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/.gitignore +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/CHANGELOG.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/LICENSE +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/MONKEYPATCH.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/README.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/justfile +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/pytest.ini +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/requirements-dev.txt +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/skill/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/conftest.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/stubs/agent/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/stubs/agent/memory_provider.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/stubs/tools/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/stubs/tools/registry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/test_actor.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/test_capture.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/test_commands.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/test_helpers.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/test_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/test_prefetch.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/hermes/tests/test_provider.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/.githooks/pre-commit +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/.github/workflows/ci.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/.github/workflows/release.yml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/.gitignore +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/AGENTS.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/BASIC_MEMORY.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/CLAUDE.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/CONTEXT_ENGINE_PLAN.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/DEVELOPMENT.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/LICENSE +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/README.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/SECURITY.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/biome.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/bm-client.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/bm-client.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/bun.lock +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/commands/cli.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/commands/skills.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/commands/skills.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/commands/slash.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/config.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/config.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/context-engine/basic-memory-context-engine.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/context-engine/basic-memory-context-engine.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/hooks/capture.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/hooks/capture.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/hooks/recall.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/hooks/recall.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/index.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/index.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/integration/bm-client.integration.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/justfile +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/logger.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/logger.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/openclaw.plugin.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/schema/conversation-schema.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/schema/task-schema.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/scripts/bm-local.sh +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/scripts/fetch-skills.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/scripts/setup-bm.sh +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/build-context.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/build-context.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/delete-note.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/delete-note.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/edit-note.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/edit-note.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/list-memory-projects.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/list-memory-projects.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/list-workspaces.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/list-workspaces.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/memory-provider.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/memory-provider.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/move-note.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/move-note.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/read-note.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/read-note.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-diff.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-diff.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-infer.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-infer.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-validate.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/schema-validate.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/search-notes.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/search-notes.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/write-note.test.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tools/write-note.ts +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tsconfig.build.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/integrations/openclaw/tsconfig.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/llms-install.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/DESIGN.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/README.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/docs/architecture.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/docs/getting-started.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/docs/why-combine-memory.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/hooks/hooks.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/hooks/pre-compact.sh +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/hooks/session-start.sh +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/justfile +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/output-styles/basic-memory.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/schemas/decision.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/schemas/session.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/schemas/task.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/settings.example.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/skills/bm-remember/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/skills/bm-share/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/claude-code/skills/bm-status/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/.mcp.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/DEVELOPMENT.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/README.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/assets/app-icon.png +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/assets/logo.png +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/hooks/hooks.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/hooks/pre-compact.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/hooks/pre-compact.sh +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/hooks/session-start.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/hooks/session-start.sh +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/justfile +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/schemas/codex-session.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/schemas/decision.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/schemas/task.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-checkpoint/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-checkpoint/agents/openai.yaml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-checkpoint/assets/icon.svg +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-decide/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-decide/agents/openai.yaml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-decide/assets/icon.svg +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-orient/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-orient/agents/openai.yaml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-orient/assets/icon.svg +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-remember/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-remember/agents/openai.yaml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-remember/assets/icon.svg +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-setup/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-setup/agents/openai.yaml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-setup/assets/icon.svg +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-share/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-share/agents/openai.yaml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-share/assets/icon.svg +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-status/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-status/agents/openai.yaml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/plugins/codex/skills/bm-status/assets/icon.svg +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/scripts/validate_claude_plugin.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/scripts/validate_codex_plugin.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/scripts/validate_hermes_plugin.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/AGENTS.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/CLAUDE.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/justfile +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-capture/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-ci-capture/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-continue/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-curate/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-defrag/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-ingest/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-lifecycle/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-literary-analysis/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-metadata-search/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-notes/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-reflect/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-research/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-schema/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/memory-tasks/SKILL.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills/skills-lock.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/skills-lock.json +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/smithery.yaml +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/alembic.ini +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/migrations.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/script.py.mako +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/314f1ea54dc4_add_postgres_full_text_search_support_.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/3dae7c7b1564_initial_schema.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/502b60eaa905_remove_required_from_entity_permalink.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/5fe1ab1ccebe_add_projects_table.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/647e7a75e2cd_project_constraint_fix.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/6830751f5fb6_merge_multiple_heads.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/9d9c1cb7d8f5_add_mtime_and_size_columns_to_entity_.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/a1b2c3d4e5f6_fix_project_foreign_keys.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/a2b3c4d5e6f7_add_search_index_entity_cascade.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/b3c3938bacdb_relation_to_name_unique_index.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/cc7172b46608_update_search_index_schema.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/d7e8f9a0b1c2_add_structured_metadata_indexes.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/e7e1f4367280_add_scan_watermark_tracking_to_project.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/f8a9b2c3d4e5_add_pg_trgm_for_fuzzy_link_resolution.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/g9a0b3c4d5e6_add_external_id_to_project_and_entity.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/h1b2c3d4e5f6_add_postgres_vector_search_tables.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/i2c3d4e5f6g7_auto_backfill_semantic_embeddings.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/j3d4e5f6g7h8_rename_entity_type_to_note_type.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/k4e5f6g7h8i9_add_created_by_and_last_updated_by_to_entity.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/l5g6h7i8j9k0_add_note_content_table.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/m6h7i8j9k0l1_add_vector_sync_fingerprints.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/alembic/versions/n7i8j9k0l1m2_cleanup_sqlite_search_orphans.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/app.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/container.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/template_loader.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/v2/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/directory_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/importer_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/memory_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/prompt_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/resource_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/api/v2/routers/schema_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/ci/README.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/ci/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/ci/project_updates.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/analytics.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/auth.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/api_client.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/cloud_utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/rclone_installer.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/restore.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/schemas.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/snapshot.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/upload.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/upload_command.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/cloud/workspace.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/format.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/project.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/routing.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/commands/update.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/container.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/cli/promo.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/deps/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/deps/config.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/deps/db.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/deps/importers.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/deps/projects.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/deps/repositories.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/deps/services.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/deps.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/importers/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/importers/base.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/importers/chatgpt_importer.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/importers/claude_conversations_importer.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/importers/claude_projects_importer.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/importers/memory_json_importer.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/importers/utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/indexing/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/indexing/batching.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/indexing/models.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/markdown/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/markdown/entity_parser.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/markdown/markdown_processor.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/markdown/plugins.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/markdown/schemas.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/markdown/utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/clients/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/container.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/formatting.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/ai_assistant_guide.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/continue_conversation.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/recent_activity.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/search.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/prompts/utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/ai_assistant_guide.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/cloud_info.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/project_info.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/release_notes.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/resources/ui.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/server.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/tools/utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/note-preview-mcp-ui.html +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/note-preview-tool-ui.html +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/note-preview-vanilla.html +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/search-results-mcp-ui.html +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/search-results-tool-ui.html +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/html/search-results-vanilla.html +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/sdk.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/mcp/ui/templates.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/models/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/models/base.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/models/project.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/models/search.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/project_resolver.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/embedding_provider.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/metadata_filters.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/note_content_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/observation_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/openai_provider.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/project_info_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/relation_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/repository/semantic_errors.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/runtime.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schema/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schema/diff.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schema/inference.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schema/parser.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schema/resolver.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schema/validator.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/cloud.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/delete.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/directory.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/importer.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/project_info.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/prompt.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/request.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/response.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/schema.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/sync_report.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/v2/graph.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/schemas/v2/resource.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/services/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/services/directory_service.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/services/entity_service.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/services/exceptions.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/services/file_service.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/services/link_resolver.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/services/service.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/sync/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/sync/background_sync.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/sync/coordinator.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/templates/prompts/continue_conversation.hbs +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/templates/prompts/search.hbs +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/src/basic_memory/workspace_context.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/BENCHMARKS.md +0 -0
- {basic_memory-0.21.6/test-int/semantic → basic_memory-0.22.1/test-int/bughunt_fixes}/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/cli/test_cli_tool_edit_note_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/cli/test_cli_tool_json_failure_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/cli/test_cli_tool_json_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/cli/test_project_commands_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/cli/test_search_notes_meta_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/cli/test_version_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/compare_search_benchmarks.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-01.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-02.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-03.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-04.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-05.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-06.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-07.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-08.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-09.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-10.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-11.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-12.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-13.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-14.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-15.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-16.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-17.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-18.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-19.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/people/drift-person-20.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/drift/schema/Person.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/array-single.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/empty-note.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/explicit-overrides-type.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/inline-and-type.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/no-frontmatter.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/relation-only.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/type-no-schema.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/edge-cases/unicode-fields.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/ada-lovelace.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/alan-turing.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/anders-hejlsberg.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/andrej-karpathy.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/barbara-liskov.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/bjarne-stroustrup.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/brendan-eich.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/claude-shannon.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/dennis-ritchie.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/dijkstra.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/donald-knuth.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/fei-fei-li.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/geoffrey-hinton.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/grace-hopper.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/guido-van-rossum.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/james-gosling.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/john-carmack.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/ken-thompson.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/larry-page.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/leslie-lamport.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/linus-torvalds.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/margaret-hamilton.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/rasmus-lerdorf.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/richard-stallman.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/rob-pike.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/satoshi-nakamoto.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/tim-berners-lee.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/vint-cerf.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/yann-lecun.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/inference/people/yukihiro-matsumoto.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/Book.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/Meeting.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/Person.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/SoftwareProject.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/schemas/StrictSchema.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/basic-memory.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/explicit-ref-note.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/no-schema-note.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/paul-graham.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/rich-hickey.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/valid/standup-2024-01-15.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/warnings/extra-observations.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/warnings/missing-multiple.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/warnings/missing-required.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/fixtures/schema/warnings/wrong-enum-value.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_build_context_underscore.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_build_context_validation.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_chatgpt_tools_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_default_project_mode_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_delete_directory_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_delete_note_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_lifespan_shutdown_sync_task_cancellation_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_list_directory_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_long_relation_type_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_move_directory_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_output_format_json_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_pagination_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_permalink_collision_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_project_state_sync_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_read_content_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_read_note_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_single_project_mcp_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_smoke_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_string_params_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_ui_sdk_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/mcp/test_workspace_permalink_integration.py +0 -0
- {basic_memory-0.21.6/tests/markdown → basic_memory-0.22.1/test-int/semantic}/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/semantic/conftest.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/semantic/corpus.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/semantic/metrics.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/semantic/report.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/semantic/test_multiterm_semantic_queries.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/semantic/test_search_diagnostics.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/semantic/test_semantic_coverage.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/semantic/test_semantic_quality.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_db_wal_mode.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_disable_permalinks_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_schema/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_schema/conftest.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_schema/helpers.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_schema/test_diff_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_schema/test_inference_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_schema/test_parser_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_schema/test_validator_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_search_performance_benchmark.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/test-int/test_sync_batching_integration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/Non-MarkdownFileSupport.pdf +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/README.md +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/Screenshot.png +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/conftest.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_directory_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_importer_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_knowledge_router_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_memory_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_orphan_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_prompt_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_resource_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_schema_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_search_hydration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_search_router.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_search_router_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_utils_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/api/v2/test_workspace_permalink_headers.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/cloud/test_cloud_api_client_and_utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/cloud/test_rclone_installer.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/cloud/test_upload_command_routing.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/cloud/test_upload_path.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/conftest.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_analytics.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_auth_cli_auth.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_cli_container.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_cli_tool_exit.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_cli_tools.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_cloud_authentication.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_cloud_promo.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_cloud_status.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_db_reset_exit.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_db_reset_zombie_check.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_ignore_utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_import_chatgpt.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_import_claude_conversations.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_import_claude_projects.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_import_memory_json.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_orphans_command.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_project_add_with_local_path.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_project_info_cloud_status.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_project_info_errors.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_project_list_and_ls.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_project_set_cloud_local.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_restore_commands.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_routing.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_snapshot_commands.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_update_command.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_upload.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/cli/test_workspace_commands.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/db/test_issue_254_foreign_key_constraints.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/deps/test_task_failure_callback.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/importers/test_conversation_indexing.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/importers/test_importer_base.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/importers/test_importer_utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/indexing/test_batching.py +0 -0
- {basic_memory-0.21.6/tests/mcp/clients → basic_memory-0.22.1/tests/markdown}/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_date_frontmatter_parsing.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_entity_parser.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_entity_parser_error_handling.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_markdown_plugins.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_markdown_processor.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_markdown_utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_observation_edge_cases.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_parser_edge_cases.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_relation_edge_cases.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/markdown/test_task_detection.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/conftest.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_async_client_force_local.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_async_client_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_client_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_mcp_container.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_obsidian_yaml_formatting.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_permalink_collision_file_overwrite.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_project_context_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_prompt_tool_delegation.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_prompts.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_recent_activity_prompt_modes.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_resources.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_server_lifespan_branches.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_server_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_canvas.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_delete_note.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_list_directory.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_project_management.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_read_content.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_recent_activity.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_resource.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_schema.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_utils_cloud_auth.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_view_note.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_workspace_management.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_write_note_kebab_filenames.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_tool_write_note_metadata.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_ui_resources.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_ui_sdk.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_ui_templates.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/test_workspace_permalink_resolution.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/tools/test_chatgpt_tools.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/mcp/tools/test_search_notes_multi_project.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_distance_to_similarity.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_entity_repository_upsert.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_entity_upsert_issue_187.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_metadata_filters.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_metadata_filters_edge_cases.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_note_content_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_postgres_search_repository_unit.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_project_info_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_project_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_relation_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_repository.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_search_index_row.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_search_repository_edit_bug_fix.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/repository/test_search_text_with_metadata_filters.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schema/__init__.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schema/test_diff.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schema/test_inference.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schema/test_parser.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schema/test_resolver.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schema/test_validator.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schemas/test_base_timeframe_minimum.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schemas/test_memory_serialization.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schemas/test_memory_url.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schemas/test_memory_url_validation.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schemas/test_relation_response_reference_resolution.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schemas/test_schemas.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/schemas/test_search.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_directory_service.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_entity_service.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_entity_service_disable_permalinks.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_entity_service_prepare.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_entity_service_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_entity_service_write_result.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_file_service.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_initialization_cloud_mode_branches.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_link_resolver.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_project_removal_bug.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_project_service_cloud_info.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_project_service_operations.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_search_service_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_semantic_search.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_task_scheduler_semantic.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/services/test_upsert_entity_optimization.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_character_conflicts.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_coordinator.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_sync_one_markdown_file.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_sync_service_batching.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_sync_service_incremental.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_sync_service_subprocess.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_sync_service_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_sync_wikilink_issue.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_tmp_files.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_watch_service_atomic_adds.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_watch_service_edge_cases.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/sync/test_watch_service_stress.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_alembic_env.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_deps.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_note_content_migration.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_permalink_utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_pr_title_workflow.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_production_cascade_delete.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_project_resolver.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_runtime.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/test_telemetry.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/utils/test_frontmatter_obsidian_compatible.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/utils/test_permalink_formatting.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/utils/test_setup_logging.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/utils/test_timezone_utils.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/utils/test_utf8_handling.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/utils/test_validate_project_path.py +0 -0
- {basic_memory-0.21.6 → basic_memory-0.22.1}/tests/utils/test_workspace_context.py +0 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: code-review
|
|
3
|
+
description: Use when reviewing Basic Machines code for house style, architecture risk, pre-merge hardening, or whether a change fits basic-memory/basic-memory-cloud conventions.
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Basic Machines Review
|
|
8
|
+
|
|
9
|
+
Use this skill for repo-local review passes where ordinary code review needs Basic Machines
|
|
10
|
+
house style and architecture judgment. Report findings only; do not edit code unless the user
|
|
11
|
+
asks you to fix specific findings.
|
|
12
|
+
|
|
13
|
+
## Scope
|
|
14
|
+
|
|
15
|
+
Review the current diff or named files against:
|
|
16
|
+
|
|
17
|
+
- The repo's `AGENTS.md` / `CLAUDE.md`
|
|
18
|
+
- `docs/ENGINEERING_STYLE.md`
|
|
19
|
+
- The touched code paths and tests
|
|
20
|
+
|
|
21
|
+
Apply only the guidance for the active repo. In `basic-memory`, prioritize local-first
|
|
22
|
+
file/database/MCP boundaries. In `basic-memory-cloud`, prioritize tenant/workspace isolation,
|
|
23
|
+
cloud worker behavior, and web-v2 state/runtime boundaries.
|
|
24
|
+
|
|
25
|
+
## Review Rubric
|
|
26
|
+
|
|
27
|
+
Report only concrete, falsifiable risks:
|
|
28
|
+
|
|
29
|
+
- **Cognitive load:** Is the change harder to understand than the problem requires?
|
|
30
|
+
- **Change propagation:** Will one product change force edits across unrelated layers?
|
|
31
|
+
- **Knowledge duplication:** Is the same rule encoded in multiple places that can drift?
|
|
32
|
+
- **Accidental complexity:** Did the change add abstractions, fallbacks, or state without need?
|
|
33
|
+
- **Dependency direction:** Are API/MCP/CLI, services, repositories, and UI stores respecting
|
|
34
|
+
their intended boundaries?
|
|
35
|
+
- **Domain model distortion:** Do names and types still match the product concept, or did a
|
|
36
|
+
transport/storage detail leak into the domain?
|
|
37
|
+
- **Test oracle quality:** Would the tests fail for the bug or regression the change claims to
|
|
38
|
+
protect against?
|
|
39
|
+
|
|
40
|
+
## House Rules To Check Explicitly
|
|
41
|
+
|
|
42
|
+
- No speculative `getattr(obj, "attr", default)` for unknown model shapes.
|
|
43
|
+
- No broad exception swallowing, warning-only failure paths, or hidden fallback behavior.
|
|
44
|
+
- No casts or `Any` that hide an unclear type relationship.
|
|
45
|
+
- Dataclasses for internal value/result objects; Pydantic at validation/serialization
|
|
46
|
+
boundaries.
|
|
47
|
+
- Narrow `Protocol`s when only a capability is needed.
|
|
48
|
+
- Explicit async/resource ownership, cancellation, and cleanup.
|
|
49
|
+
- Meaningful regression tests or verification for risky changes.
|
|
50
|
+
- Comments explain why, not what.
|
|
51
|
+
|
|
52
|
+
## Reporting Format
|
|
53
|
+
|
|
54
|
+
Lead with findings ordered by severity. Each finding should include:
|
|
55
|
+
|
|
56
|
+
| Severity | Use for |
|
|
57
|
+
| -------- | ------- |
|
|
58
|
+
| `high` | A likely correctness, security, data-loss, or tenant/workspace isolation failure |
|
|
59
|
+
| `medium` | A concrete maintainability or boundary risk that can cause future defects |
|
|
60
|
+
| `low` | A minor consistency issue, ambiguous guidance, or review-only cleanup |
|
|
61
|
+
|
|
62
|
+
```text
|
|
63
|
+
severity | file:line | risk category | claim
|
|
64
|
+
Why: concrete behavior or code path that proves the risk.
|
|
65
|
+
Fix: smallest practical change, or "none obvious" if the risk needs product input.
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
If there are no findings, say so and note any verification gaps that remain.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: fix-pr-issues
|
|
3
|
+
description: Use when addressing Basic Memory pull request feedback, failed checks, or BM Bossbot blockers from Codex.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Fix Basic Memory PR Issues
|
|
7
|
+
|
|
8
|
+
Resolve PR feedback and failed checks, then wait for BM Bossbot to approve the
|
|
9
|
+
new head SHA. This skill never merges a PR.
|
|
10
|
+
|
|
11
|
+
## Gather
|
|
12
|
+
|
|
13
|
+
1. Identify the PR:
|
|
14
|
+
- `gh pr view --json number,url,headRefOid,mergeStateStatus,statusCheckRollup`
|
|
15
|
+
|
|
16
|
+
2. Collect feedback:
|
|
17
|
+
- PR comments and review summaries
|
|
18
|
+
- inline review comments and unresolved review threads
|
|
19
|
+
- failed GitHub Actions jobs and relevant logs
|
|
20
|
+
- the managed `BM_BOSSBOT_SUMMARY` block in the PR body
|
|
21
|
+
|
|
22
|
+
3. Build a short issue ledger:
|
|
23
|
+
- source
|
|
24
|
+
- concrete problem
|
|
25
|
+
- expected fix
|
|
26
|
+
- verification needed
|
|
27
|
+
|
|
28
|
+
## Fix
|
|
29
|
+
|
|
30
|
+
1. Address one ledger item at a time.
|
|
31
|
+
2. Read each file in full before editing it.
|
|
32
|
+
3. Keep diffs narrow and preserve unrelated user changes.
|
|
33
|
+
4. Run the smallest meaningful verification first, then widen as needed.
|
|
34
|
+
5. Commit with `git commit -s` when code or docs changed.
|
|
35
|
+
|
|
36
|
+
## Push And Recheck
|
|
37
|
+
|
|
38
|
+
1. Push the branch.
|
|
39
|
+
2. Watch checks for the new `headRefOid`.
|
|
40
|
+
3. Wait for the required `BM Bossbot Approval` status to pass on that exact SHA.
|
|
41
|
+
4. If BM Bossbot reviews an older SHA, treat the approval as stale and keep
|
|
42
|
+
waiting for the current one.
|
|
43
|
+
|
|
44
|
+
## Reply
|
|
45
|
+
|
|
46
|
+
For each addressed comment or blocker, reply with the fix commit, verification
|
|
47
|
+
run, and current BM Bossbot status. Do not resolve or dismiss substantive
|
|
48
|
+
feedback without evidence.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Fix PR Issues"
|
|
3
|
+
short_description: "Address PR feedback and BM Bossbot blockers"
|
|
4
|
+
icon_small: "./assets/icon.svg"
|
|
5
|
+
icon_large: "./assets/icon.svg"
|
|
6
|
+
brand_color: "#2563EB"
|
|
7
|
+
default_prompt: "Use $fix-pr-issues to address PR feedback and wait for BM Bossbot Approval on the latest head SHA."
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: infographics
|
|
3
|
+
description: Use when generating Basic Memory PR, changelog, release, or weekly images from Codex.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Basic Memory Images
|
|
7
|
+
|
|
8
|
+
Generate repository visuals with evidence-grounded content and canonical output
|
|
9
|
+
paths. The file and marker names still say "infographic" for compatibility, but
|
|
10
|
+
PR generation is image-first: scene, poster, painting, photograph, cover,
|
|
11
|
+
tableau, staged artifact, or another editorial visual moment that describes the
|
|
12
|
+
intent of the PR. PR images are non-gating BM Bossbot artifacts; changelog and
|
|
13
|
+
release-summary images are manual evidence-pack workflows.
|
|
14
|
+
|
|
15
|
+
## Output Contract
|
|
16
|
+
|
|
17
|
+
- Base output directory: `docs/assets/infographics/`
|
|
18
|
+
- PR image: `docs/assets/infographics/pr-<number>.webp`
|
|
19
|
+
- Changelog image: `docs/assets/infographics/changelog.webp`
|
|
20
|
+
- Weekly image:
|
|
21
|
+
- This is always a 2-Week Retro window: previous ISO week through current ISO
|
|
22
|
+
week (`start-week = current-week - 1`, `end-week = current-week`).
|
|
23
|
+
- Same year window: `docs/assets/infographics/<year>-w<start-week>-w<end-week>.webp`
|
|
24
|
+
- Cross-year window:
|
|
25
|
+
`docs/assets/infographics/<start-year>-w<start-week>-<end-year>-w<end-week>.webp`
|
|
26
|
+
|
|
27
|
+
## PR Mode
|
|
28
|
+
|
|
29
|
+
PR mode uses the BM Bossbot summary block as source material. Do not hand-write
|
|
30
|
+
claims that are not present in the PR body.
|
|
31
|
+
|
|
32
|
+
1. Fetch the PR body:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
gh pr view <number> --json body --jq '.body // ""' > /tmp/bm-pr-body.md
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
2. Generate the canonical asset:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
uv run --script scripts/generate_pr_infographic.py \
|
|
42
|
+
--pr-number <number> \
|
|
43
|
+
--pr-body-file /tmp/bm-pr-body.md \
|
|
44
|
+
--theme "<optional visual theme>" \
|
|
45
|
+
--provenance-output /tmp/bm-infographic-provenance.md \
|
|
46
|
+
--output docs/assets/infographics/pr-<number>.webp
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
If the PR body contains a managed image theme block, the script reads it
|
|
50
|
+
automatically:
|
|
51
|
+
|
|
52
|
+
```markdown
|
|
53
|
+
<!-- BM_INFOGRAPHIC_THEME:start -->
|
|
54
|
+
<theme>
|
|
55
|
+
<!-- BM_INFOGRAPHIC_THEME:end -->
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Before spending an image call, test the prompt path locally:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
uv run --script scripts/generate_pr_infographic.py \
|
|
62
|
+
--pr-number <number> \
|
|
63
|
+
--pr-body-file /tmp/bm-pr-body.md \
|
|
64
|
+
--theme "<optional visual theme>" \
|
|
65
|
+
--output docs/assets/infographics/pr-<number>.webp \
|
|
66
|
+
--print-prompt
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
`--dry-run` is an alias for `--print-prompt`; both print the final prompt and
|
|
70
|
+
exit without calling OpenAI.
|
|
71
|
+
|
|
72
|
+
When no theme is supplied, the script selects a deterministic BM visual
|
|
73
|
+
direction from the style pool below based on the PR number and Bossbot summary.
|
|
74
|
+
This keeps repeated PR images from collapsing into the same generic visual.
|
|
75
|
+
|
|
76
|
+
When the image is generated, also write provenance with
|
|
77
|
+
`--provenance-output <path>`. BM Bossbot publishes that managed block into the
|
|
78
|
+
PR body with these markers:
|
|
79
|
+
|
|
80
|
+
```markdown
|
|
81
|
+
<!-- BM_INFOGRAPHIC_PROVENANCE:start -->
|
|
82
|
+
...
|
|
83
|
+
<!-- BM_INFOGRAPHIC_PROVENANCE:end -->
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
The provenance block records the generated asset path, image model, size,
|
|
87
|
+
quality, image mode, theme source, and selected visual direction. It
|
|
88
|
+
intentionally does not dump the full generated prompt into the PR body. Treat
|
|
89
|
+
this block as debugging and creative provenance only; it is not a merge gate.
|
|
90
|
+
|
|
91
|
+
The PR image is visual support only. The authoritative merge gate is the
|
|
92
|
+
GitHub commit status named `BM Bossbot Approval`.
|
|
93
|
+
|
|
94
|
+
## Changelog Mode
|
|
95
|
+
|
|
96
|
+
Build an evidence pack before writing a prompt:
|
|
97
|
+
|
|
98
|
+
- diff truth source: merged PR diffs, merge commits, or local reconstructed diffs
|
|
99
|
+
- changed-file orientation: `git diff --stat` plus key file reads
|
|
100
|
+
- impact ledger: before/after outcomes tied to actual changes
|
|
101
|
+
- discard list: misleading titles, reverted work, rename-only churn, speculative TODOs
|
|
102
|
+
- chosen image form: poster, scene, tableau, cover, painting, photograph,
|
|
103
|
+
staged artifact, or another editorial visual moment
|
|
104
|
+
- chosen BM style category: exactly one category from the selection pool below
|
|
105
|
+
|
|
106
|
+
Read these references before drafting the prompt:
|
|
107
|
+
|
|
108
|
+
- `references/prompt-blueprint.md`
|
|
109
|
+
- `references/style-balance.md`
|
|
110
|
+
|
|
111
|
+
Read the current `CHANGELOG.md` entries and include the latest meaningful
|
|
112
|
+
changes.
|
|
113
|
+
|
|
114
|
+
## Style And Category Selection
|
|
115
|
+
|
|
116
|
+
Select exactly one BM style category per image based on semantic fit. The
|
|
117
|
+
visual language should be recognizable and tasteful, while staying
|
|
118
|
+
business-readable.
|
|
119
|
+
|
|
120
|
+
Create an image-first visual form that communicates the change: poster, scene,
|
|
121
|
+
tableau, cover image, painting, photograph, staged artifact, or another
|
|
122
|
+
editorial visual moment. Maps, diagrams, dossiers, charts, and labels can appear
|
|
123
|
+
as props inside the scene, but do not make a text-heavy infographic.
|
|
124
|
+
|
|
125
|
+
BM category pool:
|
|
126
|
+
|
|
127
|
+
- computer science college textbooks: SICP-style diagrams, algorithms lectures,
|
|
128
|
+
compiler pipelines, automata, database systems, type theory, operating systems
|
|
129
|
+
- classic literature subjects: sea voyages, gothic manors, Dickensian city maps,
|
|
130
|
+
Austen social graphs, library marginalia, travel journals
|
|
131
|
+
- fantasy/D&D-inspired: quest maps, dungeon keys, guild ledgers, spellbooks,
|
|
132
|
+
bestiaries, tavern notice boards; no copyrighted settings
|
|
133
|
+
- Music: Metal, Hard Rock, Punk, techno, soul, reggae bands; no pop music, no
|
|
134
|
+
direct band logos, album covers, or musician likenesses
|
|
135
|
+
- sci-fi: Star Wars inspired knockoff, Spaceballs-adjacent space opera, fleet
|
|
136
|
+
routes, mission consoles, contraband manifests; avoid copyrighted characters,
|
|
137
|
+
logos, or named fictional universes
|
|
138
|
+
- Conan the barbarian-inspired sword-and-sorcery: ruined temples, desert routes,
|
|
139
|
+
battle standards, ancient maps; no named character likenesses
|
|
140
|
+
- Comic books: issue covers, splash pages, action-panel maps, caption boxes,
|
|
141
|
+
halftone energy, clean sound-effect typography
|
|
142
|
+
- French new wave movies: poster style, stark typography, city route maps,
|
|
143
|
+
jump-cut sequencing, high-contrast editorial photography cues
|
|
144
|
+
- WWII propaganda posters: home-front public-information poster language,
|
|
145
|
+
logistics arrows, ration charts, mobilization maps, bold simplified figures;
|
|
146
|
+
no real-world party symbols, hate imagery, dehumanizing slogans, or false
|
|
147
|
+
historical claims
|
|
148
|
+
- Italian movie posters: hand-painted drama, bold credits, expressive color,
|
|
149
|
+
route-map collage, 1960s or 1970s cinema energy; no direct film titles or
|
|
150
|
+
actor likenesses
|
|
151
|
+
- Shakespeare: stage maps, acts and scenes, dramatis personae, royal courts,
|
|
152
|
+
backstage cue sheets
|
|
153
|
+
- Greek mythology: temple diagrams, constellation routes, hero's journey maps,
|
|
154
|
+
oracle tablets, labyrinths, ship routes
|
|
155
|
+
- noir detective boards: case files, red-string maps, typed evidence labels,
|
|
156
|
+
precinct wall charts
|
|
157
|
+
- NASA mission-control dashboards: launch timelines, telemetry maps, orbital
|
|
158
|
+
routes, status boards
|
|
159
|
+
- space exploration and astronomy: celestial atlases, observatory charts,
|
|
160
|
+
star-field maps, orbital mechanics diagrams, planetary survey routes,
|
|
161
|
+
telescope annotations, mission trajectories, deep-space timelines
|
|
162
|
+
- paintings: abstract painting, classical landscape, Remington-inspired western
|
|
163
|
+
action painting, Rembrandt-inspired chiaroscuro, historical mural, stormy
|
|
164
|
+
seascape, allegorical editorial painting
|
|
165
|
+
- classic black-and-white photography: documentary field report, newsroom
|
|
166
|
+
archive print, editorial photo essay, street photography, high-contrast
|
|
167
|
+
darkroom print, contact sheet, civic infrastructure photograph
|
|
168
|
+
- 80's action movies: practical explosions, smoky backlit warehouses, neon city
|
|
169
|
+
streets, helicopter searchlights, mission dossiers, heroic silhouettes,
|
|
170
|
+
high-stakes countdowns, painted ensemble posters; no direct actor likenesses,
|
|
171
|
+
real film titles, franchise marks, or catchphrases
|
|
172
|
+
- alchemy manuscripts: transformation diagrams, annotated symbols, recipe-like
|
|
173
|
+
process maps, illuminated margins
|
|
174
|
+
- brutalist civic planning: transit maps, concrete signage, zoning blocks,
|
|
175
|
+
infrastructure diagrams
|
|
176
|
+
|
|
177
|
+
Selection rules:
|
|
178
|
+
|
|
179
|
+
- Pick one category only; do not create mixed mashups.
|
|
180
|
+
- Pick the most appropriate image form. Prefer an actual scene, poster,
|
|
181
|
+
painting, photograph, tableau, or cover over a text-heavy infographic.
|
|
182
|
+
- Match metaphor to content, but do not overthink it. The category is a creative
|
|
183
|
+
catalyst, not a semantic constraint.
|
|
184
|
+
- Use a polished editorial rendering direction: smooth anti-aliased
|
|
185
|
+
text, high contrast, clean edges, readable labels.
|
|
186
|
+
- Make the category drive the composition through a readable staged moment,
|
|
187
|
+
editorial composition, symbolic environment, route, artifact, or visual
|
|
188
|
+
metaphor.
|
|
189
|
+
- Keep the structure literal enough to aid understanding, but not so heavy that
|
|
190
|
+
it obscures engineering meaning.
|
|
191
|
+
- Give the image generator creative latitude on layout, structure, color palette,
|
|
192
|
+
and visual metaphors. Be precise about what content to show, loose about how
|
|
193
|
+
to show it.
|
|
194
|
+
- Do not use copyrighted characters, logos, or named fictional universes. Use
|
|
195
|
+
genre cues, knockoffs, and original compositions instead.
|
|
196
|
+
|
|
197
|
+
## Content-First Aesthetic Contract
|
|
198
|
+
|
|
199
|
+
The meaning must be readable and clearly hierarchical. Everything else is
|
|
200
|
+
creative territory: image form, layout, visual metaphors, decorative elements,
|
|
201
|
+
color choices, and category-specific visual language.
|
|
202
|
+
|
|
203
|
+
Hierarchy:
|
|
204
|
+
|
|
205
|
+
1. Meaning: what shipped, what changed, and why it matters must be clear.
|
|
206
|
+
2. If the image uses text, labels, sections, or evidence bullets, they must be
|
|
207
|
+
legible.
|
|
208
|
+
3. The selected category's visual DNA should drive the composition as a poster,
|
|
209
|
+
scene, painting, photograph, tableau, cover, or symbolic object arrangement.
|
|
210
|
+
4. Do not play it safe. A visually striking image that someone wants to look at
|
|
211
|
+
beats a correct but boring one.
|
|
212
|
+
|
|
213
|
+
Hard rules:
|
|
214
|
+
|
|
215
|
+
- Content sections and labels must be readable when present. Text cannot be
|
|
216
|
+
obscured by decorations.
|
|
217
|
+
- Do not use lore-heavy copy that competes with engineering or business meaning.
|
|
218
|
+
- Every prompt must include a clear image-first composition cue: a staged scene,
|
|
219
|
+
poster composition, painting, photograph, symbolic tableau, hero object,
|
|
220
|
+
mission room, dossier, artifact, route, or visual metaphor.
|
|
221
|
+
- Do not over-prescribe exact coordinates or panel geometry; give a composition
|
|
222
|
+
backbone and let the model compose around it.
|
|
223
|
+
|
|
224
|
+
## Generation
|
|
225
|
+
|
|
226
|
+
1. Write the final prompt to a temporary markdown file.
|
|
227
|
+
2. Generate with the shared image helper:
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
uv run --script scripts/generate_infographic.py \
|
|
231
|
+
--prompt-file /tmp/bm-infographic-prompt.md \
|
|
232
|
+
--output docs/assets/infographics/<name>.webp
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
3. Verify the image exists and is readable before reporting success.
|
|
236
|
+
|
|
237
|
+
## Quality Bar
|
|
238
|
+
|
|
239
|
+
- Tell a concrete before/after value story, not vague improvement claims.
|
|
240
|
+
- Stay understandable for both engineers and non-technical stakeholders.
|
|
241
|
+
- Use plain-language section titles and labels when text is present.
|
|
242
|
+
- Include clear visual hierarchy: title, staged focal point, symbolic scene,
|
|
243
|
+
evidence props, or hero object.
|
|
244
|
+
- Avoid invented facts; only use provided source material.
|
|
245
|
+
- Favor shipped outcomes over intermediate or reverted work.
|
|
246
|
+
- Preserve readability with high contrast, non-tiny labels, and uncluttered
|
|
247
|
+
layout.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Infographics"
|
|
3
|
+
short_description: "Generate Basic Memory repo infographics"
|
|
4
|
+
icon_small: "./assets/icon.svg"
|
|
5
|
+
icon_large: "./assets/icon.svg"
|
|
6
|
+
brand_color: "#2563EB"
|
|
7
|
+
default_prompt: "Use $infographics to generate a Basic Memory PR or changelog infographic with canonical output paths."
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# Prompt Blueprint
|
|
2
|
+
|
|
3
|
+
Convert an evidence pack into a final visual prompt. Be precise about the
|
|
4
|
+
content and loose about visual execution.
|
|
5
|
+
|
|
6
|
+
## Required Inputs
|
|
7
|
+
|
|
8
|
+
- Diff truth source summary
|
|
9
|
+
- Changed-file orientation summary
|
|
10
|
+
- Impact ledger with before/after outcomes
|
|
11
|
+
- Discard list for excluded noise
|
|
12
|
+
- Chosen image form
|
|
13
|
+
- Chosen BM style category
|
|
14
|
+
|
|
15
|
+
## Prompt Shape
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
Create a polished Basic Memory editorial image inspired by
|
|
19
|
+
<BM_STYLE_CATEGORY>. Use a poster, scene, tableau, painting, photograph, cover
|
|
20
|
+
image, staged artifact, or another image-first form that best communicates the
|
|
21
|
+
intent. Use HD editorial rendering with smooth anti-aliased text when text is
|
|
22
|
+
present. Go bold and let the selected category drive the visual language through
|
|
23
|
+
original, non-infringing cues.
|
|
24
|
+
|
|
25
|
+
TITLE:
|
|
26
|
+
- "<clear title>"
|
|
27
|
+
- "<scope subtitle>"
|
|
28
|
+
|
|
29
|
+
COMPOSITION:
|
|
30
|
+
- Recreate a clear staged moment or symbolic image that describes the PR
|
|
31
|
+
intent.
|
|
32
|
+
- Maps, diagrams, dossiers, route lines, labels, and artifacts can appear as
|
|
33
|
+
props inside the scene, but the output should read as an image rather than a
|
|
34
|
+
dense infographic.
|
|
35
|
+
- Take creative liberty with layout and styling.
|
|
36
|
+
- The hard rule: the meaning must be readable and clearly hierarchical.
|
|
37
|
+
- Keep labels plain-language and technical when labels are used.
|
|
38
|
+
|
|
39
|
+
CONTENT:
|
|
40
|
+
1. "<section>"
|
|
41
|
+
- <evidence-grounded outcome>
|
|
42
|
+
- <evidence-grounded outcome>
|
|
43
|
+
|
|
44
|
+
2. "<section>"
|
|
45
|
+
- <evidence-grounded outcome>
|
|
46
|
+
- <evidence-grounded outcome>
|
|
47
|
+
|
|
48
|
+
METRICS:
|
|
49
|
+
- <metric>
|
|
50
|
+
- <metric>
|
|
51
|
+
|
|
52
|
+
STYLE DIRECTION:
|
|
53
|
+
- Upscaled editorial, high contrast, anti-aliased text, smooth edges.
|
|
54
|
+
- Let the category's visual DNA drive the composition.
|
|
55
|
+
- Use genre/category cues only; do not use copyrighted characters, logos, named
|
|
56
|
+
fictional universes, direct band logos, album art, or celebrity likenesses.
|
|
57
|
+
|
|
58
|
+
DO NOT:
|
|
59
|
+
- Make text unreadable or let decoration obscure content.
|
|
60
|
+
- Render a text-heavy infographic, dashboard, flowchart, timeline strip,
|
|
61
|
+
checklist, bullet-list panel, or dense explanatory diagram.
|
|
62
|
+
- Use crunchy low-resolution pixel art.
|
|
63
|
+
- Invent facts not present in the evidence pack.
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Writing Rules
|
|
67
|
+
|
|
68
|
+
- Keep each bullet specific and evidence-grounded.
|
|
69
|
+
- Prefer outcome language over implementation trivia.
|
|
70
|
+
- Default to three or four sections; never exceed five.
|
|
71
|
+
- Give proportionally more space to dominant changes.
|
|
72
|
+
- Keep the final prompt short, energetic, and readable.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Style Balance Rubric
|
|
2
|
+
|
|
3
|
+
## Core Principle
|
|
4
|
+
|
|
5
|
+
Be bold, not confusing. The selected BM style category should structure the
|
|
6
|
+
visual through a readable image-first composition, not decorate a generic grid.
|
|
7
|
+
Use an editorial scene, poster, painting, photograph, cover, staged artifact, or
|
|
8
|
+
tableau that turns the PR intent into a visual moment.
|
|
9
|
+
|
|
10
|
+
## Required Traits
|
|
11
|
+
|
|
12
|
+
- Anti-aliased typography
|
|
13
|
+
- Smooth edges
|
|
14
|
+
- High contrast between text and background
|
|
15
|
+
- Plain-language section labels
|
|
16
|
+
- Clear composition backbone: staged scene, editorial poster, painting,
|
|
17
|
+
photograph, symbolic tableau, hero artifact, dossier, mission room, or route
|
|
18
|
+
embodied as part of the scene
|
|
19
|
+
- A single coherent BM style category, expressed through original visual cues
|
|
20
|
+
|
|
21
|
+
## Reject Or Rewrite If
|
|
22
|
+
|
|
23
|
+
- Content text is unreadable.
|
|
24
|
+
- The prompt lacks a composition backbone.
|
|
25
|
+
- The prompt over-prescribes exact panel positions or a rigid grid.
|
|
26
|
+
- The style leans into crunchy low-resolution pixelation.
|
|
27
|
+
- Copy uses lore-heavy references instead of engineering meaning.
|
|
28
|
+
- The prompt uses copyrighted characters, logos, named fictional universes,
|
|
29
|
+
direct band logos, album art, or celebrity likenesses.
|
|
30
|
+
|
|
31
|
+
## Creative Integration Patterns
|
|
32
|
+
|
|
33
|
+
- Use category-native map details to organize content: textbook diagrams,
|
|
34
|
+
literary journeys, quest maps, tour posters, mission-control routes, stage
|
|
35
|
+
blocking, mythic constellations, star charts, mission trajectories, case
|
|
36
|
+
boards, or civic plans as props inside the image.
|
|
37
|
+
- Recreate a scene, editorial poster, painting, photograph, cover, artifact, or
|
|
38
|
+
tableau instead of sectioned bullets.
|
|
39
|
+
- Map engineering metrics to visual counters, route progress, or status boards
|
|
40
|
+
only when they naturally belong in the scene.
|
|
41
|
+
- Let headers and accents borrow from the selected style.
|
|
42
|
+
- Keep atmospheric details behind or around content, never over it.
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pr-create
|
|
3
|
+
description: Use when creating or updating a Basic Memory pull request from Codex with BM Bossbot merge-gate monitoring.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Create A Basic Memory PR
|
|
7
|
+
|
|
8
|
+
Create or update a pull request for the current branch, then wait for BM
|
|
9
|
+
Bossbot to approve the latest head SHA. This skill never merges a PR.
|
|
10
|
+
|
|
11
|
+
## Inputs
|
|
12
|
+
|
|
13
|
+
- Optional `<theme>`: free-form visual direction for the non-gating PR
|
|
14
|
+
image. Example: `$pr-create "Italian movie poster"`.
|
|
15
|
+
- Treat `<theme>` as style guidance only. It must not affect PR readiness,
|
|
16
|
+
BM Bossbot review, status checks, or merge behavior.
|
|
17
|
+
|
|
18
|
+
## How To Use
|
|
19
|
+
|
|
20
|
+
Ask Codex to use the skill from a feature branch:
|
|
21
|
+
|
|
22
|
+
```text
|
|
23
|
+
$pr-create
|
|
24
|
+
$pr-create "Italian movie poster"
|
|
25
|
+
$pr-create "80's action movies"
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Use the plain form when you only want the PR workflow. Pass a theme when you
|
|
29
|
+
want the non-gating image to lean toward a particular visual direction. The
|
|
30
|
+
theme can be specific ("Rembrandt-inspired approval scene") or broad ("let the
|
|
31
|
+
model choose from BM categories").
|
|
32
|
+
|
|
33
|
+
## What Happens
|
|
34
|
+
|
|
35
|
+
1. Codex checks the branch, local verification, GitHub auth, commit sign-offs,
|
|
36
|
+
and semantic PR title shape.
|
|
37
|
+
2. Codex pushes the branch, creates or reuses the PR, and adds the optional
|
|
38
|
+
`BM_INFOGRAPHIC_THEME` block when a theme was supplied.
|
|
39
|
+
3. BM Bossbot runs from trusted base code, reviews sanitized PR metadata and
|
|
40
|
+
diff context, and sets the required `BM Bossbot Approval` status for the
|
|
41
|
+
exact head SHA.
|
|
42
|
+
4. If approval succeeds, BM Bossbot may publish a non-gating image block and a
|
|
43
|
+
provenance block:
|
|
44
|
+
|
|
45
|
+
```markdown
|
|
46
|
+
<!-- BM_INFOGRAPHIC_PROVENANCE:start -->
|
|
47
|
+
...
|
|
48
|
+
<!-- BM_INFOGRAPHIC_PROVENANCE:end -->
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
The provenance records the image mode, theme source, selected visual
|
|
52
|
+
direction, and image settings. It is for review/debugging context only.
|
|
53
|
+
5. Codex reports the PR URL, head SHA, checks watched, verification run, and BM
|
|
54
|
+
Bossbot verdict.
|
|
55
|
+
|
|
56
|
+
The skill never merges, never enables auto-merge, and never treats the image or
|
|
57
|
+
provenance block as a gate. The only required merge signal is the
|
|
58
|
+
`BM Bossbot Approval` status on the current PR head SHA.
|
|
59
|
+
|
|
60
|
+
## Preflight
|
|
61
|
+
|
|
62
|
+
1. Confirm the repo and branch:
|
|
63
|
+
- `git status --short --branch`
|
|
64
|
+
- stop if detached or on `main`
|
|
65
|
+
- keep unrelated user changes intact
|
|
66
|
+
|
|
67
|
+
2. Confirm GitHub access:
|
|
68
|
+
- `gh auth status`
|
|
69
|
+
- `gh repo view --json nameWithOwner,defaultBranchRef,url`
|
|
70
|
+
|
|
71
|
+
3. Check PR readiness:
|
|
72
|
+
- commits are signed off with `git commit -s`
|
|
73
|
+
- title uses the repo semantic format
|
|
74
|
+
- local verification appropriate to the change has run
|
|
75
|
+
|
|
76
|
+
## Create Or Reuse
|
|
77
|
+
|
|
78
|
+
1. Push the branch:
|
|
79
|
+
- `git push -u origin HEAD`
|
|
80
|
+
|
|
81
|
+
2. Check for an existing PR:
|
|
82
|
+
- `gh pr view --json number,url,headRefOid,mergeStateStatus,statusCheckRollup`
|
|
83
|
+
|
|
84
|
+
3. If no PR exists, create one:
|
|
85
|
+
- `gh pr create --fill`
|
|
86
|
+
- adjust the title if it does not satisfy the semantic PR title workflow
|
|
87
|
+
|
|
88
|
+
4. If `<theme>` is provided, add or update this managed block in the PR body:
|
|
89
|
+
|
|
90
|
+
```markdown
|
|
91
|
+
<!-- BM_INFOGRAPHIC_THEME:start -->
|
|
92
|
+
<theme>
|
|
93
|
+
<!-- BM_INFOGRAPHIC_THEME:end -->
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Keep the rest of the PR body intact. The theme is non-gating image guidance
|
|
97
|
+
only.
|
|
98
|
+
|
|
99
|
+
5. Do not merge. Do not enable auto-merge.
|
|
100
|
+
|
|
101
|
+
## Watch The Gate
|
|
102
|
+
|
|
103
|
+
1. Trigger or wait for `.github/workflows/bm-bossbot.yml`.
|
|
104
|
+
2. Watch the required commit status named `BM Bossbot Approval`.
|
|
105
|
+
3. Treat approval as valid only when it is green for the current `headRefOid`.
|
|
106
|
+
4. If the branch changes after approval, wait for BM Bossbot to review the new
|
|
107
|
+
head SHA.
|
|
108
|
+
5. If BM Bossbot fails or requests changes, use `$fix-pr-issues`.
|
|
109
|
+
|
|
110
|
+
## Report
|
|
111
|
+
|
|
112
|
+
Return the PR URL, current head SHA, checks watched, verification run, and the
|
|
113
|
+
BM Bossbot verdict. Include the image `<theme>` if one was supplied. Be
|
|
114
|
+
explicit when any check is still pending.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "PR Create"
|
|
3
|
+
short_description: "Create PRs and wait for BM Bossbot"
|
|
4
|
+
icon_small: "./assets/icon.svg"
|
|
5
|
+
icon_large: "./assets/icon.svg"
|
|
6
|
+
brand_color: "#2563EB"
|
|
7
|
+
default_prompt: "Use $pr-create to create or update this Basic Memory PR and wait for BM Bossbot Approval."
|