# Code Format

> dotnet format, prettier 및 기타 포맷팅 도구를 사용하여 코드를 정리합니다. 코드 스타일 수정, 포맷 일관성 유지 또는 커밋 전 코드 준비가 필요한 작업에서 사용합니다.

- Skill: `icartsh/code-format` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add icartsh/code-format`
- Raw SKILL.md: https://api.skillmd.com/api/skills/icartsh/code-format/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: icartsh (https://skillmd.com/u/icartsh)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/icartsh/code-format

---


# Code Format Skill (Entry Map)

> **Goal:** 에이전트가 필요한 정확한 포맷팅 절차를 찾을 수 있도록 가이드합니다.

## Quick Start (하나를 선택하세요)

- **.NET 코드 포맷팅 (C#)** → `references/dotnet-format.md`
- **JSON/YAML/Markdown 포맷팅** → `references/prettier-format.md`
- **모든 항목 포맷팅** → `references/fix-all.md`

## When to Use

- 코드 스타일 위반 수정 (들여쓰기, 공백, 줄 바꿈 등)
- .editorconfig 규칙을 일관되게 적용
- 커밋을 위한 코드 준비 (pre-commit hook 포맷팅)
- 팀 코딩 표준 준수
- 특정 파일 또는 전체 코드베이스 포맷팅

**다음을 위한 것이 아님:** 빌드 (dotnet-build), 테스트 (dotnet-test), 또는 린팅 (code-analyze)

## Inputs & Outputs

**Inputs:** `target` (dotnet/prettier/all), `files` (특정 파일 또는 디렉토리), `verify` (체크 전용 모드)

**Outputs:** 포맷팅된 파일 (파일 내에서 직접 수정), exit code (0=success, non-zero=violations)

**Guardrails:** 비파괴적 방식 (변경 없이 확인하는 --verify-no-changes 가능), .editorconfig 존중, pre-commit과 통합

## Navigation

**1. Format .NET Code** → [`references/dotnet-format.md`](references/dotnet-format.md)

- C# 파일(.cs) 포맷팅, dotnet format 규칙 적용, 코드 스타일 이슈 수정

**2. Format with Prettier** → [`references/prettier-format.md`](references/prettier-format.md)

- JSON, YAML, Markdown, JavaScript, TypeScript 파일 포맷팅

**3. Format All Code** → [`references/fix-all.md`](references/fix-all.md)

- 모든 포맷터(dotnet + prettier)를 순차적으로 실행, 포괄적인 포맷팅 수행

## Common Patterns

### Quick Format (.NET)

```bash
cd ./dotnet
dotnet format PigeonPea.sln
```

### Quick Format (Prettier)

```bash
npx prettier --write "**/*.{json,yml,yaml,md}"
```

### Format Everything

```bash
./.agent/skills/code-format/scripts/format-all.sh
```

### Verify Only (체크 모드)

```bash
cd ./dotnet
dotnet format PigeonPea.sln --verify-no-changes
```

### 특정 파일 포맷팅

```bash
# .NET
dotnet format --include ./console-app/Program.cs

# Prettier
npx prettier --write ./README.md
```

## Troubleshooting

**포맷팅 실패:** 에러 메시지를 확인하십시오. 상세한 에러 처리는 관련 참조 파일을 확인하세요.

**파일이 포맷팅되지 않음:** .editorconfig 규칙, 파일 확장자, ignore 패턴을 확인하십시오.

**Pre-commit hook 실패:** 먼저 포맷터를 수동으로 실행한 후 커밋하십시오. `references/fix-all.md`를 참조하세요.

**스타일 충돌:** .editorconfig가 우선순위를 가집니다. 구성 파일을 확인하십시오.

**성능 이슈:** 전체 솔루션 대신 특정 프로젝트나 파일에 대해 포맷팅을 수행하십시오.

## Success Indicators

### dotnet format

```
Format complete in X ms.
```

이미 포맷팅된 경우 변경된 파일이 없거나, 포맷팅된 파일 목록이 표시됩니다.

### prettier

```
✔ Formatted X files
```

또는 모든 파일이 이미 포맷팅된 경우 출력이 없습니다.

## Integration

**커밋 전:** pre-commit hook을 사용하여 자동 포맷팅(`.pre-commit-config.yaml`에 구성됨)
**수동 포맷팅:** 코드 푸시 전, PR 생성 전 실행
**CI/CD:** CI에서 포맷팅 검증 (--verify-no-changes / --check 모드 사용)

**다른 SKILL과 함께 사용:**
- 이전 단계: code-analyze (스타일 먼저 수정)
- 다음 단계: dotnet-build (깔끔한 코드 빌드)

## Configuration Files

- **`.editorconfig`**: 포맷팅 규칙 정의 (indent size, line endings 등)
- **`.prettierrc.json`**: Prettier 구성 (print width, quotes 등)
- **`.pre-commit-config.yaml`**: Pre-commit hook 구성
- **`.prettierignore`**: Prettier 포맷팅에서 제외할 파일

## Related

- [`.editorconfig`](../../../.editorconfig) - 포맷팅 규칙
- [`.prettierrc.json`](../../../.prettierrc.json) - Prettier 설정
- [`.pre-commit-config.yaml`](../../../.pre-commit-config.yaml) - Pre-commit hooks
- [`setup-pre-commit.sh`](../../../setup-pre-commit.sh) - Pre-commit 설정 스크립트

