跳到主要内容

团队提示

探索新的合作方式并与您的团队分享您的才华。

默认的 Team Prompts 路径是prompts/,它是prompts/位于项目根目录中的目录。

AutoDev 目前使用 Apache Velocity 模板引擎,允许您通过修改模板文件来定制您的团队提示。

如果您对模板文件进行了更改,请确保保存它们,否则,IDE 将无法识别您的修改。

格式

团队提示文件格式是 .vtl,即 Velocity 模板语言文件格式。它包含三个部分:

  • 前置配置,即 YAML 格式的提示配置
  • 聊天角色,如 system, user, 将以 ``` 开始并以 ```结束,例如:
    ```system```
  • 聊天内容,即提示内容

前置配置

---
interaction: AppendCursorStream # 交互类型,支持 AppendCursorStream, ChatPanel, AppendCursor, OutputFile
priority: 99
batchFileRegex: ".*" # 匹配批处理文件的正则表达式
codeOnly: false # 只显示代码部分
---

Priority 是提示优先级,优先级越高,提示在顶部显示的位置越靠前。

  • 默认操作优先级为 900~999,如 Chat with xx, Code complete 等。

交互类型:

  • AppendCursor,提示将插入到光标位置
  • AppendCursorStream,提示将插入到光标位置
  • ChatPanel,提示将插入到聊天面板
  • OutputFile,提示将插入到输出文件,output-{timestamp}.{extension},扩展名将从结果的语言中解析。
  • ReplaceSelection,提示将替换当前选择(自版本@1.6.3起)
  • ReplaceCurrentFile,提示将替换当前文件(自版本@1.8.6起)

英文示例

变量列表: https://ide.unitmesh.cc/variables

    ---
interaction: AppendCursorStream
---
```user```

You are an experienced software development engineer skilled in using Test-Driven Development (TDD) to develop software.
You need to help users write test code based on their requirements.

${frameworkContext}

The current class-related code is as follows:

${beforeCursor}

The user's requirement is: ${selection}

Please use ```@Test to begin writing your code block:

full TDD example: https://github.com/unit-mesh/untitled/tree/english/prompts

中文示例(Chinese example):

变量列表: AutoDev 模板变量

---
interaction: AppendCursorStream
---

你是一个资深的软件开发工程师,你擅长使用 TDD 的方式来开发软件,你现在需要帮助帮手开发人员做好 Tasking,以方便于编写测试用例。

- Tasking 产生的任务都是具有独立业务价值的,每完成一条,都可以独立交付、产生价值。
- 采用面向业务需求的 Tasking 采用业务语言描述任务列表,更有助于开发人员和业务人员对需求进行详细的沟通和确认。
- 采用 Given When Then 的书写格式,其中 When 中所代表系统行为。
- 要考虑业务场景覆盖率,尽可能考虑到边界条件

请严格按照以下的格式输出。

示例如下:

Question: 开发一个出租车计费功能,它的计算规则是这样的:不超过8公里时每公里收费0.8元,超过8公里则每公里加收50%长途费,停车等待时每分钟加收0.25元。
Answer: ###
${commentSymbol} Given 出租车行驶了5公里(8公里以内),未发生等待,When 计费,Then 收费4元
${commentSymbol} Given 出租车行驶了5公里(8公里以内),等待10分钟,When 计费,Then 收费6.5元
${commentSymbol} Given 出租车恰好行驶了8公里,未发生等待,When 计费,Then 收费6.4元
${commentSymbol} Given 出租车恰好行驶了8公里,等待10分钟,When 计费,Then 收费8.9元
###
Question: ${selection}
Answer: ###

完整的 TDD 示例:https://github.com/unit-mesh/untitled/tree/master/prompts

Batch File example

核心点:batchFileRegex 用于匹配批量文件,codeOnly: true 只将纯代码部分放入文件,interaction: ReplaceCurrentFile 用于替换当前文件。

    ---
interaction: ReplaceCurrentFile
batchFileRegex: "**/*.ts"
codeOnly: true
---

重构用户的代码。
要求:只在一个 markdown 代码块返回重构完的代码

${all}