Skip to main content
pinbox github setup connects a cloud hub to GitHub. The local hub never needs it — pinbox link there rides your own gh login. A Worker cannot shell out, so a cloud hub authenticates as a GitHub App, and this command creates, installs and wires that App in one sitting. It is interactive and browser-driven. A person runs it at a terminal; the agent skill says so, and agents do not.

Usage

What it does

Run it from the repository whose issues the pins should link to, with the scaffolded hub worker somewhere under it. There is nothing to configure: Then, in order:
  1. Create. Your browser opens GitHub’s App review page, pre-filled from a manifest pinbox supplies: permissions Issues: Read & write and Metadata: Read-only, events Issues and Issue comment, webhook URL https://<hub>/_pinbox/webhooks/github. You click Create GitHub App. GitHub sends the new App’s id, private key and webhook secret straight back to pinbox — nothing to download or paste.
  2. Install. Your browser opens the App’s install page; you pick the repo. pinbox waits for the installation to appear.
  3. Wire. GITHUB_APP_ID, GITHUB_INSTALLATION_ID and GITHUB_REPO are written into the worker’s wrangler.jsonc vars, and the private key and webhook secret are set with wrangler secret put. If wrangler is not logged in, the two values are printed for you to set instead, and setup still completes.
  4. Verify. pinbox mints an installation token and reads the repo with it.
Deploy the worker afterwards — vars take effect on deploy; secrets are live at once.

Example

JSON

Run from a terminal, --json prints the same result as an envelope. Secrets appear in it only when they could not be written through wrangler.

Errors

If the App exists but the installation step timed out, install it from the URL in the hint and re-run: GitHub offers to reuse the existing App.
After this, pinbox link against the cloud hub works exactly as it does locally. Inbound comments and closes arrive by webhook the moment GitHub sends them; see GitHub.