Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/viniciuscs84-csharp-code-review
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/csharp-code-review
What's inside
- Skill name
csharp-code-review- Description
- C# code review skill. Analyzes code quality from OOP, SOLID, GoF design pattern, modern C# features, and performance perspectives. Use before pull requests, when optimizing code, or auditing legacy codebases.
- License
- MIT
- Instructions
- 195 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- allowed-tools: must be a space-separated string
Files (1)
- SKILL.md
SKILL.md (first lines)
# C# 코드 리뷰 스킬
OOP 원칙, SOLID 원칙, GoF 디자인 패턴, 최신 C# 기능, 성능 관점에서 C# 코드를 체계적으로 리뷰합니다.
**중요: 모든 리뷰 결과는 반드시 한국어로 작성합니다.** 코드 식별자, 기술 용어, 패턴 이름 등은 원문 그대로 유지하되, 설명·문제점·개선안 등 서술 부분은 한국어를 사용합니다.
## 인자
- `$ARGUMENTS[0]`: 대상 파일 또는 디렉토리 경로 (선택, 미지정 시 최근 수정된 .cs 파일을 탐색)
## 실행 단계
### 1단계: 리뷰 대상 식별
사용자가 파일을 지정하지 않은 경우:
- 최근 수정된 `.cs` 파일 확인
- 또는 사용자에게 리뷰할 파일/디렉토리 지정 요청
### 2단계: 코드 분석
대상 코드를 읽고 아래 관점에서 분석합니다.
## 리뷰 체크리스트
### OOP 4대 원칙
| 원칙 | 리뷰 항목 |
|------|-----------|
| **캡슐화** | private 필드, 프로퍼티 접근, 구현 세부사항 은닉 |
| **상속** | 적절한 상속 계층, 상속보다 합성 우선 |
| **다형성** | 인터페이스/추상 클래스 활용, virtual 메서드 적절성 |
| **추상화** | 적절한 추상화 수준, 불필요한 세부사항 노출 |
### SOLID 원칙
| 원칙 | 리뷰 항목 | 위반 징후 |
|------|-----------|-----------|
| **SRP** | 클래스가 단일 책임을 갖는가? | 여러 이유로 클래스가 변경됨, 메서드 과다 |
| **OCP** | 확장에 열려있고 수정에 닫혀있는가? | 새 기능 추가 시 기존 코드 수정 필요, switch/if-else 체인 |
| **LSP** | 하위 타입이 상위 타입을 대체할 수 있는가? | 하위 클래스에서 예외 발생, 빈 메서드 오버라이드 |
| **ISP** | 클라이언트별로 인터페이스가 분리되어 있는가? | NotImplementedException, 미사용 메서드 |
| **DIP** | 추상화에 의존하는가? | new 직접 인스턴스화, 구체 클래스 타입 의존 |
### GoF 디자인 패턴 적용 기회
코드에서 다음 패턴을 적용할 수 있는 부분을 식별합니다:
**생성 패턴**
- 복잡한 객체 생성 → Builder
- 객체 생성 로직 분리 → Factory Method / Abstract Factory
- 전역 단일 인스턴스 → Singleton (주의: 남용 금지)
**구조 패턴**
- 호환되지 않는 인터페이스 연결 → Adapter
- 동적 기능 추가 → Decorator
- 복잡한 하위 시스템 단순화 → Facade
- 객체 트리 구조 → Composite
**행동 패턴**
- 교체 가능한 알고리즘 → Strategy
- 상태에 따른 행동 변경 → State
- 객체 간 통신 → Observer / Mediator
- 요청 처리 체인 → Chain of Responsibility
- 실행 취소/재실행 → Command + Memento
### 최신 C# 기능 (C# 12/13)
| 기능 | 권장 시점 |
|------|-----------|
| **Primary constructors** | 간단한 초기화를 가진 클래스 |
| **Collection expressions** | 배열/리스트 초기화 `[1, 2, 3]` |
| **required properties** | 생성자 없이 필수 초기화 보장 |
| **init-only setters** | 불변 객체 |
| **record types** | 값 기반 동등성, DTO |
| **Pattern matching** | 복잡한 조건문, 타입 검사 |
| **File-scoped namespaces** | 들여쓰기 축소 |
| **Raw string literals** | 여러 줄 문자열, JSON, SQL |
### 성능 리뷰
| 카테고리 | 리뷰 항목 |
|----------|-----------|
| **메모리 할당** | 핫 경로에서 불필요한 할당, Large Object Heap (>= 85KB) |
| **Async/Await** | 차단 호출 (.Result, .Wait()), ConfigureAwait 누락 |
| **컬렉션** | 잘못된 컬렉션 타입, LINQ 다중 열거 |
| **문자열** | 루프 내 문자열 결합, StringBuilder 미사용 |
| **박싱** | 불필요한 값 타입 박싱 |
| **Span/Memory** | Span<T>, Memory<T> 없는 버퍼 연산 |
### 비동기 코드 리뷰
- [ ] `.Result` 또는 `.Wait()` 호출 없음 (데드락 위험)
- [ ] 라이브러리 코드에서 `ConfigureAwait(false)` 사용
- [ ] 적절한 CancellationToken 전파
- [ ] 캐시된 결과가 있는 핫 경로에 `ValueTask` 사용
- [ ] 스트리밍 데이터에 `IAsyncEnumerable` 사용
- [ ] 이벤트 핸들러 외 async void 없음
### 코드 품질 리뷰
- [ ] 명명 규칙 (PascalCase, camelCase, _privateField, Async 접미사)
- [ ] null 안전성 (nullable reference types, `?.`, `??`, `??=`)
- [ ] 예외 처리 (구체적 예외, `when` 필터, 적절한 로깅)
- [ ] IDisposable 패턴 준수 (using 문, Dispose 구현)
- [ ] 컬렉션 사용 (적절한 타입 선택, 효율적인 LINQ)
- [ ] 매직 넘버/문자열은 상수로 선언
- [ ] 중복 코드 제거
- [ ] 상속 불필요 클래스에 `sealed` 적절히 사용
### 보안 리뷰
- [ ] 입력 유효성 검사 (SQL Injection, XSS, 경로 탐색)
- [ ] 민감 데이터 처리 (하드코딩된 비밀 없음, 적절한 암호화)
- [ ] 인증/권한 확인
- [ ] 보안 난수 생성 (`Random` 보안 용도 사용 금지)
- [ ] XML External Entity (XXE) 방지
## 3단계: 리뷰 결과 출력
### 출력 형식
모든 내용은 **한국어**로 작성합니다. 코드 식별자와 기술 용어는 원문을 유지합니다.
```markdown
# 코드 리뷰 결과
## 요약
- 파일: {파일 경로}
- 종합 평가: {우수/양호/개선 필요/심각}From viniciuscs84/sdd-toolkit, MIT.
More from viniciuscs84/sdd-toolkit
- 0.479score
csharp-xml-docs
viniciuscs84
C# XML documentation with on-demand Haiku→Expert Review→Final workflow.
SkillCFreshness: CClaude Code +9 - 0.476score
agent-browser
viniciuscs84
Use for automated browser tasks (navigation, form filling, scraping, screenshots, web app testing).
SkillCFreshness: CClaude Code +9 - 0.474score
cpp-development
viniciuscs84
Use when writing, reviewing, or refactoring C++ code — covers workflow, essential patterns, and pre-commit checklist for modern C++17/20.
SkillCFreshness: CClaude Code +9 - 0.474score
audio-dsp
viniciuscs84
Use when implementing real-time DSP algorithms, audio thread architecture, or offline spectral analysis in C++/Rust.
SkillCFreshness: CClaude Code +9 - 0.473score
cpp-testing
viniciuscs84
Use when writing or fixing C++ tests, configuring GoogleTest/CTest, or adding coverage/sanitizers.
SkillCFreshness: CClaude Code +9 - 0.473score
code-review-excellence
viniciuscs84
Use when conducting code reviews or establishing review standards.
SkillCFreshness: CClaude Code +9 - 0.473score
agents-md
viniciuscs84
Use when asked to write or review AGENTS.md/CLAUDE.md/LLMs.md context files.
SkillCFreshness: CClaude Code +9 - 0.471score
audio-engineering-principles
viniciuscs84
Use for real-time audio code safety, determinism, and numeric hygiene.
SkillCFreshness: CClaude Code +9 - 0.470score
csharp-refactor
viniciuscs84
C# code refactoring skill.
SkillCFreshness: CClaude Code +9 - 0.469score
csharp-docs
viniciuscs84
Ensure that C# types are documented with XML comments and follow best practices for documentation.
SkillCFreshness: CClaude Code +9 - 0.469score
csharp-mstest
viniciuscs84
Get best practices for MSTest 3.x/4.x unit testing, including modern assertion APIs and data-driven tests
SkillCFreshness: CClaude Code +9 - 0.466score
csharp-async
viniciuscs84
Get best practices for C# async programming
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- May 30, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/viniciuscs84/sdd-toolkit
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from viniciuscs84
- 0.479score
csharp-xml-docs
viniciuscs84
C# XML documentation with on-demand Haiku→Expert Review→Final workflow.
SkillCFreshness: CClaude Code +9 - 0.476score
agent-browser
viniciuscs84
Use for automated browser tasks (navigation, form filling, scraping, screenshots, web app testing).
SkillCFreshness: CClaude Code +9 - 0.474score
audio-dsp
viniciuscs84
Use when implementing real-time DSP algorithms, audio thread architecture, or offline spectral analysis in C++/Rust.
SkillCFreshness: CClaude Code +9 - 0.474score
cpp-development
viniciuscs84
Use when writing, reviewing, or refactoring C++ code — covers workflow, essential patterns, and pre-commit checklist for modern C++17/20.
SkillCFreshness: CClaude Code +9 - 0.473score
code-review-excellence
viniciuscs84
Use when conducting code reviews or establishing review standards.
SkillCFreshness: CClaude Code +9 - 0.473score
cpp-testing
viniciuscs84
Use when writing or fixing C++ tests, configuring GoogleTest/CTest, or adding coverage/sanitizers.
SkillCFreshness: CClaude Code +9
Cite this page
csharp-code-review skill. Agent Mart. https://agentmart.dev/skills/viniciuscs84-csharp-code-review (last updated 2026-10-24)