feat(agents): add available-skills resolution with tests

This commit is contained in:
YeonGyu-Kim
2026-04-28 10:47:49 +09:00
parent 79ba0e6f32
commit 6327a7aca7
2 changed files with 30 additions and 2 deletions
@@ -0,0 +1,27 @@
import { describe, expect, test } from "bun:test"
import { buildAvailableSkills } from "./available-skills"
describe("buildAvailableSkills", () => {
test("includes team-mode when team mode is enabled", () => {
// given
const discoveredSkills = []
// when
const availableSkills = buildAvailableSkills(discoveredSkills, undefined, undefined, true)
// then
expect(availableSkills.some((skill) => skill.name === "team-mode")).toBe(true)
})
test("excludes team-mode when team mode is disabled", () => {
// given
const discoveredSkills = []
// when
const availableSkills = buildAvailableSkills(discoveredSkills, undefined, undefined, false)
// then
expect(availableSkills.some((skill) => skill.name === "team-mode")).toBe(false)
})
})
@@ -12,9 +12,10 @@ function mapScopeToLocation(scope: SkillScope): AvailableSkill["location"] {
export function buildAvailableSkills(
discoveredSkills: LoadedSkill[],
browserProvider?: BrowserAutomationProvider,
disabledSkills?: Set<string>
disabledSkills?: Set<string>,
teamModeEnabled?: boolean,
): AvailableSkill[] {
const builtinSkills = createBuiltinSkills({ browserProvider, disabledSkills })
const builtinSkills = createBuiltinSkills({ browserProvider, disabledSkills, teamModeEnabled })
const builtinSkillNames = new Set(builtinSkills.map(s => s.name))
const builtinAvailable: AvailableSkill[] = builtinSkills.map((skill) => ({