{"id":19219509,"url":"https://github.com/zeabur/cli","last_synced_at":"2026-04-12T06:01:37.685Z","repository":{"id":184992376,"uuid":"662461174","full_name":"zeabur/cli","owner":"zeabur","description":"Zeabur's official command line tool","archived":false,"fork":false,"pushed_at":"2026-04-11T10:09:07.000Z","size":857,"stargazers_count":58,"open_issues_count":20,"forks_count":16,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-04-11T12:06:56.820Z","etag":null,"topics":["cli","deployment-automation","devops","go","golang","zeabur"],"latest_commit_sha":null,"homepage":"https://zeabur.com/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zeabur.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-07-05T07:29:42.000Z","updated_at":"2026-04-11T10:07:52.000Z","dependencies_parsed_at":"2023-07-31T09:33:04.896Z","dependency_job_id":"c53154b9-f0d1-436a-b6c9-f52f8e6b21e9","html_url":"https://github.com/zeabur/cli","commit_stats":null,"previous_names":["zeabur/cli"],"tags_count":68,"template":false,"template_full_name":null,"purl":"pkg:github/zeabur/cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeabur%2Fcli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeabur%2Fcli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeabur%2Fcli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeabur%2Fcli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zeabur","download_url":"https://codeload.github.com/zeabur/cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeabur%2Fcli/sbom","scorecard":{"id":1240963,"data":{"date":"2026-01-05","repo":{"name":"github.com/zeabur/cli","commit":"89892dab71bbe821fae7953bd84bd7128329d090"},"scorecard":{"version":"v5.4.1-0.20251227023010-525a93017816","commit":"525a93017816fa74238c545bdecac6af16ce00f1"},"score":4.6,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#maintained"}},{"name":"Code-Review","score":3,"reason":"Found 6/18 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yaml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yaml:30","Warn: no topLevel permission defined: .github/workflows/build-test.yml:1","Warn: no topLevel permission defined: .github/workflows/codeql.yaml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/lint.yml:10","Info: topLevel 'pull-requests' permission set to 'read': .github/workflows/lint.yml:11","Warn: topLevel 'contents' permission set to 'write': .github/workflows/release.yml:12","Warn: topLevel 'packages' permission set to 'write': .github/workflows/release.yml:13","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-test.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/build-test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-test.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/build-test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yaml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/codeql.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yaml:47: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/codeql.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yaml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/codeql.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yaml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/codeql.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yaml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/codeql.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/lint.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/lint.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/zeabur/cli/release.yml/main?enable=pin","Warn: goCommand not pinned by hash: .github/workflows/release.yml:35","Info:   0 out of  11 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   0 out of   1 goCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Mozilla Public License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:17"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#packaging"}},{"name":"Vulnerabilities","score":8,"reason":"2 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: https://osv.dev/GO-2025-3787","Warn: Project is vulnerable to: https://osv.dev/GO-2025-3900"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#vulnerabilities"}},{"name":"Branch-Protection","score":6,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: required approving review count is 1 on branch 'main'","Warn: codeowners review is not required on branch 'main'","Warn: no status checks found to merge onto branch 'main'","Info: PRs are required in order to make changes on branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v0.5.4 not signed: https://api.github.com/repos/zeabur/cli/releases/219057939","Warn: release artifact 0.5.3 not signed: https://api.github.com/repos/zeabur/cli/releases/211337927","Warn: release artifact 0.5.2 not signed: https://api.github.com/repos/zeabur/cli/releases/211336752","Warn: release artifact 0.5.1 not signed: https://api.github.com/repos/zeabur/cli/releases/207054181","Warn: release artifact 0.4.4 not signed: https://api.github.com/repos/zeabur/cli/releases/199181013","Warn: release artifact v0.5.4 does not have provenance: https://api.github.com/repos/zeabur/cli/releases/219057939","Warn: release artifact 0.5.3 does not have provenance: https://api.github.com/repos/zeabur/cli/releases/211337927","Warn: release artifact 0.5.2 does not have provenance: https://api.github.com/repos/zeabur/cli/releases/211336752","Warn: release artifact 0.5.1 does not have provenance: https://api.github.com/repos/zeabur/cli/releases/207054181","Warn: release artifact 0.4.4 does not have provenance: https://api.github.com/repos/zeabur/cli/releases/199181013"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#security-policy"}},{"name":"SAST","score":8,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 17 commits out of 27 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/525a93017816fa74238c545bdecac6af16ce00f1/docs/checks.md#sast"}}]},"last_synced_at":"2026-01-11T03:29:48.920Z","repository_id":184992376,"created_at":"2026-01-11T03:29:48.920Z","updated_at":"2026-01-11T03:29:48.920Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31705574,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-12T05:11:36.334Z","status":"ssl_error","status_checked_at":"2026-04-12T05:11:27.332Z","response_time":58,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","deployment-automation","devops","go","golang","zeabur"],"created_at":"2024-11-09T14:31:45.959Z","updated_at":"2026-04-12T06:01:37.663Z","avatar_url":"https://github.com/zeabur.png","language":"Go","readme":"# Zeabur CLI\n\n[Zeabur](https://zeabur.com/)'s official command line tool\n\n\u003e Note: Zeabur CLI is currently in beta, and we are still working on it. If you have any questions or suggestions, please feel free to contact us.\n\n## How cool it is\n\n1. Manage your Zeabur resources with CLI\n2. Login with browser or token\n3. Intuitive and easy to use\n4. The design of the context makes it easier for you to manage services.\n5. The seamless integration of interactive and non-interactive modes.\n\n## Quick Start\n\n### 1. Install\n\nNo need to install, you can use it directly with npx. Make sure you have Node.js installed.\n\n### 2. Login\n\nIf you can open the browser:\n\n```shell\nnpx zeabur auth login\n```\n\nOr you can use token to login:\n```shell\nnpx zeabur auth login --token \u003cyour-token\u003e\n```\n\nZeabur CLI will open a browser window and ask you to login with your Zeabur account.\n\n### 3. Manage your resources(Interactive mode, recommended)\n\n[![asciicast](https://asciinema.org/a/Olf52EUOCrKU6NGJMbYTw24SL.svg)](https://asciinema.org/a/Olf52EUOCrKU6NGJMbYTw24SL)\n\n```shell\n# list all projects\nnpx zeabur project ls\n\n# set project context, the following commands will use this project context\n# you can use arrow keys to select the project\nnpx zeabur context set project\n\n# list all services in the project\nnpx zeabur service ls\n\n# set service context(optional)\nnpx zeabur context set service\n\n# set environment context(optional)\nnpx zeabur context set env\n\n# restart the service\nnpx zeabur service restart\n\n# get the latest deployment info\nnpx zeabur deployment get\n\n# get the latest deployment log(runtime)\nnpx zeabur deployment log -t=runtime\n\n# get the latest deployment log(build)\nnpx zeabur deployment log -t=build\n```\n\n### 4. Manage your resources(Non-interactive mode)\n\nNon-interactive mode is useful when you want to use Zeabur CLI in a script(such as CI/CD pipeline, etc.)\n\nNote: you can add `-i=false` to all commands to disable interactive mode. \n**In fact, if the parameters are complete, it's same whether you use interactive mode or not.**\n\n```shell\n# list all projects\nnpx zeabur project ls -i=false\n\n# set project context, the following commands will use this project context\nnpx zeabur context set project --name \u003cproject-name\u003e\n# or you can use project id\n# npx zeabur context set project --id \u003cproject-id\u003e\n\n# list all services in the project\nnpx zeabur service ls\n\n# set service context(optional)\nnpx zeabur context set service --name \u003cservice-name\u003e\n# or you can use service id\n# npx zeabur context set service --id \u003cservice-id\u003e\n\n# set environment context(optional)(only --id is supported)\nnpx zeabur context set env --id \u003cenv-id\u003e\n\n# restart the service\n# if service context is set, you can omit the service name; so does environment context\nnpx zeabur service restart --env-id \u003cenv-id\u003e --service-name \u003cservice-name\u003e\n# or you can use service id\n# npx zeabur service restart --env-id \u003cenv-id\u003e --service-id \u003cservice-id\u003e\n\n# get the latest deployment info(if contexts are set, you can omit the parameters)\nnpx zeabur deployment get --env-id \u003cenv-id\u003e --service-name \u003cservice-name\u003e\n# or you can use service id\n# npx zeabur deployment get --env-id \u003cenv-id\u003e --service-id \u003cservice-id\u003e\n\n# get the latest deployment log(runtime)(service id is also supported)\nnpx zeabur deployment log -t=runtime --env-id \u003cenv-id\u003e --service-name \u003cservice-name\u003e\n# get the latest deployment log(build)(service id is also supported)\nnpx zeabur deployment log -t=build --env-id \u003cenv-id\u003e --service-name \u003cservice-name\u003e\n```\n\n5. More commands\n\n```shell\nnpx zeabur \u003ccommand\u003e --help\n```\n\n## Development Guide\n\n[Development Guide](docs/development_guide.md)\n\n## Acknowledgements\n\n1. GitHub\n    * GitHub provides us a place to store the source code of this project and running the CI/CD pipeline.\n    * [cli/cli](https://github.com/cli/cli) provides significant inspiration for the organizational structure of this project.\n    * [cli/oauth](https://github.com/cli/oauth) we write our own CLI browser OAuth flow based on this project.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzeabur%2Fcli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzeabur%2Fcli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzeabur%2Fcli/lists"}