[ PROMPT_NODE_26106 ]
Skill Developer Skill Rules Reference
[ SKILL_DOCUMENTATION ]
# skill-rules.json - 完整参考
`.claude/skills/skill-rules.json` 的完整架构与配置参考。
## 目录
- [文件位置](#文件位置)
- [完整 TypeScript 架构](#完整-typescript-架构)
- [字段指南](#字段指南)
- [示例:护栏技能](#示例-护栏技能)
- [示例:领域技能](#示例-领域技能)
- [验证](#验证)
---
## 文件位置
**路径:** `.claude/skills/skill-rules.json`
此 JSON 文件定义了自动激活系统的所有技能及其触发条件。
---
## 完整 TypeScript 架构
typescript
interface SkillRules {
version: string;
skills: Record;
}
interface SkillRule {
type: 'guardrail' | 'domain';
enforcement: 'block' | 'suggest' | 'warn';
priority: 'critical' | 'high' | 'medium' | 'low';
promptTriggers?: {
keywords?: string[];
intentPatterns?: string[]; // 正则表达式字符串
};
fileTriggers?: {
pathPatterns: string[]; // Glob 模式
pathExclusions?: string[]; // Glob 模式
contentPatterns?: string[]; // 正则表达式字符串
createOnly?: boolean; // 仅在文件创建时触发
};
blockMessage?: string; // 用于护栏技能,支持 {file_path} 占位符
skipConditions?: {
sessionSkillUsed?: boolean; // 如果在会话中已使用则跳过
fileMarkers?: string[]; // 例如 ["@skip-validation"]
envOverride?: string; // 例如 "SKIP_DB_VERIFICATION"
};
}
---
## 字段指南
### 顶层字段
| 字段 | 类型 | 必填 | 描述 |
|-------|------|----------|-------------|
| `version` | string | 是 | 架构版本 (当前为 "1.0") |
| `skills` | object | 是 | 技能名称到 SkillRule 的映射 |
### SkillRule 字段
| 字段 | 类型 | 必填 | 描述 |
|-------|------|----------|-------------|
| `type` | string | 是 | "guardrail" (强制) 或 "domain" (建议) |
| `enforcement` | string | 是 | "block" (PreToolUse), "suggest" (UserPromptSubmit), 或 "warn" |
| `priority` | string | 是 | "critical", "high", "medium", 或 "low" |
| `promptTriggers` | object | 否 | UserPromptSubmit 钩子的触发器 |
| `fileTriggers` | object | 否 | PreToolUse 钩子的触发器 |
| `blockMessage` | string | 可选* | 当 enforcement="block" 时必填。使用 `{file_path}` 占位符 |
| `skipConditions` | object | 否 | 逃生舱和会话跟踪 |
*护栏技能必填