From grc-engineer
Reviews GitHub/GitLab pull requests for compliance regressions like SOC 2, ISO 27001, NIST 800-53. Scans code diffs for security violations in IAM, encryption, networking and suggests fixes.
npx claudepluginhub grcengclub/claude-grc-engineering --plugin grc-engineerThis skill is limited to using the following tools:
Reviews GitHub/GitLab pull requests specifically for compliance regressions. Shifts compliance "left" into the developer's daily workflow.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Calculates TAM/SAM/SOM using top-down, bottom-up, and value theory methodologies for market sizing, revenue estimation, and startup validation.
Reviews GitHub/GitLab pull requests specifically for compliance regressions. Shifts compliance "left" into the developer's daily workflow.
Review a PR for SOC 2 compliance:
node scripts/review-pr.js myorg/infrastructure 42 SOC2
Review a PR for ISO 27001:
node scripts/review-pr.js myorg/infrastructure 42 ISO27001
Review a PR with custom framework:
node scripts/review-pr.js myorg/infrastructure 42 NIST80053
Posts GitHub comments with:
โ ๏ธ **Compliance Warning: SOC 2 CC6.1 - Least Privilege**
This PR introduces an IAM role with `AdministratorAccess`, which violates the Least Privilege principle.
**Issue:** Line 23 in `terraform/iam.tf` assigns full administrative access.
**Suggested Fix:**
```hcl
resource "aws_iam_role" "app_role" {
assume_role_policy = jsonencode({
Version = "2012-10-17"
Statement = [{
Effect = "Allow"
Action = [
"s3:GetObject",
"s3:PutObject"
]
Resource = "arn:aws:s3:::my-bucket/*"
}]
})
}
Control Reference: SOC 2 CC6.1, NIST 800-53 AC-6
## Prerequisites
- GitHub repository (owner/repo format)
- PR number
- `GITHUB_TOKEN` environment variable (requires `repo` scope)
- Optional: Framework name (defaults to SOC2)