Files
ai-agent/internal/ai/skills/candidate_loader.go
T
mlogclub 5d7c10aeab refactor: rename agent widget references to AI agent for consistency
- Updated runtime configuration to use __CS_AI_AGENT_WIDGET_CONFIG__ instead of __CS_AGENT_WIDGET_CONFIG__.
- Changed message types in support host bridge from "cs-agent" to "cs-ai-agent".
- Minified SDK script updated to reflect new AI agent naming conventions.
- Adjusted scrollbar styles in main.scss to use .cs-ai-agent-scrollbar instead of .cs-agent-scrollbar.
2026-05-30 21:19:36 +08:00

34 lines
924 B
Go

package skills
import (
"cs-ai-agent/internal/models"
"cs-ai-agent/internal/pkg/enums"
"cs-ai-agent/internal/pkg/utils"
"cs-ai-agent/internal/repositories"
"github.com/mlogclub/simple/sqls"
)
var newCandidateLoader = func() *candidateLoader {
return &candidateLoader{}
}
type candidateLoader struct {
}
func (l *candidateLoader) findManualSkillDefinition(skillCode string) *models.SkillDefinition {
return repositories.SkillDefinitionRepository.GetByCode(sqls.DB(), skillCode)
}
func (l *candidateLoader) loadCandidateSkills(aiAgent models.AIAgent) []models.SkillDefinition {
skillIDs := utils.SplitInt64s(aiAgent.SkillIDs)
skills := repositories.SkillDefinitionRepository.GetByIDs(sqls.DB(), skillIDs)
ret := make([]models.SkillDefinition, 0, len(skillIDs))
for _, id := range skillIDs {
if skill, ok := skills[id]; ok && skill.Status == enums.StatusOk {
ret = append(ret, skill)
}
}
return ret
}