* Parse and validate hooks from frontmatter. * Returns undefined if hooks are not defined or invalid.
( frontmatter: FrontmatterData, skillName: string, )
| 134 | * Returns undefined if hooks are not defined or invalid. |
| 135 | */ |
| 136 | function parseHooksFromFrontmatter( |
| 137 | frontmatter: FrontmatterData, |
| 138 | skillName: string, |
| 139 | ): HooksSettings | undefined { |
| 140 | if (!frontmatter.hooks) { |
| 141 | return undefined |
| 142 | } |
| 143 | |
| 144 | const result = HooksSchema().safeParse(frontmatter.hooks) |
| 145 | if (!result.success) { |
| 146 | logForDebugging( |
| 147 | `Invalid hooks in skill '${skillName}': ${result.error.message}`, |
| 148 | ) |
| 149 | return undefined |
| 150 | } |
| 151 | |
| 152 | return result.data |
| 153 | } |
| 154 | |
| 155 | /** |
| 156 | * Parse paths frontmatter from a skill, using the same format as CLAUDE.md rules. |
no test coverage detected