feat(tools/delegate-task): add skill-resolver module
- Add skill-resolver.ts for resolving skill configurations
- Handles skill loading and configuration resolution
- Part of modular delegate-task refactoring effort
🤖 Generated with assistance of OhMyOpenCode
This commit is contained in:
parent
6717349e5b
commit
83a05630cd
21
src/tools/delegate-task/skill-resolver.ts
Normal file
21
src/tools/delegate-task/skill-resolver.ts
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
import type { GitMasterConfig, BrowserAutomationProvider } from "../../config/schema"
|
||||||
|
import { resolveMultipleSkillsAsync } from "../../features/opencode-skill-loader/skill-content"
|
||||||
|
import { discoverSkills } from "../../features/opencode-skill-loader"
|
||||||
|
|
||||||
|
export async function resolveSkillContent(
|
||||||
|
skills: string[],
|
||||||
|
options: { gitMasterConfig?: GitMasterConfig; browserProvider?: BrowserAutomationProvider, disabledSkills?: Set<string> }
|
||||||
|
): Promise<{ content: string | undefined; error: string | null }> {
|
||||||
|
if (skills.length === 0) {
|
||||||
|
return { content: undefined, error: null }
|
||||||
|
}
|
||||||
|
|
||||||
|
const { resolved, notFound } = await resolveMultipleSkillsAsync(skills, options)
|
||||||
|
if (notFound.length > 0) {
|
||||||
|
const allSkills = await discoverSkills({ includeClaudeCodePaths: true })
|
||||||
|
const available = allSkills.map(s => s.name).join(", ")
|
||||||
|
return { content: undefined, error: `Skills not found: ${notFound.join(", ")}. Available: ${available}` }
|
||||||
|
}
|
||||||
|
|
||||||
|
return { content: Array.from(resolved.values()).join("\n\n"), error: null }
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user