Ask user: "Which region to create in? (e.g., cn-hangzhou)"
Ask user: "What is the project name?"
MANDATORY VALIDATION: If project name is empty or whitespace, STOP and ask user again: "Project name cannot be empty. Please provide a valid project name."
CRITICAL: Store the user's exact project name - do NOT use placeholder text
MUST call ListQuotas: Execute:
aliyun maxcompute list-quotas --billing-type ALL --region {REGION_ID} --user-agent AlibabaCloud-Agent-Skills
Wait for command output
Parse ListQuotas response: Find a quota with
nickName
and its secondary quotas (look in
data.quotas[].subQuotas
or similar)
STRICT VALIDATION: Select a secondary quota's nickName from the ListQuotas response (NOT the primary quota)
TRIM WHITESPACE: Remove any leading/trailing spaces from the quota nickName. If nickName contains internal spaces, trim them or select a different quota
PRE-FLIGHT CHECK: Verify you have actual values for REGION_ID, PROJECT_NAME, and SECONDARY_QUOTA_NICKNAME (trimmed, no spaces)
skill for full parameters (partNickName, CU, ord_time, etc.)
List existing quotas:
aliyun maxcompute list-quotas --billing-type ALL --region <region> --user-agent AlibabaCloud-Agent-Skills
After creating or confirming a quota exists, use its
nickName
as the
defaultQuota
parameter when creating a project.
Installation
Pre-check: Aliyun CLI >= 3.3.1 required
Run
aliyun version
to verify >= 3.3.1. If not installed or version too low,
see references/cli-installation-guide.md for installation instructions.
Then [MUST] run
aliyun configure set --auto-plugin-install true
to enable automatic plugin installation.
bash
# Install Alibaba Cloud CLI (with 60s timeout)curl-fsSL --max-time 60 https://aliyuncli.alicdn.com/install.sh |bash# Verify version (must be >= 3.3.1)aliyun version
# Enable auto plugin installationaliyun configure set --auto-plugin-install true
Environment Variables
No additional environment variables required beyond standard Alibaba Cloud credentials.
Authentication
CRITICAL: You MUST check credentials before ANY operation.
Allowed Credential Check (ONLY this command):
bash
aliyun configure list
What to look for:
Output shows at least one profile with
mode: AK
or
mode: StsToken
Profile shows
access_key_id: ********
(masked is OK)
If NO valid profile:
Tell user: "Please run
aliyun configure
to set up credentials first."
STOP - Do not proceed with any MaxCompute commands
FORBIDDEN - NEVER do these:
❌
echo $ALIBABA_CLOUD_ACCESS_KEY_ID
❌
echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET
❌
aliyun configure get | grep access-key
❌ Any command that displays actual credential values
RAM Policy
[MUST] RAM Permission Pre-check: Before executing the workflow, verify that the current user has the required permissions.
Required permissions are listed in references/ram-policies.md.
Note: You do NOT need to verify RAM permissions via CLI commands. The permissions listed in ram-policies.md are for user reference only. Proceed with the workflow assuming the user has configured appropriate permissions.
Parameters
Always ask user for these values — never assume defaults:
Before responding to user, verify:
□ I followed the correct workflow for the operation type
□ I asked for ALL required parameters from user
□ I used user's actual values in commands (not placeholders or defaults)
□ I included --user-agent AlibabaCloud-Agent-Skills in EVERY command
□ I did NOT perform any forbidden actions
□ I reported the final result to user
If ALL checks pass → Skill execution is SUCCESSFUL
If ANY check fails → Skill execution is INCOMPLETE
Final Verification (Before Marking Task Complete)
You MUST verify ALL of these before telling user the task is done:
For LIST:
I asked for RegionId and got user's answer
I executed list-projects with
--region {USER_ANSWER}
and
--user-agent AlibabaCloud-Agent-Skills
I presented the results to user clearly
For GET:
I asked for RegionId and got user's answer
I asked for projectName and got user's answer
I executed get-project with user's values and
--user-agent AlibabaCloud-Agent-Skills
I presented project details to user clearly
For CREATE:
I asked for RegionId and got user's answer
I asked for projectName and got user's answer
I executed list-quotas to get a valid quota
I executed create-project with user's values and
--user-agent AlibabaCloud-Agent-Skills
I verified creation by calling get-project
I confirmed success to user
For DELETE:
I asked for RegionId and got user's answer
I asked for projectName and got user's answer
I got explicit "yes" confirmation from user
I executed delete-project with
--user-agent AlibabaCloud-Agent-Skills
I confirmed deletion to user
If ANY check fails, the task is NOT complete.
Best Practices
Naming Convention: Use lowercase letters, numbers, and underscores for project names
Quota Selection: Choose appropriate quota based on workload requirements
Product Type: Use
payasyougo
for development/testing,
subscription
for production with predictable workloads
Type System: Use
2
(MaxCompute) for new projects unless Hive compatibility is required
Resource Cleanup: Always clean up test projects to avoid unnecessary costs