← Back to Skills Marketplace
sdk-team

Alibabacloud Dms Data Agent Platform Setup

by alibabacloud-skills-team · GitHub ↗ · v0.0.1 · MIT-0
cross-platform ⚠ suspicious
29
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install alibabacloud-dms-data-agent-platform-setup
Description
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,...
README (SKILL.md)

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:
    aliyun configure set \
      --mode AK \
      --access-key-id \x3Cyour-access-key-id> \
      --access-key-secret \x3Cyour-access-key-secret> \
      --region cn-hangzhou
    
  3. 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

Parameter Description
VpcId VPC ID
VSwitchId VSwitch ID
BackupVSwitchId Backup VSwitch ID
SecurityGroupId Security Group ID
ZoneId Availability Zone ID
DataRegion Data region
WorkspaceName Name for the new Workspace
Account Database account (used for DbInstanceAccount, KvStoreAccount, VectordbAccount; default: dify_user)
Password Database password (used for DbInstancePassword, KvStorePassword, VectordbPassword)
DryRun Recommended: set to true for a dry run first, then false to provision

Execution Command

.venv/bin/python ./scripts/openAPI_call.py '{
    "VpcId": "\x3CVpcId>",
    "VSwitchId": "\x3CVSwitchId>",
    "BackupVSwitchId": "\x3CBackupVSwitchId>",
    "SecurityGroupId": "\x3CSecurityGroupId>",
    "ZoneId": "\x3CZoneId>",
    "DataRegion": "\x3CDataRegion>",
    "ResourceQuota": "12CU",
    "WorkspaceOption": "CreateNewInstance",
    "WorkspaceName": "\x3CWorkspaceName>",
    "DatabaseOption": "CreateNewInstance",
    "DbInstanceAccount": "\x3Caccount>",
    "DbInstancePassword": "\x3Cpassword>",
    "KvStoreOption": "CreateNewInstance",
    "KvStoreAccount": "\x3Caccount>",
    "KvStorePassword": "\x3Cpassword>",
    "VectordbOption": "CreateNewInstance",
    "VectordbAccount": "\x3Caccount>",
    "VectordbPassword": "\x3Cpassword>",
    "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:

Parameter Description
VpcId VPC ID
VSwitchId VSwitch ID
BackupVSwitchId Backup VSwitch ID
SecurityGroupId Security Group ID
ZoneId Availability Zone ID
DataRegion Data 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:
      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:
      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:
      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:

Parameter Default Allowed Values
ResourceQuota 12CU Custom string
Replicas 1 Integer
NatGatewayOption NoNeed NoNeed, Enable
PayType PrePaid PrePaid, PostPaid
PayPeriodType Month Month, Year
PayPeriod 1 Integer
MajorVersion 1.13.x Custom string
Edition OpenCommunity OpenCommunity, Community, Enterprise
EnableExtraEndpoint true true, false
OnlyIntranet false true, false
DryRun true Recommended: 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
Usage Guidance
Only use this skill with a dedicated, least-privilege Alibaba Cloud RAM role. Run a dry run first, then explicitly confirm billing mode, pay period, resource sizes, and endpoint exposure before setting DryRun=false. Avoid typing passwords into shell commands if possible, and review the CLI/plugin and Python dependency installation steps before running them.
Capability Tags
cryptorequires-oauth-tokenrequires-sensitive-credentials
Capability Assessment
Purpose & Capability
The stated purpose and included code align with creating a Dify/DMS instance through Alibaba Cloud OpenAPI, but the capability is high-impact because it can provision cloud resources.
Instruction Scope
The workflow recommends a dry run first, but the script supplies billing and endpoint defaults when parameters are omitted; actual provisioning with DryRun=false does not have a built-in confirmation step in the code.
Install Mechanism
There is no registry install spec, but SKILL.md instructs the user to install or update the Aliyun CLI, enable plugin auto-install, update plugins, and install pinned Python SDK packages.
Credentials
The default parameter set may create prepaid resources and non-intranet endpoints, so the environmental impact is broader than the minimum inputs shown in the simple-mode workflow.
Persistence & Privilege
No background persistence is shown, but the skill uses local Alibaba Cloud credential chains and recommends broad DMSFullAccess despite also documenting a least-privilege alternative.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install alibabacloud-dms-data-agent-platform-setup
  3. After installation, invoke the skill by name or use /alibabacloud-dms-data-agent-platform-setup
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.0.1
- Initial release providing automated setup of a Dify instance on Alibaba Cloud DMS. - Supports two modes: Simple Mode (all-new resources) and Advanced Mode (fine-grained, use existing resources). - Comprehensive prerequisites and step-by-step setup instructions included. - Details secure credential requirements for both the Aliyun CLI and Python SDK. - Command examples and user prompts guide collection of all required parameters. - Ensures best practices for security (never echo secrets) and environment isolation (use of Python virtual environment).
Metadata
Slug alibabacloud-dms-data-agent-platform-setup
Version 0.0.1
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is 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,... It is an AI Agent Skill for Claude Code / OpenClaw, with 29 downloads so far.

How do I install Alibabacloud Dms Data Agent Platform Setup?

Run "/install alibabacloud-dms-data-agent-platform-setup" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Alibabacloud Dms Data Agent Platform Setup free?

Yes, Alibabacloud Dms Data Agent Platform Setup is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Alibabacloud Dms Data Agent Platform Setup support?

Alibabacloud Dms Data Agent Platform Setup is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Alibabacloud Dms Data Agent Platform Setup?

It is built and maintained by alibabacloud-skills-team (@sdk-team); the current version is v0.0.1.

💬 Comments