feat: 增加技能管理模块试验性功能,等待优化

This commit is contained in:
2026-06-08 16:52:41 +08:00
parent 55434466d4
commit 13e848ddf4
29 changed files with 2622 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
package com.easyagents.skill.factory;
import com.easyagents.skill.model.*;
import com.easyagents.skill.util.SkillFrontmatter;
import java.util.List;
import java.util.Map;
/**
* Skill 标准构建入口。
*/
public final class SkillFactory {
private SkillFactory() {
}
/**
* 基于 SKILL.md 内容创建 Skill。
*
* @param id Skill ID
* @param skillContent SKILL.md 原始内容
* @return Skill 聚合
*/
public static Skill create(String id, String skillContent) {
return create(id, skillContent, null, null, null);
}
/**
* 基于 SKILL.md 内容和资源列表创建 Skill。
*
* @param id Skill ID
* @param skillContent SKILL.md 原始内容
* @param references reference 文档列表
* @param scripts script 脚本列表
* @param assets asset 资产列表
* @return Skill 聚合
*/
public static Skill create(String id, String skillContent, List<SkillReference> references,
List<SkillScript> scripts, List<SkillAsset> assets) {
Map<String, Object> values = SkillFrontmatter.parse(skillContent);
Skill skill = new Skill();
skill.setId(id);
skill.setName(values.get("name").toString());
skill.setDescription(values.get("description").toString());
skill.setMetadata(new SkillMetadata(values));
skill.setSkillContent(skillContent);
skill.setReferences(references);
skill.setScripts(scripts);
skill.setAssets(assets);
return skill;
}
}