
Security News
arXiv Is Rate Limiting Authors Following a Flood of AI Slop Submissions
arXiv now limits authors to two submissions a month as AI slop overwhelms moderators, delays good papers, and sparks debate over applying the limit to everyone.
@diff-review-system/drs
Advanced tools
AI-powered code review bot for GitLab MRs and GitHub PRs using OpenCode SDK
An automated code review bot for GitLab Merge Requests and GitHub Pull Requests powered by OpenCode SDK and Claude AI.
npm install -g @diff-review-system/drs
cd your-project
drs init
# Copy example env file
cp .env.example .env
# Edit .env and set:
# - GITLAB_TOKEN: Your GitLab access token (for GitLab MRs)
# - GITHUB_TOKEN: Your GitHub access token (for GitHub PRs)
# - OPENCODE_SERVER: URL of your OpenCode instance (optional - will start in-process if not set)
# - ANTHROPIC_API_KEY: Your Anthropic API key for Claude
Note: OPENCODE_SERVER is optional. If not provided, DRS will automatically start an OpenCode server in-process. For production deployments or when sharing across multiple tools, you can run a dedicated OpenCode server and set the URL.
# Review unstaged changes
drs review-local
# Review staged changes
drs review-local --staged
# Use specific agents
drs review-local --agents security,quality
Review code locally before pushing:
# Review local changes
drs review-local
# Review specific GitLab MR
drs review-mr --project my-org/my-repo --mr 123 --post-comments
# Review specific GitHub PR
drs review-pr --owner octocat --repo hello-world --pr 456 --post-comments
Add to your .gitlab-ci.yml:
include:
- remote: 'https://raw.githubusercontent.com/your-org/drs/main/templates/gitlab-ci.yml'
ai_review:
extends: .drs_review
variables:
OPENCODE_SERVER: "http://opencode.internal:3000"
Note: GitHub Actions requires an OpenCode server to be accessible. You must either:
OPENCODE_SERVER secretAdd to .github/workflows/pr-review.yml:
name: DRS PR Review
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
review:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Build from source
run: |
npm ci
npm run build
- name: Review Pull Request
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
OPENCODE_SERVER: ${{ secrets.OPENCODE_SERVER }} # Required: Set this in repository secrets
run: |
node dist/cli/index.js review-pr \
--owner ${{ github.event.repository.owner.login }} \
--repo ${{ github.event.repository.name }} \
--pr ${{ github.event.pull_request.number }} \
--post-comments
Required Secrets:
ANTHROPIC_API_KEY: Your Anthropic API keyOPENCODE_SERVER: URL of your OpenCode server (e.g., http://opencode.yourcompany.com:3000)Deploy as a standalone service:
# Using Docker Compose
cd examples
docker-compose up -d
# Configure webhooks:
# GitLab: http://your-server:8080/webhook/gitlab (Merge request events, Comments)
# GitHub: http://your-server:8080/webhook/github (Pull request events)
DRS supports two modes of OpenCode server operation:
If OPENCODE_SERVER is not set, DRS will automatically start an OpenCode server within the same process:
# No server configuration needed
drs review-local
Pros:
Cons:
For production deployments or when sharing across multiple tools, run a dedicated OpenCode server:
# Set the server URL
export OPENCODE_SERVER=http://opencode.internal:3000
drs review-local
Pros:
Cons:
DRS uses OpenCode SDK with markdown-based agent definitions:
.opencode/
├── agent/
│ ├── gitlab-reviewer.md # GitLab MR orchestrator
│ ├── github-reviewer.md # GitHub PR orchestrator
│ ├── local-reviewer.md # Local diff reviewer
│ └── review/
│ ├── security.md # Security specialist
│ ├── quality.md # Code quality expert
│ ├── style.md # Style checker
│ └── performance.md # Performance analyzer
└── opencode.jsonc # Configuration
Create custom agents in your project:
# Create custom security agent
mkdir -p .drs/agents
cat > .drs/agents/security.md << 'EOF'
---
description: Custom security reviewer
model: opencode/claude-sonnet-4-5
---
You are a security expert for this specific application.
## Project-Specific Rules
[Add your custom rules here]
EOF
Edit .drs/drs.config.yaml:
review:
agents:
- security
- quality
ignorePatterns:
- "*.test.ts"
- "*.md"
Focuses on:
Reviews:
Checks:
Analyzes:
# Required (depending on platform)
GITLAB_TOKEN=glpat-xxx # For GitLab MR reviews
GITHUB_TOKEN=ghp-xxx # For GitHub PR reviews
ANTHROPIC_API_KEY=sk-ant-xxx # For Claude AI
# Optional
OPENCODE_SERVER=http://localhost:3000 # Leave empty to start in-process server
GITLAB_URL=https://gitlab.com
REVIEW_AGENTS=security,quality,style,performance
.drs/drs.config.yaml - DRS-specific configuration.gitlab-review.yml - Alternative location.opencode/opencode.jsonc - OpenCode configurationSee the examples/ directory for:
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Development mode
npm run dev
Apache-2.0
Contributions welcome! Please read the contributing guidelines first.
FAQs
Workflow-first AI code maintenance for reviews, changelogs, docs, and repository upkeep.
The npm package @diff-review-system/drs receives a total of 292 weekly downloads. As such, @diff-review-system/drs popularity was classified as not popular.
We found that @diff-review-system/drs demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
arXiv now limits authors to two submissions a month as AI slop overwhelms moderators, delays good papers, and sparks debate over applying the limit to everyone.

Research
/Security News
A new GhostAction wave hits hundreds of GitHub repos, expanding CI/CD secret theft to cloud and AI credentials in source code and git history.

Research
/Security News
Tensorlake npm SDK version 0.5.144 was compromised in a ChainDrop / Shai-Hulud attack, delivering credential-stealing malware.