Integrations — Code hosting
NerveStax and GitLab
Agents raise merge requests. Merging stays with your reviewers.
What we do
What NerveStax does with GitLab
NerveStax treats GitLab as a first-class forge, not a GitHub afterthought. Agents clone your repository into a sandbox, work on their own branch, run the tests, and raise a merge request against the base branch you choose. They cannot merge, so your approval rules decide what lands. Self-hosted GitLab works the same way.
-
Work on its own branch
Each conversation gets a branch named for it, pushed to your GitLab as the agent works. The sandbox is a cache; the branch is the record you can read at any point.
-
Raise a merge request you approve
Raising a merge request stops and waits for a person. You see the title and the source and target branches before it is created; the diff is on the merge request.
-
Test the change before you read it
The agent builds and tests the change in a sandbox against a development target first, so the merge request arrives with a result rather than a guess.
-
Read merge request state and labels
Agents read merge request state, list open ones and apply labels. That is how test runs triggered by a label are picked up and reported back into the conversation.
-
Self-hosted GitLab
A GitLab you run yourself is supported. Declare the provider on the project so NerveStax knows what a private host runs, and it uses that host's API for everything.
-
Access tokens, stored encrypted
Connect with a personal access token, yours or one shared across the organization. It is encrypted at rest, referenced by handle, and no endpoint ever reveals it.
Background
About GitLab
GitLab is a git service, hosted or run on your own infrastructure, where changes are reviewed as merge requests. Many data teams keep their dbt project and orchestration code there alongside their CI.
How it connects
What connecting it looks like
-
01
Add a GitLab access token
Create a token with repository and merge request scope, then add it in settings as a personal or organization-shared credential.
-
02
Point a project at a repository
Give the project the repository URL and the target branch agents should raise merge requests against.
-
03
Declare the provider if self-hosted
A private host could be GitLab or GitHub Enterprise, so set the provider on the project. For gitlab.com the host settles it.
-
04
Approve the first merge request
Ask an agent for a change, review the gate, and let it raise the merge request. Merging stays with your normal review.
Scope
What this does not cover
- NerveStax has no merge capability. Merge requests are governed by your project's own approval rules and pipelines.
- Agents push only to their own conversation branch; a shell guard blocks pushes anywhere else.
- GitLab connects with an access token. The GitHub App style of installation has no GitLab equivalent here.
Questions
GitLab and NerveStax
Q01Can agents merge a merge request?+
No. The product has no merge capability, so nothing it does can land on your default branch. An agent raises the merge request and stops. Your approval rules, pipelines and reviewers decide from there, the same as for any other contributor.
Q02Does self-hosted GitLab work?+
Yes. gitlab.com is recognised by its host, and for a GitLab you run yourself you declare the provider on the project, because a private hostname alone cannot tell GitLab apart from GitHub Enterprise. After that, branches, merge requests and labels all use your instance's API.
Q03What token do we need, and who holds it?+
A personal access token with repository and merge request scope. It can belong to one engineer or be shared across the organization, and it is stored encrypted with a key held outside the database. Screens show a masked value; there is no endpoint that reveals it.
Q04Will it interfere with our GitLab CI?+
Agents push a branch and raise a merge request, which triggers your pipelines exactly as a person's push would. NerveStax runs its own dbt build and tests in a sandbox as well, so you usually see both results before reviewing.
Q05Can we keep everything inside our network?+
Self-hosted NerveStax runs on your Kubernetes with your Postgres, next to your GitLab. The remaining outbound call is to your model provider, and pointing it at an OpenAI-compatible endpoint you host keeps that inside your boundary too.