From 542c091cf395a932374ab378fdda3ec77e4371b4 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 28 Apr 2024 14:08:25 -0700 Subject: [PATCH] Added --gui functionality --- aider/args.py | 7 +++++++ aider/main.py | 26 ++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/aider/args.py b/aider/args.py index 41d4dea97..e01646539 100644 --- a/aider/args.py +++ b/aider/args.py @@ -364,5 +364,12 @@ def get_parser(default_config_files, git_root): " or home directory)" ), ) + group.add_argument( + "--gui", + "--browser", + action="store_true", + help="Run aider in your browser", + default=False, + ) return parser diff --git a/aider/main.py b/aider/main.py index 6dda7a1cf..99805c0e3 100644 --- a/aider/main.py +++ b/aider/main.py @@ -5,6 +5,8 @@ from pathlib import Path import git import litellm +from click.testing import CliRunner +from streamlit.web import cli from aider import models from aider.args import get_parser @@ -141,6 +143,26 @@ def scrub_sensitive_info(args, text): return text +def launch_gui(args): + from aider import gui + + target = gui.__file__ + + # from streamlit.web import bootstrap + # bootstrap.load_config_options(flag_options={}) + # cli.main_run(target, args) + # sys.argv = ['streamlit', 'run', '--'] + args + + runner = CliRunner() + st_args = [ + "run", + target, + "--global.developmentMode=false", + "--", + ] + runner.invoke(cli.main, st_args + args) + + def main(argv=None, input=None, output=None, force_git_root=None, return_coder=False): if argv is None: argv = sys.argv[1:] @@ -163,6 +185,10 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F parser = get_parser(default_config_files, git_root) args = parser.parse_args(argv) + if args.gui and not return_coder: + launch_gui(argv) + return + if args.dark_mode: args.user_input_color = "#32FF32" args.tool_error_color = "#FF3333"