# Set up a git-managed project

In a git-managed project, the repository is where the ontology is edited and reviewed. After merge, the Cassis GitHub App or your default-branch CI job publishes the reviewed version.

## Set it up once

1.  [Install the CLI](/build/cli/) and create an API key for the repository workflow.
    
2.  [Add the ontology files](/build/bootstrap/) to the repository. Pull the current ontology if the project already has one; otherwise start from the minimal example.
    
3.  [Connect the repository](/build/git-connect/). On GitHub, install the Cassis App. On any other provider, use the CLI from your pipeline.
    
4.  [Set up CI](/build/ci/) so a pull request validates the ontology and runs its eval suite before merge.
    

After setup, every change follows the same path: edit the checkout, validate it, open a pull request, merge it, and confirm the new version is live. See [Curate a git-managed project](/curate/agent/) for that daily workflow.

**Edit in the repository.** Cassis imports the complete ontology tree, not a partial patch. Publishing a separate app edit while repository work is in progress can overwrite one side or the other.

## Setup guides

-   [1\. Add the ontology files](/build/bootstrap/): Put the current Cassis ontology in the repository, or start from the minimal example.
-   [2\. Connect the repository](/build/git-connect/): Use the GitHub App or a provider-neutral CLI pipeline.
-   [3\. Protect changes with CI](/build/ci/): Validate the ontology and run evals before merge.
-   [Troubleshoot the git workflow](/build/troubleshooting/): Fix a failed check, missing check, or merge that did not publish.
