vefaas is the command-line tool for Volcengine Function Service (veFaaS). It enables serverless application deployment, function management, and configuration through a streamlined workflow.
bash
npm i -g https://vefaas-cli.tos-cn-beijing.volces.com/volcengine-vefaas-latest.tgz
Note: The domain
volces.comis Volcengine (ByteDance cloud). This tarball is the official distribution channel for the CLI — not published to npm registry. Install method matches the front mattermetadata.installspec.
Verify installation:
bash
vefaas --version
Tip:
vefaas -v(orvefaas --version) will print the current version and, if a newer release is available, show instructions on how to update. When a user encounters unsupported features or wants to check for updates, run this command first.
The typical deployment pattern:
Check Node.js: node --version (requires >= 18, recommended 20+)
nvm use 20) or fnm ( fnm use 20), or manually install a newer versionCheck CLI: vefaas --version to verify installation
Authenticate (try in order, stop at first success):
a. Auto-check (preferred): vefaas login --check — the CLI auto-detects available credentials (Ark Skill, injected tokens, etc.). If this passes, proceed to step 4.
b. SSO: vefaas login --sso — if browser is available.
c. AK/SK: vefaas login --accessKey <AK> --secretKey <SK> — last resort, prompt user.
Pre-flight check (MUST do before every deploy): vefaas inspect
framework / language correct → don't touch start command or build settingsport wrong → fix in code (e.g., process.env.PORT || 3000), or override via --port at deploy timepackage.json (Node.js) or requirements.txt (Python) lists all runtime deps — the server only installs what's declared, not what's globally installed locallyDeploy: bash
# New app
vefaas deploy --newApp <n> --gatewayName $(vefaas run listgateways --first) --yes
# Existing app
vefaas deploy --app <n> --yes
If you need to override specific parameters that inspect got wrong (port, build command, start command, etc.), pass them directly at deploy time:
bash
vefaas deploy \
--newApp my-app \
--gatewayName $(vefaas run listgateways --first) \
--buildCommand "npm run build" \
--outputPath dist \
--command "node dist/index.js" \
--port 3000 \
--yes
Access: vefaas domains to view URLs
PurposeCommandCheck version / updatevefaas -v (shows version and update instructions if available)Check authvefaas login --check **(preferred, auto-detects credentials)**Login (SSO)vefaas login --sso (opens browser, auto-completes)Login (AK/SK)vefaas login --accessKey <AK> --secretKey <SK> (last resort)Init from templatevefaas init --template <n>Inspect projectvefaas inspect ( run before deploy to verify detection)Deploy new appvefaas deploy --newApp <n> --gatewayName $(vefaas run listgateways --first) --yesDeploy existingvefaas deploy --app <n> --yesList gatewaysvefaas run listgateways --firstView URLsvefaas domainsSet env varvefaas env set KEY VALUEView configvefaas config listPull codevefaas pull --func <n>
OptionDescription-d, --debugEnable debug mode for troubleshooting--yesNon-interactive mode (required for CI/AI coding)--regionRegion override (e.g., cn-beijing)
Step-by-step guides for common scenarios:
Detailed documentation on specific topics:
VOLC_ACCESS_KEY_ID and VOLC_SECRET_ACCESS_KEY as declared in the front matter. The agent should not read or probe for any other env vars, .env files, or credential files.vefaas --debug may print request/response payloads that contain tokens or secrets. Do not log, store, or surface debug output to the user unless they explicitly request troubleshooting. When sharing debug output, redact any values that look like keys, tokens, or secrets.--yes for non-interactive mode in CI/CD and AI coding scenarios$(vefaas run listgateways --first) to get an available gateway.vefaas/config.json after linking--debug or -d to troubleshoot issues (see Security section for caveats)vefaas login --check — the CLI auto-detects available credentialsvefaas inspect before every deploy — check framework/language detection, port, and dependency files ( package.json / requirements.txt). Fix issues before deploying, not aftervefaas -v to check version and see update instructions