← 返回
未分类 Key

Alibabacloud Dms Data Agent Platform Setup

Create an agent platform instance in DMS via Alibaba Cloud OpenAPI. Supports Simple Mode and Advanced Mode. Use this skill when the user wants to provision,...
通过阿里云 OpenAPI 在 DMS 中创建 Agent 平台实例,支持简单模式和高级模式,适用于用户需要配置的场景。
sdk-team
未分类 clawhub v0.0.1 1 版本 99532.7 Key: 需要
★ 0
Stars
📥 213
下载
💾 0
安装
1
版本
#latest

概述

Create Dify Instance

Provision a Dify instance automatically via Alibaba Cloud OpenAPI.

Supports Simple Mode (create all resources from scratch) and Advanced Mode (fine-grained control over each component).

Prerequisites

1. Check Aliyun CLI

> [REQUIRED] Verify Aliyun CLI version >= 3.3.1 before proceeding.

aliyun version

If the command is not found or the version is below 3.3.1, install or upgrade:

macOS (Homebrew, recommended)

brew install aliyun-cli
# Upgrade if already installed
brew upgrade aliyun-cli

After installation, enable automatic plugin installation:

aliyun configure set --auto-plugin-install true

2. Enable Aliyun CLI AI-Mode

Before executing any CLI commands in this skill, run the following to enable AI-Mode, set the User-Agent, and update plugins:

aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-dms-data-agent-platform-setup"
aliyun plugin update

> [REQUIRED] Run aliyun configure ai-mode disable after the workflow is complete.

3. Configure Alibaba Cloud Credentials

> [REQUIRED] Both credential sets must be configured — Aliyun CLI credentials AND Python SDK credentials. Neither can be omitted.

> NEVER read, echo, or print AK/SK values.

This skill performs two types of operations, each using a different credential method:

  • Query instance list (aliyun dms-enterprise list-instances): uses Aliyun CLI credentials
  • Provision Dify instance (openAPI_call.py): uses the Alibaba Cloud default credential chain

3a. Configure Aliyun CLI Credentials

aliyun configure list

Confirm that a valid profile exists in the output (AK, STS, or OAuth).

If no valid profile exists, stop and prompt the user to:

  1. Obtain an AccessKey from the Alibaba Cloud Console
  2. Configure credentials outside of this session to avoid exposing secrets:

```bash

aliyun configure set \

--mode AK \

--access-key-id \

--access-key-secret \

--region cn-hangzhou

```

  1. Re-run aliyun configure list to confirm the profile is active

3b. Configure Python Script Credentials

openAPI_call.py uses the Alibaba Cloud default credential chain — no environment variables need to be set manually. The SDK automatically resolves credentials in the following order: environment variables, credentials file, instance RAM role, etc.

Configure your credentials by following the official guide:

Alibaba Cloud Python SDK v2 — Manage Access Credentials

> NEVER hardcode AK/SK values in code or pass them as command-line arguments.

4. Python Environment

It is recommended to use uv to create an isolated virtual environment with pinned dependencies:

uv venv .venv
uv pip install --python .venv/bin/python -r scripts/requirements.txt

requirements.txt is provided in ./scripts/.

Script Location

./scripts/openAPI_call.py

> Run commands from the directory containing this skill.md file.


Simple Mode

All components (Workspace, database, KV store, vector database) are newly created.

Parameters to Collect from User

ParameterDescription
------------------------
VpcIdVPC ID
VSwitchIdVSwitch ID
BackupVSwitchIdBackup VSwitch ID
SecurityGroupIdSecurity Group ID
ZoneIdAvailability Zone ID
DataRegionData region
WorkspaceNameName for the new Workspace
AccountDatabase account (used for DbInstanceAccount, KvStoreAccount, VectordbAccount; default: dify_user)
PasswordDatabase password (used for DbInstancePassword, KvStorePassword, VectordbPassword)
DryRunRecommended: set to true for a dry run first, then false to provision

Execution Command

.venv/bin/python ./scripts/openAPI_call.py '{
    "VpcId": "<VpcId>",
    "VSwitchId": "<VSwitchId>",
    "BackupVSwitchId": "<BackupVSwitchId>",
    "SecurityGroupId": "<SecurityGroupId>",
    "ZoneId": "<ZoneId>",
    "DataRegion": "<DataRegion>",
    "ResourceQuota": "12CU",
    "WorkspaceOption": "CreateNewInstance",
    "WorkspaceName": "<WorkspaceName>",
    "DatabaseOption": "CreateNewInstance",
    "DbInstanceAccount": "<account>",
    "DbInstancePassword": "<password>",
    "KvStoreOption": "CreateNewInstance",
    "KvStoreAccount": "<account>",
    "KvStorePassword": "<password>",
    "VectordbOption": "CreateNewInstance",
    "VectordbAccount": "<account>",
    "VectordbPassword": "<password>",
    "StorageType": "cloud_essd",
    "NatGatewayOption": "NoNeed",
    "MajorVersion": "1.13.x",
    "Edition": "OpenCommunity",
    "DryRun": true
}'

Advanced Mode

Allows fine-grained control over all parameters, including using existing Workspace, database, KV store, and vector database instances.

Step 1: Collect Base Network Parameters

Ask the user for the following:

ParameterDescription
------------------------
VpcIdVPC ID
VSwitchIdVSwitch ID
BackupVSwitchIdBackup VSwitch ID
SecurityGroupIdSecurity Group ID
ZoneIdAvailability Zone ID
DataRegionData region

Step 2: Confirm WorkspaceOption

Ask the user: use an existing Workspace or create a new one?

  • UseExistingInstance: user must provide WorkspaceId (string)
  • CreateNewInstance: user must provide WorkspaceName
  • Note: WorkspaceId and WorkspaceName are mutually exclusive. If both are provided, prompt the user to correct the input.

Step 3: Confirm Each Sub-Service Option Individually

Ask the user to choose for each of the following independently:

DatabaseOption

  • CreateNewInstance: no additional parameters needed; uses default configuration
  • UseExistingInstance:
  • Ask the user if they know the DbResourceId (integer)
  • If not, run the following command and find the InstanceId from InstanceList.Instance:

```bash

aliyun dms-enterprise list-instances --endpoint dms-enterprise.aliyuncs.com

```

KvStoreOption

  • CreateNewInstance: no additional parameters needed
  • UseExistingInstance:
  • Ask the user if they know the KvStoreResourceId (integer)
  • If not, run:

```bash

aliyun dms-enterprise list-instances --endpoint dms-enterprise.aliyuncs.com

```

VectordbOption

  • CreateNewInstance: no additional parameters needed
  • UseExistingInstance:
  • Ask the user if they know the VectordbResourceId (integer)
  • If not, run:

```bash

aliyun dms-enterprise list-instances --endpoint dms-enterprise.aliyuncs.com

```

Step 4: Collect Account and Password

Ask the user for account name and password, and fill in:

  • DbInstanceAccount / DbInstancePassword
  • KvStoreAccount / KvStorePassword
  • VectordbAccount / VectordbPassword

Step 5: Confirm Other Advanced Parameters

The following parameters have default values. Ask the user if any need to be changed:

ParameterDefaultAllowed Values
------------------------------------
ResourceQuota12CUCustom string
Replicas1Integer
NatGatewayOptionNoNeedNoNeed, Enable
PayTypePrePaidPrePaid, PostPaid
PayPeriodTypeMonthMonth, Year
PayPeriod1Integer
MajorVersion1.13.xCustom string
EditionOpenCommunityOpenCommunity, Community, Enterprise
EnableExtraEndpointtruetrue, false
OnlyIntranetfalsetrue, false
DryRuntrueRecommended: true for dry run first, then false to provision

Step 6: Dry Run and Final Provisioning

  1. Construct the full JSON with DryRun=true and run the script
  2. After confirming no errors, set DryRun to false and run again to provision

Notes

  • The Python script uses the Alibaba Cloud default credential chain; configure credentials per the official guide before running the script
  • WorkspaceId (use existing Workspace) and WorkspaceName (create new Workspace) are mutually exclusive
  • DbResourceId, KvStoreResourceId, and VectordbResourceId are all integer types
  • Always perform a dry run with DryRun=true before final provisioning
  • After the workflow is complete, run aliyun configure ai-mode disable to disable AI-Mode

版本历史

共 1 个版本

  • v0.0.1 当前
    2026-05-21 15:48 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

Alibabacloud Find Skills

sdk-team
用于搜索、发现、浏览或查找阿里云(Alibaba Cloud)代理技能。触发词包括“查找X技能”“搜索阿里云…”等。
★ 0 📥 979

Alibabacloud Lindorm Agent Skill

sdk-team
阿里云Lindorm云原生多模型数据库技能,涵盖实例管理、监控、性能、存储、连接、备份、迁移等。
★ 1 📥 546

Alibabacloud Rds Copilot

sdk-team
阿里云RDS Copilot智能运维助手技能。用于RDS相关智能问答、SQL优化、实例运维和故障排查。
★ 1 📥 789