<task>
为项目生成豆包语音识别热词列表
</task>

<context>
{{#if projectPaths}}
需要扫描以下项目生成热词：
{{#each projectPaths}}
- {{{displayName}}}: {{{path}}}
{{/each}}
{{else}}
需要扫描以下项目生成热词：{{{projectPath}}}
{{/if}}
</context>

<working_directory>
{{#if projectPaths}}
请扫描以上列出的所有项目路径
{{else}}
使用此项目路径作为工作目录：{{{projectPath}}}
{{/if}}
</working_directory>

<requirements>
  <requirement>
    热词限制：
    - 最多 2000 个热词
    - 每个热词最多 50 字符
    - 每行一个热词
  </requirement>
  <requirement>
    语言比例（重要）：
    - 中文热词占比 80%
    - 英文热词占比 20%（仅保留代码中的必要英文术语）
    - 优先提取中文业务术语、领域词汇
  </requirement>
  <requirement>
    热词类型：
    - 项目特定术语（类名、函数名、模块名）
    - 领域专业词汇（中文优先）
    - 常见缩写
    - 业务领域专有名词（中文优先）
  </requirement>
  <requirement>
    扫描范围：
    - 源代码文件（.cs, .ts, .tsx, .py, .js, .java, .go 等）
    - 配置文件
    - 文档文件（README, docs/）
  </requirement>
  <requirement>
    过滤规则：
    - 排除通用编程关键字（if, for, class, function 等）
    - 排除常见框架库名称
    - 专注于项目特有术语
  </requirement>
</requirements>

<analysis>
1. 扫描项目代码，识别关键术语
2. 过滤掉通用编程词汇和常见框架词汇
3. 按重要性排序热词（使用频率、业务相关性）
4. 确保不超过 2000 个词的限制
5. 每个热词确保不超过 50 字符
</analysis>

<output_format>
按以下格式输出热词文件内容（不要用代码块包裹，直接输出文本）：

热词1
热词2
热词3
...

每行一个热词，不带任何标点符号或编号。
</output_format>

<output_location>
请使用 Write 工具将热词文件保存到以下路径：
{{{outputPath}}}/hotwords.llm.txt

注意：文件将保存在后端文件系统中，不会返回给前端。用户需要手动复制热词内容。
</output_location>

<final_instruction>
生成完成后：
1. 明确告知用户热词文件已保存到后端路径
2. 显示完整的文件路径，例如：已保存到: /path/to/project/hotwords.llm.txt
3. 显示前 50 个热词作为预览
</final_instruction>
