summaryrefslogtreecommitdiff
path: root/continuedev/src/continuedev/plugins/recipes/TemplateRecipe/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'continuedev/src/continuedev/plugins/recipes/TemplateRecipe/main.py')
-rw-r--r--continuedev/src/continuedev/plugins/recipes/TemplateRecipe/main.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/continuedev/src/continuedev/plugins/recipes/TemplateRecipe/main.py b/continuedev/src/continuedev/plugins/recipes/TemplateRecipe/main.py
new file mode 100644
index 00000000..197abe85
--- /dev/null
+++ b/continuedev/src/continuedev/plugins/recipes/TemplateRecipe/main.py
@@ -0,0 +1,29 @@
+from typing import Coroutine
+from ....core.main import Step, Observation
+from ....core.sdk import ContinueSDK
+from ....core.sdk import 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!
+ """
+
+ # Paremeters 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."
+ )