summaryrefslogtreecommitdiff
path: root/server/continuedev/plugins/recipes/ContinueRecipeRecipe/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'server/continuedev/plugins/recipes/ContinueRecipeRecipe/main.py')
-rw-r--r--server/continuedev/plugins/recipes/ContinueRecipeRecipe/main.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/server/continuedev/plugins/recipes/ContinueRecipeRecipe/main.py b/server/continuedev/plugins/recipes/ContinueRecipeRecipe/main.py
new file mode 100644
index 00000000..3dff2e15
--- /dev/null
+++ b/server/continuedev/plugins/recipes/ContinueRecipeRecipe/main.py
@@ -0,0 +1,43 @@
+from textwrap import dedent
+
+from ....core.main import Step
+from ....core.sdk import ContinueSDK
+from ....plugins.steps.main import EditHighlightedCodeStep
+
+
+class ContinueStepStep(Step):
+ name: str = "Write your own Continue Step."
+ prompt: str
+
+ async def run(self, sdk: ContinueSDK):
+ await sdk.run_step(
+ EditHighlightedCodeStep(
+ user_input=dedent(
+ f"""\
+ Here is an example of a Step that runs a command and then edits a file.
+
+ ```python
+ from ...core.main import Step
+ from ...core.sdk import ContinueSDK
+
+ class RunCommandAndEditFileStep(Step):
+ name: str = "Run a command and then edit a file."
+ command: str
+ file_path: str
+ prompt: str
+
+ async def run(self, sdk: ContinueSDK):
+ await sdk.run([command])
+ await sdk.edit_file(filename=self.file_path, prompt=self.prompt)
+ ```
+
+ Please edit the code to write your own Step that does the following:
+
+ {self.prompt}
+
+ It should be a subclass of Step as above, implementing the `run` method, and using pydantic attributes to define the parameters.
+
+ """
+ )
+ )
+ )