Skip to content
🤖 A framework for building GitHub Apps to automate and improve your workflow
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github fix: Spelling (#800) Jan 3, 2019
bin feat: standalone run command (#751) Mar 8, 2019
docs feat: standalone run command (#751) Mar 8, 2019
src test: Convert manifest creation test to TS (#884) Mar 12, 2019
static chore: Add icon to title of probot (#483) Apr 5, 2018
test test: Convert manifest creation test to TS (#884) Mar 12, 2019
views fix: Spelling (#800) Jan 3, 2019
.editorconfig Add editorconfig Sep 16, 2016
.gitignore build: package lock file (#791) Dec 18, 2018
.travis.yml ci(travis): semantic-release setup Jan 19, 2019
.typedoc.json chore: Replace jsdoc with typedoc (#583) Jun 26, 2018 Create Apr 6, 2017 docs(CONTRIBUTING): 🏗 Probot v8 beta Mar 8, 2019
LICENSE Update year to 2019 (#812) Jan 6, 2019 Create (#711) Oct 10, 2018
app.json pro the bot Aug 30, 2017
appveyor.yml chore: Setup Appveyor (#334) Nov 20, 2017
package-lock.json chore(package): update lockfile package-lock.json Mar 19, 2019
package.json fix(package): update @octokit/graphql to version 2.0.2 Mar 19, 2019
tsconfig.json build(package): update typescript to 2.9 (#886) Mar 12, 2019
tslint.json chore(test): Convert github tests to TypeScript (#625) Jul 18, 2018

Probot's logo, a cartoon robot


A framework for building GitHub Apps to automate and improve your workflow

npm Build Status Codecov @ProbotTheRobot on Twitter Pull Reminders

If you've ever thought, "wouldn't it be cool if GitHub could…"; I'm going to stop you right there. Most features can actually be added via GitHub Apps, which extend GitHub and can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. Apps are first class actors within GitHub.

How it works

Probot is a framework for building GitHub Apps in Node.js, written in TypeScript. GitHub Apps can listen to webhook events sent by a repository or organization. Probot uses its internal event emitter to perform actions based on those events. A simple Probot App might look like this:

module.exports = (app) => {
  app.on('issues.opened', async context => {
    const issueComment = context.issue({ body: 'Thanks for opening this issue!' })
    return context.github.issues.createComment(issueComment)

Building a Probot App

If you've landed in this GitHub repository and are looking to start building your own Probot App, look no further than! The Probot website contains our extensive getting started documentation and will guide you through the set up process.

This repository hosts the code for the npm Probot package which is what all Probot Apps run on. Most folks who land in this repository are likely looking to get started building their own app.


Probot is built by people just like you! Most of the interesting things are built with Probot, so consider starting by writing a new app or improving one of the existing ones.

If you're interested in contributing to Probot itself, check out our contributing docs to get started.

Want to chat with Probot users and contributors? Join us in Slack!


Have an idea for a cool new GitHub App (built with Probot)? That's great! If you want feedback, help, or just to share it with the world you can do so by creating an issue in the probot/ideas repository!

You can’t perform that action at this time.