feat(agent): 移除control_node实例化,新增系统节点命名与人设管理前端

当前阶段只保留regulatory+consciousness两个系统节点,control_node代码保留但不再实例化。
系统节点新增display_name字段支持自定义显示名称,前端新增人设管理Tab支持模板CRUD。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-06-04 06:03:28 +00:00
parent 9a7a5edd6e
commit f3a92a793e
11 changed files with 567 additions and 47 deletions
@@ -13,10 +13,8 @@
# limitations under the License.
from typing import List, Optional
from sqlalchemy import String
from sqlalchemy.dialects.postgresql import (
JSONB,
) # 针对 Postgres 优化,支持索引和高性能解析
from sqlalchemy import String, Text
from sqlalchemy.dialects.postgresql import JSONB
from sqlalchemy.orm import Mapped, mapped_column
from .base import BaseDataModel
@@ -29,8 +27,14 @@ class SystemNodeConfigModel(BaseDataModel):
__tablename__ = "system_node_config"
node_name: Mapped[str] = mapped_column(String(100), primary_key=True)
display_name: Mapped[Optional[str]] = mapped_column(
String(100), nullable=True, comment="管理员可自定义的显示名称,用于前端展示"
)
provider_title: Mapped[str] = mapped_column(String(50), nullable=False)
model_id: Mapped[str] = mapped_column(String(100), nullable=False)
tools: Mapped[Optional[List[str]]] = mapped_column(
JSONB, default=list, comment="节点可调用的工具标识列表"
)
custom_system_prompt: Mapped[Optional[str]] = mapped_column(
Text, nullable=True, comment="管理员自定义追加的提示词,拼接在默认 system prompt 之后"
)