Skip to main content

paths

AI Agent Centralized Path Utilities for PraisonAI Agents. All persistent data uses ~/.praisonai/ by default. Override with the PRAISONAI_HOME environment variable for a single-root layout. For fresh installs (no PRAISONAI_HOME and no existing ~/.praisonai or ~/.praison), the XDG Base Directory specification is honoured when the corresponding variables are set: config -> XDG_CONFIG_HOME/praisonai (else ~/.config/praisonai) data -> XDG_DATA_HOME/praisonai (else ~/.praisonai) state -> XDG_STATE_HOME/praisonai (else ~/.local/state/praisonai) cache -> XDG_CACHE_HOME/praisonai (else ~/.cache/praisonai) An existing single root (PRAISONAI_HOME or /.praisonai//.praison) keeps all classes together, preserving full backward compatibility. This module provides a single source of truth for all data storage paths, eliminating hardcoded paths throughout the codebase (DRY principle). Usage:
Backward Compatibility: If ~/.praisonai/ doesn’t exist but ~/.praison/ does, the legacy path will be used with a deprecation warning. Run ‘praisonai migrate-data’ to migrate to the new location.

Import

Functions

get_data_dir()

Get PraisonAI data directory.

get_config_dir()

Get PraisonAI config directory (editable config, credentials, rules).

get_state_dir()

Get PraisonAI state directory (machine-local: MRU model, logs, spill).

get_sessions_dir()

Get sessions directory.

get_session_spill_dir()

Get the session spill directory (last-resort salvage on write failure).

get_skills_dir()

Get user skills directory.

get_plugins_dir()

Get user plugins directory.

get_mcp_dir()

Get MCP config directory.

get_docs_dir()

Get docs directory.

get_rules_dir()

Get rules directory.

get_permissions_dir()

Get permissions directory.

get_storage_dir()

Get generic storage directory.

get_checkpoints_dir()

Get checkpoints directory.

get_snapshots_dir()

Get snapshots directory.

get_learn_dir()

Get learn directory for learning stores.

get_cache_dir()

Get cache directory (disposable data).

get_mcp_auth_path()

Get path to MCP auth storage file.

get_memory_dir()

Get memory directory for short/long term databases.

get_workflows_dir()

Get workflows directory.

get_summaries_dir()

Get summaries directory for RAG.

get_prp_dir()

Get PRP (Prompt Response Pair) output directory.

get_runs_dir()

Get runs directory for artifacts.

get_project_data_dir()

Get project-level data directory.

get_project_sessions_dir()

Get project-level sessions directory.

get_project_knowledge_dir()

Get project-level knowledge directory.

get_project_summaries_dir()

Get project-level summaries directory for RAG.

get_project_prp_dir()

Get project-level PRP output directory.

get_config_path()

Get path to the main config.yaml file.

get_schedules_dir()

Get schedules directory.

get_storage_path()

Get default SQLite storage database path.

ensure_dir()

Ensure a directory exists, creating it if necessary.

get_all_paths()

Get all PraisonAI data paths.

Constants