<task>
Generate a hotword list for Doubao speech recognition from project code
</task>

<context>
{{#if projectPaths}}
Scan the following projects to generate hotwords:
{{#each projectPaths}}
- {{{displayName}}}: {{{path}}}
{{/each}}
{{else}}
Scan the following project to generate hotwords: {{{projectPath}}}
{{/if}}
</context>

<working_directory>
{{#if projectPaths}}
Scan all project paths listed above
{{else}}
Use this project path as working directory: {{{projectPath}}}
{{/if}}
</working_directory>

<requirements>
  <requirement>
    Hotword limits:
    - Maximum 2000 hotwords
    - Each hotword maximum 50 characters
    - One hotword per line
  </requirement>
  <requirement>
    Hotword types:
    - Project-specific terminology (class names, function names, module names)
    - Domain-specific vocabulary
    - Common abbreviations
    - Business domain terms
  </requirement>
  <requirement>
    Scan scope:
    - Source code files (.cs, .ts, .tsx, .py, .js, .java, .go, etc.)
    - Configuration files
    - Documentation files (README, docs/)
  </requirement>
  <requirement>
    Filter rules:
    - Exclude common programming keywords (if, for, class, function, etc.)
    - Exclude common framework/library names
    - Focus on project-specific terms
  </requirement>
</requirements>

<analysis>
1. Scan project code to identify key terminology
2. Filter out common programming and framework vocabulary
3. Sort hotwords by importance (frequency, business relevance)
4. Ensure not exceeding 2000 words limit
5. Ensure each hotword not exceeding 50 characters
</analysis>

<output_format>
Output hotword file content in the following format (do not wrap in code blocks, output text directly):

hotword1
hotword2
hotword3
...

One hotword per line, without punctuation or numbering.
</output_format>

<output_location>
Use the Write tool to save the hotword file to the following path:
{{{outputPath}}}/hotwords.llm.txt

Note: The file will be saved in the backend file system and not returned to the frontend. Users need to manually copy the hotword content.
</output_location>

<final_instruction>
After generation:
1. Clearly inform the user that the hotword file has been saved to the backend path
2. Display the complete file path, e.g.: Saved to: /path/to/project/hotwords.llm.txt
3. Display the first 50 hotwords as a preview
</final_instruction>
