diff --git a/packages/extension-agent/src/service/sub_agent.ts b/packages/extension-agent/src/service/sub_agent.ts index f87058592..8c508d4cd 100644 --- a/packages/extension-agent/src/service/sub_agent.ts +++ b/packages/extension-agent/src/service/sub_agent.ts @@ -187,12 +187,7 @@ export class ChatLunaAgentSubAgentService { return undefined } - const next = this.permission.createSubAgentToolMask(info) - const base = - ctx.parent?.toolMask ?? - ctx.runConfig?.configurable?.toolMask - const names = this.ctx.chatluna.platform.getFilteredTools(next) - const mask = buildSubAgentToolMask(base, names) + const mask = this.permission.createSubAgentToolMask(info) return { agent: await createSubAgent({ @@ -331,31 +326,3 @@ function isRunnable(info: SubAgentInfo) { !info.shadowedBy ) } - -function buildSubAgentToolMask(base: ToolMask | undefined, names: string[]) { - if (!base) { - return buildToolMask(names) - } - - const allow = names.filter((name) => { - if (base.mode === 'all') { - return true - } - - if (base.mode === 'allow') { - return base.allow.includes(name) - } - - return !base.deny.includes(name) - }) - - return buildToolMask(allow) -} - -function buildToolMask(allow: string[]): ToolMask { - return { - mode: 'allow', - allow, - deny: [] - } -}