summaryrefslogtreecommitdiff
path: root/continuedev
diff options
context:
space:
mode:
Diffstat (limited to 'continuedev')
-rw-r--r--continuedev/src/continuedev/core/config.py10
-rw-r--r--continuedev/src/continuedev/core/policy.py12
-rw-r--r--continuedev/src/continuedev/libs/util/step_name_to_steps.py6
-rw-r--r--continuedev/src/continuedev/recipes/WritePytestsRecipe/main.py4
-rw-r--r--continuedev/src/continuedev/steps/comment_code.py4
5 files changed, 23 insertions, 13 deletions
diff --git a/continuedev/src/continuedev/core/config.py b/continuedev/src/continuedev/core/config.py
index cf723984..ed056be9 100644
--- a/continuedev/src/continuedev/core/config.py
+++ b/continuedev/src/continuedev/core/config.py
@@ -43,6 +43,16 @@ class ContinueConfig(BaseModel):
description="Deploy a dlt pipeline to Airflow",
step_name="DeployPipelineAirflowRecipe",
),
+ SlashCommand(
+ name="comment",
+ description="Write comments for the current file or highlighted code",
+ step_name="CommentCodeStep",
+ ),
+ SlashCommand(
+ name="pytest",
+ description="Write pytest unit tests for the current file",
+ step_name="WritePytestsRecipe",
+ )
]
diff --git a/continuedev/src/continuedev/core/policy.py b/continuedev/src/continuedev/core/policy.py
index 37a10e36..51135f70 100644
--- a/continuedev/src/continuedev/core/policy.py
+++ b/continuedev/src/continuedev/core/policy.py
@@ -41,15 +41,11 @@ class DemoPolicy(Policy):
after_command = " ".join(user_input.split(" ")[1:])
for slash_command in config.slash_commands:
if slash_command.name == command_name[1:]:
- return get_step_from_name(slash_command.step_name, slash_command.params)
+ params = slash_command.params
+ params["user_input"] = after_command
+ return get_step_from_name(slash_command.step_name, params)
- if "/pytest" in user_input.lower():
- return WritePytestsRecipe(instructions=user_input)
- if "/pytest" in observation.user_input.lower():
- return WritePytestsRecipe(instructions=observation.user_input)
- elif "/comment" in observation.user_input.lower():
- return CommentCodeStep()
- elif "/ask" in user_input:
+ if "/ask" in user_input:
return AnswerQuestionChroma(question=" ".join(user_input.split(" ")[1:]))
elif "/edit" in user_input:
return EditFileChroma(request=" ".join(user_input.split(" ")[1:]))
diff --git a/continuedev/src/continuedev/libs/util/step_name_to_steps.py b/continuedev/src/continuedev/libs/util/step_name_to_steps.py
index 4023b73b..fe784964 100644
--- a/continuedev/src/continuedev/libs/util/step_name_to_steps.py
+++ b/continuedev/src/continuedev/libs/util/step_name_to_steps.py
@@ -7,6 +7,8 @@ from ...recipes.DDtoBQRecipe.main import DDtoBQRecipe
from ...recipes.DeployPipelineAirflowRecipe.main import DeployPipelineAirflowRecipe
from ...recipes.DDtoBQRecipe.main import DDtoBQRecipe
from ...recipes.AddTransformRecipe.main import AddTransformRecipe
+from ...recipes.WritePytestsRecipe.main import WritePytestsRecipe
+from ...steps.comment_code import CommentCodeStep
step_name_to_step_class = {
"UserInputStep": UserInputStep,
@@ -14,7 +16,9 @@ step_name_to_step_class = {
"DDtoBQRecipe": DDtoBQRecipe,
"DeployPipelineAirflowRecipe": DeployPipelineAirflowRecipe,
"AddTransformRecipe": AddTransformRecipe,
- "DDtoBQRecipe": DDtoBQRecipe
+ "DDtoBQRecipe": DDtoBQRecipe,
+ "WritePytestsRecipe": WritePytestsRecipe,
+ "CommentCodeStep": CommentCodeStep,
}
diff --git a/continuedev/src/continuedev/recipes/WritePytestsRecipe/main.py b/continuedev/src/continuedev/recipes/WritePytestsRecipe/main.py
index 5994aa89..a19caf8b 100644
--- a/continuedev/src/continuedev/recipes/WritePytestsRecipe/main.py
+++ b/continuedev/src/continuedev/recipes/WritePytestsRecipe/main.py
@@ -7,7 +7,7 @@ import os
class WritePytestsRecipe(Step):
for_filepath: Union[str, None] = None
- instructions: str = "Write unit tests for this file."
+ user_input: str = "Write unit tests for this file."
async def run(self, sdk: ContinueSDK):
if self.for_filepath is None:
@@ -35,7 +35,7 @@ class WritePytestsRecipe(Step):
Here are additional instructions:
- "{self.instructions}"
+ "{self.user_input}"
Here is a complete set of pytest unit tests:""")
tests = sdk.models.gpt35.complete(prompt)
diff --git a/continuedev/src/continuedev/steps/comment_code.py b/continuedev/src/continuedev/steps/comment_code.py
index c538347b..aa17e62c 100644
--- a/continuedev/src/continuedev/steps/comment_code.py
+++ b/continuedev/src/continuedev/steps/comment_code.py
@@ -1,5 +1,5 @@
from ..core.main import ContinueSDK, Models, Step
-from .main import StarCoderEditHighlightedCodeStep
+from .main import EditHighlightedCodeStep
class CommentCodeStep(Step):
@@ -9,4 +9,4 @@ class CommentCodeStep(Step):
return "Writing comments"
async def run(self, sdk: ContinueSDK):
- await sdk.run_step(StarCoderEditHighlightedCodeStep(user_input="Wrote comprehensive comments in the canonical format for every class and function"))
+ await sdk.run_step(EditHighlightedCodeStep(user_input="Write comprehensive comments in the canonical format for every class and function"))