mirror of
https://github.com/Aider-AI/aider.git
synced 2025-06-03 19:24:59 +00:00
feat: Add server address and port options for browser mode
This commit is contained in:
parent
543e5570ae
commit
49a82e79e5
4 changed files with 33 additions and 3 deletions
|
@ -627,6 +627,24 @@ def get_parser(default_config_files, git_root):
|
||||||
help="Run aider in your browser (default: False)",
|
help="Run aider in your browser (default: False)",
|
||||||
default=False,
|
default=False,
|
||||||
)
|
)
|
||||||
|
group.add_argument(
|
||||||
|
"--server-address",
|
||||||
|
type=str,
|
||||||
|
default=None,
|
||||||
|
help=(
|
||||||
|
"The address on which aider should listen when running in browser mode. By default"
|
||||||
|
" it listens on localhost."
|
||||||
|
),
|
||||||
|
)
|
||||||
|
group.add_argument(
|
||||||
|
"--server-port",
|
||||||
|
type=int,
|
||||||
|
default=None,
|
||||||
|
help=(
|
||||||
|
"The port on which aider should listen when running in browser mode. By default"
|
||||||
|
" a random port is chosen."
|
||||||
|
),
|
||||||
|
)
|
||||||
group.add_argument(
|
group.add_argument(
|
||||||
"--copy-paste",
|
"--copy-paste",
|
||||||
action=argparse.BooleanOptionalAction,
|
action=argparse.BooleanOptionalAction,
|
||||||
|
|
|
@ -230,7 +230,7 @@ def write_streamlit_credentials():
|
||||||
print("Streamlit credentials already exist.")
|
print("Streamlit credentials already exist.")
|
||||||
|
|
||||||
|
|
||||||
def launch_gui(args):
|
def launch_gui(args, server_port=None, server_address=None):
|
||||||
from streamlit.web import cli
|
from streamlit.web import cli
|
||||||
|
|
||||||
from aider import gui
|
from aider import gui
|
||||||
|
@ -251,6 +251,12 @@ def launch_gui(args):
|
||||||
"--server.runOnSave=false",
|
"--server.runOnSave=false",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
if server_port is not None:
|
||||||
|
st_args.append(f"--server.port={server_port}")
|
||||||
|
|
||||||
|
if server_address is not None:
|
||||||
|
st_args.append(f"--server.address={server_address}")
|
||||||
|
|
||||||
# https://github.com/Aider-AI/aider/issues/2193
|
# https://github.com/Aider-AI/aider/issues/2193
|
||||||
is_dev = "-dev" in str(__version__)
|
is_dev = "-dev" in str(__version__)
|
||||||
|
|
||||||
|
@ -663,7 +669,7 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F
|
||||||
analytics.event("exit", reason="Streamlit not installed")
|
analytics.event("exit", reason="Streamlit not installed")
|
||||||
return
|
return
|
||||||
analytics.event("gui session")
|
analytics.event("gui session")
|
||||||
launch_gui(argv)
|
launch_gui(argv, server_port=args.server_port, server_address=args.server_address)
|
||||||
analytics.event("exit", reason="GUI session ended")
|
analytics.event("exit", reason="GUI session ended")
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|
|
@ -382,6 +382,12 @@ cog.outl("```")
|
||||||
## Run aider in your browser (default: False)
|
## Run aider in your browser (default: False)
|
||||||
#gui: false
|
#gui: false
|
||||||
|
|
||||||
|
## The address on which aider should listen when running in browser mode (default: localhost)
|
||||||
|
#server-address: "0.0.0.0"
|
||||||
|
|
||||||
|
## The port on which aider should listen when running in browser mode (default: None)
|
||||||
|
#server-port: 12345
|
||||||
|
|
||||||
## Enable automatic copy/paste of chat between aider and web UI (default: False)
|
## Enable automatic copy/paste of chat between aider and web UI (default: False)
|
||||||
#copy-paste: false
|
#copy-paste: false
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ from aider.main import main
|
||||||
|
|
||||||
|
|
||||||
class TestBrowser(unittest.TestCase):
|
class TestBrowser(unittest.TestCase):
|
||||||
@patch("aider.main.launch_gui")
|
@patch("aider.main.launch_gui", autospec=True)
|
||||||
def test_browser_flag_imports_streamlit(self, mock_launch_gui):
|
def test_browser_flag_imports_streamlit(self, mock_launch_gui):
|
||||||
os.environ["AIDER_ANALYTICS"] = "false"
|
os.environ["AIDER_ANALYTICS"] = "false"
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue