2026-06-25 17:27:08 -04:00
|
|
|
"""Aegra entrypoint for Open SWE graphs.
|
|
|
|
|
|
|
|
|
|
Aegra loads graph files standalone via importlib.spec_from_file_location, which
|
|
|
|
|
gives them a synthetic module name and breaks agent/*.py's package-relative
|
|
|
|
|
imports (e.g. `from .dashboard.admin import ...`). Re-exporting the graphs here
|
|
|
|
|
through the installed ``agent`` package (absolute imports) restores correct
|
|
|
|
|
``__package__`` resolution, so the relative imports inside the agent modules work.
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
from agent.analyzer import traced_analyzer as analyzer_graph
|
2026-06-26 11:20:10 -04:00
|
|
|
from agent.reviewer import traced_reviewer_agent as reviewer_graph
|
|
|
|
|
from agent.server import traced_agent as agent_graph
|
2026-06-25 17:27:08 -04:00
|
|
|
|
|
|
|
|
# Open SWE's FastAPI webapp (GitHub/Slack webhooks + dashboard API), mounted by
|
|
|
|
|
# Aegra via the "http" key in aegra.json. Absolute import for the same reason as
|
|
|
|
|
# the graphs above (relative imports break under Aegra's standalone file loader).
|
|
|
|
|
from agent.webapp import app as webapp_app
|
|
|
|
|
|
|
|
|
|
__all__ = ["agent_graph", "reviewer_graph", "analyzer_graph", "webapp_app"]
|