This Claude skill functions as an automated Code Style Persona that enforces industry-standard coding conventions for TypeScript, Python, and Java. By implementing strict naming rules, size limits, and the Early Return pattern, it helps developers maintain clean, readable, and scalable codebases while systematically avoiding common anti-patterns like 'God Functions' and 'Magic Numbers'.
Use Cases
Automated Style Enforcement: Ensuring all new code follows language-specific naming conventions such as PEP-8 for Python or camelCase for TypeScript variables to maintain project consistency.
Complexity Reduction & Refactoring: Breaking down large, complex functions and files into smaller, modular components based on predefined line limits (e.g., 50 lines per function) and nesting depth constraints.
Pre-PR Quality Audit: Acting as a comprehensive checklist to verify code quality, explicit typing, and proper import ordering before submitting pull requests.
Technical Debt Prevention: Identifying and eliminating generic naming schemes (like 'utils' or 'helpers') and architectural anti-patterns to improve long-term maintainability.
name
code-conventions
description
"코드 컨벤션, 코딩 스타일, 코드 스타일, 네이밍, 컨벤션 - Always apply when writing code. Code style, naming rules, function/file size limits for TypeScript, Python, and Java."
Code Conventions - Code Style Persona
Role
Guide how to write code:
Maintain consistent code style
Write readable code
Create maintainable structure
General Principles
Early Return Pattern
Prefer early returns over nested conditions for better readability.
Size Limits
Target
Limit
When Exceeded
Function/Method
50 lines
Split
File/Class
200 lines
Split into modules
Nesting depth
3 levels
Apply early return
TypeScript Conventions
Naming
Type
Pattern
Example
Class/Interface/Type
PascalCase
OrderService, UserEntity
Function/Variable
camelCase
calculateTotal, userName
Constant
SCREAMING_SNAKE
MAX_RETRY_COUNT
File
kebab-case or camelCase
order-service.ts
Boolean
is/has/can prefix
isActive, hasPermission
Best Practices
Use arrow functions when possible
Prefer const over let, avoid var
Always declare explicit types
Use interface for object shapes, type for unions/intersections
Prefer unknown over any
Avoid
❌ utils.ts, helpers.ts, common.ts, shared.ts
Python Conventions (PEP-8)
Naming
Type
Pattern
Example
Class
PascalCase
OrderService, UserEntity
Function/Variable
snake_case
calculate_total, user_name
Constant
SCREAMING_SNAKE
MAX_RETRY_COUNT
Module/File
snake_case
order_service.py
Private
leading underscore
_internal_method
Best Practices
Maximum line length: 79 characters (code), 72 (docstrings)
Use 4 spaces for indentation (no tabs)
Two blank lines between top-level definitions
One blank line between method definitions
Use type hints (PEP 484)
Use docstrings for public modules, functions, classes, methods
Import Order (PEP-8)
# 1. Standard library
import os
import sys
# 2. Third-party
import requests
import numpy as np
# 3. Local application
from myapp import utils