跳到主要内容

Skill

NineData-Skill 是面向 AI Agent 和 Vibe Coding 工具的技能能力集合。通过 Skill,AI Agent 可以在 NineData 的身份验证、权限检查、SQL 规则检查、数据掩码、限流和审计日志约束下,调用 NineData 平台能力完成数据源查询、SQL 执行、SQL 审批提交流程等操作。

功能说明

  • SQL 执行:用于在具备权限的数据源上下文中执行明确的 SQL,或获取执行计划等信息。
  • SQL 任务:用于将 SQL 提交到安全审批流程,适合需要规则检查、审批和审计的变更场景。
  • 平台能力调用:支持 AI Agent 结合 NineData 的 OpenAPI 调用平台能力,例如列出数据源、检查数据库状态或验证开发数据。
  • 安全管控:Skill 调用会受到 NineData 账号身份、组织权限、SQL 规则、数据掩码、限流和审计日志等机制约束。

使用场景

场景说明
查询可访问数据源让 Agent 获取当前凭证可访问的数据源列表,辅助选择目标环境。
只读数据查询在授权范围内执行明确的查询 SQL,并返回结果预览。
SQL 执行计划分析对待执行 SQL 获取执行计划或诊断信息,辅助评估风险。
SQL 任务提交对涉及数据或结构变更的 SQL,通过 NineData SQL 任务提交审批流程。
自动化辅助开发在 Vibe Coding 或 Agent 工作流中,让 Agent 基于 NineData 权限边界完成数据验证。

注意事项

  • 在让 AI Agent 调用 Skill 前,请先确认目标数据源、SQL 内容和账号权限符合预期。
  • 对于会修改数据或结构的 SQL,建议优先使用 SQL 任务能力提交审批流程。
  • 对于只读查询、执行计划查看或开发数据验证等场景,可根据组织权限和安全规则使用 SQL 执行能力。
  • Skill 返回的结果可作为 AI Agent 的辅助判断依据,正式执行变更前仍建议结合审批、审计和业务影响进行复核。
  • 不要让 Agent 直接连接数据库,也不要在 Skill 中保存数据库账号密码。
  • 不要在对话、日志或提交记录中暴露 accessKeySecret、Cookie、Token、签名或数据库凭证。
  • 当平台返回拒绝、失败、需要确认、需要 SQL 任务或需要审批时,不要绕过平台裁决重新提交。
  • approverejecttransfer-approval 等审批操作属于高风险操作,必须由用户明确指定具体动作后再执行。
警告

不要将 accessKeySecret、Cookie、Token、签名或数据库凭证写入文档、截图、对话记录或代码仓库。配置文件应仅保存在本地 Agent 运行环境,并设置合适的文件权限。

前提条件

  • 已登录 NineData 控制台。
  • 当前账号已具备访问 Skill 页面的权限。
  • 如需通过 Skill 执行 SQL 或提交 SQL 任务,当前账号需具备目标数据源和相关 DevOps 流程的操作权限。

页面操作

NineData-Skill 页面右上角,可以使用以下操作:

操作说明
描述查看 NineData-Skill 的版本、工具 ID、调用方式、OpenAPI 端点、返回字段和使用边界。
下载下载 ninedata-skill.zip。压缩包中包含 Skill 说明、配置示例、客户端安装参考和调用脚本。
快速配置引导查看 Claude Code、Codex、Cursor、Hermes、OpenClaw、Trae、Qoder、Open Code 等客户端的安装目录和验证提示词。

查看 Skill 能力

  1. 登录 NineData 控制台

  2. 在左侧导航栏中,单击 Skill

  3. NineData-Skill 页面查看当前支持的 Skill 能力。

    页面会展示 Skill 的用途说明,并以列表形式展示功能名称、功能描述和发布时间。

下载并配置 Skill

  1. NineData-Skill 页面右上角,单击下载图标,下载 ninedata-skill.zip

  2. 解压压缩包,得到 ninedata-skill 目录。

  3. 将完整的 ninedata-skill 目录复制到目标 AI Agent 客户端的 Skill 目录。

    客户端安装目录示例
    Claude Code~/.claude/skills/ninedata-skill/
    Codex~/.codex/skills/ninedata-skill/
    Cursor~/.cursor/skills/ninedata-skill/
    Hermes Agent~/.hermes/skills/ninedata-skill/
    OpenClaw~/.openclaw/skills/ninedata-skill/
    Trae~/.trae/skills/ninedata-skill/
    Qoder~/.qoder/skills/ninedata-skill/
    Open Code~/.opencode/skills/ninedata-skill/
  4. 在 Skill 根目录中编辑 config.json

    {
    "endpoint": "https://your-ninedata-domain.example.com",
    "accessKeyId": "replace-with-access-key-id",
    "accessKeySecret": "replace-with-access-key-secret",
    "defaultDsId": "replace-with-default-datasource-id",
    "defaultDbName": "replace-with-default-database-name",
    "defaultSchemaName": "replace-with-default-schema-name",
    "source": "NINEDATA_SKILL",
    "defaultPageSize": 50,
    "defaultLanguage": "enus"
    }
    配置项说明
    endpointNineData 控制台访问地址。SaaS 可填写 https://console.ninedata.cloud,私有化或专属集群环境请填写实际控制台地址。
    accessKeyIdaccessKeySecretNineData OpenAPI 凭证。请妥善保管,不要写入对话、日志或代码仓库。
    defaultDsId默认数据源 ID。查询数据源列表时可不配置;执行 SQL 时如未通过参数指定数据源,则使用该值。
    defaultDbName默认数据库名称。
    defaultSchemaName默认 Schema 名称。不同数据库类型按需填写。
    source调用来源,建议保留 NINEDATA_SKILL
    defaultPageSize默认分页大小。
    defaultLanguage返回信息语言,例如 enus
  5. 设置配置文件权限。

    chmod 600 config.json
  6. 确认客户端允许执行 Skill 目录下的 scripts/*.sh 脚本,然后重启客户端或开启新的 Agent 会话。

  7. 在 Agent 对话中明确要求使用 NineData Skill。

    使用 ninedata-skill 查询我可访问的 MySQL 数据源。

使用 Skill 查询数据

Skill 配置完成后,您可以在 AI Agent 客户端中用自然语言描述查询需求。例如:

使用 ninedata-skill 查询生产 MySQL 数据源中的订单数量。

Agent 应先识别可访问的数据源,并向您展示将要执行的完整 SQL。确认 SQL 内容、目标数据源和查询目的无误后,再让 Agent 继续提交。

NineData 会根据平台规则返回执行结果或下一步建议。常见结果包括:

  • 查询已执行,并返回结果预览。
  • 需要再次确认完整 SQL。
  • 当前 SQL 被权限、规则或安全策略拒绝。
  • 当前 SQL 需要通过 SQL 任务或审批流程处理。
  • 数据库执行失败,并返回错误信息和请求 ID。

返回结果说明

返回结果说明
查询结果预览NineData 已在权限范围内执行查询,并返回部分结果。
需要确认Agent 或平台需要您确认目标数据源、SQL 内容或执行影响。
被规则拒绝SQL 命中权限、数据掩码、SQL 规范或安全策略限制。
需要 SQL 任务当前 SQL 不适合直接执行,需要提交到 SQL 任务流程。
执行失败数据库返回错误信息,可结合错误内容继续排查。

使用 Skill 提交 SQL 变更

如果需要执行会修改数据或结构的 SQL,例如 INSERTUPDATEDELETECREATEALTERDROP 等,Agent 应通过 NineData SQL 任务提交,而不是直接执行。

典型流程如下:

  1. 在 AI Agent 客户端中描述变更需求。

    使用 ninedata-skill 为测试库提交一条 SQL 任务,给 orders 表新增 remark 字段。
  2. Agent 展示目标数据源、数据库、完整 SQL 和可选回滚 SQL。

  3. 确认内容无误后,明确同意提交 SQL 任务。

  4. NineData 创建 SQL 任务并返回任务 ID、规则检查结果、审批状态和控制台任务链接。

  5. 根据任务状态继续提交审批、等待审批或执行任务。

对于审批、执行、暂停、恢复、终止、取消、驳回、转交审批等操作,Agent 应先展示当前任务状态和操作影响,并在获得您的明确确认后再继续。

使用建议

  • 首次配置后,先让 Agent 查询可访问的数据源,确认凭证、端点和权限配置正确。
  • 对查询类请求,请要求 Agent 展示完整 SQL、目标数据源和返回范围后再执行。
  • 对变更类请求,请优先使用 SQL 任务,保留规则检查、审批、执行和审计链路。
  • 对生产环境操作,请让 Agent 先说明影响范围、回滚思路和需要确认的风险点。
  • 如果 Agent 返回平台拒绝或需要审批,请按 NineData 返回结果处理,不要绕过平台安全策略。

相关文档