refactor(opencode-skill-loader): split loader and merger into focused modules

Extract skill loading pipeline into single-responsibility modules:
- skill-discovery.ts, skill-directory-loader.ts, skill-deduplication.ts
- loaded-skill-from-path.ts, loaded-skill-template-extractor.ts
- skill-template-resolver.ts, skill-definition-record.ts
- git-master-template-injection.ts, allowed-tools-parser.ts
- skill-mcp-config.ts, skill-resolution-options.ts
- merger/ directory for skill merging logic
This commit is contained in:
YeonGyu-Kim
2026-02-08 16:21:19 +09:00
parent 964c8f61fd
commit 2beb29f326
20 changed files with 769 additions and 674 deletions
@@ -0,0 +1,12 @@
import { readFileSync } from "node:fs"
import { parseFrontmatter } from "../../shared/frontmatter"
import type { LoadedSkill } from "./types"
export function extractSkillTemplate(skill: LoadedSkill): string {
if (skill.path) {
const content = readFileSync(skill.path, "utf-8")
const { body } = parseFrontmatter(content)
return body.trim()
}
return skill.definition.template || ""
}