basic-memory 0.14.4__py3-none-any.whl → 0.15.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of basic-memory might be problematic. Click here for more details.
- basic_memory/__init__.py +1 -1
- basic_memory/alembic/versions/a1b2c3d4e5f6_fix_project_foreign_keys.py +5 -9
- basic_memory/api/app.py +10 -4
- basic_memory/api/routers/directory_router.py +23 -2
- basic_memory/api/routers/knowledge_router.py +25 -8
- basic_memory/api/routers/project_router.py +100 -4
- basic_memory/cli/app.py +9 -28
- basic_memory/cli/auth.py +277 -0
- basic_memory/cli/commands/cloud/__init__.py +5 -0
- basic_memory/cli/commands/cloud/api_client.py +112 -0
- basic_memory/cli/commands/cloud/bisync_commands.py +818 -0
- basic_memory/cli/commands/cloud/core_commands.py +288 -0
- basic_memory/cli/commands/cloud/mount_commands.py +295 -0
- basic_memory/cli/commands/cloud/rclone_config.py +288 -0
- basic_memory/cli/commands/cloud/rclone_installer.py +198 -0
- basic_memory/cli/commands/command_utils.py +43 -0
- basic_memory/cli/commands/import_memory_json.py +0 -4
- basic_memory/cli/commands/mcp.py +77 -60
- basic_memory/cli/commands/project.py +154 -152
- basic_memory/cli/commands/status.py +25 -22
- basic_memory/cli/commands/sync.py +45 -228
- basic_memory/cli/commands/tool.py +87 -16
- basic_memory/cli/main.py +1 -0
- basic_memory/config.py +131 -21
- basic_memory/db.py +104 -3
- basic_memory/deps.py +27 -8
- basic_memory/file_utils.py +37 -13
- basic_memory/ignore_utils.py +295 -0
- basic_memory/markdown/plugins.py +9 -7
- basic_memory/mcp/async_client.py +124 -14
- basic_memory/mcp/project_context.py +141 -0
- basic_memory/mcp/prompts/ai_assistant_guide.py +49 -4
- basic_memory/mcp/prompts/continue_conversation.py +17 -16
- basic_memory/mcp/prompts/recent_activity.py +116 -32
- basic_memory/mcp/prompts/search.py +13 -12
- basic_memory/mcp/prompts/utils.py +11 -4
- basic_memory/mcp/resources/ai_assistant_guide.md +211 -341
- basic_memory/mcp/resources/project_info.py +27 -11
- basic_memory/mcp/server.py +0 -37
- basic_memory/mcp/tools/__init__.py +5 -6
- basic_memory/mcp/tools/build_context.py +67 -56
- basic_memory/mcp/tools/canvas.py +38 -26
- basic_memory/mcp/tools/chatgpt_tools.py +187 -0
- basic_memory/mcp/tools/delete_note.py +81 -47
- basic_memory/mcp/tools/edit_note.py +155 -138
- basic_memory/mcp/tools/list_directory.py +112 -99
- basic_memory/mcp/tools/move_note.py +181 -101
- basic_memory/mcp/tools/project_management.py +113 -277
- basic_memory/mcp/tools/read_content.py +91 -74
- basic_memory/mcp/tools/read_note.py +152 -115
- basic_memory/mcp/tools/recent_activity.py +471 -68
- basic_memory/mcp/tools/search.py +105 -92
- basic_memory/mcp/tools/sync_status.py +136 -130
- basic_memory/mcp/tools/utils.py +4 -0
- basic_memory/mcp/tools/view_note.py +44 -33
- basic_memory/mcp/tools/write_note.py +151 -90
- basic_memory/models/knowledge.py +12 -6
- basic_memory/models/project.py +6 -2
- basic_memory/repository/entity_repository.py +89 -82
- basic_memory/repository/relation_repository.py +13 -0
- basic_memory/repository/repository.py +18 -5
- basic_memory/repository/search_repository.py +46 -2
- basic_memory/schemas/__init__.py +6 -0
- basic_memory/schemas/base.py +39 -11
- basic_memory/schemas/cloud.py +46 -0
- basic_memory/schemas/memory.py +90 -21
- basic_memory/schemas/project_info.py +9 -10
- basic_memory/schemas/sync_report.py +48 -0
- basic_memory/services/context_service.py +25 -11
- basic_memory/services/directory_service.py +124 -3
- basic_memory/services/entity_service.py +100 -48
- basic_memory/services/initialization.py +30 -11
- basic_memory/services/project_service.py +101 -24
- basic_memory/services/search_service.py +16 -8
- basic_memory/sync/sync_service.py +173 -34
- basic_memory/sync/watch_service.py +101 -40
- basic_memory/utils.py +14 -4
- {basic_memory-0.14.4.dist-info → basic_memory-0.15.1.dist-info}/METADATA +57 -9
- basic_memory-0.15.1.dist-info/RECORD +146 -0
- basic_memory/mcp/project_session.py +0 -120
- basic_memory-0.14.4.dist-info/RECORD +0 -133
- {basic_memory-0.14.4.dist-info → basic_memory-0.15.1.dist-info}/WHEEL +0 -0
- {basic_memory-0.14.4.dist-info → basic_memory-0.15.1.dist-info}/entry_points.txt +0 -0
- {basic_memory-0.14.4.dist-info → basic_memory-0.15.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: basic-memory
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.15.1
|
|
4
4
|
Summary: Local-first knowledge management combining Zettelkasten with knowledge graphs
|
|
5
5
|
Project-URL: Homepage, https://github.com/basicmachines-co/basic-memory
|
|
6
6
|
Project-URL: Repository, https://github.com/basicmachines-co/basic-memory
|
|
@@ -8,12 +8,13 @@ Project-URL: Documentation, https://github.com/basicmachines-co/basic-memory#rea
|
|
|
8
8
|
Author-email: Basic Machines <hello@basic-machines.co>
|
|
9
9
|
License: AGPL-3.0-or-later
|
|
10
10
|
License-File: LICENSE
|
|
11
|
-
Requires-Python: >=3.12
|
|
11
|
+
Requires-Python: >=3.12
|
|
12
|
+
Requires-Dist: aiofiles>=24.1.0
|
|
12
13
|
Requires-Dist: aiosqlite>=0.20.0
|
|
13
14
|
Requires-Dist: alembic>=1.14.1
|
|
14
15
|
Requires-Dist: dateparser>=1.2.0
|
|
15
16
|
Requires-Dist: fastapi[standard]>=0.115.8
|
|
16
|
-
Requires-Dist: fastmcp
|
|
17
|
+
Requires-Dist: fastmcp>=2.10.2
|
|
17
18
|
Requires-Dist: greenlet>=3.1.1
|
|
18
19
|
Requires-Dist: icecream>=2.1.3
|
|
19
20
|
Requires-Dist: loguru>=0.7.3
|
|
@@ -138,6 +139,9 @@ With Basic Memory, you can:
|
|
|
138
139
|
- Keep everything local and under your control
|
|
139
140
|
- Use familiar tools like Obsidian to view and edit notes
|
|
140
141
|
- Build a personal knowledge base that grows over time
|
|
142
|
+
- Sync your knowledge to the cloud with bidirectional synchronization
|
|
143
|
+
- Authenticate and manage cloud projects with subscription validation
|
|
144
|
+
- Mount cloud storage for direct file access
|
|
141
145
|
|
|
142
146
|
## How It Works in Practice
|
|
143
147
|
|
|
@@ -384,14 +388,57 @@ basic-memory sync
|
|
|
384
388
|
basic-memory sync --watch
|
|
385
389
|
```
|
|
386
390
|
|
|
387
|
-
3.
|
|
391
|
+
3. Cloud features (optional, requires subscription):
|
|
388
392
|
|
|
393
|
+
```bash
|
|
394
|
+
# Authenticate with cloud
|
|
395
|
+
basic-memory cloud login
|
|
396
|
+
|
|
397
|
+
# Bidirectional sync with cloud
|
|
398
|
+
basic-memory cloud sync
|
|
399
|
+
|
|
400
|
+
# Verify cloud integrity
|
|
401
|
+
basic-memory cloud check
|
|
402
|
+
|
|
403
|
+
# Mount cloud storage
|
|
404
|
+
basic-memory cloud mount
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
4. In Claude Desktop, the LLM can now use these tools:
|
|
408
|
+
|
|
409
|
+
**Content Management:**
|
|
389
410
|
```
|
|
390
411
|
write_note(title, content, folder, tags) - Create or update notes
|
|
391
412
|
read_note(identifier, page, page_size) - Read notes by title or permalink
|
|
413
|
+
read_content(path) - Read raw file content (text, images, binaries)
|
|
414
|
+
view_note(identifier) - View notes as formatted artifacts
|
|
415
|
+
edit_note(identifier, operation, content) - Edit notes incrementally
|
|
416
|
+
move_note(identifier, destination_path) - Move notes with database consistency
|
|
417
|
+
delete_note(identifier) - Delete notes from knowledge base
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
**Knowledge Graph Navigation:**
|
|
421
|
+
```
|
|
392
422
|
build_context(url, depth, timeframe) - Navigate knowledge graph via memory:// URLs
|
|
393
|
-
search(query, page, page_size) - Search across your knowledge base
|
|
394
423
|
recent_activity(type, depth, timeframe) - Find recently updated information
|
|
424
|
+
list_directory(dir_name, depth) - Browse directory contents with filtering
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
**Search & Discovery:**
|
|
428
|
+
```
|
|
429
|
+
search(query, page, page_size) - Search across your knowledge base
|
|
430
|
+
```
|
|
431
|
+
|
|
432
|
+
**Project Management:**
|
|
433
|
+
```
|
|
434
|
+
list_memory_projects() - List all available projects
|
|
435
|
+
create_memory_project(project_name, project_path) - Create new projects
|
|
436
|
+
get_current_project() - Show current project stats
|
|
437
|
+
sync_status() - Check synchronization status
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
**Visualization:**
|
|
441
|
+
```
|
|
395
442
|
canvas(nodes, edges, title, folder) - Generate knowledge visualizations
|
|
396
443
|
```
|
|
397
444
|
|
|
@@ -409,10 +456,11 @@ canvas(nodes, edges, title, folder) - Generate knowledge visualizations
|
|
|
409
456
|
|
|
410
457
|
See the [Documentation](https://memory.basicmachines.co/) for more info, including:
|
|
411
458
|
|
|
412
|
-
- [Complete User Guide](https://
|
|
413
|
-
- [CLI tools](https://
|
|
414
|
-
- [
|
|
415
|
-
- [
|
|
459
|
+
- [Complete User Guide](https://docs.basicmemory.com/user-guide/)
|
|
460
|
+
- [CLI tools](https://docs.basicmemory.com/guides/cli-reference/)
|
|
461
|
+
- [Cloud CLI and Sync](https://docs.basicmemory.com/guides/cloud-cli/)
|
|
462
|
+
- [Managing multiple Projects](https://docs.basicmemory.com/guides/cli-reference/#project)
|
|
463
|
+
- [Importing data from OpenAI/Claude Projects](https://docs.basicmemory.com/guides/cli-reference/#import)
|
|
416
464
|
|
|
417
465
|
## License
|
|
418
466
|
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
basic_memory/__init__.py,sha256=U6DAt7BGs4nUoZawTqHojv50O6CP7oVBXoEIkaeKGcw,256
|
|
2
|
+
basic_memory/config.py,sha256=bHpnPTTYxPR_dtT1j9mE4y5ucmsow4hn4MplES446bI,17446
|
|
3
|
+
basic_memory/db.py,sha256=Gc-d639GPVzUhNkzkfvOYYuEGeIX9YFqhu6kG_5tR1A,11711
|
|
4
|
+
basic_memory/deps.py,sha256=VpDqUsFHt6TIE4aR4U5jiq6R9sP0bZJGFMYEluuO7ac,13051
|
|
5
|
+
basic_memory/file_utils.py,sha256=5YUlj4qk9SqKmEDwcBeW08XyLW5y2b7bpUHX5xARLLc,9145
|
|
6
|
+
basic_memory/ignore_utils.py,sha256=o7cOfXHWerY-e05ZokHqKc5oujsHp4qhNQkX96xS3TY,7561
|
|
7
|
+
basic_memory/utils.py,sha256=NDlLbOme6_XzvaiorhWP0Q-HCzg038jDvfyCrTOKXTI,12875
|
|
8
|
+
basic_memory/alembic/alembic.ini,sha256=IEZsnF8CbbZnkwBr67LzKKNobHuzTaQNUvM8Psop5xc,3733
|
|
9
|
+
basic_memory/alembic/env.py,sha256=4kHZh-rfzVARy9ndvsuDPTBt6Hk3dZ2BwI030EppBrA,2838
|
|
10
|
+
basic_memory/alembic/migrations.py,sha256=lriHPXDdBLSNXEW3QTpU0SJKuVd1V-8NrVkpN3qfsUQ,718
|
|
11
|
+
basic_memory/alembic/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
|
|
12
|
+
basic_memory/alembic/versions/3dae7c7b1564_initial_schema.py,sha256=lTbWlAnd1es7xU99DoJgfaRe1_Kte8TL98riqeKGV80,4363
|
|
13
|
+
basic_memory/alembic/versions/502b60eaa905_remove_required_from_entity_permalink.py,sha256=k6xYTmYPM9Ros-7CA7BwZBKYwoK_gmVdC-2n8FAjdoE,1840
|
|
14
|
+
basic_memory/alembic/versions/5fe1ab1ccebe_add_projects_table.py,sha256=2CCY9ayjzbraYMcinqSsJi9Sc0nu2e-ehkUJus-sz34,4379
|
|
15
|
+
basic_memory/alembic/versions/647e7a75e2cd_project_constraint_fix.py,sha256=YErFkIpZdicvUil4ZtE6uxSpk5BZCTXZ_TfPE-MgSfo,4210
|
|
16
|
+
basic_memory/alembic/versions/a1b2c3d4e5f6_fix_project_foreign_keys.py,sha256=i42eQyO08RWf4exnH1q1PKw_EJFsHAG-T4pdLTMSpiA,1818
|
|
17
|
+
basic_memory/alembic/versions/b3c3938bacdb_relation_to_name_unique_index.py,sha256=RsGymQzfRXV1LSNKiyi0lMilTxW1NgwS9jR67ye2apI,1428
|
|
18
|
+
basic_memory/alembic/versions/cc7172b46608_update_search_index_schema.py,sha256=kDavR9Qqx9wSu5P3qd4SZq_waIsDG1UMTg2SmDoktMU,3679
|
|
19
|
+
basic_memory/api/__init__.py,sha256=wCpj-21j1D0KzKl9Ql6unLBVFY0K1uGp_FeSZRKtqpk,72
|
|
20
|
+
basic_memory/api/app.py,sha256=2qNUMFutFJtIU32i167br83bvCLgPkGUQD0xaf3Cx2I,3194
|
|
21
|
+
basic_memory/api/template_loader.py,sha256=exbTeXyJRgyLFmSjNeroxjT7X2DWFm2X5qUVa3drbYM,8607
|
|
22
|
+
basic_memory/api/routers/__init__.py,sha256=REO5CKQ96o5vtGWACcsIxIpWybIUSeKXc83RWbWc8BQ,398
|
|
23
|
+
basic_memory/api/routers/directory_router.py,sha256=eKl9P6uYZnmA4J58ZPydbLkDPtiYH_84LcVFclkL364,2832
|
|
24
|
+
basic_memory/api/routers/importer_router.py,sha256=xFUCorkPWo8AF0ya0UrcLmXNf8CjPZdAqddQIH8PO-o,4513
|
|
25
|
+
basic_memory/api/routers/knowledge_router.py,sha256=A7IYVk4_ab0NbrEs7ZWC2KBApY-VsEO1X5X8UImjG7s,10284
|
|
26
|
+
basic_memory/api/routers/management_router.py,sha256=zbzilNzsYUbFbE2uFXRM33cDn9IbI-73y8C1-b-19O4,2730
|
|
27
|
+
basic_memory/api/routers/memory_router.py,sha256=a9Cnx3XgwSkO-2ABFzI3wM3PoMGxuyfJFFp7NfFZapc,3003
|
|
28
|
+
basic_memory/api/routers/project_router.py,sha256=ikgH1rtzXlHQ5Y1S0lMuN45TMT6laCJhLVoCA2jE5qE,11618
|
|
29
|
+
basic_memory/api/routers/prompt_router.py,sha256=4wxq6-NREgVJM8N9C0YsN1AAUDD8nkTCOzWyzSqTSFw,9948
|
|
30
|
+
basic_memory/api/routers/resource_router.py,sha256=Uko0RLea8DTXl0hPyGjay_YNyYE5852VrBXhlWs8YGc,8097
|
|
31
|
+
basic_memory/api/routers/search_router.py,sha256=GD62jlCQTiL_VNsdibi-b1f6H40KCWo9SX2Cl7YH4QU,1226
|
|
32
|
+
basic_memory/api/routers/utils.py,sha256=nmD1faJOHcnWQjbCanojUwA9xhinf764U8SUqjNXpXw,5159
|
|
33
|
+
basic_memory/cli/__init__.py,sha256=arcKLAWRDhPD7x5t80MlviZeYzwHZ0GZigyy3NKVoGk,33
|
|
34
|
+
basic_memory/cli/app.py,sha256=dMLoiCDJId2ic32Z7F4EiDPTYjb5j8jEwXwurn755_A,1392
|
|
35
|
+
basic_memory/cli/auth.py,sha256=VG9VgHjcXXfMRcJJxif40XhTB1PX2ECD1xEvWqQUWMI,10595
|
|
36
|
+
basic_memory/cli/main.py,sha256=h3oGzJn1wEqY0_nPzb1pDKkBzTPRDgjW4YOOmxHn0hU,476
|
|
37
|
+
basic_memory/cli/commands/__init__.py,sha256=3oojcC-Y-4RPqff9vtwWziT_T4uvBVicL0pSHNilVkU,393
|
|
38
|
+
basic_memory/cli/commands/command_utils.py,sha256=e5j3mkBl75q25zpnStYFY6hfEQ8f4EPvP82VyvHING0,1480
|
|
39
|
+
basic_memory/cli/commands/db.py,sha256=cEoQltgKudEuJH0Cn-YiPpNaDQzu5-YVwCD0anIIKOA,1480
|
|
40
|
+
basic_memory/cli/commands/import_chatgpt.py,sha256=iVfMo6yrY1EzViSlGL3BnZVkh-k9ht0bbCMJ6dWFCuU,2856
|
|
41
|
+
basic_memory/cli/commands/import_claude_conversations.py,sha256=e8l4OHMr8A9PtKgOO6T9-86Jca6FzCrJAsOzo-EQrlc,2946
|
|
42
|
+
basic_memory/cli/commands/import_claude_projects.py,sha256=YyFXcHWAHJmtR6DNwTtao8nKECoFyo8GripRElqMQ7w,2891
|
|
43
|
+
basic_memory/cli/commands/import_memory_json.py,sha256=3ESHFGdrVQmlh93GYm-AzhKKnDx5cK375ea9EjiKWQw,2867
|
|
44
|
+
basic_memory/cli/commands/mcp.py,sha256=KNyeut5vjXvBjBncZs078YwJTDWb5-CjYpx0bzA4Kjs,3462
|
|
45
|
+
basic_memory/cli/commands/project.py,sha256=CJF-Dp69EPNNDwxZUakEiUcn-qCiEdMmHD3vNkO8pr0,13738
|
|
46
|
+
basic_memory/cli/commands/status.py,sha256=KHrBD6cPFckbmqoadlnFACHao524ZF_v_TzYC_yRPgQ,5872
|
|
47
|
+
basic_memory/cli/commands/sync.py,sha256=OckRY5JWJ2ZCi4-75DuEF-uWMSJX_1FmSRp27AkYtI4,1782
|
|
48
|
+
basic_memory/cli/commands/tool.py,sha256=8bsbYfaYEfAEvLfciQx1fZ0vssgbahMvrbmWzYg9188,11971
|
|
49
|
+
basic_memory/cli/commands/cloud/__init__.py,sha256=lxYVkUnYzg4GWByHmSm77m_a-ArOc_-4qvVvl0oPNp8,255
|
|
50
|
+
basic_memory/cli/commands/cloud/api_client.py,sha256=e14v_YTkkEuyUuZBzaQTSHpNmT017A3ym5dWMEly5JQ,4263
|
|
51
|
+
basic_memory/cli/commands/cloud/bisync_commands.py,sha256=9uTQvDcqUj8mSMOMtpI_6UzVVWFb2oVWlueTc-dX7j0,28626
|
|
52
|
+
basic_memory/cli/commands/cloud/core_commands.py,sha256=OVSVTC9f2_Smp3oNUUCErs3terFZdJIc-GXRvcfK68Q,9694
|
|
53
|
+
basic_memory/cli/commands/cloud/mount_commands.py,sha256=2CZPza3rPiECI5dOLowq3SEzmRQTFdUjopn_W_QQU9Y,10430
|
|
54
|
+
basic_memory/cli/commands/cloud/rclone_config.py,sha256=LpI3_PBKT5qYPG2tV3L9erl4WQQedm97g4x8PC20BP0,8155
|
|
55
|
+
basic_memory/cli/commands/cloud/rclone_installer.py,sha256=x62TjzwDUSwWTy7NVjdwtu9SKO7N5NVls_tfqp2_DDw,7399
|
|
56
|
+
basic_memory/importers/__init__.py,sha256=BTcBW97P3thcsWa5w9tQsvOu8ynHDgw2-8tPgkCZoh8,795
|
|
57
|
+
basic_memory/importers/base.py,sha256=awwe_U-CfzSINKoM6iro7ru4QqLlsfXzdHztDvebnxM,2531
|
|
58
|
+
basic_memory/importers/chatgpt_importer.py,sha256=3BJZUOVSX0cg9G6WdMTDQTscMoG6eWuf6E-c9Qhi0v4,7687
|
|
59
|
+
basic_memory/importers/claude_conversations_importer.py,sha256=p7yehy9Pgc5fef6d0ab9DwCm8CCiyyZkGEqX8U7rHbw,5725
|
|
60
|
+
basic_memory/importers/claude_projects_importer.py,sha256=pFJnX9m7GOv2TrS9f2nM1-mTtheTEBWjxKtwDWdJOGM,5389
|
|
61
|
+
basic_memory/importers/memory_json_importer.py,sha256=vH0EUpnxftmtXOv_exQjJQ7CihETDkegrEjTq4K96vw,4631
|
|
62
|
+
basic_memory/importers/utils.py,sha256=SRcDrjedYH_PeD9Pu1DenlrDcar7L751ZV3qkzJXRQ4,1818
|
|
63
|
+
basic_memory/markdown/__init__.py,sha256=DdzioCWtDnKaq05BHYLgL_78FawEHLpLXnp-kPSVfIc,501
|
|
64
|
+
basic_memory/markdown/entity_parser.py,sha256=1zpvVAtWnCV0uXB4DtmMMNzlxGSE9iulWPUpfJyYWvw,4542
|
|
65
|
+
basic_memory/markdown/markdown_processor.py,sha256=imSVYyyfz0rQe9CyDcZhouB4m6V1haMdq6j3EWdo_wc,4984
|
|
66
|
+
basic_memory/markdown/plugins.py,sha256=3z5U6yX7UuzEJAq5jzT5LmhmJ-tF3CJThwfwDwCE2q8,7452
|
|
67
|
+
basic_memory/markdown/schemas.py,sha256=eyxYCr1hVyWmImcle0asE5It_DD6ARkqaBZYu1KK5n4,1896
|
|
68
|
+
basic_memory/markdown/utils.py,sha256=cm3h3C1eFz-zklXx5xaNRE-EBv8d-S5tixbTa5WqubQ,3416
|
|
69
|
+
basic_memory/mcp/__init__.py,sha256=dsDOhKqjYeIbCULbHIxfcItTbqudEuEg1Np86eq0GEQ,35
|
|
70
|
+
basic_memory/mcp/async_client.py,sha256=oHR-cscOQAh9914Pjf_annICzauaRHfK0POd0hzEJUg,5170
|
|
71
|
+
basic_memory/mcp/project_context.py,sha256=29ZwMriGcLfE8E0hNyWn9GpnzOsKG7TbP8FSq8UGEDY,4930
|
|
72
|
+
basic_memory/mcp/server.py,sha256=vICzbGc36u59Z5P2RjXhL2OxJxOVKC8gU4OqWeCwsq8,109
|
|
73
|
+
basic_memory/mcp/prompts/__init__.py,sha256=-Bl9Dgj2TD9PULjzggPqXuvPEjWCRy7S9Yg03h2-U7A,615
|
|
74
|
+
basic_memory/mcp/prompts/ai_assistant_guide.py,sha256=NLdtkb9EahAzKLT8kT4CMQezxDgd3fUc2WB6dIixQUg,2558
|
|
75
|
+
basic_memory/mcp/prompts/continue_conversation.py,sha256=L-f_hKIBWnILzmYuQii948EdXyDSYh1qWVQAbJQU3l8,2097
|
|
76
|
+
basic_memory/mcp/prompts/recent_activity.py,sha256=h9hT7CdMNpPIqwptlY8N64trPkpCCeMTX4Wfr8C5WAE,6466
|
|
77
|
+
basic_memory/mcp/prompts/search.py,sha256=QCX8fOI-BBxHSzPBvvVq6jZPklPO1jHG0560LVkks98,1775
|
|
78
|
+
basic_memory/mcp/prompts/utils.py,sha256=k7UUwbEgtE75jZftq3DT0PpZL2Un5dwPT8L3Vxl_GIw,5733
|
|
79
|
+
basic_memory/mcp/resources/ai_assistant_guide.md,sha256=u3vjEgCQvVTbOqEGx6lnu-KJDBDgx22SimCy4h0KxFg,7286
|
|
80
|
+
basic_memory/mcp/resources/project_info.py,sha256=68Z00eE4bxBK6PB3uf4abQXaMIcBPIONuHfF3VsEtLA,2553
|
|
81
|
+
basic_memory/mcp/tools/__init__.py,sha256=EU905pci4cHHfSmWeTmqcyKmtXGByAnm-HW0MND1IT4,1591
|
|
82
|
+
basic_memory/mcp/tools/build_context.py,sha256=NapOVwaPxtqsgJKt-80A7trVonrJi7_vLcyH-uTB2T4,5641
|
|
83
|
+
basic_memory/mcp/tools/canvas.py,sha256=uz1ccdPlG5evntDG5o3pS3aTX2g4LKlXnGhihIMBNHo,4406
|
|
84
|
+
basic_memory/mcp/tools/chatgpt_tools.py,sha256=CyCpvGi5QFc1C5lccPAATBpcr6JU2LQcnIUTb3NEzvw,6903
|
|
85
|
+
basic_memory/mcp/tools/delete_note.py,sha256=ZrQVFDJTtU4TYe_4AipAo8-Vra6ScMSpQQ_zN_Nf2yk,9223
|
|
86
|
+
basic_memory/mcp/tools/edit_note.py,sha256=pOB7pLrBxp_kpBaAFeW3ibKljFDg4VCYj13Jbi1kO54,15533
|
|
87
|
+
basic_memory/mcp/tools/list_directory.py,sha256=1glwoRPT9C5qrgxLXarO3RIaMFNMBmOPQz1HXS3QFUk,5954
|
|
88
|
+
basic_memory/mcp/tools/move_note.py,sha256=Ea8W-Gs9qp7dA2l2_UhWVjjn8Yek71ZRhOebxVay7vU,21702
|
|
89
|
+
basic_memory/mcp/tools/project_management.py,sha256=QBG25b-wqjCKRurYIQimHiZpgWotzmStEe5nRcxrUU4,8082
|
|
90
|
+
basic_memory/mcp/tools/read_content.py,sha256=nT4sfRKZEFY5Sien-hTCMKoQaJlV2eTT3L9Oq1HH1hU,10012
|
|
91
|
+
basic_memory/mcp/tools/read_note.py,sha256=uWAeuQvQGAmoiSWorDJ7FEioOFVaiC7teYfEoy6pxOQ,9994
|
|
92
|
+
basic_memory/mcp/tools/recent_activity.py,sha256=4ycPEEaNQlognylT7lRNQzLrpwEnzYh2ITZeFCfRW4I,21256
|
|
93
|
+
basic_memory/mcp/tools/search.py,sha256=uUtCSYnhHU5jDlYNjRMQisD8DMlGcjJPWqXZRjmXJcM,16874
|
|
94
|
+
basic_memory/mcp/tools/sync_status.py,sha256=qGYGoK01yKRLsrZnQtqTMRZDm8R_IVLFhZm4hIE5qiQ,11190
|
|
95
|
+
basic_memory/mcp/tools/utils.py,sha256=S1YzuxLK3lsd6TTebxRQnuLpKY2IwTy6V-CVGZbNNEA,20896
|
|
96
|
+
basic_memory/mcp/tools/view_note.py,sha256=4SKwbF18wuLVvZ5g4rNhVTBjbwZ86QSNBEAlN13svqc,2442
|
|
97
|
+
basic_memory/mcp/tools/write_note.py,sha256=mk1VSk1BxnqoPn1tvSnaMsjQcXXiVary6RcQMohlOuQ,9130
|
|
98
|
+
basic_memory/models/__init__.py,sha256=j0C4dtFi-FOEaQKR8dQWEG-dJtdQ15NBTiJg4nbIXNU,333
|
|
99
|
+
basic_memory/models/base.py,sha256=4hAXJ8CE1RnjKhb23lPd-QM7G_FXIdTowMJ9bRixspU,225
|
|
100
|
+
basic_memory/models/knowledge.py,sha256=MaGpxluOWjsu7ZRZfp8HyUorpMuqejN5qzeMzf-gU1k,7727
|
|
101
|
+
basic_memory/models/project.py,sha256=yZ6QsX4YeISf_wetCqvJcr9ei5XpyRXPtmkxouRj0lo,2869
|
|
102
|
+
basic_memory/models/search.py,sha256=PhQ8w4taApSvjh1DpPhB4cH9GTt2E2po-DFZzhnoZkY,1300
|
|
103
|
+
basic_memory/repository/__init__.py,sha256=MWK-o8QikqzOpe5SyPbKQ2ioB5BWA0Upz65tgg-E0DU,327
|
|
104
|
+
basic_memory/repository/entity_repository.py,sha256=iJwunsG7o4JsBtnAXtHTwFeHkz5CtRoD-PQEaOzTe-Q,10622
|
|
105
|
+
basic_memory/repository/observation_repository.py,sha256=qhMvHLSjaoT3Fa_cQOKsT5jYPj66GXSytEBMwLAgygQ,2943
|
|
106
|
+
basic_memory/repository/project_info_repository.py,sha256=8XLVAYKkBWQ6GbKj1iqA9OK0FGPHdTlOs7ZtfeUf9t8,338
|
|
107
|
+
basic_memory/repository/project_repository.py,sha256=Fvo_pCylz8okFiv3FD3nv6PNQknLuC7f3S11fJNQkic,3795
|
|
108
|
+
basic_memory/repository/relation_repository.py,sha256=tpgyg5MTXAkdDgNpLYnHFQsYeiVSyfk3lasniw3DuRc,3718
|
|
109
|
+
basic_memory/repository/repository.py,sha256=GUKlgBOFvMeFBkmqh80MNyC2YKQdMdPQjlT_vAYlvwo,15638
|
|
110
|
+
basic_memory/repository/search_repository.py,sha256=bs9FXekHY_AYDOzA7L6ZCzf1EtHi1Q3k8HjjCbBXl8E,23989
|
|
111
|
+
basic_memory/schemas/__init__.py,sha256=6bZUVwc-Bvd6yKdNigUslYS3jFYgIQ9eqT-eujtEXY4,1785
|
|
112
|
+
basic_memory/schemas/base.py,sha256=t7F7f40EeQEQVJswMdoQJDd2Uh8LUgLHXVFIP6ugx8U,9551
|
|
113
|
+
basic_memory/schemas/cloud.py,sha256=Y8rqZHOM16xsW_kYVqKB3AxG5ig32KWLHHzFulAjwBc,1566
|
|
114
|
+
basic_memory/schemas/delete.py,sha256=UAR2JK99WMj3gP-yoGWlHD3eZEkvlTSRf8QoYIE-Wfw,1180
|
|
115
|
+
basic_memory/schemas/directory.py,sha256=F9_LrJqRqb_kO08GDKJzXLb2nhbYG2PdVUo5eDD_Kf4,881
|
|
116
|
+
basic_memory/schemas/importer.py,sha256=rDPfQjyjKyjOe26pwp1UH4eDqGwMKfeNs1Fjv5PxOc0,693
|
|
117
|
+
basic_memory/schemas/memory.py,sha256=LMAb4HfAAvosy9GrYzBM_lnviWHSS4Lez67zhgT9bf4,8894
|
|
118
|
+
basic_memory/schemas/project_info.py,sha256=1D9Q0QyWdizw44vk_eQX1UUAcBCiLjbfM-R_BYAads4,6832
|
|
119
|
+
basic_memory/schemas/prompt.py,sha256=SpIVfZprQT8E5uP40j3CpBc2nHKflwOo3iZD7BFPIHE,3648
|
|
120
|
+
basic_memory/schemas/request.py,sha256=Mv5EvrLZlFIiPr8dOjo_4QXvkseYhQI7cd_X2zDsxQM,3760
|
|
121
|
+
basic_memory/schemas/response.py,sha256=XupGYKKr5I2D7Qg9HCSD_c-0A-C1BPA8FNIvHK6Gars,6450
|
|
122
|
+
basic_memory/schemas/search.py,sha256=ywMsDGAQK2sO2TT5lc-da_k67OKW1x1TenXormHHWv4,3657
|
|
123
|
+
basic_memory/schemas/sync_report.py,sha256=JfxSr44Zxhp_R3cOfIc4G0Wj6hl2SPlIUwiYFLFK2sY,1600
|
|
124
|
+
basic_memory/services/__init__.py,sha256=XGt8WX3fX_0K9L37Msy8HF8nlMZYIG3uQ6mUX6_iJtg,259
|
|
125
|
+
basic_memory/services/context_service.py,sha256=73meCXDdDvW7LXlnTvQG_rU-Yp-ogAZoPgyw0WEX2Yw,15742
|
|
126
|
+
basic_memory/services/directory_service.py,sha256=VCVPYN8WVMIlh6o-Qsutb7eZsM7eI0-j9ABtVUjvEgo,11216
|
|
127
|
+
basic_memory/services/entity_service.py,sha256=j-aFJxO_PbUKhiHf7nUK1ClKE7dA5oURlgQ85Z9pH90,34750
|
|
128
|
+
basic_memory/services/exceptions.py,sha256=oVjQr50XQqnFq1-MNKBilI2ShtHDxypavyDk1UeyHhw,390
|
|
129
|
+
basic_memory/services/file_service.py,sha256=jCrmnEkTQ4t9HF7L_M6BL7tdDqjjzty9hpTo9AzwhvM,10059
|
|
130
|
+
basic_memory/services/initialization.py,sha256=OtdP1iCQIFvPQKtl7x0yfAkdFXH88Ro71I9dWLq0sPI,7520
|
|
131
|
+
basic_memory/services/link_resolver.py,sha256=1-_VFsvqdT5rVBHe8Jrq63U59XQ0hxGezxY8c24Tiow,4594
|
|
132
|
+
basic_memory/services/project_service.py,sha256=Hoifww_goAQZfsYZgwfLYJDRIjP0i1MBgPE0MctmGPY,33813
|
|
133
|
+
basic_memory/services/search_service.py,sha256=Ld0fyWKF2PZq2ni0rZimKslOsH5K_psi0qq8ty3_1Co,13159
|
|
134
|
+
basic_memory/services/service.py,sha256=V-d_8gOV07zGIQDpL-Ksqs3ZN9l3qf3HZOK1f_YNTag,336
|
|
135
|
+
basic_memory/services/sync_status_service.py,sha256=CgJdaJ6OFvFjKHIQSVIQX8kEU389Mrz_WS6x8dx2-7c,7504
|
|
136
|
+
basic_memory/sync/__init__.py,sha256=CVHguYH457h2u2xoM8KvOilJC71XJlZ-qUh8lHcjYj4,156
|
|
137
|
+
basic_memory/sync/background_sync.py,sha256=VJr2SukRKLdsbfB-9Re4LehcpK15a-RLXAFB-sAdRRM,726
|
|
138
|
+
basic_memory/sync/sync_service.py,sha256=WrR0iyvWtHmMyMTaViqoE1aRnYVqYIjnuWgFCTwBKBw,32564
|
|
139
|
+
basic_memory/sync/watch_service.py,sha256=vzVdiJh0eLbqYIkLIJp8hwRIj4z52am6Q-_OubC6mbY,19855
|
|
140
|
+
basic_memory/templates/prompts/continue_conversation.hbs,sha256=trrDHSXA5S0JCbInMoUJL04xvCGRB_ku1RHNQHtl6ZI,3076
|
|
141
|
+
basic_memory/templates/prompts/search.hbs,sha256=H1cCIsHKp4VC1GrH2KeUB8pGe5vXFPqb2VPotypmeCA,3098
|
|
142
|
+
basic_memory-0.15.1.dist-info/METADATA,sha256=Qg0Ljui70r0LXBf9iHJ2CQCCY6TukdOcz-DWneGlyeI,15670
|
|
143
|
+
basic_memory-0.15.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
144
|
+
basic_memory-0.15.1.dist-info/entry_points.txt,sha256=wvE2mRF6-Pg4weIYcfQ-86NOLZD4WJg7F7TIsRVFLb8,90
|
|
145
|
+
basic_memory-0.15.1.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
|
146
|
+
basic_memory-0.15.1.dist-info/RECORD,,
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
"""Project session management for Basic Memory MCP server.
|
|
2
|
-
|
|
3
|
-
Provides simple in-memory project context for MCP tools, allowing users to switch
|
|
4
|
-
between projects during a conversation without restarting the server.
|
|
5
|
-
"""
|
|
6
|
-
|
|
7
|
-
from dataclasses import dataclass
|
|
8
|
-
from typing import Optional
|
|
9
|
-
from loguru import logger
|
|
10
|
-
|
|
11
|
-
from basic_memory.config import ProjectConfig, get_project_config, ConfigManager
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
@dataclass
|
|
15
|
-
class ProjectSession:
|
|
16
|
-
"""Simple in-memory project context for MCP session.
|
|
17
|
-
|
|
18
|
-
This class manages the current project context that tools use when no explicit
|
|
19
|
-
project is specified. It's initialized with the default project from config
|
|
20
|
-
and can be changed during the conversation.
|
|
21
|
-
"""
|
|
22
|
-
|
|
23
|
-
current_project: Optional[str] = None
|
|
24
|
-
default_project: Optional[str] = None
|
|
25
|
-
|
|
26
|
-
def initialize(self, default_project: str) -> "ProjectSession":
|
|
27
|
-
"""Set the default project from config on startup.
|
|
28
|
-
|
|
29
|
-
Args:
|
|
30
|
-
default_project: The project name from configuration
|
|
31
|
-
"""
|
|
32
|
-
self.default_project = default_project
|
|
33
|
-
self.current_project = default_project
|
|
34
|
-
logger.info(f"Initialized project session with default project: {default_project}")
|
|
35
|
-
return self
|
|
36
|
-
|
|
37
|
-
def get_current_project(self) -> str:
|
|
38
|
-
"""Get the currently active project name.
|
|
39
|
-
|
|
40
|
-
Returns:
|
|
41
|
-
The current project name, falling back to default, then 'main'
|
|
42
|
-
"""
|
|
43
|
-
return self.current_project or self.default_project or "main"
|
|
44
|
-
|
|
45
|
-
def set_current_project(self, project_name: str) -> None:
|
|
46
|
-
"""Set the current project context.
|
|
47
|
-
|
|
48
|
-
Args:
|
|
49
|
-
project_name: The project to switch to
|
|
50
|
-
"""
|
|
51
|
-
previous = self.current_project
|
|
52
|
-
self.current_project = project_name
|
|
53
|
-
logger.info(f"Switched project context: {previous} -> {project_name}")
|
|
54
|
-
|
|
55
|
-
def get_default_project(self) -> str:
|
|
56
|
-
"""Get the default project name from startup.
|
|
57
|
-
|
|
58
|
-
Returns:
|
|
59
|
-
The default project name, or 'main' if not set
|
|
60
|
-
"""
|
|
61
|
-
return self.default_project or "main" # pragma: no cover
|
|
62
|
-
|
|
63
|
-
def reset_to_default(self) -> None: # pragma: no cover
|
|
64
|
-
"""Reset current project back to the default project."""
|
|
65
|
-
self.current_project = self.default_project # pragma: no cover
|
|
66
|
-
logger.info(f"Reset project context to default: {self.default_project}") # pragma: no cover
|
|
67
|
-
|
|
68
|
-
def refresh_from_config(self) -> None:
|
|
69
|
-
"""Refresh session state from current configuration.
|
|
70
|
-
|
|
71
|
-
This method reloads the default project from config and reinitializes
|
|
72
|
-
the session. This should be called when the default project is changed
|
|
73
|
-
via CLI or API to ensure MCP session stays in sync.
|
|
74
|
-
"""
|
|
75
|
-
# Reload config to get latest default project
|
|
76
|
-
current_config = ConfigManager().config
|
|
77
|
-
new_default = current_config.default_project
|
|
78
|
-
|
|
79
|
-
# Reinitialize with new default
|
|
80
|
-
self.initialize(new_default)
|
|
81
|
-
logger.info(f"Refreshed project session from config, new default: {new_default}")
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
# Global session instance
|
|
85
|
-
session = ProjectSession()
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
def get_active_project(project_override: Optional[str] = None) -> ProjectConfig:
|
|
89
|
-
"""Get the active project name for a tool call.
|
|
90
|
-
|
|
91
|
-
This is the main function tools should use to determine which project
|
|
92
|
-
to operate on.
|
|
93
|
-
|
|
94
|
-
Args:
|
|
95
|
-
project_override: Optional explicit project name from tool parameter
|
|
96
|
-
|
|
97
|
-
Returns:
|
|
98
|
-
The project name to use (override takes precedence over session context)
|
|
99
|
-
"""
|
|
100
|
-
if project_override: # pragma: no cover
|
|
101
|
-
project = get_project_config(project_override)
|
|
102
|
-
session.set_current_project(project_override)
|
|
103
|
-
return project
|
|
104
|
-
|
|
105
|
-
current_project = session.get_current_project()
|
|
106
|
-
active_project = get_project_config(current_project)
|
|
107
|
-
return active_project
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
def add_project_metadata(result: str, project_name: str) -> str:
|
|
111
|
-
"""Add project context as metadata footer for LLM awareness.
|
|
112
|
-
|
|
113
|
-
Args:
|
|
114
|
-
result: The tool result string
|
|
115
|
-
project_name: The project name that was used
|
|
116
|
-
|
|
117
|
-
Returns:
|
|
118
|
-
Result with project metadata footer
|
|
119
|
-
"""
|
|
120
|
-
return f"{result}\n\n<!-- Project: {project_name} -->" # pragma: no cover
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
basic_memory/__init__.py,sha256=mDdoiW51bM3-d6fzochHAwurt6I9-U7K-Ar8WifQv4I,256
|
|
2
|
-
basic_memory/config.py,sha256=boVbIb5qgHmvXQo4XlkpaxxqRmhDXWqHUtjbD-_brxE,13046
|
|
3
|
-
basic_memory/db.py,sha256=JeBTsLP56PqCOwX8CZAB7-ijpPbg-Aco5QebpFqkBtg,7428
|
|
4
|
-
basic_memory/deps.py,sha256=vOKM2cpUm4r84LxonMH7LcgM1bkp-FEUqmgruK6CQR0,12144
|
|
5
|
-
basic_memory/file_utils.py,sha256=p1pjbAHNrAR4H3VuMq_Nh4yjJUKkbnwEAygtg5SrMio,8395
|
|
6
|
-
basic_memory/utils.py,sha256=cHcvxLF48lHL2XbekcEFkY6RVJrFwZfJXu28Itepm7o,12704
|
|
7
|
-
basic_memory/alembic/alembic.ini,sha256=IEZsnF8CbbZnkwBr67LzKKNobHuzTaQNUvM8Psop5xc,3733
|
|
8
|
-
basic_memory/alembic/env.py,sha256=4kHZh-rfzVARy9ndvsuDPTBt6Hk3dZ2BwI030EppBrA,2838
|
|
9
|
-
basic_memory/alembic/migrations.py,sha256=lriHPXDdBLSNXEW3QTpU0SJKuVd1V-8NrVkpN3qfsUQ,718
|
|
10
|
-
basic_memory/alembic/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
|
|
11
|
-
basic_memory/alembic/versions/3dae7c7b1564_initial_schema.py,sha256=lTbWlAnd1es7xU99DoJgfaRe1_Kte8TL98riqeKGV80,4363
|
|
12
|
-
basic_memory/alembic/versions/502b60eaa905_remove_required_from_entity_permalink.py,sha256=k6xYTmYPM9Ros-7CA7BwZBKYwoK_gmVdC-2n8FAjdoE,1840
|
|
13
|
-
basic_memory/alembic/versions/5fe1ab1ccebe_add_projects_table.py,sha256=2CCY9ayjzbraYMcinqSsJi9Sc0nu2e-ehkUJus-sz34,4379
|
|
14
|
-
basic_memory/alembic/versions/647e7a75e2cd_project_constraint_fix.py,sha256=YErFkIpZdicvUil4ZtE6uxSpk5BZCTXZ_TfPE-MgSfo,4210
|
|
15
|
-
basic_memory/alembic/versions/a1b2c3d4e5f6_fix_project_foreign_keys.py,sha256=ItF6VEmSMIKBRZSEse9cUHSQ3xTQpQ1TJBrwournz7g,1884
|
|
16
|
-
basic_memory/alembic/versions/b3c3938bacdb_relation_to_name_unique_index.py,sha256=RsGymQzfRXV1LSNKiyi0lMilTxW1NgwS9jR67ye2apI,1428
|
|
17
|
-
basic_memory/alembic/versions/cc7172b46608_update_search_index_schema.py,sha256=kDavR9Qqx9wSu5P3qd4SZq_waIsDG1UMTg2SmDoktMU,3679
|
|
18
|
-
basic_memory/api/__init__.py,sha256=wCpj-21j1D0KzKl9Ql6unLBVFY0K1uGp_FeSZRKtqpk,72
|
|
19
|
-
basic_memory/api/app.py,sha256=rWc6wsCUEK9YMPav3_qiiwBASA2s1S_wF1C4ssBm6M8,2897
|
|
20
|
-
basic_memory/api/template_loader.py,sha256=exbTeXyJRgyLFmSjNeroxjT7X2DWFm2X5qUVa3drbYM,8607
|
|
21
|
-
basic_memory/api/routers/__init__.py,sha256=REO5CKQ96o5vtGWACcsIxIpWybIUSeKXc83RWbWc8BQ,398
|
|
22
|
-
basic_memory/api/routers/directory_router.py,sha256=rBQHvuwffUOk0iKvcEs2QlWclgvr8ur24f_pH3-sVRQ,2054
|
|
23
|
-
basic_memory/api/routers/importer_router.py,sha256=xFUCorkPWo8AF0ya0UrcLmXNf8CjPZdAqddQIH8PO-o,4513
|
|
24
|
-
basic_memory/api/routers/knowledge_router.py,sha256=4dD_tPpcJGWCuoRKEbQXCS3hoXNWe-VbcGC7xV-8VoE,9738
|
|
25
|
-
basic_memory/api/routers/management_router.py,sha256=zbzilNzsYUbFbE2uFXRM33cDn9IbI-73y8C1-b-19O4,2730
|
|
26
|
-
basic_memory/api/routers/memory_router.py,sha256=a9Cnx3XgwSkO-2ABFzI3wM3PoMGxuyfJFFp7NfFZapc,3003
|
|
27
|
-
basic_memory/api/routers/project_router.py,sha256=3qoto8Fm9pWqg6K0ukdd-VmggMENx7kK4JHvJrOhZ_I,8432
|
|
28
|
-
basic_memory/api/routers/prompt_router.py,sha256=4wxq6-NREgVJM8N9C0YsN1AAUDD8nkTCOzWyzSqTSFw,9948
|
|
29
|
-
basic_memory/api/routers/resource_router.py,sha256=Uko0RLea8DTXl0hPyGjay_YNyYE5852VrBXhlWs8YGc,8097
|
|
30
|
-
basic_memory/api/routers/search_router.py,sha256=GD62jlCQTiL_VNsdibi-b1f6H40KCWo9SX2Cl7YH4QU,1226
|
|
31
|
-
basic_memory/api/routers/utils.py,sha256=nmD1faJOHcnWQjbCanojUwA9xhinf764U8SUqjNXpXw,5159
|
|
32
|
-
basic_memory/cli/__init__.py,sha256=arcKLAWRDhPD7x5t80MlviZeYzwHZ0GZigyy3NKVoGk,33
|
|
33
|
-
basic_memory/cli/app.py,sha256=9xBnA4DXB8RFitiB96Jbs8XNsrz_WfE583QhJk_o8vg,2268
|
|
34
|
-
basic_memory/cli/main.py,sha256=ekBbEr_5jjGZaFJiOK4VhZ3wNiu6WjhXVi_syke1xw0,465
|
|
35
|
-
basic_memory/cli/commands/__init__.py,sha256=3oojcC-Y-4RPqff9vtwWziT_T4uvBVicL0pSHNilVkU,393
|
|
36
|
-
basic_memory/cli/commands/db.py,sha256=cEoQltgKudEuJH0Cn-YiPpNaDQzu5-YVwCD0anIIKOA,1480
|
|
37
|
-
basic_memory/cli/commands/import_chatgpt.py,sha256=iVfMo6yrY1EzViSlGL3BnZVkh-k9ht0bbCMJ6dWFCuU,2856
|
|
38
|
-
basic_memory/cli/commands/import_claude_conversations.py,sha256=e8l4OHMr8A9PtKgOO6T9-86Jca6FzCrJAsOzo-EQrlc,2946
|
|
39
|
-
basic_memory/cli/commands/import_claude_projects.py,sha256=YyFXcHWAHJmtR6DNwTtao8nKECoFyo8GripRElqMQ7w,2891
|
|
40
|
-
basic_memory/cli/commands/import_memory_json.py,sha256=fqGT9nILJnIpCtFseaFDox2IodVng48Suev5EQp8Azg,3013
|
|
41
|
-
basic_memory/cli/commands/mcp.py,sha256=Phvj0nsY70dDIEt8-KN_vCoakfwWNsRo4IzvzYWXusY,2593
|
|
42
|
-
basic_memory/cli/commands/project.py,sha256=gKnLp4X3AXKunAIQzGib8StFRkO_nWQ6eDEE81Ahxks,13940
|
|
43
|
-
basic_memory/cli/commands/status.py,sha256=ttDqI31xTQVPabJKIFi-unTiJKL6SoClJdYqKqLqLXA,5809
|
|
44
|
-
basic_memory/cli/commands/sync.py,sha256=cDs-c8TDOFDCf29MB6u_XUzl3EP3Br8MQyZLu0X4shM,8213
|
|
45
|
-
basic_memory/cli/commands/tool.py,sha256=my-kALn3khv1W2Avi736NrHsfkpbyP57mDi5LjHwqe0,9540
|
|
46
|
-
basic_memory/importers/__init__.py,sha256=BTcBW97P3thcsWa5w9tQsvOu8ynHDgw2-8tPgkCZoh8,795
|
|
47
|
-
basic_memory/importers/base.py,sha256=awwe_U-CfzSINKoM6iro7ru4QqLlsfXzdHztDvebnxM,2531
|
|
48
|
-
basic_memory/importers/chatgpt_importer.py,sha256=3BJZUOVSX0cg9G6WdMTDQTscMoG6eWuf6E-c9Qhi0v4,7687
|
|
49
|
-
basic_memory/importers/claude_conversations_importer.py,sha256=p7yehy9Pgc5fef6d0ab9DwCm8CCiyyZkGEqX8U7rHbw,5725
|
|
50
|
-
basic_memory/importers/claude_projects_importer.py,sha256=pFJnX9m7GOv2TrS9f2nM1-mTtheTEBWjxKtwDWdJOGM,5389
|
|
51
|
-
basic_memory/importers/memory_json_importer.py,sha256=vH0EUpnxftmtXOv_exQjJQ7CihETDkegrEjTq4K96vw,4631
|
|
52
|
-
basic_memory/importers/utils.py,sha256=SRcDrjedYH_PeD9Pu1DenlrDcar7L751ZV3qkzJXRQ4,1818
|
|
53
|
-
basic_memory/markdown/__init__.py,sha256=DdzioCWtDnKaq05BHYLgL_78FawEHLpLXnp-kPSVfIc,501
|
|
54
|
-
basic_memory/markdown/entity_parser.py,sha256=1zpvVAtWnCV0uXB4DtmMMNzlxGSE9iulWPUpfJyYWvw,4542
|
|
55
|
-
basic_memory/markdown/markdown_processor.py,sha256=imSVYyyfz0rQe9CyDcZhouB4m6V1haMdq6j3EWdo_wc,4984
|
|
56
|
-
basic_memory/markdown/plugins.py,sha256=9wjnfl82CVHuWPMdLH3Wwhml4MC4vh3zrEiH8qY17yY,7478
|
|
57
|
-
basic_memory/markdown/schemas.py,sha256=eyxYCr1hVyWmImcle0asE5It_DD6ARkqaBZYu1KK5n4,1896
|
|
58
|
-
basic_memory/markdown/utils.py,sha256=cm3h3C1eFz-zklXx5xaNRE-EBv8d-S5tixbTa5WqubQ,3416
|
|
59
|
-
basic_memory/mcp/__init__.py,sha256=dsDOhKqjYeIbCULbHIxfcItTbqudEuEg1Np86eq0GEQ,35
|
|
60
|
-
basic_memory/mcp/async_client.py,sha256=ZTH0OH8wowoyIZf_UdbqyuSyWljGSAlZMbPRFF0dowM,925
|
|
61
|
-
basic_memory/mcp/project_session.py,sha256=TaQD7JPeyQY-64sFJG41AXQNFizHegZ9POVLpD1pCBk,4203
|
|
62
|
-
basic_memory/mcp/server.py,sha256=CpEMrifWHqkj6Q--LUtcfKzzsp0-FW8Lf3eHKrlzx2E,1248
|
|
63
|
-
basic_memory/mcp/prompts/__init__.py,sha256=-Bl9Dgj2TD9PULjzggPqXuvPEjWCRy7S9Yg03h2-U7A,615
|
|
64
|
-
basic_memory/mcp/prompts/ai_assistant_guide.py,sha256=8TI5xObiRVcwv6w9by1xQHlX0whvyE7-LGsiqDMRTFg,821
|
|
65
|
-
basic_memory/mcp/prompts/continue_conversation.py,sha256=rsmlC2V7e7G6DAK0K825vFsPKgsRQ702HFzn6lkHaDM,1998
|
|
66
|
-
basic_memory/mcp/prompts/recent_activity.py,sha256=0v1c3b2SdDDxXVuF8eOjNooYy04uRYel0pdJ0rnggw4,3311
|
|
67
|
-
basic_memory/mcp/prompts/search.py,sha256=nb88MZy9tdW_MmCLUVItiukrLdb3xEHWLv0JVLUlc4o,1692
|
|
68
|
-
basic_memory/mcp/prompts/utils.py,sha256=VacrbqwYtySpIlYIrKHo5s6jtoTMscYJqrFRH3zpC6Q,5431
|
|
69
|
-
basic_memory/mcp/resources/ai_assistant_guide.md,sha256=qnYWDkYlb-JmKuOoZ5llmRas_t4dWDXB_i8LE277Lgs,14777
|
|
70
|
-
basic_memory/mcp/resources/project_info.py,sha256=LcUkTx4iXBfU6Lp4TVch78OqLopbOy4ljyKnfr4VXso,1906
|
|
71
|
-
basic_memory/mcp/tools/__init__.py,sha256=hyt3HdUuw7djZForr24Qpw8EnOMQaDCm0_BTs-CaX-Y,1619
|
|
72
|
-
basic_memory/mcp/tools/build_context.py,sha256=41JGBL0_Ne0J4q8HXbDPmIZFRNyrwD5NT4EhWE_SlEQ,4975
|
|
73
|
-
basic_memory/mcp/tools/canvas.py,sha256=22F9G9gfPb-l8i1B5ra4Ja_h9zYY83rPY9mDA5C5gkY,3738
|
|
74
|
-
basic_memory/mcp/tools/delete_note.py,sha256=tSyRc_VgBmLyVeenClwX1Sk--LKcGahAMzTX2mK2XIs,7346
|
|
75
|
-
basic_memory/mcp/tools/edit_note.py,sha256=q4x-f7-j_l-wzm17-AVFT1_WGCo0Cq4lI3seYSe21aY,13570
|
|
76
|
-
basic_memory/mcp/tools/list_directory.py,sha256=-FxDsCru5YD02M4qkQDAurEJWyRaC7YI4YR6zg0atR8,5236
|
|
77
|
-
basic_memory/mcp/tools/move_note.py,sha256=XvJ9m6rrwsVlb8ScR5ik5OQKcLbNnR52HbyuAhutVYw,17541
|
|
78
|
-
basic_memory/mcp/tools/project_management.py,sha256=daaa7t9xrCLno3VLMBpda3adMw7cumIO-_R_ncBjMsc,13624
|
|
79
|
-
basic_memory/mcp/tools/read_content.py,sha256=lqE63axQf9h0OU36Lh5e1xr164nQhywdaMrPnKw_hyQ,9125
|
|
80
|
-
basic_memory/mcp/tools/read_note.py,sha256=_IbyJLCajJoI2ztFhyv_n9rpN-P64BPuw4QGXbR7D4w,8170
|
|
81
|
-
basic_memory/mcp/tools/recent_activity.py,sha256=XVjNJAJnmxvzx9_Ls1A-QOd2yTR7pJlSTTuRxSivmN4,4833
|
|
82
|
-
basic_memory/mcp/tools/search.py,sha256=hRmwBXRoxEUOtUOi9WG80NfLluHOG5XpSOArMJumt8o,15883
|
|
83
|
-
basic_memory/mcp/tools/sync_status.py,sha256=c91zsYbq7IuC5rF-OaZ8JwgtJOBlPcTks1cSvYO4CiI,10517
|
|
84
|
-
basic_memory/mcp/tools/utils.py,sha256=qVAEkR4naCLrqIo_7xXFubqGGxypouz-DB4_svTvARY,20892
|
|
85
|
-
basic_memory/mcp/tools/view_note.py,sha256=ddNXxyETsdA5SYflIaQVj_Cbd7I7CLVs3atRRDMbGmg,2499
|
|
86
|
-
basic_memory/mcp/tools/write_note.py,sha256=dxOW-0nTl_619-NjIdTSM8IsTRtTQUkSyEmVfG6W_IM,6612
|
|
87
|
-
basic_memory/models/__init__.py,sha256=j0C4dtFi-FOEaQKR8dQWEG-dJtdQ15NBTiJg4nbIXNU,333
|
|
88
|
-
basic_memory/models/base.py,sha256=4hAXJ8CE1RnjKhb23lPd-QM7G_FXIdTowMJ9bRixspU,225
|
|
89
|
-
basic_memory/models/knowledge.py,sha256=t493m_jYw_80xtqYRauyJ5pDaa1RlvpMduHw7JCNWuA,7702
|
|
90
|
-
basic_memory/models/project.py,sha256=b1ujg-mM-XqLtKw29RVUtLWMgZb9qOllfHmA5ZS1WuQ,2838
|
|
91
|
-
basic_memory/models/search.py,sha256=PhQ8w4taApSvjh1DpPhB4cH9GTt2E2po-DFZzhnoZkY,1300
|
|
92
|
-
basic_memory/repository/__init__.py,sha256=MWK-o8QikqzOpe5SyPbKQ2ioB5BWA0Upz65tgg-E0DU,327
|
|
93
|
-
basic_memory/repository/entity_repository.py,sha256=QaWYJf9kx55illiLXFCAOA7-fXJX5IVf4m8FspdPzY0,10429
|
|
94
|
-
basic_memory/repository/observation_repository.py,sha256=qhMvHLSjaoT3Fa_cQOKsT5jYPj66GXSytEBMwLAgygQ,2943
|
|
95
|
-
basic_memory/repository/project_info_repository.py,sha256=8XLVAYKkBWQ6GbKj1iqA9OK0FGPHdTlOs7ZtfeUf9t8,338
|
|
96
|
-
basic_memory/repository/project_repository.py,sha256=Fvo_pCylz8okFiv3FD3nv6PNQknLuC7f3S11fJNQkic,3795
|
|
97
|
-
basic_memory/repository/relation_repository.py,sha256=z7Oo5Zz_J-Bj6RvQDpSWR73ZLk2fxG7e7jrMbeFeJvQ,3179
|
|
98
|
-
basic_memory/repository/repository.py,sha256=MJb-cb8QZQbL-Grq_iqv4Kq75aX2yQohLIqh5T4fFxw,15224
|
|
99
|
-
basic_memory/repository/search_repository.py,sha256=VQfxYZqYupT9-HiWz3_UvhpIRNzpjb4aDrbIdQj8x6E,22171
|
|
100
|
-
basic_memory/schemas/__init__.py,sha256=mEgIFcdTeb-v4y0gkOh_pA5zyqGbZk-9XbXqlSi6WMs,1674
|
|
101
|
-
basic_memory/schemas/base.py,sha256=XKrEJyGP8QpFuDOeoAicF8iOh4V-jF1XCdLIs1Byp6k,8270
|
|
102
|
-
basic_memory/schemas/delete.py,sha256=UAR2JK99WMj3gP-yoGWlHD3eZEkvlTSRf8QoYIE-Wfw,1180
|
|
103
|
-
basic_memory/schemas/directory.py,sha256=F9_LrJqRqb_kO08GDKJzXLb2nhbYG2PdVUo5eDD_Kf4,881
|
|
104
|
-
basic_memory/schemas/importer.py,sha256=rDPfQjyjKyjOe26pwp1UH4eDqGwMKfeNs1Fjv5PxOc0,693
|
|
105
|
-
basic_memory/schemas/memory.py,sha256=K9RyK4MS0nzuV9JhRINLKSsO5BpmACI8ldNzBPs4f_s,6388
|
|
106
|
-
basic_memory/schemas/project_info.py,sha256=fcNjUpe25_5uMmKy142ib3p5qEakzs1WJPLkgol5zyw,7047
|
|
107
|
-
basic_memory/schemas/prompt.py,sha256=SpIVfZprQT8E5uP40j3CpBc2nHKflwOo3iZD7BFPIHE,3648
|
|
108
|
-
basic_memory/schemas/request.py,sha256=Mv5EvrLZlFIiPr8dOjo_4QXvkseYhQI7cd_X2zDsxQM,3760
|
|
109
|
-
basic_memory/schemas/response.py,sha256=XupGYKKr5I2D7Qg9HCSD_c-0A-C1BPA8FNIvHK6Gars,6450
|
|
110
|
-
basic_memory/schemas/search.py,sha256=ywMsDGAQK2sO2TT5lc-da_k67OKW1x1TenXormHHWv4,3657
|
|
111
|
-
basic_memory/services/__init__.py,sha256=XGt8WX3fX_0K9L37Msy8HF8nlMZYIG3uQ6mUX6_iJtg,259
|
|
112
|
-
basic_memory/services/context_service.py,sha256=DaxfDEC2mOFyfqmOMoKHAwa-GS6cQub8tfwJDaiHJdI,15103
|
|
113
|
-
basic_memory/services/directory_service.py,sha256=_FGX9yunAfmeKCfGG4wKC5oN9eBj2R12v0fwH3GcNxo,6273
|
|
114
|
-
basic_memory/services/entity_service.py,sha256=eYwJYwAG7xGzCeVU5eeLmKJP-oKDqvjPUN0d3L1VbJs,32253
|
|
115
|
-
basic_memory/services/exceptions.py,sha256=oVjQr50XQqnFq1-MNKBilI2ShtHDxypavyDk1UeyHhw,390
|
|
116
|
-
basic_memory/services/file_service.py,sha256=jCrmnEkTQ4t9HF7L_M6BL7tdDqjjzty9hpTo9AzwhvM,10059
|
|
117
|
-
basic_memory/services/initialization.py,sha256=Td5Yt5nPSskGMeWZSbVbM1WpO9-Z3w2cJAjAzqZ-EMQ,6715
|
|
118
|
-
basic_memory/services/link_resolver.py,sha256=1-_VFsvqdT5rVBHe8Jrq63U59XQ0hxGezxY8c24Tiow,4594
|
|
119
|
-
basic_memory/services/project_service.py,sha256=M9tukO5Ph847a7ZWrimcB8b-yNcQz3LKRvhvc7aU8GI,30175
|
|
120
|
-
basic_memory/services/search_service.py,sha256=c5Ky0ufz7YPFgHhVzNRQ4OecF_JUrt7nALzpMjobW4M,12782
|
|
121
|
-
basic_memory/services/service.py,sha256=V-d_8gOV07zGIQDpL-Ksqs3ZN9l3qf3HZOK1f_YNTag,336
|
|
122
|
-
basic_memory/services/sync_status_service.py,sha256=CgJdaJ6OFvFjKHIQSVIQX8kEU389Mrz_WS6x8dx2-7c,7504
|
|
123
|
-
basic_memory/sync/__init__.py,sha256=CVHguYH457h2u2xoM8KvOilJC71XJlZ-qUh8lHcjYj4,156
|
|
124
|
-
basic_memory/sync/background_sync.py,sha256=VJr2SukRKLdsbfB-9Re4LehcpK15a-RLXAFB-sAdRRM,726
|
|
125
|
-
basic_memory/sync/sync_service.py,sha256=-cN3fV1VqO_LtnfcJlbsNAMSmM_tcUNVdUAMlh11XVo,26581
|
|
126
|
-
basic_memory/sync/watch_service.py,sha256=1KsgZn7B_izo5ECe_mhwJm_ewi0hYjjVQckhU8EqhX0,16877
|
|
127
|
-
basic_memory/templates/prompts/continue_conversation.hbs,sha256=trrDHSXA5S0JCbInMoUJL04xvCGRB_ku1RHNQHtl6ZI,3076
|
|
128
|
-
basic_memory/templates/prompts/search.hbs,sha256=H1cCIsHKp4VC1GrH2KeUB8pGe5vXFPqb2VPotypmeCA,3098
|
|
129
|
-
basic_memory-0.14.4.dist-info/METADATA,sha256=zoI_IydCEe0CWVkDlOQ8X_DyNhqexppXE6RIWE3lokY,14329
|
|
130
|
-
basic_memory-0.14.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
131
|
-
basic_memory-0.14.4.dist-info/entry_points.txt,sha256=wvE2mRF6-Pg4weIYcfQ-86NOLZD4WJg7F7TIsRVFLb8,90
|
|
132
|
-
basic_memory-0.14.4.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
|
133
|
-
basic_memory-0.14.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|