diff options
Diffstat (limited to 'server/continuedev/plugins/recipes/TemplateRecipe/main.py')
-rw-r--r-- | server/continuedev/plugins/recipes/TemplateRecipe/main.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/server/continuedev/plugins/recipes/TemplateRecipe/main.py b/server/continuedev/plugins/recipes/TemplateRecipe/main.py new file mode 100644 index 00000000..01ae364d --- /dev/null +++ b/server/continuedev/plugins/recipes/TemplateRecipe/main.py @@ -0,0 +1,29 @@ +from typing import Coroutine + +from ....core.main import Observation, Step +from ....core.sdk import ContinueSDK, Models + + +class TemplateRecipe(Step): + """ + A simple recipe that appends a print statement to the currently open file. + Use this as a template to create your own! + """ + + # Parameters for the recipe + name: str + + # A title for the recipe, to be displayed in the GUI + title = "Template Recipe" + + # A description of what the recipe accomplished, to be displayed in the GUI + async def describe(self, models: Models) -> Coroutine[str, None, None]: + return f"Appended a statement to print `Hello, {self.name}!` at the end of the file." + + # The code executed when the recipe is run + async def run(self, sdk: ContinueSDK) -> Coroutine[Observation, None, None]: + visible_files = await sdk.ide.getVisibleFiles() + await sdk.edit_file( + filename=visible_files[0], + prompt=f"Append a statement to print `Hello, {self.name}!` at the end of the file.", + ) |