DataWorks Copilot 系统设置

DataWorks Copilot设置是用于配置智能助手功能的核心模块,目前涵盖 MCP Servers 和 Rules 两项能力,分别支持外部工具服务接入与 AI 规则管理,用以全面提升开发效率与代码质量。

MCP Server

MCP (Model Context Protocol) Server 是 Copilot Agent 执行任务时依赖的后端工具服务集合,为查询、分析和代码生成等操作提供工具与数据源与API。在设置中心可以查看DataWorks官方内置的 Alibaba Cloud-DataWorks-MCP-Server及相关工具。

访问MCP Servers管理界面

  1. 单击DataWorks界面右上角的Copilot图标,打开DataWorks Copilot面板。

  2. 单击Copilot面板的image设置按钮,进入设置中心。默认进入MCP Servers页签。

管理MCP Server

MCP Servers列表页面,可以查看当前已配置的DataWorks 内置的 MCP Server及其工具列表。

使用MCP Server

MCP Server相关工具可以在Copilot Agent中使用,详情参见:DataWorks Copilot Agent

Rules配置

Rules(上下文规则)是为 DataWorks Copilot 注入持久化上下文、规范与偏好的核心机制,从而确保其生成的代码与回答能精准遵循特定要求。

Rules的类型与权限

DataWorks 提供企业级和个人级两种类型的 Rules:

类型

定义与用途

权限控制

生效范围

企业级Rules

由管理员统一制定,用于沉淀和推行公共的开发规范,如数仓分层命名法、代码风格标准、核心表使用说明等。

工作空间管理员及更高级别用户可创建、编辑和管理。

支持全局生效或指定到特定工作空间。

个人级Rules

由开发者个人创建和维护,用于封装个人的编码习惯、常用代码片段、个人项目说明等。

仅对当前用户可见并生效,其他用户无法查看或使用。

个人范围,在用户所有可访问的工作空间中均可调用。

创建与管理Rules

Copilot设置中,切换到Rules页签。在Rules管理界面,您可以:

  • 通过页签切换,分别管理企业级Rules个人Rules

  • 查看已有规则的名称、生效机制、生效范围等信息。

  • 查看、编辑或删除已有规则。

  • 单击新增Rule 按钮创建新规则。

创建/编辑Rule时,需要配置以下核心属性:

属性

功能说明

规则名称

Rule设定一个易于识别的名称和详细的功能描述。

规则内容

Rule的核心,即您希望提供给AI的具体上下文prompt信息。可以填写要求Copilot自动生成代码时需要执行的规范和标准等内容。

生效机制

定义Rule被自动引入对话的策略,对齐Cursor的设计理念:

  • 总是应用:每次对话都会自动加载此Rule。

  • 手动应用:默认不加载,仅在对话中被用户添加至上下文时生效。

生效范围

企业级Rule支持设置生效范围,控制此Rule在哪些地方可见和可用。

  • 指定工作空间:仅对指定的工作空间下的成员生效。配置时,可选范围仅限于拥有管理员权限的工作空间列表

  • 全部工作空间:租户级生效。

以下是Rule规则内容举例:

  • 规则名称:表名及节点命名规范。

  • 规则内容:如下。

    # DataWorks数仓(ODS/DWD/DWS/ADS)表与节点命名规范
    作为一名资深的数据仓库架构师,你在DataWorks中创建任何表或节点时,都必须严格遵循以下命名规范。这些规范是确保数据资产清晰、可维护和一致性的核心要求。
    
    ### 1 表命名规范(Table Naming Convention)
    所有表名必须遵循统一的结构化范式。
    
    #### 1.1 核心命名公式
    分层前缀_[自定义描述]_[更新策略后缀]
    
    #### 1.2 分层前缀 (Layer Prefix) - [硬性要求]
    -   DIM (维度层):  必须以 `dim_` 开头。
    -   DWD (明细层):  必须以 `dwd_` 开头。
    -   DWS (汇总层):  必须以 `dws_` 开头。
    -   ADS (应用层):  必须以 `ads_` 开头。
    
    #### 1.3 更新策略后缀 (Update Strategy Suffix) - [硬性要求]
    -   DIM (维度层): 使用 _df 后缀,代表每日全量快照 (Daily Full Snapshot)。
    -   DWD (明细层): 使用 _di 后缀,代表每日增量数据 (Daily Incremental)。使用 _df 后缀,代表每日全量快照 (Daily Full Snapshot)。
    -   DWS / ADS (汇总/应用层): 使用 _1d, _7d, _nd 等后缀,代表其数据聚合的周期(例如:近1天、近7天、近N天)。
    
    #### 1.4 分隔符
    表名中的所有单词必须使用小写字母,并由单个下划线 `_` 分隔。
    
    #### 1.5 命名示例
    -   DIM表示例: `dim_user_info_df` (用户信息维度表,每日全量)
    -   DWD表示例 (增量):  `dwd_trade_order_detail_di` (交易订单明细,每日增量)
    -   DWD表示例 (全量):  `dwd_product_base_info_df` (商品基础信息,每日全量)
    -   DWS表示例:  `dws_user_active_uv_7d` (用户近7日活跃UV汇总)
    -   ADS表示例:  `ads_screen_kpi_overview_1d` (大屏核心KPI概览,每日)
    
    ### 2.节点命名规范 (Node Naming Convention)
    
    节点名称应清晰地反映其产出的核心表和处理逻辑。
    
    -   命名原则:  节点名应与其产出的主要表的名称保持高度一致,以 `[分层]_[业务逻辑]` 的格式命名。
    -   示例: 
        -   产出表 `dwd_trade_order_detail_di` 的ODPS SQL节点,应命名为 `dwd_trade_order_detail_di`。
        -   如果一个节点处理复杂的逻辑,可以命名为 `dws_build_user_active_uv_7d`。
    
    ### 3.自我检查清单
    
    在完成命名后,请依据此清单进行检查:
    1.  表名是否以正确的分层前缀 (`dim_`, `dwd_`, `dws_`, `ads_`) 开头。
    2.  表名是否以正确的更新策略后缀 (`_df`, `_di`, `_1d` 等) 结尾。
    3.  所有单词是否均用下划线 `_` 分隔。
    4.  节点名是否清晰地反映了其功能和产出。

在对话中使用 Rules

配置好的 Rules 会在您与 Copilot 的日常交互中发挥作用。

  • 对于设置为总是应用的规则,无需任何额外操作。Copilot 在生成代码或回答时,会默认将这些规则作为背景知识和约束条件。

  • 对于设置为手动应用的规则,可以在对话时通过以下方式主动启用:

    1. 单击输入框下方的 + 添加上下文按钮。

    2. 在弹出的上下文菜单中,选择 Rules,然后点选您希望本次对话应用的具体规则。

相关文档