diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/action_log.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/action_log.py index df6e00fef..f419f285c 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/action_log.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/action_log.py @@ -8,7 +8,7 @@ from app.agents.shared.feature_flags import AgentFeatureFlags from app.agents.shared.middleware import ActionLogMiddleware from app.agents.shared.tools.registry import BUILTIN_TOOLS -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled def build_action_log_mw( diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/busy_mutex.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/busy_mutex.py index 56ec32e66..3dfc4aecc 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/busy_mutex.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/busy_mutex.py @@ -5,7 +5,7 @@ from __future__ import annotations from app.agents.shared.feature_flags import AgentFeatureFlags from app.agents.shared.middleware import BusyMutexMiddleware -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled def build_busy_mutex_mw(flags: AgentFeatureFlags) -> BusyMutexMiddleware | None: diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/context_editing.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/context_editing.py index 288456552..a907758fe 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/context_editing.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/context_editing.py @@ -17,7 +17,7 @@ from app.agents.shared.middleware import ( SpillToBackendEdit, ) -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled def build_context_editing_mw( diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/doom_loop.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/doom_loop.py index 24531ac58..6b1c50949 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/doom_loop.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/doom_loop.py @@ -5,7 +5,7 @@ from __future__ import annotations from app.agents.shared.feature_flags import AgentFeatureFlags from app.agents.shared.middleware import DoomLoopMiddleware -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled def build_doom_loop_mw(flags: AgentFeatureFlags) -> DoomLoopMiddleware | None: diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/noop_injection.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/noop_injection.py index 67ef6abe1..5388cfac7 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/noop_injection.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/noop_injection.py @@ -5,7 +5,7 @@ from __future__ import annotations from app.agents.shared.feature_flags import AgentFeatureFlags from app.agents.shared.middleware import NoopInjectionMiddleware -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled def build_noop_injection_mw(flags: AgentFeatureFlags) -> NoopInjectionMiddleware | None: diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/otel.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/otel.py index ac7da00b7..f4c465ce5 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/otel.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/otel.py @@ -5,7 +5,7 @@ from __future__ import annotations from app.agents.shared.feature_flags import AgentFeatureFlags from app.agents.shared.middleware import OtelSpanMiddleware -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled def build_otel_mw(flags: AgentFeatureFlags) -> OtelSpanMiddleware | None: diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/plugins.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/plugins.py index 75111695e..25a791fff 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/plugins.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/plugins.py @@ -15,7 +15,7 @@ from app.agents.shared.plugin_loader import ( ) from app.db import ChatVisibility -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled def build_plugin_middlewares( diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/repair.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/repair.py index 742817414..3d1578826 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/repair.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/repair.py @@ -9,7 +9,7 @@ from langchain_core.tools import BaseTool from app.agents.shared.feature_flags import AgentFeatureFlags from app.agents.shared.middleware import ToolCallNameRepairMiddleware -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled # deepagents-built-in tool names the repair pass treats as known. _DEEPAGENT_BUILTIN_TOOL_NAMES: frozenset[str] = frozenset( diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/skills.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/skills.py index 0a72ecc19..fe415cf9e 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/skills.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/skills.py @@ -13,7 +13,7 @@ from app.agents.shared.middleware import ( default_skills_sources, ) -from app.agents.multi_agent_chat.middleware.shared.flags import enabled +from app.agents.multi_agent_chat.shared.middleware.flags import enabled def build_skills_mw( diff --git a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/stack.py b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/stack.py index a9f35ccd8..4975fcbd0 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/stack.py +++ b/surfsense_backend/app/agents/multi_agent_chat/main_agent/middleware/stack.py @@ -55,15 +55,15 @@ from .otel import build_otel_mw from .plugins import build_plugin_middlewares from .repair import build_repair_mw from .skills import build_skills_mw -from app.agents.multi_agent_chat.middleware.shared.anthropic_cache import build_anthropic_cache_mw -from app.agents.multi_agent_chat.middleware.shared.compaction import build_compaction_mw -from app.agents.multi_agent_chat.middleware.shared.kb_context_projection import build_kb_context_projection_mw -from app.agents.multi_agent_chat.middleware.shared.memory import build_memory_mw -from app.agents.multi_agent_chat.middleware.shared.patch_tool_calls import build_patch_tool_calls_mw -from app.agents.multi_agent_chat.middleware.shared.permissions import build_permission_mw -from app.agents.multi_agent_chat.middleware.shared.resilience import build_resilience_middlewares -from app.agents.multi_agent_chat.middleware.shared.todos import build_todos_mw -from app.agents.multi_agent_chat.middleware.subagent.middleware_stack import ( +from app.agents.multi_agent_chat.shared.middleware.anthropic_cache import build_anthropic_cache_mw +from app.agents.multi_agent_chat.shared.middleware.compaction import build_compaction_mw +from app.agents.multi_agent_chat.shared.middleware.kb_context_projection import build_kb_context_projection_mw +from app.agents.multi_agent_chat.shared.middleware.memory import build_memory_mw +from app.agents.multi_agent_chat.shared.middleware.patch_tool_calls import build_patch_tool_calls_mw +from app.agents.multi_agent_chat.shared.middleware.permissions import build_permission_mw +from app.agents.multi_agent_chat.shared.middleware.resilience import build_resilience_middlewares +from app.agents.multi_agent_chat.shared.middleware.todos import build_todos_mw +from app.agents.multi_agent_chat.subagents.shared.middleware.middleware_stack import ( build_subagent_middleware_stack, ) diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/anthropic_cache.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/anthropic_cache.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/anthropic_cache.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/anthropic_cache.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/compaction.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/compaction.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/compaction.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/compaction.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/async_dispatch.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/async_dispatch.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/async_dispatch.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/async_dispatch.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/middleware.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/middleware.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/middleware.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/middleware.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/mode.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/mode.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/mode.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/mode.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/namespace_policy.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/namespace_policy.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/namespace_policy.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/namespace_policy.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/path_resolution.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/path_resolution.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/path_resolution.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/path_resolution.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/read_only_policy.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/read_only_policy.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/middleware/read_only_policy.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/middleware/read_only_policy.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/shared/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/shared/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/shared/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/shared/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/shared/paths.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/shared/paths.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/shared/paths.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/shared/paths.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/cloud.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/cloud.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/cloud.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/cloud.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/common.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/common.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/common.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/common.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/desktop.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/desktop.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/desktop.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/desktop.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/system_prompt/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/system_prompt/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/cd/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/cd/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/cd/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/cd/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/cd/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/cd/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/cd/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/cd/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/cd/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/cd/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/cd/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/cd/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/edit_file/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/edit_file/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/edit_file/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/edit_file/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/edit_file/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/edit_file/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/edit_file/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/edit_file/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/edit_file/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/edit_file/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/edit_file/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/edit_file/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/execute_code/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/execute_code/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/execute_code/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/execute_code/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/execute_code/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/execute_code/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/execute_code/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/execute_code/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/execute_code/helpers.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/execute_code/helpers.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/execute_code/helpers.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/execute_code/helpers.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/execute_code/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/execute_code/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/execute_code/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/execute_code/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/glob/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/glob/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/glob/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/glob/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/glob/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/glob/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/glob/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/glob/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/grep/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/grep/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/grep/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/grep/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/grep/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/grep/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/grep/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/grep/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/list_tree/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/list_tree/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/list_tree/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/list_tree/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/list_tree/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/list_tree/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/list_tree/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/list_tree/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/list_tree/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/list_tree/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/list_tree/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/list_tree/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/ls/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/ls/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/ls/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/ls/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/ls/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/ls/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/ls/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/ls/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/ls/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/ls/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/ls/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/ls/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/mkdir/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/mkdir/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/mkdir/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/mkdir/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/mkdir/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/mkdir/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/mkdir/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/mkdir/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/mkdir/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/mkdir/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/mkdir/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/mkdir/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/move_file/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/move_file/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/move_file/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/move_file/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/move_file/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/move_file/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/move_file/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/move_file/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/move_file/helpers.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/move_file/helpers.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/move_file/helpers.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/move_file/helpers.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/move_file/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/move_file/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/move_file/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/move_file/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/pwd/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/pwd/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/pwd/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/pwd/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/pwd/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/pwd/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/pwd/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/pwd/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/pwd/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/pwd/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/pwd/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/pwd/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/read_file/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/read_file/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/read_file/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/read_file/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/read_file/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/read_file/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/read_file/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/read_file/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/read_file/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/read_file/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/read_file/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/read_file/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rm/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rm/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rm/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rm/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rm/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rm/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rm/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rm/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rm/helpers.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rm/helpers.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rm/helpers.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rm/helpers.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rm/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rm/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rm/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rm/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rmdir/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rmdir/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rmdir/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rmdir/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rmdir/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rmdir/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rmdir/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rmdir/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rmdir/helpers.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rmdir/helpers.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rmdir/helpers.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rmdir/helpers.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rmdir/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rmdir/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/rmdir/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/rmdir/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/write_file/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/write_file/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/write_file/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/write_file/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/write_file/description.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/write_file/description.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/write_file/description.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/write_file/description.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/write_file/index.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/write_file/index.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/filesystem/tools/write_file/index.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/filesystem/tools/write_file/index.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/flags.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/flags.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/flags.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/flags.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/kb_context_projection.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/kb_context_projection.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/kb_context_projection.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/kb_context_projection.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/memory.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/memory.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/memory.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/memory.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/patch_tool_calls.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/patch_tool_calls.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/patch_tool_calls.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/patch_tool_calls.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/decision.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/decision.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/decision.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/decision.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/edit/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/edit/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/edit/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/edit/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/edit/merge.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/edit/merge.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/edit/merge.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/edit/merge.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/payload.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/payload.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/payload.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/payload.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/request.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/request.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/ask/request.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/ask/request.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/deny.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/deny.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/deny.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/deny.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/core.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/core.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/core.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/core.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/evaluation.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/evaluation.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/evaluation.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/evaluation.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/factory.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/factory.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/factory.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/factory.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/pattern_resolver.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/pattern_resolver.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/pattern_resolver.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/pattern_resolver.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/ruleset_view.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/ruleset_view.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/ruleset_view.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/ruleset_view.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/runtime_promote.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/runtime_promote.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/permissions/middleware/runtime_promote.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/permissions/middleware/runtime_promote.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/bundle.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/bundle.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/bundle.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/bundle.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/fallback.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/fallback.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/fallback.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/fallback.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/model_call_limit.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/model_call_limit.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/model_call_limit.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/model_call_limit.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/retry.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/retry.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/retry.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/retry.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/tool_call_limit.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/tool_call_limit.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/resilience/tool_call_limit.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/resilience/tool_call_limit.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/shared/todos.py b/surfsense_backend/app/agents/multi_agent_chat/shared/middleware/todos.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/shared/todos.py rename to surfsense_backend/app/agents/multi_agent_chat/shared/middleware/todos.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/subagents/builtins/knowledge_base/middleware_stack.py b/surfsense_backend/app/agents/multi_agent_chat/subagents/builtins/knowledge_base/middleware_stack.py index 4251b8b14..ad39d9868 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/subagents/builtins/knowledge_base/middleware_stack.py +++ b/surfsense_backend/app/agents/multi_agent_chat/subagents/builtins/knowledge_base/middleware_stack.py @@ -10,22 +10,22 @@ from typing import Any from langchain_core.language_models import BaseChatModel -from app.agents.multi_agent_chat.middleware.shared.anthropic_cache import ( +from app.agents.multi_agent_chat.shared.middleware.anthropic_cache import ( build_anthropic_cache_mw, ) -from app.agents.multi_agent_chat.middleware.shared.compaction import ( +from app.agents.multi_agent_chat.shared.middleware.compaction import ( build_compaction_mw, ) -from app.agents.multi_agent_chat.middleware.shared.filesystem import ( +from app.agents.multi_agent_chat.shared.middleware.filesystem import ( build_filesystem_mw, ) -from app.agents.multi_agent_chat.middleware.shared.kb_context_projection import ( +from app.agents.multi_agent_chat.shared.middleware.kb_context_projection import ( build_kb_context_projection_mw, ) -from app.agents.multi_agent_chat.middleware.shared.patch_tool_calls import ( +from app.agents.multi_agent_chat.shared.middleware.patch_tool_calls import ( build_patch_tool_calls_mw, ) -from app.agents.multi_agent_chat.middleware.shared.permissions import ( +from app.agents.multi_agent_chat.shared.middleware.permissions import ( build_permission_mw, ) from app.agents.shared.feature_flags import AgentFeatureFlags diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/subagent/__init__.py b/surfsense_backend/app/agents/multi_agent_chat/subagents/shared/middleware/__init__.py similarity index 100% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/subagent/__init__.py rename to surfsense_backend/app/agents/multi_agent_chat/subagents/shared/middleware/__init__.py diff --git a/surfsense_backend/app/agents/multi_agent_chat/middleware/subagent/middleware_stack.py b/surfsense_backend/app/agents/multi_agent_chat/subagents/shared/middleware/middleware_stack.py similarity index 86% rename from surfsense_backend/app/agents/multi_agent_chat/middleware/subagent/middleware_stack.py rename to surfsense_backend/app/agents/multi_agent_chat/subagents/shared/middleware/middleware_stack.py index 5ffc2bcd1..241a4bb9c 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/middleware/subagent/middleware_stack.py +++ b/surfsense_backend/app/agents/multi_agent_chat/subagents/shared/middleware/middleware_stack.py @@ -16,9 +16,13 @@ from typing import Any from app.agents.shared.feature_flags import AgentFeatureFlags -from ..shared.permissions import build_permission_mw -from ..shared.resilience import ResilienceMiddlewares -from ..shared.todos import build_todos_mw +from app.agents.multi_agent_chat.shared.middleware.permissions import ( + build_permission_mw, +) +from app.agents.multi_agent_chat.shared.middleware.resilience import ( + ResilienceMiddlewares, +) +from app.agents.multi_agent_chat.shared.middleware.todos import build_todos_mw def build_subagent_middleware_stack( diff --git a/surfsense_backend/app/agents/multi_agent_chat/subagents/shared/subagent_builder.py b/surfsense_backend/app/agents/multi_agent_chat/subagents/shared/subagent_builder.py index 46f2d555d..1a48a0138 100644 --- a/surfsense_backend/app/agents/multi_agent_chat/subagents/shared/subagent_builder.py +++ b/surfsense_backend/app/agents/multi_agent_chat/subagents/shared/subagent_builder.py @@ -11,7 +11,7 @@ from deepagents.middleware.patch_tool_calls import PatchToolCallsMiddleware from langchain_core.language_models import BaseChatModel from langchain_core.tools import BaseTool -from app.agents.multi_agent_chat.middleware.shared.permissions import ( +from app.agents.multi_agent_chat.shared.middleware.permissions import ( build_permission_mw, ) from app.agents.multi_agent_chat.subagents.shared.md_file_reader import ( diff --git a/surfsense_backend/tests/integration/agents/multi_agent_chat/test_kb_filesystem_cloud.py b/surfsense_backend/tests/integration/agents/multi_agent_chat/test_kb_filesystem_cloud.py index 93b534504..c6b107bc6 100644 --- a/surfsense_backend/tests/integration/agents/multi_agent_chat/test_kb_filesystem_cloud.py +++ b/surfsense_backend/tests/integration/agents/multi_agent_chat/test_kb_filesystem_cloud.py @@ -20,7 +20,7 @@ from langchain.agents import create_agent from langchain_core.messages import HumanMessage, ToolMessage from langgraph.checkpoint.memory import InMemorySaver -from app.agents.multi_agent_chat.middleware.shared.filesystem import ( +from app.agents.multi_agent_chat.shared.middleware.filesystem import ( build_filesystem_mw, ) from app.agents.shared.filesystem_backends import build_backend_resolver diff --git a/surfsense_backend/tests/integration/agents/multi_agent_chat/test_kb_filesystem_desktop.py b/surfsense_backend/tests/integration/agents/multi_agent_chat/test_kb_filesystem_desktop.py index af94c0d89..4c4f98022 100644 --- a/surfsense_backend/tests/integration/agents/multi_agent_chat/test_kb_filesystem_desktop.py +++ b/surfsense_backend/tests/integration/agents/multi_agent_chat/test_kb_filesystem_desktop.py @@ -1,6 +1,6 @@ """Real-behavior tests for the LIVE knowledge-base filesystem middleware (B). -These exercise ``app.agents.multi_agent_chat.middleware.shared.filesystem`` — +These exercise ``app.agents.multi_agent_chat.shared.middleware.filesystem`` — the decomposed middleware + tools that production actually mounts on the knowledge_base subagent (via ``build_filesystem_mw``). The previous ``tests/unit/middleware/test_filesystem_*.py`` suite asserts a *dead twin* @@ -23,7 +23,7 @@ from langchain.agents import create_agent from langchain_core.messages import HumanMessage, ToolMessage from langgraph.checkpoint.memory import InMemorySaver -from app.agents.multi_agent_chat.middleware.shared.filesystem import ( +from app.agents.multi_agent_chat.shared.middleware.filesystem import ( build_filesystem_mw, ) from app.agents.shared.filesystem_backends import build_backend_resolver diff --git a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/checkpointed_subagent_middleware/test_parallel_self_and_middleware_gated.py b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/checkpointed_subagent_middleware/test_parallel_self_and_middleware_gated.py index cc53f51de..5470c6667 100644 --- a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/checkpointed_subagent_middleware/test_parallel_self_and_middleware_gated.py +++ b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/checkpointed_subagent_middleware/test_parallel_self_and_middleware_gated.py @@ -43,7 +43,7 @@ from app.agents.multi_agent_chat.main_agent.middleware.checkpointed_subagent_mid from app.agents.multi_agent_chat.main_agent.middleware.checkpointed_subagent_middleware.task_tool import ( build_task_tool_with_parent_config, ) -from app.agents.multi_agent_chat.middleware.shared.permissions.ask.request import ( +from app.agents.multi_agent_chat.shared.middleware.permissions.ask.request import ( request_permission_decision, ) from app.agents.multi_agent_chat.subagents.shared.hitl.approvals.self_gated import ( diff --git a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_lc_hitl_wire.py b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_lc_hitl_wire.py index ad7ecf610..f4bffb415 100644 --- a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_lc_hitl_wire.py +++ b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_lc_hitl_wire.py @@ -16,7 +16,7 @@ from langgraph.graph import END, START, StateGraph from langgraph.types import Command from typing_extensions import TypedDict -from app.agents.multi_agent_chat.middleware.shared.permissions.ask.request import ( +from app.agents.multi_agent_chat.shared.middleware.permissions.ask.request import ( request_permission_decision, ) from app.agents.shared.permissions import Rule diff --git a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_permission_ask_mcp_context.py b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_permission_ask_mcp_context.py index 82b28d04a..1258f8f92 100644 --- a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_permission_ask_mcp_context.py +++ b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_permission_ask_mcp_context.py @@ -13,10 +13,10 @@ from langgraph.graph.message import add_messages from pydantic import BaseModel from typing_extensions import TypedDict -from app.agents.multi_agent_chat.middleware.shared.permissions import ( +from app.agents.multi_agent_chat.shared.middleware.permissions import ( build_permission_mw, ) -from app.agents.multi_agent_chat.middleware.shared.permissions.ask.payload import ( +from app.agents.multi_agent_chat.shared.middleware.permissions.ask.payload import ( build_permission_ask_payload, ) from app.agents.shared.feature_flags import AgentFeatureFlags diff --git a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_subagent_owned_ruleset.py b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_subagent_owned_ruleset.py index 43d769f6d..7555dc002 100644 --- a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_subagent_owned_ruleset.py +++ b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_subagent_owned_ruleset.py @@ -23,7 +23,7 @@ from langgraph.graph.message import add_messages from langgraph.types import Command from typing_extensions import TypedDict -from app.agents.multi_agent_chat.middleware.shared.permissions import ( +from app.agents.multi_agent_chat.shared.middleware.permissions import ( build_permission_mw, ) from app.agents.shared.feature_flags import AgentFeatureFlags diff --git a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_trusted_tool_save_on_always.py b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_trusted_tool_save_on_always.py index cd2789b56..92388602a 100644 --- a/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_trusted_tool_save_on_always.py +++ b/surfsense_backend/tests/unit/agents/multi_agent_chat/middleware/shared/permissions/test_trusted_tool_save_on_always.py @@ -14,7 +14,7 @@ from langgraph.types import Command from pydantic import BaseModel from typing_extensions import TypedDict -from app.agents.multi_agent_chat.middleware.shared.permissions import ( +from app.agents.multi_agent_chat.shared.middleware.permissions import ( build_permission_mw, ) from app.agents.shared.feature_flags import AgentFeatureFlags diff --git a/surfsense_backend/tests/unit/agents/multi_agent_chat/subagents/shared/test_subagent_builder.py b/surfsense_backend/tests/unit/agents/multi_agent_chat/subagents/shared/test_subagent_builder.py index 34aa0515a..eaa656e03 100644 --- a/surfsense_backend/tests/unit/agents/multi_agent_chat/subagents/shared/test_subagent_builder.py +++ b/surfsense_backend/tests/unit/agents/multi_agent_chat/subagents/shared/test_subagent_builder.py @@ -19,7 +19,7 @@ from langchain_core.language_models.fake_chat_models import ( from langchain_core.messages import AIMessage, BaseMessage, HumanMessage from langchain_core.outputs import ChatGeneration, ChatResult -from app.agents.multi_agent_chat.middleware.shared.permissions.middleware.core import ( +from app.agents.multi_agent_chat.shared.middleware.permissions.middleware.core import ( PermissionMiddleware, ) from app.agents.multi_agent_chat.subagents.shared.subagent_builder import ( diff --git a/surfsense_backend/tests/unit/middleware/test_b_filesystem_path_resolution.py b/surfsense_backend/tests/unit/middleware/test_b_filesystem_path_resolution.py index a5712bd7d..d68db8d72 100644 --- a/surfsense_backend/tests/unit/middleware/test_b_filesystem_path_resolution.py +++ b/surfsense_backend/tests/unit/middleware/test_b_filesystem_path_resolution.py @@ -8,7 +8,7 @@ Ported from the dead-twin suites: Both exercised ``app.agents.shared.middleware.filesystem`` (dead). This drives the production free functions in -``app.agents.multi_agent_chat.middleware.shared.filesystem.middleware`` instead. +``app.agents.multi_agent_chat.shared.middleware.filesystem.middleware`` instead. The functions only touch ``mw._filesystem_mode`` and ``mw._get_backend`` so we pass a lightweight fake ``mw`` rather than constructing the full middleware. """ @@ -20,13 +20,13 @@ from types import SimpleNamespace import pytest -from app.agents.multi_agent_chat.middleware.shared.filesystem.middleware.mode import ( +from app.agents.multi_agent_chat.shared.middleware.filesystem.middleware.mode import ( default_cwd, ) -from app.agents.multi_agent_chat.middleware.shared.filesystem.middleware.namespace_policy import ( +from app.agents.multi_agent_chat.shared.middleware.filesystem.middleware.namespace_policy import ( check_cloud_write_namespace, ) -from app.agents.multi_agent_chat.middleware.shared.filesystem.middleware.path_resolution import ( +from app.agents.multi_agent_chat.shared.middleware.filesystem.middleware.path_resolution import ( current_cwd, get_contract_suggested_path, normalize_local_mount_path, diff --git a/surfsense_backend/tests/unit/middleware/test_b_filesystem_rm_rmdir_cloud.py b/surfsense_backend/tests/unit/middleware/test_b_filesystem_rm_rmdir_cloud.py index 4a6fa3f95..95f888ff4 100644 --- a/surfsense_backend/tests/unit/middleware/test_b_filesystem_rm_rmdir_cloud.py +++ b/surfsense_backend/tests/unit/middleware/test_b_filesystem_rm_rmdir_cloud.py @@ -3,7 +3,7 @@ Ported from the former ``tests/unit/agents/new_chat/test_rm_rmdir_cloud.py``, which exercised the *dead twin* ``app.agents.shared.middleware.filesystem``. This drives the production decomposed tools -(``app.agents.multi_agent_chat.middleware.shared.filesystem``) instead: it +(``app.agents.multi_agent_chat.shared.middleware.filesystem``) instead: it builds the real middleware via ``build_filesystem_mw``, pulls the real ``rm`` / ``rmdir`` tools off it, and invokes their coroutines with a stubbed ``KBPostgresBackend`` + runtime so we can assert the end-of-turn staging @@ -19,7 +19,7 @@ from unittest.mock import AsyncMock import pytest -from app.agents.multi_agent_chat.middleware.shared.filesystem import ( +from app.agents.multi_agent_chat.shared.middleware.filesystem import ( build_filesystem_mw, ) from app.agents.shared.filesystem_backends import build_backend_resolver diff --git a/surfsense_backend/tests/unit/middleware/test_b_filesystem_system_prompt.py b/surfsense_backend/tests/unit/middleware/test_b_filesystem_system_prompt.py index eb8c3dc15..36e5f6b61 100644 --- a/surfsense_backend/tests/unit/middleware/test_b_filesystem_system_prompt.py +++ b/surfsense_backend/tests/unit/middleware/test_b_filesystem_system_prompt.py @@ -18,7 +18,7 @@ from __future__ import annotations import pytest -from app.agents.multi_agent_chat.middleware.shared.filesystem.system_prompt import ( +from app.agents.multi_agent_chat.shared.middleware.filesystem.system_prompt import ( build_system_prompt, ) from app.agents.shared.filesystem_selection import FilesystemMode