@@ -38,8 +38,7 @@ class ProjectConfig(BaseSettings):
3838 default = 500 , description = "Milliseconds to wait after changes before syncing" , gt = 0
3939 )
4040
41- log_level : str = "DEBUG"
42-
41+ # update permalinks on move
4342 update_permalinks_on_move : bool = Field (
4443 default = False ,
4544 description = "Whether to update permalinks when files are moved or renamed. default (False)" ,
@@ -82,6 +81,18 @@ class BasicMemoryConfig(BaseSettings):
8281 description = "Name of the default project to use" ,
8382 )
8483
84+ log_level : str = "INFO"
85+
86+ update_permalinks_on_move : bool = Field (
87+ default = False ,
88+ description = "Whether to update permalinks when files are moved or renamed. default (False)" ,
89+ )
90+
91+ sync_changes : bool = Field (
92+ default = True ,
93+ description = "Whether to sync changes in real time. default (True)" ,
94+ )
95+
8596 model_config = SettingsConfigDict (
8697 env_prefix = "BASIC_MEMORY_" ,
8798 extra = "ignore" ,
@@ -199,9 +210,14 @@ def get_project_config(project_name: Optional[str] = None) -> ProjectConfig:
199210 "BASIC_MEMORY_PROJECT" , project_name or config_manager .default_project
200211 )
201212
213+ update_permalinks_on_move = config_manager .load_config ().update_permalinks_on_move
202214 try :
203215 project_path = config_manager .get_project_path (actual_project_name )
204- return ProjectConfig (home = project_path , project = actual_project_name )
216+ return ProjectConfig (
217+ home = project_path ,
218+ project = actual_project_name ,
219+ update_permalinks_on_move = update_permalinks_on_move ,
220+ )
205221 except ValueError : # pragma: no cover
206222 logger .warning (f"Project '{ actual_project_name } ' not found, using default" )
207223 project_path = config_manager .get_project_path (config_manager .default_project )
@@ -230,8 +246,10 @@ def get_process_name(): # pragma: no cover
230246 return "sync"
231247 elif "mcp" in sys .argv :
232248 return "mcp"
233- else :
249+ elif "cli" in sys . argv :
234250 return "cli"
251+ else :
252+ return "api"
235253
236254
237255process_name = get_process_name ()
@@ -251,7 +269,7 @@ def setup_basic_memory_logging(): # pragma: no cover
251269 setup_logging (
252270 env = config .env ,
253271 home_dir = user_home , # Use user home for logs
254- log_level = config .log_level ,
272+ log_level = config_manager . load_config () .log_level ,
255273 log_file = f"{ DATA_DIR_NAME } /basic-memory-{ process_name } .log" ,
256274 console = False ,
257275 )
0 commit comments