fix(skill): 目录层 essential 基础规范必显示——project-directory-spec 标记 essential:true,目录层排序 essential 优先,避免 global scope 低优先级被截断

This commit is contained in:
yumoqing 2026-08-21 18:41:09 +08:00
parent 905e01f581
commit 70b9df480c
2 changed files with 5 additions and 1 deletions

View File

@ -66,6 +66,7 @@ class Skill:
version: str = "1.0.0" version: str = "1.0.0"
capability: str = "" # 配套能力名(如 task_capability / communication) capability: str = "" # 配套能力名(如 task_capability / communication)
tools: List[str] = field(default_factory=list) # 配套工具名列表 tools: List[str] = field(default_factory=list) # 配套工具名列表
essential: bool = False # 基础规范:所有角色目录层必显示(如 project-directory-spec)
@classmethod @classmethod
def from_file(cls, filepath: str, scope: str = "global", def from_file(cls, filepath: str, scope: str = "global",
@ -77,6 +78,7 @@ class Skill:
version = "1.0.0" version = "1.0.0"
capability = "" capability = ""
tools = [] tools = []
essential = False
try: try:
with open(filepath, "r", encoding="utf-8") as f: with open(filepath, "r", encoding="utf-8") as f:
@ -93,6 +95,7 @@ class Skill:
scope = fm.get("scope", scope) scope = fm.get("scope", scope)
capability = fm.get("capability", "") or "" capability = fm.get("capability", "") or ""
tools = fm.get("tools", []) or [] tools = fm.get("tools", []) or []
essential = str(fm.get("essential", "")).lower() in ("true", "1", "yes")
if not description: if not description:
for line in content.split("\n"): for line in content.split("\n"):
@ -105,7 +108,7 @@ class Skill:
name=name, path=filepath, description=description, name=name, path=filepath, description=description,
content=content, scope=scope, scope_id=scope_id, content=content, scope=scope, scope_id=scope_id,
trigger_keywords=trigger_keywords, version=version, trigger_keywords=trigger_keywords, version=version,
capability=capability, tools=tools, capability=capability, tools=tools, essential=essential,
) )
def to_prompt_block(self) -> str: def to_prompt_block(self) -> str:

View File

@ -1,6 +1,7 @@
--- ---
name: project-directory-spec name: project-directory-spec
description: 项目目录规范——项目工作空间目录结构与各目录作用(README.md 项目说明 + repos/ 下按 项目工程文档(_pc)/应用(_app)/独立模块 三类独立仓库组织)。所有 SDLC 角色产出与检查前必读,路径以此为准。 description: 项目目录规范——项目工作空间目录结构与各目录作用(README.md 项目说明 + repos/ 下按 项目工程文档(_pc)/应用(_app)/独立模块 三类独立仓库组织)。所有 SDLC 角色产出与检查前必读,路径以此为准。
essential: true
--- ---
# 项目目录规范 # 项目目录规范