The Screwdriver API is the core server for the Screwdriver.cd continuous delivery service, currently at version 8.0.143. It provides 18 preloaded plugins for managing builds, pipelines, secrets, webhooks, and more, with support for multiple datastores (Postgres, MySQL, Sqlite), executors (Kubernetes, Docker, Nomad), and SCM providers (GitHub, GitLab, Bitbucket). Released weekly, it is actively maintained by Yahoo and the open-source community. Compared to Jenkins or GitLab CI, Screwdriver emphasizes container-native, pluggable architecture and SCM-agnosticism. Requires Node.js >=22.0.0.
npm install screwdriver-apiVerified import paths — ran on the pinned version, not inferred.
Initialize and start Screwdriver API server with Docker executor, SQLite datastore, and GitHub SCM.
Use import syntax and ensure project is configured for ES modules.
Upgrade Node.js to >=22.0.0.
Use createServer() from 'screwdriver-api' instead.
Use import { server } from 'screwdriver-api' instead of import server from 'screwdriver-api'.Always set JWT_SECRET environment variable or in local.yaml.
Install the package: npm install screwdriver-datastore-sequelize
Set JWT_SECRET environment variable or add to config file.
Change the port in config or kill the process using it.
Add 'type': 'module' to package.json or use .mjs extension.