feat: replace Aider with secure mini-SWE-agent worker
Some checks failed
CI / test (push) Has been cancelled
CI / test (pull_request) Has been cancelled

This commit is contained in:
Christian Meyer
2026-08-31 02:46:58 +02:00
parent 582db3a654
commit 25ed6a8439
30 changed files with 4215 additions and 2148 deletions

View File

@@ -4,33 +4,35 @@ import argparse
import logging
from .config import Settings
from .worker import AutomationWorker
from .worker import Worker
def main() -> None:
parser = argparse.ArgumentParser(description="LAI controlled coding-agent automation")
parser.add_argument("command", choices=["once", "worker", "check"])
args = parser.parse_args()
parser = argparse.ArgumentParser(description="LAI issue-driven coding worker")
parser.add_argument(
"command",
choices=("worker", "once", "check", "preflight"),
nargs="?",
default="worker",
)
parser.add_argument("--log-level", default="INFO")
arguments = parser.parse_args()
logging.basicConfig(
level=logging.INFO,
format="%(asctime)s %(levelname)s %(name)s %(message)s",
level=getattr(logging, arguments.log_level.upper(), logging.INFO),
format="%(asctime)s %(levelname)s %(name)s: %(message)s",
)
settings = Settings.from_env()
if args.command == "check":
print(f"mode={settings.mode}")
print(f"source={settings.source_repository}")
print(f"model={settings.agent_model}")
print(f"direct_main_enabled={settings.allow_direct_main}")
if arguments.command == "check":
logging.getLogger(__name__).info("Configuration is valid")
return
worker = AutomationWorker(settings)
if args.command == "once":
worker = Worker.create(settings)
if arguments.command == "preflight":
worker.preflight()
elif arguments.command == "once":
worker.run_once()
else:
worker.run_forever()
if __name__ == "__main__":
main()
main()