feat(knowledge): 笔记页实体可点击筛选 + chip 美化
- 实体改为按钮:点击即在左侧列表筛出提及该实体的知识(清空来源/状态筛选) - chip 加阴影/hover 上浮/类型 ring 标签/实体区 Sparkles 图标,更精致 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
b70ed38d51
commit
f6af9379b7
3 files changed
+152
-126
No files matched your search
@@ -149,6 +149,7 @@ class SkillResponse(BaseModel):
|
||||
"""Response model for skill information."""
|
||||
|
||||
name: str = Field(..., description="Name of the skill")
|
||||
name_zh: str | None = Field(default=None, description="用户配置或大模型生成的中文名称")
|
||||
description: str = Field(..., description="Description of what the skill does")
|
||||
license: str | None = Field(None, description="License information")
|
||||
category: SkillCategory = Field(..., description="Category of the skill (public or custom)")
|
||||
@@ -313,16 +314,19 @@ def _skill_to_response(
|
||||
detail = ownership.get("detail")
|
||||
|
||||
display = None if display_override is _UNSET else display_override
|
||||
if display_override is _UNSET:
|
||||
try:
|
||||
skill_config = get_extensions_config().skills.get(skill.name)
|
||||
if skill_config and skill_config.display:
|
||||
name_zh: str | None = None
|
||||
try:
|
||||
skill_config = get_extensions_config().skills.get(skill.name)
|
||||
if skill_config:
|
||||
if display_override is _UNSET and skill_config.display:
|
||||
display = skill_config.display.model_dump(by_alias=True)
|
||||
except Exception:
|
||||
logger.debug("Failed to read display adapter for %s", skill.name, exc_info=True)
|
||||
name_zh = skill_config.name_zh or None
|
||||
except Exception:
|
||||
logger.debug("Failed to read extensions config for %s", skill.name, exc_info=True)
|
||||
|
||||
return SkillResponse(
|
||||
name=skill.name,
|
||||
name_zh=name_zh,
|
||||
description=skill.description,
|
||||
license=skill.license,
|
||||
category=skill.category,
|
||||
@@ -2142,6 +2146,7 @@ async def update_skill(skill_name: str, request: SkillUpdateRequest, config: App
|
||||
extensions_config.skills[skill_name] = SkillStateConfig(
|
||||
enabled=request.enabled,
|
||||
display=current_skill_config.display if current_skill_config else None,
|
||||
name_zh=current_skill_config.name_zh if current_skill_config else None,
|
||||
)
|
||||
|
||||
config_data = _dump_extensions_config(extensions_config)
|
||||
|
||||
Reference in new issue
Block a user