Packages
nous
0.13.1
0.17.0
0.16.6
0.16.5
0.16.4
0.16.3
0.16.2
0.16.1
0.16.0
0.15.8
0.15.7
0.15.6
0.15.5
0.15.4
0.15.3
0.15.2
0.15.1
0.15.0
0.14.3
0.14.2
0.14.1
0.14.0
0.13.3
0.13.2
0.13.1
0.13.0
0.12.17
0.12.16
0.12.15
0.12.14
0.12.13
0.12.12
0.12.11
0.12.9
0.12.7
0.12.6
0.12.5
0.12.3
0.12.2
0.12.0
0.11.3
0.11.0
0.10.1
0.10.0
0.9.0
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.5.0
AI agent framework for Elixir with multi-provider LLM support
Current section
Files
Jump to
Current section
Files
lib/nous/skills/code_review.ex
defmodule Nous.Skills.CodeReview do
@moduledoc "Built-in skill for code review."
use Nous.Skill, tags: [:code, :quality, :review], group: :review
@impl true
def name, do: "code_review"
@impl true
def description, do: "Reviews code for bugs, style issues, and quality improvements"
@impl true
def instructions(_agent, _ctx) do
"""
You are a code review specialist. When reviewing code:
1. **Bug Detection**: Look for logic errors, off-by-one errors, null/nil handling issues, race conditions, and resource leaks
2. **Style & Readability**: Check naming conventions, function length, code duplication, and clarity
3. **Performance**: Identify N+1 queries, unnecessary allocations, missing indexes, and algorithmic inefficiencies
4. **Security**: Flag injection vulnerabilities, improper input validation, credential exposure, and insecure defaults
5. **Best Practices**: Verify error handling, test coverage gaps, documentation completeness, and API design
For each issue found, provide:
- The specific location (file and line if possible)
- The severity (critical, warning, suggestion)
- A concrete fix or improvement
"""
end
@impl true
def match?(input) do
input = String.downcase(input)
String.contains?(input, ["review", "code review", "check this code", "review my"])
end
end