vibes.diy/docs Home Discord
creator docs · works with

Works with GitHub

Build a pull request bot, a code reviewer, an issue sorter or a repo dashboard on a repo someone connects in one click — or show each visitor's GitHub profile next to what they add.

What you can build

Apps that work on a real repo: a bot that answers every new pull request, a reviewer that reads the diff and leaves comments, an issue sorter that labels what comes in, a dashboard of a repo's commits and open issues. The person who connects a repo picks exactly which repos your app gets, and GitHub's events for those repos arrive at your app as they happen. Apps that just want to know who someone is on GitHub can show each visitor's profile — name, avatar, bio — next to what they add.

How it connects

There are two lanes, and an app can use both side by side.

  • Repos ride the vibes.diy GitHub App. Your app shows a Connect link; the person reads your app's one-sentence reason on a vibes.diy consent page, signs in to GitHub, and ticks the repos this app gets. The platform's GitHub App holds the credential, so your app carries no GitHub key. Your backend.js declares the permissions it uses, calls the repo with ctx.github.fetch, and hears events at its /_api/github-webhook route.
  • A profile rides a connection. Each visitor links their own GitHub account in one click, and your backend reads their profile through @vibes.diy/social. See Connect accounts.

Public data nobody signs in for — the stars or releases of a public repo — is an ordinary fetch from your backend, with no connect step at all.

What it can read and do

Lane Your app can read Your app can do
GitHub App (repos) Code, commits, branches, releases, pull requests and their files, issues and labels, commit statuses and check results, Actions runs Comment on and review pull requests, label and comment on issues, mark commits passing or failing, post check results, change code and merge, each only when declared
Connection (profile) The visitor's login, name, bio, avatar and profile link Show who they are next to their entries

The consent page lists every permission your app declares in plain words, so the person sees exactly what it will do in their repos before they connect.

See it working

Rules Bag Reviewer: connect a repo, and each new pull request gets an automatic review against a shared set of coding rules, posted as comments on the pull request.

Starter prompts

  • Build a GitHub bot that leaves a friendly note on each new pull request saying how big the change is.
  • Make an issue sorter for my GitHub repo that suggests a label for each of its open issues and applies it with one tap.
  • Make a guestbook where visitors sign in with GitHub and their avatar and bio show next to their note.

Good to know

  • The person connecting a repo can push to it. The repo picker offers the repos they can write to; someone with read access can ask a maintainer to connect it.
  • Each app gets the repos chosen for it. Connecting a repo to one app leaves every other app as it was, and pressing Connect again is how someone adds or removes a repo.
  • The repo's team comes first. A bot that acts on its own starts by answering the repo's owners, members and collaborators, with a two-choice control that opens it to anyone.
  • Profile connections read the profile. Anything that changes a repo goes through the GitHub App lane, where the person picks the repos.

Go deeper