Skip to content

Commit fd32fbb

Browse files
committed
feat: add language-specific code review expert specs with comprehensive analysis capabilities
1 parent 66be2c3 commit fd32fbb

9 files changed

+893
-0
lines changed
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
spec "CodeReviewExpert" v1.0 {
2+
description: "AI-powered code review expert with multi-language analysis, security scanning, and intelligent feedback generation for comprehensive PR evaluation."
3+
4+
inputs:
5+
review_id: string
6+
repository_name: string
7+
pr_number: int
8+
target_branch: string { default: "main" }
9+
source_branch: string
10+
11+
review_scope: string { default: "comprehensive" }
12+
languages_detected: string
13+
file_count: int { default: 0 }
14+
lines_changed: int { default: 0 }
15+
16+
security_scan_enabled: bool { default: true }
17+
performance_analysis: bool { default: true }
18+
code_quality_check: bool { default: true }
19+
style_guide_enforcement: bool { default: true }
20+
21+
ai_models: string
22+
static_analysis_tools: string
23+
security_scanners: string
24+
25+
review_priority: string { default: "normal" }
26+
automated_fixes: bool { default: false }
27+
learning_mode: bool { default: true }
28+
29+
compliance_checks: bool { default: true }
30+
documentation_review: bool { default: true }
31+
test_coverage_analysis: bool { default: true }
32+
dependency_audit: bool { default: true }
33+
34+
computed:
35+
review_complexity: -> calculate_complexity()
36+
estimated_review_time: -> estimate_time()
37+
risk_assessment: -> assess_risk()
38+
39+
events:
40+
on_create(review): initialize_code_review
41+
on_analysis_complete(static): generate_feedback
42+
on_security_scan_complete(results): process_security_findings
43+
on_quality_check_complete(metrics): evaluate_code_quality
44+
on_error(analysis_failure): handle_review_error
45+
46+
actions:
47+
initialize_code_review {
48+
description: "Initialize comprehensive code review process"
49+
mcp_call: "code_review/initialize"
50+
parameters: {
51+
review_id: review_id,
52+
repository_name: repository_name,
53+
pr_number: pr_number,
54+
target_branch: target_branch,
55+
source_branch: source_branch,
56+
review_scope: review_scope
57+
}
58+
}
59+
60+
generate_feedback {
61+
description: "Generate intelligent code review feedback"
62+
mcp_call: "code_review/generate_feedback"
63+
parameters: {
64+
review_id: review_id,
65+
languages_detected: languages_detected,
66+
review_complexity: review_complexity,
67+
ai_models: ai_models
68+
}
69+
}
70+
71+
process_security_findings {
72+
description: "Process and prioritize security scan results"
73+
mcp_call: "code_review/security_analysis"
74+
parameters: {
75+
review_id: review_id,
76+
security_scan_enabled: security_scan_enabled,
77+
risk_assessment: risk_assessment
78+
}
79+
}
80+
81+
evaluate_code_quality {
82+
description: "Evaluate code quality metrics and standards"
83+
mcp_call: "code_review/quality_evaluation"
84+
parameters: {
85+
review_id: review_id,
86+
code_quality_check: code_quality_check,
87+
style_guide_enforcement: style_guide_enforcement
88+
}
89+
}
90+
91+
handle_review_error {
92+
description: "Handle code review analysis errors"
93+
mcp_call: "code_review/error_handling"
94+
parameters: {
95+
review_id: review_id,
96+
error_type: "analysis_failure"
97+
}
98+
}
99+
}
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
spec "DocumentationExpert" v1.0 {
2+
description: "AI-powered documentation review expert with intelligent content analysis, style consistency, and comprehensive technical writing evaluation."
3+
4+
inputs:
5+
review_id: string
6+
document_type: string { default: "technical" }
7+
content_language: string { default: "english" }
8+
target_audience: string { default: "developers" }
9+
document_length: int { default: 0 }
10+
11+
grammar_check: bool { default: true }
12+
style_consistency: bool { default: true }
13+
technical_accuracy: bool { default: true }
14+
readability_analysis: bool { default: true }
15+
16+
code_examples_present: bool { default: false }
17+
api_documentation: bool { default: false }
18+
user_guide: bool { default: false }
19+
changelog: bool { default: false }
20+
21+
ai_models: string
22+
language_tools: string
23+
style_guides: string
24+
25+
auto_corrections: bool { default: false }
26+
suggestion_mode: bool { default: true }
27+
accessibility_check: bool { default: true }
28+
29+
compliance_standards: string
30+
brand_guidelines: bool { default: true }
31+
seo_optimization: bool { default: false }
32+
translation_ready: bool { default: false }
33+
34+
computed:
35+
readability_score: -> calculate_readability()
36+
content_quality: -> assess_quality()
37+
completeness_score: -> measure_completeness()
38+
39+
events:
40+
on_create(review): initialize_doc_review
41+
on_analysis_complete(content): generate_doc_feedback
42+
on_style_check_complete(results): process_style_findings
43+
on_technical_review_complete(accuracy): validate_technical_content
44+
on_error(processing_failure): handle_doc_error
45+
46+
actions:
47+
initialize_doc_review {
48+
description: "Initialize comprehensive documentation review"
49+
mcp_call: "documentation/initialize"
50+
parameters: {
51+
review_id: review_id,
52+
document_type: document_type,
53+
content_language: content_language,
54+
target_audience: target_audience,
55+
document_length: document_length
56+
}
57+
}
58+
59+
generate_doc_feedback {
60+
description: "Generate intelligent documentation feedback"
61+
mcp_call: "documentation/generate_feedback"
62+
parameters: {
63+
review_id: review_id,
64+
readability_score: readability_score,
65+
content_quality: content_quality,
66+
ai_models: ai_models
67+
}
68+
}
69+
70+
process_style_findings {
71+
description: "Process style and consistency findings"
72+
mcp_call: "documentation/style_analysis"
73+
parameters: {
74+
review_id: review_id,
75+
style_consistency: style_consistency,
76+
brand_guidelines: brand_guidelines
77+
}
78+
}
79+
80+
validate_technical_content {
81+
description: "Validate technical accuracy and completeness"
82+
mcp_call: "documentation/technical_validation"
83+
parameters: {
84+
review_id: review_id,
85+
technical_accuracy: technical_accuracy,
86+
completeness_score: completeness_score
87+
}
88+
}
89+
90+
handle_doc_error {
91+
description: "Handle documentation processing errors"
92+
mcp_call: "documentation/error_handling"
93+
parameters: {
94+
review_id: review_id,
95+
error_type: "processing_failure"
96+
}
97+
}
98+
}
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
spec "GoExpert" v1.0 {
2+
description: "AI-powered Go code review expert with specialized analysis for Go idioms, concurrency patterns, and performance optimization."
3+
4+
inputs:
5+
review_id: string
6+
go_version: string { default: "1.21" }
7+
project_type: string { default: "web_service" }
8+
build_tags: string { default: "" }
9+
target_os: string { default: "linux" }
10+
11+
gofmt_compliance: bool { default: true }
12+
golint_analysis: bool { default: true }
13+
go_vet_checks: bool { default: true }
14+
ineffassign_check: bool { default: true }
15+
16+
goroutine_analysis: bool { default: true }
17+
channel_patterns: bool { default: true }
18+
context_usage: bool { default: true }
19+
error_handling_patterns: bool { default: true }
20+
21+
ai_models: string
22+
static_analysis_tools: string { default: "golangci-lint,staticcheck" }
23+
testing_framework: string { default: "testing" }
24+
25+
security_scanning: bool { default: true }
26+
dependency_vulnerabilities: bool { default: true }
27+
performance_profiling: bool { default: true }
28+
memory_analysis: bool { default: true }
29+
30+
gin_patterns: bool { default: false }
31+
echo_patterns: bool { default: false }
32+
grpc_patterns: bool { default: false }
33+
kubernetes_patterns: bool { default: false }
34+
35+
computed:
36+
idiomatic_score: -> calculate_go_idioms()
37+
concurrency_rating: -> assess_concurrency()
38+
performance_score: -> measure_go_performance()
39+
40+
events:
41+
on_create(review): initialize_go_review
42+
on_lint_complete(results): process_go_linting
43+
on_vet_complete(issues): handle_go_vet_issues
44+
on_race_detected(conditions): analyze_race_conditions
45+
on_error(build_failure): handle_go_error
46+
47+
actions:
48+
initialize_go_review {
49+
description: "Initialize Go-specific code review"
50+
mcp_call: "go/initialize"
51+
parameters: {
52+
review_id: review_id,
53+
go_version: go_version,
54+
project_type: project_type,
55+
build_tags: build_tags,
56+
target_os: target_os
57+
}
58+
}
59+
60+
process_go_linting {
61+
description: "Process Go linting and formatting results"
62+
mcp_call: "go/process_linting"
63+
parameters: {
64+
review_id: review_id,
65+
gofmt_compliance: gofmt_compliance,
66+
golint_analysis: golint_analysis,
67+
idiomatic_score: idiomatic_score
68+
}
69+
}
70+
71+
handle_go_vet_issues {
72+
description: "Handle Go vet analysis issues"
73+
mcp_call: "go/vet_analysis"
74+
parameters: {
75+
review_id: review_id,
76+
go_vet_checks: go_vet_checks,
77+
ineffassign_check: ineffassign_check
78+
}
79+
}
80+
81+
analyze_race_conditions {
82+
description: "Analyze Go concurrency and race conditions"
83+
mcp_call: "go/concurrency_analysis"
84+
parameters: {
85+
review_id: review_id,
86+
goroutine_analysis: goroutine_analysis,
87+
channel_patterns: channel_patterns,
88+
concurrency_rating: concurrency_rating
89+
}
90+
}
91+
92+
handle_go_error {
93+
description: "Handle Go build and analysis errors"
94+
mcp_call: "go/error_handling"
95+
parameters: {
96+
review_id: review_id,
97+
error_type: "build_failure"
98+
}
99+
}
100+
}

0 commit comments

Comments
 (0)