{"id":13526821,"url":"https://github.com/alexellis/derek","last_synced_at":"2025-05-16T03:06:43.492Z","repository":{"id":23850585,"uuid":"99939503","full_name":"alexellis/derek","owner":"alexellis","description":"Reduce maintainer fatigue by automating GitHub","archived":false,"fork":false,"pushed_at":"2024-04-09T07:27:22.000Z","size":2596,"stargazers_count":812,"open_issues_count":25,"forks_count":68,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-08T13:13:10.845Z","etag":null,"topics":["bot","community","faas","hacktoberfest","helper","maintainer","openfaas","pull-requests","robot","serverless"],"latest_commit_sha":null,"homepage":"https://github.com/alexellis/derek/blob/master/USER_GUIDE.md","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alexellis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-10T15:43:55.000Z","updated_at":"2025-03-23T10:52:07.000Z","dependencies_parsed_at":"2024-06-18T13:52:39.619Z","dependency_job_id":"b5355ec2-dd38-4027-b62a-fe931f9f8ab5","html_url":"https://github.com/alexellis/derek","commit_stats":{"total_commits":270,"total_committers":31,"mean_commits":8.709677419354838,"dds":0.3592592592592593,"last_synced_commit":"8fcf1a0c05214ec1e157b0da7d2d6d684cfe5ac5"},"previous_names":[],"tags_count":60,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexellis%2Fderek","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexellis%2Fderek/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexellis%2Fderek/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexellis%2Fderek/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexellis","download_url":"https://codeload.github.com/alexellis/derek/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254459088,"owners_count":22074605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["bot","community","faas","hacktoberfest","helper","maintainer","openfaas","pull-requests","robot","serverless"],"created_at":"2024-08-01T06:01:35.498Z","updated_at":"2025-05-16T03:06:38.483Z","avatar_url":"https://github.com/alexellis.png","language":"Go","funding_links":["https://github.com/sponsors/openfaas","https://github.com/sponsors/alexellis/"],"categories":["Go"],"sub_categories":[],"readme":"# derek\n\n[![Build Status](https://travis-ci.com/alexellis/derek.svg?branch=master)](https://travis-ci.com/alexellis/derek)\n[![OpenFaaS](https://img.shields.io/badge/openfaas-serverless-blue.svg)](https://www.openfaas.com)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![](https://godoc.org/github.com/alexellis/derek?status.svg)](https://godoc.org/github.com/alexellis/derek)\n[![Derek App](https://alexellis.o6s.io/badge?owner=alexellis\u0026repo=derek)](https://github.com/alexellis/derek/)\n\n![Derek's logo](https://pbs.twimg.com/media/DPo4OyrWsAAOk_i.png)\n\nDerek reduces fatigue for maintainers by automating governance and delegating permissions to your team and community.\n\n\u003e Follow [@derekapp](https://twitter.com/derekapp) on Twitter.\n\n## User guide / documentation\n\n[From the team](https://github.com/alexellis/derek#maintainers-and-contributors) that brought you [OpenFaaS](https://www.openfaas.com) - Serverless Functions Made Simple.\n\n### Core features\n\nAll features are modular and can be enabled/disabled as required:\n\n* Generate changelogs for releases with PRs merged and commits added\n* Let designated non-admin users manage Issues and PRs by commenting `Derek \u003ccommand\u003e` or `/command`\n* Enforce [Developer Certificate of Origin (DCO) checking (optional)](https://developercertificate.org)\n* Automatically label/flag PRs without a *Description*\n* Label PRs from first-time contributors\n* Detect spam PRs (from hacktoberfest)\n* Automatically close PRs during hacktoberfest from first-time contributors\n\nFor the managed service the cost is 25USD per month. You will need to become an [OpenFaaS GitHub Sponsor](https://github.com/sponsors/openfaas) to gain access to the managed service. The price covers hosting, management and maintenance of the service.\n\n## Built for developers by developers\n\n\u003ca href=\"https://github.com/sponsors/alexellis/\"\u003e\n\u003cimg alt=\"Sponsor this project\" src=\"https://github.com/alexellis/alexellis/blob/master/sponsor-today.png\" width=\"65%\" height=\"65%\"\u003e\n\u003c/a\u003e\n\n### User guide\n\nFind out what Derek can do you for your project, community and team including all available commands and configuration options\n\n[Read the user guide](./USER_GUIDE.md)\n\n### Start using Derek today\n\nGet started here: [Onboarding guide](GET.md)\n\n### How do I work?\n\nI'm designed to be installed as a [GitHub App](https://developer.github.com/apps/building-integrations/setting-up-and-registering-github-apps/), but don't worry - I don't need a lot of permissions. Just access to issues and Pull Requests will do.\n\nI'm not a long-running daemon.. I'd get bored that way. I work with webhooks - so deploy me to a Serverless platform like [OpenFaaS](https://github.com/alexellis/faas) and forget about me. Just apply oil from time to time.\n\nThis is me in action with the DCO-checking feature. If I find a commit that isn't signed off then I'll let the contributor know in a comment. Normally they edit their commits and re-push within a few minutes after re-reading the message.\n\n![](https://user-images.githubusercontent.com/6358735/29704343-542a36da-8971-11e7-871e-da30c8e86cae.png)\n\n*Inspiration for Derek*\n\nThe idea for a bot that could comment on issues or respond to activity is from the docker/docker or Moby project's bot called [Poule](https://github.com/icecrime/poule). It's a much more complex long-running daemon which uses Personal Access Tokens (so needs to run as a full GitHub login). Derek is much simpler (so hackable) and can be installed with granular permissions.\n\n[Live demo here](https://twitter.com/alexellisuk/status/905694832445804544)\n\n### Our users\n\nSome of our users include:\n\n* [Docker / Moby](https://github.com/moby/moby/issues/35736)\n* [okteto](https://github.com/okteto/okteto)\n* [OpenFaaS](https://github.com/openfaas/faas-cli/issues/85)\n* [inlets](https://github.com/inlets/inlets)\n* [arkade](https://github.com/alexellis/arkade)\n* [k3sup](https://github.com/alexellis/k3sup)\n\n## Backlog:\n\n* [x] Derek as a managed GitHub App (SaaS)\n* [x] Lock thread\n* [x] Edit title of Issue/PR\n* [x] Toggle the DCO-feature for those who don't need compliance\n* [x] Show help messages such as how to join Slack or asking for a rebase via `Derek message`\n* [x] Automate release notes based upon PRs closed\n* [x] Add each commit to release notes\n\nFuture work:\n\n* [ ] Add merge feature based upon policy (in-progress)\n* [ ] Caching of customers / .DEREK.yml file\n* [ ] Observability of GitHub API Token rate limit\n* [ ] Add roles \u0026 actions\n* [ ] PR target branch checking (i.e. no PRs from master to master)\n\n## Maintainers and contributors\n\nThere are [over a dozen contributors](https://github.com/alexellis/derek/graphs/contributors) to Derek, but the following people have made the most impact.\n\nMaintainer(s):\n\n* Alex Ellis - creator \u0026 lead maintainer\n\nHall of fame:\n\n* Martin Dekov - [@martindekov](https://github.com/martindekov)\n* Burton Rheutan - [@burtonr](https://github.com/burtonr)\n* John McCabe - [@johnmccabe](https://github.com/johnmccabe)\n* Lubomir I. Ivanov - [@neolit123](https://github.com/neolit123)\n* Ivana Yovcheva - [@ivanayov](https://github.com/ivanayov)\n* Richard Gee - [@rgee0](https://github.com/rgee0)\n\nAlex Ellis created Derek to automate project maintainer duties around licensing and to help bring granular permissions back to GitHub. Derek has empowered contributors in the OpenFaaS community to run and maintain the project without needing full write access. OpenFaaS contributors continue to improve Derek so they can get the job done without fuss.\n\n### Contributions\n\nPlease follow the [OpenFaaS contribution guide](https://github.com/openfaas/faas/blob/master/CONTRIBUTING.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexellis%2Fderek","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexellis%2Fderek","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexellis%2Fderek/lists"}