code-quality
Skill para mantener la calidad del código: linting, formatting, type checking. Garantiza que el código cumple con los estándares del proyecto.
安装与使用
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
查看来源 ↗使用指南技能说明
Code Quality Skill
Cuándo usar esta skill
- Antes de hacer commit de cualquier cambio.
- Cuando corrijas errores de linting o tipos.
- Cuando formatees código nuevo.
- Cuando necesites verificar la calidad general del código.
Herramientas de Calidad
Este proyecto usa:
| Herramienta | Propósito |
|---|---|
| Ruff | Linting + Formatting |
| Pyright | Type checking |
Flujo de Verificación Completo
Paso 1: Formatear código
uv run ruff format .
Aplica formato automático a todo el código.
Paso 2: Verificar y corregir linting
# Solo verificar
uv run ruff check .
# Corregir automáticamente lo posible
uv run ruff check . --fix
Paso 3: Verificar tipos
uv run pyright
Errores Comunes y Soluciones
E501: Line too long
Problema: Línea excede 88 caracteres.
Soluciones:
# Antes
mensaje = "Este es un mensaje muy largo que excede el límite de caracteres permitidos por el linter"
# Después - usando paréntesis
mensaje = (
"Este es un mensaje muy largo que excede "
"el límite de caracteres permitidos por el linter"
)
# Después - para docstrings, usar noqa
"""Línea muy larga que es difícil de partir. # noqa: E501"""
Missing type hints
Problema: Función sin anotaciones de tipo.
Solución:
# Antes
def process(data):
return data.upper()
# Después
def process(data: str) -> str:
return data.upper()
Import ordering
Problema: Imports desordenados.
Solución: Ruff format los ordena automáticamente. Orden correcto:
- Standard library
- Third-party
- Local imports
import os
from pathlib import Path
from fastmcp import FastMCP
import anyio
from ..config import get_vault_path
from ..utils import get_logger
Configuración Actual
Ver pyproject.toml para configuración:
[tool.ruff]
line-length = 88
[tool.ruff.lint]
select = ["E", "F", "I", "W"]
[tool.pyright]
pythonVersion = "3.12"
typeCheckingMode = "standard"
Comando Todo-en-Uno
Script para verificar todo antes de commit:
# Formatear + Lint + Tipos
uv run ruff format . && uv run ruff check . --fix && uv run pyright
Ignorar Reglas (Casos Excepcionales)
Si necesitas ignorar una regla específica:
# Ignorar línea específica
long_string = "..." # noqa: E501
# Ignorar bloque
# ruff: noqa: E501
def function_with_long_lines():
...
⚠️ Usar con moderación. Preferir corregir el código.
Checklist de Calidad
Antes de considerar el código listo:
-
uv run ruff format .- Sin cambios pendientes -
uv run ruff check .- Sin errores -
uv run pyright- Sin errores de tipos - Docstrings en funciones públicas
- Nombres descriptivos (snake_case)
使用示例
查看来源仓库中的使用示例与配置说明。
查看来源 ↗来源历史
- 收录时间
- 2026-01-20
- 索引更新时间
- 2026-01-26
- Branch
- main
收录与同步日期属于本站记录。源码修改历史请查看来源仓库。
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!