fix(cron): keep SOUL.md identity when workdir is unset
This commit is contained in:
11
run_agent.py
11
run_agent.py
@@ -926,6 +926,7 @@ class AIAgent:
|
||||
thread_id: str = None,
|
||||
gateway_session_key: str = None,
|
||||
skip_context_files: bool = False,
|
||||
load_soul_identity: bool = False,
|
||||
skip_memory: bool = False,
|
||||
session_db=None,
|
||||
parent_session_id: str = None,
|
||||
@@ -977,6 +978,9 @@ class AIAgent:
|
||||
skip_context_files (bool): If True, skip auto-injection of SOUL.md, AGENTS.md, and .cursorrules
|
||||
into the system prompt. Use this for batch processing and data generation to avoid
|
||||
polluting trajectories with user-specific persona or project instructions.
|
||||
load_soul_identity (bool): If True, still use ~/.hermes/SOUL.md as the primary
|
||||
identity even when skip_context_files=True. Project context files from the cwd
|
||||
remain skipped.
|
||||
"""
|
||||
_install_safe_stdio()
|
||||
|
||||
@@ -1005,6 +1009,7 @@ class AIAgent:
|
||||
self._print_fn = None
|
||||
self.background_review_callback = None # Optional sync callback for gateway delivery
|
||||
self.skip_context_files = skip_context_files
|
||||
self.load_soul_identity = load_soul_identity
|
||||
self.pass_session_id = pass_session_id
|
||||
self._credential_pool = credential_pool
|
||||
self.log_prefix_chars = log_prefix_chars
|
||||
@@ -4742,9 +4747,11 @@ class AIAgent:
|
||||
# 6. Current date & time (frozen at build time)
|
||||
# 7. Platform-specific formatting hint
|
||||
|
||||
# Try SOUL.md as primary identity (unless context files are skipped)
|
||||
# Try SOUL.md as primary identity unless the caller explicitly skipped it.
|
||||
# Some execution modes (cron) still want HERMES_HOME persona while keeping
|
||||
# cwd project instructions disabled.
|
||||
_soul_loaded = False
|
||||
if not self.skip_context_files:
|
||||
if self.load_soul_identity or not self.skip_context_files:
|
||||
_soul_content = load_soul_md()
|
||||
if _soul_content:
|
||||
prompt_parts = [_soul_content]
|
||||
|
||||
Reference in New Issue
Block a user