Skip to content
Raw Markdown

Connect a git repository

Every git-managed project needs one publisher for merged changes. A CI job running the Cassis CLI works on any provider, GitHub included. The GitHub App is optional: it does the same jobs without a pipeline and adds a few of its own.

Push the repository containing your context to GitHub, GitLab or your team’s Git host. If your team already has a repository for it, add the context files there. The configured path, cassis/ by default, represents the complete context.

What the GitHub App adds

JobWith the App, Cassis does itWithout the App, you do it
Check a pull requestThe App posts a cassis / ontology validation check on every pull request that touches the context path, with the same checks as cassis context check.Add a CI job that runs cassis verify on each pull request. It runs the same checks, plus the eval suite.
Publish a mergeThe App imports the merged tree, publishes a version that records the commit, and posts the result as a cassis / ontology sync check. If the import fails, Cassis keeps the previous version and the check says why.Add a CI job that runs cassis context upload on the default branch. It publishes and records the commit; a failure shows in the job.
Close the fixed issueWhen the pull request description has a Resolves <issue-id> line, Cassis closes the issue once the merge is published.Close it yourself with cassis issues resolve after checking the fix is live.
Keep app edits in the repositoryCassis commits a publish from the web app to the default branch, and a Cassis branch can open a pull request.Nothing carries them over: a publish from the web app never reaches the repository, and the next upload replaces it. Edit in the repository only.
Run the eval suiteNot done by the App.Run cassis eval run, or cassis verify, in CI. You do this with or without the App.

Choose the App if your repository is on GitHub and you want checks and publishing without maintaining a pipeline, or if anyone will publish from the web app. Choose CI if you are on another provider, or prefer to keep every step in a pipeline you control.

Use either the GitHub App or a default-branch upload job for a project, not both. They are two ways to publish the same complete context.

Publish from CI

There is no repository connection to configure in Cassis. Store CASSIS_API_KEY in your CI secrets, then add two jobs:

  • On a pull or merge request, run cassis verify: formatting, context check, and the eval suite.
  • On the default branch, run cassis context upload to publish the merged tree.

The CI guide has copy-paste examples for GitHub Actions and GitLab CI.

Connect the GitHub App

  1. In Cassis, open Settings → GitHub → Connect GitHub.
  2. Install the Cassis App for the repositories it should access.
  3. Select the project and repository, confirm the context path, and save.
  4. Open a test pull request that changes a context file. Cassis should post a cassis / ontology validation check. After merge, the new Cassis version should record the commit.

A merge that touches the context path always creates a new version recording the merged commit, even when the context it brings matches the published one. A push that touches no file under the context path is skipped and creates no version. Add the eval suite to your CI, as in the CI guide.