feat: 完善标准 Skill 包底座
- 标准化 SKILL.md、资源模型、校验规则与安全限额 - 支持流式内容存储和单、多 Skill ZIP 双向编解码
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
package com.easyagents.skill.codec;
|
||||
|
||||
import com.easyagents.skill.model.SkillPackageLimits;
|
||||
|
||||
/**
|
||||
* Skill 包读取选项。
|
||||
*/
|
||||
public final class SkillPackageReadOptions {
|
||||
|
||||
private final SkillPackageLimits limits;
|
||||
private final SkillPackageReadMode mode;
|
||||
|
||||
/**
|
||||
* 使用指定安全限额创建读取选项。
|
||||
*
|
||||
* @param limits 安全限额
|
||||
*/
|
||||
public SkillPackageReadOptions(SkillPackageLimits limits) {
|
||||
this(limits, SkillPackageReadMode.COMMIT_ON_VALID);
|
||||
}
|
||||
|
||||
/**
|
||||
* 使用指定安全限额和内容处理模式创建读取选项。
|
||||
*
|
||||
* @param limits 安全限额
|
||||
* @param mode 内容处理模式
|
||||
*/
|
||||
public SkillPackageReadOptions(SkillPackageLimits limits, SkillPackageReadMode mode) {
|
||||
this.limits = limits == null ? SkillPackageLimits.defaults() : limits;
|
||||
this.mode = mode == null ? SkillPackageReadMode.COMMIT_ON_VALID : mode;
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建默认读取选项。
|
||||
*
|
||||
* @return 默认读取选项
|
||||
*/
|
||||
public static SkillPackageReadOptions defaults() {
|
||||
return new SkillPackageReadOptions(SkillPackageLimits.defaults());
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建只返回校验报告且不提交内容的读取选项。
|
||||
* 二进制资源的 contentRef 仅表示内容哈希身份,不承诺可通过内容存储打开。
|
||||
*
|
||||
* @return 只读预检选项
|
||||
*/
|
||||
public static SkillPackageReadOptions reportOnly() {
|
||||
return new SkillPackageReadOptions(SkillPackageLimits.defaults(), SkillPackageReadMode.REPORT_ONLY);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取安全限额。
|
||||
*
|
||||
* @return 安全限额
|
||||
*/
|
||||
public SkillPackageLimits getLimits() {
|
||||
return limits;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取内容处理模式。
|
||||
*
|
||||
* @return 内容处理模式
|
||||
*/
|
||||
public SkillPackageReadMode getMode() {
|
||||
return mode;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user