majesticlabs-dev/majestic-marketplace

code-review

Generic code review that auto-detects tech stack and delegates to appropriate framework-specific orchestrator

View source
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

Code Review

Generic code review command that detects your project's tech stack and delegates to the appropriate framework-specific review orchestrator.

Config

TECH_STACK = config_read("tech_stack", "generic")
bash
DEFAULT_BRANCH=$(git remote show origin | grep 'HEAD branch' | awk '{print $NF}')

Arguments

<inputarguments> $ARGUMENTS </inputarguments>

Scope modes:

  • #123 or GitHub URL → PR changes
  • (no args) → unstaged changes (working directory)
  • --staged → staged changes only
  • --branch → current branch vs default branch
  • path/to/file ... → specific files

Step 1: Detect Tech Stack

Use "Tech stack" from Context above. If empty, auto-detect from project files:

Auto-Detection Fallback

If not configured in .agents.yml, detect from project files:

DetectionTech Stack
Gemfile existsrails
pyproject.toml or requirements.txt existspython
package.json exists (no Gemfile)javascript
None of the abovegeneric
bash
# Detection commands
[ -f Gemfile ] && echo "rails"
[ -f pyproject.toml ] || [ -f requirements.txt ] && echo "python"
[ -f package.json ] && echo "javascript"

Step 2: Gather Changed Files

Based on scope from arguments:

bash
# Default (unstaged changes)
git diff --name-only --diff-filter=d

# Staged mode
git diff --cached --name-only --diff-filter=d

# Branch mode (use "Default branch" from Context)
git diff <default_branch>...HEAD --name-only --diff-filter=d

# PR mode
gh pr diff <PR_NUMBER> --name-only

Step 3: Delegate to Framework Orchestrator

Based on detected tech stack, invoke the appropriate orchestrator agent via Task tool:

Rails Projects

Task: majestic-rails:review/code-review-orchestrator

Prompt: "Review these Rails files. Scope: [scope mode]

Changed files:
[file list]"

Python Projects

Task: majestic-python:review/code-review-orchestrator

Prompt: "Review these Python files. Scope: [scope mode]

Changed files:
[file list]"

JavaScript Projects (Not Yet Supported)

markdown
**Tech Stack:** JavaScript

JavaScript code review orchestrator is not yet available.

For now, you can run the generic simplicity reviewer:
`Task(subagent_type: "simplicity-reviewer") [files]`

Or configure `tech_stack: generic` in AGENTS.md to use generic reviewers.

Generic Projects

For unknown or generic tech stacks, run minimal reviewers directly:

  1. Load project topics (if configured)
  2. Run both reviewers in parallel:
  3. Synthesize output
# Run these tasks in parallel:

Task 1: majestic-engineer:review/simplicity-reviewer
Prompt: "Review these files for YAGNI violations, unnecessary complexity: [file list]"

Step 4: Report Results

The orchestrator will return a synthesized report. Present it to the user with:

  1. Status - BLOCKED / NEEDS CHANGES / APPROVED
  2. Summary - Key findings by severity (P1/P2/P3)
  3. Details - Full agent reports in collapsible sections

Tech Stack Configuration

To explicitly set your tech stack (recommended for multi-language projects), add to AGENTS.md:

markdown
## Project Configuration

tech_stack: rails  # rails | python | javascript | generic

Examples

bash
# Review unstaged changes (auto-detect tech stack)
Skill("code-review")

# Review staged changes
Skill("code-review") --staged

# Review current branch vs main
Skill("code-review") --branch

# Review a PR
Skill("code-review") #123

# Review specific files
Skill("code-review") app/models/user.rb app/controllers/users_controller.rb
from this repository

More skills

All skills