Add Android forensics, IOC threat-intel DB, Compose companion; scrub secrets from configs
This commit is contained in:
@@ -76,6 +76,49 @@ def get_data_dir() -> Path:
|
||||
return d
|
||||
|
||||
|
||||
def get_user_data_dir() -> Path:
|
||||
"""Return the platform-specific user data directory.
|
||||
Created as a hidden folder on first call.
|
||||
|
||||
Windows: %APPDATA%/Autarch/
|
||||
Linux: ~/.autarch/
|
||||
macOS: ~/Library/Application Support/Autarch/
|
||||
"""
|
||||
system = platform.system()
|
||||
if system == 'Windows':
|
||||
base = os.environ.get('APPDATA', '')
|
||||
if base:
|
||||
d = Path(base) / 'Autarch'
|
||||
else:
|
||||
d = Path.home() / 'AppData' / 'Roaming' / 'Autarch'
|
||||
elif system == 'Darwin':
|
||||
d = Path.home() / 'Library' / 'Application Support' / 'Autarch'
|
||||
else:
|
||||
# Linux and others - hidden dotfolder in home
|
||||
d = Path.home() / '.autarch'
|
||||
|
||||
d.mkdir(parents=True, exist_ok=True)
|
||||
return d
|
||||
|
||||
|
||||
def get_keystore_path() -> Path:
|
||||
"""Return the path to the encrypted keystore file.
|
||||
Stored in the user data directory, separate from the app install."""
|
||||
return get_user_data_dir() / 'keystore.xml'
|
||||
|
||||
|
||||
def get_user_profile_path() -> Path:
|
||||
"""Return the path to the user profile file."""
|
||||
return get_user_data_dir() / 'profile.json'
|
||||
|
||||
|
||||
def get_user_sessions_dir() -> Path:
|
||||
"""Return the directory for user session data (chat history, agent memory)."""
|
||||
d = get_user_data_dir() / 'sessions'
|
||||
d.mkdir(parents=True, exist_ok=True)
|
||||
return d
|
||||
|
||||
|
||||
def get_config_path() -> Path:
|
||||
"""Return config path. Writable copy lives next to the exe;
|
||||
falls back to the bundled default if the writable copy doesn't exist yet."""
|
||||
|
||||
Reference in New Issue
Block a user