From 70f6da9b1ad190a967974fb477db669cbb5c928f Mon Sep 17 00:00:00 2001 From: Nate Sesti Date: Wed, 6 Sep 2023 15:32:42 -0700 Subject: feat: :sparkles: run continue immediately from pypi pkg --- .vscode/launch.json | 4 +--- continuedev/src/continuedev/__main__.py | 16 ++++++++++++++ continuedev/src/continuedev/core/autopilot.py | 6 ++++++ continuedev/src/continuedev/server/main.py | 30 +++++++++++++++------------ 4 files changed, 40 insertions(+), 16 deletions(-) create mode 100644 continuedev/src/continuedev/__main__.py diff --git a/.vscode/launch.json b/.vscode/launch.json index 9ccf4ce7..e264c367 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -29,7 +29,7 @@ "name": "Server", "type": "python", "request": "launch", - "module": "continuedev.src.continuedev.server.main", + "module": "continuedev.src.continuedev.__main__", "args": ["--port", "8001"], "justMyCode": false, "subProcess": false @@ -44,8 +44,6 @@ "args": ["--config", "continuedev/config.py"], "justMyCode": false, "subProcess": false - // Does it need a build task? - // What about a watch task? - type errors? }, { "name": "Extension (VSCode)", diff --git a/continuedev/src/continuedev/__main__.py b/continuedev/src/continuedev/__main__.py new file mode 100644 index 00000000..6dd03046 --- /dev/null +++ b/continuedev/src/continuedev/__main__.py @@ -0,0 +1,16 @@ +import argparse + +from .server.main import run_server + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("-p", "--port", help="server port", type=int, default=65432) + parser.add_argument("--host", help="server host", type=str, default="127.0.0.1") + args = parser.parse_args() + + run_server(port=args.port, host=args.host) + + +if __name__ == "__main__": + main() diff --git a/continuedev/src/continuedev/core/autopilot.py b/continuedev/src/continuedev/core/autopilot.py index cbf9ad59..5f17b4d2 100644 --- a/continuedev/src/continuedev/core/autopilot.py +++ b/continuedev/src/continuedev/core/autopilot.py @@ -525,6 +525,12 @@ class Autopilot(ContinueBaseModel): if self.session_info is None: async def create_title(): + if ( + self.session_info is not None + and self.session_info.title is not None + ): + return + title = await self.continue_sdk.models.medium.complete( f'Give a short title to describe the current chat session. Do not put quotes around the title. The first message was: "{user_input}". Do not use more than 10 words. The title is: ', max_tokens=20, diff --git a/continuedev/src/continuedev/server/main.py b/continuedev/src/continuedev/server/main.py index 00ded6f1..09adfa51 100644 --- a/continuedev/src/continuedev/server/main.py +++ b/continuedev/src/continuedev/server/main.py @@ -34,18 +34,8 @@ def health(): return {"status": "ok"} -try: - # add cli arg for server port - parser = argparse.ArgumentParser() - parser.add_argument("-p", "--port", help="server port", type=int, default=65432) - args = parser.parse_args() -except Exception as e: - logger.debug(f"Error parsing command line arguments: {e}") - raise e - - -def run_server(): - config = uvicorn.Config(app, host="127.0.0.1", port=args.port) +def run_server(port: int = 65432, host: str = "127.0.0.1"): + config = uvicorn.Config(app, host=host, port=port) server = uvicorn.Server(config) server.run() @@ -66,7 +56,21 @@ atexit.register(cleanup) if __name__ == "__main__": try: - run_server() + try: + # add cli arg for server port + parser = argparse.ArgumentParser() + parser.add_argument( + "-p", "--port", help="server port", type=int, default=65432 + ) + parser.add_argument( + "-h", "--host", help="server host", type=str, default="127.0.0.1" + ) + args = parser.parse_args() + except Exception as e: + logger.debug(f"Error parsing command line arguments: {e}") + raise e + + run_server(args.port, args.host) except Exception as e: logger.debug(f"Error starting Continue server: {e}") cleanup() -- cgit v1.2.3-70-g09d2