2025-08-08 20:36:44 -07:00
|
|
|
import os
|
|
|
|
|
|
2026-01-09 21:24:08 -08:00
|
|
|
from strix.config import Config
|
|
|
|
|
|
2025-08-08 20:36:44 -07:00
|
|
|
from .executor import (
|
|
|
|
|
execute_tool,
|
|
|
|
|
execute_tool_invocation,
|
|
|
|
|
execute_tool_with_validation,
|
|
|
|
|
extract_screenshot_from_result,
|
|
|
|
|
process_tool_invocations,
|
|
|
|
|
remove_screenshot_from_result,
|
|
|
|
|
validate_tool_availability,
|
|
|
|
|
)
|
|
|
|
|
from .registry import (
|
|
|
|
|
ImplementedInClientSideOnlyError,
|
|
|
|
|
get_tool_by_name,
|
|
|
|
|
get_tool_names,
|
|
|
|
|
get_tools_prompt,
|
|
|
|
|
needs_agent_state,
|
|
|
|
|
register_tool,
|
|
|
|
|
tools,
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SANDBOX_MODE = os.getenv("STRIX_SANDBOX_MODE", "false").lower() == "true"
|
|
|
|
|
|
2026-01-09 21:24:08 -08:00
|
|
|
HAS_PERPLEXITY_API = bool(Config.get("perplexity_api_key"))
|
2025-08-08 20:36:44 -07:00
|
|
|
|
2026-01-09 21:24:08 -08:00
|
|
|
DISABLE_BROWSER = (Config.get("strix_disable_browser") or "false").lower() == "true"
|
2025-12-15 01:15:43 +05:30
|
|
|
|
2025-08-08 20:36:44 -07:00
|
|
|
if not SANDBOX_MODE:
|
|
|
|
|
from .agents_graph import * # noqa: F403
|
2025-12-15 01:15:43 +05:30
|
|
|
|
|
|
|
|
if not DISABLE_BROWSER:
|
|
|
|
|
from .browser import * # noqa: F403
|
2025-08-08 20:36:44 -07:00
|
|
|
from .file_edit import * # noqa: F403
|
|
|
|
|
from .finish import * # noqa: F403
|
|
|
|
|
from .notes import * # noqa: F403
|
|
|
|
|
from .proxy import * # noqa: F403
|
|
|
|
|
from .python import * # noqa: F403
|
|
|
|
|
from .reporting import * # noqa: F403
|
|
|
|
|
from .terminal import * # noqa: F403
|
|
|
|
|
from .thinking import * # noqa: F403
|
2025-12-14 10:16:02 -08:00
|
|
|
from .todo import * # noqa: F403
|
2025-08-08 20:36:44 -07:00
|
|
|
|
|
|
|
|
if HAS_PERPLEXITY_API:
|
|
|
|
|
from .web_search import * # noqa: F403
|
|
|
|
|
else:
|
2025-12-15 01:15:43 +05:30
|
|
|
if not DISABLE_BROWSER:
|
|
|
|
|
from .browser import * # noqa: F403
|
2025-08-08 20:36:44 -07:00
|
|
|
from .file_edit import * # noqa: F403
|
|
|
|
|
from .proxy import * # noqa: F403
|
|
|
|
|
from .python import * # noqa: F403
|
|
|
|
|
from .terminal import * # noqa: F403
|
|
|
|
|
|
|
|
|
|
__all__ = [
|
|
|
|
|
"ImplementedInClientSideOnlyError",
|
|
|
|
|
"execute_tool",
|
|
|
|
|
"execute_tool_invocation",
|
|
|
|
|
"execute_tool_with_validation",
|
|
|
|
|
"extract_screenshot_from_result",
|
|
|
|
|
"get_tool_by_name",
|
|
|
|
|
"get_tool_names",
|
|
|
|
|
"get_tools_prompt",
|
|
|
|
|
"needs_agent_state",
|
|
|
|
|
"process_tool_invocations",
|
|
|
|
|
"register_tool",
|
|
|
|
|
"remove_screenshot_from_result",
|
|
|
|
|
"tools",
|
|
|
|
|
"validate_tool_availability",
|
|
|
|
|
]
|