- **文件管理**: - 支持文件上传、解析和删除。 - 限制支持格式(txt, md, docx, pdf),最大 10MB。 - 提供前端上传区、文件列表及后端解析服务。 - **技能管理**: - 新增技能的创建、更新及删除功能。 - 支持分配自定义提示词和工具权限。 - 提供技能列表及分组工具选择交互界面。 同时调整相关 API 和前端组件,优化协作体验。
This commit is contained in:
@@ -74,6 +74,33 @@ class Chapter(SQLModel, table=True):
|
||||
updated_at: datetime = Field(default_factory=_now_utc)
|
||||
|
||||
|
||||
class NovelFile(SQLModel, table=True):
|
||||
"""小说关联文件"""
|
||||
|
||||
id: Optional[int] = Field(default=None, primary_key=True)
|
||||
novel_id: int = Field(foreign_key="novel.id", index=True)
|
||||
filename: str = Field(max_length=255) # 原始文件名
|
||||
stored_name: str = Field(max_length=255) # 磁盘存储名(uuid + 扩展名)
|
||||
file_size: int = Field(default=0) # 字节数
|
||||
mime_type: str = Field(default="", max_length=100)
|
||||
text_length: int = Field(default=0) # 解析后纯文本字符数
|
||||
created_at: datetime = Field(default_factory=_now_utc)
|
||||
|
||||
|
||||
class Skill(SQLModel, table=True):
|
||||
"""Skill 插件:自定义系统提示词 + 工具白名单"""
|
||||
|
||||
id: Optional[int] = Field(default=None, primary_key=True)
|
||||
name: str = Field(max_length=100, index=True)
|
||||
description: str = Field(default="", max_length=500)
|
||||
system_prompt: str = Field(default="")
|
||||
allowed_tools: str = Field(default="[]") # JSON 数组字符串,"[]" 表示全部工具
|
||||
is_builtin: bool = Field(default=False)
|
||||
novel_id: int | None = Field(default=None, foreign_key="novel.id", index=True)
|
||||
created_at: datetime = Field(default_factory=_now_utc)
|
||||
updated_at: datetime = Field(default_factory=_now_utc)
|
||||
|
||||
|
||||
class WorldSetting(SQLModel, table=True):
|
||||
"""世界观设定,每部小说一条记录"""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user