Serverless Devs is an open source developer tool that manages the full lifecycle of serverless applications on Alibaba Cloud Function Compute — from local development and debugging through deployment and O&M. Serverless Devs frees you from underlying resource management and allows you to use serverless services and frameworks in a pluggable manner and develop components and plug-ins.
Funcraft is no longer maintained in Function Compute. Migrate your resources to Serverless Devs for a better experience. See Migrate resources from Funcraft to Serverless Devs.
How it works
Serverless Devs is built around two components that together cover the full development workflow:
FC component — A YAML-based tool for managing serverless application resources (services, functions, triggers, and custom domain names). Use it to build, test, and deploy applications to Function Compute. The FC component is the successor to Funcraft.
FC-API component — A CLI tool built on the Function Compute API. Use it to run atomic resource operations (create, update, delete, query) without a YAML configuration file. FC-API is the successor to fcli, and supports interactive commands for Function Compute API-related operations.
Choose the FC component when you manage application resources declaratively with s.yaml. Choose the FC-API component when you need scriptable, API-level control — for example, in CI/CD pipelines or automation workflows.
What you can do with Serverless Devs
Use Serverless Devs to:
Initialize and scaffold a new serverless project
Build and install dependencies locally
Debug functions on your local machine or directly in the cloud
Deploy applications to Function Compute
Query metrics and execution logs from your client
Integrate with CI/CD platforms to automate deployments
Sync cloud resources back to your local environment with a single command
Automatically detect and securely update function changes when using the console or SDKs (secure release)
Integrating Serverless Devs into your full project lifecycle can increase O&M efficiency by 90%. For more information, see Serverless Devs.
Supported runtimes
Serverless Devs supports the following Function Compute runtimes:
Node.js 8, Node.js 10, Node.js 12, and Node.js 14
Python 2.7, Python 3, and Python 3.9
Java 8 and Java 11
PHP 7.2
.NET Core 2.1
Custom Runtime
Custom Container
FC component
The FC component supports the full lifecycle of Alibaba Cloud serverless applications. It uses s.yaml for resource definition and supports two operating modes:
YAML mode — Define your application resources in s.yaml using Function Compute's YAML syntax. The file covers services, functions, triggers, and custom domain names. See YAML syntax and permission management.
CLI mode (non-YAML) — Manage resources directly from the command line without creating an s.yaml file. For example, sync function configurations and code from the cloud to your local machine:
s cli fc syncKey capabilities
Simplicity: Create and modify resources on demand. Features load lazily, so unused capabilities don't interfere with your workflow.
Efficiency: Deploy, remove, build, query, install dependencies, and debug — all from your local machine.
Flexibility: Deploy using Pulumi or SDKs in addition to the default deployment path.
The FC component is designed for scenarios where you deploy applications to Function Compute — for example, migrating a conventional framework to Function Compute or managing function resources at scale. See Serverless Devs commands for the full command reference and permission requirements.
FC-API component
The FC-API component is a CLI tool built directly on the Function Compute API. It provides atomic, command-level access to Function Compute resources without requiring an s.yaml file. FC-API is the successor to fcli.
When to use FC-API
| If you want to... | Use FC-API to... |
|---|---|
| Automate deployments in a CI/CD pipeline | Pass parameters directly to individual commands without managing a YAML file |
| Update function code or configurations | Run targeted commands: update code, modify configurations, create triggers, or change aliases |
| Manage resources programmatically | Create, update, delete, and query services, functions, and triggers via the Function Compute API |
Available commands
| Resource | Command reference |
|---|---|
| Services | Service-related commands |
| Functions | Function-related commands |
| Triggers | Trigger-related commands |
| Versions | Version-related commands |
| Aliases | Alias-related commands |
| Custom domain names | Custom domain name-related commands |
| Provisioned configuration | Provisioned configuration-related commands |
| Asynchronous invocation | Asynchronous invocation-related commands |
For permission requirements, see API commands of the FC component.