From 5c049f2f3d797babb91c62ec752bf6a2c4c2f16a Mon Sep 17 00:00:00 2001 From: Ty Dunn Date: Mon, 29 May 2023 15:29:28 +0200 Subject: initial structure --- docs/docs/create-a-recipe.md | 64 ------------------------------- docs/docs/getting-started.md | 1 + docs/docs/how-continue-works.md | 9 +++++ docs/docs/install.md | 1 + docs/docs/intro.md | 4 +- docs/docs/sdk.md | 1 + docs/docs/telemetry.md | 1 + docs/docs/walkthroughs/create-a-recipe.md | 64 +++++++++++++++++++++++++++++++ docs/docs/walkthroughs/share-a-recipe.md | 1 + docs/docs/walkthroughs/use-a-recipe.md | 1 + docs/docs/walkthroughs/use-the-gui.md | 1 + docs/sidebars.js | 18 ++++++++- 12 files changed, 98 insertions(+), 68 deletions(-) delete mode 100644 docs/docs/create-a-recipe.md create mode 100644 docs/docs/getting-started.md create mode 100644 docs/docs/how-continue-works.md create mode 100644 docs/docs/install.md create mode 100644 docs/docs/sdk.md create mode 100644 docs/docs/telemetry.md create mode 100644 docs/docs/walkthroughs/create-a-recipe.md create mode 100644 docs/docs/walkthroughs/share-a-recipe.md create mode 100644 docs/docs/walkthroughs/use-a-recipe.md create mode 100644 docs/docs/walkthroughs/use-the-gui.md diff --git a/docs/docs/create-a-recipe.md b/docs/docs/create-a-recipe.md deleted file mode 100644 index 21d937b5..00000000 --- a/docs/docs/create-a-recipe.md +++ /dev/null @@ -1,64 +0,0 @@ -# Create a Recipe - -## 1. Create a step - -### Using the SDK - -You will want to use the SDK when you are opening directories, editing files, using models, etc. - -This will ensure that these actions are recorded as steps, so they are reviewable, reversable, and rerunnable. - -### Allow for configurability - -Steps can include optional parameters that allow users to configure them - -```python -from continueos import ContinueSDK - -class CreatePytestsStep(Step): - - input_file_path: str - output_file_prefix: str - output_dir_path: str - - async def run(self, sdk: ContinueSDK): - - code = await sdk.ide.readFile(self.input_file_path) - sdk.run_step(CreateDirStep(output_dir_path)) - sdk.run_step(WritePytestsStep(code, output_file_prefix, output_dir_path)) -``` - -### Adjust for different OS - -You might want to implement your steps, so that they can run on Linux, MacOS, and Windows. - -```python -from continueos import ContinueSDK -import platform - -class SetUpVenvStep(Step): - - async def run(self, sdk: ContinueSDK): - - os = platform.system() - - if os == "Windows": - await sdk.run("python -m venv env; .\\env\\Scripts\\activate") - else: - await sdk.run("python3 -m venv env && source env/bin/activate") # MacOS and Linux -``` - -## 2. Compose steps together - -By convention, the name of every recipe ends with `Recipe`. - -```python -class CreatePipelineRecipe(Step): - - async def run(self, sdk: ContinueSDK): - await sdk.run_step( - WaitForUserInputStep(prompt="What API do you want to load data from?") >> - SetupPipelineStep() >> - ValidatePipelineStep() - ) -``` \ No newline at end of file diff --git a/docs/docs/getting-started.md b/docs/docs/getting-started.md new file mode 100644 index 00000000..8b3a7945 --- /dev/null +++ b/docs/docs/getting-started.md @@ -0,0 +1 @@ +# Getting Started \ No newline at end of file diff --git a/docs/docs/how-continue-works.md b/docs/docs/how-continue-works.md new file mode 100644 index 00000000..e29faef8 --- /dev/null +++ b/docs/docs/how-continue-works.md @@ -0,0 +1,9 @@ +# How Continue works + +The Continue library consists of a `SDK`, a `GUI`, and a `Core` that brings everything together. + +The `SDK` gives you access to tools (e.g. open a directory, edit a file, call a model, etc), which you can use when defining how a step should work and composing them with other steps. + +The `GUI` enables you to guide steps and makes everything transparent, so you can review all steps that were automated, giving you the opportunity to undo and rerun any that ran incorrectly. + +The `Core` connects the SDK and GUI with the IDE (i.e. in VS Code, a web browser, etc), enabling the steps to make changes to your code and accelerate your software development workflows. \ No newline at end of file diff --git a/docs/docs/install.md b/docs/docs/install.md new file mode 100644 index 00000000..f34d65bd --- /dev/null +++ b/docs/docs/install.md @@ -0,0 +1 @@ +# Installation \ No newline at end of file diff --git a/docs/docs/intro.md b/docs/docs/intro.md index 854385af..286fbd2d 100644 --- a/docs/docs/intro.md +++ b/docs/docs/intro.md @@ -4,11 +4,11 @@ ### Automate more steps of your software development workflows using LLMs -#### An open-source framework to accelerate your use of LLMs while coding +#### An open-source framework to accelerate your use of models like GPT-4 while coding 1. Leverage steps created by others in your workflows as you code. 2. Customize steps and compose them together to fit your workflows. -3. Review, reverse, and rerun steps to use LLMs with confidence. +3. Review, reverse, and rerun steps to use models with confidence. ## How Continue works diff --git a/docs/docs/sdk.md b/docs/docs/sdk.md new file mode 100644 index 00000000..c7e10e85 --- /dev/null +++ b/docs/docs/sdk.md @@ -0,0 +1 @@ +# SDK \ No newline at end of file diff --git a/docs/docs/telemetry.md b/docs/docs/telemetry.md new file mode 100644 index 00000000..cf53d631 --- /dev/null +++ b/docs/docs/telemetry.md @@ -0,0 +1 @@ +# Telemetry \ No newline at end of file diff --git a/docs/docs/walkthroughs/create-a-recipe.md b/docs/docs/walkthroughs/create-a-recipe.md new file mode 100644 index 00000000..21d937b5 --- /dev/null +++ b/docs/docs/walkthroughs/create-a-recipe.md @@ -0,0 +1,64 @@ +# Create a Recipe + +## 1. Create a step + +### Using the SDK + +You will want to use the SDK when you are opening directories, editing files, using models, etc. + +This will ensure that these actions are recorded as steps, so they are reviewable, reversable, and rerunnable. + +### Allow for configurability + +Steps can include optional parameters that allow users to configure them + +```python +from continueos import ContinueSDK + +class CreatePytestsStep(Step): + + input_file_path: str + output_file_prefix: str + output_dir_path: str + + async def run(self, sdk: ContinueSDK): + + code = await sdk.ide.readFile(self.input_file_path) + sdk.run_step(CreateDirStep(output_dir_path)) + sdk.run_step(WritePytestsStep(code, output_file_prefix, output_dir_path)) +``` + +### Adjust for different OS + +You might want to implement your steps, so that they can run on Linux, MacOS, and Windows. + +```python +from continueos import ContinueSDK +import platform + +class SetUpVenvStep(Step): + + async def run(self, sdk: ContinueSDK): + + os = platform.system() + + if os == "Windows": + await sdk.run("python -m venv env; .\\env\\Scripts\\activate") + else: + await sdk.run("python3 -m venv env && source env/bin/activate") # MacOS and Linux +``` + +## 2. Compose steps together + +By convention, the name of every recipe ends with `Recipe`. + +```python +class CreatePipelineRecipe(Step): + + async def run(self, sdk: ContinueSDK): + await sdk.run_step( + WaitForUserInputStep(prompt="What API do you want to load data from?") >> + SetupPipelineStep() >> + ValidatePipelineStep() + ) +``` \ No newline at end of file diff --git a/docs/docs/walkthroughs/share-a-recipe.md b/docs/docs/walkthroughs/share-a-recipe.md new file mode 100644 index 00000000..4082d207 --- /dev/null +++ b/docs/docs/walkthroughs/share-a-recipe.md @@ -0,0 +1 @@ +# Share a recipe \ No newline at end of file diff --git a/docs/docs/walkthroughs/use-a-recipe.md b/docs/docs/walkthroughs/use-a-recipe.md new file mode 100644 index 00000000..40dc9da1 --- /dev/null +++ b/docs/docs/walkthroughs/use-a-recipe.md @@ -0,0 +1 @@ +# Use a Recipe \ No newline at end of file diff --git a/docs/docs/walkthroughs/use-the-gui.md b/docs/docs/walkthroughs/use-the-gui.md new file mode 100644 index 00000000..cfd5f214 --- /dev/null +++ b/docs/docs/walkthroughs/use-the-gui.md @@ -0,0 +1 @@ +# Use the GUI \ No newline at end of file diff --git a/docs/sidebars.js b/docs/sidebars.js index db9ae662..befe4feb 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -16,7 +16,19 @@ const sidebars = { docsSidebar: [ 'intro', - 'create-a-recipe', + 'getting-started', + 'install', + 'how-continue-works', + { + type: 'category', + label: 'Walkthroughs', + items: [ + 'walkthroughs/use-the-gui', + 'walkthroughs/use-a-recipe', + 'walkthroughs/create-a-recipe', + 'walkthroughs/share-a-recipe', + ], + }, { type: 'category', label: 'Concepts', @@ -28,11 +40,13 @@ const sidebars = { 'concepts/ide', 'concepts/llm', 'concepts/policy', - 'concepts/recipes', + 'concepts/recipe', 'concepts/sdk', 'concepts/step', ], }, + 'sdk', + 'telemetry', ], }; -- cgit v1.2.3-70-g09d2