Automatically reviews code changes against issue/spec at evaluate phase start to ensure implementation completeness
Automatically reviews code changes against issue/spec at evaluate phase start to ensure implementation completeness
/plugin marketplace add fractary/claude-plugins/plugin install fractary-faber@fractaryThis skill inherits all available tools. When active, it can use any tool Claude has access to.
scripts/gather-code-changes.shscripts/gather-issue-context.shscripts/gather-spec-context.shscripts/generate-report.shworkflow/analyze-quality.mdworkflow/analyze-specification.mdworkflow/determine-status.mdworkflow/gather-context.mdYou use the claude-opus-4-5 model for complex analysis of code changes against specifications.
Your analysis provides one of three status codes:
<CRITICAL_RULES>
Context Provided by FABER Manager:
{
"work_id": "233",
"run_id": "fractary/claude-plugins/abc123",
"issue_data": {
"title": "...",
"description": "...",
"labels": [...],
"comments": [...]
},
"artifacts": {
"branch_name": "feat/233-...",
"spec_path": "specs/WORK-00233-..."
}
}
</INPUTS>
<WORKFLOW>
Collect all necessary information for review.
See workflow/gather-context.md for detailed steps.
Outputs:
Verify code changes implement all requirements from spec/issue.
See workflow/analyze-specification.md for detailed steps.
Analysis Points:
Outputs:
Review code for quality issues and improvement opportunities.
See workflow/analyze-quality.md for detailed steps.
Analysis Points:
Outputs:
Classify implementation completeness into status codes.
See workflow/determine-status.md for detailed logic.
Classification Logic:
IF spec_coverage == 100% AND
NO critical/major issues AND
test_coverage >= 85% AND
documentation_adequate
THEN status = "success"
ELSE IF spec_coverage >= 95% AND
ONLY minor issues AND
test_coverage >= 80%
THEN status = "warning"
ELSE
status = "failure"
Create detailed analysis report.
Report Contents:
Report Location:
.fractary/plugins/faber/reviews/{work_id}-{timestamp}.md
If configured, post summary to GitHub issue.
Comment Format:
## Issue Review Analysis
**Status**: {status_emoji} {status}
### Specification Compliance
{coverage_summary}
### Key Findings
{findings_list}
### Recommendations
{recommendations}
---
*Analyzed by issue-reviewer at {timestamp}*
</WORKFLOW>
<OUTPUTS>
Success Response:
{
"status": "success",
"message": "Implementation complete - all requirements met",
"details": {
"spec_coverage": 100,
"requirements_met": 8,
"requirements_total": 8,
"quality_issues": [],
"test_coverage": 92,
"report_path": ".fractary/plugins/faber/reviews/233-20251205143000.md"
},
"recommendation": "Ready for release"
}
Warning Response:
{
"status": "warning",
"message": "Implementation complete with minor improvements identified",
"warnings": [
"Minor: Missing error handling in gather-context.sh:45",
"Minor: Consider adding edge case test for empty issue"
],
"details": {
"spec_coverage": 98,
"requirements_met": 7,
"requirements_total": 8,
"quality_issues": [
{"severity": "minor", "description": "...", "location": "file:line"}
],
"test_coverage": 85,
"report_path": ".fractary/plugins/faber/reviews/233-20251205143000.md"
},
"recommendation": "Address minor issues before release"
}
Failure Response:
{
"status": "failure",
"message": "Implementation incomplete - critical gaps found",
"errors": [
"Critical: FR-1 (Automatic invocation) not implemented",
"Major: No tests added for new skill"
],
"details": {
"spec_coverage": 75,
"requirements_met": 6,
"requirements_total": 8,
"critical_gaps": [
"Automatic invocation at evaluate phase not configured",
"Status code determination logic missing"
],
"quality_issues": [...],
"test_coverage": 0,
"report_path": ".fractary/plugins/faber/reviews/233-20251205143000.md"
},
"recommendation": "Return to Build phase to address gaps"
}
</OUTPUTS>
<COMPLETION_CRITERIA> This skill is complete when:
<ERROR_HANDLING>
Missing Specification:
Missing Issue:
Network Errors:
Large Diffs:
</ERROR_HANDLING>
<INTEGRATION>This skill is invoked automatically by faber-manager at evaluate phase entry:
evaluate phase entry
└─ [AUTOMATIC] issue-reviewer skill invocation
├─ gather-context
├─ analyze-specification
├─ analyze-quality
└─ determine-status
└─ IF status == "failure"
└─ Mark phase as REQUIRES_REVIEW
└─ ELSE
└─ Continue to evaluate phase steps
plugins/faber/skills/issue-reviewer/
├── SKILL.md # This file
├── workflow/
│ ├── gather-context.md # Step 1: Context gathering
│ ├── analyze-specification.md # Step 2: Spec compliance
│ ├── analyze-quality.md # Step 3: Code quality
│ └── determine-status.md # Step 4: Status logic
└── scripts/
├── gather-issue-context.sh # Fetch issue + comments
├── gather-spec-context.sh # Fetch specifications
├── gather-code-changes.sh # Get diff
└── generate-report.sh # Format report
Reports are saved to:
.fractary/plugins/faber/reviews/{work_id}-{timestamp}.md
Format: {work_id}-{YYYYMMDDHHmmss}.md
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.