CrowdStrike / CrowdStrike/codestrike
[Feature Request]: VCS Integration GitLab
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 3
- Forks
- 0
- Avg merge
- 1d 21h
- Merged PRs (30d)
- 9
Description
Feature Description
Add a GitLab implementation of scm.Client so codestrike can review GitLab merge requests.
Use Case
As a developer/reviewer, I want to point codestrike at a GitLab merge request URL and get an AI review comment posted back, the same way it works for GitHub PRs today.
Related Area
VCS integration - GitLab
Proposed Solution (Optional)
Add internal/scm/gitlab/ implementing the scm.Client interface against the GitLab REST API (/projects/:id/merge_requests/:iid, .../diffs, .../notes). Support both gitlab.com and self-managed instances via a configurable base_url (matching the github.base_url config pattern). Wire into internal/setup/wiring.go and add merge-request URL parsing/detection alongside GitHub PR URL parsing in the CLI.
Alternatives Considered (Optional)
Could use go-gitlab SDK instead of hand-rolled HTTP calls (the GitHub client currently uses raw net/http); worth deciding whether to keep dependency-free or adopt an SDK for GitLab specifically since its API has more surface area (e.g., discussions vs. simple notes).
Additional Context (Optional)
GitLab distinguishes between merge request "notes" and "discussions" for inline comments — need to decide how this maps to scm.PRComment/ReviewComment.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the scm.Client interface, the existing GitHub PR integration, internal/setup/wiring.go, and the CLI's GitHub PR URL parsing. Define the GitLab notes-versus-discussions mapping and base_url behavior before implementing internal/scm/gitlab/; done means GitLab merge-request URLs work for gitlab.com and self-managed instances and review comments are posted.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- gitlab, go
- Domain
- api, backend, cli
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100