diff --git a/PROJECT_INDEX.json b/PROJECT_INDEX.json index d8ed43f9..1c9de090 100644 --- a/PROJECT_INDEX.json +++ b/PROJECT_INDEX.json @@ -1 +1 @@ -{"at":"2025-08-27T15:43:28.089614","root":".","tree":[".","\u251c\u2500\u2500 claude-code/","\u2502 \u2514\u2500\u2500 agents/","\u251c\u2500\u2500 commands/","\u251c\u2500\u2500 docs/ (4 files)","\u2502 \u2514\u2500\u2500 BUILDER_METHODDS_agent-os/ (3 files)","\u2502 \u251c\u2500\u2500 claude-code/","\u2502 \u2502 \u2514\u2500\u2500 agents/","\u2502 \u251c\u2500\u2500 commands/","\u2502 \u251c\u2500\u2500 instructions/","\u2502 \u2502 \u251c\u2500\u2500 core/","\u2502 \u2502 \u2514\u2500\u2500 meta/","\u2502 \u251c\u2500\u2500 standards/","\u2502 \u2502 \u2514\u2500\u2500 code-style/","\u2502 \u2514\u2500\u2500 README.md","\u251c\u2500\u2500 hooks/ (77 files)","\u2502 \u251c\u2500\u2500 instructions/","\u2502 \u251c\u2500\u2500 lib/ (8 files)","\u2502 \u251c\u2500\u2500 modules/ (11 files)","\u2502 \u251c\u2500\u2500 pretool/ (1 files)"],"stats":{"total_files":126,"total_directories":66,"fully_parsed":{"python":51,"shell":40},"listed_only":{"json":6,"shell":29},"markdown_files":139},"f":{"hooks-stable/context_aware_hook.py":["p",["main:365:():run:Main entry point for CLI usage."],{"WorkspaceState":["37",[]],"WorkflowDecision":["57",[]],"ContextAwareWorkflowHook":["69",["__init__:75:(self, config_path:Optional[str] = None)::","get_workspace_state:85:(self)>WorkspaceState:_check_open_prs,_check_uncommitted_changes:","_check_uncommitted_changes:107:(self)>bool:run:","_check_open_prs:135:(self)>Tuple[bool, List[int]]:run:","make_decision:167:(self, user_message:str, workspace_state:WorkspaceState)>WorkflowDecision:_prompt_for_clarification:","_prompt_for_clarification:246:(self, user_message:str)>str::","format_block_message:275:(self, workspace_state:WorkspaceState)>str::","format_allow_message:310:(self, decision:WorkflowDecision)>str::","run:332:(self, tool_name:str, user_message:str)>int:format_allow_message,format_block_message,get_workspace_state,make_decision:"]]}],"hooks-stable/deploy_subagents.py":["p",["main:289:():deploy,status,uninstall:Main entry point for deployment."],{"SubagentDeployer":["25",["__init__:33:(self)::Initialize the deployer.","deploy:40:(self)>Dict[str, Any]:_create_integration_hooks,_deploy_subagent_files,_ensure_directories,_get_available_agents,_verify_deployment:","_ensure_directories:82:(self)::Ensure required directories exist.","_deploy_subagent_files:94:(self)::Deploy subagent files to Agent OS directory.","_create_integration_hooks:130:(self)::Create integration hooks for Claude Code."]]}],"hooks-stable/install-hooks.sh":["s",["log_info:0:()::Logging functions","log_success:0:()::","log_warning:0:()::","log_error:0:()::","check_claude_code:0:()::Check if Claude Code is installed","check_agent_os_project:0:()::Check if we're in an Agent OS project","verify_utilities:0:()::Verify hook utilities exist","create_config_dir:0:()::Create Claude Code config directory","backup_existing_config:0:()::Backup existing hooks configuration","generate_hooks_config:0:()::Generate Claude Code hooks configuration","test_hooks:0:()::Test hook functionality","show_summary:0:()::Display installation summary","error_handler:0:()::Handle errors","main:0:()::Main installation flow"]],"hooks-stable/intent_analyzer.py":["p",["log_debug:56:(message:str)>None::Write debug logs if debugging enabled.","main:294:():analyze_intent:Command-line interface for testing the intent analyzer."],{"WorkIntentResult":["45",[]],"IntentAnalyzer":["66",["__init__:74:(self, config_path:Optional[str] = None):_compile_patterns,_get_default_maintenance_patterns,_get_default_new_work_patterns,_load_configuration,log_debug:","_load_configuration:101:(self)>Dict[str, Any]:log_debug:Load configuration from YAML file with error handling.","_get_default_maintenance_patterns:120:(self)>List[str]::Get default maintenance work patterns.","_get_default_new_work_patterns:153:(self)>List[str]::Get default new work patterns.","_compile_patterns:185:(self, patterns:List[str])>List[re.Pattern]:log_debug:Compile regex patterns for efficient matching.","analyze_intent:196:(self, user_message:str)>WorkIntentResult:_determine_intent,_find_pattern_matches,log_debug:","_find_pattern_matches:240:(self, message:str, compiled_patterns:List[re.Pattern])>List[str]::Find all pattern matches in the message.","_determine_intent:250:(self, maintenance_matches:List[str], maintenance_score:float, new_work_matches:List[str], new_work_score:float, message:str)>WorkIntentResult::Determine final intent based on pattern analysis."]]}],"hooks-stable/post-tool-use-hook.sh":["s",["log_debug:0:()::Log function for debugging","should_auto_commit_file:0:()::Check if file should be auto-committed","get_modified_aos_docs:0:()::Get modified Agent OS documentation files","create_commit_message:0:()::Create auto-commit message","perform_auto_commit:0:()::Perform auto-commit","should_run_auto_commit:0:()::Check if we should run auto-commit","generate_status_message:0:()::Generate status message","main:0:()::Main execution"]],"hooks-stable/stop-hook.sh":["s",["log_debug:0:()::Log function for debugging","should_block_interaction:0:()::Check if we should block the current interaction","check_spec_abandonment:0:()::Check for spec execution abandonment","check_workspace_abandonment:0:()::Check for workspace abandonment","generate_stop_message:0:()::Generate stop message for Claude Code","generate_next_steps:0:()::Generate specific next steps based on current state","main:0:()::Main execution"]],"hooks-stable/subagent_detector.py":["p",{"DetectionResult":["22",["to_dict:28:(self)>Dict[str, Any]::Convert to dictionary for Task tool integration."]],"SubagentDetector":["37",["__init__:119:(self):_compile_patterns:Initialize the SubagentDetector.","_compile_patterns:125:(self)::Pre-compile regex patterns for performance.","detect:134:(self, context:Optional[Dict[str, Any]])>Dict[str, Any]:_calculate_agent_scores,_calculate_confidence,_generate_reason,to_dict:","_calculate_agent_scores:189:(self, context:Dict[str, Any])>Dict[str, float]::Calculate scores for each agent based on context.","_generate_reason:252:(self, agent:str, context:Dict[str, Any])>str::Generate a reason for the agent selection.","_calculate_confidence:273:(self, scores:Dict[str, float], best_score:float)>float::Calculate confidence based on score distribution.","get_available_agents:299:(self)>List[str]::Get list of available subagents.","get_agent_capabilities:303:(self)>Dict[str, Dict[str, Any]]::Get capabilities metadata for all agents."]]}],"hooks-stable/task-tool-hook.py":["p",["main:24:()::Main hook entry point for Task tool interception."]],"hooks-stable/task_tool_wrapper.py":["p",["handle_task:305:(params:Dict[str, Any])>Dict[str, Any]:execute:"],{"TaskContext":["38",["to_dict:45:(self)>Dict[str, Any]::Convert to dictionary for processing."]],"TaskToolWrapper":["55",["__init__:66:(self):_initialize_agents:Initialize the Task tool wrapper.","_initialize_agents:72:(self)>Dict[str, Any]::Initialize available subagents.","execute:82:(self, params:Dict[str, Any])>Dict[str, Any]:_execute_with_agent,_fallback_execution,_parse_context,to_dict:","_parse_context:116:(self, params:Dict[str, Any])>TaskContext::Parse parameters into TaskContext.","_execute_with_agent:126:(self, agent_type:str, context:TaskContext)>Dict[str, Any]:_execute_general_purpose,_prepare_agent_context,execute:Execute task with specified agent.","_prepare_agent_context:151:(self, agent_type:str, context:TaskContext)>Dict[str, Any]:_detect_git_operation,_detect_search_operation,_extract_file_path,_extract_search_query:Prepare context for specific agent type.","_detect_search_operation:189:(self, prompt:str)>str::Detect the type of search operation.","_extract_search_query:200:(self, prompt:str)>str::Extract search query from prompt.","_extract_file_path:230:(self, prompt:str)>str::Extract file path from prompt.","_detect_git_operation:248:(self, prompt:str)>str::Detect git operation type.","_execute_general_purpose:269:(self, context:TaskContext)>Dict[str, Any]::Execute with general-purpose agent.","_fallback_execution:281:(self, params:Dict[str, Any], error:str)>Dict[str, Any]::Fallback execution on error.","get_status:294:(self)>Dict[str, Any]::Get wrapper status and statistics."]]}],"hooks-stable/user-prompt-submit-hook.sh":["s",["log_debug:0:()::Log function for debugging","is_cache_valid:0:()::Check if cache is valid","get_context:0:()::Get cached context or build new","should_inject_context:0:()::Check if we should inject context","generate_context_injection:0:()::Generate context injection message","generate_minimal_context:0:()::Generate minimal context for non-Agent OS projects","cleanup:0:()::Clean up cache on exit","main:0:():log_debug:Main execution"]],"hooks-stable/workflow-enforcement-hook-v2-backup.py":["p",["log_debug:30:(message)::Write debug logs if debugging enabled.","check_git_status:39:():log_debug:Check if there are uncommitted changes.","check_open_prs:55:():log_debug:Check for open PRs in the current repo.","check_workflow_status:73:():check_git_status,check_open_prs:Analyze workflow status and return issues.","handle_pretool:88:(input_data):check_workflow_status,log_debug:Handle PreToolUse hook - block new work until workflow complete.","handle_pretool_task:193:(input_data):log_debug:Handle Task tool - enforce subagent usage for complex work.","handle_userprompt:217:(input_data):check_workflow_status,log_debug:Handle UserPromptSubmit - add context for proceed attempts.","handle_posttool:257:(input_data):log_debug:Handle PostToolUse - auto-commit Agent OS documentation changes.","main:274:():log_debug:Main entry point - route to appropriate handler."]],"hooks-stable/workflow-enforcement-hook.py":["p",["log_debug:30:(message)::Write debug logs if debugging enabled.","resolve_workspace_root:39:(input_data:dict | None = None)>str:log_debug:Best-effort resolution of the target project directory for checks.","check_git_status:69:(cwd:str)>bool:log_debug:Check if there are uncommitted changes in given workspace.","check_open_prs:85:(cwd:str)>bool:log_debug:Check for open PRs in the given repo.","check_workflow_status:104:(cwd:str)>list[str]:check_git_status,check_open_prs:Analyze workflow status and return issues for given workspace.","get_user_intent:119:(prompt_text:str = \"\")>str:log_debug:Return MAINTENANCE | NEW | AMBIGUOUS using intent analyzer, with env fallback.","is_write_bash:141:(command:str)>bool::Heuristic to detect write-capable bash commands.","is_docs_only_command:155:(command:str)>bool::Rough detection if a bash write targets docs/markdown only.","has_active_spec:161:(cwd:str)>bool:log_debug:Detect if there is a current spec context (.agent-os/specs/*) in workspace.","handle_pretool:178:(input_data):check_workflow_status,get_user_intent,has_active_spec,is_docs_only_command,is_write_bash,log_debug,resolve_workspace_root:Handle PreToolUse hook - block new work until workflow complete.","handle_pretool_task:282:(input_data):log_debug:Handle Task tool - enforce subagent usage for complex work.","handle_userprompt:306:(input_data):check_workflow_status,get_user_intent,log_debug,resolve_workspace_root:Handle UserPromptSubmit - add context for proceed attempts.","handle_posttool:337:(input_data):log_debug,resolve_workspace_root:Handle PostToolUse - auto-commit Agent OS documentation changes.","main:367:():log_debug:Main entry point - route to appropriate handler."]],"hooks/bash_command_validator_example.py":["p",["_validate_command:48:(command:str)>list[str]::","main:56:():_validate_command:"]],"hooks/context_aware_hook.py":["p",["main:365:():run:Main entry point for CLI usage."],{"WorkspaceState":["37",[]],"WorkflowDecision":["57",[]],"ContextAwareWorkflowHook":["69",["__init__:75:(self, config_path:Optional[str] = None)::","get_workspace_state:85:(self)>WorkspaceState:_check_open_prs,_check_uncommitted_changes:","_check_uncommitted_changes:107:(self)>bool:run:","_check_open_prs:135:(self)>Tuple[bool, List[int]]:run:","make_decision:167:(self, user_message:str, workspace_state:WorkspaceState)>WorkflowDecision:_prompt_for_clarification:","_prompt_for_clarification:246:(self, user_message:str)>str::","format_block_message:275:(self, workspace_state:WorkspaceState)>str::","format_allow_message:310:(self, decision:WorkflowDecision)>str::","run:332:(self, tool_name:str, user_message:str)>int:format_allow_message,format_block_message,get_workspace_state,make_decision:"]]}],"hooks/integration_test.py":["p",["run_hook:18:(hook_script, input_data)::Run a hook script with given input data and return exit code.","test_integration:33:():run_hook:Run integration tests for context-aware hook wrapper."]],"hooks/intent_analyzer.py":["p",["log_debug:56:(message:str)>None::Write debug logs if debugging enabled.","main:294:():analyze_intent:Command-line interface for testing the intent analyzer."],{"WorkIntentResult":["45",[]],"IntentAnalyzer":["66",["__init__:74:(self, config_path:Optional[str] = None):_compile_patterns,_get_default_maintenance_patterns,_get_default_new_work_patterns,_load_configuration,log_debug:","_load_configuration:101:(self)>Dict[str, Any]:log_debug:Load configuration from YAML file with error handling.","_get_default_maintenance_patterns:120:(self)>List[str]::Get default maintenance work patterns.","_get_default_new_work_patterns:153:(self)>List[str]::Get default new work patterns.","_compile_patterns:185:(self, patterns:List[str])>List[re.Pattern]:log_debug:Compile regex patterns for efficient matching.","analyze_intent:196:(self, user_message:str)>WorkIntentResult:_determine_intent,_find_pattern_matches,log_debug:","_find_pattern_matches:240:(self, message:str, compiled_patterns:List[re.Pattern])>List[str]::Find all pattern matches in the message.","_determine_intent:250:(self, maintenance_matches:List[str], maintenance_score:float, new_work_matches:List[str], new_work_score:float, message:str)>WorkIntentResult::Determine final intent based on pattern analysis."]]}],"hooks/modules/hook_core.py":["p",{"HookError":["25",[]],"HookLogger":["30",["debug:34:(message:str)>None::Write debug logs if debugging enabled."]],"WorkspaceResolver":["45",["resolve:49:(input_data:Optional[Dict[str, Any]] = None)>str:debug,resolve:Best-effort resolution of the target project directory."]],"GitChecker":["103",["has_uncommitted_changes:107:(cwd:str)>bool:debug:Check if there are uncommitted changes in workspace.","has_open_prs:123:(cwd:str)>bool:debug:Check for open PRs in the repository."]],"IntentAnalyzer":["142",["get_intent:153:(prompt_text:str = \"\")>str:debug:Return MAINTENANCE | NEW | AMBIGUOUS using intent analyzer."]],"SpecChecker":["177",["has_active_spec:181:(cwd:str)>bool:debug:Detect if there is a current spec context (.agent-os/specs/*) in workspace."]],"BaseHookHandler":["198",["__init__:201:(self, input_data:Dict[str, Any]):resolve:","log_debug:205:(self, message:str)>None:debug:Log debug message.","get_tool_name:209:(self)>str::Get the tool name from input data.","get_tool_input:213:(self)>Dict[str, Any]::Get the tool input from input data.","exit_allow:217:(self, reason:str = \"\")>None:log_debug:Exit with success (allow the operation).","exit_block:223:(self, reason:str)>None:log_debug:Exit with error (block the operation).","check_work_session:229:(self)>bool::Check if work session mode is active.","check_workflow_status:236:(self)>List[str]:check_work_session,has_open_prs,has_uncommitted_changes,log_debug:Analyze workflow status and return issues.","handle:253:(self)>None:handle:Main handler method to be implemented by subclasses."]]}],"hooks/modules/hook_core_optimized.py":["p",{"TTLCache":["28",["__init__:31:(self, default_ttl=30)::","get:37:(self, key:str, ttl:int = None)>Optional[Any]::Get cached value if not expired.","set:51:(self, key:str, value:Any)>None::Set cached value with current timestamp."]],"OptimizedSubprocess":["62",["run_cached:67:(cmd:List[str], cwd:str = None, timeout:float = 2.0, cache_key:str = None, cache_ttl:int = 10)>Tuple[int, str, str]:get,set:Run subprocess with caching and strict timeout."]],"HookError":["94",[]],"HookLogger":["99",["debug:107:(cls, message:str)>None:_flush_buffer,get:Write debug logs with buffering.","_flush_buffer:125:(cls)::Flush log buffer to disk."]],"WorkspaceResolver":["141",["resolve:145:(input_data:Optional[Dict[str, Any]] = None)>str:get,resolve:Fast workspace resolution with minimal fallback."]],"GitChecker":["168",["has_uncommitted_changes:172:(cwd:str)>bool:run_cached:Check git status with caching.","has_open_prs:184:(cwd:str)>bool:run_cached:Check for open PRs with caching."]],"IntentAnalyzer":["202",["get_intent:206:(prompt_text:str = \"\")>str:get,run_cached:Fast intent analysis with environment override."]],"SpecChecker":["229",["has_active_spec:233:(cwd:str)>bool:run_cached:Fast spec detection with caching."]],"BaseHookHandler":["246",["__init__:249:(self, input_data:Dict[str, Any])::","workspace_root:254:(self)>str:resolve:Lazy workspace resolution.","log_debug:260:(self, message:str)>None:debug:Log debug message.","get_tool_name:264:(self)>str:get:Get the tool name from input data.","get_tool_input:268:(self)>Dict[str, Any]:get:Get the tool input from input data.","exit_allow:272:(self, reason:str = \"\")>None:log_debug:Exit with success (allow the operation).","exit_block:278:(self, reason:str)>None:log_debug:Exit with error (block the operation).","check_work_session:284:(self)>bool:get:Fast work session check.","check_workflow_status:293:(self)>List[str]:check_work_session,log_debug:Optimized workflow status check.","handle:321:(self)>None:handle:Main handler method to be implemented by subclasses."]]}],"hooks/modules/posttool_handler.py":["p",{"PostToolHandler":["15",["handle:18:(self)>None:_check_documentation_status:Main PostTool handler logic.","_check_documentation_status:30:(self)>None::Check if documentation updates are required after tool use."]]}],"hooks/modules/posttool_handler_optimized.py":["p",{"PostToolHandler":["15",["handle:18:(self)>None:_check_documentation_status:Main PostTool handler logic.","_check_documentation_status:30:(self)>None::Check if documentation updates are required after tool use."]]}],"hooks/modules/pretool_handler.py":["p",{"BashCommandAnalyzer":["18",["is_write_command:33:(command:str)>bool::Detect if command performs write operations.","is_readonly_command:52:(command:str)>bool:is_write_command:Detect if command is clearly read-only.","is_docs_only_command:63:(command:str)>bool::Detect if command only targets documentation files.","is_git_gh_command:70:(command:str)>bool::Detect git or gh commands (usually allowed for workflow cleanup)."]],"DocumentationChecker":["75",["check_docs_before_pr:79:(command:str, workspace_root:str)>None::Check if docs are up-to-date before PR creation/merge."]],"PreToolHandler":["102",["handle:108:(self)>None:_handle_bash_command,_handle_other_tools:Main PreTool handler logic.","_handle_bash_command:127:(self, command:str)>None:_handle_write_command,check_docs_before_pr,is_git_gh_command,is_readonly_command:Handle Bash command validation.","_handle_write_command:143:(self, command:str)>None:_enforce_workflow_requirements,is_docs_only_command,is_write_command:Handle write command validation based on intent.","_handle_other_tools:166:(self, tool_input:Dict[str, Any])>None:_enforce_workflow_requirements:Handle non-Bash tools.","_enforce_workflow_requirements:187:(self, operation:str)>None::Enforce spec and hygiene requirements for new work."]]}],"hooks/modules/pretool_handler_optimized.py":["p",{"BashCommandAnalyzer":["18",["is_write_command:33:(command:str)>bool::Detect if command performs write operations.","is_readonly_command:52:(command:str)>bool:is_write_command:Detect if command is clearly read-only.","is_docs_only_command:63:(command:str)>bool::Detect if command only targets documentation files.","is_git_gh_command:70:(command:str)>bool::Detect git or gh commands (usually allowed for workflow cleanup)."]],"DocumentationChecker":["75",["check_docs_before_pr:79:(command:str, workspace_root:str)>None::Check if docs are up-to-date before PR creation/merge."]],"PreToolHandler":["102",["handle:108:(self)>None:_handle_bash_command,_handle_other_tools:Main PreTool handler logic.","_handle_bash_command:127:(self, command:str)>None:_handle_write_command,check_docs_before_pr,is_git_gh_command,is_readonly_command:Handle Bash command validation.","_handle_write_command:143:(self, command:str)>None:_enforce_workflow_requirements,is_docs_only_command,is_write_command:Handle write command validation based on intent.","_handle_other_tools:166:(self, tool_input:Dict[str, Any])>None:_enforce_workflow_requirements:Handle non-Bash tools.","_enforce_workflow_requirements:187:(self, operation:str)>None::Enforce spec and hygiene requirements for new work."]]}],"hooks/modules/task_handler.py":["p",{"TaskHandler":["13",["handle:22:(self)>None:_needs_subagent,_recommend_subagent:Main Task handler logic.","_needs_subagent:35:(self, description:str)>bool::Check if task description indicates need for specialized subagents.","_recommend_subagent:39:(self)>None::Block task and recommend appropriate subagent."]]}],"hooks/modules/task_handler_optimized.py":["p",{"TaskHandler":["13",["handle:22:(self)>None:_needs_subagent,_recommend_subagent:Main Task handler logic.","_needs_subagent:35:(self, description:str)>bool::Check if task description indicates need for specialized subagents.","_recommend_subagent:39:(self)>None::Block task and recommend appropriate subagent."]]}],"hooks/modules/userprompt_handler.py":["p",{"UserPromptHandler":["15",["handle:25:(self)>None:_handle_proceed_attempt,_is_proceed_attempt:Main UserPrompt handler logic.","_is_proceed_attempt:38:(self, prompt:str)>bool::Check if prompt indicates user wants to proceed with work.","_handle_proceed_attempt:42:(self, prompt:str)>None::Handle user attempts to proceed with new work."]]}],"hooks/modules/userprompt_handler_optimized.py":["p",{"UserPromptHandler":["15",["handle:25:(self)>None:_handle_proceed_attempt,_is_proceed_attempt:Main UserPrompt handler logic.","_is_proceed_attempt:38:(self, prompt:str)>bool::Check if prompt indicates user wants to proceed with work.","_handle_proceed_attempt:42:(self, prompt:str)>None::Handle user attempts to proceed with new work."]]}],"hooks/notify-hook.sh":["s",["check_recent_servers:0:()::Function to check for recent server starts","check_recent_test_failures:0:()::Function to check for recent test failures","check_recent_builds:0:()::Function to check for recent build activity"]],"hooks/post-bash-hook.sh":["s",["classify_intent:0:()::Function to classify command intent (same as pre-hook)"]],"hooks/post-tool-use-hook.sh":["s",["log_debug:0:()::Log function for debugging","should_auto_commit_file:0:()::Check if file should be auto-committed","get_modified_aos_docs:0:()::Get modified Agent OS documentation files","create_commit_message:0:()::Create auto-commit message","perform_auto_commit:0:()::Perform auto-commit","should_run_auto_commit:0:()::Check if we should run auto-commit","generate_status_message:0:()::Generate status message","main:0:()::Main execution"]],"hooks/pre-bash-hook.sh":["s",["classify_intent:0:()::Function to classify command intent"]],"hooks/pretool/workspace_hygiene.py":["p",["main:12:()::"]],"hooks/shared/cache_manager.py":["p",{"CacheManager":["7",["__init__:8:(self)::","get:12:(self, key:str)>Optional[Any]::Get value from cache if not expired","set:22:(self, key:str, value:Any, ttl:Optional[int] = None)>None::Store value in cache with TTL","clear:27:(self)>None:clear:Clear all cached values"]]}],"hooks/shared/git_utils.py":["p",["check_git_status_async:9:async (cwd:str, timeout:float = 0.5)>bool::Check git status with timeout and caching","check_git_status_sync:39:(cwd:str)>bool:check_git_status_async:Synchronous wrapper for git status check"]],"hooks/stop-hook.sh":["s",["log_debug:0:()::Log function for debugging","should_block_interaction:0:()::Check if we should block the current interaction","check_spec_abandonment:0:()::Check for spec execution abandonment","check_workspace_abandonment:0:()::Check for workspace abandonment","generate_stop_message:0:()::Generate stop message for Claude Code","generate_next_steps:0:()::Generate specific next steps based on current state","main:0:()::Main execution"]],"hooks/test_context_aware_hook.py":["p",{"TestContextAwareWorkflowHook":["20",["setUp:23:(self)::Set up test fixtures.","tearDown:30:(self)::Clean up after tests.","test_clean_workspace_detection:39:(self, mock_run)::Test detection of clean workspace.","test_dirty_workspace_detection:59:(self, mock_run)::Test detection of dirty workspace with uncommitted changes.","test_open_pr_detection:78:(self, mock_run):side_effect:Test detection of open pull requests.","side_effect:84:(*args, **kwargs)::","test_maintenance_work_allowed_with_dirty_workspace:104:(self)::Test that maintenance work is allowed even with dirty workspace.","test_new_work_blocked_with_dirty_workspace:130:(self)::Test that new work is blocked when workspace is dirty.","test_new_work_allowed_with_clean_workspace:157:(self)::Test that new work is allowed when workspace is clean.","test_environment_variable_override_maintenance:179:(self)::Test AGENT_OS_WORK_TYPE=maintenance override.","test_environment_variable_override_new_work:200:(self)::Test AGENT_OS_WORK_TYPE=new_work override.","test_bypass_flag:220:(self)::Test AGENT_OS_BYPASS flag to skip all checks.","test_ambiguous_intent_prompting:243:(self, mock_input)::Test user prompting for ambiguous intent.","test_performance_requirement:267:(self)::Test that decision making meets performance requirements."]]}],"hooks/test_context_aware_integration.sh":["s",["run_test:0:()::Function to run a test"]],"hooks/test_context_aware_system.py":["p",["print_separator:25:()::Print a visual separator.","print_header:29:(title:str):print_separator:Print a formatted header.","test_intent_analysis:35:(user_message:str, show_debug:bool = False)>Dict[str, Any]:print_header:Test intent analysis for a user message.","test_user_experience:67:(user_message:str, intent_result)>None:print_header:Test user experience messaging.","test_manual_override_system:83:(user_message:str)>None:print_header:Test manual override system.","test_workspace_scenarios:109:()>None:print_header:Test different workspace scenarios.","run_interactive_test_session:152:():print_header:Run an interactive testing session.","run_predefined_test_scenarios:211:():print_header,test_intent_analysis:Run predefined test scenarios.","main:264:():print_header,run_interactive_test_session,run_predefined_test_scenarios,test_intent_analysis,test_manual_override_system,test_user_experience:Main testing interface."]],"hooks/test_integration_context_aware.py":["p",["run_hook:18:(user_message:str, tool_name:str = \"Edit\")>int::","test_maintenance_scenarios:45:():run_hook:Test various maintenance work scenarios.","test_new_work_scenarios:67:():run_hook:Test various new work scenarios.","test_environment_overrides:99:():run_hook:Test environment variable overrides.","test_performance:128:():run_hook:Test that the hook meets performance requirements.","main:157:():test_environment_overrides,test_maintenance_scenarios,test_new_work_scenarios,test_performance:Run all integration tests."]],"hooks/test_intent_analyzer.py":["p",{"TestIntentAnalyzer":["21",["setUp:24:(self)::Set up test fixtures.","test_maintenance_work_detection:77:(self)::Test that maintenance work messages are correctly identified.","test_new_work_detection:87:(self)::Test that new work messages are correctly identified.","test_ambiguous_intent_detection:97:(self)::Test that ambiguous messages are correctly identified.","test_edge_cases:107:(self)::Test edge cases and boundary conditions.","test_case_insensitive_matching:126:(self)::Test that pattern matching is case insensitive.","test_performance_requirement:140:(self)::Test that intent analysis completes within performance requirements."]],"TestWorkIntentResult":["157",["test_result_creation:160:(self)::Test WorkIntentResult creation and properties.","test_result_string_representation:174:(self)::Test string representation of WorkIntentResult."]],"TestConfigurationLoading":["188",["setUp:191:(self)::Set up test configuration.","test_config_loading_success:210:(self, mock_exists, mock_file)::Test successful configuration loading.","test_config_loading_missing_file:224:(self, mock_exists)::Test behavior when configuration file is missing.","test_config_loading_invalid_yaml:236:(self, mock_exists, mock_file)::Test behavior with invalid YAML configuration.","test_pattern_compilation:245:(self)::Test that regex patterns are properly compiled."]],"TestLoggingAndDebugging":["257",["test_debug_logging_called:261:(self, mock_log)::Test that debug logging is called during analysis.","test_debug_mode_enabled:270:(self)::Test behavior when debug mode is enabled."]]}],"hooks/t/modular/benchmark_final.py":["p",["benchmark_hook:12:(hook_path, hook_type, payload, iterations=10)::Benchmark a specific hook.","main:40:():benchmark_hook:"]],"hooks/t/modular/benchmark_optimized.py":["p",["benchmark_hook:12:(hook_path, hook_type, payload, iterations=10)::Benchmark a specific hook.","main:40:():benchmark_hook:"]],"hooks/t/modular/benchmark_performance.py":["p",["main:184:():analyze_results,run_benchmarks:Run performance benchmarks."],{"HookBenchmark":["16",["__init__:19:(self)::","create_test_payloads:24:(self)::Create test payloads for different hook types.","benchmark_hook:48:(self, hook_path, hook_type, payload, iterations=20):calculate_percentile:Benchmark a specific hook with given payload.","calculate_percentile:85:(self, data, percentile)::Calculate percentile value.","run_benchmarks:89:(self):benchmark_hook,create_test_payloads:Run comprehensive performance benchmarks.","analyze_results:144:(self, results)::Analyze benchmark results and provide summary."]]}],"hooks/t/modular/benchmark_test.py":["p",["benchmark_hook:12:(hook_path, hook_type, payload, iterations=10)::Benchmark a specific hook.","main:40:():benchmark_hook:"]],"hooks/t/modular/test_final_hook.py":["p",{"TestHookPerformance":["19",["test_hook_performance_requirements:22:(self)::Test that hook meets P95 < 500ms requirement."]],"TestHookFunctionality":["44",["run_hook:47:(self, hook_type:str, payload:dict)>subprocess.CompletedProcess::Helper to run hook with payload.","test_bash_readonly_commands_allowed:53:(self):run_hook:Test that readonly bash commands are allowed.","test_git_commands_always_allowed:69:(self):run_hook:Test that git/gh commands are always allowed.","test_docs_operations_allowed:85:(self):run_hook:Test that documentation operations are allowed.","test_maintenance_intent_allowed:99:(self):run_hook:Test that maintenance intent allows write operations.","test_work_session_bypasses_hygiene:106:(self):run_hook:Test that work session mode bypasses hygiene checks.","test_task_handler_subagent_enforcement:113:(self):run_hook:Test that task handler enforces subagent usage for review tasks.","test_userprompt_proceed_detection:123:(self):run_hook:Test that proceed patterns are detected correctly.","test_posttool_documentation_check:139:(self):run_hook:Test that posttool checks documentation status.","test_unknown_hook_type_fails:146:(self):run_hook:Test that unknown hook types fail appropriately.","test_invalid_json_input_handled:152:(self)::Test that invalid JSON input is handled gracefully."]],"TestHookModularity":["160",["test_hook_file_size_requirement:163:(self)::Test that main hook file is reasonable size.","test_single_responsibility_functions:171:(self)::Test that functions have focused responsibilities."]],"TestBackwardCompatibility":["186",["test_hook_types_unchanged:189:(self)::Test that all original hook types are supported.","test_environment_variables_respected:204:(self)::Test that original environment variables still work."]]}],"hooks/t/modular/test_hook_core.py":["p",{"TestHookLogger":["22",["test_debug_logging_disabled:25:(self)::Test that logging is disabled by default.","test_debug_logging_enabled:32:(self)::Test that logging works when enabled."]],"TestWorkspaceResolver":["43",["test_resolve_from_cwd:46:(self)::Test resolution from current working directory.","test_resolve_from_input_data:51:(self)::Test resolution from input data fields."]],"TestGitChecker":["64",["test_has_uncommitted_changes_true:68:(self, mock_run)::Test detecting uncommitted changes.","test_has_uncommitted_changes_false:75:(self, mock_run)::Test clean git status.","test_has_open_prs_true:82:(self, mock_run)::Test detecting open PRs.","test_has_open_prs_false:90:(self, mock_run)::Test no open PRs."]],"TestIntentAnalyzer":["98",["test_get_intent_from_env:101:(self)::Test intent override from environment.","test_get_intent_from_analyzer:108:(self, mock_run)::Test intent from analyzer script.","test_get_intent_fallback:115:(self, mock_run)::Test fallback on analyzer failure."]],"TestSpecChecker":["122",["test_has_active_spec_true:126:(self, mock_run)::Test detecting active specs.","test_has_active_spec_false:133:(self, mock_run)::Test no active specs."]],"TestBaseHookHandler":["140",["setUp:143:(self)::Set up test handler.","test_get_tool_name:151:(self)::Test getting tool name.","test_get_tool_input:155:(self)::Test getting tool input.","test_check_work_session:160:(self, mock_exists)::Test work session detection.","test_handle_not_implemented:166:(self)::Test that handle method must be implemented."]]}],"hooks/t/modular/test_pretool_handler.py":["p",{"TestBashCommandAnalyzer":["18",["test_is_write_command_true:21:(self)::Test detecting write commands.","test_is_write_command_false:28:(self)::Test non-write commands.","test_is_readonly_command_true:35:(self)::Test detecting read-only commands.","test_is_readonly_command_false:42:(self)::Test commands that are not read-only.","test_is_docs_only_command:47:(self)::Test detecting docs-only commands.","test_is_git_gh_command:53:(self)::Test detecting git/gh commands."]],"TestDocumentationChecker":["60",["test_check_docs_before_pr_clean:64:(self, mock_run)::Test when docs are up to date.","test_check_docs_before_pr_needs_update:71:(self, mock_run)::Test when docs need updates.","test_check_docs_non_pr_command:78:(self, mock_run)::Test non-PR commands are ignored."]],"TestPreToolHandler":["85",["setUp:88:(self)::Set up test handler.","test_handle_bash_readonly:99:(self)::Test handling read-only bash commands.","test_handle_bash_write_new_work:108:(self, mock_spec, mock_intent)::Test handling write commands for new work.","test_handle_bash_write_maintenance:124:(self, mock_intent)::Test allowing maintenance writes.","test_handle_non_new_work_tool:137:(self)::Test allowing non-new-work tools.","test_handle_new_work_no_spec:151:(self, mock_spec, mock_intent)::Test blocking new work without active spec."]]}],"hooks/t/run-tests.sh":["s",["run_test_suite:0:()::Function to run a test suite","setup_test_environment:0:()::Function to setup test environment","cleanup_test_environment:0:()::Function to cleanup test environment","display_summary:0:()::Function to display test summary","main:0:()::Main execution"]],"hooks/t/test-bash-hooks.sh":["s",["setup:0:()::Setup test environment","teardown:0:()::Teardown test environment","test_pre_bash_hook:0:()::Test pre-bash-hook.sh","test_post_bash_hook:0:()::Test post-bash-hook.sh","test_notify_hook:0:()::Test notify-hook.sh","test_hooks_without_jq:0:()::Test JSON parsing with missing jq","test_non_bash_tool:0:()::Test non-Bash tool handling","main:0:()::Main test execution"]],"hooks/t/test-evidence-integration.sh":["s",["run_test:0:()::"]],"hooks/t/test-evidence-standards.sh":["s",["run_test:0:()::"]],"hooks/t/test-evidence-validation.sh":["s",["run_test:0:()::Test function","validate:0:()::"]],"hooks/t/test-git-utils.sh":["s",["test_git_repo_detection:0:()::Test git repository detection","test_branch_detection:0:()::Test branch detection","test_agent_os_file_operations:0:()::Test Agent OS file operations","test_commit_operations:0:()::Test commit operations","test_issue_extraction:0:()::Test issue extraction","test_wip_detection:0:()::Test work-in-progress detection","main:0:()::Main test execution"]],"hooks/t/test-hook-integration.sh":["s",["test_stop_hook:0:()::Test stop hook integration","test_post_tool_use_hook:0:()::Test post-tool-use hook integration","test_user_prompt_submit_hook:0:()::Test user-prompt-submit hook integration","test_hooks_configuration:0:()::Test hooks configuration","test_installation_script:0:()::Test installation script","test_utility_scripts:0:()::Test all utility scripts are executable","test_logging:0:()::Test logging functionality","main:0:()::Main test execution"]],"hooks/t/test-research-validation.sh":["s",["run_test:0:()::Test function"]],"hooks/t/test-testing-enforcer.sh":["s",["run_test:0:()::Test function"]],"hooks/t/test-utilities.sh":["s",["start_test_suite:0:()::Function to start a test suite","run_test:0:()::Function to run a test","assert_contains:0:()::Function to assert string contains substring","assert_equals:0:()::Function to assert string equals expected","finish_test_suite:0:()::Function to finish test suite","create_test_repo:0:()::Function to create temporary git repository for testing","create_agent_os_project:0:()::Function to create Agent OS project structure","cleanup_test_files:0:()::Function to cleanup test files","get_sample_agent_os_conversation:0:()::Sample conversation data for testing","get_sample_non_agent_os_conversation:0:()::","get_sample_high_risk_conversation:0:()::"]],"hooks/t/test-workflow-detector.sh":["s",["test_workflow_detection:0:()::Test workflow detection","test_abandonment_risk_detection:0:()::Test abandonment risk detection","test_workflow_completion_detection:0:()::Test workflow completion detection","test_spec_context_detection:0:()::Test spec context detection","test_workflow_suggestions:0:()::Test workflow suggestions","main:0:()::Main test execution"]],"hooks/t/test-workflow-integration.sh":["s",["run_test:0:()::"]],"hooks/t/test_workspace_hygiene.py":["p",{"TestWorkspaceHygiene":["12",["test_clean_workspace_allows_write:13:(self)::","test_dirty_workspace_blocks_write:17:(self)::","test_non_write_operations_allowed:21:(self)::"]]}],"hooks/user-prompt-submit-hook.sh":["s",["log_debug:0:()::Log function for debugging","is_cache_valid:0:()::Check if cache is valid","get_context:0:()::Get cached context or build new","should_inject_context:0:()::Check if we should inject context","generate_context_injection:0:()::Generate context injection message","generate_minimal_context:0:()::Generate minimal context for non-Agent OS projects","cleanup:0:()::Clean up cache on exit","main:0:():log_debug:Main execution"]],"hooks/workflow-enforcement-hook-final.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"hooks/workflow-enforcement-hook-modular.py":["p",["parse_input:86:()>Optional[Dict[str, Any]]::Parse JSON input from stdin with error handling.","main:99:():dispatch,parse_input:Main entry point - lightweight dispatcher."],{"HookDispatcher":["34",["__init__:37:(self)::","dispatch:45:(self, hook_type:str, input_data:Dict[str, Any])>None::Dispatch hook to appropriate handler.","_handle_pretool:65:(self, input_data:Dict[str, Any])>None::Handle PreToolUse hook.","_handle_pretool_task:70:(self, input_data:Dict[str, Any])>None::Handle Task-specific PreToolUse hook.","_handle_userprompt:75:(self, input_data:Dict[str, Any])>None::Handle UserPromptSubmit hook.","_handle_posttool:80:(self, input_data:Dict[str, Any])>None::Handle PostToolUse hook."]]}],"hooks/workflow-enforcement-hook-optimized-v3.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"hooks/workflow-enforcement-hook-optimized.py":["p",["log_debug:90:(message):get:Minimal debug logging.","resolve_workspace_root:103:(input_data:dict)>str:get:Fast workspace resolution.","check_git_status:121:(cwd:str)>bool:run_cached:Fast git status check with caching.","check_open_prs:132:(cwd:str)>bool:run_cached:Fast PR check with caching.","get_user_intent:150:(prompt_text:str = \"\")>str:get,run_cached:Fast intent analysis with caching.","has_active_spec:171:(cwd:str)>bool:run_cached:Fast spec detection with caching.","check_workflow_status:184:(cwd:str)>List[str]:get,log_debug:Fast workflow status check.","is_write_bash:217:(command:str)>bool::Fast write detection.","is_readonly_bash:232:(command:str)>bool:is_write_bash:Fast readonly detection.","is_docs_only:242:(command_or_path:str)>bool::Fast docs detection.","handle_pretool:250:(input_data):check_workflow_status,get,get_user_intent,has_active_spec,is_docs_only,is_readonly_bash,is_write_bash,log_debug,resolve_workspace_root,run_cached:PreToolUse handler - optimized for performance.","handle_pretool_task:327:(input_data):get,log_debug:Task tool handler - optimized.","handle_userprompt:347:(input_data):check_workflow_status,get,get_user_intent,log_debug,resolve_workspace_root:UserPromptSubmit handler - optimized.","handle_posttool:383:(input_data):get,log_debug,resolve_workspace_root,run_cached:PostToolUse handler - optimized.","main:409:():get,log_debug:Optimized main dispatcher."],{"TTLCache":["34",["__init__:37:(self, default_ttl=30)::","get:43:(self, key:str, ttl:int = None)>Optional[Any]::","set:54:(self, key:str, value:Any)>None::"]],"OptimizedSubprocess":["62",["run_cached:67:(cmd:List[str], cwd:str = None, timeout:float = 2.0, cache_ttl:int = 10)>Tuple[int, str, str]:get,set:"]]}],"hooks/workflow-enforcement-hook-pre-optimization.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"hooks/workflow-enforcement-hook-v2-final.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"hooks/workflow-enforcement-hook-v2.py":["p",["main:71:():dispatch:Optimized main entry point."],{"OptimizedHookDispatcher":["38",["dispatch:42:(hook_type:str, input_data:dict)>None::Fast dispatch to appropriate handler."]]}],"hooks/workflow-enforcement-hook.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"integrations/setup-subagent-integration.sh":["s",["check_claude_code:0:()::Check if Claude Code is installed","detect_subagents:0:()::Detect available subagents","setup_integration_config:0:()::Create integration configuration","update_instructions:0:()::Update Agent OS instructions with subagent integration","create_basic_enhancements:0:()::Create enhanced workflow instructions","update_claude_commands:0:()::Update Claude Code commands to use enhanced workflows","test_integration:0:()::Test subagent integration","main:0:()::Main setup flow"]],"s/commit-boundary-manager.sh":["s",["log_debug:0:()::Logging","is_work_session_active:0:()::Check if work session is active","detect_boundary:0:()::Detect if this is a commit boundary","generate_commit_message:0:()::Generate commit message for boundary","create_boundary_commit:0:()::Create automatic commit at boundary","main:0:()::Main execution"]],"s/config-resolver.py":["p",["read_text:22:(path:Path)>str:read_text:","parse_env_file:28:(path:Path)>dict:read_text:","detect_pkg_manager_from_start:43:(start_sh:str)>dict::","parse_tech_stack:64:(md:str)>dict::","main:86:():detect_pkg_manager_from_start,parse_env_file,parse_tech_stack,read_text:"]],"s/context-aware-wrapper.sh":["s",["read_state:0:()::Helper: read cached workspace state"]],"s/intent-analyzer.sh":["s",["lower:0:()::"]],"s/project_root_resolver.py":["p",["main:207:():resolve:CLI entry point for project root resolver."],{"ProjectRootResolver":["33",["__init__:36:(self, debug:bool = False)::","_debug_log:47:(self, message:str)>None::Log debug message to stderr.","clear_cache:52:(self)>None:_debug_log:Clear the cached result.","resolve:62:(self, file_path:Optional[str] = None, hook_payload:Optional[Dict[str, Any]] = None, use_git_fallback:bool = True)>str:_debug_log,_resolve_by_ascent,_resolve_from_env,_resolve_from_git,_resolve_from_hook_payload:","_resolve_from_env:123:(self)>Optional[str]::Resolve from CLAUDE_PROJECT_DIR environment variable.","_resolve_from_hook_payload:130:(self, payload:Dict[str, Any])>Optional[str]::Resolve from hook payload fields.","_resolve_from_git:147:(self)>Optional[str]::Use git rev-parse to find repository root.","_resolve_by_ascent:165:(self, start_path:str)>Optional[str]:_debug_log:Ascend from start path to find project markers."]]}],"s/session-auto-start.sh":["s",["print_success:0:()::","print_info:0:()::"]],"s/session-memory.sh":["s",["refresh_cache:0:()::","export_session_vars:0:()::","stat_mtime:0:()::Helper to get mtime portable across macOS/Linux"]],"s/update-documentation-wrapper.sh":["s",["cleanup:0:()::Cleanup function"]],"s/update-documentation.sh":["s",["check_changelog_recent:0:()::Function to check if CHANGELOG has recent entries (last 30 days)","check_issues_without_specs:0:()::Function to check for open issues without specs","check_recent_prs:0:()::Function to check for recent PRs in CHANGELOG"]],"s/work-session-manager.sh":["s",["show_help:0:()::","start_session:0:()::","show_status:0:()::","create_commit:0:()::","end_session:0:()::","abort_session:0:()::"]],"s/workflow-validator.sh":["s",["print_status:0:()::","check_git_status:0:()::","check_active_spec:0:()::","check_github_issue:0:()::","validate_workflow_conditions:0:()::"]],"s/workspace-state.sh":["s",["stat_mtime:0:()::","now_ts:0:():is_fresh,now_ts,stat_mtime:","is_fresh:0:()::","compute_dirty:0:()::","compute_open_prs:0:()::","emit_json:0:()::"]],"setup-cursor.sh":["s",["process_command_file:0:()::Function to process a command file"]],"t/test_helper.bash":["s",["setup_test_repo:0:()::Utility functions for tests","cleanup_test_repo:0:()::"]],"t/test_project_root_resolver.py":["p",{"TestProjectRootResolver":["18",["setUp:21:(self)::Set up test fixtures.","tearDown:31:(self)::Clean up test fixtures.","test_priority_1_env_variable:42:(self)::Test that CLAUDE_PROJECT_DIR takes highest priority.","test_priority_1_env_variable_invalid:59:(self)::Test that invalid CLAUDE_PROJECT_DIR is ignored.","test_priority_2_hook_payload_workspace_dir:75:(self)::Test resolution from hook payload workspaceDir field.","test_priority_2_hook_payload_project_root:91:(self)::Test resolution from hook payload projectRoot field.","test_priority_2_hook_payload_root_dir:107:(self)::Test resolution from hook payload rootDir field.","test_priority_3_file_path_ascent_agent_os:123:(self)::Test ascending from file path to find .agent-os directory.","test_priority_3_file_path_ascent_git:141:(self)::Test ascending from file path to find .git directory.","test_priority_3_cwd_ascent_agent_os:159:(self)::Test ascending from current directory to find .agent-os.","test_priority_3_git_rev_parse:179:(self, mock_run)::Test fast-path resolution using git rev-parse.","test_priority_4_fallback_to_cwd:200:(self)::Test fallback to current directory when no markers found.","test_agent_os_preferred_over_git:214:(self)::Test that .agent-os is preferred over .git when both exist.","test_caching_mechanism:237:(self)::Test that results are cached for performance.","test_cache_invalidation:259:(self)::Test that cache can be invalidated.","test_symlink_handling:282:(self)::Test that symlinks are resolved correctly.","test_permission_error_handling:303:(self):side_effect:Test graceful handling of permission errors.","side_effect:313:(path)::","test_deep_nesting:326:(self)::Test resolution from deeply nested directories."]],"TestProjectRootResolverCLI":["349",["setUp:352:(self)::Set up test fixtures.","tearDown:357:(self)::Clean up test fixtures.","test_cli_basic:365:(self)::Test basic CLI invocation.","test_cli_with_hook_payload:385:(self)::Test CLI with hook payload argument.","test_cli_with_file_path:410:(self)::Test CLI with file path argument.","test_cli_debug_mode:437:(self)::Test CLI debug output."]]}],"tools/check-file-contexts.py":["p",["main:491:()::Main function"],{"FileInfo":["46",[]],"ContextValidationResult":["59",[]],"AgentOSContextChecker":["69",["__init__:72:(self):_get_install_context,_get_project_context,_get_source_context:","_get_source_context:118:(self)>Optional[Path]::Get source context path","_get_install_context:123:(self)>Optional[Path]::Get install context path","_get_project_context:128:(self)>Optional[Path]::Get project context path by walking up directory tree","_classify_file:138:(self, file_path:Path, context:ContextType)>FileType::Classify a file based on its path and context","_find_references:158:(self, file_path:Path)>List[str]::Find Agent OS references in a file","_scan_context:181:(self, context_path:Path, context_type:ContextType)>Dict[str, FileInfo]:_classify_file,_find_references:Scan a context directory and catalog all files","_validate_context_rules:220:(self, context_map:Dict[str, FileInfo])>Tuple[List[str], List[str]]::Validate that files are in correct contexts according to rules","_validate_references:248:(self, context_map:Dict[str, FileInfo])>Tuple[List[str], List[str]]:_resolve_reference:Validate that all references resolve correctly","_resolve_reference:265:(self, reference:str)>Optional[str]::Resolve a reference to actual file path","validate_all_contexts:303:(self)>ContextValidationResult:_scan_context,_validate_context_rules,_validate_references:Validate all available contexts","detect_context_drift:344:(self)>Dict[str, List[str]]:_scan_context:Detect files that may have drifted to wrong contexts","generate_report:381:(self, result:ContextValidationResult, output_format:str = \"text\")>str:_generate_json_report,_generate_text_report:Generate validation report in specified format","_generate_text_report:388:(self, result:ContextValidationResult)>str:detect_context_drift:Generate human-readable text report","_generate_json_report:467:(self, result:ContextValidationResult)>str:detect_context_drift:Generate JSON report for programmatic use"]]}],"tools/context-integration.sh":["s",["print_status:0:()::Print colored output","print_error:0:()::","print_warning:0:()::","print_success:0:()::","print_info:0:()::","print_header:0:()::","print_section:0:()::","get_script_dir:0:()::Get script directory","check_tool_availability:0:()::Check if all required tools are available","run_context_validation:0:()::Run context structure validation","run_reference_validation:0:()::Run reference resolution validation","run_advanced_analysis:0:()::Run advanced context analysis","generate_context_map:0:()::Generate context documentation","run_full_validation:0:()::Run comprehensive validation suite","run_health_check:0:()::Run quick health check","generate_summary_report:0:()::Generate comprehensive summary report","show_usage:0:()::Show usage information","main:0:()::Main execution function"]],"tools/context-validator.sh":["s",["print_status:0:()::Print colored output","print_error:0:()::","print_warning:0:()::","print_success:0:()::","print_info:0:()::","get_source_context:0:()::Get script directory (source context)","get_install_context:0:()::Get install context","get_project_context:0:()::Get project context (if in a project)","validate_context_structure:0:()::Validate that a context directory exists and has expected structure","validate_source_context_structure:0:()::Validate source context (repository) structure","validate_install_context_structure:0:()::Validate install context (~/.agent-os) structure","validate_project_context_structure:0:()::Validate project context (.agent-os) structure","validate_file_references:0:()::Validate file reference patterns","validate_references_in_file:0:()::Validate references in a specific file","validate_reference_resolution:0:()::Validate that a reference can be resolved","validate_context_violations:0:()::Check for context violations (files in wrong places)","generate_context_summary:0:()::Generate context summary report","main:0:()::Main validation function","show_usage:0:()::Show usage information"]],"tools/generate-context-map.sh":["s",["print_status:0:()::Print colored output","print_info:0:()::","print_success:0:()::","get_source_context:0:()::Get script directory (source context)","get_install_context:0:()::Get install context","get_project_context:0:()::Get project context (if in a project)","generate_doc_header:0:()::Generate markdown documentation header","generate_source_context_map:0:()::Generate source context map","generate_install_context_map:0:()::Generate install context map","generate_project_context_map:0:()::Generate project context map","generate_file_flow_diagram:0:()::Generate file flow diagram","generate_usage_examples:0:()::Generate usage examples","main:0:()::Main function","show_usage:0:()::Show usage information"]],"tools/validate-references.sh":["s",["print_status:0:()::Print colored output","print_error:0:()::","print_warning:0:()::","print_success:0:()::","print_info:0:()::","get_source_context:0:()::Get script directory (source context)","get_install_context:0:()::Get install context","get_project_context:0:()::Get project context (if in a project)","find_references_in_file:0:():find_references_in_file:Find all Agent OS reference patterns in a file","validate_reference:0:()::Validate a specific reference","validate_install_reference:0:()::Validate install context reference","validate_project_reference:0:()::Validate project context reference","validate_script_reference:0:()::Validate script execution reference","validate_references_in_directory:0:()::Validate references in all files in a directory","validate_reference_patterns:0:()::Check for common reference patterns that might be problematic","validate_reference_syntax:0:()::Validate that reference syntax is correct","generate_reference_summary:0:()::Generate reference summary report","main:0:()::Main validation function","show_usage:0:()::Show usage information"]],"validate_subagents.py":["p",["validate_imports:25:()::Validate that all subagent modules can be imported.","validate_subagent_creation:39:()::Validate that all subagent classes can be instantiated.","validate_detection_system:63:()::Validate that the subagent detection system works.","validate_task_wrapper:81:()::Validate that the Task tool wrapper is functional.","run_validation:102:()::Run all validation tests."]]},"g":[["BaseHookHandler.log_debug","debug"],["SubagentDetector.detect","_calculate_confidence"],["GitChecker.has_uncommitted_changes","debug"],["handle_userprompt","resolve_workspace_root"],["IntentAnalyzer.analyze_intent","_determine_intent"],["handle_posttool","BaseHookHandler.log_debug"],["ContextAwareWorkflowHook.make_decision","ContextAwareWorkflowHook._prompt_for_clarification"],["handle_pretool","is_readonly_bash"],["handle_pretool_task","BaseHookHandler.log_debug"],["PreToolHandler._handle_write_command","is_docs_only_command"],["main","parse_env_file"],["PreToolHandler._handle_bash_command","BashCommandAnalyzer.is_git_gh_command"],["TaskHandler.handle","TaskHandler._recommend_subagent"],["check_workflow_status","check_open_prs"],["has_active_spec","run_cached"],["test_workspace_scenarios","print_header"],["AgentOSContextChecker._generate_json_report","detect_context_drift"],["PreToolHandler._handle_write_command","BashCommandAnalyzer.is_docs_only_command"],["check_workflow_status","check_git_status"],["main","parse_tech_stack"],["find_references_in_file","find_references_in_file"],["handle_pretool","OptimizedSubprocess.run_cached"],["get_user_intent","CacheManager.get"],["TaskToolWrapper.__init__","TaskToolWrapper._initialize_agents"],["handle_posttool","log_debug"],["TestHookFunctionality.test_posttool_documentation_check","run_hook"],["TestHookFunctionality.test_unknown_hook_type_fails","TestHookFunctionality.run_hook"],["handle_pretool_task","log_debug"],["IntentAnalyzer.__init__","_get_default_new_work_patterns"],["SubagentDetector.detect","TaskContext.to_dict"],["fast_intent_check","cached_subprocess"],["run_predefined_test_scenarios","print_header"],["handle_pretool","BashCommandAnalyzer.is_write_command"],["main","run_benchmarks"],["CacheManager.clear","CacheManager.clear"],["get_user_intent","run_cached"],["BaseHookHandler.check_workflow_status","GitChecker.has_uncommitted_changes"],["now_ts","now_ts"],["GitChecker.has_uncommitted_changes","run_cached"],["main","run_interactive_test_session"],["PreToolHandler.handle","PreToolHandler._handle_other_tools"],["main","TTLCache.get"],["BaseHookHandler.check_work_session","CacheManager.get"],["test_maintenance_scenarios","run_hook"],["BaseHookHandler.check_workflow_status","BaseHookHandler.log_debug"],["AgentOSContextChecker.__init__","_get_project_context"],["check_git_status","BaseHookHandler.log_debug"],["BaseHookHandler.check_workflow_status","GitChecker.has_open_prs"],["TestHookFunctionality.test_git_commands_always_allowed","TestHookFunctionality.run_hook"],["TaskToolWrapper._prepare_agent_context","_extract_search_query"],["HookBenchmark.run_benchmarks","create_test_payloads"],["TestContextAwareWorkflowHook.test_open_pr_detection","TestProjectRootResolver.side_effect"],["AgentOSContextChecker.validate_all_contexts","_scan_context"],["handle_userprompt","log_debug"],["TestHookFunctionality.test_work_session_bypasses_hygiene","run_hook"],["BaseHookHandler.check_work_session","get"],["test_new_work_scenarios","TestHookFunctionality.run_hook"],["BaseHookHandler.check_workflow_status","log_debug"],["TaskToolWrapper.execute","DetectionResult.to_dict"],["TestProjectRootResolver.test_permission_error_handling","TestContextAwareWorkflowHook.side_effect"],["check_git_status","log_debug"],["main","test_new_work_scenarios"],["PreToolHandler._handle_bash_command","is_git_gh_command"],["SpecChecker.has_active_spec","debug"],["check_open_prs","BaseHookHandler.log_debug"],["OptimizedSubprocess.run_cached","CacheManager.set"],["handle_pretool","is_write_command"],["ProjectRootResolver.resolve","_resolve_from_hook_payload"],["IntentAnalyzer.analyze_intent","IntentAnalyzer._find_pattern_matches"],["TestHookFunctionality.test_maintenance_intent_allowed","run_hook"],["PreToolHandler._handle_write_command","PreToolHandler._enforce_workflow_requirements"],["OptimizedSubprocess.run_cached","CacheManager.get"],["TaskToolWrapper._execute_with_agent","TaskToolWrapper.execute"],["check_open_prs","log_debug"],["main","run_predefined_test_scenarios"],["AgentOSContextChecker._scan_context","_find_references"],["WorkspaceResolver.resolve","WorkspaceResolver.resolve"],["AgentOSContextChecker.detect_context_drift","_scan_context"],["BaseHookHandler.get_tool_name","TTLCache.get"],["main","run"],["main","status"],["ContextAwareWorkflowHook._check_uncommitted_changes","ContextAwareWorkflowHook.run"],["handle_userprompt","check_workflow_status"],["TestHookFunctionality.test_userprompt_proceed_detection","run_hook"],["main","BaseHookHandler.log_debug"],["SubagentDetector.__init__","IntentAnalyzer._compile_patterns"],["BaseHookHandler.get_tool_input","CacheManager.get"],["handle_pretool_task","get"],["resolve_workspace_root","get"],["ProjectRootResolver._resolve_by_ascent","ProjectRootResolver._debug_log"],["ProjectRootResolver.resolve","_resolve_from_git"],["test_integration","TestHookFunctionality.run_hook"],["handle_pretool","TTLCache.get"],["has_active_spec","OptimizedSubprocess.run_cached"],["TaskToolWrapper.execute","_fallback_execution"],["main","log_debug"],["TestHookFunctionality.test_docs_operations_allowed","TestHookFunctionality.run_hook"],["SubagentDetector.detect","_generate_reason"],["IntentAnalyzer.get_intent","CacheManager.get"],["ContextAwareWorkflowHook.run","ContextAwareWorkflowHook.get_workspace_state"],["OptimizedSubprocess.run_cached","set"],["PostToolHandler.handle","PostToolHandler._check_documentation_status"],["SubagentDeployer.deploy","SubagentDeployer._deploy_subagent_files"],["main","HookBenchmark.run_benchmarks"],["parse_env_file","read_text"],["SubagentDeployer.deploy","_create_integration_hooks"],["ContextAwareWorkflowHook._check_uncommitted_changes","run"],["handle_pretool","resolve_workspace_root"],["handle_posttool","resolve_workspace_root"],["IntentAnalyzer.get_intent","run_cached"],["TaskToolWrapper.execute","TaskToolWrapper._parse_context"],["SubagentDetector.detect","to_dict"],["get_user_intent","OptimizedSubprocess.run_cached"],["handle_userprompt","get"],["WorkspaceResolver.resolve","TTLCache.get"],["GitChecker.has_uncommitted_changes","OptimizedSubprocess.run_cached"],["AgentOSContextChecker.validate_all_contexts","AgentOSContextChecker._validate_context_rules"],["AgentOSContextChecker._scan_context","AgentOSContextChecker._find_references"],["ProjectRootResolver._resolve_by_ascent","_debug_log"],["ContextAwareWorkflowHook.run","ContextAwareWorkflowHook.format_allow_message"],["test_performance","TestHookFunctionality.run_hook"],["ContextAwareWorkflowHook.get_workspace_state","_check_open_prs"],["TaskToolWrapper._prepare_agent_context","TaskToolWrapper._extract_search_query"],["BaseHookHandler.workspace_root","WorkspaceResolver.resolve"],["BaseHookHandler.get_tool_input","TTLCache.get"],["handle_userprompt","check_workflow_issues"],["handle_task","execute"],["TaskToolWrapper._prepare_agent_context","_detect_git_operation"],["PreToolHandler._handle_other_tools","PreToolHandler._enforce_workflow_requirements"],["BaseHookHandler.__init__","WorkspaceResolver.resolve"],["PreToolHandler._handle_bash_command","DocumentationChecker.check_docs_before_pr"],["BaseHookHandler.check_workflow_status","check_work_session"],["TaskToolWrapper._prepare_agent_context","_detect_search_operation"],["BaseHookHandler.workspace_root","ProjectRootResolver.resolve"],["SubagentDetector.detect","SubagentDetector._calculate_confidence"],["main","SubagentDeployer.deploy"],["BaseHookHandler.__init__","ProjectRootResolver.resolve"],["handle_pretool","BaseHookHandler.log_debug"],["SubagentDeployer.deploy","SubagentDeployer._create_integration_hooks"],["IntentAnalyzer.__init__","IntentAnalyzer._get_default_maintenance_patterns"],["HookLogger.debug","HookLogger._flush_buffer"],["SubagentDetector.__init__","_compile_patterns"],["BaseHookHandler.check_workflow_status","has_open_prs"],["main","analyze_intent"],["main","read_text"],["BaseHookHandler.check_workflow_status","BaseHookHandler.check_work_session"],["HookBenchmark.benchmark_hook","calculate_percentile"],["SubagentDetector.detect","_calculate_agent_scores"],["BashCommandAnalyzer.is_readonly_command","BashCommandAnalyzer.is_write_command"],["IntentAnalyzer.get_intent","HookLogger.debug"],["TaskToolWrapper._prepare_agent_context","_extract_file_path"],["check_workflow_status","TTLCache.get"],["PreToolHandler._handle_bash_command","PreToolHandler._handle_write_command"],["SubagentDeployer.deploy","_ensure_directories"],["handle_pretool","log_debug"],["ContextAwareWorkflowHook._check_open_prs","ContextAwareWorkflowHook.run"],["ContextAwareWorkflowHook.run","ContextAwareWorkflowHook.format_block_message"],["main","test_environment_overrides"],["IntentAnalyzer.__init__","IntentAnalyzer._get_default_new_work_patterns"],["read_text","read_text"],["TaskToolWrapper._execute_with_agent","execute"],["SubagentDeployer.deploy","_get_available_agents"],["test_environment_overrides","TestHookFunctionality.run_hook"],["AgentOSContextChecker._validate_references","AgentOSContextChecker._resolve_reference"],["TaskToolWrapper.__init__","_initialize_agents"],["main","_validate_command"],["IntentAnalyzer.__init__","SubagentDetector._compile_patterns"],["GitChecker.has_open_prs","run_cached"],["AgentOSContextChecker._generate_text_report","detect_context_drift"],["ContextAwareWorkflowHook.get_workspace_state","ContextAwareWorkflowHook._check_open_prs"],["check_git_status_sync","check_git_status_async"],["HookLogger.debug","CacheManager.get"],["handle_task","TaskToolWrapper.execute"],["TaskToolWrapper._prepare_agent_context","TaskToolWrapper._detect_git_operation"],["handle_pretool","is_docs_only_command"],["IntentAnalyzer.__init__","IntentAnalyzer._compile_patterns"],["TaskHandler.handle","TaskHandler._needs_subagent"],["TaskToolWrapper._execute_with_agent","_execute_general_purpose"],["ContextAwareWorkflowHook._check_open_prs","run"],["HookLogger.debug","get"],["test_integration","run_hook"],["AgentOSContextChecker._validate_references","_resolve_reference"],["handle_pretool","is_docs_operation"],["IntentAnalyzer.__init__","_get_default_maintenance_patterns"],["SubagentDetector.detect","SubagentDetector._generate_reason"],["check_workflow_issues","BaseHookHandler.log_debug"],["get_user_intent","TTLCache.get"],["test_manual_override_system","print_header"],["AgentOSContextChecker.generate_report","_generate_json_report"],["TaskToolWrapper._execute_with_agent","TaskToolWrapper._prepare_agent_context"],["check_workflow_status","BaseHookHandler.log_debug"],["IntentAnalyzer.get_intent","OptimizedSubprocess.run_cached"],["SubagentDetector.detect","DetectionResult.to_dict"],["GitChecker.has_open_prs","HookLogger.debug"],["IntentAnalyzer._load_configuration","BaseHookHandler.log_debug"],["PreToolHandler.handle","_handle_other_tools"],["BaseHookHandler.log_debug","HookLogger.debug"],["GitChecker.has_uncommitted_changes","HookLogger.debug"],["check_workflow_issues","log_debug"],["BaseHookHandler.handle","PostToolHandler.handle"],["is_readonly_command","BashCommandAnalyzer.is_write_command"],["ContextAwareWorkflowHook.run","ContextAwareWorkflowHook.make_decision"],["handle_pretool","BashCommandAnalyzer.is_readonly_command"],["BaseHookHandler.check_work_session","TTLCache.get"],["PreToolHandler.handle","PreToolHandler._handle_bash_command"],["CacheManager.clear","clear"],["main","HookBenchmark.analyze_results"],["check_workflow_status","log_debug"],["TestHookFunctionality.test_task_handler_subagent_enforcement","run_hook"],["UserPromptHandler.handle","_is_proceed_attempt"],["IntentAnalyzer._load_configuration","log_debug"],["IntentAnalyzer.analyze_intent","IntentAnalyzer._determine_intent"],["handle_pretool_task","CacheManager.get"],["resolve_workspace_root","CacheManager.get"],["log_debug","get"],["main","handle_posttool"],["PostToolHandler.handle","_check_documentation_status"],["handle_userprompt","get_user_intent"],["test_performance","run_hook"],["has_active_spec","BaseHookHandler.log_debug"],["main","handle_userprompt"],["WorkspaceResolver.resolve","debug"],["main","uninstall"],["TestHookFunctionality.test_posttool_documentation_check","TestHookFunctionality.run_hook"],["SpecChecker.has_active_spec","run_cached"],["AgentOSContextChecker.validate_all_contexts","_validate_context_rules"],["TestContextAwareWorkflowHook.test_open_pr_detection","TestContextAwareWorkflowHook.side_effect"],["HookBenchmark.run_benchmarks","benchmark_hook"],["handle_pretool","get"],["WorkspaceResolver.resolve","resolve"],["handle_posttool","get"],["handle_posttool","run_cached"],["print_header","print_separator"],["IntentAnalyzer.analyze_intent","_find_pattern_matches"],["AgentOSContextChecker.__init__","AgentOSContextChecker._get_source_context"],["has_active_spec","log_debug"],["now_ts","is_fresh"],["ContextAwareWorkflowHook.run","format_allow_message"],["main","deploy"],["main","benchmark_hook"],["test_maintenance_scenarios","TestHookFunctionality.run_hook"],["IntentAnalyzer.__init__","_compile_patterns"],["get_user_intent","BaseHookHandler.log_debug"],["handle_userprompt","CacheManager.get"],["OptimizedSubprocess.run_cached","TTLCache.get"],["AgentOSContextChecker._generate_json_report","AgentOSContextChecker.detect_context_drift"],["test_user_experience","print_header"],["TestHookFunctionality.test_work_session_bypasses_hygiene","TestHookFunctionality.run_hook"],["GitChecker.has_open_prs","OptimizedSubprocess.run_cached"],["TestHookFunctionality.test_unknown_hook_type_fails","run_hook"],["SubagentDetector.detect","SubagentDetector._calculate_agent_scores"],["ProjectRootResolver.clear_cache","ProjectRootResolver._debug_log"],["get_user_intent","log_debug"],["resolve_workspace_root","TTLCache.get"],["TaskToolWrapper._prepare_agent_context","TaskToolWrapper._extract_file_path"],["TestContextAwareWorkflowHook.test_open_pr_detection","side_effect"],["HookBenchmark.benchmark_hook","HookBenchmark.calculate_percentile"],["AgentOSContextChecker.__init__","_get_source_context"],["check_git_status","run_cached"],["TaskToolWrapper._execute_with_agent","TaskToolWrapper._execute_general_purpose"],["TestHookFunctionality.test_maintenance_intent_allowed","TestHookFunctionality.run_hook"],["UserPromptHandler.handle","UserPromptHandler._handle_proceed_attempt"],["TestHookFunctionality.test_git_commands_always_allowed","run_hook"],["BaseHookHandler.handle","TaskHandler.handle"],["TaskToolWrapper.execute","_parse_context"],["IntentAnalyzer.get_intent","TTLCache.get"],["BaseHookHandler.workspace_root","resolve"],["AgentOSContextChecker.generate_report","AgentOSContextChecker._generate_text_report"],["check_workflow_issues","fast_pr_check"],["TaskToolWrapper._prepare_agent_context","TaskToolWrapper._detect_search_operation"],["check_open_prs","run_cached"],["handle_userprompt","TTLCache.get"],["test_new_work_scenarios","run_hook"],["PreToolHandler._handle_bash_command","BashCommandAnalyzer.is_readonly_command"],["TestHookFunctionality.test_bash_readonly_commands_allowed","TestHookFunctionality.run_hook"],["main","resolve"],["ProjectRootResolver.resolve","ProjectRootResolver._debug_log"],["TestHookFunctionality.test_userprompt_proceed_detection","TestHookFunctionality.run_hook"],["ProjectRootResolver.clear_cache","_debug_log"],["TaskHandler.handle","_recommend_subagent"],["run_interactive_test_session","print_header"],["main","handle_pretool"],["AgentOSContextChecker.__init__","_get_install_context"],["PreToolHandler._handle_write_command","BashCommandAnalyzer.is_write_command"],["AgentOSContextChecker.generate_report","_generate_text_report"],["main","OptimizedHookDispatcher.dispatch"],["main","analyze_results"],["ProjectRootResolver.resolve","ProjectRootResolver._resolve_from_git"],["main","parse_input"],["SubagentDeployer.deploy","SubagentDeployer._ensure_directories"],["handle_userprompt","fast_intent_check"],["BaseHookHandler.exit_allow","BaseHookHandler.log_debug"],["resolve_workspace_root","BaseHookHandler.log_debug"],["main","get"],["main","HookDispatcher.dispatch"],["TestProjectRootResolver.test_permission_error_handling","TestProjectRootResolver.side_effect"],["TaskToolWrapper.execute","TaskContext.to_dict"],["BaseHookHandler.handle","UserPromptHandler.handle"],["SpecChecker.has_active_spec","OptimizedSubprocess.run_cached"],["ProjectRootResolver.resolve","_debug_log"],["handle_posttool","OptimizedSubprocess.run_cached"],["PreToolHandler.handle","_handle_bash_command"],["main","test_performance"],["fast_git_check","cached_subprocess"],["handle_userprompt","BaseHookHandler.check_workflow_status"],["main","test_intent_analysis"],["BaseHookHandler.exit_allow","log_debug"],["resolve_workspace_root","log_debug"],["BashCommandAnalyzer.is_readonly_command","is_write_command"],["ContextAwareWorkflowHook.run","make_decision"],["PreToolHandler._handle_write_command","is_write_command"],["check_workflow_issues","fast_work_session_check"],["handle_pretool","BashCommandAnalyzer.is_docs_only_command"],["PreToolHandler._handle_write_command","_enforce_workflow_requirements"],["get_user_intent","get"],["handle_pretool","check_workflow_status"],["handle_userprompt","BaseHookHandler.log_debug"],["handle_pretool","get_user_intent"],["handle_pretool","is_readonly_command"],["AgentOSContextChecker.validate_all_contexts","_validate_references"],["TestHookFunctionality.test_docs_operations_allowed","run_hook"],["ContextAwareWorkflowHook.get_workspace_state","ContextAwareWorkflowHook._check_uncommitted_changes"],["BaseHookHandler.get_tool_name","CacheManager.get"],["UserPromptHandler.handle","_handle_proceed_attempt"],["ProjectRootResolver.resolve","_resolve_from_env"],["main","test_user_experience"],["ProjectRootResolver.resolve","_resolve_by_ascent"],["log_debug","CacheManager.get"],["main","ContextAwareWorkflowHook.run"],["BaseHookHandler.get_tool_name","get"],["main","print_header"],["check_git_status","OptimizedSubprocess.run_cached"],["handle_pretool","CacheManager.get"],["HookLogger.debug","TTLCache.get"],["handle_posttool","CacheManager.get"],["HookBenchmark.run_benchmarks","HookBenchmark.benchmark_hook"],["ContextAwareWorkflowHook.get_workspace_state","_check_uncommitted_changes"],["now_ts","stat_mtime"],["BaseHookHandler.handle","handle"],["handle_posttool","cached_subprocess"],["BaseHookHandler.exit_block","BaseHookHandler.log_debug"],["main","test_manual_override_system"],["PreToolHandler._handle_bash_command","_handle_write_command"],["IntentAnalyzer.__init__","_load_configuration"],["main","HookBenchmark.benchmark_hook"],["handle_pretool","run_cached"],["SubagentDetector.__init__","SubagentDetector._compile_patterns"],["check_open_prs","OptimizedSubprocess.run_cached"],["AgentOSContextChecker.validate_all_contexts","AgentOSContextChecker._validate_references"],["IntentAnalyzer._compile_patterns","BaseHookHandler.log_debug"],["SubagentDeployer.deploy","_verify_deployment"],["handle_pretool","SpecChecker.has_active_spec"],["test_intent_analysis","print_header"],["UserPromptHandler.handle","UserPromptHandler._is_proceed_attempt"],["BaseHookHandler.exit_block","log_debug"],["WorkspaceResolver.resolve","CacheManager.get"],["handle_pretool","check_workflow_issues"],["TestHookFunctionality.test_bash_readonly_commands_allowed","run_hook"],["OptimizedSubprocess.run_cached","get"],["TaskToolWrapper.execute","TaskToolWrapper._execute_with_agent"],["HookLogger.debug","_flush_buffer"],["handle_pretool","fast_spec_check"],["ContextAwareWorkflowHook.make_decision","_prompt_for_clarification"],["IntentAnalyzer.get_intent","debug"],["WorkspaceResolver.resolve","ProjectRootResolver.resolve"],["main","handle_pretool_task"],["is_readonly_command","is_write_command"],["TaskToolWrapper.execute","_execute_with_agent"],["log_debug","TTLCache.get"],["IntentAnalyzer.__init__","BaseHookHandler.log_debug"],["IntentAnalyzer._compile_patterns","log_debug"],["is_readonly_bash","is_write_bash"],["BaseHookHandler.handle","BaseHookHandler.handle"],["AgentOSContextChecker.generate_report","AgentOSContextChecker._generate_json_report"],["AgentOSContextChecker._scan_context","AgentOSContextChecker._classify_file"],["TestProjectRootResolver.test_permission_error_handling","side_effect"],["WorkspaceResolver.resolve","get"],["BaseHookHandler.check_workflow_status","has_uncommitted_changes"],["PreToolHandler._handle_other_tools","_enforce_workflow_requirements"],["HookBenchmark.run_benchmarks","HookBenchmark.create_test_payloads"],["handle_posttool","TTLCache.get"],["AgentOSContextChecker.__init__","AgentOSContextChecker._get_project_context"],["TaskToolWrapper._execute_with_agent","_prepare_agent_context"],["test_environment_overrides","run_hook"],["handle_pretool_task","TTLCache.get"],["PreToolHandler._handle_bash_command","check_docs_before_pr"],["main","test_maintenance_scenarios"],["SubagentDeployer.deploy","_deploy_subagent_files"],["IntentAnalyzer.__init__","IntentAnalyzer._load_configuration"],["IntentAnalyzer.__init__","log_debug"],["AgentOSContextChecker._generate_text_report","AgentOSContextChecker.detect_context_drift"],["SpecChecker.has_active_spec","HookLogger.debug"],["OptimizedSubprocess.run_cached","TTLCache.set"],["BaseHookHandler.get_tool_input","get"],["ProjectRootResolver.resolve","ProjectRootResolver._resolve_from_hook_payload"],["main","dispatch"],["PreToolHandler._handle_bash_command","is_readonly_command"],["main","IntentAnalyzer.analyze_intent"],["handle_pretool","has_active_spec"],["TaskToolWrapper.execute","to_dict"],["AgentOSContextChecker.validate_all_contexts","AgentOSContextChecker._scan_context"],["TaskHandler.handle","_needs_subagent"],["ProjectRootResolver.resolve","ProjectRootResolver._resolve_by_ascent"],["check_workflow_status","CacheManager.get"],["IntentAnalyzer.get_intent","get"],["BaseHookHandler.handle","PreToolHandler.handle"],["AgentOSContextChecker._scan_context","_classify_file"],["handle_pretool","fast_intent_check"],["IntentAnalyzer.analyze_intent","BaseHookHandler.log_debug"],["TaskToolWrapper.execute","TaskToolWrapper._fallback_execution"],["fast_pr_check","cached_subprocess"],["handle_pretool","is_docs_only"],["TestHookFunctionality.test_task_handler_subagent_enforcement","TestHookFunctionality.run_hook"],["main","detect_pkg_manager_from_start"],["ContextAwareWorkflowHook.run","format_block_message"],["BaseHookHandler.__init__","resolve"],["check_workflow_status","get"],["ContextAwareWorkflowHook.run","get_workspace_state"],["WorkspaceResolver.resolve","HookLogger.debug"],["main","WorkspaceResolver.resolve"],["handle_pretool","BaseHookHandler.check_workflow_status"],["ProjectRootResolver.resolve","ProjectRootResolver._resolve_from_env"],["IntentAnalyzer.analyze_intent","log_debug"],["run_predefined_test_scenarios","test_intent_analysis"],["main","CacheManager.get"],["check_workflow_issues","fast_git_check"],["GitChecker.has_open_prs","debug"],["handle_pretool","is_write_bash"],["AgentOSContextChecker.detect_context_drift","AgentOSContextChecker._scan_context"],["AgentOSContextChecker.__init__","AgentOSContextChecker._get_install_context"],["main","ProjectRootResolver.resolve"]],"d":{".agent-os/product/decisions.md":["Product Decisions Log","2025-01-27: Initial Product Planning","Decision","Context","Alternatives Considered","Rationale","Consequences","2025-01-27: Distribution Strategy","Decision","Context"],".agent-os/product/mission.md":["Product Mission","Pitch","Users","Primary Customers","User Personas","The Problem","Inconsistent AI Coding Output","Lack of Development Standards for AI","No Framework for Spec-Driven AI Development","Differentiators"],".agent-os/product/roadmap.md":["Product Roadmap","Phase 0: Core Framework (\u2705 COMPLETE)","Phase 0.5: Critical Quality Issues (\u2705 SUBSTANTIAL PROGRESS)","Critical Issues to Fix","Must Complete Before Phase 1","Phase 1: Enhanced Reliability (4-6 weeks)","Must-Have Features","Should-Have Features","Dependencies","Phase 2: Team Collaboration (6-8 weeks)"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/spec.md":["Spec Requirements Document","Overview","User Stories","AI Workflow Abandonment Prevention","Automatic Documentation Commits","Contextual Workflow Injection","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/sub-specs/api-spec.md":["API Specification","Hook Interfaces","Stop Hook Interface","Success - workflow complete or no Agent OS work detected","Block - incomplete workflow detected ","PostToolUse Hook Interface","Success - changes committed","No action needed - not Agent OS documentation","Error - commit failed","Spec creation"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Claude Code Hooks Integration","Workflow State Detection","Automatic Documentation Management","Context Injection System","Approach Options","Implementation Architecture","File Structure","Hook Registration Configuration"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Mocking Requirements","Performance Tests","Error Scenario Tests","Test Implementation Strategy","Shell Script Testing Framework","Mock Implementation"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-29-slash-command-refactor-#38/spec.md":["Spec Requirements Document","Overview","User Stories","Performance Improvement for AI Developers","Maintainable Command Architecture","Aligned Implementation Patterns","Spec Scope","Out of Scope","Expected Deliverable"],".agent-os/specs/2025-07-29-slash-command-refactor-#38/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Approach Options","External Dependencies","Architecture Design","Current Monolithic Structure","Target Modular Structure","Component Breakdown","Implementation Strategy","Phase 1: Bash Script Creation"],".agent-os/specs/2025-07-29-slash-command-refactor-#38/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements"],".agent-os/specs/2025-07-29-task-status-sync-#6/spec.md":["Spec Requirements Document","Overview","User Stories","Broken Trust Recovery","Seamless Workflow Integration ","Spec Scope","Out of Scope","Expected Deliverable","Critical Importance","Spec Documentation"],".agent-os/specs/2025-07-29-task-status-sync-#6/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Core Functionality","Integration Points","Performance Requirements","Approach Options","External Dependencies","Implementation Architecture","Task Detection System","Pattern matching for task references in commits"],".agent-os/specs/2025-07-29-task-status-sync-#6/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Test Implementation Strategy","Test-First Development","Continuous Validation","Performance Benchmarks"],".agent-os/specs/2025-07-29-task-status-sync-#6/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/spec.md":["Spec Requirements Document","Overview","User Stories","Debugging with Dirty Workspace","Clear Workflow Recovery","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Hook Intelligence Enhancement","Enhanced Error Messaging","Workflow Recovery System","Debug Mode Implementation","Approach Options","Implementation Details","1. Hook Command Classification","2. Enhanced Decision Logic"],".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Performance Tests","Regression Tests"],".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/spec.md":["Spec Requirements Document","Overview","User Stories","Smart Workspace Analysis","Security Protection","Professional Git Hygiene","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Core Workspace Analysis Engine","Smart Cleanup Actions Engine","Hook Integration Architecture","Approach Options","Implementation Strategy","Phase 1: Core Analysis Engine","Phase 2: Hook Integration","Phase 3: Advanced Features"],".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Performance Testing","Error Handling Tests","Mock Strategy","Development Environment Mocking"],".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-pr-code-review-docs-#7/spec.md":["Spec Requirements Document","Overview","User Stories","Trustworthy PR Creation","Code Review Efficiency","Spec Scope","Out of Scope","Expected Deliverable"],".agent-os/specs/2025-07-30-project-config-amnesia-#12/spec.md":["Spec Requirements Document","Overview","User Stories","Amnesia-Free Development Experience","Configuration Source Hierarchy","Persistent Session Memory","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-30-project-config-amnesia-#12/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Project Context Loading System","Session Memory Persistence","Hook Integration Enhancement ","Approach Options","External Dependencies","Implementation Architecture","Core Components","File Structure"],".agent-os/specs/2025-07-30-project-config-amnesia-#12/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Mocking Requirements","Test Data Setup","Sample Project Configurations","Configuration Test Cases","Performance Tests","Load Testing"],".agent-os/specs/2025-07-30-project-config-amnesia-#12/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-testing-enforcement-#9/spec.md":["Spec Requirements Document","Overview","User Stories","No More Broken \"Complete\" Features","Test-Driven Completion Process","Testing Quality Assurance","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-30-testing-enforcement-#9/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Approach Options","External Dependencies","Implementation Architecture","Core Components","Pattern Design","Integration Points"],".agent-os/specs/2025-07-30-testing-enforcement-#9/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","End-to-End Tests","Mocking Requirements","Test Execution Strategy","Success Criteria"],".agent-os/specs/2025-07-30-testing-enforcement-#9/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-verification-proof-summaries-#8/spec.md":["Spec Requirements Document","Overview","User Stories","Evidence-Based Completion Claims","Trust Restoration in AI Assistance","Spec Scope","Out of Scope","Expected Deliverable"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/spec.md":["Spec Requirements Document","Overview","User Stories","Maintenance Work Freedom","New Work Discipline","Edge Case Handling","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Approach Options","Implementation Architecture","Intent Analysis Engine","Hook Enhancement System","Configuration System","~/.agent-os/config/workflow-enforcement.yaml","External Dependencies","File Structure Changes"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Test Data Sets","Message Classification Test Cases","Workspace State Test Cases","Performance Testing"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/tasks-revised.md":["Spec Tasks (Revised After Expert Analysis)","Critical Issues Identified","Revised Task Plan","Phase 0: Critical Bug Fixes (MUST COMPLETE FIRST)","Phase 1: Completed Work","Phase 2: Safe Integration (After Critical Fixes)","Phase 3: Production Readiness","Success Criteria","Before Integration","After Integration"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-14-subagents-system-integration-#25/spec.md":["Spec Requirements Document","Overview","User Stories","Seamless Agent Enhancement","Backward Compatibility Preservation","Enhanced Performance Experience","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-14-subagents-system-integration-#25/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Core Subagent Integration","Architecture Requirements","Integration Points","Approach Options","External Dependencies","New Dependencies","Integration Dependencies","Implementation Architecture"],".agent-os/specs/2025-08-14-subagents-system-integration-#25/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Error Handling Tests","Performance Benchmarks"],".agent-os/specs/2025-08-14-subagents-system-integration-#25/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-18-aos-installer-improvements-#65/spec.md":["Spec Requirements Document","Overview","User Stories","Fix Hook Update Detection","Enhanced Init Command","Clear Update Feedback","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-18-aos-installer-improvements-#65/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Hook Update Detection Enhancement","Smart Update Function Improvements ","Init Command Enhancement","Update Feedback System","Hook Update Mechanism","Approach Options","External Dependencies","Implementation Details"],".agent-os/specs/2025-08-18-aos-installer-improvements-#65/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","End-to-End Tests","Mocking Requirements","Performance Tests","Error Handling Tests"],".agent-os/specs/2025-08-18-aos-installer-improvements-#65/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/research-report.md":["Claude Code Hooks Research Report","Executive Summary","1. Claude Code Hooks Overview","Official Documentation Findings","2. Current Agent OS Implementation Analysis","Implementation Overview","Identified Strengths","Critical Issues Discovered"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/spec.md":["Spec Requirements Document","Overview","User Stories","Hook Implementation Research","Performance and Reliability Enhancement","Simplified Installation and Documentation","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Documentation Research Requirements","Performance and Reliability Requirements","Documentation Requirements","Installation Process Requirements","Approach Options","External Dependencies","Implementation Strategy","Phase 1: Research and Analysis"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","End-to-End Scenarios","Mocking Requirements","Test Data Requirements","Success Criteria"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-18-project-root-resolver-#58/spec.md":["Spec Requirements Document","Overview","User Stories","Reliable Hook Operation from Subdirectories","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-18-project-root-resolver-#58/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Core Project Root Resolver Module","Resolution Order Implementation","Integration Points","Approach","External Dependencies","Implementation Details","API Design","CLI Interface"],".agent-os/specs/2025-08-18-project-root-resolver-#58/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","End-to-End Tests","Mocking Requirements"],".agent-os/specs/2025-08-18-project-root-resolver-#58/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-18-update-documentation-command-#40/spec.md":["Spec Requirements Document","Overview","User Stories","Documentation Health Check","Deep Documentation Audit","Spec Scope","Out of Scope","Expected Deliverable"],".agent-os/specs/2025-08-18-update-documentation-command-#40/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Command Interface","Normal Mode Functionality","Deep Mode Functionality ","Evidence-Based Operation","Approach Options","External Dependencies"],".agent-os/specs/2025-08-18-update-documentation-command-#40/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Mocking Requirements"],".agent-os/specs/2025-08-18-update-documentation-command-#40/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-24-transparent-work-sessions-#75/spec.md":["Spec Requirements Document","Overview","User Stories","Transparent Batching During Execute Tasks","Helpful Workflow Guidance","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-24-transparent-work-sessions-#75/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Auto-start Detection System","Session State Management ","Commit Boundary Logic","Integration Points","Approach Options","External Dependencies"],".agent-os/specs/2025-08-24-transparent-work-sessions-#75/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements"],".agent-os/specs/2025-08-24-transparent-work-sessions-#75/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-25-installation-test-suite-#76/spec.md":["Spec Requirements Document","Overview","User Stories","As a new Agent OS user","As an Agent OS maintainer ","As a power user","Spec Scope","Installation Completeness Testing","Source vs Install vs Project Context Clarity","Pre-Release Validation Pipeline"],".agent-os/specs/2025-08-25-installation-test-suite-#76/tasks.md":["Spec Tasks","Tasks","Task 1: Installation Completeness Tests (BATS Framework)","Task 2: Context Clarity Validation System","Task 3: Pre-Release Validation Pipeline","Task 4: Architecture Documentation System","Task 5: Automated Auditing Tools"],".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/spec.md":["Spec Requirements Document","Overview","User Stories","Spec Scope","In Scope","Out of Scope","Success Criteria","Non-Goals","Assumptions","Dependencies"],".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/sub-specs/technical-spec.md":["Technical Specification","Problem Analysis","Root Cause","Current Exit Code Semantics","Current Command Flow","Technical Approach Options","Option 1: Exit Code Wrapper Script (Recommended)","Option 2: Command Configuration Modification","Option 3: Core Script Modification","Recommended Solution: Exit Code Wrapper"],".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/sub-specs/tests.md":["Tests Specification","Test Coverage Overview","Core Functionality Tests","Wrapper Script Unit Tests","Test Category: Exit Code Handling","Test Framework: Bash Test Framework (bats)","Test: Success case (exit 0) - Documentation up-to-date","Test: Semantic success case (exit 2) - Updates needed","Test: True error case (exit 1) - Script failure","Test: Unexpected error case (exit 3+) - Unknown failure"],".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/tasks.md":["Spec Tasks","Tasks","Phase 1: Wrapper Script Development (TDD)","Phase 2: Integration Testing (TDD) \u2705 COMPLETE","Phase 3: Installation and Deployment \u2705 COMPLETE","Phase 4: Documentation and Polish \u2705 COMPLETE","Success Criteria Verification \u2705 COMPLETE","Risk Mitigation Tasks \u2705 COMPLETE","Definition of Done \u2705 ALL CRITERIA MET"],".github/pull_request_template.md":["Evidence/Test Results/Verification","Documentation Updates","Code Review Notes"],"AGENT-OS_ARCHITECTURE_ANALYSIS.md":["Agent OS Fork Architecture Analysis","Current Implementation Overview","File Structure Comparison","Our Fork Structure"],"AGENT-OS_INSTRUCTION_COMPARISON.md":["Plan","Instruction File Comparison Analysis","Repository Information","File Summary Table","Detailed Comparison (by File)","analyze-product.md","create-spec.md","execute-tasks.md"],"BUILDER_METHODS_ARCHITECTURE.md":["Builder Methods Agent OS Architecture Diagram","System Overview","File Structure and Installation Flow","Detailed Component Breakdown","1. Command Files (`~/.claude/commands/`)","2. Instruction Files (`~/.agent-os/instructions/core/`)","3. Specialized Agents (`~/.claude/agents/`)","4. Agent Definition Format","Core Responsibilities","Workflow"],"BUILDER_METHODS_ARCHITECTURE_GPT5_ANALYSIS.md":["BUILDER_METHODS_ARCHITECTURE_GPT5_ANALYSIS.md","Checklist","Repository Overview","Architecture and Design","Code Quality and Modularity","Core Functionality and Design Decisions"],"CHANGELOG.md":["Changelog","[Unreleased]","Added","Changed","[4.0.0] - 2025-08-17","Added","Changed","Notes","[2.4.0] - 2025-08-15","Changed"],"CLAUDE.md":["CLAUDE.md","Project Context","Agent OS Documentation (Self-Usage)","CRITICAL: Development Workflow","Repository Structure","NEVER EDIT","REQUIRED WORKFLOW","Build and Test Commands","Installation and Setup","Health Check"],"EXECUTE-TASKS_COMPARISON.md":["Execute-Tasks Instruction Comparison","Overview Comparison","Architectural Differences","Builder Methods Approach:","Our Fork Approach:","Phase 1: Hygiene and Setup","Step-by-Step Comparison","Builder Methods Steps (10 steps):","Our Fork Phases (4 phases, multiple steps):","Key Philosophical Differences"],"IMPLEMENTATION-PLAN.md":["Modular Hooks Implementation Plan","Phase 1: Core Refactoring (Day 1-2)","Phase 2: Performance Optimization (Day 3-4)","Phase 3: Testing & Validation (Day 5)","Phase 4: Deployment (Day 6)","Success Criteria"],"README.md":["Your system for spec-driven agentic development.","About This Fork","Quick Start","Installation","Installs to ~/.agent-os/ (your home directory)","Navigate to your project directory","Initialize Agent OS for this project","Choose your AI assistant:","- Claude Code","- Cursor "],"claude-code/agents/context-fetcher.md":["Core Responsibilities","Automatic Delegation Triggers","Supported File Types","Workflow","Output Format","Smart Extraction Examples","Important Constraints"],"claude-code/agents/date-checker.md":["Core Responsibilities","Automatic Delegation Triggers","Workflow","Date Determination Process","Primary Method: File System Timestamp","Create directory if not exists","Create temporary file","Read file with ls -la to see timestamp","Extract date from the timestamp","Parse the date to YYYY-MM-DD format"],"claude-code/agents/file-creator.md":["Core Responsibilities","Automatic Delegation Triggers","Agent OS File Templates","Spec Files","Spec Requirements Document","Overview","User Stories","Spec Scope","Out of Scope","Expected Deliverable"],"claude-code/agents/git-workflow.md":["Core Responsibilities","Automatic Delegation Triggers","Agent OS Git Conventions","Branch Naming","Commit Messages","PR Descriptions","Workflow Patterns","Standard Feature Workflow","Branch Decision Logic","Example Requests"],"claude-code/agents/test-runner.md":["Core Responsibilities","Automatic Delegation Triggers","Workflow","Output Format","Test Framework Detection","Web Projects","Backend Projects","Full Stack Projects","Failure Analysis Focus","Common Test Failures"],"commands/analyze-product.md":["Analyze Product"],"commands/create-spec.md":["Create Spec"],"commands/execute-tasks.md":["Execute Task"],"commands/hygiene-check.md":["Hygiene Check"],"commands/plan-product.md":["Plan Product"],"commands/update-documentation.md":["Context","Task","Documentation Health Report","Available Modes","Notes"],"commands/work-session.md":["Work Session Management","Usage","Commands","Environment","Example Workflow","Start focused work session","Make multiple changes without commit spam","Edit auth service","Update tests ","Fix configuration"],"docs/ARCHITECTURE.md":["Agent OS Architecture","Critical Distinction: Three Agent OS Contexts","1. Agent OS REPO (Source Code)","2. Agent OS SYSTEM (Installed Files)","3. Agent OS PROJECT (Live Usage)","Critical Rules","Never Confuse Contexts","Installation Flow","Update Flow","Common Mistakes to Avoid"],"docs/AUDIT_PROMPT.md":["Agent OS System Audit and Cleanup Prompt","Context","Critical Issues to Address","Audit Tasks","Phase 1: Complete System Inventory","1. Find all aos-related files","2. Check all version files","3. Check shell configuration","4. Identify all aos commands/functions","5. Check what's on GitHub"],"docs/AUDIT_RESULTS.md":["Agent OS System Audit Results","1) Current State Inventory","Agent OS Quick Init Alias","Agent OS Quick Init Alias","2) Execution Flow Diagram (Actual Behavior)","3) Problem Analysis"],"docs/BACKGROUND_TASKS_SPEC.md":["Agent OS Background Tasks Specification","Overview","Claude-First Integration (Issue #19)","Philosophy","Hook-Based Observation","Data Storage","Project-scoped (preferred)","Global fallback","Format (JSON lines)","Dashboard Commands"],"docs/BUILDER_METHODS_EVALUATION.md":["Builder Methods Agent OS Evaluation & Integration Plan","Executive Summary","Current State Comparison","Our Fork's Unique Advantages (v2.2.0)","Builder Methods' Valuable Features (v1.3.1)","Integration Requirements","Non-Negotiable Requirements","Technical Integration Points"],"docs/CLAUDE_CODE_BEST_PRACTICES.md":["Getting Claude to Behave Like a Senior Developer","*Updated with More Examples of Persistent Misbehavior*","The Problem Pattern","Common Misbehaviors","Real Examples of Claude Misbehaving","Why This Happens","The Critical Lesson from Example 3","Effective Strategies to Fix This","1. The Evidence-First Mandate","2. The Verification Script Requirement"],"docs/CLEANUP_TECH_DEBT.md":["Agent OS Technical Debt Cleanup","Problem: Multiple Versioned Files","Issues Identified","Best Practices Violated","Recommended Solution","Immediate Actions","Migration Strategy","Why This Matters","Alternative: If Versions Are Needed","Conclusion"],"docs/COMMAND-DISTINCTION.md":["Command Distinction: execute-tasks vs execute-task","Overview","execute-tasks (Orchestrator) - `/execute-tasks`","What it does:","When to use:","Delegation:","execute-task (Individual Task Worker) - Internal Use Only","What it does:","When it's used:","Subagent Enforcement:"],"docs/CONTEXT-TROUBLESHOOTING.md":["Agent OS Context Troubleshooting Guide","Overview","Three-Context Architecture Quick Reference","Common Issues and Solutions","1. \"Install context directory not found\" Error","If directory doesn't exist or is empty","Run Agent OS setup from repository","Or run setup with overwrite to fix corrupted installation","2. \"Source file missing\" Errors","Run context validator from repository root"],"docs/EXIT_CODE_WRAPPER_PATTERN.md":["Exit Code Wrapper Pattern","Overview","Implementation Pattern","1. Wrapper Script Structure","[Script Name] Wrapper Script","Translates exit codes to provide user-friendly messaging for Claude Code","Get the directory where this wrapper script is located","Path to the original script","Verify the original script exists","Create temporary files to capture output and exit code"],"docs/IMPORTANT-NO-AOS-BACKGROUND.md":["IMPORTANT: aos-background Does Not Exist","Critical Information for AI Agents and Developers","History","Current Architecture","DO NOT:","DO:","Architectural Philosophy","If You See References to aos-background","Background Task Commands That Were Removed","Alternative Approach"],"docs/KNOWN_ISSUES.md":["Known Issues and Solutions","Hooks: Working Hybrid Solution","Claude Code Shell Function Caching","Problem","Symptoms","Solution for Users","Use the tool directly instead of the alias","Example:","Add this to your ~/.zshrc AFTER the Agent OS alias line","Root Cause"],"docs/PRODUCT_DOCS_TRACKING.md":["Agent OS Product Documentation Tracking","Problem","Solution","Recommended .gitignore Configuration","\u274c Don't do this:","\u2705 Do this instead:","Ignore temporary Agent OS files","But track product documentation","Optionally track active specs","!.agent-os/specs/"],"docs/RELEASE_PROCESS.md":["Agent OS Release Process","Overview","Version Numbering","Release Workflow","1. Prepare Release","1. Ensure main branch is clean","2. Update VERSION file","3. Update CHANGELOG.md","Add new version section with all changes","4. Commit version bump"],"docs/SUBAGENT_IMPLEMENTATION_SPEC.md":["Subagent System Implementation Specification (Revised)","Executive Summary","Core Design Principles","1. Safe by Default","2. Measurable Impact","3. Controlled Rollout","Feature Flag Configuration","Environment variable control","Modes explained:","- off: Disable all subagent functionality"],"docs/UPDATE_GUIDE.md":["Agent OS Update Guide","Overview","Update Categories","1. Global Updates (Computer-wide)","Option 1: Full update (recommended)","Option 2: Update specific components","Update hooks only","Update a specific instruction file","2. Project-Specific Files (No Updates Needed)","Update Detection"],"docs/VERIFICATION_STANDARDS.md":["Agent OS Verification Standards","Core Principle: Trust But Verify","Verification Checklist for Every Change","1. File Changes","2. Shell Scripts","3. Configuration Changes","4. Installation/Setup Scripts","5. CLI Tools","6. Git Operations","7. Documentation"],"hooks-stable/subagent-info.md":["Subagent Integration Status","Current Issue","What's Working","What's NOT Working","The Reality","Workaround Options","Option 1: Manual Subagent Selection","Option 2: Wait for Claude Code API Updates","Option 3: Create Wrapper Commands","Conclusion"],"hooks/MODULAR-ARCHITECTURE.md":["Modular Hooks Architecture v2.0","Overview","Success Criteria Achievement","Architecture Overview","Performance Optimizations","Modular Components","Key Features","Fast-Path Optimizations","Smart Intent Analysis","Caching Strategy"],"hooks/README-context-aware-hook.md":["Context-Aware Hook Wrapper","Overview","Key Features","Usage","Basic Usage","Via Claude Code hooks (recommended)","Manual Override","Force maintenance behavior (allows work regardless of workspace state)","Force new work behavior (requires clean workspace)","Debug Mode"],"hooks/README-intent-analyzer.md":["Intent Analysis Engine","Features","Usage","Command Line","Test a message","Output: Intent Type: maintenance, Confidence: 0.62","Enable debug logging","Python API","Configuration","Default Patterns"],"hooks/README.md":["Agent OS Claude Code Hooks","Overview","Architecture","Hook Details","Stop Hook (`stop-hook.sh`)","Post Tool Use Hook (`post-tool-use-hook.sh`)","User Prompt Submit Hook (`user-prompt-submit-hook.sh`)","Pre-Bash Hook (`pre-bash-hook.sh`)","Post-Bash Hook (`post-bash-hook.sh`)"],"hooks/instructions/Get_started_with_Claude_Code_hooks.md":["Get started with Claude Code hooks","Hook Events Overview","Quickstart","Prerequisites","Step 1: Open hooks configuration","Step 2: Add a matcher","Step 3: Add the hook","Step 4: Save your configuration","Step 5: Verify your hook","Step 6: Test your hook"],"hooks/instructions/Hooks_reference.md":["Hooks reference","Structure","Project-Specific Hook Scripts","Hook Events","PreToolUse","PostToolUse","Notification","Stop","PreCompact","SessionStart"],"hooks/instructions/Subagents - Anthropic.md":["Subagents - Anthropic","Key benefits","Quick start","File locations","File format","Using the /agents command (Recommended)","Direct file management","Automatic delegation","Explicit invocation","Code reviewer"],"instructions/core/analyze-product.md":["Pre-Flight","Analyze Current Product & Install Agent OS","Overview","Step 0: Mandatory Execution Acknowledgment","Step 1: Analyze Existing Codebase","Step 2: Organizational Standards Comparison"],"instructions/core/create-spec.md":["Pre-Flight","Spec Creation Rules","Overview","Step 0: Workspace Hygiene Check","Step 1: Spec Initiation","Step 2: Context Gathering"],"instructions/core/execute-task.md":["Task Execution Rules (Single Task)","Step 1: Task Understanding","Step 2: Technical Specification Review","Step 3: Best Practices Review","Step 4: Code Style Review","Step 5: Implement via TDD","Step 6: Task-Specific Test Verification","Step 7: Task Status Updates","Step 8: Documentation Sync (Read-only by default)"],"instructions/core/execute-tasks.md":["Pre-Flight","Phase 0: Repository Discovery Gate (BLOCKING)","Phase 0.5: Transparent Work Session Detection (AUTO-START)","Task Execution Rules","Overview","Dynamic Workflow Execution","Phase 1: Hygiene and Setup (runs only after Phase 0 discovery complete)","Phase 1.5: Deep Reality Check (Dev/Test/Prod)"],"instructions/core/hygiene-check.md":["Workspace Hygiene Check Instructions","Overview","Hygiene Check Process","Step 1: Git Repository Assessment","Step 6: Documentation Drift (Non-blocking)","Step 2: GitHub Issues & PRs Assessment","Step 3: Agent OS Specs Assessment"],"instructions/core/plan-product.md":["Pre-Flight","Product Planning Rules","Overview","Step 1: Gather User Input","Step 2: Create Documentation Structure","Step 3: Create mission.md"],"instructions/meta/pre-flight.md":["Pre-Flight Rules"],"integrations/README.md":["Agent OS Subagent Integration","Philosophy: Security Opt-In, Quality Automatic","How It Works","Key Benefits","Quick Start","1. Prerequisites","2. Install Integration","3. Try Enhanced Workflows","Same workflow, automatic quality enhancements","\u2192 Automatically uses: prd-writer, systems-architect, qa-test-engineer"],"integrations/workflow-enhancements/create-spec-enhanced.md":["Enhanced Spec Creation with Subagents","Overview","Subagent Integration Points","Available Enhancement Agents","Enhanced Workflow Process","Step 0: Subagent Detection and Planning","Step 2.5: Professional Requirements Enhancement"],"integrations/workflow-enhancements/create-spec-opt-in-example.md":["Example: Opt-In Enhancement Integration","Step 2.5: Optional Enhancement Detection and Suggestions","Step 2.5: Optional Enhancement Suggestions","Key Principles Demonstrated"],"integrations/workflow-enhancements/execute-tasks-enhanced.md":["Enhanced Task Execution with Subagents","Overview","Subagent Integration Architecture","Quality Pipeline Agents","Enhanced Workflow Process","Step 0: Quality Pipeline Initialization","Step 3.5: Architectural Implementation Planning"],"integrations/workflow-enhancements/plan-product-enhanced.md":["Enhanced Product Planning with Subagents","Overview","Subagent Integration Architecture","Professional Planning Agents","Enhanced Workflow Process","Step 0: Planning Enhancement Initialization","Step 2.5: Market Research and Competitive Analysis"],"standards/best-practices.md":["Development Best Practices","Context","Core Principles","Keep It Simple","Optimize for Readability","DRY (Don't Repeat Yourself)","GitHub Issue & PR Workflow (Required)","Task Status Management (Critical)","Dependencies","Choose Libraries Wisely"],"standards/code-style.md":["Code Style Guide","Context","General Formatting","Indentation","Python Style","Naming Conventions","Type Hints","String Formatting","Modern Python Patterns","JavaScript/TypeScript Style"],"standards/tech-stack.md":["Tech Stack","Context","Web Development Stack","Common Infrastructure","Version Control","CI/CD","Monitoring","AI/ML Services","Development Environment","Port Configuration"],"startup_checklist.md":["Agent OS Startup Checklist","\u2705 I. Base Installation of Agent OS","1. Install Agent OS Base","2. Customize Your Standards \ud83c\udfaf","\u2705 II. Tool-Specific Setup","For Claude Code","For Cursor","\u2705 III. Initialize Agent OS in Existing Codebase","1. Analyze Your Current Project","2. Review Generated Documents"],"tmp/discrepancy_report.md":["Agent OS Internal Discrepancy Report","Executive Summary","Working (Installed) vs Broken (Repo)","Critical Shell Scripts","Missing Critical Files (Not Installed)","Python Scripts","Documentation Cleanup Needed","Outdated Files to DELETE","Files to UPDATE","Consolidation Opportunities"],"tools/README.md":["Agent OS Tools","Quick Init Alias (`aos`)","Features","Installation","or","Usage","Examples","Detects project type and sets up appropriate AI assistant integration","Choose to preserve customizations or do a full update","Shows installation status, project detection, and available updates"],"workflow-modules/step-1-hygiene-and-setup.md":["Step 1: Hygiene and Setup","Workspace Hygiene Check (Step 0)","GitHub Issue Verification (Step 1)","Project Memory Refresh (Step 1.2) - BLOCKING","Codebase Reality Check (Step 1.5)","Next Steps"],"workflow-modules/step-2-planning-and-execution.md":["Step 2: Planning and Execution ","Task Assignment (Step 2)","Context Analysis (Step 2)","Implementation Planning (Step 3)","Implementation Plan for [TASK_NAME]","Development Server Check (Step 4)","Git Branch Management (Step 5)","Development Execution (Step 6)","Next Steps"],"workflow-modules/step-3-quality-assurance.md":["Step 3: Quality Assurance","Task Status Updates (Step 7)","Quality Assurance Verification (Step 8)","Mandatory Functionality Validation (Step 8.5)","Next Steps"],"workflow-modules/step-4-git-integration.md":["Step 4: Git Integration and Completion","Documentation Check (Step 8.5)","Git Workflow (Step 9)","Summary","Changes Made","Testing ","Documentation Updates","Issue Status","Roadmap Progress Check (Step 10)","Completion Notification (Step 11)"],"workflow-modules/testing-checklists.md":["Testing Checklists for Agent OS Workflows","Frontend Work Testing Checklist","Browser Testing Requirements","User Interaction Testing","Responsive Design Testing","Automated Testing","Evidence Documentation","Backend Work Testing Checklist","API Testing Requirements","Database Testing"]},"deps":{"hooks-stable/context_aware_hook.py":["os","sys","json","logging","subprocess","dataclasses","typing","pathlib","intent_analyzer","argparse"],"hooks-stable/deploy_subagents.py":["os","sys","json","shutil","logging","pathlib","typing","sys","os","task_tool_wrapper","sys","subagent_detector","subagent_detector","subagent_detector","argparse"],"hooks-stable/intent_analyzer.py":["intent_analyzer","os","re","time","dataclasses","enum","typing","yaml","datetime","argparse"],"hooks-stable/subagent_detector.py":["re","time","logging","typing","dataclasses"],"hooks-stable/task-tool-hook.py":["json","sys","os","pathlib","subagent_detector","task_tool_wrapper"],"hooks-stable/task_tool_wrapper.py":["os","sys","json","logging","typing","dataclasses","subagent_detector","subagents","re","re"],"hooks-stable/workflow-enforcement-hook-v2-backup.py":["json","os","re","subprocess","sys","datetime"],"hooks-stable/workflow-enforcement-hook.py":["json","os","re","subprocess","sys","datetime","re"],"hooks/bash_command_validator_example.py":["json","re","sys"],"hooks/context_aware_hook.py":["os","sys","json","logging","subprocess","dataclasses","typing","pathlib","intent_analyzer","argparse"],"hooks/integration_test.py":["json","os","subprocess","sys","tempfile","time","pathlib"],"hooks/intent_analyzer.py":["intent_analyzer","os","re","time","dataclasses","enum","typing","yaml","datetime","argparse"],"hooks/modules/hook_core.py":["json","os","subprocess","sys","datetime","typing","pathlib","scripts.project_root_resolver"],"hooks/modules/hook_core_optimized.py":["json","os","subprocess","sys","threading","time","datetime","typing","pathlib","concurrent.futures","scripts.project_root_resolver"],"hooks/modules/posttool_handler.py":["os","subprocess","sys"],"hooks/modules/posttool_handler_optimized.py":["os","subprocess","sys"],"hooks/modules/pretool_handler.py":["os","re","subprocess","sys","typing"],"hooks/modules/pretool_handler_optimized.py":["os","re","subprocess","sys","typing"],"hooks/modules/task_handler.py":["sys"],"hooks/modules/task_handler_optimized.py":["sys"],"hooks/modules/userprompt_handler.py":["json","re","sys"],"hooks/modules/userprompt_handler_optimized.py":["json","re","sys"],"hooks/pretool/workspace_hygiene.py":["sys","json","shared.git_utils"],"hooks/shared/cache_manager.py":["time","typing"],"hooks/shared/git_utils.py":["subprocess","asyncio","typing"],"hooks/test_context_aware_hook.py":["unittest","unittest.mock","os","sys","json","pathlib","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","time"],"hooks/test_context_aware_system.py":["argparse","os","sys","time","typing","intent_analyzer","manual_override_system","user_experience_system"],"hooks/test_integration_context_aware.py":["json","os","sys","subprocess","pathlib","time"],"hooks/test_intent_analyzer.py":["os","tempfile","unittest","unittest.mock","yaml","intent_analyzer","time"],"hooks/tests/modular/benchmark_final.py":["json","subprocess","time","statistics","pathlib"],"hooks/tests/modular/benchmark_optimized.py":["json","subprocess","time","statistics","pathlib"],"hooks/tests/modular/benchmark_performance.py":["json","os","subprocess","sys","time","statistics","pathlib"],"hooks/tests/modular/benchmark_test.py":["json","subprocess","time","statistics","pathlib"],"hooks/tests/modular/test_final_hook.py":["json","os","subprocess","sys","tempfile","unittest","unittest.mock","pathlib","time"],"hooks/tests/modular/test_hook_core.py":["os","sys","tempfile","unittest","unittest.mock","hook_core"],"hooks/tests/modular/test_pretool_handler.py":["os","sys","unittest","unittest.mock","pretool_handler"],"hooks/tests/test_workspace_hygiene.py":["unittest","json","sys","os","pretool.workspace_hygiene"],"hooks/workflow-enforcement-hook-final.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-modular.py":["json","sys","os","typing","modules"],"hooks/workflow-enforcement-hook-optimized-v3.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-optimized.py":["json","os","re","subprocess","sys","threading","time","datetime","pathlib","concurrent.futures","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-pre-optimization.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-v2-final.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-v2.py":["json","sys","os","hook_core_optimized","pretool_handler","posttool_handler","userprompt_handler","task_handler"],"hooks/workflow-enforcement-hook.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"scripts/config-resolver.py":["json","os","re","pathlib"],"scripts/project_root_resolver.py":["scripts.project_root_resolver","os","sys","json","argparse","subprocess","pathlib","typing"],"tests/test_project_root_resolver.py":["os","sys","tempfile","unittest","pathlib","unittest.mock","shutil","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","shutil","scripts.project_root_resolver","io","sys","scripts.project_root_resolver","sys","io","sys","scripts.project_root_resolver","sys","io","sys","scripts.project_root_resolver","io","sys"],"tools/check-file-contexts.py":["os","sys","json","re","pathlib","typing","dataclasses","enum","argparse"],"validate_subagents.py":["sys","os","pathlib","subagents","subagents","subagent_detector","task_tool_wrapper"]},"dir_purposes":{".agent-os/specs/2025-07-29-claude-code-hooks-#37":"Test files and test utilities",".agent-os/specs/2025-07-29-claude-code-hooks-#37/sub-specs":"Test specifications",".agent-os/specs/2025-07-29-slash-command-refactor-#38":"Test files and test utilities",".agent-os/specs/2025-07-29-slash-command-refactor-#38/sub-specs":"Test specifications",".agent-os/specs/2025-07-29-task-status-sync-#6":"Test files and test utilities",".agent-os/specs/2025-07-29-task-status-sync-#6/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10":"Test files and test utilities",".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11":"Test files and test utilities",".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-pr-code-review-docs-#7":"Project documentation",".agent-os/specs/2025-07-30-project-config-amnesia-#12":"Configuration files and settings",".agent-os/specs/2025-07-30-project-config-amnesia-#12/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-testing-enforcement-#9":"Test files and test utilities",".agent-os/specs/2025-07-30-testing-enforcement-#9/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-verification-proof-summaries-#8":"Test files and test utilities",".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22":"Test files and test utilities",".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/sub-specs":"Test specifications",".agent-os/specs/2025-08-14-subagents-system-integration-#25":"Test files and test utilities",".agent-os/specs/2025-08-14-subagents-system-integration-#25/sub-specs":"Test specifications",".agent-os/specs/2025-08-18-aos-installer-improvements-#65":"Test files and test utilities",".agent-os/specs/2025-08-18-aos-installer-improvements-#65/sub-specs":"Test specifications",".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62":"Test files and test utilities",".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/sub-specs":"Test specifications",".agent-os/specs/2025-08-18-project-root-resolver-#58":"Test files and test utilities",".agent-os/specs/2025-08-18-project-root-resolver-#58/sub-specs":"Test specifications",".agent-os/specs/2025-08-18-update-documentation-command-#40":"Test files and test utilities",".agent-os/specs/2025-08-18-update-documentation-command-#40/sub-specs":"Test specifications",".agent-os/specs/2025-08-24-transparent-work-sessions-#75":"Test files and test utilities",".agent-os/specs/2025-08-24-transparent-work-sessions-#75/sub-specs":"Test specifications",".agent-os/specs/2025-08-25-installation-test-suite-#76":"Test files and test utilities",".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80":"Test files and test utilities",".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/sub-specs":"Test specifications","claude-code/agents":"Test files and test utilities","commands":"Test files and test utilities","docs":"Project documentation","hooks":"Test files and test utilities","hooks/tests":"Test files and test utilities","hooks/tests/modular":"Test files and test utilities","instructions/core":"Test files and test utilities","integrations/workflow-enhancements":"Test files and test utilities","scripts":"Build and utility scripts","tests":"Test files and test utilities","tools":"Test files and test utilities","workflow-modules":"Test files and test utilities"},"staleness":1755722608.312798} \ No newline at end of file +{"at":"2025-08-27T16:07:00.266675","root":".","tree":[".","\u251c\u2500\u2500 claude-code/","\u2502 \u2514\u2500\u2500 agents/","\u251c\u2500\u2500 commands/","\u251c\u2500\u2500 docs/ (4 files)","\u2502 \u2514\u2500\u2500 BUILDER_METHODDS_agent-os/ (3 files)","\u2502 \u251c\u2500\u2500 claude-code/","\u2502 \u2502 \u2514\u2500\u2500 agents/","\u2502 \u251c\u2500\u2500 commands/","\u2502 \u251c\u2500\u2500 instructions/","\u2502 \u2502 \u251c\u2500\u2500 core/","\u2502 \u2502 \u2514\u2500\u2500 meta/","\u2502 \u251c\u2500\u2500 standards/","\u2502 \u2502 \u2514\u2500\u2500 code-style/","\u2502 \u2514\u2500\u2500 README.md","\u251c\u2500\u2500 hooks/ (77 files)","\u2502 \u251c\u2500\u2500 instructions/","\u2502 \u251c\u2500\u2500 lib/ (8 files)","\u2502 \u251c\u2500\u2500 modules/ (11 files)","\u2502 \u251c\u2500\u2500 pretool/ (1 files)"],"stats":{"total_files":126,"total_directories":66,"fully_parsed":{"python":51,"shell":40},"listed_only":{"json":6,"shell":29},"markdown_files":139},"f":{"hooks-stable/context_aware_hook.py":["p",["main:365:():run:Main entry point for CLI usage."],{"WorkspaceState":["37",[]],"WorkflowDecision":["57",[]],"ContextAwareWorkflowHook":["69",["__init__:75:(self, config_path:Optional[str] = None)::","get_workspace_state:85:(self)>WorkspaceState:_check_open_prs,_check_uncommitted_changes:","_check_uncommitted_changes:107:(self)>bool:run:","_check_open_prs:135:(self)>Tuple[bool, List[int]]:run:","make_decision:167:(self, user_message:str, workspace_state:WorkspaceState)>WorkflowDecision:_prompt_for_clarification:","_prompt_for_clarification:246:(self, user_message:str)>str::","format_block_message:275:(self, workspace_state:WorkspaceState)>str::","format_allow_message:310:(self, decision:WorkflowDecision)>str::","run:332:(self, tool_name:str, user_message:str)>int:format_allow_message,format_block_message,get_workspace_state,make_decision:"]]}],"hooks-stable/deploy_subagents.py":["p",["main:289:():deploy,status,uninstall:Main entry point for deployment."],{"SubagentDeployer":["25",["__init__:33:(self)::Initialize the deployer.","deploy:40:(self)>Dict[str, Any]:_create_integration_hooks,_deploy_subagent_files,_ensure_directories,_get_available_agents,_verify_deployment:","_ensure_directories:82:(self)::Ensure required directories exist.","_deploy_subagent_files:94:(self)::Deploy subagent files to Agent OS directory.","_create_integration_hooks:130:(self)::Create integration hooks for Claude Code."]]}],"hooks-stable/install-hooks.sh":["s",["log_info:0:()::Logging functions","log_success:0:()::","log_warning:0:()::","log_error:0:()::","check_claude_code:0:()::Check if Claude Code is installed","check_agent_os_project:0:()::Check if we're in an Agent OS project","verify_utilities:0:()::Verify hook utilities exist","create_config_dir:0:()::Create Claude Code config directory","backup_existing_config:0:()::Backup existing hooks configuration","generate_hooks_config:0:()::Generate Claude Code hooks configuration","test_hooks:0:()::Test hook functionality","show_summary:0:()::Display installation summary","error_handler:0:()::Handle errors","main:0:()::Main installation flow"]],"hooks-stable/intent_analyzer.py":["p",["log_debug:56:(message:str)>None::Write debug logs if debugging enabled.","main:294:():analyze_intent:Command-line interface for testing the intent analyzer."],{"WorkIntentResult":["45",[]],"IntentAnalyzer":["66",["__init__:74:(self, config_path:Optional[str] = None):_compile_patterns,_get_default_maintenance_patterns,_get_default_new_work_patterns,_load_configuration,log_debug:","_load_configuration:101:(self)>Dict[str, Any]:log_debug:Load configuration from YAML file with error handling.","_get_default_maintenance_patterns:120:(self)>List[str]::Get default maintenance work patterns.","_get_default_new_work_patterns:153:(self)>List[str]::Get default new work patterns.","_compile_patterns:185:(self, patterns:List[str])>List[re.Pattern]:log_debug:Compile regex patterns for efficient matching.","analyze_intent:196:(self, user_message:str)>WorkIntentResult:_determine_intent,_find_pattern_matches,log_debug:","_find_pattern_matches:240:(self, message:str, compiled_patterns:List[re.Pattern])>List[str]::Find all pattern matches in the message.","_determine_intent:250:(self, maintenance_matches:List[str], maintenance_score:float, new_work_matches:List[str], new_work_score:float, message:str)>WorkIntentResult::Determine final intent based on pattern analysis."]]}],"hooks-stable/post-tool-use-hook.sh":["s",["log_debug:0:()::Log function for debugging","should_auto_commit_file:0:()::Check if file should be auto-committed","get_modified_aos_docs:0:()::Get modified Agent OS documentation files","create_commit_message:0:()::Create auto-commit message","perform_auto_commit:0:()::Perform auto-commit","should_run_auto_commit:0:()::Check if we should run auto-commit","generate_status_message:0:()::Generate status message","main:0:()::Main execution"]],"hooks-stable/stop-hook.sh":["s",["log_debug:0:()::Log function for debugging","should_block_interaction:0:()::Check if we should block the current interaction","check_spec_abandonment:0:()::Check for spec execution abandonment","check_workspace_abandonment:0:()::Check for workspace abandonment","generate_stop_message:0:()::Generate stop message for Claude Code","generate_next_steps:0:()::Generate specific next steps based on current state","main:0:()::Main execution"]],"hooks-stable/subagent_detector.py":["p",{"DetectionResult":["22",["to_dict:28:(self)>Dict[str, Any]::Convert to dictionary for Task tool integration."]],"SubagentDetector":["37",["__init__:119:(self):_compile_patterns:Initialize the SubagentDetector.","_compile_patterns:125:(self)::Pre-compile regex patterns for performance.","detect:134:(self, context:Optional[Dict[str, Any]])>Dict[str, Any]:_calculate_agent_scores,_calculate_confidence,_generate_reason,to_dict:","_calculate_agent_scores:189:(self, context:Dict[str, Any])>Dict[str, float]::Calculate scores for each agent based on context.","_generate_reason:252:(self, agent:str, context:Dict[str, Any])>str::Generate a reason for the agent selection.","_calculate_confidence:273:(self, scores:Dict[str, float], best_score:float)>float::Calculate confidence based on score distribution.","get_available_agents:299:(self)>List[str]::Get list of available subagents.","get_agent_capabilities:303:(self)>Dict[str, Dict[str, Any]]::Get capabilities metadata for all agents."]]}],"hooks-stable/task-tool-hook.py":["p",["main:24:()::Main hook entry point for Task tool interception."]],"hooks-stable/task_tool_wrapper.py":["p",["handle_task:305:(params:Dict[str, Any])>Dict[str, Any]:execute:"],{"TaskContext":["38",["to_dict:45:(self)>Dict[str, Any]::Convert to dictionary for processing."]],"TaskToolWrapper":["55",["__init__:66:(self):_initialize_agents:Initialize the Task tool wrapper.","_initialize_agents:72:(self)>Dict[str, Any]::Initialize available subagents.","execute:82:(self, params:Dict[str, Any])>Dict[str, Any]:_execute_with_agent,_fallback_execution,_parse_context,to_dict:","_parse_context:116:(self, params:Dict[str, Any])>TaskContext::Parse parameters into TaskContext.","_execute_with_agent:126:(self, agent_type:str, context:TaskContext)>Dict[str, Any]:_execute_general_purpose,_prepare_agent_context,execute:Execute task with specified agent.","_prepare_agent_context:151:(self, agent_type:str, context:TaskContext)>Dict[str, Any]:_detect_git_operation,_detect_search_operation,_extract_file_path,_extract_search_query:Prepare context for specific agent type.","_detect_search_operation:189:(self, prompt:str)>str::Detect the type of search operation.","_extract_search_query:200:(self, prompt:str)>str::Extract search query from prompt.","_extract_file_path:230:(self, prompt:str)>str::Extract file path from prompt.","_detect_git_operation:248:(self, prompt:str)>str::Detect git operation type.","_execute_general_purpose:269:(self, context:TaskContext)>Dict[str, Any]::Execute with general-purpose agent.","_fallback_execution:281:(self, params:Dict[str, Any], error:str)>Dict[str, Any]::Fallback execution on error.","get_status:294:(self)>Dict[str, Any]::Get wrapper status and statistics."]]}],"hooks-stable/user-prompt-submit-hook.sh":["s",["log_debug:0:()::Log function for debugging","is_cache_valid:0:()::Check if cache is valid","get_context:0:()::Get cached context or build new","should_inject_context:0:()::Check if we should inject context","generate_context_injection:0:()::Generate context injection message","generate_minimal_context:0:()::Generate minimal context for non-Agent OS projects","cleanup:0:()::Clean up cache on exit","main:0:():log_debug:Main execution"]],"hooks-stable/workflow-enforcement-hook-v2-backup.py":["p",["log_debug:30:(message)::Write debug logs if debugging enabled.","check_git_status:39:():log_debug:Check if there are uncommitted changes.","check_open_prs:55:():log_debug:Check for open PRs in the current repo.","check_workflow_status:73:():check_git_status,check_open_prs:Analyze workflow status and return issues.","handle_pretool:88:(input_data):check_workflow_status,log_debug:Handle PreToolUse hook - block new work until workflow complete.","handle_pretool_task:193:(input_data):log_debug:Handle Task tool - enforce subagent usage for complex work.","handle_userprompt:217:(input_data):check_workflow_status,log_debug:Handle UserPromptSubmit - add context for proceed attempts.","handle_posttool:257:(input_data):log_debug:Handle PostToolUse - auto-commit Agent OS documentation changes.","main:274:():log_debug:Main entry point - route to appropriate handler."]],"hooks-stable/workflow-enforcement-hook.py":["p",["log_debug:30:(message)::Write debug logs if debugging enabled.","resolve_workspace_root:39:(input_data:dict | None = None)>str:log_debug:Best-effort resolution of the target project directory for checks.","check_git_status:69:(cwd:str)>bool:log_debug:Check if there are uncommitted changes in given workspace.","check_open_prs:85:(cwd:str)>bool:log_debug:Check for open PRs in the given repo.","check_workflow_status:104:(cwd:str)>list[str]:check_git_status,check_open_prs:Analyze workflow status and return issues for given workspace.","get_user_intent:119:(prompt_text:str = \"\")>str:log_debug:Return MAINTENANCE | NEW | AMBIGUOUS using intent analyzer, with env fallback.","is_write_bash:141:(command:str)>bool::Heuristic to detect write-capable bash commands.","is_docs_only_command:155:(command:str)>bool::Rough detection if a bash write targets docs/markdown only.","has_active_spec:161:(cwd:str)>bool:log_debug:Detect if there is a current spec context (.agent-os/specs/*) in workspace.","handle_pretool:178:(input_data):check_workflow_status,get_user_intent,has_active_spec,is_docs_only_command,is_write_bash,log_debug,resolve_workspace_root:Handle PreToolUse hook - block new work until workflow complete.","handle_pretool_task:282:(input_data):log_debug:Handle Task tool - enforce subagent usage for complex work.","handle_userprompt:306:(input_data):check_workflow_status,get_user_intent,log_debug,resolve_workspace_root:Handle UserPromptSubmit - add context for proceed attempts.","handle_posttool:337:(input_data):log_debug,resolve_workspace_root:Handle PostToolUse - auto-commit Agent OS documentation changes.","main:367:():log_debug:Main entry point - route to appropriate handler."]],"hooks/bash_command_validator_example.py":["p",["_validate_command:48:(command:str)>list[str]::","main:56:():_validate_command:"]],"hooks/context_aware_hook.py":["p",["main:365:():run:Main entry point for CLI usage."],{"WorkspaceState":["37",[]],"WorkflowDecision":["57",[]],"ContextAwareWorkflowHook":["69",["__init__:75:(self, config_path:Optional[str] = None)::","get_workspace_state:85:(self)>WorkspaceState:_check_open_prs,_check_uncommitted_changes:","_check_uncommitted_changes:107:(self)>bool:run:","_check_open_prs:135:(self)>Tuple[bool, List[int]]:run:","make_decision:167:(self, user_message:str, workspace_state:WorkspaceState)>WorkflowDecision:_prompt_for_clarification:","_prompt_for_clarification:246:(self, user_message:str)>str::","format_block_message:275:(self, workspace_state:WorkspaceState)>str::","format_allow_message:310:(self, decision:WorkflowDecision)>str::","run:332:(self, tool_name:str, user_message:str)>int:format_allow_message,format_block_message,get_workspace_state,make_decision:"]]}],"hooks/integration_test.py":["p",["run_hook:18:(hook_script, input_data)::Run a hook script with given input data and return exit code.","test_integration:33:():run_hook:Run integration tests for context-aware hook wrapper."]],"hooks/intent_analyzer.py":["p",["log_debug:56:(message:str)>None::Write debug logs if debugging enabled.","main:294:():analyze_intent:Command-line interface for testing the intent analyzer."],{"WorkIntentResult":["45",[]],"IntentAnalyzer":["66",["__init__:74:(self, config_path:Optional[str] = None):_compile_patterns,_get_default_maintenance_patterns,_get_default_new_work_patterns,_load_configuration,log_debug:","_load_configuration:101:(self)>Dict[str, Any]:log_debug:Load configuration from YAML file with error handling.","_get_default_maintenance_patterns:120:(self)>List[str]::Get default maintenance work patterns.","_get_default_new_work_patterns:153:(self)>List[str]::Get default new work patterns.","_compile_patterns:185:(self, patterns:List[str])>List[re.Pattern]:log_debug:Compile regex patterns for efficient matching.","analyze_intent:196:(self, user_message:str)>WorkIntentResult:_determine_intent,_find_pattern_matches,log_debug:","_find_pattern_matches:240:(self, message:str, compiled_patterns:List[re.Pattern])>List[str]::Find all pattern matches in the message.","_determine_intent:250:(self, maintenance_matches:List[str], maintenance_score:float, new_work_matches:List[str], new_work_score:float, message:str)>WorkIntentResult::Determine final intent based on pattern analysis."]]}],"hooks/modules/hook_core.py":["p",{"HookError":["25",[]],"HookLogger":["30",["debug:34:(message:str)>None::Write debug logs if debugging enabled."]],"WorkspaceResolver":["45",["resolve:49:(input_data:Optional[Dict[str, Any]] = None)>str:debug,resolve:Best-effort resolution of the target project directory."]],"GitChecker":["103",["has_uncommitted_changes:107:(cwd:str)>bool:debug:Check if there are uncommitted changes in workspace.","has_open_prs:123:(cwd:str)>bool:debug:Check for open PRs in the repository."]],"IntentAnalyzer":["142",["get_intent:153:(prompt_text:str = \"\")>str:debug:Return MAINTENANCE | NEW | AMBIGUOUS using intent analyzer."]],"SpecChecker":["177",["has_active_spec:181:(cwd:str)>bool:debug:Detect if there is a current spec context (.agent-os/specs/*) in workspace."]],"BaseHookHandler":["198",["__init__:201:(self, input_data:Dict[str, Any]):resolve:","log_debug:205:(self, message:str)>None:debug:Log debug message.","get_tool_name:209:(self)>str::Get the tool name from input data.","get_tool_input:213:(self)>Dict[str, Any]::Get the tool input from input data.","exit_allow:217:(self, reason:str = \"\")>None:log_debug:Exit with success (allow the operation).","exit_block:223:(self, reason:str)>None:log_debug:Exit with error (block the operation).","check_work_session:229:(self)>bool::Check if work session mode is active.","check_workflow_status:236:(self)>List[str]:check_work_session,has_open_prs,has_uncommitted_changes,log_debug:Analyze workflow status and return issues.","handle:253:(self)>None:handle:Main handler method to be implemented by subclasses."]]}],"hooks/modules/hook_core_optimized.py":["p",{"TTLCache":["28",["__init__:31:(self, default_ttl=30)::","get:37:(self, key:str, ttl:int = None)>Optional[Any]::Get cached value if not expired.","set:51:(self, key:str, value:Any)>None::Set cached value with current timestamp."]],"OptimizedSubprocess":["62",["run_cached:67:(cmd:List[str], cwd:str = None, timeout:float = 2.0, cache_key:str = None, cache_ttl:int = 10)>Tuple[int, str, str]:get,set:Run subprocess with caching and strict timeout."]],"HookError":["94",[]],"HookLogger":["99",["debug:107:(cls, message:str)>None:_flush_buffer,get:Write debug logs with buffering.","_flush_buffer:125:(cls)::Flush log buffer to disk."]],"WorkspaceResolver":["141",["resolve:145:(input_data:Optional[Dict[str, Any]] = None)>str:get,resolve:Fast workspace resolution with minimal fallback."]],"GitChecker":["168",["has_uncommitted_changes:172:(cwd:str)>bool:run_cached:Check git status with caching.","has_open_prs:184:(cwd:str)>bool:run_cached:Check for open PRs with caching."]],"IntentAnalyzer":["202",["get_intent:206:(prompt_text:str = \"\")>str:get,run_cached:Fast intent analysis with environment override."]],"SpecChecker":["229",["has_active_spec:233:(cwd:str)>bool:run_cached:Fast spec detection with caching."]],"BaseHookHandler":["246",["__init__:249:(self, input_data:Dict[str, Any])::","workspace_root:254:(self)>str:resolve:Lazy workspace resolution.","log_debug:260:(self, message:str)>None:debug:Log debug message.","get_tool_name:264:(self)>str:get:Get the tool name from input data.","get_tool_input:268:(self)>Dict[str, Any]:get:Get the tool input from input data.","exit_allow:272:(self, reason:str = \"\")>None:log_debug:Exit with success (allow the operation).","exit_block:278:(self, reason:str)>None:log_debug:Exit with error (block the operation).","check_work_session:284:(self)>bool:get:Fast work session check.","check_workflow_status:293:(self)>List[str]:check_work_session,log_debug:Optimized workflow status check.","handle:321:(self)>None:handle:Main handler method to be implemented by subclasses."]]}],"hooks/modules/posttool_handler.py":["p",{"PostToolHandler":["15",["handle:18:(self)>None:_check_documentation_status:Main PostTool handler logic.","_check_documentation_status:30:(self)>None::Check if documentation updates are required after tool use."]]}],"hooks/modules/posttool_handler_optimized.py":["p",{"PostToolHandler":["15",["handle:18:(self)>None:_check_documentation_status:Main PostTool handler logic.","_check_documentation_status:30:(self)>None::Check if documentation updates are required after tool use."]]}],"hooks/modules/pretool_handler.py":["p",{"BashCommandAnalyzer":["18",["is_write_command:33:(command:str)>bool::Detect if command performs write operations.","is_readonly_command:52:(command:str)>bool:is_write_command:Detect if command is clearly read-only.","is_docs_only_command:63:(command:str)>bool::Detect if command only targets documentation files.","is_git_gh_command:70:(command:str)>bool::Detect git or gh commands (usually allowed for workflow cleanup)."]],"DocumentationChecker":["75",["check_docs_before_pr:79:(command:str, workspace_root:str)>None::Check if docs are up-to-date before PR creation/merge."]],"PreToolHandler":["102",["handle:108:(self)>None:_handle_bash_command,_handle_other_tools:Main PreTool handler logic.","_handle_bash_command:127:(self, command:str)>None:_handle_write_command,check_docs_before_pr,is_git_gh_command,is_readonly_command:Handle Bash command validation.","_handle_write_command:143:(self, command:str)>None:_enforce_workflow_requirements,is_docs_only_command,is_write_command:Handle write command validation based on intent.","_handle_other_tools:166:(self, tool_input:Dict[str, Any])>None:_enforce_workflow_requirements:Handle non-Bash tools.","_enforce_workflow_requirements:187:(self, operation:str)>None::Enforce spec and hygiene requirements for new work."]]}],"hooks/modules/pretool_handler_optimized.py":["p",{"BashCommandAnalyzer":["18",["is_write_command:33:(command:str)>bool::Detect if command performs write operations.","is_readonly_command:52:(command:str)>bool:is_write_command:Detect if command is clearly read-only.","is_docs_only_command:63:(command:str)>bool::Detect if command only targets documentation files.","is_git_gh_command:70:(command:str)>bool::Detect git or gh commands (usually allowed for workflow cleanup)."]],"DocumentationChecker":["75",["check_docs_before_pr:79:(command:str, workspace_root:str)>None::Check if docs are up-to-date before PR creation/merge."]],"PreToolHandler":["102",["handle:108:(self)>None:_handle_bash_command,_handle_other_tools:Main PreTool handler logic.","_handle_bash_command:127:(self, command:str)>None:_handle_write_command,check_docs_before_pr,is_git_gh_command,is_readonly_command:Handle Bash command validation.","_handle_write_command:143:(self, command:str)>None:_enforce_workflow_requirements,is_docs_only_command,is_write_command:Handle write command validation based on intent.","_handle_other_tools:166:(self, tool_input:Dict[str, Any])>None:_enforce_workflow_requirements:Handle non-Bash tools.","_enforce_workflow_requirements:187:(self, operation:str)>None::Enforce spec and hygiene requirements for new work."]]}],"hooks/modules/task_handler.py":["p",{"TaskHandler":["13",["handle:22:(self)>None:_needs_subagent,_recommend_subagent:Main Task handler logic.","_needs_subagent:35:(self, description:str)>bool::Check if task description indicates need for specialized subagents.","_recommend_subagent:39:(self)>None::Block task and recommend appropriate subagent."]]}],"hooks/modules/task_handler_optimized.py":["p",{"TaskHandler":["13",["handle:22:(self)>None:_needs_subagent,_recommend_subagent:Main Task handler logic.","_needs_subagent:35:(self, description:str)>bool::Check if task description indicates need for specialized subagents.","_recommend_subagent:39:(self)>None::Block task and recommend appropriate subagent."]]}],"hooks/modules/userprompt_handler.py":["p",{"UserPromptHandler":["15",["handle:25:(self)>None:_handle_proceed_attempt,_is_proceed_attempt:Main UserPrompt handler logic.","_is_proceed_attempt:38:(self, prompt:str)>bool::Check if prompt indicates user wants to proceed with work.","_handle_proceed_attempt:42:(self, prompt:str)>None::Handle user attempts to proceed with new work."]]}],"hooks/modules/userprompt_handler_optimized.py":["p",{"UserPromptHandler":["15",["handle:25:(self)>None:_handle_proceed_attempt,_is_proceed_attempt:Main UserPrompt handler logic.","_is_proceed_attempt:38:(self, prompt:str)>bool::Check if prompt indicates user wants to proceed with work.","_handle_proceed_attempt:42:(self, prompt:str)>None::Handle user attempts to proceed with new work."]]}],"hooks/notify-hook.sh":["s",["check_recent_servers:0:()::Function to check for recent server starts","check_recent_test_failures:0:()::Function to check for recent test failures","check_recent_builds:0:()::Function to check for recent build activity"]],"hooks/post-bash-hook.sh":["s",["classify_intent:0:()::Function to classify command intent (same as pre-hook)"]],"hooks/post-tool-use-hook.sh":["s",["log_debug:0:()::Log function for debugging","should_auto_commit_file:0:()::Check if file should be auto-committed","get_modified_aos_docs:0:()::Get modified Agent OS documentation files","create_commit_message:0:()::Create auto-commit message","perform_auto_commit:0:()::Perform auto-commit","should_run_auto_commit:0:()::Check if we should run auto-commit","generate_status_message:0:()::Generate status message","main:0:()::Main execution"]],"hooks/pre-bash-hook.sh":["s",["classify_intent:0:()::Function to classify command intent"]],"hooks/pretool/workspace_hygiene.py":["p",["main:12:()::"]],"hooks/shared/cache_manager.py":["p",{"CacheManager":["7",["__init__:8:(self)::","get:12:(self, key:str)>Optional[Any]::Get value from cache if not expired","set:22:(self, key:str, value:Any, ttl:Optional[int] = None)>None::Store value in cache with TTL","clear:27:(self)>None:clear:Clear all cached values"]]}],"hooks/shared/git_utils.py":["p",["check_git_status_async:9:async (cwd:str, timeout:float = 0.5)>bool::Check git status with timeout and caching","check_git_status_sync:39:(cwd:str)>bool:check_git_status_async:Synchronous wrapper for git status check"]],"hooks/stop-hook.sh":["s",["log_debug:0:()::Log function for debugging","should_block_interaction:0:()::Check if we should block the current interaction","check_spec_abandonment:0:()::Check for spec execution abandonment","check_workspace_abandonment:0:()::Check for workspace abandonment","generate_stop_message:0:()::Generate stop message for Claude Code","generate_next_steps:0:()::Generate specific next steps based on current state","main:0:()::Main execution"]],"hooks/test_context_aware_hook.py":["p",{"TestContextAwareWorkflowHook":["20",["setUp:23:(self)::Set up test fixtures.","tearDown:30:(self)::Clean up after tests.","test_clean_workspace_detection:39:(self, mock_run)::Test detection of clean workspace.","test_dirty_workspace_detection:59:(self, mock_run)::Test detection of dirty workspace with uncommitted changes.","test_open_pr_detection:78:(self, mock_run):side_effect:Test detection of open pull requests.","side_effect:84:(*args, **kwargs)::","test_maintenance_work_allowed_with_dirty_workspace:104:(self)::Test that maintenance work is allowed even with dirty workspace.","test_new_work_blocked_with_dirty_workspace:130:(self)::Test that new work is blocked when workspace is dirty.","test_new_work_allowed_with_clean_workspace:157:(self)::Test that new work is allowed when workspace is clean.","test_environment_variable_override_maintenance:179:(self)::Test AGENT_OS_WORK_TYPE=maintenance override.","test_environment_variable_override_new_work:200:(self)::Test AGENT_OS_WORK_TYPE=new_work override.","test_bypass_flag:220:(self)::Test AGENT_OS_BYPASS flag to skip all checks.","test_ambiguous_intent_prompting:243:(self, mock_input)::Test user prompting for ambiguous intent.","test_performance_requirement:267:(self)::Test that decision making meets performance requirements."]]}],"hooks/test_context_aware_integration.sh":["s",["run_test:0:()::Function to run a test"]],"hooks/test_context_aware_system.py":["p",["print_separator:25:()::Print a visual separator.","print_header:29:(title:str):print_separator:Print a formatted header.","test_intent_analysis:35:(user_message:str, show_debug:bool = False)>Dict[str, Any]:print_header:Test intent analysis for a user message.","test_user_experience:67:(user_message:str, intent_result)>None:print_header:Test user experience messaging.","test_manual_override_system:83:(user_message:str)>None:print_header:Test manual override system.","test_workspace_scenarios:109:()>None:print_header:Test different workspace scenarios.","run_interactive_test_session:152:():print_header:Run an interactive testing session.","run_predefined_test_scenarios:211:():print_header,test_intent_analysis:Run predefined test scenarios.","main:264:():print_header,run_interactive_test_session,run_predefined_test_scenarios,test_intent_analysis,test_manual_override_system,test_user_experience:Main testing interface."]],"hooks/test_integration_context_aware.py":["p",["run_hook:18:(user_message:str, tool_name:str = \"Edit\")>int::","test_maintenance_scenarios:45:():run_hook:Test various maintenance work scenarios.","test_new_work_scenarios:67:():run_hook:Test various new work scenarios.","test_environment_overrides:99:():run_hook:Test environment variable overrides.","test_performance:128:():run_hook:Test that the hook meets performance requirements.","main:157:():test_environment_overrides,test_maintenance_scenarios,test_new_work_scenarios,test_performance:Run all integration tests."]],"hooks/test_intent_analyzer.py":["p",{"TestIntentAnalyzer":["21",["setUp:24:(self)::Set up test fixtures.","test_maintenance_work_detection:77:(self)::Test that maintenance work messages are correctly identified.","test_new_work_detection:87:(self)::Test that new work messages are correctly identified.","test_ambiguous_intent_detection:97:(self)::Test that ambiguous messages are correctly identified.","test_edge_cases:107:(self)::Test edge cases and boundary conditions.","test_case_insensitive_matching:126:(self)::Test that pattern matching is case insensitive.","test_performance_requirement:140:(self)::Test that intent analysis completes within performance requirements."]],"TestWorkIntentResult":["157",["test_result_creation:160:(self)::Test WorkIntentResult creation and properties.","test_result_string_representation:174:(self)::Test string representation of WorkIntentResult."]],"TestConfigurationLoading":["188",["setUp:191:(self)::Set up test configuration.","test_config_loading_success:210:(self, mock_exists, mock_file)::Test successful configuration loading.","test_config_loading_missing_file:224:(self, mock_exists)::Test behavior when configuration file is missing.","test_config_loading_invalid_yaml:236:(self, mock_exists, mock_file)::Test behavior with invalid YAML configuration.","test_pattern_compilation:245:(self)::Test that regex patterns are properly compiled."]],"TestLoggingAndDebugging":["257",["test_debug_logging_called:261:(self, mock_log)::Test that debug logging is called during analysis.","test_debug_mode_enabled:270:(self)::Test behavior when debug mode is enabled."]]}],"hooks/t/modular/benchmark_final.py":["p",["benchmark_hook:12:(hook_path, hook_type, payload, iterations=10)::Benchmark a specific hook.","main:40:():benchmark_hook:"]],"hooks/t/modular/benchmark_optimized.py":["p",["benchmark_hook:12:(hook_path, hook_type, payload, iterations=10)::Benchmark a specific hook.","main:40:():benchmark_hook:"]],"hooks/t/modular/benchmark_performance.py":["p",["main:184:():analyze_results,run_benchmarks:Run performance benchmarks."],{"HookBenchmark":["16",["__init__:19:(self)::","create_test_payloads:24:(self)::Create test payloads for different hook types.","benchmark_hook:48:(self, hook_path, hook_type, payload, iterations=20):calculate_percentile:Benchmark a specific hook with given payload.","calculate_percentile:85:(self, data, percentile)::Calculate percentile value.","run_benchmarks:89:(self):benchmark_hook,create_test_payloads:Run comprehensive performance benchmarks.","analyze_results:144:(self, results)::Analyze benchmark results and provide summary."]]}],"hooks/t/modular/benchmark_test.py":["p",["benchmark_hook:12:(hook_path, hook_type, payload, iterations=10)::Benchmark a specific hook.","main:40:():benchmark_hook:"]],"hooks/t/modular/test_final_hook.py":["p",{"TestHookPerformance":["19",["test_hook_performance_requirements:22:(self)::Test that hook meets P95 < 500ms requirement."]],"TestHookFunctionality":["44",["run_hook:47:(self, hook_type:str, payload:dict)>subprocess.CompletedProcess::Helper to run hook with payload.","test_bash_readonly_commands_allowed:53:(self):run_hook:Test that readonly bash commands are allowed.","test_git_commands_always_allowed:69:(self):run_hook:Test that git/gh commands are always allowed.","test_docs_operations_allowed:85:(self):run_hook:Test that documentation operations are allowed.","test_maintenance_intent_allowed:99:(self):run_hook:Test that maintenance intent allows write operations.","test_work_session_bypasses_hygiene:106:(self):run_hook:Test that work session mode bypasses hygiene checks.","test_task_handler_subagent_enforcement:113:(self):run_hook:Test that task handler enforces subagent usage for review tasks.","test_userprompt_proceed_detection:123:(self):run_hook:Test that proceed patterns are detected correctly.","test_posttool_documentation_check:139:(self):run_hook:Test that posttool checks documentation status.","test_unknown_hook_type_fails:146:(self):run_hook:Test that unknown hook types fail appropriately.","test_invalid_json_input_handled:152:(self)::Test that invalid JSON input is handled gracefully."]],"TestHookModularity":["160",["test_hook_file_size_requirement:163:(self)::Test that main hook file is reasonable size.","test_single_responsibility_functions:171:(self)::Test that functions have focused responsibilities."]],"TestBackwardCompatibility":["186",["test_hook_types_unchanged:189:(self)::Test that all original hook types are supported.","test_environment_variables_respected:204:(self)::Test that original environment variables still work."]]}],"hooks/t/modular/test_hook_core.py":["p",{"TestHookLogger":["22",["test_debug_logging_disabled:25:(self)::Test that logging is disabled by default.","test_debug_logging_enabled:32:(self)::Test that logging works when enabled."]],"TestWorkspaceResolver":["43",["test_resolve_from_cwd:46:(self)::Test resolution from current working directory.","test_resolve_from_input_data:51:(self)::Test resolution from input data fields."]],"TestGitChecker":["64",["test_has_uncommitted_changes_true:68:(self, mock_run)::Test detecting uncommitted changes.","test_has_uncommitted_changes_false:75:(self, mock_run)::Test clean git status.","test_has_open_prs_true:82:(self, mock_run)::Test detecting open PRs.","test_has_open_prs_false:90:(self, mock_run)::Test no open PRs."]],"TestIntentAnalyzer":["98",["test_get_intent_from_env:101:(self)::Test intent override from environment.","test_get_intent_from_analyzer:108:(self, mock_run)::Test intent from analyzer script.","test_get_intent_fallback:115:(self, mock_run)::Test fallback on analyzer failure."]],"TestSpecChecker":["122",["test_has_active_spec_true:126:(self, mock_run)::Test detecting active specs.","test_has_active_spec_false:133:(self, mock_run)::Test no active specs."]],"TestBaseHookHandler":["140",["setUp:143:(self)::Set up test handler.","test_get_tool_name:151:(self)::Test getting tool name.","test_get_tool_input:155:(self)::Test getting tool input.","test_check_work_session:160:(self, mock_exists)::Test work session detection.","test_handle_not_implemented:166:(self)::Test that handle method must be implemented."]]}],"hooks/t/modular/test_pretool_handler.py":["p",{"TestBashCommandAnalyzer":["18",["test_is_write_command_true:21:(self)::Test detecting write commands.","test_is_write_command_false:28:(self)::Test non-write commands.","test_is_readonly_command_true:35:(self)::Test detecting read-only commands.","test_is_readonly_command_false:42:(self)::Test commands that are not read-only.","test_is_docs_only_command:47:(self)::Test detecting docs-only commands.","test_is_git_gh_command:53:(self)::Test detecting git/gh commands."]],"TestDocumentationChecker":["60",["test_check_docs_before_pr_clean:64:(self, mock_run)::Test when docs are up to date.","test_check_docs_before_pr_needs_update:71:(self, mock_run)::Test when docs need updates.","test_check_docs_non_pr_command:78:(self, mock_run)::Test non-PR commands are ignored."]],"TestPreToolHandler":["85",["setUp:88:(self)::Set up test handler.","test_handle_bash_readonly:99:(self)::Test handling read-only bash commands.","test_handle_bash_write_new_work:108:(self, mock_spec, mock_intent)::Test handling write commands for new work.","test_handle_bash_write_maintenance:124:(self, mock_intent)::Test allowing maintenance writes.","test_handle_non_new_work_tool:137:(self)::Test allowing non-new-work tools.","test_handle_new_work_no_spec:151:(self, mock_spec, mock_intent)::Test blocking new work without active spec."]]}],"hooks/t/run-tests.sh":["s",["run_test_suite:0:()::Function to run a test suite","setup_test_environment:0:()::Function to setup test environment","cleanup_test_environment:0:()::Function to cleanup test environment","display_summary:0:()::Function to display test summary","main:0:()::Main execution"]],"hooks/t/test-bash-hooks.sh":["s",["setup:0:()::Setup test environment","teardown:0:()::Teardown test environment","test_pre_bash_hook:0:()::Test pre-bash-hook.sh","test_post_bash_hook:0:()::Test post-bash-hook.sh","test_notify_hook:0:()::Test notify-hook.sh","test_hooks_without_jq:0:()::Test JSON parsing with missing jq","test_non_bash_tool:0:()::Test non-Bash tool handling","main:0:()::Main test execution"]],"hooks/t/test-evidence-integration.sh":["s",["run_test:0:()::"]],"hooks/t/test-evidence-standards.sh":["s",["run_test:0:()::"]],"hooks/t/test-evidence-validation.sh":["s",["run_test:0:()::Test function","validate:0:()::"]],"hooks/t/test-git-utils.sh":["s",["test_git_repo_detection:0:()::Test git repository detection","test_branch_detection:0:()::Test branch detection","test_agent_os_file_operations:0:()::Test Agent OS file operations","test_commit_operations:0:()::Test commit operations","test_issue_extraction:0:()::Test issue extraction","test_wip_detection:0:()::Test work-in-progress detection","main:0:()::Main test execution"]],"hooks/t/test-hook-integration.sh":["s",["test_stop_hook:0:()::Test stop hook integration","test_post_tool_use_hook:0:()::Test post-tool-use hook integration","test_user_prompt_submit_hook:0:()::Test user-prompt-submit hook integration","test_hooks_configuration:0:()::Test hooks configuration","test_installation_script:0:()::Test installation script","test_utility_scripts:0:()::Test all utility scripts are executable","test_logging:0:()::Test logging functionality","main:0:()::Main test execution"]],"hooks/t/test-research-validation.sh":["s",["run_test:0:()::Test function"]],"hooks/t/test-testing-enforcer.sh":["s",["run_test:0:()::Test function"]],"hooks/t/test-utilities.sh":["s",["start_test_suite:0:()::Function to start a test suite","run_test:0:()::Function to run a test","assert_contains:0:()::Function to assert string contains substring","assert_equals:0:()::Function to assert string equals expected","finish_test_suite:0:()::Function to finish test suite","create_test_repo:0:()::Function to create temporary git repository for testing","create_agent_os_project:0:()::Function to create Agent OS project structure","cleanup_test_files:0:()::Function to cleanup test files","get_sample_agent_os_conversation:0:()::Sample conversation data for testing","get_sample_non_agent_os_conversation:0:()::","get_sample_high_risk_conversation:0:()::"]],"hooks/t/test-workflow-detector.sh":["s",["test_workflow_detection:0:()::Test workflow detection","test_abandonment_risk_detection:0:()::Test abandonment risk detection","test_workflow_completion_detection:0:()::Test workflow completion detection","test_spec_context_detection:0:()::Test spec context detection","test_workflow_suggestions:0:()::Test workflow suggestions","main:0:()::Main test execution"]],"hooks/t/test-workflow-integration.sh":["s",["run_test:0:()::"]],"hooks/t/test_workspace_hygiene.py":["p",{"TestWorkspaceHygiene":["12",["test_clean_workspace_allows_write:13:(self)::","test_dirty_workspace_blocks_write:17:(self)::","test_non_write_operations_allowed:21:(self)::"]]}],"hooks/user-prompt-submit-hook.sh":["s",["log_debug:0:()::Log function for debugging","is_cache_valid:0:()::Check if cache is valid","get_context:0:()::Get cached context or build new","should_inject_context:0:()::Check if we should inject context","generate_context_injection:0:()::Generate context injection message","generate_minimal_context:0:()::Generate minimal context for non-Agent OS projects","cleanup:0:()::Clean up cache on exit","main:0:():log_debug:Main execution"]],"hooks/workflow-enforcement-hook-final.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"hooks/workflow-enforcement-hook-modular.py":["p",["parse_input:86:()>Optional[Dict[str, Any]]::Parse JSON input from stdin with error handling.","main:99:():dispatch,parse_input:Main entry point - lightweight dispatcher."],{"HookDispatcher":["34",["__init__:37:(self)::","dispatch:45:(self, hook_type:str, input_data:Dict[str, Any])>None::Dispatch hook to appropriate handler.","_handle_pretool:65:(self, input_data:Dict[str, Any])>None::Handle PreToolUse hook.","_handle_pretool_task:70:(self, input_data:Dict[str, Any])>None::Handle Task-specific PreToolUse hook.","_handle_userprompt:75:(self, input_data:Dict[str, Any])>None::Handle UserPromptSubmit hook.","_handle_posttool:80:(self, input_data:Dict[str, Any])>None::Handle PostToolUse hook."]]}],"hooks/workflow-enforcement-hook-optimized-v3.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"hooks/workflow-enforcement-hook-optimized.py":["p",["log_debug:90:(message):get:Minimal debug logging.","resolve_workspace_root:103:(input_data:dict)>str:get:Fast workspace resolution.","check_git_status:121:(cwd:str)>bool:run_cached:Fast git status check with caching.","check_open_prs:132:(cwd:str)>bool:run_cached:Fast PR check with caching.","get_user_intent:150:(prompt_text:str = \"\")>str:get,run_cached:Fast intent analysis with caching.","has_active_spec:171:(cwd:str)>bool:run_cached:Fast spec detection with caching.","check_workflow_status:184:(cwd:str)>List[str]:get,log_debug:Fast workflow status check.","is_write_bash:217:(command:str)>bool::Fast write detection.","is_readonly_bash:232:(command:str)>bool:is_write_bash:Fast readonly detection.","is_docs_only:242:(command_or_path:str)>bool::Fast docs detection.","handle_pretool:250:(input_data):check_workflow_status,get,get_user_intent,has_active_spec,is_docs_only,is_readonly_bash,is_write_bash,log_debug,resolve_workspace_root,run_cached:PreToolUse handler - optimized for performance.","handle_pretool_task:327:(input_data):get,log_debug:Task tool handler - optimized.","handle_userprompt:347:(input_data):check_workflow_status,get,get_user_intent,log_debug,resolve_workspace_root:UserPromptSubmit handler - optimized.","handle_posttool:383:(input_data):get,log_debug,resolve_workspace_root,run_cached:PostToolUse handler - optimized.","main:409:():get,log_debug:Optimized main dispatcher."],{"TTLCache":["34",["__init__:37:(self, default_ttl=30)::","get:43:(self, key:str, ttl:int = None)>Optional[Any]::","set:54:(self, key:str, value:Any)>None::"]],"OptimizedSubprocess":["62",["run_cached:67:(cmd:List[str], cwd:str = None, timeout:float = 2.0, cache_ttl:int = 10)>Tuple[int, str, str]:get,set:"]]}],"hooks/workflow-enforcement-hook-pre-optimization.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"hooks/workflow-enforcement-hook-v2-final.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"hooks/workflow-enforcement-hook-v2.py":["p",["main:71:():dispatch:Optimized main entry point."],{"OptimizedHookDispatcher":["38",["dispatch:42:(hook_type:str, input_data:dict)>None::Fast dispatch to appropriate handler."]]}],"hooks/workflow-enforcement-hook.py":["p",["cached_subprocess:36:(cmd:List[str], cwd:str = None, timeout:float = 1.5, cache_ttl:int = 10)>Tuple[int, str, str]::Ultra-fast subprocess with aggressive caching and timeouts.","log_debug:61:(message)::Minimal logging.","resolve_workspace_root:68:(input_data:dict)>str::Fast workspace resolution with fallbacks.","fast_git_check:83:(cwd:str)>bool:cached_subprocess:Ultra-fast git status check.","fast_pr_check:91:(cwd:str)>bool:cached_subprocess:Ultra-fast PR check with fallback.","fast_intent_check:106:(prompt:str = \"\")>str:cached_subprocess:Ultra-fast intent analysis with smart fallbacks.","fast_spec_check:146:(cwd:str)>bool::Ultra-fast spec detection with filesystem check.","fast_work_session_check:158:()>bool::Ultra-fast work session detection.","check_workflow_issues:166:(cwd:str)>List[str]:fast_git_check,fast_pr_check,fast_work_session_check,log_debug:Fast workflow status check with early returns.","is_write_command:187:(command:str)>bool::Fast write detection with optimized checks.","is_readonly_command:209:(command:str)>bool:is_write_command:Fast readonly detection.","is_docs_operation:216:(text:str)>bool::Fast docs detection.","handle_pretool:224:(input_data):check_workflow_issues,fast_intent_check,fast_spec_check,is_docs_operation,is_readonly_command,is_write_command,log_debug,resolve_workspace_root:PreTool handler optimized for speed.","handle_pretool_task:302:(input_data):log_debug:Task handler optimized for speed.","handle_userprompt:321:(input_data):check_workflow_issues,fast_intent_check,log_debug,resolve_workspace_root:UserPrompt handler optimized for speed.","handle_posttool:349:(input_data):cached_subprocess,log_debug,resolve_workspace_root:PostTool handler optimized for speed.","main:379:():handle_posttool,handle_pretool,handle_pretool_task,handle_userprompt,log_debug:High-performance main dispatcher."]],"integrations/setup-subagent-integration.sh":["s",["check_claude_code:0:()::Check if Claude Code is installed","detect_subagents:0:()::Detect available subagents","setup_integration_config:0:()::Create integration configuration","update_instructions:0:()::Update Agent OS instructions with subagent integration","create_basic_enhancements:0:()::Create enhanced workflow instructions","update_claude_commands:0:()::Update Claude Code commands to use enhanced workflows","test_integration:0:()::Test subagent integration","main:0:()::Main setup flow"]],"s/commit-boundary-manager.sh":["s",["log_debug:0:()::Logging","is_work_session_active:0:()::Check if work session is active","detect_boundary:0:()::Detect if this is a commit boundary","generate_commit_message:0:()::Generate commit message for boundary","create_boundary_commit:0:()::Create automatic commit at boundary","main:0:()::Main execution"]],"s/config-resolver.py":["p",["read_text:22:(path:Path)>str:read_text:","parse_env_file:28:(path:Path)>dict:read_text:","detect_pkg_manager_from_start:43:(start_sh:str)>dict::","parse_tech_stack:64:(md:str)>dict::","main:86:():detect_pkg_manager_from_start,parse_env_file,parse_tech_stack,read_text:"]],"s/context-aware-wrapper.sh":["s",["read_state:0:()::Helper: read cached workspace state"]],"s/intent-analyzer.sh":["s",["lower:0:()::"]],"s/project_root_resolver.py":["p",["main:207:():resolve:CLI entry point for project root resolver."],{"ProjectRootResolver":["33",["__init__:36:(self, debug:bool = False)::","_debug_log:47:(self, message:str)>None::Log debug message to stderr.","clear_cache:52:(self)>None:_debug_log:Clear the cached result.","resolve:62:(self, file_path:Optional[str] = None, hook_payload:Optional[Dict[str, Any]] = None, use_git_fallback:bool = True)>str:_debug_log,_resolve_by_ascent,_resolve_from_env,_resolve_from_git,_resolve_from_hook_payload:","_resolve_from_env:123:(self)>Optional[str]::Resolve from CLAUDE_PROJECT_DIR environment variable.","_resolve_from_hook_payload:130:(self, payload:Dict[str, Any])>Optional[str]::Resolve from hook payload fields.","_resolve_from_git:147:(self)>Optional[str]::Use git rev-parse to find repository root.","_resolve_by_ascent:165:(self, start_path:str)>Optional[str]:_debug_log:Ascend from start path to find project markers."]]}],"s/session-auto-start.sh":["s",["print_success:0:()::","print_info:0:()::"]],"s/session-memory.sh":["s",["refresh_cache:0:()::","export_session_vars:0:()::","stat_mtime:0:()::Helper to get mtime portable across macOS/Linux"]],"s/update-documentation-wrapper.sh":["s",["cleanup:0:()::Cleanup function"]],"s/update-documentation.sh":["s",["check_changelog_recent:0:()::Function to check if CHANGELOG has recent entries (last 30 days)","check_issues_without_specs:0:()::Function to check for open issues without specs","check_recent_prs:0:()::Function to check for recent PRs in CHANGELOG"]],"s/work-session-manager.sh":["s",["show_help:0:()::","start_session:0:()::","show_status:0:()::","create_commit:0:()::","end_session:0:()::","abort_session:0:()::"]],"s/workflow-validator.sh":["s",["print_status:0:()::","check_git_status:0:()::","check_active_spec:0:()::","check_github_issue:0:()::","validate_workflow_conditions:0:()::"]],"s/workspace-state.sh":["s",["stat_mtime:0:()::","now_ts:0:():is_fresh,now_ts,stat_mtime:","is_fresh:0:()::","compute_dirty:0:()::","compute_open_prs:0:()::","emit_json:0:()::"]],"setup-cursor.sh":["s",["process_command_file:0:()::Function to process a command file"]],"t/test_helper.bash":["s",["setup_test_repo:0:()::Utility functions for tests","cleanup_test_repo:0:()::"]],"t/test_project_root_resolver.py":["p",{"TestProjectRootResolver":["18",["setUp:21:(self)::Set up test fixtures.","tearDown:31:(self)::Clean up test fixtures.","test_priority_1_env_variable:42:(self)::Test that CLAUDE_PROJECT_DIR takes highest priority.","test_priority_1_env_variable_invalid:59:(self)::Test that invalid CLAUDE_PROJECT_DIR is ignored.","test_priority_2_hook_payload_workspace_dir:75:(self)::Test resolution from hook payload workspaceDir field.","test_priority_2_hook_payload_project_root:91:(self)::Test resolution from hook payload projectRoot field.","test_priority_2_hook_payload_root_dir:107:(self)::Test resolution from hook payload rootDir field.","test_priority_3_file_path_ascent_agent_os:123:(self)::Test ascending from file path to find .agent-os directory.","test_priority_3_file_path_ascent_git:141:(self)::Test ascending from file path to find .git directory.","test_priority_3_cwd_ascent_agent_os:159:(self)::Test ascending from current directory to find .agent-os.","test_priority_3_git_rev_parse:179:(self, mock_run)::Test fast-path resolution using git rev-parse.","test_priority_4_fallback_to_cwd:200:(self)::Test fallback to current directory when no markers found.","test_agent_os_preferred_over_git:214:(self)::Test that .agent-os is preferred over .git when both exist.","test_caching_mechanism:237:(self)::Test that results are cached for performance.","test_cache_invalidation:259:(self)::Test that cache can be invalidated.","test_symlink_handling:282:(self)::Test that symlinks are resolved correctly.","test_permission_error_handling:303:(self):side_effect:Test graceful handling of permission errors.","side_effect:313:(path)::","test_deep_nesting:326:(self)::Test resolution from deeply nested directories."]],"TestProjectRootResolverCLI":["349",["setUp:352:(self)::Set up test fixtures.","tearDown:357:(self)::Clean up test fixtures.","test_cli_basic:365:(self)::Test basic CLI invocation.","test_cli_with_hook_payload:385:(self)::Test CLI with hook payload argument.","test_cli_with_file_path:410:(self)::Test CLI with file path argument.","test_cli_debug_mode:437:(self)::Test CLI debug output."]]}],"tools/check-file-contexts.py":["p",["main:491:()::Main function"],{"FileInfo":["46",[]],"ContextValidationResult":["59",[]],"AgentOSContextChecker":["69",["__init__:72:(self):_get_install_context,_get_project_context,_get_source_context:","_get_source_context:118:(self)>Optional[Path]::Get source context path","_get_install_context:123:(self)>Optional[Path]::Get install context path","_get_project_context:128:(self)>Optional[Path]::Get project context path by walking up directory tree","_classify_file:138:(self, file_path:Path, context:ContextType)>FileType::Classify a file based on its path and context","_find_references:158:(self, file_path:Path)>List[str]::Find Agent OS references in a file","_scan_context:181:(self, context_path:Path, context_type:ContextType)>Dict[str, FileInfo]:_classify_file,_find_references:Scan a context directory and catalog all files","_validate_context_rules:220:(self, context_map:Dict[str, FileInfo])>Tuple[List[str], List[str]]::Validate that files are in correct contexts according to rules","_validate_references:248:(self, context_map:Dict[str, FileInfo])>Tuple[List[str], List[str]]:_resolve_reference:Validate that all references resolve correctly","_resolve_reference:265:(self, reference:str)>Optional[str]::Resolve a reference to actual file path","validate_all_contexts:303:(self)>ContextValidationResult:_scan_context,_validate_context_rules,_validate_references:Validate all available contexts","detect_context_drift:344:(self)>Dict[str, List[str]]:_scan_context:Detect files that may have drifted to wrong contexts","generate_report:381:(self, result:ContextValidationResult, output_format:str = \"text\")>str:_generate_json_report,_generate_text_report:Generate validation report in specified format","_generate_text_report:388:(self, result:ContextValidationResult)>str:detect_context_drift:Generate human-readable text report","_generate_json_report:467:(self, result:ContextValidationResult)>str:detect_context_drift:Generate JSON report for programmatic use"]]}],"tools/context-integration.sh":["s",["print_status:0:()::Print colored output","print_error:0:()::","print_warning:0:()::","print_success:0:()::","print_info:0:()::","print_header:0:()::","print_section:0:()::","get_script_dir:0:()::Get script directory","check_tool_availability:0:()::Check if all required tools are available","run_context_validation:0:()::Run context structure validation","run_reference_validation:0:()::Run reference resolution validation","run_advanced_analysis:0:()::Run advanced context analysis","generate_context_map:0:()::Generate context documentation","run_full_validation:0:()::Run comprehensive validation suite","run_health_check:0:()::Run quick health check","generate_summary_report:0:()::Generate comprehensive summary report","show_usage:0:()::Show usage information","main:0:()::Main execution function"]],"tools/context-validator.sh":["s",["print_status:0:()::Print colored output","print_error:0:()::","print_warning:0:()::","print_success:0:()::","print_info:0:()::","get_source_context:0:()::Get script directory (source context)","get_install_context:0:()::Get install context","get_project_context:0:()::Get project context (if in a project)","validate_context_structure:0:()::Validate that a context directory exists and has expected structure","validate_source_context_structure:0:()::Validate source context (repository) structure","validate_install_context_structure:0:()::Validate install context (~/.agent-os) structure","validate_project_context_structure:0:()::Validate project context (.agent-os) structure","validate_file_references:0:()::Validate file reference patterns","validate_references_in_file:0:()::Validate references in a specific file","validate_reference_resolution:0:()::Validate that a reference can be resolved","validate_context_violations:0:()::Check for context violations (files in wrong places)","generate_context_summary:0:()::Generate context summary report","main:0:()::Main validation function","show_usage:0:()::Show usage information"]],"tools/generate-context-map.sh":["s",["print_status:0:()::Print colored output","print_info:0:()::","print_success:0:()::","get_source_context:0:()::Get script directory (source context)","get_install_context:0:()::Get install context","get_project_context:0:()::Get project context (if in a project)","generate_doc_header:0:()::Generate markdown documentation header","generate_source_context_map:0:()::Generate source context map","generate_install_context_map:0:()::Generate install context map","generate_project_context_map:0:()::Generate project context map","generate_file_flow_diagram:0:()::Generate file flow diagram","generate_usage_examples:0:()::Generate usage examples","main:0:()::Main function","show_usage:0:()::Show usage information"]],"tools/validate-references.sh":["s",["print_status:0:()::Print colored output","print_error:0:()::","print_warning:0:()::","print_success:0:()::","print_info:0:()::","get_source_context:0:()::Get script directory (source context)","get_install_context:0:()::Get install context","get_project_context:0:()::Get project context (if in a project)","find_references_in_file:0:():find_references_in_file:Find all Agent OS reference patterns in a file","validate_reference:0:()::Validate a specific reference","validate_install_reference:0:()::Validate install context reference","validate_project_reference:0:()::Validate project context reference","validate_script_reference:0:()::Validate script execution reference","validate_references_in_directory:0:()::Validate references in all files in a directory","validate_reference_patterns:0:()::Check for common reference patterns that might be problematic","validate_reference_syntax:0:()::Validate that reference syntax is correct","generate_reference_summary:0:()::Generate reference summary report","main:0:()::Main validation function","show_usage:0:()::Show usage information"]],"validate_subagents.py":["p",["validate_imports:25:()::Validate that all subagent modules can be imported.","validate_subagent_creation:39:()::Validate that all subagent classes can be instantiated.","validate_detection_system:63:()::Validate that the subagent detection system works.","validate_task_wrapper:81:()::Validate that the Task tool wrapper is functional.","run_validation:102:()::Run all validation tests."]]},"g":[["TestHookFunctionality.test_git_commands_always_allowed","run_hook"],["handle_pretool","BaseHookHandler.check_workflow_status"],["main","ProjectRootResolver.resolve"],["handle_pretool","TTLCache.get"],["test_integration","TestHookFunctionality.run_hook"],["AgentOSContextChecker.validate_all_contexts","AgentOSContextChecker._scan_context"],["BashCommandAnalyzer.is_readonly_command","is_write_command"],["BaseHookHandler.handle","TaskHandler.handle"],["handle_userprompt","check_workflow_issues"],["handle_pretool","fast_intent_check"],["TaskToolWrapper.execute","TaskToolWrapper._fallback_execution"],["PostToolHandler.handle","_check_documentation_status"],["BaseHookHandler.log_debug","HookLogger.debug"],["check_git_status","OptimizedSubprocess.run_cached"],["TestHookFunctionality.test_work_session_bypasses_hygiene","TestHookFunctionality.run_hook"],["TestHookFunctionality.test_userprompt_proceed_detection","TestHookFunctionality.run_hook"],["TaskToolWrapper._prepare_agent_context","TaskToolWrapper._extract_search_query"],["BaseHookHandler.workspace_root","WorkspaceResolver.resolve"],["SubagentDeployer.deploy","_verify_deployment"],["get_user_intent","TTLCache.get"],["TaskHandler.handle","_needs_subagent"],["ProjectRootResolver.resolve","ProjectRootResolver._resolve_by_ascent"],["TaskToolWrapper._prepare_agent_context","_extract_search_query"],["get_user_intent","log_debug"],["handle_pretool","is_docs_operation"],["main","run_predefined_test_scenarios"],["SubagentDetector.detect","_calculate_confidence"],["PreToolHandler._handle_write_command","BashCommandAnalyzer.is_write_command"],["AgentOSContextChecker.__init__","_get_source_context"],["AgentOSContextChecker.__init__","_get_project_context"],["get_user_intent","OptimizedSubprocess.run_cached"],["ProjectRootResolver.resolve","_resolve_from_git"],["AgentOSContextChecker.generate_report","_generate_text_report"],["WorkspaceResolver.resolve","TTLCache.get"],["main","analyze_results"],["main","read_text"],["PreToolHandler._handle_bash_command","_handle_write_command"],["HookBenchmark.benchmark_hook","calculate_percentile"],["GitChecker.has_uncommitted_changes","debug"],["AgentOSContextChecker.validate_all_contexts","AgentOSContextChecker._validate_references"],["read_text","read_text"],["TaskToolWrapper.execute","_fallback_execution"],["resolve_workspace_root","get"],["handle_posttool","TTLCache.get"],["IntentAnalyzer.__init__","_load_configuration"],["check_git_status_sync","check_git_status_async"],["handle_pretool_task","BaseHookHandler.log_debug"],["main","test_manual_override_system"],["main","handle_pretool_task"],["AgentOSContextChecker.detect_context_drift","AgentOSContextChecker._scan_context"],["ContextAwareWorkflowHook.run","format_block_message"],["handle_posttool","log_debug"],["test_new_work_scenarios","run_hook"],["handle_userprompt","BaseHookHandler.log_debug"],["main","_validate_command"],["AgentOSContextChecker.__init__","AgentOSContextChecker._get_project_context"],["main","test_user_experience"],["handle_posttool","OptimizedSubprocess.run_cached"],["IntentAnalyzer.get_intent","HookLogger.debug"],["ContextAwareWorkflowHook._check_open_prs","ContextAwareWorkflowHook.run"],["BaseHookHandler.check_workflow_status","log_debug"],["AgentOSContextChecker.validate_all_contexts","_validate_context_rules"],["handle_pretool_task","CacheManager.get"],["handle_task","execute"],["PostToolHandler.handle","PostToolHandler._check_documentation_status"],["check_open_prs","run_cached"],["TaskToolWrapper._execute_with_agent","TaskToolWrapper.execute"],["OptimizedSubprocess.run_cached","set"],["handle_userprompt","CacheManager.get"],["ContextAwareWorkflowHook.run","ContextAwareWorkflowHook.get_workspace_state"],["PreToolHandler.handle","_handle_bash_command"],["is_readonly_bash","is_write_bash"],["GitChecker.has_open_prs","HookLogger.debug"],["SubagentDeployer.deploy","SubagentDeployer._create_integration_hooks"],["TaskToolWrapper.execute","_execute_with_agent"],["AgentOSContextChecker.validate_all_contexts","AgentOSContextChecker._validate_context_rules"],["GitChecker.has_uncommitted_changes","run_cached"],["TaskToolWrapper._prepare_agent_context","_extract_file_path"],["check_workflow_status","check_open_prs"],["BaseHookHandler.handle","BaseHookHandler.handle"],["test_performance","run_hook"],["TestHookFunctionality.test_maintenance_intent_allowed","run_hook"],["check_workflow_status","TTLCache.get"],["IntentAnalyzer.get_intent","get"],["HookLogger.debug","TTLCache.get"],["main","test_performance"],["BaseHookHandler.get_tool_name","get"],["check_workflow_status","log_debug"],["TaskToolWrapper.execute","DetectionResult.to_dict"],["handle_pretool","SpecChecker.has_active_spec"],["test_user_experience","print_header"],["PreToolHandler._handle_bash_command","is_git_gh_command"],["IntentAnalyzer.__init__","_get_default_maintenance_patterns"],["IntentAnalyzer.analyze_intent","IntentAnalyzer._find_pattern_matches"],["PreToolHandler._handle_bash_command","DocumentationChecker.check_docs_before_pr"],["BaseHookHandler.get_tool_input","CacheManager.get"],["fast_pr_check","cached_subprocess"],["AgentOSContextChecker.__init__","AgentOSContextChecker._get_source_context"],["ContextAwareWorkflowHook._check_open_prs","run"],["BaseHookHandler.handle","PostToolHandler.handle"],["UserPromptHandler.handle","_is_proceed_attempt"],["main","BaseHookHandler.log_debug"],["is_readonly_command","is_write_command"],["CacheManager.clear","CacheManager.clear"],["ProjectRootResolver.resolve","_resolve_by_ascent"],["main","run"],["TaskToolWrapper._execute_with_agent","TaskToolWrapper._execute_general_purpose"],["test_maintenance_scenarios","TestHookFunctionality.run_hook"],["IntentAnalyzer.analyze_intent","_determine_intent"],["handle_pretool_task","log_debug"],["main","parse_tech_stack"],["SubagentDetector.detect","SubagentDetector._calculate_confidence"],["PreToolHandler._handle_bash_command","PreToolHandler._handle_write_command"],["HookBenchmark.run_benchmarks","HookBenchmark.create_test_payloads"],["handle_pretool","is_write_command"],["PreToolHandler._handle_other_tools","PreToolHandler._enforce_workflow_requirements"],["SubagentDetector.detect","TaskContext.to_dict"],["test_intent_analysis","print_header"],["check_workflow_issues","fast_git_check"],["UserPromptHandler.handle","UserPromptHandler._is_proceed_attempt"],["main","dispatch"],["main","parse_input"],["BaseHookHandler.handle","handle"],["main","test_new_work_scenarios"],["OptimizedSubprocess.run_cached","CacheManager.get"],["BaseHookHandler.check_work_session","get"],["TaskToolWrapper._execute_with_agent","TaskToolWrapper._prepare_agent_context"],["ContextAwareWorkflowHook.get_workspace_state","ContextAwareWorkflowHook._check_open_prs"],["has_active_spec","run_cached"],["handle_pretool","get"],["handle_pretool","check_workflow_status"],["IntentAnalyzer.__init__","_compile_patterns"],["ContextAwareWorkflowHook.run","ContextAwareWorkflowHook.format_block_message"],["has_active_spec","BaseHookHandler.log_debug"],["PreToolHandler.handle","_handle_other_tools"],["BaseHookHandler.workspace_root","ProjectRootResolver.resolve"],["BaseHookHandler.check_workflow_status","GitChecker.has_open_prs"],["TestHookFunctionality.test_unknown_hook_type_fails","TestHookFunctionality.run_hook"],["ProjectRootResolver.clear_cache","_debug_log"],["PreToolHandler._handle_bash_command","BashCommandAnalyzer.is_readonly_command"],["ProjectRootResolver.resolve","ProjectRootResolver._debug_log"],["WorkspaceResolver.resolve","HookLogger.debug"],["WorkspaceResolver.resolve","resolve"],["TaskToolWrapper.execute","TaskContext.to_dict"],["TestHookFunctionality.test_task_handler_subagent_enforcement","run_hook"],["run_interactive_test_session","print_header"],["test_environment_overrides","run_hook"],["handle_pretool","BashCommandAnalyzer.is_readonly_command"],["IntentAnalyzer.analyze_intent","BaseHookHandler.log_debug"],["GitChecker.has_uncommitted_changes","OptimizedSubprocess.run_cached"],["log_debug","TTLCache.get"],["OptimizedSubprocess.run_cached","CacheManager.set"],["log_debug","get"],["check_workflow_issues","BaseHookHandler.log_debug"],["TaskToolWrapper._prepare_agent_context","TaskToolWrapper._detect_git_operation"],["resolve_workspace_root","CacheManager.get"],["get_user_intent","get"],["OptimizedSubprocess.run_cached","TTLCache.set"],["run_predefined_test_scenarios","test_intent_analysis"],["TaskToolWrapper._prepare_agent_context","TaskToolWrapper._extract_file_path"],["check_workflow_status","check_git_status"],["main","TTLCache.get"],["handle_userprompt","resolve_workspace_root"],["HookLogger.debug","HookLogger._flush_buffer"],["BaseHookHandler.exit_block","BaseHookHandler.log_debug"],["main","log_debug"],["AgentOSContextChecker.generate_report","AgentOSContextChecker._generate_json_report"],["IntentAnalyzer.__init__","IntentAnalyzer._load_configuration"],["test_performance","TestHookFunctionality.run_hook"],["WorkspaceResolver.resolve","get"],["AgentOSContextChecker.__init__","_get_install_context"],["HookBenchmark.run_benchmarks","create_test_payloads"],["now_ts","stat_mtime"],["SpecChecker.has_active_spec","HookLogger.debug"],["WorkspaceResolver.resolve","WorkspaceResolver.resolve"],["TaskHandler.handle","_recommend_subagent"],["IntentAnalyzer.__init__","BaseHookHandler.log_debug"],["ContextAwareWorkflowHook._check_uncommitted_changes","ContextAwareWorkflowHook.run"],["main","analyze_intent"],["main","parse_env_file"],["SubagentDetector.__init__","SubagentDetector._compile_patterns"],["SubagentDetector.detect","SubagentDetector._generate_reason"],["main","test_intent_analysis"],["OptimizedSubprocess.run_cached","TTLCache.get"],["handle_posttool","get"],["AgentOSContextChecker._scan_context","_classify_file"],["TestHookFunctionality.test_posttool_documentation_check","run_hook"],["BashCommandAnalyzer.is_readonly_command","BashCommandAnalyzer.is_write_command"],["IntentAnalyzer._load_configuration","BaseHookHandler.log_debug"],["main","handle_posttool"],["UserPromptHandler.handle","_handle_proceed_attempt"],["IntentAnalyzer.__init__","IntentAnalyzer._get_default_new_work_patterns"],["handle_pretool","check_workflow_issues"],["GitChecker.has_open_prs","run_cached"],["print_header","print_separator"],["main","deploy"],["SubagentDeployer.deploy","SubagentDeployer._deploy_subagent_files"],["TestHookFunctionality.test_bash_readonly_commands_allowed","TestHookFunctionality.run_hook"],["BaseHookHandler.get_tool_name","CacheManager.get"],["BaseHookHandler.handle","PreToolHandler.handle"],["IntentAnalyzer.__init__","SubagentDetector._compile_patterns"],["PreToolHandler._handle_write_command","_enforce_workflow_requirements"],["TaskToolWrapper._execute_with_agent","execute"],["check_open_prs","BaseHookHandler.log_debug"],["ProjectRootResolver.resolve","_debug_log"],["main","ContextAwareWorkflowHook.run"],["test_integration","run_hook"],["has_active_spec","log_debug"],["ContextAwareWorkflowHook._check_uncommitted_changes","run"],["TestHookFunctionality.test_docs_operations_allowed","run_hook"],["TestHookFunctionality.test_work_session_bypasses_hygiene","run_hook"],["IntentAnalyzer.analyze_intent","_find_pattern_matches"],["TestHookFunctionality.test_userprompt_proceed_detection","run_hook"],["AgentOSContextChecker.validate_all_contexts","_scan_context"],["has_active_spec","OptimizedSubprocess.run_cached"],["handle_pretool","is_write_bash"],["BaseHookHandler.exit_allow","BaseHookHandler.log_debug"],["check_workflow_status","get"],["PreToolHandler.handle","PreToolHandler._handle_other_tools"],["HookLogger.debug","get"],["BaseHookHandler.log_debug","debug"],["IntentAnalyzer.analyze_intent","log_debug"],["BaseHookHandler.__init__","resolve"],["main","run_benchmarks"],["AgentOSContextChecker._generate_json_report","AgentOSContextChecker.detect_context_drift"],["ProjectRootResolver.clear_cache","ProjectRootResolver._debug_log"],["AgentOSContextChecker.validate_all_contexts","_validate_references"],["handle_task","TaskToolWrapper.execute"],["AgentOSContextChecker.generate_report","_generate_json_report"],["now_ts","is_fresh"],["handle_userprompt","get_user_intent"],["BaseHookHandler.check_workflow_status","BaseHookHandler.check_work_session"],["TestHookFunctionality.test_git_commands_always_allowed","TestHookFunctionality.run_hook"],["handle_pretool","run_cached"],["handle_pretool","BaseHookHandler.log_debug"],["handle_pretool","BashCommandAnalyzer.is_docs_only_command"],["TaskToolWrapper.execute","TaskToolWrapper._parse_context"],["IntentAnalyzer.__init__","log_debug"],["handle_pretool_task","TTLCache.get"],["handle_pretool","is_docs_only"],["handle_pretool_task","get"],["main","status"],["SpecChecker.has_active_spec","debug"],["handle_userprompt","BaseHookHandler.check_workflow_status"],["handle_userprompt","TTLCache.get"],["AgentOSContextChecker.__init__","AgentOSContextChecker._get_install_context"],["BaseHookHandler.check_work_session","CacheManager.get"],["SubagentDeployer.deploy","_ensure_directories"],["ContextAwareWorkflowHook.run","ContextAwareWorkflowHook.format_allow_message"],["IntentAnalyzer._load_configuration","log_debug"],["handle_userprompt","fast_intent_check"],["test_workspace_scenarios","print_header"],["handle_pretool","is_readonly_command"],["handle_pretool","CacheManager.get"],["SubagentDetector.detect","to_dict"],["handle_userprompt","log_debug"],["SubagentDeployer.deploy","SubagentDeployer._ensure_directories"],["ProjectRootResolver._resolve_by_ascent","ProjectRootResolver._debug_log"],["main","HookBenchmark.benchmark_hook"],["GitChecker.has_uncommitted_changes","HookLogger.debug"],["AgentOSContextChecker._scan_context","_find_references"],["ProjectRootResolver.resolve","_resolve_from_hook_payload"],["handle_pretool","is_docs_only_command"],["TaskToolWrapper._execute_with_agent","_execute_general_purpose"],["SubagentDetector.__init__","IntentAnalyzer._compile_patterns"],["PreToolHandler._handle_bash_command","check_docs_before_pr"],["IntentAnalyzer.analyze_intent","IntentAnalyzer._determine_intent"],["parse_env_file","read_text"],["main","test_maintenance_scenarios"],["ContextAwareWorkflowHook.get_workspace_state","_check_uncommitted_changes"],["IntentAnalyzer.get_intent","debug"],["HookBenchmark.run_benchmarks","benchmark_hook"],["check_open_prs","log_debug"],["BaseHookHandler.get_tool_input","TTLCache.get"],["handle_posttool","cached_subprocess"],["resolve_workspace_root","BaseHookHandler.log_debug"],["BaseHookHandler.get_tool_input","get"],["test_new_work_scenarios","TestHookFunctionality.run_hook"],["TaskToolWrapper.execute","to_dict"],["main","resolve"],["TaskToolWrapper.__init__","TaskToolWrapper._initialize_agents"],["check_open_prs","OptimizedSubprocess.run_cached"],["is_readonly_command","BashCommandAnalyzer.is_write_command"],["BaseHookHandler.handle","UserPromptHandler.handle"],["PreToolHandler._handle_bash_command","BashCommandAnalyzer.is_git_gh_command"],["TaskToolWrapper._prepare_agent_context","_detect_git_operation"],["PreToolHandler._handle_write_command","is_write_command"],["ContextAwareWorkflowHook.make_decision","ContextAwareWorkflowHook._prompt_for_clarification"],["BaseHookHandler.workspace_root","resolve"],["BaseHookHandler.exit_allow","log_debug"],["WorkspaceResolver.resolve","CacheManager.get"],["main","benchmark_hook"],["GitChecker.has_open_prs","debug"],["BaseHookHandler.check_workflow_status","GitChecker.has_uncommitted_changes"],["IntentAnalyzer.__init__","IntentAnalyzer._compile_patterns"],["SpecChecker.has_active_spec","run_cached"],["SubagentDeployer.deploy","_create_integration_hooks"],["main","handle_userprompt"],["AgentOSContextChecker._scan_context","AgentOSContextChecker._find_references"],["BaseHookHandler.check_workflow_status","has_open_prs"],["handle_posttool","CacheManager.get"],["main","HookBenchmark.run_benchmarks"],["AgentOSContextChecker.generate_report","AgentOSContextChecker._generate_text_report"],["handle_pretool","BashCommandAnalyzer.is_write_command"],["main","get"],["PreToolHandler.handle","PreToolHandler._handle_bash_command"],["IntentAnalyzer.__init__","IntentAnalyzer._get_default_maintenance_patterns"],["TestHookFunctionality.test_docs_operations_allowed","TestHookFunctionality.run_hook"],["main","WorkspaceResolver.resolve"],["handle_pretool","log_debug"],["WorkspaceResolver.resolve","ProjectRootResolver.resolve"],["UserPromptHandler.handle","UserPromptHandler._handle_proceed_attempt"],["TestHookFunctionality.test_maintenance_intent_allowed","TestHookFunctionality.run_hook"],["handle_pretool","OptimizedSubprocess.run_cached"],["IntentAnalyzer.get_intent","run_cached"],["AgentOSContextChecker._generate_text_report","AgentOSContextChecker.detect_context_drift"],["CacheManager.clear","clear"],["TestProjectRootResolver.test_permission_error_handling","side_effect"],["IntentAnalyzer._compile_patterns","BaseHookHandler.log_debug"],["check_workflow_status","BaseHookHandler.log_debug"],["test_maintenance_scenarios","run_hook"],["ProjectRootResolver._resolve_by_ascent","_debug_log"],["OptimizedSubprocess.run_cached","get"],["ContextAwareWorkflowHook.run","get_workspace_state"],["main","handle_pretool"],["ContextAwareWorkflowHook.run","format_allow_message"],["ContextAwareWorkflowHook.get_workspace_state","_check_open_prs"],["PreToolHandler._handle_other_tools","_enforce_workflow_requirements"],["ContextAwareWorkflowHook.make_decision","_prompt_for_clarification"],["BaseHookHandler.check_workflow_status","has_uncommitted_changes"],["IntentAnalyzer.get_intent","CacheManager.get"],["check_workflow_status","CacheManager.get"],["TaskToolWrapper._execute_with_agent","_prepare_agent_context"],["handle_pretool","is_readonly_bash"],["ProjectRootResolver.resolve","ProjectRootResolver._resolve_from_env"],["HookLogger.debug","CacheManager.get"],["check_workflow_issues","fast_pr_check"],["main","test_environment_overrides"],["AgentOSContextChecker._generate_json_report","detect_context_drift"],["TestContextAwareWorkflowHook.test_open_pr_detection","TestProjectRootResolver.side_effect"],["main","detect_pkg_manager_from_start"],["main","IntentAnalyzer.analyze_intent"],["resolve_workspace_root","TTLCache.get"],["TaskToolWrapper.__init__","_initialize_agents"],["ProjectRootResolver.resolve","ProjectRootResolver._resolve_from_hook_payload"],["SubagentDetector.detect","SubagentDetector._calculate_agent_scores"],["handle_pretool","has_active_spec"],["resolve_workspace_root","log_debug"],["ProjectRootResolver.resolve","_resolve_from_env"],["AgentOSContextChecker._validate_references","AgentOSContextChecker._resolve_reference"],["TestHookFunctionality.test_unknown_hook_type_fails","run_hook"],["handle_pretool","resolve_workspace_root"],["SubagentDetector.detect","_calculate_agent_scores"],["HookBenchmark.benchmark_hook","HookBenchmark.calculate_percentile"],["AgentOSContextChecker._scan_context","AgentOSContextChecker._classify_file"],["TestContextAwareWorkflowHook.test_open_pr_detection","side_effect"],["SubagentDetector.detect","DetectionResult.to_dict"],["SubagentDetector.detect","_generate_reason"],["check_workflow_issues","log_debug"],["WorkspaceResolver.resolve","debug"],["check_git_status","run_cached"],["main","uninstall"],["AgentOSContextChecker._validate_references","_resolve_reference"],["SpecChecker.has_active_spec","OptimizedSubprocess.run_cached"],["check_git_status","BaseHookHandler.log_debug"],["handle_pretool","fast_spec_check"],["run_predefined_test_scenarios","print_header"],["TestProjectRootResolver.test_permission_error_handling","TestContextAwareWorkflowHook.side_effect"],["fast_git_check","cached_subprocess"],["BaseHookHandler.exit_block","log_debug"],["main","OptimizedHookDispatcher.dispatch"],["find_references_in_file","find_references_in_file"],["now_ts","now_ts"],["IntentAnalyzer.get_intent","TTLCache.get"],["TaskHandler.handle","TaskHandler._needs_subagent"],["TestHookFunctionality.test_task_handler_subagent_enforcement","TestHookFunctionality.run_hook"],["BaseHookHandler.__init__","ProjectRootResolver.resolve"],["BaseHookHandler.check_workflow_status","check_work_session"],["test_environment_overrides","TestHookFunctionality.run_hook"],["TaskToolWrapper._prepare_agent_context","_detect_search_operation"],["BaseHookHandler.get_tool_name","TTLCache.get"],["TaskToolWrapper.execute","_parse_context"],["IntentAnalyzer._compile_patterns","log_debug"],["HookBenchmark.run_benchmarks","HookBenchmark.benchmark_hook"],["TaskToolWrapper.execute","TaskToolWrapper._execute_with_agent"],["BaseHookHandler.__init__","WorkspaceResolver.resolve"],["PreToolHandler._handle_bash_command","is_readonly_command"],["check_workflow_issues","fast_work_session_check"],["main","HookDispatcher.dispatch"],["IntentAnalyzer.__init__","_get_default_new_work_patterns"],["IntentAnalyzer.get_intent","OptimizedSubprocess.run_cached"],["handle_userprompt","get"],["get_user_intent","run_cached"],["handle_userprompt","check_workflow_status"],["main","print_header"],["get_user_intent","BaseHookHandler.log_debug"],["handle_posttool","resolve_workspace_root"],["ContextAwareWorkflowHook.get_workspace_state","ContextAwareWorkflowHook._check_uncommitted_changes"],["HookLogger.debug","_flush_buffer"],["AgentOSContextChecker.detect_context_drift","_scan_context"],["TestHookFunctionality.test_bash_readonly_commands_allowed","run_hook"],["PreToolHandler._handle_write_command","BashCommandAnalyzer.is_docs_only_command"],["GitChecker.has_open_prs","OptimizedSubprocess.run_cached"],["main","SubagentDeployer.deploy"],["log_debug","CacheManager.get"],["ProjectRootResolver.resolve","ProjectRootResolver._resolve_from_git"],["main","HookBenchmark.analyze_results"],["get_user_intent","CacheManager.get"],["TestHookFunctionality.test_posttool_documentation_check","TestHookFunctionality.run_hook"],["main","run_interactive_test_session"],["SubagentDeployer.deploy","_deploy_subagent_files"],["TestContextAwareWorkflowHook.test_open_pr_detection","TestContextAwareWorkflowHook.side_effect"],["handle_posttool","run_cached"],["handle_pretool","get_user_intent"],["SubagentDetector.__init__","_compile_patterns"],["fast_intent_check","cached_subprocess"],["main","CacheManager.get"],["handle_posttool","BaseHookHandler.log_debug"],["SubagentDeployer.deploy","_get_available_agents"],["test_manual_override_system","print_header"],["TaskToolWrapper._prepare_agent_context","TaskToolWrapper._detect_search_operation"],["ContextAwareWorkflowHook.run","make_decision"],["AgentOSContextChecker._generate_text_report","detect_context_drift"],["PreToolHandler._handle_write_command","is_docs_only_command"],["TaskHandler.handle","TaskHandler._recommend_subagent"],["BaseHookHandler.check_workflow_status","BaseHookHandler.log_debug"],["ContextAwareWorkflowHook.run","ContextAwareWorkflowHook.make_decision"],["PreToolHandler._handle_write_command","PreToolHandler._enforce_workflow_requirements"],["TestProjectRootResolver.test_permission_error_handling","TestProjectRootResolver.side_effect"],["BaseHookHandler.check_work_session","TTLCache.get"],["check_git_status","log_debug"]],"d":{".agent-os/product/decisions.md":["Product Decisions Log","2025-01-27: Initial Product Planning","Decision","Context","Alternatives Considered","Rationale","Consequences","2025-01-27: Distribution Strategy","Decision","Context"],".agent-os/product/mission.md":["Product Mission","Pitch","Users","Primary Customers","User Personas","The Problem","Inconsistent AI Coding Output","Lack of Development Standards for AI","No Framework for Spec-Driven AI Development","Differentiators"],".agent-os/product/roadmap.md":["Product Roadmap","Phase 0: Core Framework (\u2705 COMPLETE)","Phase 0.5: Critical Quality Issues (\u2705 SUBSTANTIAL PROGRESS)","Critical Issues to Fix","Must Complete Before Phase 1","Phase 1: Enhanced Reliability (4-6 weeks)","Must-Have Features","Should-Have Features","Dependencies","Phase 2: Team Collaboration (6-8 weeks)"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/spec.md":["Spec Requirements Document","Overview","User Stories","AI Workflow Abandonment Prevention","Automatic Documentation Commits","Contextual Workflow Injection","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/sub-specs/api-spec.md":["API Specification","Hook Interfaces","Stop Hook Interface","Success - workflow complete or no Agent OS work detected","Block - incomplete workflow detected ","PostToolUse Hook Interface","Success - changes committed","No action needed - not Agent OS documentation","Error - commit failed","Spec creation"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Claude Code Hooks Integration","Workflow State Detection","Automatic Documentation Management","Context Injection System","Approach Options","Implementation Architecture","File Structure","Hook Registration Configuration"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Mocking Requirements","Performance Tests","Error Scenario Tests","Test Implementation Strategy","Shell Script Testing Framework","Mock Implementation"],".agent-os/specs/2025-07-29-claude-code-hooks-#37/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-29-slash-command-refactor-#38/spec.md":["Spec Requirements Document","Overview","User Stories","Performance Improvement for AI Developers","Maintainable Command Architecture","Aligned Implementation Patterns","Spec Scope","Out of Scope","Expected Deliverable"],".agent-os/specs/2025-07-29-slash-command-refactor-#38/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Approach Options","External Dependencies","Architecture Design","Current Monolithic Structure","Target Modular Structure","Component Breakdown","Implementation Strategy","Phase 1: Bash Script Creation"],".agent-os/specs/2025-07-29-slash-command-refactor-#38/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements"],".agent-os/specs/2025-07-29-task-status-sync-#6/spec.md":["Spec Requirements Document","Overview","User Stories","Broken Trust Recovery","Seamless Workflow Integration ","Spec Scope","Out of Scope","Expected Deliverable","Critical Importance","Spec Documentation"],".agent-os/specs/2025-07-29-task-status-sync-#6/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Core Functionality","Integration Points","Performance Requirements","Approach Options","External Dependencies","Implementation Architecture","Task Detection System","Pattern matching for task references in commits"],".agent-os/specs/2025-07-29-task-status-sync-#6/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Test Implementation Strategy","Test-First Development","Continuous Validation","Performance Benchmarks"],".agent-os/specs/2025-07-29-task-status-sync-#6/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/spec.md":["Spec Requirements Document","Overview","User Stories","Debugging with Dirty Workspace","Clear Workflow Recovery","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Hook Intelligence Enhancement","Enhanced Error Messaging","Workflow Recovery System","Debug Mode Implementation","Approach Options","Implementation Details","1. Hook Command Classification","2. Enhanced Decision Logic"],".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Performance Tests","Regression Tests"],".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/spec.md":["Spec Requirements Document","Overview","User Stories","Smart Workspace Analysis","Security Protection","Professional Git Hygiene","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Core Workspace Analysis Engine","Smart Cleanup Actions Engine","Hook Integration Architecture","Approach Options","Implementation Strategy","Phase 1: Core Analysis Engine","Phase 2: Hook Integration","Phase 3: Advanced Features"],".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Performance Testing","Error Handling Tests","Mock Strategy","Development Environment Mocking"],".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-pr-code-review-docs-#7/spec.md":["Spec Requirements Document","Overview","User Stories","Trustworthy PR Creation","Code Review Efficiency","Spec Scope","Out of Scope","Expected Deliverable"],".agent-os/specs/2025-07-30-project-config-amnesia-#12/spec.md":["Spec Requirements Document","Overview","User Stories","Amnesia-Free Development Experience","Configuration Source Hierarchy","Persistent Session Memory","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-30-project-config-amnesia-#12/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Project Context Loading System","Session Memory Persistence","Hook Integration Enhancement ","Approach Options","External Dependencies","Implementation Architecture","Core Components","File Structure"],".agent-os/specs/2025-07-30-project-config-amnesia-#12/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Mocking Requirements","Test Data Setup","Sample Project Configurations","Configuration Test Cases","Performance Tests","Load Testing"],".agent-os/specs/2025-07-30-project-config-amnesia-#12/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-testing-enforcement-#9/spec.md":["Spec Requirements Document","Overview","User Stories","No More Broken \"Complete\" Features","Test-Driven Completion Process","Testing Quality Assurance","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-07-30-testing-enforcement-#9/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Approach Options","External Dependencies","Implementation Architecture","Core Components","Pattern Design","Integration Points"],".agent-os/specs/2025-07-30-testing-enforcement-#9/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","End-to-End Tests","Mocking Requirements","Test Execution Strategy","Success Criteria"],".agent-os/specs/2025-07-30-testing-enforcement-#9/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-07-30-verification-proof-summaries-#8/spec.md":["Spec Requirements Document","Overview","User Stories","Evidence-Based Completion Claims","Trust Restoration in AI Assistance","Spec Scope","Out of Scope","Expected Deliverable"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/spec.md":["Spec Requirements Document","Overview","User Stories","Maintenance Work Freedom","New Work Discipline","Edge Case Handling","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Approach Options","Implementation Architecture","Intent Analysis Engine","Hook Enhancement System","Configuration System","~/.agent-os/config/workflow-enforcement.yaml","External Dependencies","File Structure Changes"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Test Data Sets","Message Classification Test Cases","Workspace State Test Cases","Performance Testing"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/tasks-revised.md":["Spec Tasks (Revised After Expert Analysis)","Critical Issues Identified","Revised Task Plan","Phase 0: Critical Bug Fixes (MUST COMPLETE FIRST)","Phase 1: Completed Work","Phase 2: Safe Integration (After Critical Fixes)","Phase 3: Production Readiness","Success Criteria","Before Integration","After Integration"],".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-14-subagents-system-integration-#25/spec.md":["Spec Requirements Document","Overview","User Stories","Seamless Agent Enhancement","Backward Compatibility Preservation","Enhanced Performance Experience","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-14-subagents-system-integration-#25/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Core Subagent Integration","Architecture Requirements","Integration Points","Approach Options","External Dependencies","New Dependencies","Integration Dependencies","Implementation Architecture"],".agent-os/specs/2025-08-14-subagents-system-integration-#25/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements","Error Handling Tests","Performance Benchmarks"],".agent-os/specs/2025-08-14-subagents-system-integration-#25/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-18-aos-installer-improvements-#65/spec.md":["Spec Requirements Document","Overview","User Stories","Fix Hook Update Detection","Enhanced Init Command","Clear Update Feedback","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-18-aos-installer-improvements-#65/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Hook Update Detection Enhancement","Smart Update Function Improvements ","Init Command Enhancement","Update Feedback System","Hook Update Mechanism","Approach Options","External Dependencies","Implementation Details"],".agent-os/specs/2025-08-18-aos-installer-improvements-#65/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","End-to-End Tests","Mocking Requirements","Performance Tests","Error Handling Tests"],".agent-os/specs/2025-08-18-aos-installer-improvements-#65/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/research-report.md":["Claude Code Hooks Research Report","Executive Summary","1. Claude Code Hooks Overview","Official Documentation Findings","2. Current Agent OS Implementation Analysis","Implementation Overview","Identified Strengths","Critical Issues Discovered"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/spec.md":["Spec Requirements Document","Overview","User Stories","Hook Implementation Research","Performance and Reliability Enhancement","Simplified Installation and Documentation","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Documentation Research Requirements","Performance and Reliability Requirements","Documentation Requirements","Installation Process Requirements","Approach Options","External Dependencies","Implementation Strategy","Phase 1: Research and Analysis"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","End-to-End Scenarios","Mocking Requirements","Test Data Requirements","Success Criteria"],".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-18-project-root-resolver-#58/spec.md":["Spec Requirements Document","Overview","User Stories","Reliable Hook Operation from Subdirectories","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-18-project-root-resolver-#58/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Core Project Root Resolver Module","Resolution Order Implementation","Integration Points","Approach","External Dependencies","Implementation Details","API Design","CLI Interface"],".agent-os/specs/2025-08-18-project-root-resolver-#58/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","End-to-End Tests","Mocking Requirements"],".agent-os/specs/2025-08-18-project-root-resolver-#58/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-18-update-documentation-command-#40/spec.md":["Spec Requirements Document","Overview","User Stories","Documentation Health Check","Deep Documentation Audit","Spec Scope","Out of Scope","Expected Deliverable"],".agent-os/specs/2025-08-18-update-documentation-command-#40/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Command Interface","Normal Mode Functionality","Deep Mode Functionality ","Evidence-Based Operation","Approach Options","External Dependencies"],".agent-os/specs/2025-08-18-update-documentation-command-#40/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Mocking Requirements"],".agent-os/specs/2025-08-18-update-documentation-command-#40/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-24-transparent-work-sessions-#75/spec.md":["Spec Requirements Document","Overview","User Stories","Transparent Batching During Execute Tasks","Helpful Workflow Guidance","Spec Scope","Out of Scope","Expected Deliverable","Spec Documentation"],".agent-os/specs/2025-08-24-transparent-work-sessions-#75/sub-specs/technical-spec.md":["Technical Specification","Technical Requirements","Auto-start Detection System","Session State Management ","Commit Boundary Logic","Integration Points","Approach Options","External Dependencies"],".agent-os/specs/2025-08-24-transparent-work-sessions-#75/sub-specs/tests.md":["Tests Specification","Test Coverage","Unit Tests","Integration Tests","Feature Tests","Mocking Requirements"],".agent-os/specs/2025-08-24-transparent-work-sessions-#75/tasks.md":["Spec Tasks","Tasks"],".agent-os/specs/2025-08-25-installation-test-suite-#76/spec.md":["Spec Requirements Document","Overview","User Stories","As a new Agent OS user","As an Agent OS maintainer ","As a power user","Spec Scope","Installation Completeness Testing","Source vs Install vs Project Context Clarity","Pre-Release Validation Pipeline"],".agent-os/specs/2025-08-25-installation-test-suite-#76/tasks.md":["Spec Tasks","Tasks","Task 1: Installation Completeness Tests (BATS Framework)","Task 2: Context Clarity Validation System","Task 3: Pre-Release Validation Pipeline","Task 4: Architecture Documentation System","Task 5: Automated Auditing Tools"],".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/spec.md":["Spec Requirements Document","Overview","User Stories","Spec Scope","In Scope","Out of Scope","Success Criteria","Non-Goals","Assumptions","Dependencies"],".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/sub-specs/technical-spec.md":["Technical Specification","Problem Analysis","Root Cause","Current Exit Code Semantics","Current Command Flow","Technical Approach Options","Option 1: Exit Code Wrapper Script (Recommended)","Option 2: Command Configuration Modification","Option 3: Core Script Modification","Recommended Solution: Exit Code Wrapper"],".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/sub-specs/tests.md":["Tests Specification","Test Coverage Overview","Core Functionality Tests","Wrapper Script Unit Tests","Test Category: Exit Code Handling","Test Framework: Bash Test Framework (bats)","Test: Success case (exit 0) - Documentation up-to-date","Test: Semantic success case (exit 2) - Updates needed","Test: True error case (exit 1) - Script failure","Test: Unexpected error case (exit 3+) - Unknown failure"],".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/tasks.md":["Spec Tasks","Tasks","Phase 1: Wrapper Script Development (TDD)","Phase 2: Integration Testing (TDD) \u2705 COMPLETE","Phase 3: Installation and Deployment \u2705 COMPLETE","Phase 4: Documentation and Polish \u2705 COMPLETE","Success Criteria Verification \u2705 COMPLETE","Risk Mitigation Tasks \u2705 COMPLETE","Definition of Done \u2705 ALL CRITERIA MET"],".github/pull_request_template.md":["Evidence/Test Results/Verification","Documentation Updates","Code Review Notes"],"AGENT-OS_ARCHITECTURE_ANALYSIS.md":["Agent OS Fork Architecture Analysis","Current Implementation Overview","File Structure Comparison","Our Fork Structure"],"AGENT-OS_INSTRUCTION_COMPARISON.md":["Plan","Instruction File Comparison Analysis","Repository Information","File Summary Table","Detailed Comparison (by File)","analyze-product.md","create-spec.md","execute-tasks.md"],"BUILDER_METHODS_ARCHITECTURE.md":["Builder Methods Agent OS Architecture Diagram","System Overview","File Structure and Installation Flow","Detailed Component Breakdown","1. Command Files (`~/.claude/commands/`)","2. Instruction Files (`~/.agent-os/instructions/core/`)","3. Specialized Agents (`~/.claude/agents/`)","4. Agent Definition Format","Core Responsibilities","Workflow"],"BUILDER_METHODS_ARCHITECTURE_GPT5_ANALYSIS.md":["BUILDER_METHODS_ARCHITECTURE_GPT5_ANALYSIS.md","Checklist","Repository Overview","Architecture and Design","Code Quality and Modularity","Core Functionality and Design Decisions"],"CHANGELOG.md":["Changelog","[Unreleased]","Added","Changed","[4.0.0] - 2025-08-17","Added","Changed","Notes","[2.4.0] - 2025-08-15","Changed"],"CLAUDE.md":["CLAUDE.md","Project Context","Agent OS Documentation (Self-Usage)","CRITICAL: Development Workflow","Repository Structure","NEVER EDIT","REQUIRED WORKFLOW","Build and Test Commands","Installation and Setup","Health Check"],"EXECUTE-TASKS_COMPARISON.md":["Execute-Tasks Instruction Comparison","Overview Comparison","Architectural Differences","Builder Methods Approach:","Our Fork Approach:","Phase 1: Hygiene and Setup","Step-by-Step Comparison","Builder Methods Steps (10 steps):","Our Fork Phases (4 phases, multiple steps):","Key Philosophical Differences"],"IMPLEMENTATION-PLAN.md":["Modular Hooks Implementation Plan","Phase 1: Core Refactoring (Day 1-2)","Phase 2: Performance Optimization (Day 3-4)","Phase 3: Testing & Validation (Day 5)","Phase 4: Deployment (Day 6)","Success Criteria"],"README.md":["Your system for spec-driven agentic development.","About This Fork","Quick Start","Installation","Installs to ~/.agent-os/ (your home directory)","Navigate to your project directory","Initialize Agent OS for this project","Choose your AI assistant:","- Claude Code","- Cursor "],"claude-code/agents/context-fetcher.md":["Core Responsibilities","Automatic Delegation Triggers","Supported File Types","Workflow","Output Format","Smart Extraction Examples","Important Constraints"],"claude-code/agents/date-checker.md":["Core Responsibilities","Automatic Delegation Triggers","Workflow","Date Determination Process","Primary Method: File System Timestamp","Create directory if not exists","Create temporary file","Read file with ls -la to see timestamp","Extract date from the timestamp","Parse the date to YYYY-MM-DD format"],"claude-code/agents/file-creator.md":["Core Responsibilities","Automatic Delegation Triggers","Agent OS File Templates","Spec Files","Spec Requirements Document","Overview","User Stories","Spec Scope","Out of Scope","Expected Deliverable"],"claude-code/agents/git-workflow.md":["Core Responsibilities","Automatic Delegation Triggers","Agent OS Git Conventions","Branch Naming","Commit Messages","PR Descriptions","Workflow Patterns","Standard Feature Workflow","Branch Decision Logic","Example Requests"],"claude-code/agents/test-runner.md":["Core Responsibilities","Automatic Delegation Triggers","Workflow","Output Format","Test Framework Detection","Web Projects","Backend Projects","Full Stack Projects","Failure Analysis Focus","Common Test Failures"],"commands/analyze-product.md":["Analyze Product"],"commands/create-spec.md":["Create Spec"],"commands/execute-tasks.md":["Execute Task"],"commands/hygiene-check.md":["Hygiene Check"],"commands/plan-product.md":["Plan Product"],"commands/update-documentation.md":["Context","Task","Documentation Health Report","Available Modes","Notes"],"commands/work-session.md":["Work Session Management","Usage","Commands","Environment","Example Workflow","Start focused work session","Make multiple changes without commit spam","Edit auth service","Update tests ","Fix configuration"],"docs/ARCHITECTURE.md":["Agent OS Architecture","Critical Distinction: Three Agent OS Contexts","1. Agent OS REPO (Source Code)","2. Agent OS SYSTEM (Installed Files)","3. Agent OS PROJECT (Live Usage)","Critical Rules","Never Confuse Contexts","Installation Flow","Update Flow","Common Mistakes to Avoid"],"docs/AUDIT_PROMPT.md":["Agent OS System Audit and Cleanup Prompt","Context","Critical Issues to Address","Audit Tasks","Phase 1: Complete System Inventory","1. Find all aos-related files","2. Check all version files","3. Check shell configuration","4. Identify all aos commands/functions","5. Check what's on GitHub"],"docs/AUDIT_RESULTS.md":["Agent OS System Audit Results","1) Current State Inventory","Agent OS Quick Init Alias","Agent OS Quick Init Alias","2) Execution Flow Diagram (Actual Behavior)","3) Problem Analysis"],"docs/BACKGROUND_TASKS_SPEC.md":["Agent OS Background Tasks Specification","Overview","Claude-First Integration (Issue #19)","Philosophy","Hook-Based Observation","Data Storage","Project-scoped (preferred)","Global fallback","Format (JSON lines)","Dashboard Commands"],"docs/BUILDER_METHODS_EVALUATION.md":["Builder Methods Agent OS Evaluation & Integration Plan","Executive Summary","Current State Comparison","Our Fork's Unique Advantages (v2.2.0)","Builder Methods' Valuable Features (v1.3.1)","Integration Requirements","Non-Negotiable Requirements","Technical Integration Points"],"docs/CLAUDE_CODE_BEST_PRACTICES.md":["Getting Claude to Behave Like a Senior Developer","*Updated with More Examples of Persistent Misbehavior*","The Problem Pattern","Common Misbehaviors","Real Examples of Claude Misbehaving","Why This Happens","The Critical Lesson from Example 3","Effective Strategies to Fix This","1. The Evidence-First Mandate","2. The Verification Script Requirement"],"docs/CLEANUP_TECH_DEBT.md":["Agent OS Technical Debt Cleanup","Problem: Multiple Versioned Files","Issues Identified","Best Practices Violated","Recommended Solution","Immediate Actions","Migration Strategy","Why This Matters","Alternative: If Versions Are Needed","Conclusion"],"docs/COMMAND-DISTINCTION.md":["Command Distinction: execute-tasks vs execute-task","Overview","execute-tasks (Orchestrator) - `/execute-tasks`","What it does:","When to use:","Delegation:","execute-task (Individual Task Worker) - Internal Use Only","What it does:","When it's used:","Subagent Enforcement:"],"docs/CONTEXT-TROUBLESHOOTING.md":["Agent OS Context Troubleshooting Guide","Overview","Three-Context Architecture Quick Reference","Common Issues and Solutions","1. \"Install context directory not found\" Error","If directory doesn't exist or is empty","Run Agent OS setup from repository","Or run setup with overwrite to fix corrupted installation","2. \"Source file missing\" Errors","Run context validator from repository root"],"docs/EXIT_CODE_WRAPPER_PATTERN.md":["Exit Code Wrapper Pattern","Overview","Implementation Pattern","1. Wrapper Script Structure","[Script Name] Wrapper Script","Translates exit codes to provide user-friendly messaging for Claude Code","Get the directory where this wrapper script is located","Path to the original script","Verify the original script exists","Create temporary files to capture output and exit code"],"docs/IMPORTANT-NO-AOS-BACKGROUND.md":["IMPORTANT: aos-background Does Not Exist","Critical Information for AI Agents and Developers","History","Current Architecture","DO NOT:","DO:","Architectural Philosophy","If You See References to aos-background","Background Task Commands That Were Removed","Alternative Approach"],"docs/KNOWN_ISSUES.md":["Known Issues and Solutions","Hooks: Working Hybrid Solution","Claude Code Shell Function Caching","Problem","Symptoms","Solution for Users","Use the tool directly instead of the alias","Example:","Add this to your ~/.zshrc AFTER the Agent OS alias line","Root Cause"],"docs/PRODUCT_DOCS_TRACKING.md":["Agent OS Product Documentation Tracking","Problem","Solution","Recommended .gitignore Configuration","\u274c Don't do this:","\u2705 Do this instead:","Ignore temporary Agent OS files","But track product documentation","Optionally track active specs","!.agent-os/specs/"],"docs/RELEASE_PROCESS.md":["Agent OS Release Process","Overview","Version Numbering","Release Workflow","1. Prepare Release","1. Ensure main branch is clean","2. Update VERSION file","3. Update CHANGELOG.md","Add new version section with all changes","4. Commit version bump"],"docs/SUBAGENT_IMPLEMENTATION_SPEC.md":["Subagent System Implementation Specification (Revised)","Executive Summary","Core Design Principles","1. Safe by Default","2. Measurable Impact","3. Controlled Rollout","Feature Flag Configuration","Environment variable control","Modes explained:","- off: Disable all subagent functionality"],"docs/UPDATE_GUIDE.md":["Agent OS Update Guide","Overview","Update Categories","1. Global Updates (Computer-wide)","Option 1: Full update (recommended)","Option 2: Update specific components","Update hooks only","Update a specific instruction file","2. Project-Specific Files (No Updates Needed)","Update Detection"],"docs/VERIFICATION_STANDARDS.md":["Agent OS Verification Standards","Core Principle: Trust But Verify","Verification Checklist for Every Change","1. File Changes","2. Shell Scripts","3. Configuration Changes","4. Installation/Setup Scripts","5. CLI Tools","6. Git Operations","7. Documentation"],"hooks-stable/subagent-info.md":["Subagent Integration Status","Current Issue","What's Working","What's NOT Working","The Reality","Workaround Options","Option 1: Manual Subagent Selection","Option 2: Wait for Claude Code API Updates","Option 3: Create Wrapper Commands","Conclusion"],"hooks/MODULAR-ARCHITECTURE.md":["Modular Hooks Architecture v2.0","Overview","Success Criteria Achievement","Architecture Overview","Performance Optimizations","Modular Components","Key Features","Fast-Path Optimizations","Smart Intent Analysis","Caching Strategy"],"hooks/README-context-aware-hook.md":["Context-Aware Hook Wrapper","Overview","Key Features","Usage","Basic Usage","Via Claude Code hooks (recommended)","Manual Override","Force maintenance behavior (allows work regardless of workspace state)","Force new work behavior (requires clean workspace)","Debug Mode"],"hooks/README-intent-analyzer.md":["Intent Analysis Engine","Features","Usage","Command Line","Test a message","Output: Intent Type: maintenance, Confidence: 0.62","Enable debug logging","Python API","Configuration","Default Patterns"],"hooks/README.md":["Agent OS Claude Code Hooks","Overview","Architecture","Hook Details","Stop Hook (`stop-hook.sh`)","Post Tool Use Hook (`post-tool-use-hook.sh`)","User Prompt Submit Hook (`user-prompt-submit-hook.sh`)","Pre-Bash Hook (`pre-bash-hook.sh`)","Post-Bash Hook (`post-bash-hook.sh`)"],"hooks/instructions/Get_started_with_Claude_Code_hooks.md":["Get started with Claude Code hooks","Hook Events Overview","Quickstart","Prerequisites","Step 1: Open hooks configuration","Step 2: Add a matcher","Step 3: Add the hook","Step 4: Save your configuration","Step 5: Verify your hook","Step 6: Test your hook"],"hooks/instructions/Hooks_reference.md":["Hooks reference","Structure","Project-Specific Hook Scripts","Hook Events","PreToolUse","PostToolUse","Notification","Stop","PreCompact","SessionStart"],"hooks/instructions/Subagents - Anthropic.md":["Subagents - Anthropic","Key benefits","Quick start","File locations","File format","Using the /agents command (Recommended)","Direct file management","Automatic delegation","Explicit invocation","Code reviewer"],"instructions/core/analyze-product.md":["Pre-Flight","Analyze Current Product & Install Agent OS","Overview","Step 0: Mandatory Execution Acknowledgment","Step 1: Analyze Existing Codebase","Step 2: Organizational Standards Comparison"],"instructions/core/create-spec.md":["Pre-Flight","Spec Creation Rules","Overview","Step 0: Workspace Hygiene Check","Step 1: Spec Initiation","Step 2: Context Gathering"],"instructions/core/execute-task.md":["Task Execution Rules (Single Task)","Step 1: Task Understanding","Step 2: Technical Specification Review","Step 3: Best Practices Review","Step 4: Code Style Review","Step 5: Implement via TDD","Step 6: Task-Specific Test Verification","Step 7: Task Status Updates","Step 8: Documentation Sync (Read-only by default)"],"instructions/core/execute-tasks.md":["Pre-Flight","Phase 0: Repository Discovery Gate (BLOCKING)","Phase 0.5: Transparent Work Session Detection (AUTO-START)","Task Execution Rules","Overview","Dynamic Workflow Execution","Phase 1: Hygiene and Setup (runs only after Phase 0 discovery complete)","Phase 1.5: Deep Reality Check (Dev/Test/Prod)"],"instructions/core/hygiene-check.md":["Workspace Hygiene Check Instructions","Overview","Hygiene Check Process","Step 1: Git Repository Assessment","Step 6: Documentation Drift (Non-blocking)","Step 2: GitHub Issues & PRs Assessment","Step 3: Agent OS Specs Assessment"],"instructions/core/plan-product.md":["Pre-Flight","Product Planning Rules","Overview","Step 1: Gather User Input","Step 2: Create Documentation Structure","Step 3: Create mission.md"],"instructions/meta/pre-flight.md":["Pre-Flight Rules"],"integrations/README.md":["Agent OS Subagent Integration","Philosophy: Security Opt-In, Quality Automatic","How It Works","Key Benefits","Quick Start","1. Prerequisites","2. Install Integration","3. Try Enhanced Workflows","Same workflow, automatic quality enhancements","\u2192 Automatically uses: prd-writer, systems-architect, qa-test-engineer"],"integrations/workflow-enhancements/create-spec-enhanced.md":["Enhanced Spec Creation with Subagents","Overview","Subagent Integration Points","Available Enhancement Agents","Enhanced Workflow Process","Step 0: Subagent Detection and Planning","Step 2.5: Professional Requirements Enhancement"],"integrations/workflow-enhancements/create-spec-opt-in-example.md":["Example: Opt-In Enhancement Integration","Step 2.5: Optional Enhancement Detection and Suggestions","Step 2.5: Optional Enhancement Suggestions","Key Principles Demonstrated"],"integrations/workflow-enhancements/execute-tasks-enhanced.md":["Enhanced Task Execution with Subagents","Overview","Subagent Integration Architecture","Quality Pipeline Agents","Enhanced Workflow Process","Step 0: Quality Pipeline Initialization","Step 3.5: Architectural Implementation Planning"],"integrations/workflow-enhancements/plan-product-enhanced.md":["Enhanced Product Planning with Subagents","Overview","Subagent Integration Architecture","Professional Planning Agents","Enhanced Workflow Process","Step 0: Planning Enhancement Initialization","Step 2.5: Market Research and Competitive Analysis"],"standards/best-practices.md":["Development Best Practices","Context","Core Principles","Keep It Simple","Optimize for Readability","DRY (Don't Repeat Yourself)","GitHub Issue & PR Workflow (Required)","Task Status Management (Critical)","Dependencies","Choose Libraries Wisely"],"standards/code-style.md":["Code Style Guide","Context","General Formatting","Indentation","Python Style","Naming Conventions","Type Hints","String Formatting","Modern Python Patterns","JavaScript/TypeScript Style"],"standards/tech-stack.md":["Tech Stack","Context","Web Development Stack","Common Infrastructure","Version Control","CI/CD","Monitoring","AI/ML Services","Development Environment","Port Configuration"],"startup_checklist.md":["Agent OS Startup Checklist","\u2705 I. Base Installation of Agent OS","1. Install Agent OS Base","2. Customize Your Standards \ud83c\udfaf","\u2705 II. Tool-Specific Setup","For Claude Code","For Cursor","\u2705 III. Initialize Agent OS in Existing Codebase","1. Analyze Your Current Project","2. Review Generated Documents"],"tmp/discrepancy_report.md":["Agent OS Internal Discrepancy Report","Executive Summary","Working (Installed) vs Broken (Repo)","Critical Shell Scripts","Missing Critical Files (Not Installed)","Python Scripts","Documentation Cleanup Needed","Outdated Files to DELETE","Files to UPDATE","Consolidation Opportunities"],"tools/README.md":["Agent OS Tools","Quick Init Alias (`aos`)","Features","Installation","or","Usage","Examples","Detects project type and sets up appropriate AI assistant integration","Choose to preserve customizations or do a full update","Shows installation status, project detection, and available updates"],"workflow-modules/step-1-hygiene-and-setup.md":["Step 1: Hygiene and Setup","Workspace Hygiene Check (Step 0)","GitHub Issue Verification (Step 1)","Project Memory Refresh (Step 1.2) - BLOCKING","Codebase Reality Check (Step 1.5)","Next Steps"],"workflow-modules/step-2-planning-and-execution.md":["Step 2: Planning and Execution ","Task Assignment (Step 2)","Context Analysis (Step 2)","Implementation Planning (Step 3)","Implementation Plan for [TASK_NAME]","Development Server Check (Step 4)","Git Branch Management (Step 5)","Development Execution (Step 6)","Next Steps"],"workflow-modules/step-3-quality-assurance.md":["Step 3: Quality Assurance","Task Status Updates (Step 7)","Quality Assurance Verification (Step 8)","Mandatory Functionality Validation (Step 8.5)","Next Steps"],"workflow-modules/step-4-git-integration.md":["Step 4: Git Integration and Completion","Documentation Check (Step 8.5)","Git Workflow (Step 9)","Summary","Changes Made","Testing ","Documentation Updates","Issue Status","Roadmap Progress Check (Step 10)","Completion Notification (Step 11)"],"workflow-modules/testing-checklists.md":["Testing Checklists for Agent OS Workflows","Frontend Work Testing Checklist","Browser Testing Requirements","User Interaction Testing","Responsive Design Testing","Automated Testing","Evidence Documentation","Backend Work Testing Checklist","API Testing Requirements","Database Testing"]},"deps":{"hooks-stable/context_aware_hook.py":["os","sys","json","logging","subprocess","dataclasses","typing","pathlib","intent_analyzer","argparse"],"hooks-stable/deploy_subagents.py":["os","sys","json","shutil","logging","pathlib","typing","sys","os","task_tool_wrapper","sys","subagent_detector","subagent_detector","subagent_detector","argparse"],"hooks-stable/intent_analyzer.py":["intent_analyzer","os","re","time","dataclasses","enum","typing","yaml","datetime","argparse"],"hooks-stable/subagent_detector.py":["re","time","logging","typing","dataclasses"],"hooks-stable/task-tool-hook.py":["json","sys","os","pathlib","subagent_detector","task_tool_wrapper"],"hooks-stable/task_tool_wrapper.py":["os","sys","json","logging","typing","dataclasses","subagent_detector","subagents","re","re"],"hooks-stable/workflow-enforcement-hook-v2-backup.py":["json","os","re","subprocess","sys","datetime"],"hooks-stable/workflow-enforcement-hook.py":["json","os","re","subprocess","sys","datetime","re"],"hooks/bash_command_validator_example.py":["json","re","sys"],"hooks/context_aware_hook.py":["os","sys","json","logging","subprocess","dataclasses","typing","pathlib","intent_analyzer","argparse"],"hooks/integration_test.py":["json","os","subprocess","sys","tempfile","time","pathlib"],"hooks/intent_analyzer.py":["intent_analyzer","os","re","time","dataclasses","enum","typing","yaml","datetime","argparse"],"hooks/modules/hook_core.py":["json","os","subprocess","sys","datetime","typing","pathlib","scripts.project_root_resolver"],"hooks/modules/hook_core_optimized.py":["json","os","subprocess","sys","threading","time","datetime","typing","pathlib","concurrent.futures","scripts.project_root_resolver"],"hooks/modules/posttool_handler.py":["os","subprocess","sys"],"hooks/modules/posttool_handler_optimized.py":["os","subprocess","sys"],"hooks/modules/pretool_handler.py":["os","re","subprocess","sys","typing"],"hooks/modules/pretool_handler_optimized.py":["os","re","subprocess","sys","typing"],"hooks/modules/task_handler.py":["sys"],"hooks/modules/task_handler_optimized.py":["sys"],"hooks/modules/userprompt_handler.py":["json","re","sys"],"hooks/modules/userprompt_handler_optimized.py":["json","re","sys"],"hooks/pretool/workspace_hygiene.py":["sys","json","shared.git_utils"],"hooks/shared/cache_manager.py":["time","typing"],"hooks/shared/git_utils.py":["subprocess","asyncio","typing"],"hooks/test_context_aware_hook.py":["unittest","unittest.mock","os","sys","json","pathlib","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","context_aware_hook","time"],"hooks/test_context_aware_system.py":["argparse","os","sys","time","typing","intent_analyzer","manual_override_system","user_experience_system"],"hooks/test_integration_context_aware.py":["json","os","sys","subprocess","pathlib","time"],"hooks/test_intent_analyzer.py":["os","tempfile","unittest","unittest.mock","yaml","intent_analyzer","time"],"hooks/tests/modular/benchmark_final.py":["json","subprocess","time","statistics","pathlib"],"hooks/tests/modular/benchmark_optimized.py":["json","subprocess","time","statistics","pathlib"],"hooks/tests/modular/benchmark_performance.py":["json","os","subprocess","sys","time","statistics","pathlib"],"hooks/tests/modular/benchmark_test.py":["json","subprocess","time","statistics","pathlib"],"hooks/tests/modular/test_final_hook.py":["json","os","subprocess","sys","tempfile","unittest","unittest.mock","pathlib","time"],"hooks/tests/modular/test_hook_core.py":["os","sys","tempfile","unittest","unittest.mock","hook_core"],"hooks/tests/modular/test_pretool_handler.py":["os","sys","unittest","unittest.mock","pretool_handler"],"hooks/tests/test_workspace_hygiene.py":["unittest","json","sys","os","pretool.workspace_hygiene"],"hooks/workflow-enforcement-hook-final.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-modular.py":["json","sys","os","typing","modules"],"hooks/workflow-enforcement-hook-optimized-v3.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-optimized.py":["json","os","re","subprocess","sys","threading","time","datetime","pathlib","concurrent.futures","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-pre-optimization.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-v2-final.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"hooks/workflow-enforcement-hook-v2.py":["json","sys","os","hook_core_optimized","pretool_handler","posttool_handler","userprompt_handler","task_handler"],"hooks/workflow-enforcement-hook.py":["json","os","re","subprocess","sys","time","datetime","pathlib","typing","scripts.project_root_resolver"],"scripts/config-resolver.py":["json","os","re","pathlib"],"scripts/project_root_resolver.py":["scripts.project_root_resolver","os","sys","json","argparse","subprocess","pathlib","typing"],"tests/test_project_root_resolver.py":["os","sys","tempfile","unittest","pathlib","unittest.mock","shutil","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","scripts.project_root_resolver","shutil","scripts.project_root_resolver","io","sys","scripts.project_root_resolver","sys","io","sys","scripts.project_root_resolver","sys","io","sys","scripts.project_root_resolver","io","sys"],"tools/check-file-contexts.py":["os","sys","json","re","pathlib","typing","dataclasses","enum","argparse"],"validate_subagents.py":["sys","os","pathlib","subagents","subagents","subagent_detector","task_tool_wrapper"]},"dir_purposes":{".agent-os/specs/2025-07-29-claude-code-hooks-#37":"Test files and test utilities",".agent-os/specs/2025-07-29-claude-code-hooks-#37/sub-specs":"Test specifications",".agent-os/specs/2025-07-29-slash-command-refactor-#38":"Test files and test utilities",".agent-os/specs/2025-07-29-slash-command-refactor-#38/sub-specs":"Test specifications",".agent-os/specs/2025-07-29-task-status-sync-#6":"Test files and test utilities",".agent-os/specs/2025-07-29-task-status-sync-#6/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10":"Test files and test utilities",".agent-os/specs/2025-07-30-hook-deadlock-resolution-#10/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11":"Test files and test utilities",".agent-os/specs/2025-07-30-intelligent-workspace-cleanup-#11/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-pr-code-review-docs-#7":"Project documentation",".agent-os/specs/2025-07-30-project-config-amnesia-#12":"Configuration files and settings",".agent-os/specs/2025-07-30-project-config-amnesia-#12/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-testing-enforcement-#9":"Test files and test utilities",".agent-os/specs/2025-07-30-testing-enforcement-#9/sub-specs":"Test specifications",".agent-os/specs/2025-07-30-verification-proof-summaries-#8":"Test files and test utilities",".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22":"Test files and test utilities",".agent-os/specs/2025-08-11-context-aware-workflow-enforcement-#22/sub-specs":"Test specifications",".agent-os/specs/2025-08-14-subagents-system-integration-#25":"Test files and test utilities",".agent-os/specs/2025-08-14-subagents-system-integration-#25/sub-specs":"Test specifications",".agent-os/specs/2025-08-18-aos-installer-improvements-#65":"Test files and test utilities",".agent-os/specs/2025-08-18-aos-installer-improvements-#65/sub-specs":"Test specifications",".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62":"Test files and test utilities",".agent-os/specs/2025-08-18-claude-code-hooks-improvement-#62/sub-specs":"Test specifications",".agent-os/specs/2025-08-18-project-root-resolver-#58":"Test files and test utilities",".agent-os/specs/2025-08-18-project-root-resolver-#58/sub-specs":"Test specifications",".agent-os/specs/2025-08-18-update-documentation-command-#40":"Test files and test utilities",".agent-os/specs/2025-08-18-update-documentation-command-#40/sub-specs":"Test specifications",".agent-os/specs/2025-08-24-transparent-work-sessions-#75":"Test files and test utilities",".agent-os/specs/2025-08-24-transparent-work-sessions-#75/sub-specs":"Test specifications",".agent-os/specs/2025-08-25-installation-test-suite-#76":"Test files and test utilities",".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80":"Test files and test utilities",".agent-os/specs/2025-08-27-fix-update-documentation-command-error-#80/sub-specs":"Test specifications","claude-code/agents":"Test files and test utilities","commands":"Test files and test utilities","docs":"Project documentation","hooks":"Test files and test utilities","hooks/tests":"Test files and test utilities","hooks/tests/modular":"Test files and test utilities","instructions/core":"Test files and test utilities","integrations/workflow-enhancements":"Test files and test utilities","scripts":"Build and utility scripts","tests":"Test files and test utilities","tools":"Test files and test utilities","workflow-modules":"Test files and test utilities"},"staleness":1755724020.483543} \ No newline at end of file diff --git a/setup-claude-code.sh b/setup-claude-code.sh index 1297d4ae..12317736 100755 --- a/setup-claude-code.sh +++ b/setup-claude-code.sh @@ -109,62 +109,47 @@ echo " ~/.claude/agents/ - Claude Code agent definitions" echo " ~/.claude/CLAUDE.md - Claude Code configuration" echo "" -# Ask about subagent integration -echo "🤖 Automatic Workflow Enhancement Available" -echo "==========================================" +# Install subagent integration automatically +echo "🤖 Installing Agent OS Subagent Integration" +echo "===========================================" echo "" -echo "Agent OS can automatically integrate with your Claude Code subagents for:" +echo "Agent OS subagents provide automatic workflow enhancement:" echo "• Real-time code review during development" echo "• Comprehensive testing strategies when writing tests" echo "• Security analysis for auth and data handling" echo "• Performance optimization for critical paths" echo "• Code quality improvements beyond linting" echo "" -echo "All enhancements are automatic - no extra commands needed!" -echo "" -echo "Install automatic subagent integration? (y/n)" -read -r response -if [[ "$response" == "y" ]]; then - echo "" - echo "📥 Installing subagent integration..." - - # Download and run subagent setup - curl -s -o "/tmp/setup-subagent-integration.sh" "${BASE_URL}/integrations/setup-subagent-integration.sh" - if [ -f "/tmp/setup-subagent-integration.sh" ]; then - chmod +x "/tmp/setup-subagent-integration.sh" - /tmp/setup-subagent-integration.sh - rm -f "/tmp/setup-subagent-integration.sh" +echo "📥 Installing subagent integration..." + +# Download and run subagent setup +curl -s -o "/tmp/setup-subagent-integration.sh" "${BASE_URL}/integrations/setup-subagent-integration.sh" +if [ -f "/tmp/setup-subagent-integration.sh" ]; then + chmod +x "/tmp/setup-subagent-integration.sh" + if /tmp/setup-subagent-integration.sh; then + echo "✅ Subagent integration installed successfully!" else - echo "⚠️ Could not download subagent integration setup. You can install it later from:" - echo " https://github.com/carmandale/agent-os/integrations/" + echo "⚠️ Subagent integration installation had issues" fi + rm -f "/tmp/setup-subagent-integration.sh" else - echo "" - echo "⚠️ Subagent integration skipped." - echo "" - echo "You can install it later by running:" - echo " curl -sSL https://raw.githubusercontent.com/carmandale/agent-os/main/integrations/setup-subagent-integration.sh | bash" + echo "⚠️ Could not download subagent integration setup" fi -# Ask about Claude Code hooks installation +# Install Claude Code hooks automatically echo "" -echo "🪝 Claude Code Hooks Available" -echo "===============================" +echo "🪝 Installing Agent OS Claude Code Hooks" +echo "========================================" echo "" -echo "Agent OS Claude Code hooks provide advanced workflow integration:" +echo "Agent OS Claude Code hooks provide essential workflow integration:" echo "• Prevents workflow abandonment after quality checks" echo "• Auto-commits Agent OS documentation changes" echo "• Injects contextual project information automatically" echo "" echo "These hooks run transparently during your normal Claude Code interactions." echo "" -echo "Install Claude Code hooks? (y/n)" -read -r hooks_response - -if [[ "$hooks_response" == "y" ]]; then - echo "" - echo "📥 Installing Claude Code hooks..." +echo "📥 Installing Claude Code hooks..." # Check if hooks are already installed if [ -f "$HOME/.agent-os/hooks/install-hooks.sh" ]; then @@ -214,16 +199,6 @@ if [[ "$hooks_response" == "y" ]]; then echo " ⚠️ Claude Code hooks installation failed" fi fi -else - echo "" - echo "⚠️ Claude Code hooks installation skipped." - echo "" - echo "You can install them later by running:" - echo " ~/.agent-os/hooks/install-hooks.sh" - echo "" - echo "Or download them from:" - echo " https://github.com/carmandale/agent-os/hooks/" -fi # Context validation hook - validate Claude Code integration echo ""