Install
openclaw skills install alibabacloud-odps-project-manageAlibaba Cloud MaxCompute Project Management Skill. Use for creating, querying, and listing MaxCompute projects. Triggers: "maxcompute project", "odps project", "create maxcompute project", "manage maxcompute project", "list maxcompute project".
openclaw skills install alibabacloud-odps-project-manageManage Alibaba Cloud MaxCompute (ODPS) Projects including creation, querying, and listing operations.
Pre-check: Aliyun CLI >= 3.3.3 required
Run
aliyun versionto verify >= 3.3.3. If not installed or version too low, runcurl -fsSL https://aliyuncli.alicdn.com/setup.sh | bashto update, or seereferences/cli-installation-guide.mdfor installation instructions.Then [MUST] run
aliyun plugin updateto ensure that any existing plugins on your local machine are always up-to-date.
[MUST] CLI User-Agent — Every aliyun CLI command invocation must include:
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
[MUST] AI-Mode Commands — When using aliyun CLI, declare AI-Mode lifecycle:
aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage"
aliyun configure ai-mode disable
When user asks about MaxCompute projects, follow these steps:
--region {REGION_ID} and --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manageYou MUST verify ALL of these before running any command:
--region {ACTUAL_REGION_ID}--user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manageIf ANY check fails, STOP and fix before proceeding.
CRITICAL: You MUST complete ALL steps in order. Do NOT stop early.
--quota-nick-name={USER_QUOTA}--quota-nick-name=os_PayAsYouGoaliyun maxcompute list-projects --region {REGION_ID} --quota-nick-name={QUOTA_NICKNAME} --max-item=20 --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
aliyun maxcompute list-quotas --billing-type ALL --region {REGION_ID} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manageFORBIDDEN:
--marker for pagination--quota-nick-name parameterREQUIRED:
--quota-nick-name with user's quota or default--max-item=20aliyun maxcompute get-project --region {REGION_ID} --project-name {PROJECT_NAME} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-managedata.name, data.status, data.owneraliyun maxcompute list-quotas --billing-type ALL --region {REGION_ID} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-managenickName and its secondary quotas (look in data.quotas[].subQuotas or similar)aliyun maxcompute create-project --region {ACTUAL_REGION} --body '{"name":"ACTUAL_PROJECT_NAME","defaultQuota":"SECONDARY_QUOTA_NICKNAME","productType":"payasyougo","typeSystem":"TYPE_SYSTEM_VALUE"}' --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
Example with real values:
aliyun maxcompute create-project --region cn-hangzhou --body '{"name":"my-project-123","defaultQuota":"os_PayAsYouGoQuota_sub","productType":"payasyougo","typeSystem":"2"}' --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
aliyun maxcompute get-project --region {REGION_ID} --project-name {PROJECT_NAME} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage"status":"AVAILABLE"Respond: "Project deletion is not supported by this skill. Please use the Alibaba Cloud Console or contact your administrator."
| Error | Cause | Solution |
|---|---|---|
ProjectNotFound | Project doesn't exist | Check project name spelling and region |
ProjectAlreadyExist | Name taken | Ask user for a different project name |
get project default quota error | No valid quota | Run list-quotas first, ensure quota exists |
InvalidProjectName | Bad naming format | Use only lowercase, numbers, underscores (3-28 chars) |
NoPermission or 403 Access Denied | RAM permission issue | Inform user: "You need odps permissions for list-quotas, create-project and get-project. Please contact your administrator." |
RegionId required | Missing --region | Always add --region {REGION_ID} to commands |
ODPS-0420095: Access Denied | Missing read privilege | Inform user about required permissions and stop |
CRITICAL: Never do these:
- NEVER read/echo AK/SK values (e.g.,
echo $ALIBABA_CLOUD_ACCESS_KEY_ID)- NEVER use hardcoded values — always ask user for parameters, then use their ACTUAL answer (not placeholder text)
- NEVER use
aliyun configure setwith literal credential values- NEVER run
aliyun ramcommands- NEVER execute ANY command without
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage- NEVER skip asking for RegionId — this is ALWAYS required
- NEVER assume a default region — always ask the user
- NEVER use uppercase API action format as CLI commands — ALWAYS use plugin format with lowercase and hyphens (e.g.,
create-project)- NEVER execute
aliyun maxcompute delete-project— project deletion is NOT supported by this skill
| ❌ WRONG | ✅ CORRECT |
|---|---|
| Using uppercase API action names as CLI commands | aliyun maxcompute create-project (plugin format, lowercase with hyphens) |
'{"name":"{PROJECT_NAME}"}' (placeholder) | '{"name":"actual-name"}' (actual value) |
--region cn-hangzhou (hardcoded) | Ask user first, then use their answer |
Missing --user-agent | Must include --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage |
echo $ALIBABA_CLOUD_ACCESS_KEY_ID | Never read/display credentials |
aliyun ram ... commands | RAM commands are outside scope |
aliyun maxcompute delete-project | Project deletion is NOT supported |
| Verify different project on failure | Report failure, don't substitute |
MaxCompute Service
└── Project (Workspace)
├── defaultQuota (Compute Resource - MUST exist before project creation)
├── productType (payasyougo/subscription)
└── typeSystem ("1", "2", or "hive"; default: "2")
Prerequisite: Quota must exist before creating a project.
Every MaxCompute project requires a compute quota (
defaultQuota). The quota must already exist in your account — if it does not, thecreate-projectcall will fail withget project default quota error.Use the alibabacloud-odps-quota-manage skill to create or query quotas:
- Pay-as-you-go:
aliyun maxcompute create-quota --charge-type payasyougo --commodity-code odps --region <region> --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage- Subscription: See
alibabacloud-odps-quota-manageskill 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/alibabacloud-odps-project-manageAfter creating or confirming a quota exists, use its
nickNameas thedefaultQuotaparameter when creating a project.
Pre-check: Aliyun CLI >= 3.3.3 required
Run
aliyun versionto verify >= 3.3.3. If not installed or version too low, runcurl -fsSL https://aliyuncli.alicdn.com/setup.sh | bashto update, or seereferences/cli-installation-guide.mdfor installation instructions.
Pre-check: Aliyun CLI plugin update required
[MUST] run
aliyun configure set --auto-plugin-install trueto enable automatic plugin installation. [MUST] runaliyun plugin updateto ensure that any existing plugins are always up-to-date.
# Install/Update Alibaba Cloud CLI
curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash
# Verify version (must be >= 3.3.3)
aliyun version
# Enable auto plugin installation
aliyun configure set --auto-plugin-install true
# Update plugins
aliyun plugin update
No additional environment variables required beyond standard Alibaba Cloud credentials.
CRITICAL: You MUST check credentials before ANY operation.
aliyun configure list
What to look for:
mode: AK or mode: StsTokenaccess_key_id: ******** (masked is OK)If NO valid profile:
aliyun configure to set up credentials first."FORBIDDEN - NEVER do these:
echo $ALIBABA_CLOUD_ACCESS_KEY_IDecho $ALIBABA_CLOUD_ACCESS_KEY_SECRETaliyun configure get | grep access-key[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.
Always ask user for these values — never assume defaults:
| Parameter | Required | Description |
|---|---|---|
RegionId | Yes | Region ID (cn-hangzhou, cn-shanghai, etc.) |
projectName | Yes | Project name |
quotaNickName | For create | Quota alias (get from list-quotas) |
LIST: User asks → Agent requests RegionId → Agent executes list-projects → Agent presents results
CREATE: User asks → Agent requests RegionId → Agent requests projectName → Agent calls list-quotas → Agent creates project → Agent verifies → Agent confirms success
# Ask user for quota nickname first, then:
aliyun maxcompute list-projects --region {REGION_ID} --quota-nick-name={QUOTA_NICKNAME} --max-item=20 --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
MUST: Always use --quota-nick-name parameter (user-specified or default). Never fetch all and filter locally.
aliyun maxcompute get-project --region {REGION_ID} --project-name {PROJECT_NAME} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
aliyun maxcompute list-quotas --billing-type ALL --region {REGION_ID} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
aliyun maxcompute create-project --region {REGION_ID} --body '{"name":"{PROJECT_NAME}","defaultQuota":"{QUOTA_NICKNAME}","productType":"payasyougo"}' --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
See references/verification-method.md for detailed verification steps.
Verification Command:
aliyun maxcompute get-project --region {REGION_ID} --project-name {PROJECT_NAME} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
Success Criteria:
"status":"AVAILABLE""name" matching the created project"defaultQuota" matching the specified quotaIf verification fails:
The following operations cannot be performed via CLI/API and require Console access:
| Operation | Reason | Alternative |
|---|---|---|
| View billing details | Requires Console access | Use Billing Console |
| Manage IAM policies visually | Console-only feature | Use RAM CLI for policy management |
| Real-time resource monitoring | Requires Console dashboard | Use CloudMonitor APIs |
See references/related-apis.md for complete API reference.
| Operation | CLI Command (plugin mode) | API Action Name |
|---|---|---|
| Create Project | aliyun maxcompute create-project | create-project |
| Get Project | aliyun maxcompute get-project | get-project |
| List Projects | aliyun maxcompute list-projects | list-projects |
| List Quotas | aliyun maxcompute list-quotas | list-quotas |
For skill_pass_rate to be successful, ALL of these MUST be true:
--region {USER_PROVIDED_VALUE} (not hardcoded)--user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manageLIST:
aliyun maxcompute list-projects --region {REGION} --quota-nick-name=os_PayAsYouGo --max-item=20 --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage--quota-nick-name=os_PayAsYouGo parameter for first attempt--max-item=20 parameter--quota-nick-name=os_PayAsYouGoQuotaGET:
aliyun maxcompute get-project --region {REGION} --project-name {NAME} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manageCREATE:
User was asked for RegionId and projectName (actual values obtained)
Quota was listed first: aliyun maxcompute list-quotas --billing-type ALL --region {REGION} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
MUST use actual values in body - NOT placeholders like {PROJECT_NAME}
Create command format: --body '{"name":"ACTUAL_NAME","defaultQuota":"ACTUAL_QUOTA","productType":"payasyougo"}'
MUST check create response for errors before proceeding
Verification command executed: aliyun maxcompute get-project --region {REGION} --project-name {NAME} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage
MUST verify the project name in response matches the requested project
MUST verify status is AVAILABLE
If verification fails due to permissions (403), inform user and stop
If project not found or wrong project returned, report failure
If verification succeeds (status=AVAILABLE), confirm success to user
If user requests deletion, inform them to use Alibaba Cloud Console
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/alibabacloud-odps-project-manage 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
You MUST verify ALL of these before telling user the task is done:
--region {USER_ANSWER} and --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage--user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manage--user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-project-manageIf ANY check fails, the task is NOT complete.
payasyougo for development/testing, subscription for production with predictable workloads2 (MaxCompute) for new projects unless Hive compatibility is required| Document | Description |
|---|---|
| references/related-apis.md | Complete API reference |
| references/ram-policies.md | Required RAM permissions |
| references/verification-method.md | Verification steps |
| references/cli-installation-guide.md | CLI installation guide |
| MaxCompute Product Page | Official product documentation |
| create-project API | API reference |
| get-project API | API reference |
| list-projects API | API reference |