alicloud-compute-fc-serverless-devs

Alibaba Cloud Function Compute (FC 3.0) skill for installing and using Serverless Devs to create, deploy, invoke, and remove a Python function. Use when users need CLI-based FC quick start or Serverless Devs setup guidance.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "alicloud-compute-fc-serverless-devs" with this command: npx skills add cinience/alicloud-compute-fc-serverless-devs

Category: tool

Function Compute (FC 3.0) Serverless Devs

Goals

  • Install and validate Serverless Devs.
  • Configure credentials, initialize example project, deploy, invoke, and remove.
  • Provide CLI flow with Python runtime example.

Quick Start Flow

  1. Install Node.js (14+) and npm.
  2. Install and validate Serverless Devs.
  3. Configure credentials via guided setup.
  4. Initialize example project and enter directory.
  5. Deploy, invoke, and optionally remove.

Install Serverless Devs (npm)

Global install (requires sudo):

sudo npm install @serverless-devs/s -g
sudo s -v

No-sudo alternative (recommended in restricted environments):

npx -y @serverless-devs/s -v

Configure Credentials (guided)

sudo s config add

Choose Alibaba Cloud (alibaba), provide AccountID, AccessKeyID, AccessKeySecret, and set alias.

Configure Credentials (command)

Use CLI args to configure credential alias in one command (non-interactive):

s config add -a default --AccessKeyID <AK> --AccessKeySecret <SK> -f

If using environment variables, inject them into the command (example):

s config add -a default -kl AccessKeyID,AccessKeySecret -il ${ALIBABA_CLOUD_ACCESS_KEY_ID},${ALIBABA_CLOUD_ACCESS_KEY_SECRET} -f

Or use Serverless Devs convention JSON environment variable (example):

export default_serverless_devs_key='{\"AccountID\":\"<AccountID>\",\"AccessKeyID\":\"<AK>\",\"AccessKeySecret\":\"<SK>\"}'

Reference in s.yaml:

access: default_serverless_devs_key

Initialize Example (Python)

sudo s init start-fc3-python
cd start-fc3-python

Initialization creates s.yaml, code/, and readme.md; edit code/index.py for function logic.

Deploy, Invoke, and Remove

sudo s deploy
sudo s invoke -e "test"
sudo s remove

Custom Domain Binding (Avoid Default Domain Forced Download)

Note: FC default domain adds Content-Disposition: attachment, causing browser downloads. Use a custom domain to avoid this behavior.

Step 1: Configure CNAME for your domain

Configure DNS CNAME to FC public CNAME:

<account_id>.<region_id>.fc.aliyuncs.com

Example (Hangzhou region):

1629965279769872.cn-hangzhou.fc.aliyuncs.com

Note: if using apex domain (e.g. animus.run) and DNS provider does not support CNAME at apex, use ALIAS/ANAME records, or switch to a subdomain such as www.animus.run.

Step 2: Create custom domain in Serverless Devs

Option A: add fc3-domain resource in s.yaml:

resources:
  newsDomain:
    component: fc3-domain
    props:
      region: cn-hangzhou
      domainName: animus.run
      protocol: HTTP
      routeConfig:
        routes:
          - functionName: honnold-taipei101-news
            qualifier: LATEST
            methods:
              - GET
              - HEAD
            path: /*

region is example default; ask user when the best region is unclear.

Then deploy:

printf 'y\n' | npx -y @serverless-devs/s deploy

Option B: use Console (Advanced Features > Custom Domains) to create and route custom domain.

Common Errors

  • DomainNameNotResolved: domain not resolved to correct FC CNAME.
  • InvalidICPLicense: mainland China regions require ICP filing associated with Alibaba Cloud.

References

Validation

mkdir -p output/alicloud-compute-fc-serverless-devs
echo "validation_placeholder" > output/alicloud-compute-fc-serverless-devs/validate.txt

Pass criteria: command exits 0 and output/alicloud-compute-fc-serverless-devs/validate.txt is generated.

Output And Evidence

  • Save artifacts, command outputs, and API response summaries under output/alicloud-compute-fc-serverless-devs/.
  • Include key parameters (region/resource id/time range) in evidence files for reproducibility.

Prerequisites

  • Configure least-privilege Alibaba Cloud credentials before execution.
  • Prefer environment variables: ALICLOUD_ACCESS_KEY_ID, ALICLOUD_ACCESS_KEY_SECRET, optional ALICLOUD_REGION_ID.
  • If region is unclear, ask the user before running mutating operations.

Workflow

  1. Confirm user intent, region, identifiers, and whether the operation is read-only or mutating.
  2. Run one minimal read-only query first to verify connectivity and permissions.
  3. Execute the target operation with explicit parameters and bounded scope.
  4. Verify results and save output/evidence files.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

Markdown Lint

Use this skill immediately when the user needs to: set up markdownlint-cli2 and pre-commit hooks in a repository, fix or batch-repair markdownlint errors lik...

Registry SourceRecently Updated
Coding

Code Sync

Use this skill to batch-sync all git repos across machines — pushing uncommitted changes at end of day or pulling latest at start of day. Invoke when the use...

Registry SourceRecently Updated
Coding

Workspace Init

Use this skill to initialize or update a multi-repo workspace created from dev-config-template. Invoke whenever the user wants to: set up a fresh workspace c...

Registry SourceRecently Updated
Coding

GitHub Issue Auto Triage

自动分类 GitHub Issue,AI 打标签、分配负责人、检测重复、回复 FAQ

Registry SourceRecently Updated