summaryrefslogtreecommitdiff
path: root/server/continuedev/plugins/recipes/TemplateRecipe/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'server/continuedev/plugins/recipes/TemplateRecipe/main.py')
-rw-r--r--server/continuedev/plugins/recipes/TemplateRecipe/main.py29
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.",
+ )