HarmonyOS掌上记账APP开发实践第84篇:HarmonyOS应用开发的AI Agent工具DevEco Code常用命令

HarmonyOS掌上记账APP开发实践第84篇:HarmonyOS应用开发的AI Agent工具DevEco Code常用命令 命令为重复任务创建自定义命令。自定义命令允许你指定一个提示词当在 TUI 中执行该命令时会运行这个提示词。/my-command自定义命令是/init、/undo、/redo、/help等内置命令之外的补充。了解更多。创建命令文件在commands/目录中创建 markdown 文件来定义自定义命令。创建.deveco/commands/test.md--- description: Run tests with coverage agent: build model: deveco/glm-5.1 --- Run the full test suite with coverage report and show any failures. Focus on the failing tests and suggest fixes.frontmatter 定义命令属性内容则成为模板。通过输入/后跟命令名称来使用该命令。/test配置你可以通过 DevEco Code 配置或在commands/目录中创建 markdown 文件来添加自定义命令。JSON在 DevEco Code 配置中使用command选项{ $schema: https://opencode.ai/config.json, command: { // This becomes the name of the command test: { // This is the prompt that will be sent to the LLM template: Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes., // This is shown as the description in the TUI description: Run tests with coverage, agent: build, model: deveco/glm-5.1 } } }现在你可以在 TUI 中运行这个命令/testMarkdown你还可以使用 markdown 文件定义命令。将它们放在全局~/.config/deveco/commands/项目级.deveco/commands/--- description: Run tests with coverage agent: build model: deveco/glm-5.1 --- Run the full test suite with coverage report and show any failures. Focus on the failing tests and suggest fixes.markdown 文件名即为命令名。例如test.md允许你运行/test提示词配置自定义命令的提示词支持多种特殊占位符和语法。参数使用$ARGUMENTS占位符向命令传递参数。--- description: Create a new component --- Create a new React component named $ARGUMENTS with TypeScript support. Include proper typing and basic structure.带参数运行命令/component Button$ARGUMENTS将被替换为Button。你还可以使用位置参数访问各个参数$1- 第一个参数$2- 第二个参数$3- 第三个参数以此类推...例如--- description: Create a new file with content --- Create a file named $1 in the directory $2 with the following content: $3运行命令/create-file config.json src { \key\: \value\ }替换结果为$1替换为config.json$2替换为src$3替换为 Shell 输出使用!command将 bash 命令输出注入到提示词中。例如创建一个分析测试覆盖率的自定义命令--- description: Analyze test coverage --- Here are the current test results: !npm test Based on these results, suggest improvements to increase coverage.或者查看最近的更改--- description: Review recent changes --- Recent git commits: !git log --oneline -10 Review these changes and suggest any improvements.命令在项目的根目录中运行其输出会成为提示词的一部分。文件引用使用后跟文件名在命令中引用文件。--- description: Review component --- Review the component in src/components/Button.tsx. Check for performance issues and suggest improvements.文件内容会自动包含在提示词中。选项让我们详细了解各配置选项。Templatetemplate选项定义执行命令时发送给 LLM 的提示词。{ command: { test: { template: Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes. } } }这是一个必需的配置选项。Description使用description选项提供命令功能的简要描述。{ command: { test: { description: Run tests with coverage } } }当你输入命令时这将在 TUI 中显示为描述。Agent使用agent配置可选地指定由哪个代理执行此命令。如果这是一个子代理该命令默认会触发子代理调用。要禁用此行为请将subtask设置为false。{ command: { review: { agent: plan } } }这是一个可选的配置选项。如果未指定默认使用你当前的代理。Subtask使用subtask布尔值强制命令触发子代理调用。如果你希望命令不污染主要上下文这会很有用它会强制代理作为子代理运行即使代理配置中的mode设置为primary。{ command: { analyze: { subtask: true } } }这是一个可选的配置选项。Model使用model配置覆盖此命令的默认模型。{ command: { analyze: { model: deveco/glm-5.1 } } }这是一个可选的配置选项。内置命令deveco 包含多个内置命令如/init、/undo、/redo、/help了解更多。Note自定义命令可以覆盖内置命令。如果你定义了同名的自定义命令它将覆盖内置命令。