One connection, two jobs
Connect GitHub once, under Settings › Connected accounts. That installs the Sitearc GitHub App on the repositories you select, and no others.
The App does two jobs. It lets your agent open a pull request. It also lets Sitearc read the preview, the merge and the production deployment for that pull request.
connected account: github, the agency's organisation
repositories: harborandpine-site only
linked to site: harborandpine.example
preview pattern: harborandpine-git-<branch>.vercel.app
default branch: main
first pull request: one branch, one commit, labelled sitearc
merged by: a person, in github
What the pull request path needs
Three things, in this order.
- A repository linked to the project. The tool refuses with “No repository is
linked to this project. Run
link_repofirst.” - A GitHub App installation connected for that project. Without it the tool refuses with “The GitHub App is not connected for this project.”
- One call supplying the complete new contents of every file the change touches.
The installation token is minted inside the call from the installation id. The caller cannot pass a credential in, and the response carries none.
What the tool does not do
- It does not merge. Its own description says it merges nothing.
- It does not deploy.
- It does not require a recorded approval before it opens a pull request. Nothing here should be read as claiming that it does.
The human gate is the merge. The tool creates a branch and one commit, and a person decides whether that reaches the default branch.
Acceptance: the connection is ready when
- the GitHub App is installed on the repository, and on no others you did not choose
link_repohas run for the project, and the default branch is correct- the site’s preview link resolves for an open pull request
- the first pull request arrives with every supplied file in one commit
- the branch is prefixed as the tool describes, and it is not the default branch
- re-running the same request does not create a second pull request
Troubleshooting
| Refusal | Cause | Fix |
|---|---|---|
| No repository is linked | link_repo has not run |
Link the repository, then retry |
| The GitHub App is not connected | GitHub was never connected in Settings | Connect it, or ask the owner to |
| The installation was removed | Uninstalled on GitHub’s side | Reconnect before retrying |
| A pull request already exists for a different revision | The branch belongs to another change | Review the existing pull request, or ask for a new decision |
| Preview URL cannot be resolved | The preview has not deployed yet | Wait for the deployment, then ask again |
Limits
The GitHub App is the only path that can write. It works only in the repositories you selected, and each site links one repository.
This page was written from the two source files named above. GitHub’s own documentation was not reachable from the environment this bundle ran in.