diff --git a/.env.example b/.env.example index fa71fec7..a93b9f56 100644 --- a/.env.example +++ b/.env.example @@ -6,18 +6,21 @@ # secrets in it. If you are cloning this repo, create a copy of this file named # ".env" and populate it with your secrets. +# When adding additional environment variables, the schema in "backend/app/app/core/config.py" +# should be updated accordingly. + ############################################# # OpenAPI variables ############################################# OPENAI_API_KEY= # OpenAI API key OPENAI_ORGANIZATION= # OpenAI organization ID -ENABLE_LLM_CACHE=false # flag to enable or disable LLM cache in redis +ENABLE_LLM_CACHE=false # Set to true to enable LLM cache in redis ############################################# # Authentication variables ############################################# -ENABLE_AUTH=false # flag to enable or disable authentication -NEXTAUTH_SECRET= # Add the same secret as in the FE .env file +ENABLE_AUTH=false # Set to true to enable authentication +NEXTAUTH_SECRET= # Add the same secret as in the frontend .env file NEXTAUTH_URL="http://localhost:3000" # Add the url as in the FE .env file ############################################# @@ -52,7 +55,7 @@ REDIS_HOST=redis_server REDIS_PORT=6379 ############################################# -# Minio variables +# Minio variables (if you want to use minio, currently not included in standard setup) ############################################# MINIO_URL=storage.localhost MINIO_BUCKET=fastapi-minio @@ -62,7 +65,7 @@ MINIO_ROOT_PASSWORD=minioadmin ############################################# # SQL Tool DB ############################################# -SQL_TOOL_DB_ENABLED="true" # Set to "true" to enable the SQL database tool. +SQL_TOOL_DB_ENABLED=true # Set to true to enable the SQL database tool. SQL_TOOL_DB_URI='postgresql://postgres:postgres@database/postgres?connect_timeout=10' # docker url SQL_TOOL_DB_SCHEMAS='["public"]' SQL_TOOL_DB_INFO_PATH='app/tool_constants/sql_tool_db_info.json' diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0b6234bc..152c532f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -9,7 +9,7 @@ We want to make contributing to this project as easy and transparent as possible We use Github to host code, to track issues and feature requests, as well as accept pull requests. We actively welcome your pull requests: -1. Fork the repo and create your branch from `develop`. +1. Fork the repo and create your branch from `main`. 2. If you've changed key features (tools, APIs etc), update the documentation. 3. Ensure the code is clean: passes the set of tests, lints etc. 5. Issue a pull request to the main repo diff --git a/README.md b/README.md index 896771f4..99c43d23 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ The starter pack is based on the latest technologies for optimal performance, se * 🖍 Linting, tests and pre-commit hooks pre-configured ## Quickstart -For a quick setup of AgentKit, use the steps below, where both the backend app and frontend app are run inside a Docker container. More elaborate setup instructions can be found at [setup.md](docs/docusaurus/docs/setup.md). +For a quick setup of AgentKit, use the steps below, where both the backend app and frontend app are run inside a Docker container. More elaborate setup instructions can be found in the [documentation](https://agentkit.infra.x.bcg.com/docs/introduction). ### Prerequisites - Docker: https://www.docker.com/get-started @@ -53,7 +53,7 @@ For a quick setup of AgentKit, use the steps below, where both the backend app a - Follow the installation instructions above and swap `docker-compose.yml` with `docker-compose-demo.yml` to run the app - Try the prompt "How many artists and songs are there in the database?" to see AgentKit in action! -Check out a more advanced [demo](https://agentkit.infra.x.bcg.com) build following the [tutorial](docs/docusaurus/docs/tutorial/tutorial.md). +Check out a more advanced [demo](https://agentkit.infra.x.bcg.com) build following the [tutorial](https://agentkit.infra.x.bcg.com/docs/tutorial/). ## Set up your own app - Configure your Agent and Tools [link](docs/docusaurus/docs/configuration/configure_agent_and_tools.md) @@ -63,12 +63,12 @@ Check out a more advanced [demo](https://agentkit.infra.x.bcg.com) build followi ## Documentation Find the [hosted documentation here](https://agentkit.infra.x.bcg.com/docs/introduction). -- [Installation instructions for running frontend or entire app outside Docker](docs/docusaurus/docs/setup/setup_development.md) -- [Key concepts](docs/docusaurus/docs/how_it_works/key_concepts.md) -- [Agent and Tools configuration](docs/docusaurus/docs/configuration/configure_agent_and_tools.md) -- [UI configuration](docs/docusaurus/docs/configuration/configure_ui.md) -- [Optional features](docs/docusaurus/docs/advanced/optional_features.md) -- [Tool library](docs/docusaurus/docs/tool_library/) +- [Installation instructions for running frontend or entire app outside Docker](https://agentkit.infra.x.bcg.com/docs/setup/setup_development) +- [Key concepts](https://agentkit.infra.x.bcg.com/docs/how_it_works/key_concepts) +- [Agent and Tools configuration](https://agentkit.infra.x.bcg.com/docs/configuration/configure_agent_and_tools) +- [UI configuration](https://agentkit.infra.x.bcg.com/docs/configuration/configure_ui) +- [Optional features](https://agentkit.infra.x.bcg.com/docs/advanced/optional_features) +- [Tool library](https://agentkit.infra.x.bcg.com/docs/tool_library/) ## How it works diff --git a/frontend/.env.example b/frontend/.env.example index be0ff7d6..58b44087 100644 --- a/frontend/.env.example +++ b/frontend/.env.example @@ -21,11 +21,11 @@ NEXT_PUBLIC_ENABLE_MESSAGE_FEEDBACK=false # Enables Langsmith feedback prompting # You can generate a new secret on the command line with: # openssl rand -base64 32 # https://next-auth.js.org/configuration/options#secret -NEXT_PUBLIC_USE_AUTH=false # flag to enable or disable authentication +NEXT_PUBLIC_USE_AUTH=false # Set to true to enable authentication NEXTAUTH_SECRET= # TODO: Generate a secret and add it here (see above) NEXTAUTH_URL="http://localhost:3000" NEXTAUTH_URL_INTERNAL="http://localhost:3000" -GITHUB_ENTERPRISE_URL="https://github.your.enterprise.com/" # TEMPORARY: for BCG users use https://github.gamma.bcg.com +GITHUB_ENTERPRISE_URL="https://github.your.enterprise.com/" # Next Auth Provider (Github as standard, but can be changed to others e.g. Google) GITHUB_ID="" diff --git a/frontend/src/components/ToolAppendixRenderer/CodeFlipCard/JsxDisplay.tsx b/frontend/src/components/ToolAppendixRenderer/CodeFlipCard/JsxDisplay.tsx index c750be81..543364fe 100644 --- a/frontend/src/components/ToolAppendixRenderer/CodeFlipCard/JsxDisplay.tsx +++ b/frontend/src/components/ToolAppendixRenderer/CodeFlipCard/JsxDisplay.tsx @@ -40,7 +40,7 @@ const JsxDisplay = (props: Props) => { const { code, data, graph_ref } = props let visData = data - // TODO: Current safeguard for rendering performance issues + // Current safeguard for rendering performance issues if (visData.length > 10000) { console.warn("Data too large, only rendering first 10000 rows") visData = visData.slice(0, 10000) diff --git a/frontend/src/components/ToolAppendixRenderer/CodeFlipCard/index.tsx b/frontend/src/components/ToolAppendixRenderer/CodeFlipCard/index.tsx index 4447c2c0..2fa4efc8 100644 --- a/frontend/src/components/ToolAppendixRenderer/CodeFlipCard/index.tsx +++ b/frontend/src/components/ToolAppendixRenderer/CodeFlipCard/index.tsx @@ -123,8 +123,6 @@ const CodeFlipCard = (props: Props) => { method: "GET", headers: { "Content-Type": "application/json", - // TODO: Add authorisation header (JWT) - // "Authorization": `Bearer ${API_KEY}`, }, } ) diff --git a/frontend/src/components/ToolAppendixRenderer/index.tsx b/frontend/src/components/ToolAppendixRenderer/index.tsx index 8747c81d..8f0ea5b7 100644 --- a/frontend/src/components/ToolAppendixRenderer/index.tsx +++ b/frontend/src/components/ToolAppendixRenderer/index.tsx @@ -25,7 +25,6 @@ const ToolAppendixRenderer = (props: Props) => { }) switch (data.language) { - // TODO: Separate library/application-specific (e.g. CLINGOV_URL) from generic (e.g. SQL, JSX) syntax languages in renderings case SUPPORTED_SYNTAX_LANGUAGES.SQL: case SUPPORTED_SYNTAX_LANGUAGES.JSX: case SUPPORTED_SYNTAX_LANGUAGES.CLINGOV_URL: