feat(copilot): rename copilot modes for clarity and add mode-specific tools

- Rename "teaching" mode to "teaching_assistant" for better clarity
- Rename "lab_assistant" mode to "lab_automation_assistant" to reflect expanded capabilities
- Implement mode-specific tool sets: teaching_assistant gets read-only diagnostic tools only, while lab_automation_assistant gets full diagnostic and configuration tools
- Update API documentation examples to reflect new mode names
- Maintain backward compatibility with default tool set initialization
This commit is contained in:
YueGuobin committed 2026-03-05 21:44:36 +08:00
1 parent 28f2fe03e6
commit 54775faaf4
5 files changed
+61 -28

No files matched your search

@@ -50,7 +50,7 @@ class LLMModelConfigData(BaseModel):
)
copilot_mode: Optional[str] = Field(
None,
description="GNS3-Copilot mode: 'teaching' (diagnostics only) or 'lab_assistant' (full configuration access)"
description="GNS3-Copilot mode: 'teaching_assistant' (diagnostics only) or 'lab_automation_assistant' (full configuration access)"
)
# Allow extra fields for extensibility
@@ -78,7 +78,7 @@ class LLMModelConfigCreate(BaseModel):
)
copilot_mode: Optional[str] = Field(
None,
description="GNS3-Copilot mode: 'teaching' (diagnostics only) or 'lab_assistant' (full configuration access)"
description="GNS3-Copilot mode: 'teaching_assistant' (diagnostics only) or 'lab_automation_assistant' (full configuration access)"
)
# Allow extra config fields
@@ -107,7 +107,7 @@ class LLMModelConfigUpdate(BaseModel):
)
copilot_mode: Optional[str] = Field(
None,
description="GNS3-Copilot mode: 'teaching' (diagnostics only) or 'lab_assistant' (full configuration access)"
description="GNS3-Copilot mode: 'teaching_assistant' (diagnostics only) or 'lab_automation_assistant' (full configuration access)"
)
# Allow extra config fields